OpenGL之渲染大小球自转和公转的效果
【摘要】
效果展示
整体思路与步骤拆分
渲染绘制绿色方格地板部分;
渲染绘制中心位置的红色大球,并实现其自转;
渲染绘制随机位置的50个静态小球和一个围绕红色大球公转的动态蓝色球;
渲染实现动态蓝...
效果展示
整体思路与步骤拆分
- 渲染绘制绿色方格地板部分;
- 渲染绘制中心位置的红色大球,并实现其自转;
- 渲染绘制随机位置的50个静态小球和一个围绕红色大球公转的动态蓝色球;
- 渲染实现动态蓝色球绕红色大球的公转;
- 实现移动观察者(camera),仍能观察红色大球自转及动态蓝色球围绕红球公转的效果;
重点函数
- void gltMakeSphere(GLTriangleBatch& sphereBatch, GLfloat fRadius, GLint iSlices, GLint iStacks); // 初始化球体的三角形批次,参数依次是:球半径、片段数、堆叠数;
- glRotatef(-80.0f, 10.0f, 1.0f, 0.0f) 表示将当前图形沿方向向量(-10,1,0)顺时针旋转80度;
- glTranslatef(0.0f, -20.0f, -40.0f) 表示将当前图形向x轴平移0,向y轴平移-20,向z轴平移-40;
- 如果先旋转在绘制,则是表现为自转;而如果先绘制在旋转,再移动一定距离,是为了到达绘制公转的地方;
- 在变换坐标的时候,使用的是glT
文章来源: blog.csdn.net,作者:Serendipity·y,版权归原作者所有,如需转载,请联系作者。
原文链接:blog.csdn.net/Forever_wj/article/details/107427735
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)