当前位置:网站首页>【我的OpenGL学习进阶之旅】OpenGL的坐标系的学习笔记
【我的OpenGL学习进阶之旅】OpenGL的坐标系的学习笔记
2022-06-24 15:32:00 【字节卷动】
在学习OpenGL的时候,肯定是要学习坐标变化的,但是实际上我学的不扎实,很多时候感觉很懵逼,今天重新学习一下OpenGL的坐标系,收集下网上的资料整理下这篇笔记。
一、OpenGL 坐标变化
OpenGL最终将图形渲染到的设备屏幕本质上是2D的,我们对图形进行渲染的过程就是将3D场景转换为最终的2D场景的过程。
OpenGl中定义的点从用户构造模型的局部坐标系,经过模型变换转为世界坐标系,再经过视变换转换为相机坐标系,再经过投影变换转换为裁剪坐标系,再进行透视除法转换为规范化设备坐标系(NDC),最后经过视口变换映射到屏幕坐标系。
坐标变换流程如下图所示:
上图描绘了物体从局部对象坐标系统到屏幕坐标系转换的详细流程, 列举一下OpenGL中的坐标系。
- World Coordinates(世界坐标系)
- Object Coordinates(对象坐标系、模型坐标系、局部坐标系或当前绘图坐标系)
- Eye Coordinates(眼坐标系或照相机坐标系)
- Clip Coordinates(裁剪坐标系)
- Normalized Device Coordinates (NDC) (归一化设备坐标系)
- Window Coordinates (Scr
边栏推荐
- R language plot visualization: use plot to visualize the training set and test set after data division, use different shape label representation, training set, test set, and display training and test
- Kubernetes practical tips: using ksniff to capture packets
- Redis highly available
- One article to get UDP and TCP high-frequency interview questions!
- Actual combat | a tortuous fishing counteraction
- How to optimize performance
- How to evaluate domestic reporting tools and Bi software
- Keyword of ES mapping; Term query add keyword query; Change mapping keyword type
- Istio practical skill: enable accesslog locally
- Data sharing between laravel lower views
猜你喜欢

Successfully solved: selenium common. exceptions. SessionNotCreatedException: Message: session not created: This versi
An accident caused by a MySQL misoperation, and the "high availability" cannot withstand it!

Multimeter resistance measurement diagram and precautions

A brief introduction to the lexical analysis of PostgreSQL
Record the range of data that MySQL update will lock

Two way combination of business and technology to build a bank data security management system

Port conflict handling method for tongweb

API data interface for announcement of Hong Kong listed companies

Brief discussion on the implementation framework of enterprise power Bi CI /cd

同样是初级测试工程师,为啥他薪资高?会这几点面试必定出彩
随机推荐
Bert-whitening 向量降维及使用
阿里OSS对象存储服务
Sequential representation and implementation of linear table (refer to YanWeiMin version)
How do individuals open accounts for stock speculation? Is it safe to open accounts for stock speculation
Analysis of similarities and differences between redis and memcached in cache use
Left hand code, right hand open source, part of the open source road
Is it safe to open an account for stock speculation in the top ten securities app rankings in China
Step by step introduction to sqlsugar based development framework (9) -- Realizing field permission control with WinForm control
openinstall携手书链:助力渠道数据分析,共创书联网时代
Unimelb COMP20008 Note 2019 SM1 - Data formats
How to modify the login user name of easynvr video monitoring system?
Chapter 8 operation bit and bit string (4)
Record the range of data that MySQL update will lock
Application of motion capture system in positioning and mapping of mobile robot in underground tunnel
This website teaches you to imitate more than 100 well-known websites!
Go language -init() function - package initialization
常见的缺陷管理工具——禅道,从安装到使用手把手教会你
June training (day 24) - segment tree
证券账户理财安全吗??
In 2021, big companies often ask IOS interview questions -- runloop