X-Git-Url: https://harrygodden.com/git/?a=blobdiff_plain;f=blender_export.py;h=e9b7a1e46d8d7c9ceb6b4cdb70e22baaf6ca178e;hb=e311bbe2fa903a7e2a922f202f389b799193195d;hp=30b1fe99fbe5f8503caa8c867d8c6c95a61b648d;hpb=2c38f7b8f422374c4c46c5b636a7275b61876192;p=carveJwlIkooP6JGAAIwe30JlM.git diff --git a/blender_export.py b/blender_export.py index 30b1fe9..e9b7a1e 100644 --- a/blender_export.py +++ b/blender_export.py @@ -563,7 +563,8 @@ class ent_prop(Structure):#{ _fields_ = [("transform",mdl_transform), ("submesh_start",c_uint32), ("submesh_count",c_uint32), - ("flags",c_uint32)] + ("flags",c_uint32), + ("pstr_alias",c_uint32)] #} def obj_ent_type( obj ): @@ -871,6 +872,7 @@ def sr_compile_material( mat ):#{ if mat.SR_data.shader == 'standard': m.shader = 0 if mat.SR_data.shader == 'standard_cutout': m.shader = 1 + if mat.SR_data.shader == 'foliage': m.shader = 10 if mat.SR_data.shader == 'terrain_blend':#{ m.shader = 2 @@ -930,7 +932,8 @@ def sr_compile_material( mat ):#{ #} if mat.SR_data.shader in ['standard', 'standard_cutout', 'terrain_blend', \ - 'vertex_blend', 'fxglow', 'cubemap' ]: #{ + 'vertex_blend', 'fxglow', 'cubemap', \ + 'foliage' ]: #{ if 'tex_diffuse' in inf: m.tex_diffuse = sr_compile_texture(inf['tex_diffuse']) #} @@ -1717,7 +1720,7 @@ def sr_compile( collection ): #} #-------------------------- - print( F'[SR] {i: 3}/{mesh_count} {obj.name:<40}', end='\r' ) + print( F'[SR] {i: 3}/{mesh_count} {obj.name:<40}' ) sr_compile_mesh( obj ) #} #} @@ -2034,10 +2037,12 @@ def sr_compile( collection ): #} elif ent_type == 'ent_prop':#{ prop = ent_prop() + obj_data = obj.SR_data.ent_prop[0] compile_obj_transform( obj, prop.transform ) prop.submesh_start, prop.submesh_count, _ = \ sr_compile_mesh_internal( obj ) - prop.flags = 0 + prop.flags = obj_data.flags + prop.pstr_alias = sr_compile_string( obj_data.alias ) sr_ent_push( prop ) #} #} @@ -3215,6 +3220,7 @@ class SR_OBJECT_ENT_AUDIO(bpy.types.PropertyGroup): class SR_OBJECT_ENT_MARKER(bpy.types.PropertyGroup): #{ alias: bpy.props.StringProperty() + flags: bpy.props.IntProperty() #} class SR_OBJECT_ENT_GLYPH(bpy.types.PropertyGroup): @@ -3558,6 +3564,7 @@ class SR_OBJECT_PROPERTIES(bpy.types.PropertyGroup): ent_volume: bpy.props.CollectionProperty(type=SR_OBJECT_ENT_VOLUME) ent_audio: bpy.props.CollectionProperty(type=SR_OBJECT_ENT_AUDIO) ent_marker: bpy.props.CollectionProperty(type=SR_OBJECT_ENT_MARKER) + ent_prop: bpy.props.CollectionProperty(type=SR_OBJECT_ENT_MARKER) ent_glyph: bpy.props.CollectionProperty(type=SR_OBJECT_ENT_GLYPH) ent_font: bpy.props.CollectionProperty(type=SR_OBJECT_ENT_FONT) ent_traffic: bpy.props.CollectionProperty(type=SR_OBJECT_ENT_TRAFFIC) @@ -3650,7 +3657,8 @@ class SR_MATERIAL_PROPERTIES(bpy.types.PropertyGroup): ('boundary','Boundary',''), ('fxglow','FX Glow',''), ('cubemap','Cubemap',''), - ('walking','Walking','') + ('walking','Walking',''), + ('foliage','Foliage','') ]) surface_prop: bpy.props.EnumProperty(