User Tag List

Показано с 1 по 7 из 7

Тема: Портирование Saboteur 1 на Вектор

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

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

    Регистрация
    20.12.2005
    Адрес
    Москва
    Сообщений
    2,051
    Спасибо Благодарностей отдано 
    1,141
    Спасибо Благодарностей получено 
    1,467
    Поблагодарили
    524 сообщений
    Mentioned
    20 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Расскажу как я сделал цвет, вдруг кому интересно.

    Рисование одного тайла в этой игре заканчивается тем, что у нас есть буфер тайла в виде восьми байт пикселов, плюс байт атрибутов -- это в оригинале.
    Здесь же вместо байта атрибутов у меня собирается байт "стратегии" вывода тайла, всего стратегий шесть:
    Код:
    Стратегии записи байта в два плана:
     1. Байт в 1-й план, очистить 2-й план    - blue / black
     2. Очистить 1-й план, байт во 2-й план   - yellow / black
     3. Байт в оба плана                      - red / black
     4. $FF в 1-й план, байт во 2-й план      - red / blue
     5. Байт в 1-й план, $FF во 2-й план      - red / yellow
     6. Байт в 1-й план, инв.байт во 2-й план - blue / yellow
    Можно заметить, что я не добавлял сюда "инверсные" стратегии, потому что того же эффекта можно добиться предварительно инвертировав тайл.

    Дальше, для четырёх цветов рассмотрим какие у нас получаются комбинации (INK/PAPER) и расставим стратегии, учитывая нашу палитру:
    Код:
    |          | black | blue | yellow | red |
    | -------- | ----- | ---- | ------ | --- |
    | black    | --    | 1    | 2      | 3   |
    | blue     | 1     | --   | 6      | 4   |
    | yellow   | 2     | 6    | --     | 5   |
    | red      | 3     | 4    | 5      | --  |
    Дальше остаётся подготовить исходные тайлы, записав в байт атрибутов байт стратегии.

    В игре при рисовании тайла переход на код нужной стратегии выполняется через switch -- по таблице адресов.
    Последний раз редактировалось nzeemin; 21.12.2025 в 01:11.

    Этот пользователь поблагодарил nzeemin за это полезное сообщение:

    aGGreSSor(21.12.2025)

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

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

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

Похожие темы

  1. Портирование Saboteur 2 на БК-0011М
    от nzeemin в разделе БК-0010/0011
    Ответов: 40
    Последнее: 02.11.2025, 02:21
  2. Портирование Saboteur 2 на УКНЦ
    от nzeemin в разделе ДВК, УКНЦ
    Ответов: 4
    Последнее: 20.04.2025, 16:41
  3. Портирование Highway Encounter на Вектор
    от nzeemin в разделе Вектор
    Ответов: 11
    Последнее: 21.05.2024, 21:59
  4. Портирование BATTY на Вектор
    от nzeemin в разделе Вектор
    Ответов: 5
    Последнее: 29.03.2024, 16:02
  5. Портирование Desolate на Вектор-06Ц
    от nzeemin в разделе Вектор
    Ответов: 48
    Последнее: 07.08.2022, 06:25

Ваши права

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