Shader中的一些专业用语的解释

2023-11-11

Shader中的一些专业用语的解释

此文章收录于我主页顶置的:Unity Shader入门精要文章目录,点击即可跳转。

一、什么是OPenGL/DirectX?
简单的来说,就是图像应用编程的接口,这些接口用语渲染二维和三维的图形,架起了上层应用程序和底层GPU之间的桥梁。
在这里插入图片描述
二、什么是HLSL、GLSL、Cg?
简单的来说,就是编写Shader的一些高级着色语言

三、什么是Draw Call?
本身的含义就是CPU调用图像编程接口,命令GPU进行渲染操作,Draw Call中造成性能问题的元凶是CPU,因为GPU的渲染速度往往快于CPU提交命令的速度
(1)CPU与GPU是如何实现并行工作的?
使用命令缓冲区,由CPU添加命令,GPU读取命令,两个过程相互独立。
在这里插入图片描述
(2)为什么Draw Call多了会影响帧率?
我们先来做一一 个实验:请创建10 000个小文件,每个文件的大小为1KB,然后把它们从一个文件夹复制到另一个文件夹。你会发现,尽管这些文件的空间总和不超过10MB,但要花费很长时间。现在,我们再来创建一个单独的文件,它的大小是10MB, 然后也把它从一个文件夹复制到另一个文件夹。而这次复制的时间却少很多!这是为什么呢?明明它们所包含的内容大小是一样的。原因在于,每一个复制动作需要很多额外的操作,例如分配内存、创建各种元数据等。如你所见,这些操作将造成很多额外的性能开销,如果我们复制了很多小文件,那么这个开销将会很大。
在这里插入图片描述
四、如何减少Draw Call?
使用批处理的方法,吧很多小的Draw Call合并成一个大的Draw Call进行处理。
在这里插入图片描述
游戏开发过程中,为了减少Draw Call的开销,有两点需要注意。
(1)避免使用大量很小的网格。当不可避免地需要使用很小的网格结构时,考虑是否可以合并它们。
(2)避免使用过多的材质。尽量在不同的网格之间共用同一个材质。

五、什么是固定管线渲染?
固定函数的流水线(Fixed-Function Pipeline),也简称为固定管线,通常是指在较旧的GPU上实现的渲染流水线。这种流水线只给开发者提供一些配置操作, 但开发者没有对流水线阶段的完全控制权。

