【Unity】入门学习笔记180702——Unity Shader入门(1-1)——渲染流水线

本文全面介绍了Unity Shader的基础知识,包括渲染流水线的各个阶段及其工作原理,以及如何利用Shader实现从基础到高级的各种视觉效果。

1、入门概述

Shader是整个渲染流程中的一个子部分,需要了解整个渲染流程是如何进行的。

Shader更多地是面向GPU的工作方式,所以它的一些语法对我们来说并不那么直观。

#基础篇

1-1    渲染流水线

1-2    Unity Shader基础

1-3    数学基础


#初级篇

2-1    开始Unity Shader

2-2    Unity中的基础光照

2-3    基础纹理

2-4    透明效果


#中级篇

3-1    更复杂的光照:光照衰减、阴影计算等

3-2    高级纹理

3-3    让画面动起来:纹理动画、顶点动画


#高级篇

4-1    屏幕后处理效果:高斯模糊、边缘检测

4-2    使用深度和法线纹理

4-3    非真实感渲染:卡通渲染、素描风格扽

4-4    使用噪声

4-5    Unity中的渲染优化技术


#扩展篇

5-1    Unity的表面着色器探秘

5-2    基于物理渲染

5-3    图形学


2、渲染流水线

    渲染流水线的最终目的在于生成或者说是渲染一张二维纹理,即屏幕效果,它的输入是一个虚拟摄像机、一些光源、一些Shader以及纹理等。

    渲染流程分成三个阶段——应用阶段(输出渲染图元)、几何阶段(输出屏幕空间的顶点信息)、光栅化阶段

    #应用阶段:

        准备好场景数据、粗粒度剔除工作、设置好每个模型的渲染状态

        这一阶段最重要的是输出渲染所选的几何信息,即渲染图元,可以是点、线、三角面等。

        该阶段由开发者决定的。

    #几何阶段:

        负责对每个渲染图元进行逐顶点、逐多边形的操作,通常在GPU上进行。

        重要任务是把顶点坐标变换到屏幕空间中,再交给光栅器进行处理。

        这一阶段将会输出屏幕空间的二维顶点坐标、每个顶点对应的深度值、着色等相关信息,并传递给下一个阶段

    #光栅化阶段

        光栅化的任务主要是决定每个渲染图元中的哪些像素应该被绘制在屏幕上。

        它需要对上一个阶段得到的逐顶点数据(纹理坐标、顶点颜色等)进行插值,然后在进行逐像素处理。


3、CPU和GPU通信——硬件实现流水线

    #渲染流水线起点在CPU,即应用阶段:

    (1)把数据加载到显存中

    (2)设置渲染状态

    (3)调用Draw Call(CPU发给GPU的渲染命令,需要被渲染的图元列表)

    #GPU流水线

    流程:顶点数据——(顶点着色器-曲面细分着色器-几何着色器-裁剪-屏幕映射)——(三角形设置-三角形遍历-片元着色器-逐片元操作)——屏幕图像

    顶点着色器:实现顶点的空间变换、顶点着色等功能

    曲面细分着色器:细分图元

    几何着色器:执行逐图元的作色操作。或者用于产生更多的图元

    片元着色器:实现逐片元的着色操作

    逐片元操作:例如修改颜色、深度缓冲、进行混合等,不可编程,但具有很高的可配置性。


4、专业术语

    #OpenGL和DirectX

        图像应用编程接口,渲染二维三维图像,搭建上层应用程序与GPU的沟通桥梁。

        一个应用程序向这些接口发送渲染命令,这些接口依次向显卡驱动发送渲染命令,显卡驱动是真正和GPU通信的角色

    #HLSL、GLSL、Cg

        着色语言是专门用于编写着色器的,常见的着色器语言有DirectX的HLSL、OpenGL的GLSL以及NVIDIA的Cg

    #固定管线渲染

        固定函数的流水线,也简称为固定管线,通常是指在较旧的GPU上实现的渲染流水线。

        比较形象的比喻是使用固定管线进行渲染时,像控制电路上的多个开关,我们可以选择或关闭一个开关,但永远无法控制整个电路的排布。

        如果不是为了对较旧设备进行兼容,不建议继续使用固定管线的渲染方式。

    

内容概要:本文设计了一种基于PLC的全自动洗衣机控制系统内容概要:本文设计了一种,采用三菱FX基于PLC的全自动洗衣机控制系统,采用3U-32MT型PLC作为三菱FX3U核心控制器,替代传统继-32MT电器控制方式,提升了型PLC作为系统的稳定性与自动化核心控制器,替代水平。系统具备传统继电器控制方式高/低水,实现洗衣机工作位选择、柔和过程的自动化控制/标准洗衣模式切换。系统具备高、暂停加衣、低水位选择、手动脱水及和柔和、标准两种蜂鸣提示等功能洗衣模式,支持,通过GX Works2软件编写梯形图程序,实现进洗衣过程中暂停添加水、洗涤、排水衣物,并增加了手动脱水功能和、脱水等工序蜂鸣器提示的自动循环控制功能,提升了使用的,并引入MCGS组便捷性与灵活性态软件实现人机交互界面监控。控制系统通过GX。硬件设计包括 Works2软件进行主电路、PLC接梯形图编程线与关键元,完成了启动、进水器件选型,软件、正反转洗涤部分完成I/O分配、排水、脱、逻辑流程规划水等工序的逻辑及各功能模块梯设计,并实现了大形图编程。循环与小循环的嵌; 适合人群:自动化套控制流程。此外、电气工程及相关,还利用MCGS组态软件构建专业本科学生,具备PL了人机交互C基础知识和梯界面,实现对洗衣机形图编程能力的运行状态的监控与操作。整体设计涵盖了初级工程技术人员。硬件选型、; 使用场景及目标:I/O分配、电路接线、程序逻辑设计及组①掌握PLC在态监控等多个方面家电自动化控制中的应用方法;②学习,体现了PLC在工业自动化控制中的高效全自动洗衣机控制系统的性与可靠性。;软硬件设计流程 适合人群:电气;③实践工程、自动化及相关MCGS组态软件与PLC的专业的本科生、初级通信与联调工程技术人员以及从事;④完成PLC控制系统开发毕业设计或工业的学习者;具备控制类项目开发参考一定PLC基础知识。; 阅读和梯形图建议:建议结合三菱编程能力的人员GX Works2仿真更为适宜。; 使用场景及目标:①应用于环境与MCGS组态平台进行程序高校毕业设计或调试与运行验证课程项目,帮助学生掌握PLC控制系统的设计,重点关注I/O分配逻辑、梯形图与实现方法;②为工业自动化领域互锁机制及循环控制结构的设计中类似家电控制系统的开发提供参考方案;③思路,深入理解PL通过实际案例理解C在实际工程项目PLC在电机中的应用全过程。控制、时间循环、互锁保护、手动干预等方面的应用逻辑。; 阅读建议:建议结合三菱GX Works2编程软件和MCGS组态软件同步实践,重点理解梯形图程序中各环节的时序逻辑与互锁机制,关注I/O分配与硬件接线的对应关系,并尝试在仿真环境中调试程序以加深对全自动洗衣机控制流程的理解。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值