Android:如何在屏幕上添加多个对象(OpenGL)?

时间:2012-01-17 04:52:47

标签: android opengl-es model cube

我正在使用模型查看器模板,该模板在屏幕中央显示3D立方体。我想要实现的是在屏幕上放置另一个但更小的3D立方体,并在与主要部分不同的XY位置。所以在视觉上,如果原始立方体位于中心,我想将第二个较小的立方体放在右边。

那么如何在屏幕上添加另一个立方体,使其更小,并改变其位置? 注意:我正在使用基本模板。

2 个答案:

答案 0 :(得分:1)

将不同的模型变换矩阵分配给第二个对象。 如果使用固定管道进行渲染,那么就像调用glMulMatrix一样简单。 如果使用着色器进行渲染,则将适当的矩阵作为均匀传递到顶点着色器。

以下是关于这个主题的一些基本阅读:

答案 1 :(得分:1)

你有很多方法可以做到这一点。

  • 修改多维数据集顶点的坐标(可能是一个坏主意)。
  • 使用缩放操作和平移操作修改模型视图矩阵,然后再次绘制多维数据集(可能是更好的主意)。你必须注意转换的顺序。
  • 使用反向平移和缩放操作修改相机矩阵,然后再次绘制您的立方体(这不是一个坏主意,但是复杂且略微不直观)。
  • 修改视口...

我也猜测你有旋转(这样你的立方体就显示出它的3D优点),所以转换的顺序非常重要。

如果你想多学习一点,你可以阅读OpenGL红皮书,可以在互联网上免费获得。第一章回答了你的所有问题。