[Bf-extensions-cvs] [70af85cd] master: Fixed 3dc->blender workflow and bake tools
Kalle-Samuli Riihikoski
noreply at git.blender.org
Thu Apr 25 10:46:59 CEST 2019
Commit: 70af85cdc5c2df0744cc5df241df7a41cf2201ad
Author: Kalle-Samuli Riihikoski
Date: Thu Apr 25 11:43:28 2019 +0300
Branches: master
https://developer.blender.org/rBA70af85cdc5c2df0744cc5df241df7a41cf2201ad
Fixed 3dc->blender workflow and bake tools
===================================================================
M io_coat3D/__init__.py
M io_coat3D/tex.py
===================================================================
diff --git a/io_coat3D/__init__.py b/io_coat3D/__init__.py
index 37bf1e7d..e5797013 100644
--- a/io_coat3D/__init__.py
+++ b/io_coat3D/__init__.py
@@ -637,13 +637,13 @@ class SCENE_OT_export(bpy.types.Operator):
objekti.coat3D.applink_name = objekti.data.name
mod_mat_list = {}
- if (coat3D.bake_textures):
- bake_location = folder_objects + os.sep + 'Bake'
- if (os.path.isdir(bake_location)):
- shutil.rmtree(bake_location)
- os.makedirs(bake_location)
- else:
- os.makedirs(bake_location)
+
+ bake_location = folder_objects + os.sep + 'Bake'
+ if (os.path.isdir(bake_location)):
+ shutil.rmtree(bake_location)
+ os.makedirs(bake_location)
+ else:
+ os.makedirs(bake_location)
temp_string = ''
for objekti in bpy.context.selected_objects:
@@ -680,9 +680,7 @@ class SCENE_OT_export(bpy.types.Operator):
if (coat3D.bake_normal):
bake_list.append(['NORMAL', '$LOADLOPOLYTANG'])
if (coat3D.bake_roughness):
- bake_list.append(['SPECULAR', '$LOADROUGHNESS'])
- if (coat3D.bake_metalness):
- bake_list.append(['REFLECTION', '$LOADMETAL'])
+ bake_list.append(['ROUGHNESS', '$LOADROUGHNESS'])
if(coat3D.bake_resolution == 'res_64'):
res_size = 64
@@ -1136,7 +1134,6 @@ class SCENE_OT_import(bpy.types.Operator):
index = 0
for c_index in diff_objects:
bpy.data.objects[c_index].data.coat3D.name = '3DC'
- bpy.data.objects[c_index].material_slots[0].material = bpy.data.materials[diff_mat[laskuri]]
laskuri += 1
bpy.ops.object.select_all(action='DESELECT')
@@ -1156,8 +1153,6 @@ class SCENE_OT_import(bpy.types.Operator):
index = index + 1
bpy.context.view_layer.objects.active = new_obj
- keep_materials_count = len(new_obj.material_slots) - len(new_obj.data.uv_layers)
- delete_materials_from_end(keep_materials_count, new_obj)
new_obj.coat3D.applink_export = True
if(osoite_3b != ''):
@@ -1337,7 +1332,7 @@ class SCENE_PT_Bake_Settings(ObjectButtonsPanel, bpy.types.Panel):
col = flow.column()
col.prop(coat3D, "bake_ao", text="AO")
col = flow.column()
- col.prop(coat3D, "bake_metalness", text="Metalness")
+ col.prop(coat3D, "bake_normal", text="Normal")
col = flow.column()
col.prop(coat3D, "bake_roughness", text="Roughness")
@@ -1720,7 +1715,7 @@ class MeshCoat3D(PropertyGroup):
)
class MaterialCoat3D(PropertyGroup):
- name: BoolProperty(
+ name: StringProperty(
name="ApplinkAddress",
# subtype="APPLINK_ADDRESS",
default=True
@@ -1762,8 +1757,8 @@ classes = (
SCENE_PT_Material,
SCENE_PT_Settings_Update,
SCENE_PT_Bake_Settings,
- SCENE_PT_Settings_Folders,
SCENE_PT_Settings_DeleteNodes,
+ SCENE_PT_Settings_Folders,
SCENE_PT_Material_Import,
SCENE_OT_folder,
SCENE_OT_opencoat,
diff --git a/io_coat3D/tex.py b/io_coat3D/tex.py
index 6d90a594..980bcc13 100644
--- a/io_coat3D/tex.py
+++ b/io_coat3D/tex.py
@@ -183,62 +183,123 @@ def readtexturefolder(objekti, mat_list, texturelist, is_new, udim_textures): #r
if(udim_textures == False):
for texture_info in texturelist:
- if texture_info[0] == index_mat.name:
- if texture_info[2] == 'color' or texture_info[2] == 'diffuse':
- if(index_mat.material.coat3D_diffuse):
- texcoat['color'].append(texture_info[3])
- create_nodes = True
- else:
- os.remove(texture_info[3])
- elif texture_info[2] == 'metalness' or texture_info[2] == 'specular' or texture_info[2] == 'reflection':
- if (index_mat.material.coat3D_metalness):
- texcoat['metalness'].append(texture_info[3])
- create_nodes = True
- else:
- os.remove(texture_info[3])
- elif texture_info[2] == 'rough' or texture_info[2] == 'roughness':
- if (index_mat.material.coat3D_roughness):
- texcoat['rough'].append(texture_info[3])
- create_nodes = True
- else:
- os.remove(texture_info[3])
- elif texture_info[2] == 'nmap' or texture_info[2] == 'normalmap' or texture_info[2] == 'normal_map' or texture_info[2] == 'normal':
- if (index_mat.material.coat3D_normal):
- texcoat['nmap'].append(texture_info[3])
- create_nodes = True
- else:
- os.remove(texture_info[3])
- elif texture_info[2] == 'emissive':
- if (index_mat.material.coat3D_emissive):
- texcoat['emissive'].append(texture_info[3])
- create_nodes = True
- else:
- os.remove(texture_info[3])
- elif texture_info[2] == 'emissive_power':
- if (index_mat.material.coat3D_emissive):
- texcoat['emissive_power'].append(texture_info[3])
- create_nodes = True
- else:
- os.remove(texture_info[3])
- elif texture_info[2] == 'ao':
- if (index_mat.material.coat3D_ao):
- texcoat['ao'].append(texture_info[3])
- create_nodes = True
- else:
- os.remove(texture_info[3])
- elif texture_info[2].startswith('displacement'):
- if (index_mat.material.coat3D_displacement):
- texcoat['displacement'].append(texture_info[3])
- create_nodes = True
- else:
- os.remove(texture_info[3])
- elif texture_info[2] == 'alpha' or texture_info[2] == 'opacity':
- if (index_mat.material.coat3D_metalness):
- texcoat['alpha'].append(texture_info[3])
- create_nodes = True
- else:
- os.remove(texture_info[3])
- create_group_node = True
+ if is_new == False:
+ if texture_info[0] == index_mat.name:
+ if texture_info[2] == 'color' or texture_info[2] == 'diffuse':
+ if(index_mat.material.coat3D_diffuse):
+ texcoat['color'].append(texture_info[3])
+ create_nodes = True
+ else:
+ os.remove(texture_info[3])
+ elif texture_info[2] == 'metalness' or texture_info[2] == 'specular' or texture_info[2] == 'reflection':
+ if (index_mat.material.coat3D_metalness):
+ texcoat['metalness'].append(texture_info[3])
+ create_nodes = True
+ else:
+ os.remove(texture_info[3])
+ elif texture_info[2] == 'rough' or texture_info[2] == 'roughness':
+ if (index_mat.material.coat3D_roughness):
+ texcoat['rough'].append(texture_info[3])
+ create_nodes = True
+ else:
+ os.remove(texture_info[3])
+ elif texture_info[2] == 'nmap' or texture_info[2] == 'normalmap' or texture_info[2] == 'normal_map' or texture_info[2] == 'normal':
+ if (index_mat.material.coat3D_normal):
+ texcoat['nmap'].append(texture_info[3])
+ create_nodes = True
+ else:
+ os.remove(texture_info[3])
+ elif texture_info[2] == 'emissive':
+ if (index_mat.material.coat3D_emissive):
+ texcoat['emissive'].append(texture_info[3])
+ create_nodes = True
+ else:
+ os.remove(texture_info[3])
+ elif texture_info[2] == 'emissive_power':
+ if (index_mat.material.coat3D_emissive):
+ texcoat['emissive_power'].append(texture_info[3])
+ create_nodes = True
+ else:
+ os.remove(texture_info[3])
+ elif texture_info[2] == 'ao':
+ if (index_mat.material.coat3D_ao):
+ texcoat['ao'].append(texture_info[3])
+ create_nodes = True
+ else:
+ os.remove(texture_info[3])
+ elif texture_info[2].startswith('displacement'):
+ if (index_mat.material.coat3D_displacement):
+ texcoat['displacement'].append(texture_info[3])
+ create_nodes = True
+ else:
+ os.remove(texture_info[3])
+ elif texture_info[2] == 'alpha' or texture_info[2] == 'opacity':
+
@@ Diff output truncated at 10240 characters. @@
More information about the Bf-extensions-cvs
mailing list