一、前言
- 本文是基于OpenGL之渲染大小球自转和公转的效果完成的,我之前的博客已详细地说明整体的地板的绘制、球体的颜色绘制,以及指定球体之间的旋转和自转等逻辑。
- 本文在其基础上继续实现图元上纹理的渲染和镜面显示效果,让其更加逼真的渲染出仿照“天体”之间的运动效果。
二、效果展示
三、重点说明
- SetupRC 函数:在原有代码的基础上,增加纹理相关数据及设置,并开启背面剔除;
- loadTGATexture:将 TGA 文件加载渲染出 2D 纹理;
- RenderScene:镜面球体部分、地板、非镜面球体部分的绘制;
- Drawsomething:中心大球、静态小球、公转动态小球的绘制。
四、绘制流程
① SetupRC()
- 设置地板顶点数和地板纹理:地板数据由原来的线条相交,更改为仅设置 4 个顶点坐标&纹理坐标
GLfloat texSize = 10.0f