[mentalray]如何在Maya.env里设置shader_p的路径
来源:互联网 发布:海尔洗衣机网络专供款 编辑:程序博客网 时间:2024/04/29 10:24
目的:
把shader_p的dll,mel,mi和maya所在路径分离,不影响maya目录下的目录结构,便于开发时的更改和调试。(当你shader开发完成后,再决定合并到maya目录里也不迟)
环境:
maya2009 ,windowsXP x32
依赖库:openEXR1.6.1 (vc2005.windowsXP.x32下的库官方没有,我编译后共享出来,在这里)
具体步骤:
1.假设
shader_p的根目录为:
E:/dev/nVidia/mentalimage/OpenProjects/shaders_p/trunk/shaders_p_3.3,
openEXR1.6.1的dll目录:
E:/dev/tools/openexr/1.6.1/Deploy/bin/Release
2.为Maya.env添加如下内容:
NOTE:
MI_LIBRARY_PATH 中如果在 $SHADERSP_PLUG之前又加入一些路径,则渲染时
script editor提示:(注意:在PATH等变量里不要带空格,可能解决这个问题。 - 2010-06-07)
同时,output window提示:
(p_HairTK,p_irradiance是场景中用到的shader_p里的shader名称。)
这很奇怪。我花了好长时间才查出这个问题。
所以,一个笨拙的办法就是:既然要用的dll在$SHADERSP_PLUG目录下,那么就让MI_LIBRARY_PATH = $SHADERSP_PLUG;不要在MI_LIBRARY_PATH 再包含其他路径。
(需要注意的是shader_p把mi文件和dll文件放在不同的目录下了)
但现在出现另一个问题,如果我还有一套shader,假设是S,也不想放到maya根目录下(原因和shader_p类似),那么Maya.evn中会有:
MI_LIBRARY_PATH = $SHADERSP_PLUG; {S.dll所在路径};
这似乎会出错。
所以,可以在maya.env中删去MI_LIBRARY_PATH,同时把每一套shader的mi和dll文件放在同一目录下:
shader_p.dll 和 shader_p.mi放在一个目录下,S.dll 和 S.mi在另一目录下(假设是$S_MI)。
这时,maya.env里的MI_CUSTOM_SHADER_PATH = $SHADERSP_MI;$S_MI;
.
.
.
.
.
.
以上是个人摸索出来的,也许很笨拙,希望大家指正或提出更好的办法。谢谢
- [mentalray]如何在Maya.env里设置shader_p的路径
- [备忘]how to use user-provided mentalray shader in Maya?(如何在maya里用自定义mentalray shader)
- Maya MentalRay 玻璃材质测试
- 如何在web 工程里取的根路径
- 如何在eclipse的配置文件里指定jdk路径
- 如何在eclipse的配置文件里指定jdk路径
- 如何在eclipse的配置文件里指定jdk路径
- maya中通过mel启动mentalray渲染器
- 在linux里怎么设置环境变量啊,用env可以看到所有的环境变量,那什么指令可以改它们啊
- 在directshow里如何设置图像的分辨率
- 在英特尔的编译器里如何设置编译输出信息
- Android如何在Java代码里设置Button的margin
- 如何在Linux的Shell里设置环境变量?
- 如何在WEBGL中使用maya导入的模型
- 如何在Unity3d中实现MAYA的BlendShape
- 在VC++的工程里,怎样设置头文件的搜索路径
- 如何使ssh server env命令与在本地直接执行env命令后的输出结果相同
- 如何在sap里设置打印机参数
- c++
- 清风明月 把酒聊天
- innodb表如何更快得到count(*)结果
- 生活还得继续
- linux下c语言编程 vi 简介
- [mentalray]如何在Maya.env里设置shader_p的路径
- 网络日志(2010.4.23)
- love Letter
- JavaScript中的execCommand
- 在面试一个游戏编程职位前,你需要知道的东西
- 这个星期在学C++
- 二分查找法(循环与递归分别实现)
- spring2.5与junit4事务回滚
- 我做的第一个人物模型——去褚业尊者