性能优化篇(二) 静态合批步骤与所有注意事项\游戏运行时使用代码启动静态合批

静态合批步骤:
1.开启Project Settings —>Player–>Other Setting里勾选Static Batching选项(一般情况下unity都是默认勾选状态)
在这里插入图片描述
2.勾选需要合批的静态物体上的Batching Static项,勾选后此物体下的所有子物体都默认参与静态合批(勾选后物体不能进行移动/旋转/缩放操作, 脚本也控制不了这些操作)
在这里插入图片描述
在Profiler面板里的Rendering里查看合批情况 (下图是已进行静态合批的详细情况)
在这里插入图片描述
静态合批的注意事项
使用静态合批虽然可以提升游戏性能,但是设置为静态的物体在整个游戏中就不能再运动了,强行使它们运动会出问题。

而且即使按照以上步骤进行了静态合批,也不一定保证会成功,必须满足以下全部条件,静态合批才会成功:
1、游戏对象处于激活状态。
2、游戏对象有一个Mesh Filter组件,并且该组件已启用。
3、Mesh Filter组件具有对网格的引用。
4、网格已启用Read/Write功能。
5、网格的顶点计数大于0。
6、该网格尚未与另一个网格组合。
7、游戏对象有一个Mesh Renderer组件,并且该组件已启用。
8、网格渲染器组件不将任何材质与DisableBatching标记设置为true的着色器一起使用。
9、要批处理在一起的网格使用相同的顶点属性。例如,Unity可以将使用顶点位置、顶点法线和一个UV的网格与另一个UV进行批处理,但不能将使用顶点定位、顶点法线、UV0、UV1和顶点切线的网格进行批处理。

即使静态合批成功,合出来的每个批次可以包含的网格顶点数是有限的,最多是64000个顶点。如果超过这个数,则会创建到另一个批次中。

如果要在游戏运行时进行静态合批,则可以使用StaticBatchingUtility类的Combine方法**。
**
StaticBatchingUtility.Combine(GameObject 根物体)
StaticBatchingUtility.Combine(GameObject[] 要进行静态合批的游戏对象,GameObject 根物体)
对指定的根物体的所有子孙物体进行静态合批。
只有当它们符合静态合批的所有条件,静态合批才会成功。
成功之后,这些物体就不能再运动了,强行运动会出问题。但是该根物体仍然允许运动。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/504694.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

逻辑回归与决策边界解析

目录 前言1 逻辑回归基础1.1 Sigmoid函数:打开分类之门1.2 决策函数:划定分类界限1.3 逻辑回归详解 2 决策边界2.1 线性决策边界2.2 非线性决策边界2.3 决策边界的优化 3 应用与实例3.1 垃圾邮件分类:精准过滤3.2 金融欺诈检测:保…

揭示IP风险画像的作用与价值

在当今数字化时代,互联网的快速发展为企业和个人带来了巨大的机遇,同时也带来了各种安全风险和威胁。随着网络攻击手段的不断升级和演变,传统的安全防御手段已经无法满足对抗复杂多变的网络威胁的需求。IP风险画像作为一种新型的网络安全解决…

MYSQL的优化学习,从原理到索引,在到事务和锁机制,最后的主从复制、读写分离和分库分表

mysql的优化学习 为什么选择Mysql不选择其他的数据库?还有哪些,有什么区别? Mysql:开源免费版本可用,适用于中小型应用 Oracle:适用于大型企业级应用,复杂的业务场景和大量数据的处理&#xf…

基础小白快速入门Python------>模块的作用和意义

模块, 这个词听起来是如此的高大威猛,以至于萌新小白见了瑟瑟发抖,本草履虫见了都直摇头,好像听上去很难的样子,但是但是,年轻人,请听本少年细细讲述,他只是看起来很难,实…

七、基于FreeRTOSSTM32移植MQTT

1、移植环境 (1)Keil MDK: V5.38.0.0 (2)STM32CubeMX: V6.8.1 (3)MCU: STM32F407ZGT6 (4)已移植好FreeRTOS和调试好串口的项目。 FreeRTOS移植参考博客:示例1:FreeRTOS移植详解_基于HAL库工程_hal库移植rtos-CSDN博客mqttclient源码:htt…

GIS之深度学习01:检测电脑是否包含英伟达GPU

GPU(Graphics processing unit),中文全称图形处理器,我们听说的更多的CPU全称是central processing unit,中央处理器。研究深度学习和神经网络大都离不开GPU,在GPU的加持下,我们可以更快的获得模…

Linux搭建SFTP服务器

案例:搭建SFTP服务器 SFTP(SSH文件传输协议) SFTP(SSH文件传输协议)是一种安全的文件传输协议,用于在计算机之间传输文件。它基于SSH(安全外壳协议)的子系统,提供了加密的…

java 基础(核心知识搭配代码)

前言 java的学习分为了上部分以及下部分进行学习,上部分就是对于java的基础知识,面向对象上,面向对象下,异常操作,javaApi;下部主要是集合,泛型,反射,IO流,J…

加密隧道技术

在现在的互联网上传输数据,首要考虑的就是安全。这关乎到你的隐私,个人信息,财产安全等等重大问题。如果你的程序本身传输的信息没有加密,也可以通过其他辅助方式让你的通信加密。一些工具的就是为了解决这样的场景的,…

ubuntu20下使用 torchviz可视化计算图

安装 torchviz: pip install torchviz示例代码:下面是一个简单的示例代码,展示如何使用 torchviz 可视化计算图: python import torch from torchviz import make_dot# 创建一个简单的模型 model torch.nn.Sequential(torch.nn…

《求生之路2》服务器如何选择合适的内存和CPU核心数,以避免丢包和延迟高?

根据求生之路2服务器的实际案例分析选择合适的内存和CPU核心数以避免丢包和延迟高的问题,首先需要考虑游戏的类型和对服务器配置的具体要求。《求生之路2》作为一款多人在线射击游戏,其服务器和网络优化对于玩家体验至关重要。 首先,考虑到游…

二维码门楼牌管理系统技术服务的分类与应用

文章目录 前言一、二维码门楼牌管理系统的分类二、二维码门楼牌管理系统的应用优势三、结论 前言 随着城市管理的精细化和智能化,二维码门楼牌管理系统成为了现代城市管理的重要工具。该系统将传统的门牌、楼牌、户牌与二维码技术相结合,实现了信息的快…