User Tag List

Показано с 351 по 360 из 560

Тема: Радиолюбительский компьютер "LEVEL"

Древовидный режим

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #10

    Регистрация
    31.10.2006
    Адрес
    г. Воронеж
    Сообщений
    75
    Записей в дневнике
    1
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от zst Посмотреть сообщение
    В одном режиме компьютер будет совместим с играми ZX Spectrum, доработанными для устранения клешинга.
    В другом для программирования своих игр изображение фона строится тайлами, типа как в NES и SEGA, а спрайты будут рисоваться в спрайтовом слое командами LDIR.
    В третьем режиме - текстовые программы с символьным экраном 30х80 символов.

    Вот и советуй именно по выбранным способам изображения. Только давай без голословной критики. Подскажи, как улучшить, что добавить и почему ?
    С моей точки зрения, три вышеописанных режима это свойства видеокарты (прошу прощения, что опять встреваю с видео). По-моему тут у вас в проекте ключевая ошибка - вы жестко "наградили" компьютер тремя режимами без возможности избежать их или расширить каким либо образом.

    Мои соображения (раз критикую, то разумеется и предлагаю) - оставить компу комповое, а видеокарту вынести совсем в отдельное устройство, жестоко замапленное на #4000-#5980 (стандартный zx VRAM).

    Таким образом можно подойти к разработке итеративным путем - сначала реализовать на отдельной плате стандартный zx видеорежим (к примеру 0), затем в другом устройстве реализовать и нулевой и первый (текстовый 80х25), затем в следующем устройстве реализовать нулевой, первый и второй режим (256х192 / 24bpp к примеру).

    Как реализовать нулевой режим я писать не буду - там простой маппинг на стандартную видеопамять спектрума (для совместимости), он же является основным.

    Режим #01 я описал вкраце тут. Поясню почему там фигурирует видеопамять, хотя вроде бы можно и без нее обойтись. По моим соображениям она нужна (и в небольшом количестве для этого режима) для того, что бы можно было забросить в видеокарту произвольные изображения в стандартном спектрумовском формате (1 байт на 8 точек + 1 байт на цвет точки и фона), через порты например, предварительно пометив нужную область в символьной области памяти #4000-#47D0 нулями, что бы видеокарта не формировала из этих знакомест символы на экране.

    Режим #02 может выглядеть аналогично - управляющая область памяти в #4000-#5980 где расположены структуры объектов (как в режиме #01 там расположены коды символов и их цвет).
    Структура объекта "тайл", к примеру может быть выровненной до 32 байт и в упрощенном виде выглядеть так:
    Код:
    objID	db #00,#00 - ID объекта для его отрисовки
    objX	db #00,#00 - X-координата объекта
    objY	db #00,#00 - Y-координата объекта
    ... и так далее
    что дает 192 (при выравнивании 32 байта на одну структуру) одновременно отрисовываемых видеокартой объекта с Z-сортировкой по порядку расположения в памяти (т.е. описатель тайла заднего плана должен быть расположен в памяти раньше, чем описатель тайла ближнего плана, а герой где то посередине).

    Растр объектов заранее должен быть загружен в память видеокарты (через те же порты к примеру, в понятном видеокарте формате). Своей памяти на борту карты при 256х192/24bpp должно быть около мегабайта, что в общем то и не так много.

    Объектами может служить тайл, спрайт, источник частиц, что то еще, что поддержит прошивка видеокарты.

    В режиме #02 описал вполне себе суровый 2D ускоритель, который не занимает ни байта в памяти стандартного спектрума. В момент загрузки программы графика забрасывается в память карты, а затем управляется описателями структур через стандартную область памяти.
    Последний раз редактировалось Dr.Potapov; 15.02.2018 в 13:13.

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Радиолюбительский компьютер "LEVEL"
    от zx-kit в разделе Для начинающих
    Ответов: 501
    Последнее: 30.04.2020, 09:46
  2. PUZZNIC+Level Editor 2016
    от Yuri80 в разделе Игры
    Ответов: 3
    Последнее: 01.05.2016, 13:55
  3. Радиолюбительский компьютер "СПЕКТР" - схема, плата
    от idc в разделе Несортированное железо
    Ответов: 0
    Последнее: 02.08.2011, 13:31
  4. Level 5
    от Arlekin в разделе Игры
    Ответов: 7
    Последнее: 29.09.2006, 17:24

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •