This commit is contained in:
Spartan322
2025-08-13 19:56:49 -04:00
419 changed files with 812199 additions and 295836 deletions

View File

@@ -264,7 +264,7 @@ void ShaderRD::_build_variant_code(StringBuilder &builder, uint32_t p_variant, c
}
Vector<String> ShaderRD::_build_variant_stage_sources(uint32_t p_variant, CompileData p_data) {
if (!variants_enabled[p_variant] && !variants_bake_for.has(p_variant)) {
if (!variants_enabled[p_variant]) {
return Vector<String>(); // Variant is disabled, return.
}
@@ -465,11 +465,7 @@ bool ShaderRD::_load_from_cache(Version *p_version, int p_group) {
for (uint32_t i = 0; i < variant_count; i++) {
int variant_id = group_to_variant_map[p_group][i];
uint32_t variant_size = f->get_32();
ERR_FAIL_COND_V(variant_size == 0 && variants_enabled[variant_id], false);
if (!variants_enabled[variant_id] && !variants_bake_for.has(variant_id)) {
continue;
}
if (variant_size == 0) {
if (!variants_enabled[variant_id] || variant_size == 0) {
continue;
}
Vector<uint8_t> variant_bytes;
@@ -484,7 +480,7 @@ bool ShaderRD::_load_from_cache(Version *p_version, int p_group) {
for (uint32_t i = 0; i < variant_count; i++) {
int variant_id = group_to_variant_map[p_group][i];
if ((!variants_enabled[variant_id] && !variants_bake_for.has(variant_id)) || p_version->variant_data[variant_id].is_empty()) {
if (!variants_enabled[variant_id]) {
p_version->variants.write[variant_id] = RID();
continue;
}
@@ -577,7 +573,7 @@ void ShaderRD::_compile_version_end(Version *p_version, int p_group) {
if (!all_valid) {
// Clear versions if they exist.
for (int i = 0; i < variant_defines.size(); i++) {
if ((!variants_enabled[i] && !variants_bake_for.has(i)) || !group_enabled[variant_defines[i].group]) {
if (!variants_enabled[i] || !group_enabled[variant_defines[i].group]) {
continue; // Disabled.
}
if (!p_version->variants[i].is_null()) {