首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >三维渲染工具

三维渲染工具
EN

Stack Overflow用户
提问于 2013-03-08 10:31:45
回答 1查看 1.3K关注 0票数 0

众所周知,3D渲染的计算成本很高。

我想使用Apache Hadoop进行分布式3D渲染(渲染图像或视频),以减少渲染时间。因此,在了解了Hadoop之后,我了解到我需要2件事:

  • 数据,它将被可视化(可能是某种文件,其中包含指令(如绘制矩形、设置坐标、设置颜色等))。
  • 用于呈现上述文件的工具/程序/实用程序。我想从我的程序中调用它,将它指向带有数据的文件。(如果这个程序有一个命令行API,那就好了)。

但我对3D渲染一无所知,所以我需要你的帮助,为渲染3D图像/视频提供工具(开源)。另外,我对输入数据一无所知。所以,如果你建议我渲染工具+文件格式来渲染,那就太好了。

我听说过使用带有.rib文件格式的Hadoop作为数据进行可视化,并使用rndr程序来呈现这些数据。所以我需要一些模拟。

请注意,我的目标是更深入地了解Hadoop和分布式计算,而不是3D渲染,所以请建议我最简单的解决方案。

谢谢。

EN

回答 1

Stack Overflow用户

发布于 2013-03-10 10:35:37

接吻: Gnuplot

如果您真的只关心使用Hadoop,并且您对呈现的唯一要求是,它接受一个输入文件并生成一个图像,以便您能够显示一个完整的动画,那么我建议使用gnuplot。它实际上是一个图形绘制程序,但它需要脚本并生成图像文件,最有用的是,您可以输入数学公式来绘制,而不是构造3d世界来渲染。

您只需准备n个文件,这些文件都是相同的,除了从开始以来的时间内有一个偏移量值,gnuplot将生成适当的帧。

这是最简单的选项,可以让您专注于Hadoop方面。为了向您展示多么简单,这将产生一个3叶片风扇旋转动画的框架:

代码语言:javascript
复制
set xrange[-1:1]
set yrange[-1:1]
set polar
unset key
unset border
unset tics
set terminal png size 1000,1000
set output "frame_$FRAME.png" 
plot cos(3*t+$FRAME/5)

Gnuplot的一个伟大之处在于,您可以在交互式提示符中输入命令来操作图形,这些命令与您在脚本中输入的命令相同。因此,一旦您有了满意的东西,您可以执行save 'newscript.gpt'或复制您使用的命令。只需在提示符下运行gnuplot newscript.gpt即可重新创建图形。

顺便说一句,模拟难以渲染的场景要比实际构建它们容易得多,所以只需在gnuplot脚本中添加一个睡眠命令,就可以让它花费15秒或多长时间。

整根香蕉:搅拌机

搅拌机是一个三维渲染系统。我相信它是作为一个渲染系统的一些主流动画在服务器农场,正是您所描述的方式。它有相当的学习曲线,但我认为你应该能够拿起一个教程或其他预先存在的动画项目文件。从这里开始,您需要研究如何将呈现引擎作为特定帧的命令调用。我只在搅拌机里做过静态渲染,所以我不能带你去更远的地方。这将是更令人印象深刻的视觉,但没有更令人印象深刻的学术,你将浪费更多的时间在这方面的事情。

我的选择

就我个人而言,我会和侏儒一起去。您可以使用splot命令而不是2d plot制作3d绘图,虽然它不是您想象的3d场景渲染,但它实现了使用脚本制作图片的目的。您可以从上面这样的基本内容开始,直到您开始安装,然后引入更多的复杂性;从实现的角度来看,运行gnuplot脚本比运行同样需要数据文件的脚本容易,但是在您想要执行命令+脚本+数据而不是命令+脚本时,仍然很容易预先生成数据并让gnuplot读取它。关键是增加难度,而不是在你能走之前跑。

如果您最终发现您有空闲时间,并将其更改为使用搅拌机,那么这都是免费的胜利,而且您并没有危及您的hadoop项目,使它变得漂亮。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15291893

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档