Рубрики
Unity Unity основы.Scene Unity основы.Scene.GameObject.Inspector Освещение

Глобальное Освещение через инспектор

Статическое Освещение
Динамическое Освещение

Виды Освещения

Backed GI
запечённое освещение
освещение рассчитывается ещё до того как игра стартовала
unity создаёт текстуру освещения к объектам, которую применили и забыли.
делаем один раз
хорошо использовать для уровней с малым количеством динамических объектов
подходит для мобильных устройств (производительный)
не подходит для смена дня и ночи

Realtime
заранее рассчитанное реалтайм освещение
текстура освещения строится в процессе игры

Рубрики
Texture Unity Unity основы.Scene.GameObject.Inspector

Инспектор Текстуры

FilterMode
Point нет фильтра
чёткие квадраты-пиксели
Bilinear,Trilinear размытая текстура,
используется для текстур высокого разрешения

WrapMode
Repeat текстура повторяется
возникает косяки текстуры если она не бесшовная
Clamp текстура не повторяется

Рубрики
Canvas RectTrasform Unity unity-UI

Трансформация UI элемента на сцене

//загрузка ui префаба
var go = PrefabUtility.LoadPrefabContents(ФайлПрефаба);
//после переноса объекта в родитель изменятся Scale 
go.transform.SetParent(gameObject.transform);         
//получение компонента Трансформация у элемента ui       
var rt = go.GetComponent<RectTransform>();
//настройка центра элемента ui        
rt.pivot = Vector2.zero; 
//масштаб элемента ui        
rt.localScale = Vector3.one;  
//размеры ui элемента width,height,depth       
rt.sizeDelta = new Vector3(60, 30, 0);
//изменить Top координаты элемента относительно родителя
rt.SetInsetAndSizeFromParentEdge(RectTransform.Edge.Top, 0.5f*(gameObject.transform.childCount-2)* (rt.rect.height+10), rt.rect.height);
//изменить Right координаты элемента относительно родителя
rt.SetInsetAndSizeFromParentEdge(RectTransform.Edge.Right, rt.sizeDelta.x, rt.rect.height);
//изменение центра элемента ui по оси x
rt.pivot = new Vector2(2,0);
//Растянуть ui элемент относительно родителя по оси x
rt.localPosition = new Vector3(0, rt.localPosition.y, 0);         rt.anchorMin = new Vector2(0, 0.5f);         
rt.anchorMax = new Vector2(1, 0.5f);
//После можно прилепить ui вверх относительно родителя
rt.SetInsetAndSizeFromParentEdge(RectTransform.Edge.Top, 0.5f * (gameObject.transform.childCount - 2) * (rt.rect.height + 10), rt.rect.height);
//прилепить ui элемент вверх-слева относительно родителя
rt.SetInsetAndSizeFromParentEdge(RectTransform.Edge.Left, 0, rt.rect.height);
//изменить LEFT         
rt.offsetMin = new Vector2(left, rt.offsetMin.y);         
//изменить RIGHT         
rt.offsetMax = new Vector2(right, rt.offsetMax.y);
//изменить TOP
rt.offsetMax = new Vector2(rt.offsetMax.x, top);
//изменить BOTTOM
rt.offsetMin = new Vector2(rt.offsetMin.x, bottom);