![]() |
Автогонки на выживание (типа игры Megarace 2)
Quote:
Quote:
Quote:
Quote:
В писишном Megarace трассы сделаны на технологии FMV, т.е. при прохождении показывается изначально отрендеренное видео трассы. Причем на каждом кадре только одно положение трассы, т.е. при управлении машиной сдвигается именно машина, а не изображение трассы. У нас же, т.к. видео невозможно хранить и отображать, будут выводиться комбинации спрайтов в одном положении для каждого кадра. Кодируем каждый кадр трассы 6 байтами-сегментами - центр вблизи, центр вдали, лево вблизи, лево вдали, право вблизи, право вдали. Каждый байт-сегмент обозначает комбинацию спрайтов для 12 уровней. А сегменты могут быть такие: - прямо ровно - прямо по горке вниз - прямо по горке вверх - поворот влево ровно - поворот вправо ровно - ответвление вправо - ответвление влево. Другие сегменты, например повороты по горке, можно не использовать. Из имеющихся сегментов можно уже построить разнообразные трассы. Т.е. получится: 7 сегментов * 3 уровня в ширину * 12 уровней в длину = 252 значения для байта. Теоретически примерно столько же будет спрайтов. От спрайтов нужно хранить только четвертушки, как и в ZXOOM, т.к. симметрия, а остальные 3/4 достраивать программно (движок уже есть). Т.е., то что является барьерами в ZXOOM, здесь будет бордюрами. А то что является высокими стенами, здесь будет тоннелями. Если один кадр занимает 6 байт, то допустим выделим 6кб - 1000 кадров. С учетом разветвлений максимальная длина одного круга трассы будет 500 кадров. Если в секунду выводить 2-3 кадра, то по времени длина круга будет около 180 секунд или 3 минуты - нормально. Пока такие мыслишки. Может, есть подводные камни. :) |
Даже для ZXOOM построение спрайтами показало что не нужно в экшене так делать. (для бродилок ещё туда сюда).
А гонки это вообще! Предлагаю всё-таки попробовать подход как статье "Пол/трасса". Т.е. трасса выводится как положено (только не чанками), а уже потом сверху можно и машинки пристегнуть. ---------- Post added at 21:20 ---------- Previous post was at 21:16 ---------- Этапы получаются такие: 1. Рисуем трассу (обычная монохромная картинка, только не 3 сегмента в высоту, а 4. получается 256х256 пикселей) 2. Программно поворачиваем её 8 раз на 45 градусов (вот и смена камеры при повороте) Прим к п.2 - ясно что трасса будет укладыватся в окружность диаметром 256, лишние "углы" от квадрата - выкинуть (они сэкономят память, но это уже в конце). 3. Проецируем трассу с учётом горок (тут можно реализовать по-разному, пока что склоняюсь к мат. методу, т.е. не строить карту горок, а хранить инфу о возвышенностях в векторном виде) 4. Рисуем машинки, опрашиваем клавиши и делаем прочие мелочи. |
Quote:
Еще не забудь про ответвления. |
движок ZXOOM вполне сойдёт для гонок.
Нечто подобное есть в turbo esprit: http://www.worldofspectrum.org/shows...urboEsprit.gif Надеюсь эти гонки будут удачнее zxoom'a |
ALKO, Движок ZXoom совсем не подходит для гонок
я бы повнимательнее посмотрел на турбо есприт - там все гораздо интереснее |
Quote:
http://www.worldofspectrum.org/infos...cgi?id=0005461 Самые лучшие гонки, это без раздумий даже - http://www.worldofspectrum.org/infos...cgi?id=0000903 А самые быстрые, я названия забыл. :( Там можно было играть и вдвоём. Один в верхней части экрана играл, другой в нижней. |
Quote:
А эту игру я привёл как подобие zxoom, так как там тоже заранее прорисованы спрайты зданий в перспективе. А то какие гонки лучше - это уже субъективное мнение. |
Quote:
|
Quote:
Дискретность уменьшаем увеличением количества уровней в глубину и утоньшением каждого уровня. Скорость нормальная. |
Quote:
|
| All times are GMT +4. The time now is 21:00. |
Powered by vBulletin® Version 3.8.3
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.