我想玩一些图形的东西。简单的动画和东西。我也想玩光线追踪。我需要帮助找到一个可以帮助我做这些事情的图书馆。我有几个要求:
- 必须能够进行光线追踪
- 必须用于高级语言(python、.NET 等)。请不要使用 C/C++
- 必须有良好的文档,最好有例子。
有谁知道我可以用来鬼混的好图书馆?
我想玩一些图形的东西。简单的动画和东西。我也想玩光线追踪。我需要帮助找到一个可以帮助我做这些事情的图书馆。我有几个要求:
有谁知道我可以用来鬼混的好图书馆?
看看 blender.org - 这是一个具有 python 脚本功能的开源 3d 项目。
我首先想到的是流行的开源 POV Raytracer (www.povray.org)。POV 场景完全由脚本文件定义,有些人编写了 Python 代码来轻松生成它们。
http://code.activestate.com/recipes/205451/
http://jabas-unblog.blogspot.com/2007/04/easy-procedural-graphics-python-and-pov.html
我不知道有任何库可以满足您的要求(至少除非我决定为我自己的跟踪器发布代码......)。
无论如何,编写示踪剂实际上并不难。我强烈建议您获取 Glassner 的“An Introduction to Ray Tracing”的副本。它以相对容易理解的术语介绍了实际数学,并且还有一整节关于“如何编写光线追踪器”。
无论如何,“库”本身并没有那么多用处——几乎每个光线追踪器都有自己的内部库,但它们是特定于追踪器的。它们通常包括:
对于我自己的跟踪器,我实际上使用了javax.vecmath
上面 #3 的包,但必须根据 Glassner 书为 #1 和 #2 编写我自己的代码。整个代码不到 2k 行,而大多数单独的类大约有 40 行长。
开发良好的开源光线追踪器是
对于实时 3D(当然取决于语言),JMonkeyEngine (Java) 不确定这是否满足您的“高级语言”要求。
您也可以考虑使用 3D 游戏脚本语言,例如GameCore或BlitzBasic