
OpenGL
文章平均质量分 94
kikikidult
这个作者很懒,什么都没留下…
展开
-
OpenGL--05 纹理、多级渐远纹理、纹理单元
GL_NEAREST产生颗粒状的图案,能够清晰看到组成纹理的像素,而GL_LINEAR能够产生更平滑的图案,很难看出单个的纹理像素。它通过为纹理生成一系列分辨率逐渐降低的图像(每个图像的大小是前一个的一半),在渲染时根据物体与观察者的距离选择合适的纹理级别(Level),从而避免纹理模糊或锯齿。距观察者的距离超过一定的阈值,OpenGL会使用不同的多级渐远纹理,即最适合物体的距离的那个。纹理坐标起始于(0, 0),也就是纹理图片的左下角,终止于(1, 1),即纹理图片的右上角。,把图像转化为字节序列。原创 2025-02-28 11:04:48 · 1044 阅读 · 0 评论 -
OpenGL 04--GLSL、数据类型、Uniform、着色器类
/ 设置统一变量的值// 定义一个偏移量// 激活着色器程序// 设置统一变量的值// 指定 GLSL 的版本为 4.00,并使用核心(Core)模式。这是 OpenGL 4.0 及以上版本的标准。// 定义顶点位置输入,位于顶点属性位置 0。// 定义顶点颜色输入,位于顶点属性位置 1。// 定义一个输出变量,用于将顶点颜色传递给片段着色器。// 定义一个统一变量,用于在运行时动态调整顶点的 x 坐标。// 设置顶点的最终位置。原创 2025-02-26 09:20:42 · 1393 阅读 · 0 评论 -
OpenGL 03--练习
在渲染循环中,首先激活橙色片元着色器程序,然后绘制第一个三角形,然后激活黄色片元着色器程序,绘制第二个三角形。创建两个三角形,每个三角形都有自己的 VAO 和 VBO,并且使用不同的片元着色器为它们着色。:定义两个三角形的顶点数据,创建两个 VAO 和两个 VBO,将顶点数据复制到 VBO 中,并配置顶点属性指针。:在渲染循环中,处理输入,清除颜色缓冲区,使用着色器程序,绘制两个三角形,交换前后缓冲区,并处理事件。:创建顶点着色器和片元着色器,编译它们,并将它们附加到着色器程序,然后链接着色器程序。原创 2025-02-25 14:54:14 · 326 阅读 · 0 评论 -
OpenGL 02 --GLAD、视口、渲染循环、释放资源
可以通过调用glClear函数来清空屏幕的颜色缓冲,它接受一个缓冲位(Buffer Bit)来指定要清空的缓冲,可能的缓冲位有GL_COLOR_BUFFER_BIT,GL_DEPTH_BUFFER_BIT和GL_STENCIL_BUFFER_BIT。我们将会使用GLFW的glfwGetKey函数,它需要一个窗口以及一个按键作为输入。实际上也可以将视口的维度设置为比GLFW的维度小,这样子之后所有的OpenGL渲染将会在一个更小的窗口中显示,这样子的话我们也可以将一些其它元素显示在OpenGL视口之外。原创 2025-02-24 10:15:03 · 1007 阅读 · 0 评论 -
OpenGL 03--顶点着色器、片段着色器、元素缓冲对象
定义一个顶点着色器源字符串,它包含了一个简单的顶点着色器,用于将传入的三维顶点坐标转换成齐次坐标。这个着色器是 OpenGL 渲染管线的一部分,用于处理顶点数据并将其传递到片元着色器。原创 2025-02-25 09:43:21 · 1052 阅读 · 1 评论 -
OpenGL 01--构建GLFW、创建第一个工程、配置GLAD
一般它被认为是一个API(Application Programming Interface, 应用程序编程接口),包含了一系列可以操作图形、图像的函数。然而,OpenGL本身并不是一个API,它仅仅是一个由Khronos组织制定并维护的规范(Specification)。OpenGL规范严格规定了每个函数该如何执行,以及它们的输出值。至于内部具体每个函数是如何实现(Implement)的,将由OpenGL库的开发者自行决定(这里开发者是指编写OpenGL库的人)。原创 2025-02-21 16:56:40 · 889 阅读 · 0 评论