# learn_opengl **Repository Path**: yangjam_tm/learn_opengl ## Basic Information - **Project Name**: learn_opengl - **Description**: opengl学习例程 - **Primary Language**: C++ - **License**: AGPL-3.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2022-08-13 - **Last Updated**: 2024-02-25 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # learn_opengl #### 介绍 opengl学习例程 #### 环境配置 * 开发环境:ubuntu 20.04.1 + vscode * 安装opengl环境 ```bash sudo apt install build-essential libgl2-mesa-dev sudo apt install freeglut3-dev sudo apt install libglew-dev libsdl2-dev libsdl2-image-dev libglm-dev libfreetype6-dev ## 可选安装glfw工具 sudo apt install libglfw3 libglfw3-dev ## 下载gl3w代码 git clone https://github.com/skaslev/gl3w.git cd gl3w python3 gl3w_gen.py cmake -G "Unix Makefiles" -f CMakeLists.txt sudo make sudo make install ## 将gl3w编译结果拷贝到本工程 cp cp /usr/local/include/gl3w ./inc/ -r cp /usr/local/share/gl3w/gl3w.c ./src ## 安装assimp库 sudo apt install libassimp-dev libassimp4 assimp-utils ## 安装std_image库 简单的图像加载库 git clone https://github.com/nothings/stb.git ``` #### 问题记录 1. 着色器无法编译,输出如下错误 * 错误信息 ```bash compile error: 0:1(10): error: GLSL 3.00 is not supported. Supported versions are: 1.10, 1.20, 1.30, 1.40, 1.00 ES, and 3.00 ES ``` * 解决办法 ```bash export MESA_GL_VERSION_OVERRIDE=3.3 ``` ### 修改日志 * 23/1/5 * 重新整理工程, 编写cmakefile * 23/1/6 * 完成着色器加载测试 * 23/1/9 * 使用着色器绘制直线,编写xmake编译脚本 * 23/1/11 * 重新实现着色器 * 23/1/13 * 测试VBO,EBO,VAO等缓冲数组的使用 * 解决着色器加载导致的栈溢出问题 * 23/1/17 * 实现模型加载,并使用顶点数据绘制模型