Изучение Unity 4 и проблемы ранних версий движка
09.09.2024 09:50:07
09.09.2024 09:50:07
Просто потому, что было очень много программерского и игрового опыта за плечами. Сложно потому, что движок в то время был очень молодым и не было нормального обучающего материала. По факту все изучалось по разрозненным видеоурокам, а проблемы решались через Google и Stack Overflow. Отсутствие структурированного материала оставляло много пробелов в базовых понятиях, даже таких элементарных, как поведение точки в трехмерном пространстве при изменении координат или наклона. На текущий момент есть отличная книга "Unity в действии", которая полностью решает эту проблему. Начал читать, чтобы освежить знания, и мне будет необходимо ее дочитать до того, как я сделаю следующий практический шаг в реализации. Чуть позже расскажу почему.
Собственно, начиналось все с Unity 4, и очень быстро стало понятно, что молодость движка — большая проблема. Мало того, что отсутствовали нормальные базовые компоненты (в т.ч. двухмерный UI был на совершенно элементарном уровне, шейдеров для создания современной картинки просто не было), так еще Unity болел совсем детскими болезнями. Каждое обновление движка, даже минорное, ломало что-нибудь в проекте. Мажорное обновление до Unity 5 сломало вообще все из-за добавления т.н. Global Illumination: пришлось переделывать каждую сцену, переезжать на новые версии вспомогательных компонент и т.п.
Свои файлы с настройками сцен и прочего Unity тогда хранил в бинарном формате, что совсем не дружило с системами контроля версий. Откаты изменений были просто адом, а хранилище разрасталось с астрономической скоростью.
В теории можно было бы оставаться на Unity 4, конечно, но это автоматически означало отказ от всего нового в движке, что не было вариантом, учитывая то, что Unity был на очень раннем этапе и в нем не было еще очень многого, чем обладают современные движки.
К слову, о движках в принципе. Помню, во времена еще ранней разработки Genesyx подходили ко мне разные люди и просили поделиться движком для создания таких игр. Я тогда искренне не понимал, что им нужно, ведь никакого движка не использовалось, да и не могло использоваться, потому что Genesyx — это банально веб-приложение, созданное с нуля. После знакомства с Unity мне стало понятно, что такое движок и для чего он нужен. Расскажу и вам...


Gentyx
