Важная информация

User Tag List

Страница 4 из 54 ПерваяПервая 12345678 ... ПоследняяПоследняя
Показано с 31 по 40 из 531

Тема: ZX Like Pascal

  1. #31
    Veteran
    Регистрация
    29.12.2010
    Адрес
    Москва
    Сообщений
    1,858
    Спасибо Благодарностей отдано 
    131
    Спасибо Благодарностей получено 
    104
    Поблагодарили
    62 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    В отдельную библиотеку не надо, потому что подгружаются из общей только нужные процедуры, которые точно используются в программе, а не все.
    Да, со спрайтами мне надо еще поработать, дописать процедур. В общем, сразу же на след.неделе ими займусь. т.к. это самое важное. Отзеркаливание спрайтов по x и y, get, put, познакоместный скролл... Плюс конвертер спрайтов допилить.

  2. #31
    С любовью к вам, Yandex.Direct
    Размещение рекламы на форуме способствует его дальнейшему развитию

  3. #32
    Guru Аватар для ALKO
    Регистрация
    25.09.2009
    Адрес
    Одесса
    Сообщений
    2,257
    Спасибо Благодарностей отдано 
    76
    Спасибо Благодарностей получено 
    183
    Поблагодарили
    86 сообщений
    Mentioned
    4 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    я вот чё думаю... если даже познакоместно будет скроллироваться экран, а тайлы будут размером больше знакоместа.
    к примеру 48*48 пикселей.
    Каков будет алгоритм скролла, чтоб незаметно было появление тайла?

    Пока представляю себе это следующим образом:
    1 есть экран, с массивом тайлов.
    2 двигаем, допустим, влево. И на этом же этапе заполняем тайлами образовавшуюся пустую область справа, впритык.

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

    то есть от процедуры скроллирования толку никакого. А нужно рисовать каждый раз всю область видимости. а после этого персонажа(жей). И это надо делать за пределами видео ОЗУ, и лишь потом выплёскивать на экран.

  4. #33
    Super Moderator Аватар для Alex Rider
    Регистрация
    07.02.2008
    Адрес
    г. Рязань
    Сообщений
    2,908
    Спасибо Благодарностей отдано 
    29
    Спасибо Благодарностей получено 
    89
    Поблагодарили
    31 сообщений
    Mentioned
    4 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Есть процерура отрисовки 5 слоев тайлов (фон, герои, передний план) + слой маски на экран (переписанная из Саботера 2). Умеет зеркалить байты спрайтов. Надо? Очень быстрая, стек не использует, легко кастомизируется для переменного числа промежуточных слоев. Скоро будет быстрая процедура для рисования тайлов в слои с маскированием и копированием тайлов фона для детекции коллизий.
    Последний раз редактировалось Alex Rider; 05.04.2015 в 00:05.

  5. #34
    Veteran
    Регистрация
    29.12.2010
    Адрес
    Москва
    Сообщений
    1,858
    Спасибо Благодарностей отдано 
    131
    Спасибо Благодарностей получено 
    104
    Поблагодарили
    62 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от ALKO Посмотреть сообщение
    то есть от процедуры скроллирования толку никакого. А нужно рисовать каждый раз всю область видимости. а после этого персонажа(жей). И это надо делать за пределами видео ОЗУ, и лишь потом выплёскивать на экран.
    вирт.экран тогда, полная перерисовка. Как в ZXOOM.

    ---------- Post added at 00:07 ---------- Previous post was at 00:06 ----------

    Цитата Сообщение от Alex Rider Посмотреть сообщение
    Есть процерура отрисовки 5 слоев тайлов (фон, герои, передний план) + слой маски на экран (переписанная из Саботера). Надо? Очень быстрая, стек не использует, легко кастомизируется для переменного числа промежуточных слоев. Скоро будет быстрая процедура для рисования тайлов в слои с маскированием и копированием тайлов фона для детекции коллизий.
    процедура классная, но как ее встроить в Паскаль. Команда с кучей параметров?

    ---------- Post added at 00:09 ---------- Previous post was at 00:07 ----------

    Цитата Сообщение от ALKO Посмотреть сообщение
    то есть от процедуры скроллирования толку никакого. А нужно рисовать каждый раз всю область видимости. а после этого персонажа(жей). И это надо делать за пределами видео ОЗУ, и лишь потом выплёскивать на экран.
    в Эйфории я кстати по другому поступил - вывод ландшафта из символов-тайлов. Сначала в буфере строим последовательность из кодов символов, а потом вывод на экран, как строку символов.

  6. #35
    Super Moderator Аватар для Alex Rider
    Регистрация
    07.02.2008
    Адрес
    г. Рязань
    Сообщений
    2,908
    Спасибо Благодарностей отдано 
    29
    Спасибо Благодарностей получено 
    89
    Поблагодарили
    31 сообщений
    Mentioned
    4 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Andrew771 Посмотреть сообщение
    процедура классная, но как ее встроить в Паскаль. Команда с кучей параметров?
    Если адреса слоев задать системными константами, то без параметров совсем. Кстати, жырный минус - слои должны лежать один за другим в строком порядке.

  7. #36
    Veteran
    Регистрация
    29.12.2010
    Адрес
    Москва
    Сообщений
    1,858
    Спасибо Благодарностей отдано 
    131
    Спасибо Благодарностей получено 
    104
    Поблагодарили
    62 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    а в слои как спрайты кладутся?

  8. #37
    Super Moderator Аватар для Alex Rider
    Регистрация
    07.02.2008
    Адрес
    г. Рязань
    Сообщений
    2,908
    Спасибо Благодарностей отдано 
    29
    Спасибо Благодарностей получено 
    89
    Поблагодарили
    31 сообщений
    Mentioned
    4 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Можно свой алгоритм написать для твоего Паскаля, можно из разогнанного Саботера 2 поиспользовать когда допишу. Ничего особого, процедура с кучей параметров, типа, X, Y, ширина, высота, направление, адрес тайлмапа спрайта,... (не помню все, ща не дома, посмотреть негде). Тайлмап пихается в слои с учетом кадрирования, заполняется слой маски и делается копия тайлов фона под спрайтом. Выводилка на экран смешивает слои по алгоритму "если в маске не 0, то берем тайл фона, накладываем на него по маске слои героев, сверху накладываем по маске спрайты переднего плана (есть нюансы с маскированием слоев и атрибутом выходного спрайта), и полученный микс кидаем в экран.

  9. #38
    Master Аватар для Epsilon
    Регистрация
    22.01.2013
    Адрес
    г. Уфа
    Сообщений
    543
    Записей в дневнике
    1
    Спасибо Благодарностей отдано 
    12
    Спасибо Благодарностей получено 
    41
    Поблагодарили
    14 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Я конешно дилетант, а не проще было сделать так

    прогу на паскале конвертировать в Си-подобный код, и потом z88dk сделает из него asm?

    Тогда имхо в разы проще сделать всякие штуки с указателями и прочее, а выражения вообще в неизменном виде можно оставить.

  10. #39
    Guru Аватар для ALKO
    Регистрация
    25.09.2009
    Адрес
    Одесса
    Сообщений
    2,257
    Спасибо Благодарностей отдано 
    76
    Спасибо Благодарностей получено 
    183
    Поблагодарили
    86 сообщений
    Mentioned
    4 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Epsilon Посмотреть сообщение
    прогу на паскале конвертировать в Си-подобный код, и потом z88dk сделает из него asm?
    тогда проще сразу писать на сях напрямую в z88dk, безо всяких пасцалей.

  11. #40
    Veteran
    Регистрация
    29.12.2010
    Адрес
    Москва
    Сообщений
    1,858
    Спасибо Благодарностей отдано 
    131
    Спасибо Благодарностей получено 
    104
    Поблагодарили
    62 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Epsilon Посмотреть сообщение
    прогу на паскале конвертировать в Си-подобный код, и потом z88dk сделает из него asm?
    Тогда имхо в разы проще сделать всякие штуки с указателями и прочее, а выражения вообще в неизменном виде можно оставить.
    Зачем такие сложности, если уже я написал кодогенератор с оптимизатором?
    Так поступил Oleg N.Cher. с Обероном, см. тут
    Сейчас на повестке дня допиливание новых команд вывода спрайтов и экранов в библиотеке на асме, для практического применения в играх. ALKO и Alex Rider правильно тон задают.
    Цитата Сообщение от Alex Rider Посмотреть сообщение
    Можно свой алгоритм написать для твоего Паскаля, можно из разогнанного Саботера 2 поиспользовать когда допишу. Ничего особого, процедура с кучей параметров, типа, X, Y, ширина, высота, направление, адрес тайлмапа спрайта,... (не помню все, ща не дома, посмотреть негде). Тайлмап пихается в слои с учетом кадрирования, заполняется слой маски и делается копия тайлов фона под спрайтом. Выводилка на экран смешивает слои по алгоритму "если в маске не 0, то берем тайл фона, накладываем на него по маске слои героев, сверху накладываем по маске спрайты переднего плана (есть нюансы с маскированием слоев и атрибутом выходного спрайта), и полученный микс кидаем в экран.
    Наверно да, выгодно задать новую команду с кучей параметров. А ее встроить в библиотеку libasm.lib. Присылай, как будет возможность.
    Я вот сейчас решил срочно сделать следующее:
    - флажок "Вывод спрайтов в виртуальный экран", при включенном вывод спрайтов будет на вирт. экран, при выключенном сразу на экран;
    - аналогично флажок для вывода текста на вирт.экран;
    - флажки "Использовать атрибуты для спрайтов", "Использовать атрибуты для текста";
    - команду копирования вирт.экрана на экран;
    - допилить конвертер bmp в спрайты с атрибутами.

Страница 4 из 54 ПерваяПервая 12345678 ... ПоследняяПоследняя

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

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

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

Похожие темы

  1. PASCAL + MACRO11 (УКНЦ-ДВК).
    от hobot в разделе ДВК, УКНЦ
    Ответов: 341
    Последнее: 15.01.2022, 17:30
  2. Turbo Pascal для msx/msx2
    от Оззя в разделе MSX
    Ответов: 4
    Последнее: 23.02.2020, 23:59
  3. в розыске дисковая версия Pascal.
    от goblinish в разделе Программирование
    Ответов: 18
    Последнее: 16.08.2011, 16:30
  4. Pascal
    от Andrew771 в разделе Программирование
    Ответов: 22
    Последнее: 24.05.2011, 21:20
  5. Скопировать/вставить из/в HiSoft Pascal в эмуляторе
    от kit в разделе Программирование
    Ответов: 1
    Последнее: 05.02.2010, 15:35

Ваши права

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