材质模板在窗口选项中打开
模板的添加分为两种,一种是手动一种是自动,自动的可以自己尝试一下,当你为一个模型上好材质后可以通过该选项创建这个模型的模板。
本篇主要说说手动的用法
分配材质类型的分为两种
一种是按你物件的名称一一对应分配你设置好的材质
如果物件在rhino中没有命名则会在keyshot中自动分配图层名
推荐的工作流是在rhino将所有物件都做好命名方便后续渲染流程(区分亮哑图层)
命名脚本在最后分享
新建一条规则
输入你想要命名的部件名称
加入*的意思是只要名称中检测到该字段就应用该材质
通配符是指在应用材质到多个零件时使用源名称的做法。这可以通过在源名称中插入星号*来激活,例如 Holder,当应用材质模板时,这将把材质应用到所有包含“Holder”的零件上。
每个新模板都将添加到模板列表中,可以在打开的任何KeyShot场景中访问该列表。这使得您可以跨多个项目重复使用模板,从而更轻松地维护材质和纹理的一致性。
原文可以看官方手册
https://manual.keyshot.com/keyshot11/manual/tools-3/material-templates/
然后在右边输入材质库中的材质,也可以打开材质库直接拖放想要的材质
另外一种方式是按原始的材料(这里我使用rhino库中的材质)一一对应分配你设置好的材质(keyshot材质库中的,可以把rhino材质保存到keyshot库中)
最后点应用到场景或者单独的模型组就可以使用了
使用技巧:先建立一个大的规则给物件上材质,再使用亮哑规则区分亮哑图层
命名插件-建议自己写个工具列方便快速启动,下面是巨集写法
-RunPythonsc-ript D:\python \object_name.py
路径按你自己的喜好更改,文件放到对应文件夹就行
脚本代码(代码水平有限,有修改需求请问Chatgpt):
# coding=utf-8
import rhinosc-riptsyntax as rs
import sc-riptcontext as sc
import os
import random
# 存储已使用的颜色
used_colors = []
# 保存原始视图
view = rs.CurrentView()
# 获取所有物体的ID
msg="选择需要命名的几何体:"
objs = rs.GetObjects(msg, 8 + 16 + 32)
# 隐藏所有物体
obj_unselect=rs.InvertSelectedObjects(objs)
rs.HideObject(obj_unselect)
rs.HideObjects(objs)
# 保存已选择的物体
sc.sticky["selected_objects"] = objs
# 循环遍历每个物体
for obj in objs:
# 显示单独的物体
rs.ShowObject(obj)
color=[255,255,0]
rs.ObjectColor(obj, color)
# 获取物体的原始名称
old_name = rs.ObjectName(obj)
# 获取用户输入的新名称
new_name = rs.GetString("请输入新的名称:", old_name)
rs.HideObjects(obj)
# 如果图层不存在,创建新图层
if not rs.IsLayer(new_name):
# 生成随机颜色
color = [random.randint(0, 255) for _ in range(3)]
while color in used_colors:
color = [random.randint(0, 255) for _ in range(3)]
used_colors.append(color)
# 创建新图层
rs.AddLayer(new_name, color)
# 设置物体的新名称和图层名称
# 显示所有物体
layer_color = rs.LayerColor(new_name)
rs.ObjectName(obj, new_name)
rs.ObjectColor(obj, layer_color)
rs.ObjectLayer(obj, new_name)
# 显示所有物体
rs.ShowObjects(objs)
rs.ShowObjects(obj_unselect)
# 还原原始视图
# 选择所有物体
rs.SelectObjects(objs)
rs.ZoomBoundingBox(rs.BoundingBox(objs))
rs.UnselectAllObjects()
小小心意,大大鼓励
本文章版权归 Nomad 所有,禁止匿名转载及个人使用,任何商业用途均需联系原作者。
举报
太屌了 哥
666
干货
活到老,学到老
感谢大佬的分享
过来取经了