在运行时绘制3d图像

时间:2010-11-21 17:44:35

标签: php javascript jquery html

我感兴趣,如何使用PHP,JS在运行时绘制3D图像。 (或者其他编程语言为此提出的建议......)

具体来说:我有一个包含两个文件的数据库表。用户和蜡烛。例如迈克尔,100意味着迈克尔有100支蜡烛。

如果我有10x10蜡烛图像,我如何使用此图像绘制“3d蜡烛图像”,如this

所以我有一个300x300 DIV的exapmle,我想用3d风格的candle.png填写。如果用户在数据库中有3个蜡烛,则随机填写3个蜡烛,如果用户有30个,则用30个蜡烛填写..

请帮帮我怎样才能开始呢?

3 个答案:

答案 0 :(得分:0)

尽管可能,渲染3D图形并不是真正创建php和javascript的。

如果您正在寻找一种方法,可以将预先渲染的蜡烛图像输出到您的页面,那么使用这些语言非常容易,但我认为您需要使您的问题更具体,以获得有用的答案。

答案 1 :(得分:0)

如果您可以在服务器上运行任意代码,我建议使用与CGI一起运行的http://liballeg.org/创建程序,并在javascript中查询它。我想你正在寻找所谓的仿射变换;查一查;我相信allegro支持他们。

答案 2 :(得分:0)

如何处理这取决于您希望如何向用户显示,例如,如果用户应该能够旋转图像,则需要在用户附近,即在浏览器上完成。

如果它只是一个静态位图是最终的结果,那么在服务器上执行它可能是最佳的,以提高性能。

无论哪种方式,都涉及到大量的数学,但我会假设你知道数学。

为了在PHP中执行此操作,您可以使用gdlib保存图像,并在执行光线跟踪时查找C中的任何示例。它会很慢,并且会对您的网络服务器造成影响,但有解决方案。

如果您想在javascript中进行操作,那么您最好的选择是使用3D画布(https://wiki.mozilla.org/Canvas:3D),但目前浏览器支持非常有限,但它确实可以让您访问openGL API。