OpenGL学习总结-基本渲染流程(四)

(未完待续)

接着上章节,本章节以实际代码介绍OPenGL渲染管线各环节的效果和作用。

        以下是管线渲染的主要着色器阶段,以及每个阶段的功能和示例:

1. 顶点着色器(Vertex Shader)

功能

  • 处理每个输入的顶点。
  • 进行顶点变换,如从模型空间到裁剪空间的变换(比如视图变换、投影变换)。
  • 计算顶点相关属性(如法线、纹理坐标等),将数据传递到后续阶段。

示例

#version 460 core
layout(location = 0) in vec3 inPosition;
layout(location = 1) in vec3 inNormal;

uniform mat4 model;
uniform mat4 view;
uniform mat4 projection;

out vec3 fragNormal;

void main() {
    fragNormal = mat3(transpose(inverse(model))) * inNormal; // 法线变换
    gl_Position = projection * view * model * vec4(inPosition, 1.0); // 变换到裁剪空间
}

2. 细分控制着色器(Tessellation Control Shader, TCS)

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值