Я планирую создать свою собственную систему уничтожения кулачков для набора инструментов для песочницы. Однако, подумав о механике самой убийственной камеры, я совершенно растерялся. Я пытаюсь воссоздать те, которые обычно можно увидеть в играх по вызову, которые показывают, с точки зрения убийцы, фактическую сцену убийства.
Мои мысли:
-Я не могу просто сохранить в памяти, когда люди убивают других, потому что я не знаю, когда начать «процесс записи». У меня есть возможность точно определить, когда кто-то «собирается» кого-то убить.
- Моя единственная реальная идея до сих пор - иметь полную копию всего, загруженного в сторону, копирующую все движения из оригинального мира, но с 10-секундной задержкой. Таким образом, все камеры убийства будут длиться 10 секунд, и камера людей будет просто перемещена во второй мир их убийцы.
Мои вопросы:
Есть ли уже принятый способ сделать это? У кого-нибудь есть хорошие идеи для чего-то подобного? Спасибо, если можете!
Не знаю, как это обычно реализуется, но вы можете сохранить каждую пулю в клипе с момента его запуска до момента попадания в цель. Если съемка выполняется только с помощью хит-скана, вы можете вычислить, следует ли сгенерировать кадры уничтожения с камеры в том же цикле, когда вы выполняете хит-сканы.
источник
Вы можете сохранять трансформации объекта каждые пару секунд или около того. Сделайте это для всех применимых динамических объектов. Поместите сохранение так, чтобы в каждом кадре вы сохраняли только пару матриц. сохранить как можно раньше.
Во время воспроизведения Вы фактически используете эти преобразования в механизме рендеринга для анимации сцены, интерполируя между преобразованиями по времени для каждого кадра по мере необходимости.
Он не является точным дубликатом, но очень и очень близок, и он позволяет игроку управлять камерой во время воспроизведения, чтобы он мог выбирать, откуда смотреть сцену.
источник
Вы можете реализовать некоторые функции воспроизведения в своей игре. используя функцию воспроизведения, killcam - это просто воспроизведение, воспроизводимое в определенное игровое время и с точки зрения некоторых игроков. позже вы можете сохранить повторы и позволить другим просматривать игры после их завершения.
Кроме того, ваша идея запустить ту же игру с входами с задержкой в 10 секунд - это хороший подход, если ваша игра не потребляет больших вычислительных ресурсов.
источник
Как насчет этого...
Запись только тогда, когда есть возможность убийства.
Подумайте об этом с точки зрения AIM-BOT. Он будет целиться / стрелять только тогда, когда возможно убийство. Таким образом, вы должны записывать, только когда враг находится в пределах видимой дистанции.
источник
Установите радиус вокруг игрока, и если другой игрок вводит радиус, он начинает запись экрана для обоих людей. Затем вы ждете, чтобы увидеть, если кто-нибудь убит. Если так, то вы находите убийцу, берете их записи и перематываете время, прошедшее с момента уничтожения, плюс продолжительность, на которую вы хотите, чтобы видео было перемотано, и воспроизведите его для того, кто был убит. Если никто не убит и никто не находится в радиусе вокруг персонажа, удалите или остановите запись. Если убийца увеличен в прицеле, направьте луч туда, куда он целится, и создайте еще один радиус запуска. Если в нем кто-то есть, он записывает экран того, кто находится в радиусе, в который целится персонаж, и о том, как персонаж целится. Если кто-то умирает из-за прицеливания персонажа, то вы берете время, прошедшее с момента убийства, плюс длину, которую вы хотите, чтобы камера для убийства была, и вы перематываете и играете это для того, кто был убит. Если они уменьшают масштаб, остановите запись. Это концепция, поэтому я не пробовал.
источник