Во-первых, всех с новым годом етс.
По случаю чего даю ссылку на
Истинное Новогоднее Обращение Владимира Владимировича Путина (виа Зи) (мой моск, оказывается, основательно испорчен разного рода эмбиентом: я сидел, слушал и получал удовольствие. Там голоса!).
И ещё ссылку на
обращение Л. И. Брежнева по случаю нового, 1971 года (
виа Жмурри). Вот
(
Read more... )
Визуальная часть движка работает на всамделишных порталах, насколько я знаю. Ну то есть на самом деле там BSP-деревья, которые, насколько я понимаю, позволяют в том числе и делать порталы. Если что, ещё в дюкнюкеме3д было несколько уровней с неевклидовой геометрией, то есть заходя в как бы одну и ту же комнату из разных дверей ты оказывался в разных местах. Единственная проблема состоит в том, что рекурсию надо когда-нибудь останавливать, что они и делают после пяти, кажется, проходов, рендеря на последний портал картинку с предпоследнего. А ещё даже была специальная игра, Madspace, в которой на этом был основан геймплей, то есть натурально были места, где в углу комнаты стоит колонна, ты её обходишь и оказываешься в совсем другом месте. Правда, я в неё не поиграл, потому что на новых компах она уже не идёт, а под dosbox ещё тормозит.
Основные трудности у них были именно с физикой, там да, там они приближённо аппроксимировали форму объектов в процессе прохождения через портал и всё такое. Хотя если бы физический движок изначально писался в предположении о необходимости такой штуки, проблем бы не было, наверное.
Кстати, тут дико уместно вспомнить сравнительно недавнюю игрушку Prey (хотя, хихи, анонсировали её ещё _до_ Duke Nukem Forever), в которой были точно такие же порталы, только предефайнутые и гораздо круче. Например, там было такое: комната, посередине в стеклянной витрине висит шарик. В стенке комнаты -- портал, который выходит на стенку маленького домика на шарике. Туда залезаешь и обнаруживаешь себя на этом маленьком шарике (на котором гравитация всегда направлена к центру) причём ты там соответственно уменьшился в размерах. И это всё плавно, без затемнений экрана, можно сидеть в самом портале и смотреть с одной стороны на свою огромную задницу в комнате или, с другой стороны, на свою малюсенькую задницу на шарике.
Но это всё кусочно-евклидова геометрия. Существенно неевклидову наверное тоже можно сделать, но только рейтрейсингом и это будет тормозить. Потому что линейные преобразования быстрее и проще нелинейных. И поэтому поддерживаются видеокартами.
Reply
Reply
Во-первых, я её тоже проходил с developers commentary.
Во-вторых, я, в силу определённых причин, намного лучше представляю себе, как оно всё работает. Под "виртуальной камерой" понимается render to texture с определённой точки с последующим накладыванием оной текстуры куда-нибудь. Это делается на последнем шаге, до этого всё рендерится прямо. Я не поручусь, что им не приходится дублировать объекты из-за какого-нибудь глупого ограничения, но я такого не помню. А проверять влом. В любом случае, это совершенно неважно.
Reply
В общем, теперь понятно, спасибо.
Reply
насколько я помню из каментов, у них начались проблемы с производительностью и они решили снизить точность физ взаимодействия объектов в портале применяя упрощённые алгоритмы.
Reply
Leave a comment