当前位置:网站首页>Triangular rasterization
Triangular rasterization
2022-07-03 04:30:00 【Big 1234 grass】
List of articles
The following sources :GAMES101- Introduction to modern computer graphics - Yan Lingqi ---- Draw graphic information on the display device .
Matrix transformation from regular cube to screen
Before , We use perspective projection , Put a platform ( Field of vision ) Project to the center of the origin , Side length is 2 The cube of ( Regular cube ) in : The camera changes AND Orthographic projection AND Perspective projection
Let's go on , How to display it on the screen ?
Let's first look at the regular cube -z The direction of the x-y Plane , Change the same size as the screen through the matrix (width Is the width of the screen ,height For the height of the screen ).
M v i e w p o r t = ( w i d t h 2 0 0 w i d t h 2 0 h e i g h t 2 0 h e i g h t 2 0 0 1 0 0 0 0 1 ) M_{viewport} = \begin{pmatrix} \frac{width}{2}&0&0&\frac{width}{2} \\ 0&\frac{height}{2}&0&\frac{height}{2} \\ 0&0&1&0 \\ 0&0&0&1 \end{pmatrix} Mviewport=⎝⎜⎜⎛2width00002height0000102width2height01⎠⎟⎟⎞
z The coordinates remain the same , As depth information . How to deal with in-depth information —— To ensure that the objects in front can block the objects behind , I don't know for the time being .
Rasterize
Computer Graphics, abbreviation CG . The input is the description of the virtual scene , Usually an array of polygons , Each polygon consists of three vertices , Each vertex includes three-dimensional coordinates 、 UVW Map 、rgb Color, etc. . The output is an image , That is, a two-dimensional pixel array .Computer Graphics Our ultimate goal is to create unreal visual perception , The key word is “ unreal ” and “ create ”, Such as 3D Special effects ;
Computer Vision, abbreviation CV. The input is an image or image sequence , Usually from the camera 、 Camera or video file . The output is the understanding of the real world corresponding to the image sequence , Such as face detection 、 License plate recognition .Computer Vision Our ultimate goal is to imitate the human eye and brain's understanding of the real things we see , The key word is “ real ” and “ understand ”, Such as face recognition ;
An image can be seen as consisting of many triangles , Each vertex of the triangle contains position information (x-y-z) And color information (red-green-blue).
How do these points form disjoint triangles , I don't know for the time being .
The reason for using triangles as basic geometry : Triangles are the most basic shape elements , Other shapes can consist of triangles ; You can judge whether a point is inside the triangle , Enter as shown below ,AB and AP Cross product direction of == BC and BP Cross product direction of == CA and CP Cross product direction of .
Next , We consider drawing a triangle on the screen . When all triangles are drawn completely , That is to get a complete graph .
The intuitive approach is , Traverse the pixels in the range . When the pixel appears in the triangle , Namely coloring .
Anti aliasing
Self reference video :Antialiasing
During my undergraduate course, I took 《 Signals and systems 》, But I forgot all about it . The general logic in the video may be , In sampling ( Traverse whether the pixels are in the triangle ) front , Blur first . Blur processing is to pass the picture through a low-pass filter , Remove the high-frequency part , To reduce the overlap of frequency domain in the sampling process , So as to achieve the purpose of anti aliasing .
Implementation of low-pass filter , Is the average adjacent pixels .
MSAA The method is , Divide a pixel into smaller parts .
边栏推荐
- Basic use of continuous integration server Jenkins
- Dismantle a 100000 yuan BYD "Yuan". Come and see what components are in it.
- Arthas watch grabs a field / attribute of the input parameter
- [Thesis Writing] how to write the overall design of JSP tourism network
- 金仓数据库KingbaseES 插件kdb_date_function
- Which Bluetooth headset is good about 400? Four Bluetooth headsets with strong noise reduction are recommended
- x Problem B
- Jincang KFS data bidirectional synchronization scenario deployment
- Pyqt control part (II)
- 智能合约安全审计公司选型分析和审计报告资源下载---国内篇
猜你喜欢
Preliminary cognition of C language pointer
540. Single element in ordered array
Arthas watch grabs a field / attribute of the input parameter
Use the benchmarksql tool to perform a data prompt on kingbases. The jdbc driver cannot be found
X-ray normal based contour rendering
FuncS sh file not found when using the benchmarksql tool to test kingbases
Which Bluetooth headset is cost-effective? Four Bluetooth headsets with high cost performance are recommended
2022 registration examination for safety production management personnel of hazardous chemical production units and examination skills for safety production management personnel of hazardous chemical
C language series - Section 3 - functions
Two drawing interfaces - 1 Matlab style interface
随机推荐
Human resource management system based on JSP
P35-P41 fourth_ context
[set theory] set concept and relationship (set family | set family examples | multiple sets)
2022 registration of G2 utility boiler stoker examination and G2 utility boiler stoker reexamination examination
Small program animation realizes the running lantern and animation object
[set theory] binary relation (example of binary relation on a | binary relation on a)
Dive Into Deep Learning——2.1数据操作&&练习
Solve BP Chinese garbled code
Smart contract security audit company selection analysis and audit report resources download - domestic article
Priv-app permission异常
解决bp中文乱码
Know that Chuangyu cloud monitoring - scanv Max update: Ecology OA unauthorized server request forgery and other two vulnerabilities can be detected
Five elements of user experience
会员积分商城系统的功能介绍
[set theory] Cartesian product (concept of Cartesian product | examples of Cartesian product | properties of Cartesian product | non commutativity | non associativity | distribution law | ordered pair
Auman Galaxy new year of the tiger appreciation meeting was held in Beijing - won the double certification of "intelligent safety" and "efficient performance" of China Automotive Research Institute
金仓数据库KingbaseES 插件kdb_database_link
Why should programmers learn microservice architecture if they want to enter a large factory?
[set theory] binary relationship (special relationship type | empty relationship | identity relationship | global relationship | divisive relationship | size relationship)
Function introduction of member points mall system