
性能优化 #Unity引擎和游戏项目
文章平均质量分 70
丰富的Unity引擎使用经验,熟悉引擎各个知识点及瓶颈点,并且对各个模块消耗点有对应的解决方案。经过若干大型手游项目验证的优化知识内容,
偏重实用、可行性、易用性,持续更新
警醒与鞭策
『卧薪尝胆』不同阶段,不同目标!
展开
-
性能优化--gc
【代码】性能优化--gc。原创 2025-01-25 01:24:49 · 64 阅读 · 0 评论 -
游戏带宽优化 及 Ping 优化信息
每次玩在线游戏时,您的设备都会不断发送和接收数据包。翻译 2024-07-17 12:38:26 · 286 阅读 · 0 评论 -
记录一些优化杂项
【代码】记录一些优化杂项。翻译 2024-04-27 23:53:26 · 130 阅读 · 0 评论 -
Unity 优化 之 WebGL 草稿
Unity 优化 之 WebGL 草稿翻译 2023-03-05 13:59:19 · 641 阅读 · 0 评论 -
How To Get Start With DOTS (第 7 篇) v1.0
How To Get Start With DOTS (第 7 篇) v1.0翻译 2022-12-15 00:01:45 · 249 阅读 · 0 评论 -
How To Get Start With DOTS (第 6 篇) 回顾
How To Get Start With DOTS (第 6 篇) 回顾翻译 2022-12-14 23:52:41 · 217 阅读 · 0 评论 -
性能优化 之 Shader 及 Variant
性能优化 之 Shader和Variant原创 2022-09-18 22:17:51 · 572 阅读 · 0 评论 -
性能优化 之 温度与电量
性能优化 之 温度与电量原创 2022-09-18 13:01:08 · 473 阅读 · 0 评论 -
学习DOTS之High Performance C# (HPC#)
学习DOTS之High Performance C# (HPC#)翻译 2020-03-15 21:09:25 · 1517 阅读 · 0 评论 -
Unity优化之 音频相关
Unity优化之 音频相关翻译 2021-12-06 09:57:56 · 437 阅读 · 0 评论 -
性能优化 之 3D资产优化及顶点数据管理
////////////////////////////////////////几何学在最多数量的设备上运行良好的 3D 游戏始于 3D 艺术,该艺术旨在充分利用图形处理器。本指南重点介绍移动设备上 3D 资产的优化和最佳实践,以使您的游戏性能更好并最大限度地减少功耗。本文的部分内容基于 Arm Limited 贡献和版权所有的作品。几何的定义几何体或多边形网格是构成 3D 对象形状的顶点、边和面的集合。这可以是汽车、武器、环境、角色或游戏中的任何类型的视觉资产。几何由以下部分组成:翻译 2022-05-29 22:13:52 · 546 阅读 · 0 评论 -
性能优化最佳实践之缩减游戏大小
////////////////////////////////////////////缩减游戏大小本指南介绍了如何缩减游戏大小。安装时,游戏越小,所需的下载时间越短,消耗的数据流量越少。这两个优势都有助于提高安装转化次数。Google 的研究表明,提供的 APK 的大小每增加 6 MB,安装率便会下降 1%。许多开发者都将资源从 APK 移出到内容分发网络 (CDN),但托管 CDN 以及开发和维护资源管理系统都会产生费用。使用经过优化的分发方法,例如 Android App Bundle..翻译 2022-05-29 17:08:03 · 408 阅读 · 0 评论 -
Improve your game‘s performance
////////////////////////////////////////当游戏加载时间短、帧率稳定且输入响应可靠时,玩家最喜欢这款游戏。如果您有为计算机或控制台开发游戏的经验,您可能会惊讶于这些设备相对于移动设备在 GPU 大小和闪存性能方面的差异。系统结构的这种差异可能会导致难以预测您的游戏在 Android 上的性能。本指南旨在帮助您优化游戏,使其性能在运行您游戏的各种 Android 设备上尽可能可靠。特别是,本指南解释了如何配置 Android 游戏的系统跟踪。然后,该指南将..翻译 2022-05-29 16:58:10 · 252 阅读 · 0 评论 -
Unity渐进式光照贴图烘焙详解
////////////////////////////////////////////翻译 2021-05-12 08:10:17 · 2157 阅读 · 2 评论 -
How To Get Started With DOTS (第 4 篇)
/////////////////////////////////How To Get Started With DOTS (第 4篇)//////////////////////////////////翻译 2022-04-21 22:55:00 · 167 阅读 · 0 评论 -
DOTS 优化 之 ScriptableObjects
DOTS 优化 之 ScriptableObjectsScriptableObjectA ScriptableObject is a data container that you can use to save large amounts of data, independent of class instances. One of the main use cases for ScriptableObjects is to reduce your Project’s memory usage..翻译 2020-03-15 21:14:30 · 438 阅读 · 0 评论 -
DOTS和SRP绘制大量对象(BatchRendererGroup )
//////////////////////////////////////////////////////////使用 BatchRendererGroup 高效绘制大量对象你知道BatchRendererGroup吗,这是一个从 Unity 2019.1 开始添加的次要 API 。此 API 是针对DOTS/SRP优化的绘制网格的 API,旨在替代Graphics.DrawMesh等。它也是Hybrid Renderer V2的基础,它是 ECS 的渲染 API,所以如果您想...翻译 2022-05-03 13:51:49 · 1394 阅读 · 0 评论 -
GPU 优化之 Skinning 相关
////////////////////////////////////先记录临时资料原创 2022-04-23 21:52:00 · 705 阅读 · 0 评论 -
How To Get Started With DOTS (第 1 篇)
//////////////////// How to get started with DOTSGetting Started With DOTS: Scripting Pong (Tutorial)https://ole.unity.com/dotspongref 是写,in是读Run是在主线程上运行依赖点完成,再归还新工作权和上边一样的作用Defalt不使用输入这种线程分配时间已经大于实际时间所以...翻译 2020-03-07 14:40:11 · 365 阅读 · 0 评论 -
How To Get Started With DOTS (第 2 篇)
// JobSystem和EntityComponentSystem 学习Eg:https://www.youtube.com/watch?v=AXUvnk7Jws4 Step by step write job system://///////////////////////////...翻译 2020-03-15 15:24:52 · 332 阅读 · 0 评论 -
How To Get Started With DOTS (第 3 篇)
//Using Entity Command Buffers - Unite Copenhagen翻译 2020-03-15 20:15:41 · 291 阅读 · 0 评论 -
Unity Batching 相关
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////翻译 2018-08-01 22:54:36 · 396 阅读 · 0 评论 -
Untiy优化之Graphics Dynamic resolution
Dynamic resolutionDynamic resolution is aCamerasetting that allows you to dynamically scale individual render targets, to reduce workload on the GPU. In cases where the application’s frame rate reduces, you can gradually scale down the resolution to m..翻译 2022-04-02 23:17:59 · 395 阅读 · 0 评论 -
【Debug与Profiler】Unity Profiling Core
/////////////////////ProfilerMarker API guide//////////////////////Use ProfilerMarker to mark up resource-intensive script code blocks and make them visible in the Unity Profiler.This can be useful because by default, the built-in Unity Profiler does n翻译 2022-04-01 19:58:50 · 430 阅读 · 0 评论 -
【Debug与Profiler】Debug Free Fly Camera
using UnityEngine;using System.Collections;public class FreeFlyingCamera : MonoBehaviour{ public float m_cameraSensitivityValue = 90; public float m_climbSpeed = 4; public float m_normalMoveSpeed = 10; public float m_slowMoveMultiplier ...原创 2022-03-15 16:16:56 · 320 阅读 · 0 评论 -
Unity优化之 Physics
//////////////////////////////////////////////////Physics Simulate autoSimulationPhysics.SimulateDeclarationpublic static voidSimulate(floatstep);Parametersstep The time to advance physics by. DescriptionSimulate physics in the Scene....翻译 2022-04-03 23:53:56 · 622 阅读 · 0 评论 -
Unity优化之Animation相关
////////////////////////////////////////////Performance and optimizationThis page contains some tips to help you obtain the best performance in Unity, covering theanimation systemandrun-time optimizations.Note:For tips on modeling your character ...翻译 2020-12-02 23:23:56 · 615 阅读 · 0 评论 -
Unity FBX 导入分离Mesh和AnimationClip
///////////////////////导入fbx时直接分解出AnimationClip ///////////////////////////////// public static void OnPostprocessAllAssets(string[] importedAsset, string[] deletedAssets, string[] movedAssets, string[] movedFromAssetPaths) { bool proc...翻译 2022-03-08 23:15:58 · 1393 阅读 · 0 评论 -
特效图集合并减少Drawcall
特效合并,意思是说将粒子所用的零碎图片,以shader为单位合并成一张图集,好处就是可以降低draw call。试想,合并前每个粒子使用一个material,而每一个material就要占用一个drawcall,而合并后多个粒子可以用同一个material,这样就降低了drawcall,提升了性能。合并工具的代码如下:1 using System; 2 using System.Collections.Generic; 3 using System.IO; 4 using System....翻译 2022-03-08 22:23:37 · 421 阅读 · 0 评论 -
Unity Prefab 与 Particle System Mesh 冗余
/////////////////////////////////////////////////材质的Shader,或者GameObject组件的Monobehavior,在开发过程中可能会删掉一个Shader的Property或者代码的序列化参数。这些参数被删除后,材质或者GameObject Prefab文件中,该参数的序列化数据并未被删除。比如下图中名为TestGetDependency的组件。参数 testSubject已经从代码中删除。但是这个GameObject的Pref..翻译 2022-03-06 23:07:15 · 581 阅读 · 0 评论 -
Unity Material 冗余
///////////////////////////////////////////////首先使用ShaderUtil.GetShaderGlobalKeywords和GetShaderLocalKeywords来获取当前着色器有哪些宏,方法是内部方法所以需要用到反射,然后就可以取当前材质保存了哪些宏进行比较,最终删除残留的宏Material.shaderKeywords接着就是残留属性的删除,比如残留贴图。使用shader.GetPropertyName获取当前shader有哪些属性,然后..翻译 2022-03-06 23:01:34 · 682 阅读 · 0 评论 -
游戏 优化 内容
优化的重要性2012年手游开始爆发后,是个游戏都能赚钱,还能赚不少钱,经过几年的混战,手游的成功率越来越低,慢慢的手游越来越精品化。2016年广电总局给手游加了限制,有了版号的概念,又拖垮了一批小型公司和独立开发者,其实这是好事,手游市场越来越规范。精品的手游意味着更绚的画质、更丰富的内容,也就是对手机的CPU、GPU内存、内存更大的挑战,如何使用有限的手机资源,展现出来更好的游戏,优化必不可少。手游优化需要各方面的素质,对手机底层(OS、driver及以下)的理解,对图形学(OpenGL ES转载 2021-12-12 08:39:17 · 866 阅读 · 0 评论 -
先记录下 游戏优化的 草稿
项目受限于DrawCall;像素填充率;显存带宽。缺乏游戏优化将会导致低帧率、卡顿、崩溃、输入延迟、过长的加载时间、不一致以及令人不舒服的运行时行为,以及物理引擎的故障甚至过高的电池消耗。瓶颈可能出现在CPU、GPU(vram)、RAM等硬件组件中,也可能出现在物理、渲染和Unity引擎等软件子系统中。托管代码到引擎渲染,从CPU、内存到GPU,从传统游戏到XR应用程序的性能优化体系。大型、复杂、实时、基于事件、用户输入驱动的状态机不为QA编写代码,而要为产品编写代码过早..翻译 2021-08-31 21:44:21 · 204 阅读 · 0 评论 -
Unity2020高性能优化建议
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////翻译 2021-03-08 23:47:30 · 675 阅读 · 1 评论 -
Unity记录的优化细节4
//====之前的EarlyUpdate.UpdatePreloading===start==EarlyUpdate.UpdatePreloading{ Loading.UpdatePreloading 【在异步加载/卸载场景,异步加载AssetBundle,加载AssetBundle中的Asset,加载Resource文件夹中资源,调用UnloadUnusedAssets时会产生这个tag.如果加载操作要求等待完成,则会在子tag中看到AsyncOperationComplete, 否则在子...翻译 2021-03-03 20:18:27 · 1441 阅读 · 1 评论 -
Unity记录的优化细节3
EarlyUpdate.UpdatePreloading [PlayerLoop]{ Loading.UpdatePreloading [PlayerLoop] // 在异步加载/卸载场景,异步加载AssetBundle,加载AssetBundle中的Asset,加载Resource文件夹中资源,调用UnloadUnusedAssets时会产生这个tag.如果加载操作要求等待完成,则会在子tag中看到AsyncOperationComplete, 否则在子tag中会看到IntegrateAsse...翻译 2021-03-03 20:17:44 · 963 阅读 · 1 评论 -
Unity记录的优化细节2
PostLateUpdate.FinishFrameRendering [PlayerLoop]{ Camera.Render [Rendering] // 为GPU提交渲染的准备工作,包括软件裁剪、遮挡剔除、batch、渲染队列准备等 { Drawing [Rendering] // 将针对此camera的cullResult按照合适的渲染流程进行渲染。 { Render.OpaqueGeometry [Rendering] // ...翻译 2021-03-03 20:16:42 · 1669 阅读 · 1 评论 -
Unity UPR (Unity Performance Reporting) Optimization Suggestions
---------------------------------------平均帧率项目中平均帧率。推荐值 > 25 帧UPR优化建议1.查看CPU占用Top函数,从高到低开始依次分析和优化。2.查看GC占用Top函数,GC是大部分卡顿的主要原因。3.查看脚本所造成的性能损耗。4.降低游戏的渲染分辨率,手机帧率低的时候,减少每一帧要处理的像素数量。---------------------------------------ReservedTotal峰值项目运行时Un翻译 2020-09-30 14:10:12 · 985 阅读 · 0 评论 -
bake lightmapping in unity 3
////////////////////////////////////////////////////////////////////////////翻译 2021-05-17 08:19:06 · 166 阅读 · 0 评论 -
bake lightmap in unity 2
//////////////////////////////////////////Progressive Lightmapper : An introduction to lightmapping in UnityPart 1 : Optimizing baking in the Progressive LightmapperGlobal Illumination : Gambling with photons unitil you think you have won...翻译 2021-05-17 08:18:00 · 198 阅读 · 0 评论