news 2026/5/6 9:55:49

2.6 禁用未使用的脚本和对象

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
2.6 禁用未使用的脚本和对象

1.禁用未使用的脚本和对象


1.禁用未使用的脚本和对象

禁用未使用的脚本和对象是指在特定游戏类型中,对那些不在玩家视野内采用不处理他们的优化方案
1).Unity的视锥剔除和遮挡剔除 a.视锥剔除:自动剔除相机之外的游戏对象,只影响渲染系统,不会绘制被剔除的对象 b.遮挡剔除:剔除虽然在相机视野内,但被其他物体挡住的对象;同样是只影响渲染系统,防止浪费GPU绘制不可见的物体 Unity中的视锥剔除和遮挡剔除其实只会优化GPU渲染层面的性能,对象身上依附的各种组件还是会照常执行,并不能起到禁 用未使用的脚本和对象,优化CPU性能的目的
2).OnBecameVisible和OnBecameInvisible函数 a.OnBecameVisible 在渲染器(Renderer)对任何摄像机(主摄像机、UI摄像机、小地图摄像机、Scene视图摄像机 等)可见时调用 b.OnBecameInvisible 在渲染器(Renderer)对任何摄像机(主摄像机、UI摄像机、小地图摄像机、Scene视图摄像机 等)都不可见时调用 注:a.Scene图摄像机也会导致调用该函数 b.所依附的对象上必须有Renderer渲染器相关组件 c.对象失活后,由于渲染器也会失活,这两个函数不再响应 d.即使这两个函数所在的组件失活,只要渲染器存在,就会响应
3).利用距离禁用对象 过判断需要禁用的对象和玩家或摄像机距离过远时主动禁用对象if((this.transform.position-otherTrans.position).sqrMagnitude>=2500){}
4).主动判断视锥范围 a.GeometryUtility.CalculateFrustumPlanes 用于获取摄像机视锥体六个平面 b.GeometryUtility.TestPlanesAABB 用于判断一个AABB包围盒是否与一组平面(如视锥体)相交或包含,返回值:如果包围盒在平面组 的内部(或相交)返回true,否则返回false(即完全在外面)
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/2 4:20:38

颠覆传统!Vue 3组件库的零基础精通指南

颠覆传统!Vue 3组件库的零基础精通指南 【免费下载链接】plus-pro-components 🔥Page level components developed based on Element Plus. 项目地址: https://gitcode.com/gh_mirrors/pl/plus-pro-components 在当今快速迭代的前端开发环境中&am…

作者头像 李华
网站建设 2026/4/30 9:03:39

开源语音合成 benchmark:GPT-SoVITS表现亮眼

开源语音合成 benchmark:GPT-SoVITS表现亮眼 在数字内容爆发式增长的今天,个性化语音正在成为连接人与技术的新界面。从短视频配音到虚拟主播直播,从无障碍阅读到智能客服,用户不再满足于“能说话”的机械音,而是期待…

作者头像 李华
网站建设 2026/5/1 6:46:37

OpenAPI-GUI:可视化API设计终极指南

在API开发领域,OpenAPI规范已成为行业标准,但传统的文本编辑方式往往让开发者头疼不已。OpenAPI-GUI作为一款免费开源的图形化工具,彻底改变了这一现状,让API设计变得简单直观。 【免费下载链接】openapi-gui GUI / visual editor…

作者头像 李华
网站建设 2026/5/3 4:11:59

44、LINQ 入门指南

LINQ 入门指南 1. 匿名类型 在深入学习 LINQ 的查询功能之前,我们先了解一下 C# 3.0 的一个特性——匿名类型。匿名类型允许我们创建未命名的类类型。 在创建对象时,我们通常使用对象初始化器来初始化新类实例的字段和属性。对象创建表达式由三个部分组成: new 关键字、…

作者头像 李华
网站建设 2026/4/27 7:37:51

48、.NET 中的属性:预定义、自定义与使用方法

.NET 中的属性:预定义、自定义与使用方法 1. 预定义、保留属性 在定义自己的属性之前,先来了解 .NET 预定义和保留的两个属性: Obsolete 和 Conditional 属性。 1.1 Obsolete 属性 Obsolete 属性允许你将程序构造标记为过时,并在编译代码时显示有用的警告消息。…

作者头像 李华