早教吧 育儿知识 作业答案 考试题库 百科 知识分享

我想用opengl实现一系列椭圆从上向下随机位置下落请问循环方面,即第一个椭圆下落了怎样才能让下一个椭圆接着下落

题目详情
我想用opengl实现一系列椭圆从上向下随机位置下落
请问循环方面,即第一个椭圆下落了怎样才能让下一个椭圆接着下落
▼优质解答
答案和解析
OpenGL代码实现起来没有普通java/c++那么快,这里给出一个参考思路,你最好自己动手实践.
先回答你的问题.
下落的顺序,也就是你所说的一个接着一个问题,可以通过在每一次移动的过程中,判断前一个椭圆是否开始下落(第一次下落的回调函数bool量控制)来控制或者是否到达边缘(y>= ScreenHeight)来控制,如果前一个椭圆满足条件的话就产生新的椭圆从新的位置随机下落即可.这个取决于你的逻辑需要.
另外,根据你所描述的问题,决定随机下落程序的因素还包括初始位置、时间、下落速度(大小和方向).
1)初始位置的计算是一个关于屏幕宽度和高度的一个随机函数产生;
2)时间可以通过你使用的库如GLFW库或者FreeGLUT(例如glutGet(GLUT_ELAPSED_TIME))中有 相应函数;或者使用定时器函数,例如FreeGLUT中的glutTimerFunc来根据时间移动椭圆;
3)下落的速度大小和方向,你可以使用固定值(例如全局指定),也可以根据时间动态改变.
看了 我想用opengl实现一系列...的网友还看了以下: