图形学基础知识

简介:

本篇主要给大家介绍图形学基础知识,了解Unity图像渲染机制,以及图像渲染管线流程。

主要是因为伴随着VR/AR的飞速发展,为了满足VR高清高帧率的极限渲染,着色器编程(Shader)也成为了Unity程序开发人员的必备知识。

首先,给大家介绍一下Unity图像渲染机制
在Unity引擎中,任何图像渲染都需要一个很重要的文件属性——Material(材质球),在MeshRenderer、LineRenderer、UI渲染、拖尾渲染都可以见到它的影子。因此,我们可以将Material理解为Unity中图像渲染的工具,而Shader(着色器)即可以理解为Material这个工具的加工厂,Shader(加工厂)定义了Material渲染的解决方案,定义了Material渲染所需要的原材料,而此时所讲的原材料,即Shader中的属性(数值,颜色,纹理,贴图等等)。

wKiom1neK2KCGnOiAACqXHFx3VM824.png-wh_50

渲染绘图管线
了解了Unity图像渲染机制,下面我来介绍渲染绘图管线。那么何为渲染绘图管线呢?渲染管线也称为渲染流水线,是显示芯片内部处理图形信号相互独立的并行处理单元。在Unity中,即将3D场景模型绘制成屏幕2D图片的过程。

wKioL1ndvFTzP_MpAADtkCt3kCU652.png-wh_50

下面我们详细讲解图像渲染流水线中各个模块的详细操作步骤:

第一个步骤——顶点处理
1.
当模型制作完成后,模型只有一个自身中心以及自身的前后左右上下方位,我们称之为本地坐标系。当模型置入3D场景中,每个顶点都拥有了一个世界坐标,因此顶点处理第一步是从本地坐标到世坐标的过程。2.有了世界坐标后,模型在不同角度观察,所看到的画面是不同的,因此下一个步骤是从世界坐标系到观察坐标系的过程。3.观察坐标系还是一个3D视角,但我们所看到的画面其实是一个2D的平面,只是有了阴影,有了光照,有了3D模型的角度渲染,我们看起来比较又3D点感觉。最后一个步骤,即观察坐标系(3D)到投影坐标系(2D)到过程。

第二个步骤——面处理
1.刚刚操作已经获取到了2D平面上每个顶点的坐标,下面面处理第一个步骤即将所有顶点连线,组装成面。

2.当然面组装成型后,会有我们看不到的地方不需要渲染,因此要将看得到的面截取,将看不到的面剔除,因此有了面截取和面剔除步骤。

第三个步骤——光栅化
光栅化是渲染管线流程中重要的一步,即将面渲染所需要的像素数量,位置等信息计算出来,也可以理解为是将面拆分成一个个的像素的过程。

第四个个步骤——像素处理(像素着色)
最后一步,即给每个像素着色,形成我们想要看到的画面。



本文转自 宁金峰 51CTO博客,原文链接:http://blog.51cto.com/13243523/1971434,如需转载请自行联系原作者

相关文章
|
存储 Dart Java
Dart 虚拟机运行原理
【10月更文挑战第20天】Dart 虚拟机通过一系列复杂的机制和操作,确保 Dart 代码能够准确、高效地执行。它为 Dart 语言的广泛应用提供了坚实的基础和可靠的运行环境
468 6
|
存储 缓存 安全
Java内存模型详解
该文章主要介绍了Java内存模型的相关概念和技术细节,包括Java内存模型的定义、缓存一致性策略、内存交互操作、内存屏障等。
《QT从基础到进阶·十三》QPixmap、QImage的缩放——
《QT从基础到进阶·十三》QPixmap、QImage的缩放——
1000 0
|
存储 缓存 前端开发
【JVM源码解析】模板解释器解释执行Java字节码指令(下)
【JVM源码解析】模板解释器解释执行Java字节码指令(下)
【JVM源码解析】模板解释器解释执行Java字节码指令(下)
|
存储 缓存 前端开发
【JVM源码解析】模板解释器解释执行Java字节码指令(上)
【JVM源码解析】模板解释器解释执行Java字节码指令(上)
【JVM源码解析】模板解释器解释执行Java字节码指令(上)
|
11小时前
|
人工智能 自然语言处理 文字识别
阿里云百炼Qwen3.7-Max简介:能力、优势、支持订阅计划参考
Qwen3.7-Max是阿里云百炼面向智能体时代推出的新一代旗舰模型,对标GPT-5.5、Claude Opus 4.7等闭源旗舰。该模型支持百万级token上下文窗口,具备顶级推理能力、多模态搜索与视觉理解增强、流式输出低延迟响应等核心优势,覆盖编程、办公、长周期自主执行等复杂场景。同时支持OpenAI接口兼容,便于系统快速迁移。用户可通过Token Plan团队或节省计划等订阅方式灵活调用,适合企业级高要求场景使用。
7271 31
阿里云百炼Qwen3.7-Max简介:能力、优势、支持订阅计划参考
|
11小时前
|
数据采集 人工智能 前端开发
让 Coding Agent 从黑盒到透明:阿里云 Agent 观测审计数据采集实践
AI Agent 规模化落地带来执行黑盒、行为难追溯、成本难度量三大难题。阿里云基于 OTel 标准,面向 Coding Agent、个人通用助理和框架型 Agent,推出 LoongSuite Pilot、插件及探针等无侵入采集方案,让 Agent 实现可看见、可分析、可审计、可治理。
636 141
|
11小时前
|
人工智能 缓存 自然语言处理
阿里Qwen3.7-Max评测:Agent能力显著提升,耗时与调用成本大幅下降
阿里云百炼推出面向智能体的旗舰大模型Qwen3.7-Max,具备长周期自主执行能力,显著提升编程、办公自动化等复杂任务处理水平;支持MCP集成与多框架兼容,并以限时5折+100万Tokens免费试用大幅降低使用门槛,助力企业高效落地AI应用。在阿里云百炼平台快速体验:https://t.aliyun.com/U/fPVHqY
|
11小时前
|
人工智能 安全 定位技术
CodeGraph深度解析 让Claude Code工具调用直降七成的核心原理与实操教程
如今以Claude Code为代表的AI编程智能体已经成为开发者日常编码、项目重构、漏洞修复的必备工具。但在长期使用过程中,几乎所有开发者都会遇到同一个明显痛点:AI虽然具备强大的代码生成与分析能力,却常常陷入盲目探索的循环中。
1238 2
|
11小时前
|
人工智能 弹性计算 运维
阿里云发布堡垒机智能运维Agent,运维交互进入自然语言新时代
支持自然语言运维,提升效率与安全双保障。
1163 1