1
Fork 0

Add preset material, pull more variables into the template #5

Merged
danreeves merged 8 commits from improved-material-support-1 into master 2025-04-22 10:28:40 +02:00
3 changed files with 23 additions and 8 deletions
Showing only changes of commit e8bb82d2f0 - Show all commits

View file

@ -198,12 +198,13 @@ classes = [
def import_template():
cwd = os.path.dirname(os.path.realpath(__file__))
resources_dir = "resources"
blendfile = "BitsquidPBR.blend"
section = "Material"
object = "Stingray Standard"
filepath = os.path.join(cwd, blendfile, section, object)
directory = os.path.join(cwd, blendfile, section)
filepath = os.path.join(cwd, resources_dir, blendfile, section, object)
directory = os.path.join(cwd, resources_dir, blendfile, section)
filename = object
bpy.ops.wm.append(

View file

@ -56,27 +56,27 @@ variables = {
}
use_ao_map = {
type = "scalar"
value = 0
value = {{ use_ao_map }}
}
use_color_map = {
type = "scalar"
value = 0
value = {{ use_color_map }}
}
use_emissive_map = {
type = "scalar"
value = 0
value = {{ use_emissive_map }}
}
use_metallic_map = {
type = "scalar"
value = 0
value = {{ use_metallic_map }}
}
use_normal_map = {
type = "scalar"
value = 0
value = {{ use_normal_map }}
}
use_roughness_map = {
type = "scalar"
value = 0
value = {{ use_roughness_map }}
}
}
@ -102,11 +102,19 @@ def save(self, context, material):
namespace = {
'material': material,
'base_color': (1, 1, 1),
'roughness': 0.0,
'metallic': 0.0,
'emissive': (0, 0, 0),
'emissive_intensity': 0,
'use_color_map': 0,
'use_roughness_map': 0,
'use_metallic_map': 0,
'use_emissive_map': 0,
'use_ao_map': 0,
'use_normal_map': 0
}
nodes = material.node_tree.nodes
@ -116,6 +124,12 @@ def save(self, context, material):
namespace['metallic'] = nodes["Metallic"].outputs[0].default_value
namespace['emissive'] = nodes["Emissive"].outputs[0].default_value
namespace['emissive_intensity'] = nodes["Emissive Intensity"].outputs[0].default_value
namespace['use_color_map'] = nodes["Use Color Map"].outputs[0].default_value
namespace['use_roughness_map'] = nodes["Use Roughness Map"].outputs[0].default_value
namespace['use_metallic_map'] = nodes["Use Metallic Map"].outputs[0].default_value
namespace['use_emissive_map'] = nodes["Use Emissive Map"].outputs[0].default_value
namespace['use_ao_map'] = nodes["Use AO Map"].outputs[0].default_value
namespace['use_normal_map'] = nodes["Use Normal Map"].outputs[0].default_value
except:
self.report({'WARNING'}, "Couldn't find Stingray Standard nodes")