2010-11-25 57 views
2

我目前正试图展示一系列图像,这些图像在3D视图中彼此稍有不同,并且其中包含大量透明区域(例如,在时间内移动的点矩形,我会随着时间的推移提供所有位置的3D视图)。 现在我正在做的是生成一个图像,在其中绘制点,创建一个每帧40x40x1的盒子(或40x40的矩形形状),将图像作为纹理应用到盒子的FRONT侧,然后添加在我的场景中的位置(0,0,z),其中z是帧编号。 它工作得很好,但它们当然是图像之间的间断点(1“米”)。如何将形状拉伸成体积

我想知道他们是否是一种方法来创建基于该图像的“挤出”对象,以填补飞机之间的空间。这相当于为每个点创建一个1x1x1框,将它们放在(x,y,z),其中x/y是点的坐标,z是框架编号。实际的问题是我有很多要点(在某些情况下有几百个,如果不是几千个),如果我必须创建数千个图像,那么处理和渲染图像相对容易,我认为会变得相当沉重框。

在此先感谢您的帮助,

Frederic。

回答

0

您可以对您的数据(40 x 40 x N)像素使用三维文字,N =帧数。

但是你仍然需要绘制这个纹理启用的东西。

我会做你现在正在做的 - 绘制四边形,但不仅沿着Z轴,而且沿着X和Y轴。

沿着Z轴的N个四边形中的每一个将具有40×40大小,沿着X轴的40个四边形中的每一个将是40×N大小,并且沿着Y轴的40个四边形中的每一个将是N×40大小。因此对于2x2x2纹理,我们将绘制2 + 2 + 2 = 6四边形,它看起来像普通立方体,对于纹理中的3x3x3点,我们将绘制3 + 3 + 3四边形,它看起来像8个立方体堆积成一个大立方体(所以,而不是8立方体6个四边形,我们只画9个四边形,但效果是相同的)。

对于40x40x1000,它将是1080四边形(合理绘制实时imho)而不是40 * 40 * 1000 * 6四边形。

我只是不知道,如果图形效果正是你想达到的。

+0

我几个月来没有看过我的程序的那部分,因为我不得不在更重要的部分上工作。我会尽快尝试,但我不知道它是否足够... – Goulou 2011-03-22 14:46:41