Состоялся релиз новой версии движка Unity - Unity 5!
Напоминаю, что в новом движке улучшили стандартные шейдеры (одна из ключевых проблем предыдущих версий движка), физику, отражения и эффекты, сделали редактор более удобным, и внесли много нового функционала.
Движок доступен в двух версиях - бесплатная Personal Edition и Professional Edition с подпиской от 75 долларов в месяц. Обе версии позволяют пользоваться всем возможным функционалом движка, создавая игры на все платформы, при этом, от разработчиков не просят никаких отчислений, даже в бесплатной версии. Основное отличие платной версии от бесплатной - куда более качественная поддержка, и набор вспомогательного функционала и привилегий, например, доступ к бэта-версиям движка.
Скачать новый движок можно на оф. сайте
Новость из оф. блога
Смотрите также:
Комментарии
RSQR, хз пока. Кстати, на мобильниках даже на про версии не дают сплеш менять, только с дополнениями.
Движок совместим с проектами предыдущих версий, кстати. Правда, производит переработку.
Из MonoBehaviour убрали все свойства
Те, кто заглянул в скрипты своих старых проектов, открытых и преобразованных в Unity 5, могли заметить, что обращения к стандартным свойствам типа collider, rigidbody, renderer и т.д. были заменены на GetComponent для соответствующего класса. Всё потому что разработчики попросту убрали все эти свойства из класса Component и его производных. Аргументировали они это тем, что в большинстве скриптов эти свойства попросту ни к чему. Поэтому, чтобы не захламлять стандартный MonoBehaviour, со свойств оставили только transform. Для доступа к остальным компонентам теперь надо использовать GetComponent.
lentinant, ну так и правильно. Давно уже нужно было сделать такое. Теперь подход в создании шаблонов поведения, однако, сведется к написанию своих прослоек.
namespace UnityEngine
{
public abstract class CashBehaviour : MonoBehaviour
{
private Transform _transform;
public new Transform transform
{
get
{
if (_transform == null)
_transform = base.transform;
return _transform;
}
}
private GameObject _gameObject;
public new GameObject gameObject
{
get
{
if (_gameObject == null)
_gameObject = base.gameObject;
return _gameObject;
}
}
}
}Надо потестить как ведет себя компилятор на новой юньке. Вдруг почистили синтаксический сахар
жду результатов)
хехе, главное вспомнить конкретные случаи, как эти баги еще и воспроизводились. Ну ничё, ща пороемся, найдем
Так, по косякам:
- если вы писали DLL то они соответственно не преобразуются при смене версии. Соответственно тут тупиково, DLL надо переписывать, если они ссылались на UnityEngine.dll/UnityEditor.dll
- теперь нельзя переносить файлы из папки в окно проекта. Возможно, временное неудобство.
- при удалении файлов из проекта они удаляются насовсем, минуя корзину. Возможно, временное неудобство.
- UnityVS надо бы обновить //У меня не находятся даже пакеты такие для импорта в проект.
Хорошие новости:
- Баг компилятора с символом = в параметре исправлен
Теперь можно спокойно кешировать в однострочнике и приравнивать что-то в функции.
Например:
public new Transform transform
{
get
{
if (cashedTransform == null)
cashedTransform = base.transform;
return cashedTransform;
}
}
private Transform cashedTransform;Теперь можно записать короче:
public new Transform transform
{
get { return cashedTransform ?? (cashedTransform = base.transform); }
}
private Transform cashedTransform;- За баг с (неймспейсами + перегрузки) - при старых условиях себя не проявляет, вероятно отсутствует
Плохие новости:
- Баг с дженерик типами остался (то есть такая вложенность не держится CreateInstance<MyClass<int>>())
За баг с (неймспейсами + перегрузки) - при старых условиях себя не проявляет, вероятно отсутствует
не понял...
а то что ?? починили, то круто!)



<a href= http://mosros.flybb.ru/viewtopic.php?f=2&t=635>Процесс получения диплома стоматолога: реально ли это сделать быстро?</a>