您的位置:首页 > 新闻 > 资讯 > 如何运营微信公众号_最新新闻热点事件2021年9月_网络推广学校_线上营销推广渠道

如何运营微信公众号_最新新闻热点事件2021年9月_网络推广学校_线上营销推广渠道

2025/6/4 14:45:28 来源:https://blog.csdn.net/m0_74236534/article/details/147355263  浏览:    关键词:如何运营微信公众号_最新新闻热点事件2021年9月_网络推广学校_线上营销推广渠道
如何运营微信公众号_最新新闻热点事件2021年9月_网络推广学校_线上营销推广渠道
GPU是什么

        (CPU)Center Processing Unit:逻辑编程

        (GPU)Graphics Processing Unit:图形处理(矩阵运算,数据公式运算,光栅化)

渲染管线

        渲染管线也称为渲染流水线,就是CPU准备一些数据,然后告诉GPU渲染出一个二维的

        图像的过程。

        渲染管道的三个阶段:应用程序阶段,几何阶段,光栅化阶段

        1.应用阶段(CPU)

                主要就是CPU将硬盘中的数据加载后,和内存进行通讯后,将需要显示的数据信息

                (顶点数据,纹理坐标,法线信息),传递GPU处理。

using System.Collections;
using System.Collections.Generic;
using UnityEngine;public class Process : MonoBehaviour
{// Start is called before the first frame updatevoid Start(){//从硬盘加载数据GameObject prefab = Resources.Load<GameObject>("Capsule");//将数据放置在内存中GameObject capsule = Instantiate<GameObject>(prefab);//物体上面,带有材质球,材质球会引用Shader着色器,因为Shader是GPU编程,所以就会将数据传递给GPU//注意:Unity采用了材质球调用Shader,所以Unity是通过材质球将数据传递给GPU的,别的引擎不一定是材质球实现}
}
          2.几何阶段(GPU)

                几何阶段最重要的工作就是“变换三维顶点坐标”,变换的工作由矩阵运算完成。

                空间

                        模型空间:3D物体的原始坐标,存储在模型中。

                        世界空间:物体放在场景中,才能构成整个游戏场景。

                        观察空间:需要以相机为原点的三维空间。

                        裁剪空间:物体是否在相机的渲染范围内。

                        屏幕空间:3D物体,投影到屏幕上。

                物体最终显示:需要GPU进行一系列的矩阵运算,将模型空间下的点,转换到屏间

                下(转换点的过程是并行)

                非模型顶点信息中记录的点,GPU会以线性插值的方式获得并提示

        3.光栅化阶段(GPU)

                使用上一个阶段(几何阶段)递过来的数据,对像素点进行染色,最终显示出来,

                染色过程为并行执行。

        着色器(Shader)是什么?

                给GPU编程的语言,代码会在GPU上并行执行(几何运算,光栅化)

        Unity的Shader类型

                固定管线Shader:很古老显卡的编程着色器,现在很少使用,画质不好

                顶点/片元Shader:通用的着色器类型(重点学习),可编程

                表面体Shader:Unity自己创建的着色器类型,基于顶点/片元着色器二次封装实

                现,降低了着色器的编写难度。

        材质球和Shader的关系

                Unity中Material用来关联游戏物体和Shader着色器,所以编写Shader前,需要先

                建立材质球

        建立Shader方法

                1.建立材质球

                2.建立Shader文件

                        (1)表面体Shader

                        (2)顶点/片元Shader

                        (3)图片效果Shader

                        (4)GPU运算Shader

        Pass通道和SubShader的区别

                Pass通道在SubShader内部,SubShader不执行,则内部的Pass通道也不会执行

                SubShader从上向下依次执行,每次只会执行一个,同一个SubShader中的Pass通

                道会依次向下执行。

        Shader的基本结构
//Shader名称与材质球的Shader列表对应
Shader "CreateTest/FixedColor"
{//Shader属性,会出现在关联材质球的选项里Properties{}//SubShader根据显卡等级只执行一个SubShader{//Pass依次向下执行Pass{}}SubShader{}//所有SubShader都执行失败,则最终执行FallBack效果//"Diffuse"是Unity的一个内置Shader效果FallBack "Diffuse"
}

        实现染色着色器效果(shader文件):

//Shader名称与材质球的Shader列表对应
Shader "CreateTest/FixedColor"
{//Shader属性,会出现在关联材质球的选项里Properties{//用于在材质球上面配置的颜色//属性名"_Color()"//参数1:材质面板上显示的名称//参数2:属性的类型Color//等号右边:当前属性的默认值_Color("颜色",Color)=(1,1,1,1)}//SubShader根据显卡等级只执行一个SubShader{Pass{//使用固定管线着色器染色//Color[]是固定管线着色器的染色命令Color[_Color]}}//所有SubShader都执行失败,则最终执行FallBack效果//"Diffuse"是Unity的一个内置Shader效果FallBack "Diffuse"
}

                

该系列专栏为网课课程笔记,仅用于学习参考。       

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com