科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道基础软件基于OpenGL动画设计研究与实现

基于OpenGL动画设计研究与实现

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

本文从Windows及C语言编程基础出发,重点介绍了如何使用OpenGL来实现动画的原理与方法

作者:LXZ 来源:论坛 2007年10月28日

关键字: OpenGL 动画设计 研究 实现 Linux

  • 评论
  • 分享微博
  • 分享邮件
摘 要:本文从Windows及C语言编程基础出发,重点介绍了如何使用OpenGL来实现动画的原理与方法,并通过相关实例进行了验证。

  关 键 词:OpenGL,API, 双缓冲技术,渲染,计时器

  1.引 言

  OpenGL是一种相对新的工业标准,它的前身是由SGI公司为其图形工作站开发的IRIS GL,是一个工业标准的三维计算机图形软件接口。

  OpenGL不是一种编程语言,而是一种API(Application Programming Interface,应用程序编程接口)。作为一种API,OpenGL库遵循C调用约定,这意味着我们在C语言环境下可以很方便的调用 OpenGL库中的API函数。

  Microsoft开始把 OpenGL集成到Windows NT中,后来又把它集成到新版本的Windows 95 OEM Service Release 2中,用户既可以在 Windows 95、Windows NT环境下开发OpenGL应用程序,又可以很方便的把已有的工作站上的程序移植过来。

  2.双缓冲技术

  这项技术能使你执行绘图代码时能够在一个屏幕之外的缓冲区内进行渲染,然后用交换命令把图形放到屏幕上。双缓冲技术有两种用途,第一个是有些复杂的图形可能要花很长的时间绘制,而你又不希望图像绘制的所有步骤都被看见,使用双缓冲技术就可以合成一幅图像并在完成后才显示出来。用户永远不会看到不完整的图像,只有整幅图像准备就绪之后才会把它在瞬间置于屏幕之上。双缓冲技术的第二个用处是制作动画。每一帧都在画面外的缓冲区绘制,完成之后再交换到屏幕上。

  OpenGL支持双缓冲,但是并不是真正用来交换前台缓冲区和后台缓冲区的。

  实际上,每个OpenGL支持的窗口系统都可以通过一个函数调用来实现前后缓冲区之间的交换。

  ★ 在Windows编程环境下调用下面函数:

SwapBuffers(dc);

  ★ 在C语言编程环境下调用下面函数:

glutSwapBuffers();
    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章