当前位置:网站首页>OpeGL personal notes - lights
OpeGL personal notes - lights
2022-07-07 22:09:00 【qq_ fifty-seven million two hundred and fifty-one thousand thre】
#version 330 core
layout (location = 0) in vec3 aPos;
layout (location = 1) in vec3 aNormal;
layout (location = 2) in vec2 aTexCoords;out vec3 FragPos;
out vec3 Normal;
out vec2 TexCoords;uniform mat4 model;
uniform mat4 view;
uniform mat4 projection;void main()
{
FragPos = vec3(model * vec4(aPos, 1.0));
Normal = mat3(transpose(inverse(model))) * aNormal;
TexCoords = aTexCoords;
gl_Position = projection * view * vec4(FragPos, 1.0);
}
#version 330 core
out vec4 FragColor;struct Material {
sampler2D diffuse;
sampler2D specular;
sampler2D face;
float shininess;
};struct DirLight {
vec3 direction;vec3 ambient;
vec3
边栏推荐
- Leetcode SQL first day
- What if the win11u disk does not display? Solution to failure of win11 plug-in USB flash disk
- operator
- [open source] Net ORM accessing Firebird database
- Talk about relational database and serverless
- Reinforcement learning - learning notes 8 | Q-learning
- 【Azure微服务 Service Fabric 】如何转移Service Fabric集群中的种子节点(Seed Node)
- Embedded development: how to choose the right RTOS for the project?
- [azure microservice service fabric] the service fabric cluster hangs up because the certificate expires (the upgrade cannot be completed, and the node is unavailable)
- How much does it cost to develop a small program mall?
猜你喜欢

【Azure微服务 Service Fabric 】如何转移Service Fabric集群中的种子节点(Seed Node)

Build your own website (18)

TCP/IP 协议栈

Cv2.resize function reports an error: error: (-215:assertion failed) func= 0 in function ‘cv::hal::resize‘

What if the win11u disk does not display? Solution to failure of win11 plug-in USB flash disk

使用 CustomPaint 绘制基本图形
![Jerry's about TWS channel configuration [chapter]](/img/94/fde5054fc412b786cd9864215e912c.png)
Jerry's about TWS channel configuration [chapter]

Win11游戏模式怎么开启?Win11开启游戏模式的方法

你可曾迷茫?曾经的测试/开发程序员,懵懂的小菜C鸟升级......

Virtual machine network configuration in VMWare
随机推荐
Which futures company is the safest to open a futures account?
EasyCVR配置中心录像计划页面调整分辨率时的显示优化
QT compile IOT management platform 39 alarm linkage
Typescript TS basic knowledge type declaration
Application practice | the efficiency of the data warehouse system has been comprehensively improved! Data warehouse construction based on Apache Doris in Tongcheng digital Department
[开源] .Net ORM 访问 Firebird 数据库
应用实践 | 数仓体系效率全面提升!同程数科基于 Apache Doris 的数据仓库建设
null == undefined
Backup tidb cluster to persistent volume
Tsconfig of typescript TS basics JSON configuration options
Where is the big data open source project, one-stop fully automated full life cycle operation and maintenance steward Chengying (background)?
Restapi version control strategy [eolink translation]
The maximum number of meetings you can attend [greedy + priority queue]
Leetcode SQL first day
Lingyun going to sea | saihe & Huawei cloud: jointly help the sustainable development of cross-border e-commerce industry
Magic weapon - sensitive file discovery tool
Use camunda to do workflow design and reject operations
Two kinds of updates lost and Solutions
SAR影像质量评估
你可曾迷茫?曾经的测试/开发程序员,懵懂的小菜C鸟升级......