前端开发中英文网站怎么做wordpress分享文章插件
前端开发中英文网站怎么做,wordpress分享文章插件,全国公示信用信息系统,电子商务有哪些工作岗位blender014材质Material这是 oeasy 系统化 Python 教程#xff0c;从基础一步步讲#xff0c;扎实、完整、不跳步。愿意花时间学#xff0c;就能真正学会。
颜色设置_color_Material_材质_diffuse_color
开始
配套视频上次做了很多c919
每个飞机都有自己的机身、…blender014材质Material这是 oeasy 系统化 Python 教程从基础一步步讲扎实、完整、不跳步。愿意花时间学就能真正学会。颜色设置_color_Material_材质_diffuse_color开始配套视频上次做了很多c919每个飞机都有自己的机身、机翼...如何修改物体的颜色呢?修改颜色选择Script工作区选择3d视图中的立方体选择Material 材质调板修改颜色选择着色器Material Preview材质预览效果立方体对应颜色修改信息调板观察到操作所对应的代码粘贴到游乐场import bpy bpy.data.materials[Material].node_tree.nodes[Principled BSDF].inputs[0].default_value (0, 1, 0, 1)input[0] 怎么理解输入端口Blender Principled BSDF节点输入项索引与命名对应表索引inputs[X]命名标识inputs[名称]说明简要inputs[0]Base Color完全等同均指向基础颜色输入项inputs[1]Subsurface次表面散射强度inputs[2]Subsurface Radius次表面散射半径红、绿、蓝inputs[3]Subsurface Color次表面散射颜色inputs[4]Metallic金属度0~1inputs[5]Specular镜面反射强度inputs[6]Specular Tint镜面反射色调inputs[7]Roughness粗糙度0~1inputs[8]Anisotropic各向异性强度inputs[9]Anisotropic Rotation各向异性旋转角度inputs[10]Sheen光泽强度inputs[11]Sheen Tint光泽色调inputs[12]Clearcoat清漆强度inputs[13]Clearcoat Roughness清漆粗糙度inputs[14]IOR折射率inputs[15]Transmission透射强度透明度相关inputs[16]Transmission Roughness透射粗糙度总结inputs[0]和Base Color完全等同前者是按顺序的索引访问后者是按名称的标识访问。Principled BSDF节点的所有输入项都支持索引访问和命名访问表格中列出了常用的对应关系。命名访问更具可读性如Base Color索引访问更简洁但索引顺序固定若节点更新调整顺序会失效实际开发中建议优先使用命名访问。新对象属性总结在原来基础属性基础上添加了 数据、材质属性名所属类别说明简要location空间变换坐标格式为(x,y,z)浮点三元组rotation_euler空间变换旋转欧拉角弧度制(x,y,z)scale空间变换缩放比例name基础标识定义对象名称parent层级关系设置父对象子对象继承父对象变换data几何/材质关联指向几何数据块空对象为Nonedata.materials材质管理存储对象材质列表可append添加材质选择颜色修改材质名称把材质名称修改为green代码修改材质名称渐变的球import bpy # 清除场景中所有对象 bpy.ops.object.select_all(actionSELECT) bpy.ops.object.delete() # 循环创建10x10的ico球体并赋予颜色材质 for i in range(10): for j in range(10): # 添加ico球体设置半径和位置 bpy.ops.mesh.primitive_ico_sphere_add(radius0.5, location(i, j, 0)) # 获取当前激活的小球对象 icosphere bpy.context.active_object # 新建材质数据命名为mat_i_j mat_name fmat_{i}_{j} mat bpy.data.materials.new(namemat_name) # 启用材质的节点树Blender新建材质默认关闭节点树 mat.use_nodes True # 获取材质的Principled BSDF节点 principled_bsdf mat.node_tree.nodes[Principled BSDF] # 根据i和j计算颜色红随i变化绿随j变化蓝为0 red i / 10.0 # 用10.0确保浮点运算避免整数除法 green j / 10.0 blue 0.0 alpha 1.0 color (red, green, blue, alpha) # 设置Principled BSDF的基础颜色 principled_bsdf.inputs[Base Color].default_value color # 将材质赋予小球对象先清空原有材质再添加 if icosphere.data.materials: icosphere.data.materials[0] mat else: icosphere.data.materials.append(mat)渐变效果随机的球import bpy import random # 导入随机数模块 # 清除场景中所有对象 bpy.ops.object.select_all(actionSELECT) bpy.ops.object.delete() # 循环创建10x10的ico球体并赋予随机颜色材质 for i in range(10): for j in range(10): # 添加ico球体设置半径和位置 bpy.ops.mesh.primitive_ico_sphere_add(radius0.5, location(i, j, 0)) # 获取当前激活的小球对象 icosphere bpy.context.active_object # 新建材质数据命名为mat_i_j mat_name fmat_{i}_{j} mat bpy.data.materials.new(namemat_name) # 启用材质的节点树Blender新建材质默认关闭节点树 mat.use_nodes True # 获取材质的Principled BSDF节点 principled_bsdf mat.node_tree.nodes[Principled BSDF] # 生成随机的RGB颜色范围0.0到1.0alpha固定为1.0 red random.random() # 随机生成0.0~1.0的浮点数 green random.random() blue random.random() alpha 1.0 color (red, green, blue, alpha) # 设置Principled BSDF的基础颜色 principled_bsdf.inputs[Base Color].default_value color # 将材质赋予小球对象先清空原有材质再添加 if icosphere.data.materials: icosphere.data.materials[0] mat else: icosphere.data.materials.append(mat)效果如何查看目前所有的颜色呢打开大纲视图找到blender文件所有的Materials都在这里了能用python遍历吗遍历颜色import bpy for material in bpy.data.materials: print(material)出现了好多种颜色为什么删除颜色每次运行都添加100种材质如何删除材质删除材质import bpy for material in bpy.data.materials: bpy.data.materials.remove(material)先删材质再添加材质import bpy # 清除场景中所有对象 bpy.ops.object.select_all(actionSELECT) bpy.ops.object.delete() # 循环创建10x10的ico球体并赋予颜色材质 for i in range(10): for j in range(10): # 添加ico球体设置半径和位置 bpy.ops.mesh.primitive_ico_sphere_add(radius0.5, location(i, j, 0)) # 获取当前激活的小球对象 icosphere bpy.context.active_object # 新建材质数据命名为mat_i_j mat_name fmat_{i}_{j} mat bpy.data.materials.new(namemat_name) # 启用材质的节点树Blender新建材质默认关闭节点树 mat.use_nodes True # 获取材质的Principled BSDF节点 principled_bsdf mat.node_tree.nodes[Principled BSDF] # 根据i和j计算颜色红随i变化绿随j变化蓝为0 red i / 10.0 # 用10.0确保浮点运算避免整数除法 green j / 10.0 blue 0.0 alpha 1.0 color (red, green, blue, alpha) # 设置Principled BSDF的基础颜色 principled_bsdf.inputs[Base Color].default_value color # 将材质赋予小球对象先清空原有材质再添加 if icosphere.data.materials: icosphere.data.materials[0] mat else: icosphere.data.materials.append(mat) for material in bpy.data.materials: print(material)后添加总共100种材质可以看看材质的详细信息吗遍历材质细节import bpy for mat in bpy.data.materials: for v in mat.node_tree.nodes[Principled BSDF].inputs[Base Color].default_value : print(v, end,) print()输出结果除了材质之外对象也可以这样控制吗总结 这次我们制作了渐变颜色的球随机颜色的球import bpy for material in bpy.data.materials: bpy.data.materials.remove(material)对象也可以像材质一样remove吗我们下次再说配套视频本文来自 oeasy Python 系统教程。想完整、扎实学 Python搜索 oeasy 即可。