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

Unity渲染Stats分析

文章目录

  • 前言
  • 一、Stats
  • 二、我们主要看渲染状态分析
    • 1、FPS
    • 2、其他状态信息
    • 3、DrawCall
    • 4、Batch
    • 5、Setpass Call
    • 6、在Unity中弱化了DrawCall的概念,我们主要看 Batch 和 Setpass Call
  • 三、使用 Batching(合批) 降低 Batch (渲染批次)
    • 1、Dynamic Batching 动态合批
    • 2、Static Batching 静态合批
    • 3、GPU Instancing CPU实例化


前言

Starts 是Unity用于查看渲染状态的小工具


一、Stats

在Unity中,用Stats工具来进行渲染状态分析

在Game窗口->Stats查看

在这里插入图片描述

在这里插入图片描述


二、我们主要看渲染状态分析

1、FPS

帧率(Frames Per Second),即一秒内渲染多少帧。

请添加图片描述

可以看出我们在 PC 端运行,渲染帧率达到了 500 多帧。
但是,实际打包到手机端,渲染帧率就没有这么高了,所有我们还是得主要看实际打包后的结果

  • 1s = 1000ms
  • ms = 1000 / 目标帧率
  • 1s 有 30帧的话,1ms = 33.3帧
  • 1s 有 30帧的话,1ms = 16.6帧

2、其他状态信息

在这里插入图片描述

  • 为什么我们的空场景中,会有 1.7k个三角形面 和 5k 个顶点

因为我们的天空盒是一个球形,球的面数和顶点较多

  • 我们使用单一颜色 替换 天空盒,就可以看见 三角面 和 顶点数 减少

在这里插入图片描述

在这里插入图片描述

3、DrawCall

CPU每次调用图形API命令GPU进行渲染的操作

4、Batch

把需要渲染的 数据加载到显存并设置好渲染状态,然后CPU调用GPU渲染的过程为一个Batch

5、Setpass Call

每次GPU切换一个Pass前,都会产生一次SetPassCall

6、在Unity中弱化了DrawCall的概念,我们主要看 Batch 和 Setpass Call


三、使用 Batching(合批) 降低 Batch (渲染批次)

合批有哪些方法:

1、Dynamic Batching 动态合批

2、Static Batching 静态合批

3、GPU Instancing CPU实例化


http://www.kler.cn/a/158740.html

相关文章:

  • 【MySql】实验十六 综合练习:图书管理系统数据库结构
  • Isaac Sim+SKRL机器人并行强化学习
  • 【计算机网络】水平触发与边缘触发有什么优缺点呢?
  • STM32完全学习——使用标准库点亮LED
  • SQL注入注入方式(大纲)
  • 探索Python网络请求新纪元:httpx库的崛起
  • 使用Docker在Debian上构建GRBL模拟器镜像:简明步骤和操作指南
  • C语言--每日选择题--Day36
  • 随机链表的复制[中等]
  • 服务器以及页面无报错,但是ajax一直回调error。怎么查找报错信息,更好地了解到底是什么问题导致了请求失败
  • Qt 大小端转换函数qFromBigEndian qFromLittleEndian
  • 【亲测有效,超详细】收到微信小程序限期完成微信认证通知怎么处理?微信小程序年审认证都需要哪些资料?
  • Flink之复杂事件处理CEP
  • Linux下安装Nginx
  • 前端开发新趋势:Web3、区块链与虚拟现实
  • 解决:ModuleNotFoundError: No module named ‘qt_material‘
  • C++进阶篇7---异常
  • Unity中动态合批
  • SpringBoot+vue显示图片
  • CPP-SCNUOJ-Problem P24. [算法课贪心] 跳跃游戏
  • 鱼香ROS一键安装命令(支持微信、docker、ros等)
  • SpringSecurity6 | 默认用户生成
  • 2023年甘肃省职业院校技能大赛(中职教师组)网络安全竞赛样题(四)
  • GNN Maximum Flow Problem (From Shusen Wang)
  • 7+WGCNA+机器学习+实验+泛癌分析,多要素干湿结合
  • TCP 半连接队列和全连接队列