Чё там по 3д ? Как показывает демка Овердрайв 2, сижка таки могёт 3д не хуже чем 32х.
В SGDK полный боекомплект процедурок работы с модельно-видовыми матрицами.
Я даже откопал некропост, где питоновый скрипт конвертит OBJ в хедер mesh.h.
Увы, но ссылки ныне мертвы...
Я ж это к чему. Знаете такой люто тормозной, но всё же движок-конструктор
https://ru.wikipedia.org/wiki/Freescape ? Так вот. Он обошёл все компы, от ДОСа до амиги. Даже спектрума посетил. А вот сегу обошёл стороной. Хотя у сеги тот же проц, что и у амиги. В чём сложность портировать? Непонятно. Там переделать адресацию пикселей видео-памяти для тру-кодера дело на вечер. Ну да ладно. Я вот мечтаю увидеть подобие этого движка на СМД.
Конечно можно взять за основу уже готовый набор ф-ций SGDK для работы в 3д. Но тут возникают Unreal-ные для меня задачи. Во-первых, реализовать FPS-камеру я вряд ли смогу.
Во-вторых, забивать вручную массив mesh.h - довольно муторное занятие (один лишь кубик выходит довольно громоздким, пока распишешь каждый вертекс, каждую грань, каждую нормаль), без конвертера из распространённых форматов - никак. В-третьих, коллизии - тоже штука колдовская для меня.
Поэтому хотел бы начать с малого. Сделать хотя бы однокомнатный сектор, хотя бы с игнорированием сдвига перспективы по высоте.
Входные данные - набор точек XY рёбер на карте. Высота потолка сектора. XY угол поворота камеры.
Как на основе этих данных расставить отрезки на проекции ? В идеале бы ещё отсечение бэкфейсов сделать. Тут, скорее всего, для каждого отрезка на 2д-карте надо ещё направление нормали указывать.