gpt4 book ai didi

c++ - 在 OpenGL 中播放动画

转载 作者:行者123 更新时间:2023-11-30 01:59:47 27 4
gpt4 key购买 nike

只想延迟几微秒,以便我可以看到我的动画。延迟功能不起作用。我正在使用 fltk,所以任何相关的东西都可以提供帮助。

for(i = 0; i < 1; i = i + 0.1)
{
glClearColor(0.0f, 0.0f, 0.0f, 1.0f );
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);

glLoadIdentity();
glTranslatef(i,i,1);
glRotatef(spin, 0, 0, 1);
delay(1000);
glScalef(i,i,i);
glutWireCube(1);
}

最佳答案

您不会在 OpenGL 中以这种方式播放动画(从技术上讲,您可以在循环末尾放置一个 SwapBuffers,但这不是一个好主意)。

你应该做的是实现一个空闲处理程序,它在调用时发出重绘。在绘图函数中,您应该计算调用显示函数之间的时间,以使动画按该量前进。

Never(!) 运行一个循环,在其中添加一个 sleep 或类似的。此类代码对外部事件没有响应,现代操作系统会将表现类似的程序视为无响应/挂起,并向用户显示允许终止该程序的消息框。这不是您想要的。

关于c++ - 在 OpenGL 中播放动画,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15844619/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com