maxscript - Maxscript - 如何在 3ds Max 2020 中将渲染更改为纹理输出目录?
问题描述
最大 2020
我正在尝试将导出渲染的默认路径更改为纹理贴图。
这是我的代码。
fn shakeAndBake theObj pxlSize = (
local theObj = $
theObj.iNodeBakeProperties.removeAllBakeElements()
diffuseColor = Corona_DiffuseColor()
diffuseColor.outputSzX = diffuseColor.outputSzY = pxlSize
diffuseColor.fileType = (@"C:\\"+theObj.name+"_diffuse.png")
diffuseColor.fileName = filenameFromPath diffuseColor.fileType
diffuseColor.enabled = true
theObj.INodeBakeProperties.addBakeElement diffuseColor
select theObj
render rendertype:#bakeSelected vfb:off progressBar:true outputSize:[pxlSize,pxlSize] cancelled:&wasCanceled quiet:true;
)
theObject = shakeAndBake theObject 512
它不断将纹理输出到此路径:
C:\Users\user\Documents\3ds Max 2020\sceneassets\images
我认为这行代码会改变这一点:
diffuseColor.fileType = (@"C:\\"+theObj.name+"_diffuse.png")
任何人都知道出了什么问题。
解决方案
不知何故,我感觉您仍然需要将“ outputfile:”参数传递给渲染函数
对不起我愚蠢的不回答。我会努力挽回自己。似乎diffuseColor.fileType
您正在设置位图的类型,所以如果它是 png,bmp 等
diffuseColor.fileName
应该包含带有文件名的整个路径。另外,如果你把“@”放在字符串前面,它变成逐字字符串文字,不需要双斜杠官方autodtesk maxscript帮助,字符串文字
如果你像这样改变它,效果很好:
fn shakeAndBake theObj pxlSize = (
local theObj = $
theObj.iNodeBakeProperties.removeAllBakeElements()
diffuseColor = Corona_DiffuseColor()
diffuseColor.outputSzX = diffuseColor.outputSzY = pxlSize
diffuseColor.fileType = (@"F:\TEMP\"+theObj.name+"_diffuse.png")
diffuseColor.fileName = diffuseColor.fileType
diffuseColor.enabled = true
theObj.INodeBakeProperties.addBakeElement diffuseColor
select theObj
render rendertype:#bakeSelected vfb:off progressBar:true outputSize:[pxlSize,pxlSize] cancelled:&wasCanceled quiet:true;
)
theObject = shakeAndBake theObject 512
推荐阅读
- javascript - 根据组数将数组划分为子数组
- c# - 更新 SQL Server 查询循环,直到达到 X 数
- c++ - 从键HashTable c ++中删除指定元素
- ios - 当我在不同的故事板中将一个 viewController 切换到另一个 viewController 时,revealViewController 为零
- jquery - 使用带有Rails的jQuery-ujs时删除新记录时不触发Unobtrusive-JS功能
- mysql - Node.js、Express 和 MySQL。要求未定义
- java - RecyclerView:没有附加适配器;登录时跳过布局
- c++ - DLL 仅在 qt 调试器中由应用程序加载,但不是独立加载
- python - 数据框两列之间的相似性
- python - 加载 word2vec 时出现 UnicodeDecodeError 错误