Тут заметили, что любой физический предмет всегда движется по временной шкале вперед. То есть относительно шкалы он не зафиксирован, стол не может находиться в одном моменте и отсутствовать во всех остальных. Он не может быть прибит к секунде.
С другой стороны - он и по пространственным шкалам двигается вместе с планетой, галактикой и т.д. Зафиксирован он относительно пола.
С третьей стороны - стол и пол и любые физические объекты летят по временной шкале с одной и той же скоростью. То есть весь физический мир зафиксирован относительно друг друга. Чем? Ну видимо физическими законами. Для всех работают одни и то же, нет предметов имени нолана, летающих в прошлое.
-
Теперь я начинаю думать - можно ли сделать двумерную игрушку с физикой предметов, которые двигаются во времени в разные стороны как в Tenet.
Что есть это платформер, где есть условный промежуток времени в тридцать секунд, и мы персонажем бегаем по этому времени вперед назад, пытаясь добраться до выхода. При этом вокруг нас скажем ящики, часть из которых с обычной физикой, часть с инвертированной, часть ускоренные части замедленные.
К примеру если мы двигаемся вперед по времени мы можем подбрасывать ящики, но сами не можем на них запрыгнуть, потому что они падают под нашим весом. Но если ящик летит назад по времени, а мы вперед (или наоборот) он становится для нас опорой, потому что наш вес влияет на траекторию ящика не в будущем, а в прошлом.
Что если есть отдельная кнопка, разворачивающая время?
Это может быть клевой идеей.
При этом наш персонаж может быть единственным, какбы выпадающим из временной линии. Ну то есть игра заранее знает как поведут себя ящики или противники или кто угодно. Но так как движение нашего персонажа наперед не известно - с точки зрения физических предметов он просто материализуется из ниоткуда в какой-то момент.
К примеру для инвертированного во времени противника наш персонаж просто появляется в воздухе в тот момент, когда наши с ним траектории пересеклись.
Но это так же означает, что мы можем своими действиями вызвать свою смерть в прошлом - к примеру предположим нас увидел инвертированный во времени враг. С его точки зрения мы появились из ниоткуда в какой-то момент и начали двигаться назад по времени. Если раньше мы не попадали ему на глаза все было ок. А сейчас оказавшись в зоне его видимости мы заставили его в нас стрельнуть, и где-то в прошлом его пуля нашего персонажа убила.
-
Или что если у нас есть аналог порталгана, который инвертирует во времени предметы, в которые мы стреляем?
То есть мы появляемся на уровне где все движется в одну сторону и должны выстрелами по предметам и противникам добиться чтобы открыть проход к выходу.
По идее это должно не так сложно программироваться, игра записывает состояния объектов на каждый фрейм в 30 секунд. Когда мы инвертируем любой объект - игра пересчитывает состояния сразу для всего времени. Вопрос с причинно следственной связью, то есть как игре считать временные парадоксы. По идее оно решается приоритетами. К примеру определяется какой предмет приоритетнее другого, и таким образом считается какой из них на какой влияет. К примеру если один ящик приоритетнее другого - при столкновении один игра пересчитывает а второй нет, более приоритетный какбы зафиксирован на временной шкале. То есть игра поочередно просчитает физику более приоритетных объектов, а потом менее приоритетных. То есть для более приоритетного объекта менее приоритетных не существует. Более приоритетный ящик пролетит сквозь менее приоритетную стену, но менее приоритетная стена развалится от того, что он через нее пролетел.
Вопрос - как это сделать очевидным для игрока? Скорее всего тем же порталганом - каждый следующий выстрел делает инвертированные предметы более приоритетными, чем те, что были инвертированны раньше. Таким образом парадокс не возникнет.
Наименьший приоритет у нашего персонажа. Сам он ни на что повлиять не может, ничего не может сдвинуть (единственный способ воздействовать на мир - выстрелами инвертирующей пушки), но любой предмет может повлиять на нас, любой ящик может нас раздавить, выстрел любого противника как в прошлом так и в будущем - убить.
-
Игра может быть клевой стилистически. Что если это скажем мир за тридцать секунд до апокалипсиса, когда там и так все разваливается. Что-то такое было в другом паззле, но значительно менее весело.
"тельцов" и "овнов" придума...
[Print]
the_Dark_One