Pull to refresh
57
0
Павел @Tar

Ведущий программист

Send message
Стало ещё запутанней. Каким-то непонятным образом привлекли комплексные числа (почему не гиперкомплексные?). Без всяких объяснений пусть в эту сторону — такое число, а в эту — такое. А зеркало пусть с этими числами вот так делает. «по довольно сложным причинам, в которые я пока не буду вдаваться».
Зачем нам «штуковина», возвращающая (a² + b²)? Ну да, она скажет, что 0-1*i и -1+0*i равны. Но ведь это мы сами выбрали эти числа и эту формулу.
Много читал о квантовой механике на википедии и эта статья — наиболее запутанная из прочитанного.
Ещё один совет по оптимизации — помогает указание очерёдности отрисовки объектов. К примеру, землю лучше всего рисовать последней, т.к. она часто закрыта объектами. Если на земле сложный шейдер, то выгода может быть существенной.

Порядок отрисовки можно менять в шейдере или в материале.
Спасибо, хорошая статья.

Сейчас кажется уже пофиксили, но был в Unity (версии ~3.4) забавный баг. Если в коде встречалось Input.acceleration, то при сборке проекта подключалась библиотека акселерометра и молча вставала в общий update. Отъедая ~5-7 ms, что для намеченных 30fps было критично.
Причём этот Input.acceleration мог быть в никем не используемом классе и даже не попадать в сборку.
Насколько мне известно, только non-uniform scale разбивает dynamic batching.

Насчёт 2D игр — тут можно посмотреть игры с комментариями разработчиков, там есть 2D игры.
Кешировать transform надо потому, что когда вы пишите
gameObject.transform
Unity делает
gameObject.GetComponent<Transform>()
Раздражает, когда приходится «подчищать хвосты» за коллегами. Выглядит примерно так — «скорее, у нас завтра релиз, тестеры нашли баг, что граната взрывается в руках и уровень не пройти». На возражение что этот баг в сто раз быстрее исправит человек, который его и создал, заявляется что человек этот в отпуске / ушёл в декрет / уволился и т.д. И начинается копание в чужом коде, когда кол-во wtf в минуту зашкаливает.

Раздражает непонимание менеджерами сложности проблемы. Если взять для примера предыдущий абзац, то оказывается, что по-хорошему надо считать время анимации замаха, грузить из конфигов задержку до взрыва и т.д. что занимает время. «Нет, надо скорее, это же наверняка всего пару цифр поменять». Заканчивается зачастую тем, что ставится ещё один костыль.
Осталось сделать такую для дробовика. Чтобы с распознаванием, расчётом опережения и автоспуском. Летят утки — помахал ружьём в их сторону и готово.
Примитивность префабов в том, что не работает вложенность. Очень сильно мешает. Если префаб А содержит префаб Б, то изменение в иерархии префаба Б (добавить child'ом шарик), никак не отразиться на А.
И в 4ке они это так и не починили.
Перепробовал довольно много гарнитур, остановился на Sennheiser PC 350.
Большие (уши их не касаются) амбушюры, удобная дужка, на голове не ощущаются. Хороший звук, хороший микрофон. Можно хоть весь день в них сидеть. Встречал их неоднократно у друзей/коллег, которые любят командные игры.
Минусы — большие «уши» обеспечивают меньшую шумоизоляцию, цена кусается.
Не скажите, мы игру довольно долго на С# портировали. Там много тонкостей вылезает. Взять те же указатели и деструкторы.
Напишу с точки зрения программиста. Нужно ограничивать безудержное воображение гейм-дизайнеров после старта разработки.
Концепция (или, как его чаще называют, GDD — Game Design Document) может меняться очень сильно. Для примера, наблюдал за проектом, который из гонок за год пытался трансформироваться в файтинг. Ни того ни другого игроки не увидели.
Странно, мне он неудобств не доставляет. Много работал с VC, Eclipse, легко перешёл на MonoDevelop. Есть автодополнение, автоформатирование, по коду прыгает.
Unity использует Mono, .Net 3.5
Не совсем понял про сервер, для многопользовательских игр есть Photon
Нет. Не социалки.
В сети много уроков, в том числе и на русском, в том числе и на хабре. Вот пара ссылок для примера:
http://habrahabr.ru/post/112287/
http://unity3d.ru/distribution/viewforum.php?f=11
Порог вхождения довольно низкий. При минимальных навыках программирования сделать прыгающий шарик можно практически сразу.
Можно писать на C#, Javascript и Boo (схожий с Python'ом)
10+ лет gamedev'а, сейчас пишу под Unity 3D.
В gamedev'е костыльных программистов наверное больше всего. Требования часто меняются на лету, любая заранее созданная архитектура часто ломается. Приходится искать золотую середину между «блин, надо переписать, эта фича никак сюда не влазит» и «хм, пара статических переменных, singleton, и вроде заработает».
Сайт www.minjust.ru/nko/fedspisok/
"… Законодательством Российской Федерации предусмотрена ответственность за производство, хранение или распространение экстремистских материалов..."

пункт 674. Файлы:
0sehme7w3 lr4.wmv; Ol.wmv; 02.wmv; 03.wmv; 04.wmv,…

Т.е. если я создаю файл 02.wmv, то я нарушаю закон?
Делали с ним игру ~ год назад. Плохая интеграция с Unity в том плане, что всё взаимодействие Unity-Scaleform идёт через одну функцию. Т.е. надо писать интерфейс. Также плагин работал только с AS2.0, что было ужасно неудобно.
Сейчас они вроде для мобильного плагина прикрутили AS3.0

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Date of birth
Registered
Activity