Learning Modern 3D Graphics Programming
最近学习管道编程,阅读<<Learning Modern 3D Graphics Programming>>。里面提供的代码环境使用了glSDK,只能运行在Linux和Window环境下。于是,在学习的同时,我也照着官方Demo开发mac环境下的教程。每个章节最后的效果可能有所差别,但是涉及到的知识点与整体框架和Demo相同。
环境搭建
搭建环境一开始参考官方Demo使用freeglut,但总是无法编译shader,提示不支持shader #330版本。后来发现osX官方提供了GLUT框架,通过指定使用glutInitDisplayMode(GLUT_3_2_CORE_PROFILE|...|...)
可以编译shader。最后也处于对window和Linux平台的兼容,于是决定使用glfw3的库作为开发环境。
<pre><code>ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
install glfw3:
brew install homebrew/versions/glfw3
</code></pre>通过glfw3设置OpenGL版本。
<pre><code>glfwWindowHint(GLFW_CONTEXT_VERSION_MAJOR, 3);
glfwWindowHint(GLFW_CONTEXT_VERSION_MINOR, 2);
glfwWindowHint(GLFW_OPENGL_PROFILE, GLFW_OPENGL_CORE_PROFILE);
glfwWindowHint(GLFW_OPENGL_FORWARD_COMPAT, GL_TRUE);
</code></pre>
github项目地址
网友评论