Вот с SQLite есть проблемы, но это отдельный раговор.
Можно по точнее какие проблемы? — уже как полгода перевел действующий проект на хранение данных в Sqlite? проект на ios, android… проблем с Sqlite не обнаружено, использовал Sqlitekit — который базируется на порте Sqlite под C# ( https://code.google.com/archive/p/csharp-sqlite/ ) что позволяет без препятственно использовать Sqlite на (почти любой платформе)… Собственно на ios, android — 100% работает
Тогда в этом есть смысл) почему то перемкнуло что в пункте 2 про NGUI, в пункте 3 про UGUI (наверно сыграла ассоциация UI и Unity часто в контексте) — обычно данное словосочетание ассоциируется с UGUI (наверно у тех кто мало работал с NGUI и много с UGUI) — спасибо
Большое спасибо за статью, но хотелось бы отметить, то что не упомянуто в статье (во всяком случае я не заметил)
1) Правильно ли я понял про списки? — данный подход можно использовать, только если на Canvas (на котором находится список) стоит Render mode — World Space:
1.1) Если будет стоять Overlay — то там камера вообще ненужна, т.к рендер UI происходит и без нее
1.2) Если Camera — то все UI элементы будут двигаться в 3D пространстве вместе с камерой (оставляя в кадре тот элемент который и был ранее) — получается прокрутку не осуществить двигая камеру…
2) Для небольших списков есть лайфхак, во Viewport списка, замест компонента Mask, установить Rect Mask 2D. Повышает производительность на слабых девайсах примерно в 1.5-2 раза.
если эт про Vulkan https://en.wikipedia.org/wiki/Vulkan_(API)… то тут вроде даже не корректное сравнение, сравнивать WebGL — как платформу запуска игры в браузере, и API низкого уровня для работы с GPU… я что то подумал есть нейкий конкурент Vulkan — типо Unity Web Player… кстати насчет вулкана
Unity – The engine will support Vulkan in an early state in Q3 2016
стандартный шейдер универсальный, так же как и сам Unity) думаю нету пока что нечего удивительно, что универсальный движок проигрывает узконаправленным… Если использовать мобильный шейдер, и тест проводить на мобилах fps двух кратно может подскачить (Standart shader — тяжеловат для мобил)
1000 в день?, в неделю в месяц? или понятия «времени» нету?) у юнитеков патчи выходят раз в неделю, для 3 веток… ну слава богу хоть миф о безбагованости UE развеян)… понятия впихнул новую фичу… куда? прямо в UE из подкоробки? -а оно там надо? — без документации, фича из коробки (которая мб 99% разрабам и не надо… Unity пошел по стапам «модульность» UE пошел по стапам «громоздкость»,,, всё из подкоробки тоже плохо… если чего то нету в Unity из под коробки, гугл поможет найти либо на гитхабах либо в asset store… но зачем пихать всё в одну коробку?
линк на ваш исходник игры который у вас сжирает всю память… с каждой веткой пятой версии идет не плохая оптимизация… в большинстве случаев сами разработчики говнокодят (используя кучу синглтонов, статиков, листов, словарей) и не оптимизуруют обычными LOD, и оклюженом графику, даже не запекают там где нужно освещение!!!.. Насчет багов согласен… Эта связано с поддержкой сразу нескольких версий Unity (иногда не верно мержат)… думаю после марта-апреля 2017 ситуация изменится… когда прекратят поддерживать 4 ветку… Link на демку к релизу 5.4… Ситуация с багами еще из за поддержки 22 платформ… и активное внедрение IL2CPP (планируют Все платформы) в частности IL2CPP думаю поможет чутка с говнокодерами (в некоторых местах ускорение работы алгоритмов замечено, да и технология совершенствуется)… Счас вам говнокодеры на блюпринте в UE зафигачат проекты)) посмотрим где хуже)
Вот к примеру этот, видеопроцессор Mali 400 (mp2) согласно открытым источникам Видеопроцессор на обычной рабочей частоте (275mhz) может обрабатывать 23млн треугольников в секунду. 23 000 000/30 = 766 666 треугольников в кадре (при частоте 30 кадров в секунду), турбо частота разгоняет до 400mhz (там еще больше будет обрабатывать в секунду). Конечно числа эти сугубо теоретические, есть много других факторов влияющие на производительность. но даже если брать в расчет что в полевых условиях цифры будут в 2-3 раза меньше, и брать расчет на бюджетные девайсы 3летней давности. думаю лимит в 80к-100к (по части треугольников) самое то. Лично запускал на бюджетном девайсе с Mali 400 (mp1) 70к спокойно тянуло, основная нагрузка была из за реалтайм теней-освещения, а так же шейдеров.
p.s Извиняюсь за оффтоп выше) путаю перенос строк и отправку текста на хабре)
Статья очень интересная и несомненно полезная получилась, особенно про опыт с издателем и оптимизацию кода. Вообщем благодарю за статью.
Ведь делать прототипы моделей в Unity гораздо удобнее, чем изучать моделирование. Если конечно, у вас в команде, нет моделлера, как у меня. У меня вообще никого не было).
Ccылка
на самом деле эту модельку можно еще как минимум оптимизировать в 1.5-2 раза (без потери качества) (зная маленькие азы 3д редактора, того же блендера).
Статистика показывала около 600 draw call (после работы автобатчинга) и 100.000 треугольников. Для сравнения — на текущий момент для сферической игры в вакууме рекомендуется иметь до 100 draw call и до 30.000 треугольников.
Я эту информацию 3 года назад слышал, сейчас слабые девайсы спокойно и 80к треугольников обработают)
Смутило тем что не понятно, если речь о прошлом причем тут LinkedIn? А если не о прошлом, а о настоящем тогда причем здесь Netscape Navigator и Windows 95? Честн я приравнял данный абзац как «крутое сочетания для взлома» в 21 веке, Windows 95 и NetScape — благодаря просмотру исходного кода страницы. А вы как поняли этот абзац?
Windows 95 и Netscape Navigator упоминаются в сериале, когда главный герой вспоминает свои первые шаги на пути взломщика. На скрине видно, как пользователь просматривает исходник HTML… А если кто-то смотрит исходники – он явно является опасным хакером!
Любой современный браузер как бы тоже позволяет просмотреть исходный HTML код веб страницы.
скрин
и никаких особо трудоемких усилий для этого не надо.
Можно по точнее какие проблемы? — уже как полгода перевел действующий проект на хранение данных в Sqlite? проект на ios, android… проблем с Sqlite не обнаружено, использовал Sqlitekit — который базируется на порте Sqlite под C# ( https://code.google.com/archive/p/csharp-sqlite/ ) что позволяет без препятственно использовать Sqlite на (почти любой платформе)… Собственно на ios, android — 100% работает
1) Правильно ли я понял про списки? — данный подход можно использовать, только если на Canvas (на котором находится список) стоит Render mode — World Space:
1.1) Если будет стоять Overlay — то там камера вообще ненужна, т.к рендер UI происходит и без нее
1.2) Если Camera — то все UI элементы будут двигаться в 3D пространстве вместе с камерой (оставляя в кадре тот элемент который и был ранее) — получается прокрутку не осуществить двигая камеру…
2) Для небольших списков есть лайфхак, во Viewport списка, замест компонента Mask, установить Rect Mask 2D. Повышает производительность на слабых девайсах примерно в 1.5-2 раза.
Unity – The engine will support Vulkan in an early state in Q3 2016
p.s Извиняюсь за оффтоп выше) путаю перенос строк и отправку текста на хабре)
Статья очень интересная и несомненно полезная получилась, особенно про опыт с издателем и оптимизацию кода. Вообщем благодарю за статью.
Ccылка
на самом деле эту модельку можно еще как минимум оптимизировать в 1.5-2 раза (без потери качества) (зная маленькие азы 3д редактора, того же блендера).
Я эту информацию 3 года назад слышал, сейчас слабые девайсы спокойно и 80к треугольников обработают)