固定管线通常提供了一系列接口,这些接口包含了一个函数入口点(Function Entry Points)集合,这些函数入口点会匹配GPU上的一个特定的逻辑功能。开发者们通过这些接口来控制渲染流水线。换句话说,固定渲染管线是只可配置的管线。一 个形象的比喻是, 我们在使用固定管线进行渲染时,就好像在控制电路上的多个开关,我们可以选择打开或者关闭一个开关,但永远无法控制整个电路的排布。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Shader中的一些专业用语的解释 的相关文章

  • unity 渲染流水线

    渲染流水线 主要分为应用阶段 几何阶段 光栅化阶段 应用阶段 这一阶段最重要的输出是渲染所需的几何信息 即渲染图元 几何阶段 重要任务就是把顶点坐标变换到屏幕空间 通过对输入的渲染图元进行多次处理后 输出屏幕空间的二维顶点坐标 每个顶点对应
  • Unity Shader数学基础——矩阵

    矩阵的定义 由m n个数a 排成的m行n列的数表称为m行n列的矩阵 简称m n矩阵 记作 这m n个数称为矩阵A的元素 简称为元 数a位于矩阵A的第i行第j列 称为矩阵A的 i j 元 以数a为 i j 元的矩阵可记为 a 或 a m n
  • Unity UGUI 添加 Material(材质)

    在给 UGUI 添加 Material 时 如果 Material 中的 Shader 不做特殊处理的话 那么此组件将会变成纯黑色 如果需要添加 Material 则需要在 Shader 中做 UGUI 专门的处理 Properties U
  • Unity Shader 学习 004-Shader 调试 平台差异性 第三方调试工具

    文章目录 学习时间 学习产出 1 调试Shader 1 1 我们打开FrameDebug窗口 1 2 通过FrameDebug窗口查看我们shader渲染目标的状态 2 平台差异性 2 1 抗锯齿 2 2 DX平台定义变量更严格 3 第三方
  • 3.Unity Shader 基础

    目录 一对好兄弟 材质和Unity Shader Unity中shader ShaerLab Unity Shader 的结构 1 创建 2 Properties 3 SubShader 状态设置 RenderSetup SubShader
  • unity渲染队列render quaue

    本文转载自http blog csdn net candycat1992 article details 37345251 本系列主要参考 Unity Shaders and Effects Cookbook 一书 感谢原书作者 同时会加上
  • Unity Shader 实现描边OutLine效果

    Shader实现描边流程大致为 对模型进行2遍 2个pass 绘制 第一遍 描边pass 在vertex shader中对模型沿顶点法线方向放大 fragment shader设置输出颜色为描边颜色 第二遍正常绘制模型 除被放大的部分外 其
  • Unity Shader入门精要文章目录

    前言 从今天开始 我将每天开始学习一些有关于Shader的知识 并把所学到的知识简化 写成文章来供大家参考或者学习 一方面是为了巩固知识 另一方面是我也没有找到什么系统的文章来学习Shader的知识 我的Shader学习大部分是参考了Uni
  • Unity 云雾shader

    先上效果图 Shader Demo MainCloud Properties LightIntensity 光照强度 Range 0 75 1 1 MainColor MainCol Color 0 6 0 6 0 6 1 MainTex
  • Unity中Cg的基本语法和使用

    Cg是类似于C语言的发展起来的图形编程语言 Cgraphics 它的很多表达式if else 和C语言非常相像 也和C 非常相像 由于Shader是写给显卡执行的 所以没有输出语句来调试 很多地方调试不了 只能靠Unity编辑器来帮我们报错
  • Unity Shader初学——《Unity Shader入门摘要》

    由于项目需要加上本人兴趣 所以开始学习shader相关知识 主要参考冯乐乐的 Unity Shader入门摘要 作者的博客在此 https blog csdn net candycat1992 作者的个人网站 http candycat19
  • Shader中的一些专业用语的解释

    Shader中的一些专业用语的解释 此文章收录于我主页顶置的 Unity Shader入门精要文章目录 点击即可跳转 一 什么是OPenGL DirectX 简单的来说 就是图像应用编程的接口 这些接口用语渲染二维和三维的图形 架起了上层应
  • Unity shader 笔记之迷雾效果

    先看效果图 Shader Unlit FogOfWar Properties MainTex Texture 2D white CGINCLUDE include UnityCG cginc struct appdata float4 ve
  • unityShader之固定渲染管线

    固定渲染管线功能较单一 能实现的效果不多 基本快要被淘汰了 老式的机器上还能用一用 附上几个脚本示例简单说明一下 shader likang king01 properties Color MainColor color 0 0 0 1 固
  • unityShader物体表面流光效果

    本文转载自http blog csdn net lyh916 article details 51831720 参考链接 http liweizhaolili blog 163 com blog static 162307442012726
  • Unity_Shader高级篇_16_Unity Shader入门精要_减少计算复杂度

    16 8 减少计算复杂度 16 8 1 Shader的LOD技术 和16 5 2提到的模型的LOD技术类似 Shader的LOD技术可以控制使用的Shader等级 它的原理是 只有Shader的LOD值小于某个设定的值 这个Shader才会
  • (五)unity shader基础之——————学习shader所需的数学基础:下篇(坐标空间:模型空间、世界空间、观察空间、裁剪空间、屏幕空间、法线变换等)

    一 坐标空间 上篇文章讲述了如何使用矩阵来表示基本的变换 如平移 旋转和缩放 在本节我们将关注如何使用这些变换来对坐标空间进行变换 渲染游戏的过程可以理解成是把一个个顶点经过层层处理最终转换为屏幕上的过程 本节我们就将学习这个转换过程是如何
  • Unity3D关于ComputeShader

    由于最近在实验中需要大量循环计算产生网格 所以可能需要GPU的加速 对于compute shader学习下 可能对于做GPU加速有帮助 以下补充修改了转载文章的内容 原文链接 https blog csdn net csharpupdown
  • unity透明shader

    Shader Custom AlphaSelfIllum Properties Color Main Color Color 1 1 1 0 SpecColor Spec Color Color 1 1 1 1 Emission Emmis
  • Unity Shader之——UV旋转动画

    Unity中通过Shader实现UV旋转动画 实现一个旋转效果 并且可以控制速度 方法是 以纹理中心为旋转中心 直接上代码如下 Shader Custom Simple Properties Color Color Color 1 1 1

随机推荐

  • k8s配置jvm参数

    问题 如果公司的项目最终是部署在k8s上的 那么 我们在本地idea上配置的jvm参数其实是无法在服务器上生效的 又或者我们需要直接在k8s服务器上进行jvm调优 此时 就需要操作在k8s上的jvm参数 查询当前jvm垃圾回收器 java
  • 端口 TCP/IP =PORT NUMBERS

    http www iana org assignments port numbers PORT NUMBERS last updated 2009 10 28 The port numbers are divided into three
  • Cisco Packet Tracer 清除路由器arp表

    router gt enable 进入特权模式 show arp 查看 clear arp cache 清除arp缓存 此时 arp表中的mac地址被清除 软件会自动发送arp包询问设备mac地址 看看设备是否还在 关闭路由接口再次打开即可
  • vue获取浏览器的指纹码

    前言 获取浏览器的指纹码 操作步骤 1 vue安装插件 1 使用CDN在线获取 https cdnjs com libraries fingerprintjs2 2 使用bowerinstall命令进行安装 bowerinstall fin
  • ElasticSearch 常用命令大全

    作者 十余年工作经验 跨域学习者 从事过全栈研发 项目经理等工作 一个爱折腾的程序员 1 获取索引列表 GET cat indices format json index 索引名称 可使用通配符 2 别名操作 GET alias 20 PO
  • kali linux扫描sql注入,Kali Linux系统利用DVWA靶场进测试SQL注入漏洞:

    手工盲注 手工盲注分为基于布尔的盲注 基于时间的盲注以及基于报错的盲注 手工盲注步骤 1 判断是否存在注入 注入是字符型还是数字型 2 猜解当前数据库名 3 猜解数据库中表名 4 猜解表中的字段名 5 猜解数据 Low安全级别源代码 if
  • full join 和full outer join_带你了解数据库中JOIN的用法

    前言 欢迎关注公众号 Coder编程 获取最新原创技术文章和相关免费学习资料 随时随地学习技术知识 本章主要介绍数据库中Join的的用法 也是我们在使用数据库时非常基础的一个知识点 本次会介绍数据库中的 inner join left jo
  • 30天自制操作系统学习-第10天

    1 内存管理 续 我们第一件事依旧是整理我们的bootpack c主文件 发现它在已长达200多行 我们分离出部分到memoy c函数中 并且对内存管理采用向上取整的策略 对部分零散的内存得以利用 新加的memory c 内存管理 incl
  • ESP8266-WIFI模块AT固件烧录

    目录 设备 AT固件烧录步骤 Step1 打开并启动软件 Step2 配置相关文件 Step3 配置结束 完成烧录 注意事项 文件资料 设备 1 烧录器一个 2 ESP8266 01S WIFI模块一个 AT固件烧录步骤 Step1 打开并
  • jmap 和jstack使用

    jmap jmap是JDK提供的一个可以生成Java虚拟机的堆转储快照dump文件的命令行工具 1 查看整个JVM内存状态 jmap heap pid 2 查看JVM堆中对象详细占用情况 jmap histo pid 3 导出整个JVM 中
  • 疯狂的程序员(绝影)

    这是CSDN上连载的小说 很有趣 刚开始学习计算机的那段历史 读起来是那样的熟悉 我也是从那种激动的过程中走过来的 发现有激情来能做成事情 这是最伟大的动力 读读这本书 回忆一下自己的当年 1 汇编代码 平时用的特别少 但是不是应该仔细的研
  • easy excel date 类型解析报错_最新Pandas.read_excel()全参数详解(案例实操,如何利用python导入excel)...

    pandas read excel 的作用 将Excel文件读取到pandas DataFrame中 支持从本地文件系统或URL读取的xls xlsx xlsm xlsb和odf文件扩展名 支持读取单一sheet或几个sheet 以下是该函
  • 【数据集】Python爬取某国内所有航班记录

    一 分析数据集 我们需要获取航班的数据集合 dcity acity airlineName flightNumber airportName departureDate arrivalDate punctualityRate price 航
  • 一言以蔽之

    其上申韩者 其下必佛老 这句的意思是 统治者如果采用法家式的高压态势治理国家 那么民众就只能从道家和佛家里寻找心理安慰了 也就是道家和佛家为专制权力之下的人提供了一种虚假的逃避方式 菜根谭 作者糅合了儒家的中庸 道家的无为 释家的出世和自身
  • BEPS生态过程模型简介和使用

    一 BEPS模型发展简介 二 BEPS模型代码和参数简介 代码链接 link 模型运行 待更新
  • 在vue项目中设置网站图标

    怎么在我们的Vue项目中设置自定义的网站图标 首先我们需要先制作个ico图标 大小为32 32的 放到static文件夹下 附制作网站 我们把制作好的ico图片改名为 favicon ico 注 必须改名 放到我们项目中的static文件夹
  • softmax分类器 python实现

    转自 http blog csdn net wds2006sdo article details 53699778 utm source itdadao utm medium referral 算法 算法参考的是Andrew 的课件与这篇文
  • Android中获取View宽高方法

    今天遇到一个问题 就是view获取宽度 高度都为0的问题 其实这个大家都遇到过 这里转载别人的 大家好共同学习 本文转载于 http www jianshu com p f56c92e29dea Android开发中经常需要获取控件的宽高
  • FileZilla的下载与安装

    FileZilla的下载与安装 为什么要使用FileZilla进行文件互传呢 Windows下 FileZilla客户端下载与安装 1 FileZilla的下载 1 FileZilla的安装 1 双击运行安装包 点击 i agree 2 n
  • Shader中的一些专业用语的解释

    Shader中的一些专业用语的解释 此文章收录于我主页顶置的 Unity Shader入门精要文章目录 点击即可跳转 一 什么是OPenGL DirectX 简单的来说 就是图像应用编程的接口 这些接口用语渲染二维和三维的图形 架起了上层应