Patch_2
This commit is contained in:
@ -56,6 +56,9 @@ def build(material: Material, mat_users: Dict[Material, List[Object]], mat_lnxus
|
||||
if mat_state.output_node is None:
|
||||
# Place empty material output to keep compiler happy..
|
||||
mat_state.output_node = mat_state.nodes.new('ShaderNodeOutputMaterial')
|
||||
|
||||
# reset for each material
|
||||
mat_state.needs_sss = False
|
||||
|
||||
wrd = bpy.data.worlds['Lnx']
|
||||
rpdat = lnx.utils.get_rp()
|
||||
@ -130,7 +133,8 @@ def build(material: Material, mat_users: Dict[Material, List[Object]], mat_lnxus
|
||||
shader_data_path = lnx.utils.get_fp_build() + '/compiled/Shaders/' + shader_data_name + '.lnx'
|
||||
assets.add_shader_data(shader_data_path)
|
||||
|
||||
return rpasses, mat_state.data, shader_data_name, bind_constants, bind_textures
|
||||
needs_sss_result = mat_state.needs_sss
|
||||
return rpasses, mat_state.data, shader_data_name, bind_constants, bind_textures, needs_sss_result
|
||||
|
||||
|
||||
def write_shaders(rel_path: str, con: ShaderContext, rpass: str, matname: str) -> None:
|
||||
@ -146,6 +150,11 @@ def write_shader(rel_path: str, shader: Shader, ext: str, rpass: str, matname: s
|
||||
if shader is None or shader.is_linked:
|
||||
return
|
||||
|
||||
validation_issues = shader.validate()
|
||||
if validation_issues:
|
||||
for issue in validation_issues:
|
||||
log.warn(f"Shader validation issue in {matname}_{rpass}.{ext}: {issue}. ")
|
||||
|
||||
# TODO: blend context
|
||||
if rpass == 'mesh' and mat_state.material.lnx_blending:
|
||||
rpass = 'blend'
|
||||
|
||||
Reference in New Issue
Block a user