taming performance within unity...company introduction 7 студий 250 000 000 игроков 15...
TRANSCRIPT
![Page 1: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/1.jpg)
TAMING PERFORMANCE WITHIN UNITY
Данил Гошко
![Page 2: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/2.jpg)
SPEAKER INTRODUCTION
Techniсal Artist в Action Games Department)
ДАНИЛ ГОШКО
2Taming Performance Within Unity
![Page 3: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/3.jpg)
COMPANY INTRODUCTION
7 студий
250 000 000 игроков
15
проектов150 стран
www.developers.plarium.com
3Taming Performance Within Unity
![Page 4: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/4.jpg)
ART CODE
4Taming Performance Within Unity
![Page 5: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/5.jpg)
5Taming Performance Within Unity
![Page 6: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/6.jpg)
• Составляющие эффективной работы с движком Unity
• Объективный анализ данных.
• Проблемы и методы оптимизации:
• звука,
• физики,
• Графики,
• UnityUI.
• Поиск решений для поставленных задач
О ЧЕМ БУДЕМ ГОВОРИТЬ?
6Taming Performance Within Unity
![Page 7: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/7.jpg)
Удобство/ скорость работы с редактором
Работа с проектом
Работа с подсистемами Unity
Поиск решений
СОСТАВЛЯЮЩИЕ ЭФФЕКТИВНОЙ РАБОТЫ С ДВИЖКОМ UNITY
7Taming Performance Within Unity
![Page 8: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/8.jpg)
УДОБСТВО/ СКОРОСТЬ РАБОТЫ С РЕДАКТОРОМ
Работа с проектом
Работа с подсистемами Unity
Поиск решений
СОСТАВЛЯЮЩИЕ ЭФФЕКТИВНОЙ РАБОТЫ С ДВИЖКОМ UNITY
8Taming Performance Within Unity
![Page 9: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/9.jpg)
Custom: Ctrl+g
Custom: Ctrl+Shift+a
MenuItem(“Tools/Item %g“)]
private static void NewNestedOption()
{
}
[MenuItem(“Tools/New Option %#a“)]
private static void NewMenuOption()
{
}
ИСПОЛЬЗОВАНИЕ СУЩЕСТВУЮЩИХ И СОЗДАНИЕ СОБСТВЕННЫХ HOTKEYS
https://docs.unity3d.com/Manual/UnityHotkeys.htmlЭкономия времени при взаимодействии с редактором
9Taming Performance Within Unity
![Page 10: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/10.jpg)
КАСТОМИЗАЦИЯ РАБОЧЕГО ПРОСТРАНСТВА
https://docs.unity3d.com/Manual/CustomizingYourWorkspace.htmlЭкономия времени при взаимодействии с редактором
10Taming Performance Within Unity
![Page 11: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/11.jpg)
СОЗДАНИЕ CUSTOM INSPECTORS, CUSTOM EDITOR MENUS
https://docs.unity3d.com/Manual/ExtendingTheEditor.htmlЭкономия времени при взаимодействии с редактором, автоматизация механических задач
11Taming Performance Within Unity
![Page 12: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/12.jpg)
КОНТРОЛЬ ИМПОРТА АССЕТОВ
public class MyPostProcessor: AssetPostprocessor { public void OnPreprocessModel() { ModelImporter modelImporter = (ModelImporter)assetImporter;
if(modelImporter.isReadable { modelImporter.isReadable = false; modelImporter.SaveAndReimport(); } } }
Контроль дефолтных настроек импорта ассетовhttps://docs.unity3d.com/ScriptReference/AssetPostprocessor.html
12Taming Performance Within Unity
![Page 13: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/13.jpg)
ИСПОЛЬЗУЙТЕ CACHE SERVER
https://docs.unity3d.com/Manual/CacheServer.htmlЭкономия времени при импорте и синхронизации графических ассетов
13Taming Performance Within Unity
![Page 14: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/14.jpg)
ИСПОЛЬЗУЙТЕ CLOUD BUILD
Source control
HOW CLOUD BUILD WORKS
Build in the cloud
Detect commits
Install & test
https://unity3d.com/ru/unity/features/cloud-buildЭкономия времени при получение сборки на целевом устройстве
14Taming Performance Within Unity
![Page 15: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/15.jpg)
ИСПОЛЬЗУЙТЕ UNITY REMOTE
https://docs.unity3d.com/Manual/UnityRemote5.htmlОценка целесообразности элемента для целевого устройства
15Taming Performance Within Unity
![Page 16: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/16.jpg)
УДОБСТВО/СКОРОСТЬ РАБОТЫ С РЕДАКТОРОМ
Building custom inspector by Unity
CustomEditors by Prime31
Intro to Cloud Build by Unity
Editor scripting for nOObs
https://unity3d.com/ru/learn/tutorials/topics/interface-essentials/building-custom-inspector
https://www.youtube.com/watch?v=WlGwBmM-dfA
https://unity3d.com/ru/learn/tutorials/topics/cloud-build/introduction-unity-cloud-build
https://www.youtube.com/watch?v=9bHzTDIJX_Q
16Taming Performance Within Unity
![Page 17: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/17.jpg)
СОСТАВЛЯЮЩИЕ ЭФФЕКТИВНОЙ РАБОТЫ С ДВИЖКОМ UNITY
Удобство/ скорость работы
с редактором
РАБОТА С ПРОЕКТОМ
Работа с подсистемами Unity
Поиск решений
17Taming Performance Within Unity
![Page 18: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/18.jpg)
ФИЛОСОФИЯ АНАЛИЗА ДАННЫХ
PROFILE ANALYZE
FPS MS
TWEAK
18Taming Performance Within Unity
![Page 19: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/19.jpg)
ФИЛОСОФИЯ АНАЛИЗА ДАННЫХ
19Taming Performance Within Unity
![Page 20: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/20.jpg)
ОПРЕДЕЛЕНИЕ ЦЕЛЕВОГО УСТРОЙСТВА
ЧЕГО МЫ ХОТИМ?
ВЫБРАТЬ ЦЕЛЕВОЙ ДЕВАЙС
20Taming Performance Within Unity
![Page 21: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/21.jpg)
ОПРЕДЕЛЕНИЕ ЦЕЛЕВОГО УСТРОЙСТВА
TIER: LOW TIER: HIGHTIER: MIDDLE
21Taming Performance Within Unity
![Page 22: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/22.jpg)
ОПРЕДЕЛЕНИЕ ЦЕЛЕВОГО УСТРОЙСТВА
22Taming Performance Within Unity
![Page 23: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/23.jpg)
ОПРЕДЕЛЕНИЕ ЦЕЛЕВОГО УСТРОЙСТВА
TIER: LOW TIER: HIGHTIER: MIDDLE
23Taming Performance Within Unity
![Page 24: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/24.jpg)
ТРЕБУЕМЫЙ ПОКАЗАТЕЛЬ FPS
45+30
24Taming Performance Within Unity
![Page 25: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/25.jpg)
QUALITY TIERS
https://docs.unity3d.com/Manual/class-GraphicsSettings.html
25Taming Performance Within Unity
![Page 26: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/26.jpg)
QUALITY SETTINGS
https://docs.unity3d.com/Manual/class-QualitySettings.html
26Taming Performance Within Unity
![Page 27: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/27.jpg)
ВЫЯВЛЕНИЕ ПРОБЛЕМ ПРОИЗВОДИТЕЛЬНОСТИ
27Taming Performance Within Unity
![Page 28: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/28.jpg)
ИНСТРУМЕНТЫ ПРОФИЛИРОВАНИЯ UNITY
Unity Profiler
Unity Memory Profiler
Unity Frame Debugger
https://bitbucket.org/Unity-Technologies/memoryprofiler
28Taming Performance Within Unity
![Page 29: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/29.jpg)
ИНСТРУМЕНТЫ ПРОФИЛИРОВАНИЯ UNITY
Unity Hardware Stats
Unity view modes
29Taming Performance Within Unity
![Page 30: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/30.jpg)
СЭМПЛИРОВАНИЕ ФРАГМЕНТА ИЗ PROFILER
30Taming Performance Within Unity
![Page 31: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/31.jpg)
ИНСТРУМЕНТЫ ПРОФИЛИРОВАНИЯ ДЕКСТОПНЫХ СИСТЕМ
31Taming Performance Within Unity
![Page 32: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/32.jpg)
ИНСТРУМЕНТЫ ПРОФИЛИРОВАНИЯ ДЕКСТОПНЫХ СИСТЕМ
Xcode
Nvidia Insight
Intel GPA
Renderdoc
https://developer.apple.com/xcode/
https://developer.nvidia.com/nvidia-nsight-visual-studio-edition
https://software.intel.com/en-us/gpa
https://renderdoc.org/builds
32Taming Performance Within Unity
![Page 33: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/33.jpg)
ИНСТРУМЕНТЫ ПРОФИЛИРОВАНИЯ МОБИЛЬНЫХ СИСТЕМ
33Taming Performance Within Unity
![Page 34: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/34.jpg)
ИНСТРУМЕНТЫ ПРОФИЛИРОВАНИЯ МОБИЛЬНЫХ СИСТЕМ
Mali graphics debugger
Adreno GPU profiler
PowerVR SDK
Nvidia Tegra development
https://developer.arm.com/products/software-development-tools
https://developer.qualcomm.com/software/adreno-gpu-profiler
https://community.imgtec.com/developers/powervr/
https://developer.nvidia.com/tegra-development
34Taming Performance Within Unity
![Page 35: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/35.jpg)
ТИПЫ РЕСУРСОЗАВИСИМОСТЕЙ
Подготовка Draw Calls Пропускная способность
Физика GPU-код (шейдеры)
Скрипты Разрешение
Память
...
Освещение
CPU GPU
35Taming Performance Within Unity
![Page 36: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/36.jpg)
УТОПИЯ
Как же хорошо, когда все хорошо
36Taming Performance Within Unity
![Page 37: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/37.jpg)
GPU PROFILING IS NOT SUPPORTED
37Taming Performance Within Unity
![Page 38: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/38.jpg)
ЧТО ДАЛЬШЕ?
Четко сформулируйте проблему
Минимум шума
Фокус на решении
38Taming Performance Within Unity
![Page 39: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/39.jpg)
СОСТАВЛЯЮЩИЕ ЭФФЕКТИВНОЙ РАБОТЫ С ДВИЖКОМ UNITY
Удобство/ скорость работы с редактором
Работа с проектом
РАБОТА С ПОДСИСТЕМАМИ UNITY
Поиск решений
39Taming Performance Within Unity
![Page 40: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/40.jpg)
ГРАФИКАОсновная задача
Минимизация затрат на отрисовку кадра, время загрузки сцены, использование памяти
40Taming Performance Within Unity
![Page 41: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/41.jpg)
UNITY RENDERING PATH
Forward
Deferred
Legacy Deferred
Vertex-Lit
https://docs.unity3d.com/Manual/RenderingPaths.html
41Taming Performance Within Unity
![Page 42: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/42.jpg)
Количество пикселей
OVERDRAW+ =+ Инструкции в шейдере
FILL RATE
using UnityEngine;
public class NewResolution: MonoBehaviour { void Start() { // Switch to 640 x 480 fullscreen Screen.SetResolution(640, 480, true); } }
FILL RATE И РАЗРЕШЕНИЕ ЭКРАНА
42Taming Performance Within Unity
![Page 43: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/43.jpg)
APPLICATION
RENDER STATE
COMMANDBUFFER
DRAW CALL
- Vertex shader
- Pixel shader
- Texture
- Lighting
RENDER STATE
DRAW CALL
DRAW CALL BA
TC
H
RAM VRAM
.OBJ
.FBX
.OTHER
SIMPLE RENDERING PIPELINE
CPU GPU
43Taming Performance Within Unity
![Page 44: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/44.jpg)
STATIC
DYNAMIC
BATCHING
https://docs.unity3d.com/Manual/DrawCallBatching.html
44Taming Performance Within Unity
![Page 45: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/45.jpg)
STATIC DYNAMIC
Memory array Vertex buffer
GPU GPU
On scene Startup
DYNAMIC OVERHEAD
300 MESHES/BATCH
900 VERTEX ATTRS
300 VERTS/MESHRuntime
BATCHING
DRAWCALLSCPU
DRAWCALLSCPU
MEMORY!TRANSFORM
!REALTIME SHADOWS !SKINNED MESH
! -TRANSFORM!MULTIPASS SHADERS
45Taming Performance Within Unity
![Page 46: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/46.jpg)
using UnityEngine; using System.Collections;
[RequireComponent(typeof(MeshFilter))] [RequireComponent(typeof(MeshRenderer))] public class ExampleClass : MonoBehaviour { void Start() { MeshFilter[] meshFilters = GetComponentsInChildren<MeshFilter>(); CombineInstance[] combine = new CombineInstance[meshFilters.Length]; int i = 0; while (i < meshFilters.Length) { combine[i].mesh = meshFilters[i].sharedMesh; combine[i].transform = meshFilters[i].transform.localToWorldMatrix; meshFilters[i].gameObject.active = false; i++; } transform.GetComponent<MeshFilter>().mesh = new Mesh(); transform.GetComponent<MeshFilter>().mesh.CombineMeshes(combine); transform.gameObject.active = true; } }
ИСПОЛЬЗОВАНИЕ СУЩЕСТВУЮЩИХ И СОЗДАНИЕ СОБСТВЕННЫХ HOTKEYS
https://docs.unity3d.com/ScriptReference/Mesh.CombineMeshes.html
46Taming Performance Within Unity
![Page 47: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/47.jpg)
SHADER
TEXTURE
MATERIAL MESH
КОНЦЕПТ «МАТЕРИАЛ» В UNITY
https://docs.unity3d.com/Manual/Materials.html
47Taming Performance Within Unity
![Page 48: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/48.jpg)
КОНЦЕПТ «ШЕЙДЕР» В UNITY
https://unity3d.com/ru/learn/tutorials/topics/graphics/gentle-introduction-shaders
48Taming Performance Within Unity
![Page 49: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/49.jpg)
УСКОРЕНИЕ ЗАГРУЗКИ ШЕЙДЕРОВ В UNITY
49Taming Performance Within Unity
![Page 50: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/50.jpg)
ОБЩИЕ ОПТИМИЗАЦИИ
Изучите функции из .cginc от Unity Учитывайте модель освещения
Аккуратнее с alphatestСнижайте степень точности: half, fixed
Предоставляйте доступ только к нужным property
Вычисления переменных перед формированием вектора
Старайтесь перенести вычисления в vertex-функцию
Старайтесь избегать логических проверок (if-else)
Для LOD используйте упрощенные версии шейдера
Исключите сложные функции (pow, exp, log, cos, sin, tan)
Избегайте изменения степени точности в момент swizzling:
float4 indexer = (1.0, 3.0, 2.0, 1.0);fixed2 newValue_01 = indexer.xy;
Меньше времени на отрисовку кадра GPU
50Taming Performance Within Unity
![Page 51: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/51.jpg)
РАБОТА СО СВЕТОМ
51Taming Performance Within Unity
![Page 52: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/52.jpg)
ОБЩАЯ КОНЦЕПЦИЯ
LIGHT
REALTIME BAKED MIXED
ILLUMINATION/DIFFUSION
SHADOW
52Taming Performance Within Unity
![Page 53: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/53.jpg)
ВОЗДЕЙСТВИЕ СВЕТА
53Taming Performance Within Unity
![Page 54: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/54.jpg)
LIGHT LAYER CULLING
54Taming Performance Within Unity
![Page 55: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/55.jpg)
ТЕНИ
ENLIGHTEN
LIGHTMAPPING
PROGRESSIVE (PREVIEW)
CUSTOMBAKEDREALTIME
55Taming Performance Within Unity
![Page 56: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/56.jpg)
ВРЕМЯ ПЕЧЬ КАРТЫ
56Taming Performance Within Unity
![Page 57: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/57.jpg)
РЕКОМЕНДАЦИИ ПЕРЕД ЗАПЕКАНИЕМ КАРТ
Стоит ли все элементы делать static?
Используйте Light Probes
57Taming Performance Within Unity
![Page 58: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/58.jpg)
LIGHT PROBES
https://docs.unity3d.com/Manual/LightProbes.html
58Taming Performance Within Unity
![Page 59: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/59.jpg)
РЕКОМЕНДАЦИИ ПЕРЕД ЗАПЕКАНИЕМ КАРТ
Прототипирование в низком
разрешении для повышения
скорости итераций
Больше места на Lightmap для
major-объектов и объектов,
близких к камере
Final gather, увеличение
количества лучей в самом конце
Сжимайте Lightmap
для экономии памяти
АЛГОРИТМ ДЕЙСТВИЙ
59Taming Performance Within Unity
![Page 60: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/60.jpg)
UV CHARTS & CLUSTERS
60Taming Performance Within Unity
![Page 61: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/61.jpg)
ИНСТРУМЕНТЫ ПРОФИЛИРОВАНИЯ МОБИЛЬНЫХ СИСТЕМ
Precomputed realtime GI
Bake it ‘til you make it
https://unity3d.com/ru/learn/tutorials/topics/graphics/introduction-precomputed-realtime-gi
https://www.youtube.com/watch?v=u5RTVMBWabg
61Taming Performance Within Unity
![Page 62: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/62.jpg)
РАБОТА С ТРЕХМЕРНЫМИ МОДЕЛЯМИ
62Taming Performance Within Unity
![Page 63: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/63.jpg)
КОРРЕКТНЫЙ ИМПОРТ
ЭКСПОРТ — ФОРМАТЫ ПРОПРИЕТАРНЫЕ ФОРМАТЫ
https://docs.unity3d.com/Manual/3D-formats.html
MAYA
MAX
BLENDER
...
63Taming Performance Within Unity
![Page 64: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/64.jpg)
LEVEL OF DETAILS (LOD)
https://docs.unity3d.com/Manual/LevelOfDetail.html
64Taming Performance Within Unity
![Page 65: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/65.jpg)
OVERDRAW
https://github.com/Nordeus/Unite2017/blob/master/OverdrawMonitor
65Taming Performance Within Unity
![Page 66: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/66.jpg)
OCCLUSION CULLING
https://docs.unity3d.com/Manual/OcclusionCulling.htmlУменьшает overdraw, увеличивает потребление RAM
66Taming Performance Within Unity
![Page 67: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/67.jpg)
ОБЩИЕ РЕКОМЕНДАЦИИ
Контролируйте количество Hard Edge в модели
Минимизируйте количество UV-каналов и UV-швов
Определите «бюджет» полигонов в кадре
67Taming Performance Within Unity
![Page 68: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/68.jpg)
РАБОТА С АНИМАЦИЯМИ
68Taming Performance Within Unity
![Page 69: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/69.jpg)
КОРРЕКТНЫЙ ИМПОРТ
https://docs.unity3d.com/Manual/class-AnimationClip.html
69Taming Performance Within Unity
![Page 70: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/70.jpg)
OPTIMIZE TRANSFORM HIERARCHY
http://www.strichnet.com/how-to-improve-the-performance-of-unity3d-animations/Уменьшает Animator Overhead
70Taming Performance Within Unity
![Page 71: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/71.jpg)
УМЕНЬШЕНИЕ ВЕСА АНИМАЦИЙ
71Taming Performance Within Unity
![Page 72: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/72.jpg)
OPTIMIZE TRANSFORM HIERARCHY
Около 30% экономии памяти
72Taming Performance Within Unity
![Page 73: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/73.jpg)
GPU SKINNING
Снижает нагрузку на CPU, повышает нагрузку на GPU
CPU
CPU
Трансформ костей
Трансформ вертексов
+
73Taming Performance Within Unity
![Page 74: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/74.jpg)
ОБЩИЕ ОПТИМИЗАЦИИ
Количество SkinnedMesh: 1
Используйте Cull Completely
Используйте Mecanim, если нужен blending/transition. В другом случае — legacy/аналог
Не дублируйте, используйте Retargeting
Минимизируйте количество костей в SkinnedMesh
Разделяйте Forward/Inverse кинематики
Старайтесь избегать сложных transform-иерархий
Избегайте scale-анимаций в SkinnedMesh AnimationClip
Используйте BodyMask для отсекания элементов (пальцы и т.д.)
Используйте Hash вместо String при скриптинге Mecanim
74Taming Performance Within Unity
![Page 75: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/75.jpg)
РАБОТА С ТЕКСТУРАМИ И СПРАЙТАМИ
75Taming Performance Within Unity
![Page 76: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/76.jpg)
КОРРЕКТНЫЙ ИМПОРТ
https://docs.unity3d.com/Manual/class-TextureImporterOverride.html
76Taming Performance Within Unity
![Page 77: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/77.jpg)
АТЛАСИРОВАНИЕ И УПАКОВКА ТЕКСТУР
77Taming Performance Within Unity
![Page 78: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/78.jpg)
using UnityEngine; using System.Collections;
public class ExampleClass : MonoBehaviour
{ public Texture2D[] newAtlas; public Rect[] rects; void Start() { Texture2D atlas = new Texture2D(8192, 8192); rects = atlas.PackTextures(newAtlas, 2, 8192); }}
АТЛАСИРОВАНИЕ ТЕКСТУР
https://docs.unity3d.com/ScriptReference/Texture2D.PackTextures.html
78Taming Performance Within Unity
![Page 79: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/79.jpg)
АТЛАСИРОВАНИЕ СПРАЙТОВ
https://docs.unity3d.com/Manual/SpritePacker.html
79Taming Performance Within Unity
![Page 80: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/80.jpg)
АТЛАСИРОВАНИЕ ТЕКСТУР
Уменьшает overhead при смене текстур/спрайтов
Уменьшает overhead при работе с текстурами в памяти
Будьте внимательны с Read/Write Enabled (двойная аллокация памяти). По умолчанию — отключать.
Уменьшает количество материалов на сцене, DrawCalls
80Taming Performance Within Unity
![Page 81: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/81.jpg)
РАБОТА С СИСТЕМАМИ ЧАСТИЦ
81Taming Performance Within Unity
![Page 82: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/82.jpg)
ОБЩИЕ РЕКОМЕНДАЦИИ
ПАРАМЕТР WITHCHILDREN == FALSE
КЭШИРУЙТЕ МАССИВ СИСТЕМ ЧАСТИЦ CUSTOM CULLING
82Taming Performance Within Unity
![Page 83: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/83.jpg)
MODULE PERFORMANCE
6000
5000
4000
3000
2000
1000
0
Co
llisi
on
Cu
sto
m D
ata
Ext
ern
al F
orc
es
Forc
es
Ove
r Li
feti
me
Inh
eri
t Ve
loci
ty
Lig
hts
Lim
it V
elo
city
O
ver
Life
tim
e
Min/Max perfomance based on module settings
No
ise
Ro
tati
on
By
Spe
ed
Ro
tati
on
Ove
r Li
feti
me
Shap
e
Size
By
Spe
ed
Size
Ove
r Li
feti
me
Sub
Em
itte
r
Trai
l
Trig
ge
r
Ve
loci
ty O
ver
Life
tim
e
83Taming Performance Within Unity
![Page 84: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/84.jpg)
SHAPE MODULE
1.4
1.2
1
0.8
0.6
0.4
0.2
0
Edg
e
Tim
e (M
S)
Bo
x
Bo
x Sh
ell
Bo
x Ed
ge
Do
nu
t
Co
ne
Vo
lum
e
He
mis
ph
ere
Me
sh (V
ert
ex)
Me
sh (T
rian
gle
)
Me
sh (E
dg
e)
84Taming Performance Within Unity
![Page 85: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/85.jpg)
MINMAXCURVE
Scal
ar
Tim
e (M
S)
Two
Sca
lars
Cu
rve
Two
Cu
rve
s
Cu
rve
Slo
w
Two
Cu
rve
s Sl
ow
3000
2500
2000
1500
1000
500
0
85Taming Performance Within Unity
![Page 86: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/86.jpg)
MINMAXGRADIENT
Co
lor
Tim
e (M
S)
Two
Co
lors
Co
lor
List
Gra
die
nt
Two
Co
lors
Lis
t
Two
Gra
die
nts
3000
2500
2000
1500
1000
500
0
86Taming Performance Within Unity
![Page 87: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/87.jpg)
СИСТЕМЫ ЧАСТИЦ
The Unity particle system: tips, tricks
Particle Systems
UnityTips Particle System Performance
https://www.youtube.com/watch?v=_N4iL0SQ9q8
https://docs.unity3d.com/Manual/ParticleSystems.html
https://blogs.unity3d.com/ru/2016/12/20/unitytips-particlesystem-performance-culling/
87Taming Performance Within Unity
![Page 88: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/88.jpg)
ФИЗИКАОСНОВНАЯ ЗАДАЧА
БАЛАНС МЕЖДУ ТОЧНОСТЬЮ РАСЧЕТА ФИЗИКИ И ЗАТРАТАМИ РЕСУРСОВ
88Taming Performance Within Unity
![Page 89: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/89.jpg)
БИБЛИОТЕКИ ОБРАБОТКИ ФИЗИКИ
2D 3D
89Taming Performance Within Unity
![Page 90: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/90.jpg)
ЧАСТОТА ПРОСЧЕТА ФИЗИКИ
https://docs.unity3d.com/Manual/class-TimeManager.html
90Taming Performance Within Unity
![Page 91: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/91.jpg)
ВЗАИМОДЕЙСТВИЕ С ФИЗИЧЕСКИМ ДВИЖКОМ
FixedUpdate() Update()
OnTrigger***() Coroutines
OnCollision***()
https://docs.unity3d.com/Manual/ExecutionOrder.html
91Taming Performance Within Unity
![Page 92: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/92.jpg)
ТИПЫ КОЛЛАЙДЕРОВ
Rigidbody
STATIC
Rigidbody
DYNAMIC
Rigidbody
KINEMATIC
Is Kinematic
https://docs.unity3d.com/Manual/CollidersOverview.html
92Taming Performance Within Unity
![Page 93: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/93.jpg)
МАТРИЦА СТОЛКНОВЕНИЙ
https://docs.unity3d.com/Manual/CollidersOverview.html
93Taming Performance Within Unity
![Page 94: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/94.jpg)
ПРАКТИЧЕСКОЕ ПРИМЕНЕНИЕ STATIC COLLIDER
Runtime Transform
Не добавляйте/удаляйте в Runtime
WARNING!
Статическая геометрия
Unity формирует отдельный batch для static colliders, упрощаются операции просчета
94Taming Performance Within Unity
![Page 95: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/95.jpg)
ПРАКТИЧЕСКОЕ ПРИМЕНЕНИЕ DYNAMIC COLLIDERS
Discrete Continuous
Collision with static colliders
Collision with every collider
ContinuousDynamic
CPU Usage
Change position
Check collision
Linear interpolation + collision check
Priority
95Taming Performance Within Unity
![Page 96: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/96.jpg)
СОСТОЯНИЯ RIGIDBODY
Active Sleeping
https://docs.unity3d.com/Manual/class-PhysicsManager.html
96Taming Performance Within Unity
![Page 97: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/97.jpg)
ОПТИМИЗАЦИЯ ИСПОЛЬЗОВАНИЯ RAYCAST
Контролируйте длину Raycast
Активно используйте Layer Mask
Старайтесь избегать Raycast в mesh collider
Используйте NonAlloc methods (RaycastNonAlloc etc.)
https://docs.unity3d.com/ScriptReference/Physics.Raycast.html
97Taming Performance Within Unity
![Page 98: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/98.jpg)
ОБЩИЕ ОПТИМИЗАЦИИ
Стремитесь к Scale 1:1:1
Стремитесь к Pivot 0:0:0
Отключайте/удаляйте Ragdoll, который не используется
Уменьшайте Solver Iterations для Unity joints
Значение массы держите в пределах [0.1;10]Присваивайте степень точности Discrete
Активно используйте LayerMaskУвеличивайте Timestep
Увеличивайте Sleeping thresholdЕсли не требуется моментальная синхронизация всех объектов, отмечайте Rigidbody — IsKinematic
Старайтесь использовать Primitive Colliders чаще, Mesh Colliders реже
Если высокая точность/частота вычислений не требуется
98Taming Performance Within Unity
![Page 99: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/99.jpg)
РАБОТА С ПОДСИСТЕМОЙ ФИЗИКИ
Physics best practices
PhysX in Unity 5.0
High performance physics in Unity 5
https://unity3d.com/ru/learn/tutorials/topics/physics/physics-best-practices
https://www.slideshare.net/AnthonyYakovlev/unite14-physics
https://blogs.unity3d.com/ru/2014/07/08/high-performance-physics-in-unity-5/
99Taming Performance Within Unity
![Page 100: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/100.jpg)
АУДИООсновная задача
Баланс между нагрузкой CPU и использованием памяти
100Taming Performance Within Unity
![Page 101: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/101.jpg)
ПОДСИСТЕМА AUDIO
Audio Clip
Audio Source Native Plugins SDK
Audio Mixer
Audio Listener
Audio Filter
Reverb Zone
ОСНОВА УНИФИКАЦИЯ НАСТРОЙКА
https://docs.unity3d.com/Manual/AudioMixerNativeAudioPlugin.html
101Taming Performance Within Unity
![Page 102: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/102.jpg)
ИМПОРТ АУДИОКЛИПОВ
CPU Usage
Memory usage
Decompress On Load
Использовать в большинстве случаев
Большие файлы/есть проблемы с ОЗУ
Background music
Compressed In Memory
Streaming
https://docs.unity3d.com/ru/530/Manual/class-AudioClip.html
102Taming Performance Within Unity
![Page 103: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/103.jpg)
ЧАСТЫЕ ПРОБЛЕМЫ
Большое количество AudioSource
Использование CPU
Большое количество референсов к AudioClips
Занимает память во время работы сцены
Если PreloadAudioData == True
https://docs.unity3d.com/ru/530/Manual/class-AudioClip.html
103Taming Performance Within Unity
![Page 104: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/104.jpg)
БОЛЬШОЕ КОЛИЧЕСТВО AUDIOSOURCE
Жесткое ограничение
количества активных
AudioSource (Pooling/Culling)
Жесткое ограничение
количества обращений
к одному и тому же AudioClip
Экономим использование CPU
104Taming Performance Within Unity
![Page 105: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/105.jpg)
_loadedAudioAsset = Resources.Load(resourcePath) as AudioClip;
Resources.UnloadAsset(_loadedAudioAsset);
АТЛАСИРОВАНИЕ ТЕКСТУР
Загружаем нужный AudioClip вручную
Assets/Resources...
Выгружаем из памяти ненужный AudioClip
Экономим память
105Taming Performance Within Unity
![Page 106: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/106.jpg)
РЕКОМЕНДАЦИЯ: НЕ ДУБЛИРУЙТЕ, ИСПОЛЬЗУЙТЕ AUDIO MIXER
https://docs.unity3d.com/Manual/CollidersOverview.htmlЭкономим память
106Taming Performance Within Unity
![Page 107: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/107.jpg)
ИМПОРТ АУДИОКЛИПОВ
107Taming Performance Within Unity
![Page 108: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/108.jpg)
РЕКОМЕНДАЦИЯ: БАЛАНС МЕЖДУ CPU/RAM
108Taming Performance Within Unity
![Page 109: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/109.jpg)
РАБОТА С ПОДСИСТЕМОЙ АУДИО
Simple Audio Manager
Creating a flexible audio system in Unity
Tips & Tricks for Unity Audio Memory
http://www.jonathanpalmergd.com/2015/04/05/unity-simple-audiomanager/
http://overdevelop.blogspot.com/2014/04/creating-flexible-audio-system-in-unity.html
http://overdevelop.blogspot.com/2014/04/creating-flexible-audio-system-in-unity.html
109Taming Performance Within Unity
![Page 110: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/110.jpg)
UnityUIОсновная задача
Формирование оптимальной структуры для отрисовки UI
110Taming Performance Within Unity
![Page 111: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/111.jpg)
БАЗОВАЯ СТРУКТУРА, ПОРЯДОК ОТРИСОВКИ UI-ЭЛЕМЕНТОВ
Alpha Blending,Transparent
Graphic
Drawable Geometry
Batch\ReBatch
Rect Transform
Layout
CANVAS CANVAS UPDATE REGISTRY
111Taming Performance Within Unity
![Page 112: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/112.jpg)
ВИЗУАЛЬНАЯ ЧИСТОТА ОБМАНЧИВА: OVERDRAW
Каждый UI-элемент прозрачен
112Taming Performance Within Unity
![Page 113: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/113.jpg)
КАТЕГОРИИ ПРОБЛЕМ, ПРОФИЛИРОВАНИЕ
Время CPU на генерацию геометрии (например, текст)
Время CPU на формирование Canvas Batch
Затраты CPU на ReBatch за счет Dirty Canvas
«Дорогие» шейдеры для обработки GPU
Unity UI Profiler
113Taming Performance Within Unity
![Page 114: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/114.jpg)
ПЕРВОСТЕПЕННАЯ ОПТИМИЗАЦИЯ
СОЗДАНИЕ SUBCANVAS
МИНИМАЛЬНОЕ КОЛИЧЕСТВО RAYCAST TARGET
POOLING ДЛЯ SCROLLVIEW- ЭЛЕМЕНТО И АНАЛОГОВ
Canvas
SubCanvas_01 SubCanvas_02
114Taming Performance Within Unity
![Page 115: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/115.jpg)
ПЕРВОСТЕПЕННАЯ ОПТИМИЗАЦИЯ
Dirty Layouts не рождаются, ими становятся
Animator помечает Canvas Dirty в КАЖДОМ кадре. (даже если визуально ничего не происходит)
• OnEnable/OnDisable
• Reparenting
• OnDidApplyAnimationProperties
• OnRectTransformDimensionsChanged
• … to be continued
Старайтесь избегать Layout Groups, используйте Anchors
115Taming Performance Within Unity
![Page 116: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/116.jpg)
«ДОРОГИЕ» ШЕЙДЕРЫ ДЛЯ ОБРАБОТКИ GPU
Multipass?
Z-Write?
...
https://gist.github.com/ArturoNereu/9ef65eba9c3c4bd63062cbe408e4f81a
116Taming Performance Within Unity
![Page 117: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/117.jpg)
ПЕРВОСТЕПЕННАЯ ОПТИМИЗАЦИЯ
Проведите аудит анимаций в UI. «Красоту» распределяем по уровням Quality Settings
Максимальный merge типовых элементов (иконка+товар, воин+иконка класса и т. д.)
Отключаем Camera output, который рендерится за UI
Нужен WorldSpace Canvas? Кэшируем ссылку на камеру (иначе происходит вызов функции)
Отключаем «перекрытые» UI-элементы
Используем Best Fit и Pixel Perfect если ОЧЕНЬ нужно, иначе деактивируем
Если требуется отрисовка 3D объектов, используем Render Texture
Вместо onEnable/Disable отключаем/включаем компонент Canvas
117Taming Performance Within Unity
![Page 118: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/118.jpg)
РАБОТА С UnityUI
A guide to optimizing Unity UI
Enhanced Scroller
https://unity3d.com/ru/learn/tutorials/temas/best-practices/guide-optimizing-unity-ui
https://www.assetstore.unity3d.com/en/#!/content/36378
118Taming Performance Within Unity
![Page 119: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/119.jpg)
СОСТАВЛЯЮЩИЕ ЭФФЕКТИВНОЙ РАБОТЫ С ДВИЖКОМ UNITY
Удобство/ скорость работы с редактором
Работа с проектом
Работа с подсистемами Unity
ПОИСК РЕШЕНИЙ
119Taming Performance Within Unity
![Page 120: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/120.jpg)
УЧИТЕ ТЕОРИЮ
Софт меняется, принципы остаются
120Taming Performance Within Unity
![Page 121: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/121.jpg)
УЧИТЕ ТЕОРИЮ (НЕ ТАК)
121Taming Performance Within Unity
![Page 122: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/122.jpg)
ОТВЕТЫ НА ВОПРОСЫ
GitHub
UnityAnswers
#unity3d
#gamedev
http://answers.unity3d.com
122Taming Performance Within Unity
![Page 123: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/123.jpg)
НОВАЯ ИНФОРМАЦИЯ КАЖДЫЙ ДЕНЬ
123Taming Performance Within Unity
![Page 124: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/124.jpg)
БУДЬТЕ ОТКРЫТЫ К ОБЩЕНИЮ
Просите feedback Делитесь опытом
Посещайте мероприятия Пробуйте новые подходы, техники, инструменты
124Taming Performance Within Unity
![Page 125: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/125.jpg)
Научиться можно только тому, что любишь
И. Гёте
125Taming Performance Within Unity
![Page 126: TAMING PERFORMANCE WITHIN UNITY...COMPANY INTRODUCTION 7 студий 250 000 000 игроков 15 проектов 150 стран Taming Performance Within Unity 3 • Составляющие](https://reader033.vdocuments.mx/reader033/viewer/2022042114/5e912efb9e491000aa443d71/html5/thumbnails/126.jpg)
THANK YOU!QUESTIONS?
126Taming Performance Within Unity