当前位置:网站首页>[TA frost wolf _may - "hundred people plan"] 1.4 introduction to PC mobile phone graphics API
[TA frost wolf _may - "hundred people plan"] 1.4 introduction to PC mobile phone graphics API
2022-07-01 03:42:00 【zczplus】
【TA- Frost Wolf _may-《 Hundred people plan 》】1.4 PC Mobile phone graphics API Introduce
1.4.1 Basic concepts
- Application end : The program itself , be relative to opengl es, Our own program belongs to the application side
- Primitives : Geometry to render , Or shape . Any square or straight line is an element .
- texture : Let's understand it , It can be understood as a picture , stay opengl es Texture is another name for a picture .
- Striatin : The basic unit of texture
- Vertex array : Vertex refers to the coordinate data of each vertex of an entity ( stay 3D In Cartesian coordinates, i.e x,y,z coordinate ), These coordinate data can be stored together in a memory array , This array is called the vertex array .
- Vertex buffer : Allocate a special area in the video memory to store the vertex array , This memory area is called the vertex buffer .
1.4.2 DirectX, OpenGL, OpenGL ES
Khronos Defined OpenGL, Microsoft defines DirectX
- Mobile terminal :ios and android All support OpenGL ES;
- The computer :Windows System support DirectX and OpenGL, Linux/Mac System support OpenGL.
Khronos Open Standards for Graphics and Compute
- 1990’s OpenGL
- 2000’s OpenGL|ES
- 2005 OpenGL|SC
- 2008 OpenCL
- 2014 SPIR
- 2015 Vulkan
OpenGL ES
OpenGL ES 1.x Series of fixed function pipelines
OpenGL ES 2.0、3.0 Are programmable graphics pipelines .
Developers can write their own code for vertex shaders and fragment shaders in the graphics pipeline .
Rendering flow diagram :
Difference
- Compatibility
3.0 Backwards compatible 2.0; - New characteristics
Shadow mapping 、 Volume rendering 、 be based on GPU Particle animation 、 Geometry instantiation 、 The important functions of texture compression and gamma correction are 2.0 Not available in .3.0 Introduce the above functions and continue to adapt to the limitations of the embedded system . - Render pipeline
3.0 Removed from Alpha Testing and logical operation ,Alpha Testing can be done in the clip shader , Logical operations are rarely used . - Shader scripting
(1) Version statement
Must be used in shader scripts #version 300 es Declare as specified to use OpenGL ES 3.0 edition . Instead of adding a version statement or using #version 100 es The declared version specifies that OpenGL ES 2.0.
(2) Input and output
3.0 Added in,out,inout keyword , To replace attribute and varying keyword .
At the same time to delete gl_FragColor and gl_FragData 了 , Clip shaders can use out Declare field output .
(3) Variable assignment
3.0 You can use it directly layout Assign a value to the variable at the specified position .
1.4.3 OpenGL ES 3.0 new function
I still can't understand , There's an impression , Come back and watch it later .
texture
Shaders
Geometry
Buffer object
Framebuffer
1.4.4 Xiao dragon Adreno Corresponding ES Version, model
Adreno Developed by Qualcomm SIP nucleus GPU And used in their own SoC, The core originally served as BitBoys be engaged in GPU Development work .
2006 year ,BitBoys By ATI Acquisition and opening Imageon product line . Same year AMD Acquisition ATI.2009 year 1 month ,AMD sell Imageon To Qualcomm , And then Imageon Renamed Adreno.
In recent years, Xiaolong's high-end processor version corresponds to Adreno
Xiao dragon 835——Adreno540
Xiao dragon 845——Adreno630
Xiao dragon 850——Adreno630
Xiao dragon 855——Adreno640
Various versions Adreno Corresponding OpenGL ES edition
Adreno130——OpenGL ES 1.1
Adreno200-225——OpenGL ES 2.0
Adreno302-330——OpenGL ES 3.0
Adreno405、418——OpenGL ES 3.1
Adreno420、430——OpenGL ES 3.2
Adreno505、506、508——OpenGL ES 3.2
That is to say, Xiaolong 8 More than one generation of CPU Have wisdom teeth OpenGL ES 3.2 了 .
Vulkan
A new generation API, Also by Khronos The company takes the lead in developing , Designed to be the next generation OpenGL.Vulkan Be able to make better use of CPU Multithreading capabilities of , And through exposure GPU Methods of underlying functions , Provides a large number of control means . Coupled with highly predictable behavior, the graphics effect is better . But for GPU High load of existing programs , If you want to pass OpenGL to turn to Vulkan It is impossible to achieve performance improvement . The focus is on CPU The optimization of the .
边栏推荐
- The preorder traversal of leetcode 144 binary tree and the expansion of leetcode 114 binary tree into a linked list
- 5. [WebGIS practice] software operation - service release and permission management
- 【TA-霜狼_may-《百人计划》】2.4 传统经验光照模型
- Binary tree god level traversal: Morris traversal
- ECMAScript 6.0
- Feature Pyramid Networks for Object Detection论文理解
- 访问阿里云存储的图片URL实现在网页直接预览略缩图而不直接下载
- [reach out to Party welfare] developer reload system sequence
- How to use hybrid format to output ISO files? isohybrid:command not found
- Listener listener
猜你喜欢
随机推荐
IPv4和IPv6、局域网和广域网、网关、公网IP和私有IP、IP地址、子网掩码、网段、网络号、主机号、网络地址、主机地址以及ip段/数字-如192.168.0.1/24是什么意思?
Asgnet paper and code interpretation 2
[daily training] 1175 Prime permutation
pytorch中的双线性插值上采样(Bilinear Upsampling)、F.upsample_bilinear
torch. histc
静态库使用MFC和共享库使用MFC的区别
Error: plug ins declaring extensions or extension points must set the singleton directive to true
【EI会议】2022年第三届纳米材料与纳米技术国际会议(NanoMT 2022)
Ridge regression and lasso regression
205. 同构字符串
ASGNet论文和代码解读2
RSN:Learning to Exploit Long-term Relational Dependencies in Knowledge Graphs
二叉树神级遍历:Morris遍历
208. 实现 Trie (前缀树)
Appium自动化测试基础 — APPium基本原理
【TA-霜狼_may-《百人计划》】2.1 色彩空间
C语言的sem_t变量类型
The method to measure the similarity of two vectors: cosine similarity, pytorch calculate cosine similarity: torch nn. CosineSimilarity(dim=1, eps=1e-08)
RSN:Learning to Exploit Long-term Relational Dependencies in Knowledge Graphs
Edge drawing: a combined real-time edge and segment detector