本系列教程主要讲解利用Python和OpenGL开发三维图形程序。这里主要用到的工具库是glfw开源图形库。本系列内容较难。要求学生对几何和编程有一定的了解。建议初三以上同学学习。
三维图形开发介绍
大部份编程软件都提供二维图形的绘图指令。像PyGame,turtle,tkinter、wxWidgets等。但要开发三维图形程序,就需借助第三方图形库。OpenGL、DirectX和Vulkan这三个。如何从平台适用性、学习难易程度来比较,OpenGL是最好的。
GLFW介绍和安装
GLFW是个开源的三维图形设计平台,它支持OpenGL、OpenGL ES和Vulkan这些流行的三维设计库。它是用C语言开发的,支持Windows、mac os、Linux操作系统。它还提供丰富的操作API,键盘、鼠标和游戏操作杆等。是一个非常好的三维图形开发平台。 GLFW现在也支持Python了。它的安装很简单。
pip install glfw
第一个示例程序
程序仅创建一个支持OpenGL的窗口
import glfw
if __name__ == '__main__':
# 初始化GLFW
glfw.init()
# 创建窗口
window = glfw.create_window(640, 480, "Hello World", None, None)
if not window:
glfw.terminate()
#生成窗口上下文设备
glfw.make_context_current(window)
# 窗口事件循环
while not glfw.window_should_close(window):
# 渲染内容
# 交换缓冲区,提交渲染内容
glfw.swap_buffers(window)
# 窗口事件轮询
glfw.poll_events()
glfw.terminate()