从一开始学renderman的rispec,我就为prman程序编译成功后无法运行而苦恼。原来我以前总是把程序链接到prman.lib这个库上面,使得生成的*.exe,一运行就出现内存冲突的问题。我隐约感觉到是运行时的问题,后来我把加载的库改成libprmansdk.lib似乎可以了,但是会出现两种库冲突的问题,将Runtime Library 改成/MT就会少了很多的错误。但是还会有几个reference找不到的链接错误,后来上网查了一下是少了加载了一些关于读取mac地址的库。加上Ws2_32.lib iphlpapi.lib这两个库就可以成功编译了。编译成功后可正确运行。如果使用RiBegin(RI_NULL);程序会把rib输出到stdout。如果使用RiBegin("filename");会把rib输出到filename的文件里。如果有了filename的rib文件就可以使用prman渲染了。

      现在问题就是如何用程序直接启动prman在内存中进行渲染而不通过文件,但是这样也弊端。如prman的文档上说的“Linking with the renderer results in very large unwieldly executables, which may not fit on your computer. ”。我在这里使用了输入输出重定向的方法实现了prman的直接渲染。在cmd中输入 *.exe | prman。 “|”就是重定向符号。但是按文档上说应该可以把main入口和prman链接在一起,但是我没有找到是怎样链接起来的。希望有高手指点。

作者: sunhaohui 发表于 2011-02-17 08:45 原文链接

推荐.NET配套的通用数据层ORM框架:CYQ.Data 通用数据层框架