mirror of
https://github.com/godotengine/godot.git
synced 2025-12-08 06:09:55 +00:00
Refactor high quality texture import
* Only two texture import modes for low/high quality now: * S3TC/BPTC * ETC2/ASTC * Makes sense given this is the general preferred and most compatible combination in most platforms. * Removed lossy_quality from VRAM texture compression options. It was unused everywhere. * Added a new "high_quality" option to texture import. When enabled, it uses BPTC/ASTC (BC7/ASTC4x4) instead of S3TC/ETC2 (DXT1-5/ETC2,ETCA). * Changed MacOS export settings so required texture formats depend on the architecture selected. This solves the following problems: * Makes it simpler to import textures as high quality, without having to worry about the specific format used. * As the editor can now run on platforms such as web, Mac OS with Apple Silicion and Android, it should no longer be assumed that S3TC/BPTC is available by default for it.
This commit is contained in:
parent
17a8597355
commit
28f51ba547
30 changed files with 457 additions and 265 deletions
|
|
@ -129,10 +129,20 @@ void EditorExport::add_export_preset(const Ref<EditorExportPreset> &p_preset, in
|
|||
}
|
||||
|
||||
String EditorExportPlatform::test_etc2() const {
|
||||
const bool etc2_supported = GLOBAL_GET("rendering/textures/vram_compression/import_etc2");
|
||||
const bool etc2_supported = GLOBAL_GET("rendering/textures/vram_compression/import_etc2_astc");
|
||||
|
||||
if (!etc2_supported) {
|
||||
return TTR("Target platform requires 'ETC2' texture compression. Enable 'Import Etc 2' in Project Settings.");
|
||||
return TTR("Target platform requires 'ETC2/ASTC' texture compression. Enable 'Import ETC2 ASTC' in Project Settings.");
|
||||
}
|
||||
|
||||
return String();
|
||||
}
|
||||
|
||||
String EditorExportPlatform::test_bc() const {
|
||||
const bool bc_supported = GLOBAL_GET("rendering/textures/vram_compression/import_s3tc_bptc");
|
||||
|
||||
if (!bc_supported) {
|
||||
return TTR("Target platform requires 'S3TC/BPTC' texture compression. Enable 'Import S3TC BPTC' in Project Settings.");
|
||||
}
|
||||
|
||||
return String();
|
||||
|
|
|
|||
|
|
@ -229,6 +229,7 @@ public:
|
|||
virtual Ref<Texture2D> get_run_icon() const { return get_logo(); }
|
||||
|
||||
String test_etc2() const;
|
||||
String test_bc() const;
|
||||
bool can_export(const Ref<EditorExportPreset> &p_preset, String &r_error, bool &r_missing_templates) const;
|
||||
virtual bool has_valid_export_configuration(const Ref<EditorExportPreset> &p_preset, String &r_error, bool &r_missing_templates) const = 0;
|
||||
virtual bool has_valid_project_configuration(const Ref<EditorExportPreset> &p_preset, String &r_error) const = 0;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue