| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 游戏开发 -> unity性能优化之批处理的优势 -> 正文阅读 |
|
[游戏开发]unity性能优化之批处理的优势 |
在某些情况下,批处理的对象指的是网格、顶点、边、UV坐标和其他用于描述3D对象的不同数据类型的大集合,当然该术语也可以简单的代表批处理音频文件、精灵、纹理文件和其他大数据的集合 批处理的两种形式
为什么可以将多个网格进行批处理成单一的网格?Unity中并没有规定网格对象必须是3D空间中的连续集合体,并且,Rendering pipeline(渲染管线)可以接受一系列没有公共边的顶点,由此,可以将原本需要多个渲染指令的多个独立网格合并成单个网格,然后使用单一指令来渲染它; DrawCall什么是DrawCall?说的通俗一点就是,从CPU发送到GPU的请求,指令 为什么进行了批处理就可以提高性能呢?在CPU向GPU发送一个DrawCall命令,进行渲染之前,需要做一些工作
材质和着色器在Unity中,渲染状态的本质上是通过材质呈现给开发者的,材质是着色器的容器,着色器是一种定义GPU该如何进行渲染的简短程序 FrameDebugger打开方式 window->FrameDebugger 测试 在场景中创建三个Cube,打开FrameDugger 左边面板的每一项后面的数字代表一个GraphicsAPI的调用,其中c一个DrawCall是用来清楚屏幕的(Clear),接着三个不同的DrwaCall(RenderForward.RenderLoopJob),右侧是详细信息 动态批处理优势:
首先打开批处理PlayerSetting开启DynamicBatching 这是因为动态批处理还是有很多限制条件的,如下
首先来说一下什么是顶点属性: 网格缩放的要求: 静态批处理要求:
Static标记静态批处理静态批处理 |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/27 20:21:21- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |