You've already forked godot
mirror of
https://github.com/godotengine/godot.git
synced 2025-11-09 12:50:35 +00:00
rendering_device: if one compiles with at least on stage without sources, it was always returning an unusable bytecode (because errored)
This commit is contained in:
@@ -185,9 +185,13 @@ Ref<RDShaderSPIRV> RenderingDevice::_shader_compile_spirv_from_source(const Ref<
|
|||||||
String error;
|
String error;
|
||||||
|
|
||||||
ShaderStage stage = ShaderStage(i);
|
ShaderStage stage = ShaderStage(i);
|
||||||
Vector<uint8_t> spirv = shader_compile_spirv_from_source(stage, p_source->get_stage_source(stage), p_source->get_language(), &error, p_allow_cache);
|
String source = p_source->get_stage_source(stage);
|
||||||
bytecode->set_stage_bytecode(stage, spirv);
|
|
||||||
bytecode->set_stage_compile_error(stage, error);
|
if (!source.is_empty()) {
|
||||||
|
Vector<uint8_t> spirv = shader_compile_spirv_from_source(stage, source, p_source->get_language(), &error, p_allow_cache);
|
||||||
|
bytecode->set_stage_bytecode(stage, spirv);
|
||||||
|
bytecode->set_stage_compile_error(stage, error);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
return bytecode;
|
return bytecode;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user