С любовью к вам, Yandex.Direct
Размещение рекламы на форуме способствует его дальнейшему развитию
миди наверное можно в мод переделать?
на амиге должны быть конверторы
С уважением,
Jerri / Red Triangle.
Давай, классно было бы. Лабиринт 128х128. Когда формируется матрица, уже сразу надо наносить стены, колонны и барьеры. А врагов и аптечки - после окончания формирования, на свободные клетки.
Поля 15х15 вокруг игрока. Враг может стрелять только прямо по вертикали, горизонтали или диагонали с игроком, и если между ним и игроком нет стен или колонн (через барьеры стрелять может, хотя возможно это уберу, т.к. барьеры высокие). С остальных клеток враг стрелять не может. Поэтому он смещается на ближайшую клетку, откуда можно стрелять.
нуу вообще конечно лабиринт то получается 127 на 127или даже 125 на 125 без учета внешних стен
кстати зачем такой большой
может всетаки поменьше?
что то вроде 96*96 - выше крыши
вон в ЧВ вообще карта 64*64
и есть пара идей относительно рендера изображения - будет ускорение но надо тогда тебе будет перепахать большой кусок программы
С уважением,
Jerri / Red Triangle.
Движок предусматривает лабиринт с горизонтальной стороной 128. Так легче считать адреса клеток. Границы лабиринта ессно все огорожены внешними стенами, так что 126х126. Вертикальная сторона может быть любой. Можно уменьшить, но не в ущерб интересности и сложности игры, чтобы под спрайты больше места оставить.
В ЧВ не лабиринт, а карта местности.
Если спрайты не менять и память еще больше не транжирить, то можно. Хотя, с другой стороны, побыстрее охота эту игру закончить и начать новую писать.
---------- Post added at 22:36 ---------- Previous post was at 20:37 ----------
Сейчас вставляю трупы, вроде нормально получается.
Но пока еще есть ошибки с выводом спрайтов (всех), необъяснимые пропадания изображения в некоторых знакоместах, хотя должны работать в них маски. Буду ковырять в отладчике.
---------- Post added at 23:13 ---------- Previous post was at 22:36 ----------
Нашел! Досаднейшую ошибку. Оказывается, подпрограммы получения автомасок для значения 0 дают 0, а должны 255! Так что, исправил.
Еще кое-где неправильно в спрайтах заданы параметры краевых знакомест. Это уже в 3D-View надо подрегулировать.
а просто скипать нулевые байты?
С уважением,
Jerri / Red Triangle.
итак вот генератор
сначала создает 127 на 127(128) т.е требует 16256 памяти
потом высушивает соответственно до нужного вида (в 1 байте 2 элемента)
естественно никаких лишних элементов не добавляеттут уж извини
смотри разбирай спрашивай
С уважением,
Jerri / Red Triangle.
спасибо. Завтра буду смотреть.
Насчет еще более быстрого вывода сцены думал.
Можно подумать над тем, чтобы хранить в спрайтах не координаты знакоместа, а сразу адрес вывода на экране первого байта знакоместа. Тогда не нужно каждый раз его высчитывать. Правда, в этих же двух байтах я храню параметр - краевое это знакоместо спрайта или нет, и если краевое, то какое - правое или левое. Можно как-то это продумать, чтобы вместе с адресом хранить (можно не адрес, а хотя бы смещение от какого-то адреса, например, начала экрана, тогда два бита будут по-прежнему свободны для краевых параметров).
Еще думал, хранить "слои" экрана - у меня 7 уровней вглубь, следовательно, 7 слоев для перспективы 90 градусов и 7 слоев для перспективы 45 градусов. Причем не весь экран, а только четверть, т.к. остальные 3/4 можно получать отзеркаливанием. В слое хранятся для каждого знакоместа байты изображения каждого элемента (15 элементов - стены, колонны, бассейны, трупы, фазы врагов и т.д.). Т.е. спрайты вообще не нужны, а всё хранится в этих слоях, которые быстро можно вывести. Но всё это занимает в памяти очень много места, пока не придумал, как сократить размер.
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)