当前位置: 首页 > web >正文

1.7 Rendering模块

1.Rendering模块简介

2.Rendering中各参数功能的含义

3.Draw Call和设置渲染状态


1.Rendering模块简介

1).Rendering(渲染)模块用于显示渲染一帧时的数据量(比如: 批次数, 顶点数等)2).在游戏中如果出现以下问题, 可以重点观察这里的内容a.DrawCall过高导致CPU性能问题(卡顿, 掉帧)b.中低端手机上发热严重, 掉电快c.开启大量实时光照, 粒子, 动态对象后出现掉帧d.画面复杂卡顿, 简单不卡顿

2.Rendering中各参数功能的含义

Rendering(渲染)分析窗口显示有关CPU和GPU渲染相关的统计信息

在这里插入图片描述

a.Batches Count(批处理数)该帧内批处理数量(Draw Call次数), 值越高, CPU压力越大; 推荐合批优化b.SetPass Calls Count(SetPass调用次数)该帧内用于渲染游戏对象的着色器渲染通道(Pass)调用次数, 即每帧需要切换Shader/材质状态的次数; 值越高, CPU状态切换开销大; 尽量减少材质和渲染通道Pass的数量c.Triangles Count(三角形数量)该帧内渲染了多少个三角形(所有网格顶点组成的面), 影响GPU处理负荷, 特别是在移动端需控制数量d.Vertices Count(顶点数量)该帧内渲染了多少个顶点(所有网格顶点数量), 影响GPU顶点处理性能

可以将CPU在每帧里的工作时间想象成一块固定的, 有限的时间预算(比如, 为了达到60, 帧只有约16.6毫秒); 这块预算需要分配给两个主要部门:a.游戏逻辑(Game Logic)执行脚本, 比如处理玩家输入, AI行为, 物理计算, 游戏状态更新等b.渲染准备(Rendering Preparation)准备Draw call(设置状态, 提交数据...)

在这里插入图片描述


在这里插入图片描述

a.Dynamic Batching(动态批处理), Static Batching(静态批处理)(Instancing)GPU Instancing(同一网格多个实例共享)- Batched Draw Calls: 合并为批处理的DC数- Batches: 批处理数- Triangles: 三角形数- Vertices: 顶点数- Time: 处理时间b.Used Textures该帧使用的Unity纹理数量和纹理使用的内存量 c.Render Textures该帧使用的渲染纹理数量和内存量d.Render Textures Changes该帧将一个或多个渲染纹理设置为渲染目标的次数e.Used Buffers从CPU内存上传到GPU显存的所有缓冲区数据的总大小, 包括Vertex Buffers(顶点缓冲区), Index Buffers(索引缓冲区)等f.Vertex Buffer Upload In FrameCPU在该帧上传到GPU的几何体数量(顶点, 法线, 纹理数据)g.Index Buffer Upload In FrameCPU在该帧上传到GPU的三角形索引数据(索引数据定义了顶点如何连接形成三角形)h.Shadow Casters该帧中投射阴影的游戏对象数量, 如果一个物体受到多个光源影响, 那么每个光源产生的阴影都算在内

3.Draw Call和设置渲染状态

a.Draw CallCPU向GPU发出的一个命令, 大概是: 嘿GPU, 我现在给你一堆数量(顶点, 纹理, 着色器等), 请你按我设置的渲染状态(材质, 混合模式等), 将它们画到屏幕上b.SetPass Calls- 它是引擎为了绘制物体而切换渲染状态的次数- 渲染状态表示渲染一个物体前, GPU需要知道如何来渲染它

在这里插入图片描述

http://www.xdnf.cn/news/19323.html

相关文章:

  • 数据结构 03(线性:单链表)
  • web渗透之RCE漏洞
  • Java中使用JSONUtil处理JSON数据:从前端到后端的完美转换
  • [Mysql数据库] 知识点总结7
  • 06.《STP 基础原理与配置详解》
  • DFS 回溯 【各种题型+对应LeetCode习题练习】
  • 突发,支付宝发布公告
  • 一体化步进伺服电机在汽车线束焊接设备中的应用案例
  • LZ4 解压工具(WPF / .NET 8)说明书
  • 【金仓数据库产品体验官】KingbaseES-ORACLE兼容版快速体验
  • 深入理解drv_spi.c后,完全正向亲手移植rt-thread的drv_spi.c驱动 (基于stm32h750 artpi)
  • Java函数式编程之【流(Stream)性能优化】
  • WPF和WinFrom区别
  • 计算机毕设 java 阿歹果园养鸡场管理系统 基于 SSM 框架的果园养鸡场全流程管理系统设计与实现 Java+MySQL 的养殖生产与进销存一体化平台开发
  • 汽车专卖店管理系统的设计与实现(代码+数据库+LW)
  • Langflow核心技术学习笔记
  • 探索 XGBoost 与 LightGBM 的差异:哪个更适合你的项目?
  • 基于TCN-BiLSTM-SelfAttention神经网络的多输入单输出回归预测【MATLAB】
  • 力扣(LeetCode) ——645. 错误的集合(C语言)
  • 整体设计 的语言设计:通用模型语言的标准模板语言的规格模式语言(搜狗汪仔答问)
  • GooglePlay提审问题记录
  • 国家统计局数据分析01——机器学习
  • wpf之附加属性
  • Odoo与Django 的区别是什么?
  • ADFS 和 OAuth 的区别
  • 龙迅#LT7641GX适用于四路HDMI2.1/DP/TPYE-C转HDMI2.1混切应用,分辨率高达8K60HZ!
  • 线性表和顺序表
  • 数据存储——数据库
  • 安卓开发---SimpleAdapter
  • ansible的playbook练习题