sbstance designer这个软件还是主要给游戏用的,在离线渲染方面还是有各种问题,一个是sbsar这个文件和各软件的结合不好,另个是纯输出贴图用太好显存,所以想看看能不能在blender中巴几个简单的节点实现,这样可以从sd中间取素材,blender中做调整。
最简单的例子
init.py
bl_info = {
"name" : "ShaderNodeExtra",
"author" : "yzh",
"description" : "Simple test addon",
"blender" : (2, 80, 0),
"location" : "",
"warning" : "",
"category" : "Generic"
}
import bpy
from . test_op import Test_OT_Operator
from . test_panel import Test_PT_Panel
classes = (Test_OT_Operator, Test_PT_Panel)
register,unregister = bpy.utils.register_classes_factory(classes)
test_op.py
import bpy
class Test_OT_Operator(bpy.types.Operator):
bl_idname = "view3d.cursor_center"
bl_label = "Simple operator"
bl_description = "Center 3d cursor"
def execute(self,context):
bpy.ops.view3d.snap_cursor_to_center()
return {'FINISHED'}
test_panel.py
import bpy
class Test_PT_Panel(bpy.types.Panel):
bl_idname = "Test_PT_Panel"
bl_label = "Test Panel"
bl_category = "Test Addon"
bl_space_type = "VIEW_3D"
bl_region_type = "UI"
def draw(self, context):
layout = self.layout
row = layout.row()
row.operator('view3d.cursor_center', text='Center 3D cursor')
后面看看如何添加node
import bpy
bpy.data.node_groups["Shader Nodetree"].nodes["Custom Float"].some_value = 0.81
bpy.data.node_groups["Shader Nodetree"].nodes["Value"].outputs[0].default_value = 0.1
网友评论