POVray 场景描述语言的现代替代品

Pro*_*ala 6 java python rendering

简而言之:

你知道3D 场景的生成脚本并像 POVray 一样渲染它,但使用更现代的渲染技术(大都会光传输、GPGPU、环境遮挡),理想情况下使用基于Java 或 python 等通用语言的场景描述语言。简单 - 更现代的 POVray 替代品


长篇大论:

我有时会使用 POVray 进行生成设计/图形,因为 POVray 的场景描述语言非常好,而且它是我知道的唯一一种 3D 渲染软件,其中输入的主要方式是“编写场景代码”而不是“使用 GUI 对场景进行建模

另一方面,POVray 的核心相当陈旧。视觉质量远远落后于例如Luxrender,速度也没有那么快(缺少环境遮挡等常见技巧)。另一方面,luxrender 的输入文件不应该是手工编写的(例如,没有什么比POVray 对几何基元进行 bolean 操作的出色实体建模,或我用于脚本编写的解析函数处方或“blob”描述的曲面更像了很多 )。

另外,我认为将场景描述语言集成到某种通用编程语言(如 python 或 java )中或者至少有一些与这些语言完全兼容的接口会很好。

我想知道是否有这样的事情?

据我所知,最接近的SunFlow,它可以作为库导入任何 Java 程序,并且原始类和接口可以在标准 Java 中扩展 - 因此原则上您可以通过这种方式定义自己的几何图元。不过现在SunFlow项目好像已经死了,也没有很好的教程如何使用这个直接的java接口。

Ale*_*der 2

不,目前还不行。

在开源光线追踪器中,有 Luxrender、Yafaray、Sunflow 和 Aqsis,但它们都不支持像 POVRay 那样使用场景描述语言创建场景。只有简单的 POVRay 场景才有可能转换为其他格式,因为它不是声明性的,而是一种脚本语言。

可以为 Yafaray 编写 XML,但它不具有相同的功能。