- 278
- 107
Мне резко стало интересно сделать псевдо 3D графику полностью на ASCII, вот собственно и оно. В ней можно поиграться с настройками и изучить технологию Ray Casting'a, которая использовалась в первых шутерах по типу Wolfenstein и Doom. Здесь я реализовал самую тупую и неоптимизированную версию, объяснение которой можно найти тут.
Установка: Переместить скрипт в папку
Активация:
WASD - перемещение, J и L поворот камеры влево-вправо
Вот как это выглядит:
FOV - угол обзора
Depth - дальность прорисовки
raycast step - шаг алгоритма отрисовки лучей
player speed - очевидно скорость передвижения персонажа
bound - отрисовка линий на миникарте которые попадают в ребра стен
show fov - отрисовка всех линий на миникарте которые строит алгоритм
также можно генерировать разные карты
Depth - дальность прорисовки
raycast step - шаг алгоритма отрисовки лучей
player speed - очевидно скорость передвижения персонажа
bound - отрисовка линий на миникарте которые попадают в ребра стен
show fov - отрисовка всех линий на миникарте которые строит алгоритм
также можно генерировать разные карты
Зависимости: ImGuiУстановка: Переместить скрипт в папку
moonloader
Активация:
/raycasting
WASD - перемещение, J и L поворот камеры влево-вправо
А ещо можно стрелять из пикалета на пробел
Изначально я хотел сделать полноценный шутер полностью на ASCII, но столкнулся с определёнными проблемами, в частности с оптимиацией(рендерить игру внутри другой игры это гениально), ну и делать фулл на символах пипец запарно и тоже добавляет определённых ограничений
хочу попробовать более оптимизированные вариации этого алгоритма, по типу DDA(Digital Differential Analysis) и отрисовывать графику не символами, и возможно не в сампе
Изначально я хотел сделать полноценный шутер полностью на ASCII, но столкнулся с определёнными проблемами, в частности с оптимиацией(рендерить игру внутри другой игры это гениально), ну и делать фулл на символах пипец запарно и тоже добавляет определённых ограничений
хочу попробовать более оптимизированные вариации этого алгоритма, по типу DDA(Digital Differential Analysis) и отрисовывать графику не символами, и возможно не в сампе
Вложения
Последнее редактирование: