Неделю назад я смотрел видео про телескоп Хаббл
На видео рассказывают о том, что чем дальше от нас звезда, тем в более далеком прошлом мы ее видим, в том числе мы можем увидеть вселенную во время ее зарождения. В какой-то момент говорят: "Представьте это как если бы вы смотрели на египетские пирамиды, и видели позади них фараонов, позади них кроманьонцев, а позади них динозавров".
Я задумался - а действительно? Предположим есть некая гипотетическая среда, в которой свет двигается со скоростью бегущего человека, и благодаря этому мы видим предметы тем далее в прошлом чем они от нас дальше находятся (что справедливо и для реального мира, просто не так чтобы заметно в быту) и, что интереснее, - видим самого себя в прошлом и других людей из разных времен одновременно, когда мы (или они) начинают двигаться быстрее света.
"Насколько сложно такую игру сделать?" - спросил я на ДТФ. В ответ я получил миллион ссылок на A Slower Speed of Light и прочие симуляции искажений Доплера, рассказы о том, что двигаться быстрее скорости света невозможно, что замедляющих свет сред не бывает, и прочую бесценную информацию, никак не относящуюся к сути вопроса, спасибо тебе, ДТФ. Однако в процессе ругани с комментаторами я примерно придумал, как можно сравнительно несложно накидать двумерный прототип, который даст некое условное представление о концепции. (Понятно что в идеале хотелось бы все это в честном 3D, но не будем торопиться.)
Фактически достаточно просто написать таблицу, куда записывается состояние ячеек на полу в зависимости от времени и далее заглядывать в прошлое этих ячеек настолько далеко, насколько далеко эти ячейки находятся от игрока. Чем дальше от нас участок пола - тем более далекое его прошлое мы показываем.
Здесь управляющийся на стрелках игрок, и весь мир показан субъективно с его точки зрения. Далее бегающие между вейпойнтами мобы - при этом можно увидеть где моб в текущий объективный момент времени (у него надпись над головой) так и где его проекции из прошлого, которые видит в данный момент игрок. Далее три бегунка слева настраивают скорость света, игрока и моба от 0 до 10 метров в секунду (одна клетка - метр). Следующие два бегунка - позволяют вручную бороться с багом, из-за которого персонажи либо мерцают (если бегунки слишком сильно выкручены влево) либо оставляют за собой инверсионные следы (если выкручено слишком вправо). По идее этот баг можно забороть, но для первого прототипа мне проще подкручивать бегунки вручную, вы постарайтесь не слишком обращать внимание ни на то ни на другое. Далее три галочки справа позволяют включать или отключать проекции игрока/мобов и так же отключать объективное положение мобов (объективное положение игрока отключать нельзя, подразумевается что сам себя он всегда видит там где надо, т.к. от него к самому себе свет летит условные 0 метров, т.е. мгновенно независимо от скоростей). Понятно, что должны быть еще и разнообразные искажения, но мы пока что на них забиваем. Надо же с чего-то начать.
Выставляем одного моба, бегающего по квадрату 4 на 4 метра, ставим скорость света на 5 м/с, скорость моба на 1м/с. Так же пытаемся избегать одновременно и морганий и инверсионных следов.
Ускорим моба до 4, так что он уже почти приближается к скорости света.
Пошли к более интересной теме. Что если моб бегает со скоростью света? Ставим на 5.
Хорошо, а что если моб бегает быстрее скорости света? Ставим 6.
Давайте посмотрим эффект лучше. Ставим 8
Ставим 10 и уменьшаем скорость света до 4, чтобы не только ускорить персонажа (быстрее десятки его ускорить технодема не позволяет) но и замедлить проекцию.
Несколько разочаровывающе? Конечно. Потому что самое интересное начинается не когда персонаж догоняет свою проекцию, а когда он ее обгоняет. Потому что тогда... (Уменьшаю скорость света до 3, т.е. теперь моб бегает в три раза быстрее света)
Ставим свет на 2. Моб теперь в 5 раз быстрее.
Теперь свет движется настолько медленно, что бегущая задом наперед во времени проекция не так уж и быстрее бегущей вперед во времени. Наконец, мы целенаправленно шли к этому, и вот дошли - максимум, который позволяет выкрутить технодема, это свет на 1, моб на 10
Технически можно выкрутить еще дальше, и выставить свет на 0, но результат ожидаемо будет...
Все это были только цветочки, потому что пока что бегал только один моб, а наш игрок стоял на месте. Что будет, если начнет двигаться игрок? Как он увидит пересечение светового барьера? Как увидит мобов? Увидит ли в прошлом себя? Как? Об этом в следующий раз.
(p.s. на гифках технодема выглядит несколько тормозной, в реальности она работает плавнее и ресурсов особо не жрет, я просто не умею в снимать видео с компьютера.)
Автор, извини, если что. Просто тема правда безумно крутая, и я бы искренне хотел увидеть адаптацию твоей идеи на большом экране
Прошу прощения за "навязчивость" но если вам нравится тема, то есть небольшая игра которая идёт ещё дальше(и про которую я уже написал два комментария в этом посте, потому что честно считаю что она имеет незаслуженно мало внимания).
Я вижу что у вас есть интерес к этой теме, поэтому я хотел бы вам ее порекомендовать.
Игра: Velocity Raptor
Суть игры как раз в манипуляциях скоростью света.
Сделана она в виде головоломки и с каждым уровнем все глубже и глубже углубляется в тему.
Сначала вы играете в "Ньютоновском мире" - где физика абсолютно нормальная.
После этого меняется скорость света и из-за этого искажается отображение мира, но бля для удобства пользователя есть режим выключающий это.
Из-за того что скорость света изменилась, меняются и скорости других объектов, что приводит к забавным артефактам, когда два объекта начинают двигаться относительно друг друга со скоростями близкими к скорости света: объекты начинают либо увеличиваться либо уменьшаться относительно друг друга и на этом завязаны головоломки в игре: уклониться от "пули" проще когда она имеет меньший размер, поэтому приходится двигаться неестественным и неочевидным для нашего понимания способом.
Дальше идут манипуляции со временем и цветами: так как цвет - это волна, то и его восприятие тоже будет изменяться от скорости света.
Пожалуйста, попробуйте, если найдете половину часа свободного времени.
Ссылка: https://testtubegames.com/velocityraptor.html
"Когда в Японии дичь придумывают, в России её воплощают. Когда дичь придумывают в России - приходит пора Японии".
Видел вопрос до этого в другом треде от автора - подумал что за наркоман в геймдев полез.. Щас увидел и подумал, что за гениальный наркоман!
Лайк! оч круто
НЕ ПОКАЗЫВАЙТЕ НОЛАНУ!
НЕ ПОКАЗЫВАЙТЕ НОЛАНУ!
НЕ ПОКАЗЫВАЙТЕ НОЛАНУ!
!УНАЛОН ЕТЙАВЫЗАКОП ЕН
ЬТАМ ЮОВТ БЕ УН
А вы уверены, что движение проекции в обратном направлении не возникает из-за стробоскопического эффекта?
А ведь у Александра Беляева есть рассказ на подобную тему: "Светопредставление".
Отличная идея для потенциальной игры.
Он еще должен пространственно деформироваться: сжиматься и расширяться. Почитай что-то о скоростях близких к скорости света. Время и расстояния изменяются, а у тебя почему-то все остается на своих местах
Это идея, конечно. Но к реальному свету она не имеет никакого отношения
К эффекту Доплера это не имеет отношения. Он физически уменьшаться в размерах должен. Если линейку приложить, другой размер будет
Автор осознанно приплетает физику самостоятельно и выдает свои псевдонаучные рассуждения. За незнание физики я никого не упрекаю, потому что сам её не знаю достаточно хорошо
Человек интересуется как сделать, а не как оно на самом деле в физике устроено, и в том посте, и уже отдельно в этом, специально уточнял, нет, блин, надо его научить, шо такое физика. И все это хотят вам донести
Автор изобрёл сетевой лаг. Только пинг зависит от расстояния между игроками.
Несложно написать мод для какой-нибудь игры. Только игроки, которые раньше страдали от этой несправедливости, вряд ли посчитают баг за фичу.
Жестокий кубок
Возможен.
Вначале ты куда-то бежишь, а потом ВЖУХ и оказываешься на старом месте, потому что сервер не дождался твоих пакетов с перемещениями и дропнул их.
Прикольно, правда, никакого отношения к скорости света не имеет, да и к физике в целом, но прикольно. Чего именно хотел добиться автор — непонятно.
Для начала - заставить человека задуматься. Потом глядишь, какой геймдиз и придумает геймплей с такой фичей. :)
Над чем задуматься и в чём практическое применение? Если эффект будет являться следствием а не фичей, я еще понимаю, но я с трудом могу придумать следствие, которое даст практические применение эффекту.
Ну был же биошок с заигрываниями с кватновой механикой по сюжету, были экшены с игрой со временем, даже принц персии с его песком времени, туда вполне можно прикрутить этот визуальный эффект на какого-нибудь босса или к мобам в определенной аномальной локации и будет выглядеть интересно, еще и с околонаучным подтекстом. Добавляет глубины проработки.
Есть похожая игра, соревновательный шутан Quantum Legaue, вроде так. Стрелялка с нарушением причинно-следственных связей)
На эту тему есть ещё такая игра от MIT
легко.
По сути это "туман войны", который осложняет прицеливание.
Итого:
- космосимы (ракадные)
- охота на каких-нибудь привидений
- какие-то командные игры на чточность позиционирования в динамическом окружении.
Это вот я не задумываясь.
Очень круто, я разве что попрошу сделать демку с минимумом механик. просто чтобы не затягивать первичное производство.
Какой-нибудь истории про спасение принцессы в духе рог-лайта будет за глаза (лишь бы было), раскрыть механику света через бой (контакт/дистанция/АОЕ, можно классической "триадой (+1)" маг-лучник-мечник (+хилер) либо кошкодевочка для стелса)
Будет вполне комплексно, могу по согласованным классам/персонажам попробовать генератор уровней накидать.
На Плоском мире у Пратчетта в тамошней физике скорость света равнялась скорости звука, тоже занятные эффекты возникали.
Кстати - да! :))
Всё жду, когда перестанут плодить глючные физики в играх, и начнут концептуальные делать.
Идею очень интересно реализовать в контексте какой-нибудь RTS (Назовём, условно, новый жанр LTS (Lazy Time Strategy))
В таком жанре, допустим, игрок командует из какой-нибудь точке в каком-нибудть бункере и наблюдает за боем по топографическим картам и докладам. Обо всех передвижениях, боевых столкновениях доклады с информацией приходит с задержкой, чем дальше событие от бункера — чем дольше оно доходит до штаба. Мы получаем вид событий из прошлого с разных точек с разной скоростью, всё как в примере со светом.
И будет настоящая реальная имитация командования войском, когда бой уже проигран, а командир только даёт приказ к наступлению. Тут нужно будет и планировать наперед, и продумывать множество событий, и т.д.
Было бы интересно на такое посмотреть.
Хорошая идея, которая превращает явление в игровую механику.
Автор (по крайней мере, в этой статье) до этого еще не дошел. Но с интересом жду, во что он разовьет свою "симуляцию".
Угу, тоже про походовую игру подумал, в которой, как у тебя в гифках, всё усложняется с каждым раундом. И почему-то именно в духе старых тактических JRPG (наверное, потому что в них тоже изометрия, и замороченный сюжеты норм смотрятся).
Не очень понимаю, как на этом построить игру, но в качестве наглядного эффекта той же теории относительности выглядит эффектно :)
Тем не менее, "претензии" по поводу других проявлений эффектов, таких как изменение массы и размеров, как раз понятны: повторюсь, что сейчас не видно вообще какой-то геймдизайнерской идеи. И воспринимается это всё как модель. А модель как раз получилась "односторонняя", когда одному эффекту уделено 100% внимания, а остальное полностью игнорируется.
Поэтому... Ну, любопытно, конечно, но уж надо либо геймплейную идею дописать, либо модель развивать.
Отличный вопрос. Можете ознакомится с этой браузерной игрой https://testtubegames.com/velocityraptor.html (написал другим комментарием верхнего уровня, но на ваш вопрос это отличный ответ, так что продублировал)
Очень крутой визуальный эффект, было бы прикольно увидеть в каком-нибудь 3D ААА такого босса, почему-то сразу вспомнил быстро бегающих ассасинов из первого Half-Life, они там и без глитча были бессячие. Думаю какой-нибудь перк замедления времени мог бы выровнять баланс.
Забавно, что для какого-нибудь темпорального ассасина такую штуку проще сделать чисто визуальным эффектом, а не через модель ) Игрок все равно не сможет это различить ) Магия геймдева )
Держи лайкос)
Для записи я пользуюсь OBS'кой, если что - готов немного порисовать статьи про игры с этим движком.
Прикольно :) Теперь понятно как реалистично показать быстрое перемещение на высоких скоростях. Объект мерцая в размытии должен быстро двигаться в обратном направлении.
Я ждал упоминание одной прекрасной(в своем роде) игры: Velocity Raptor.
Автор, пожалуйста если можно, добавьте в конце статьи ссылку на нее, потому что меня поражает как мало людей знает про нее, но как хорошо она объясняет многие моменты
https://testtubegames.com/velocityraptor.html
Не учтено, что "нет ничего быстрее скорости света", даже два луча света направленные друг к другу со скоростью света двигаются относительно друг к друга со скоростью света.
Но показано, что объект, двигающийся к наблюдателю движется быстрее, чем от наблюдателя, опять же относительно наблюдателя.
Ну, в рамках классической физики потому что все работает, любые скорости складываются как есть. Я вообще хз, можно ли эмулировать этот эффект световой константы.
Алсо, я не понимаю, зачем все вообще приходят критиковать геймплейную демку с точки зрения физики. Магия тоже невозможна, если у автора свет так работает, что релятивистских эффектов не существует, а есть только классическая физика, то пусть так и работает, какая разница
Я правильно понимаю, что это просто переложение эффекта Вавилова-Черенкова на игромеханику?
"Здесь первый интересный эффект - когда что-то движется к нам со скоростью света - мы видим его ровно в последний момент при этом одновременно во всех точках движения к нам."
Так "видит" мир фотон: только вот излучился от электрона, и тут же поглощается другим электроном. :))) Никакой жизни вне электрона. :)
Если это unity, то записывать можно, добавив через packageManager : Recorder. Для маленьких проектов его хватает.
Комментарии