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

User Tag List

Страница 16 из 23 ПерваяПервая ... 121314151617181920 ... ПоследняяПоследняя
Показано с 151 по 160 из 228

Тема: Портирование игр с PC на БК

  1. #151

    Регистрация
    22.03.2018
    Адрес
    г. Усть-Каменогорск, Казахстан
    Сообщений
    1,410
    Спасибо Благодарностей отдано 
    91
    Спасибо Благодарностей получено 
    178
    Поблагодарили
    138 сообщений
    Mentioned
    21 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    /* Иначе слишком много времени тратится на подготовку данных для вывода на экран. */
    При движении спрайта (сдвиге) все равно приходится слова разделять, поскольку в слове лежат две плоскости..

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

  3. #152

    Регистрация
    30.08.2011
    Адрес
    Зеленоград
    Сообщений
    7,161
    Спасибо Благодарностей отдано 
    2,979
    Спасибо Благодарностей получено 
    374
    Поблагодарили
    311 сообщений
    Mentioned
    13 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от S_V_B Посмотреть сообщение
    поскольку в слове лежат две плоскости..
    имеется в виду два плана? давайте на одном языке говорить - плоскости = это тригономнтрия какая-то )))
    Архив программ для УК-НЦ, ДВК и БК.

    Ищу игру "СТРАНА МОНСТРОВ" [monstr.sav] для ДВК.

  4. #153

    Регистрация
    06.05.2010
    Адрес
    Бердск, НСО
    Сообщений
    4,972
    Спасибо Благодарностей отдано 
    1,083
    Спасибо Благодарностей получено 
    1,174
    Поблагодарили
    915 сообщений
    Mentioned
    5 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от hobot Посмотреть сообщение
    плоскости = это тригономнтрия какая-то )))
    Стереометрия.
    Личка заполнена! И чистить я ее не буду! Пользуйтесь адекватными средствами связи! Спасибо.

    Seamos realistas y hagamos lo imposible!

    Ernesto Che Guevara
    Переехал сюда: SteinBlume (ex ATM CP/M Explorer)
    http://era-cg.su

    Скрытый текст

    Speccy2010 r2 (Спасибо m.d. & xlat),
    Sinclair ZX Spectrum + (Спасибо stepmotor),
    ZX Evolution rev.C + 5'25 FDD Epson SD-700AA + NedoPC PAL-Coder (Спасибо m.d. & xlat)
    [свернуть]

  5. #154

    Регистрация
    22.03.2018
    Адрес
    г. Усть-Каменогорск, Казахстан
    Сообщений
    1,410
    Спасибо Благодарностей отдано 
    91
    Спасибо Благодарностей получено 
    178
    Поблагодарили
    138 сообщений
    Mentioned
    21 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    "плоскости" отражают суть процесса, а "план"..

  6. #155

    Регистрация
    06.12.2017
    Адрес
    г. Москва
    Сообщений
    1,724
    Спасибо Благодарностей отдано 
    167
    Спасибо Благодарностей получено 
    406
    Поблагодарили
    257 сообщений
    Mentioned
    11 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Кстати, на счёт плоскостей. Возможно, придётся развернуть алгоритм на 90°
    Раньше я перебирал все объекты (спрайты) и заполнял графическими данными массив строк. Проблема была в том, что непонятно какой длины получится каждая строка.
    Но, возможно, правильней во внешнем цикле перебирать экранные строки, а во внутреннем цикле для каждой строки смотреть что за объекты в неё попадают, брать из соответствующих спрайтов только по одной строчке графических данных и заносить в массив. Это вроде бы дольше, но зато конечный вывод массива будет «вжух!»
    manwe.pdp-11.ru

  7. #156

    Регистрация
    06.12.2017
    Адрес
    г. Москва
    Сообщений
    1,724
    Спасибо Благодарностей отдано 
    167
    Спасибо Благодарностей получено 
    406
    Поблагодарили
    257 сообщений
    Mentioned
    11 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Попробовал идею со строками. Назвал этот подход "scanlines".
    Для компьютеров с маленьким объёмом памяти идея очень вдохновляющая: двойной буфер экрана, размер которого... не зависит от размера основного экрана! А зависит лишь от площади присутствующих на экране анимированных спрайтов. В моём эксперименте с семью спрайтами размер буфера получился всего 776 байт.

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

    P.S. ещё идея со сканлайнами интересна тем, что она решает проблему выхода (полного или частичного) спрайта за пределы отображаемой области.
    Последний раз редактировалось Manwe; 30.11.2018 в 13:02.
    manwe.pdp-11.ru

  8. #157

    Регистрация
    06.12.2017
    Адрес
    г. Москва
    Сообщений
    1,724
    Спасибо Благодарностей отдано 
    167
    Спасибо Благодарностей получено 
    406
    Поблагодарили
    257 сообщений
    Mentioned
    11 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    S_V_B, достаточно шестнадцати движущихся объектов для каждого экрана? Если да, то попробую массив слов, в которых каждый бит отвечает за 1 объект - присутствует он в данной экранной строке или нет.
    manwe.pdp-11.ru

  9. #158

    Регистрация
    22.03.2018
    Адрес
    г. Усть-Каменогорск, Казахстан
    Сообщений
    1,410
    Спасибо Благодарностей отдано 
    91
    Спасибо Благодарностей получено 
    178
    Поблагодарили
    138 сообщений
    Mentioned
    21 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    7 объектов максимум.

    Как вычисляются экранные координаты для отрицательных Х?
    Последний раз редактировалось S_V_B; 30.11.2018 в 17:45.

  10. #159

    Регистрация
    06.12.2017
    Адрес
    г. Москва
    Сообщений
    1,724
    Спасибо Благодарностей отдано 
    167
    Спасибо Благодарностей получено 
    406
    Поблагодарили
    257 сообщений
    Mentioned
    11 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от S_V_B Посмотреть сообщение
    7 объектов максимум.
    Считая всякие искрящиеся разряды?

    Как вычисляются экранные координаты для отрицательных Х?
    Пока никак. Сканлайны отсекат только координату Y.
    manwe.pdp-11.ru

  11. #160

    Регистрация
    22.03.2018
    Адрес
    г. Усть-Каменогорск, Казахстан
    Сообщений
    1,410
    Спасибо Благодарностей отдано 
    91
    Спасибо Благодарностей получено 
    178
    Поблагодарили
    138 сообщений
    Mentioned
    21 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    /* Считая всякие искрящиеся разряды? */
    Да.

    я сначала хотел вращать спрайты там же где они лежат, что бы каждый раз только один сдвиг делать, двигаемся же по одной точке.
    потом сделал ASHC.
    Чтобы не моргало через буфер фон->BIC (x-1)->BIS(X)->MOV.
    В итоге ломаю голову как с периферийным процессором подружиться (диспетчер процессов) чтобы два экрана переключать.
    Так будет проще и быстрее.

    "Аппаратные" спрайты УКНЦ.. вещь сомнительная, скорее всего под знакогенератор заточена.
    Последний раз редактировалось S_V_B; 30.11.2018 в 18:59.

Страница 16 из 23 ПерваяПервая ... 121314151617181920 ... ПоследняяПоследняя

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

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

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

Похожие темы

  1. Портирование Lode Runner БК->УКНЦ
    от nzeemin в разделе ДВК, УКНЦ
    Ответов: 103
    Последнее: 12.12.2020, 04:04
  2. Ответов: 21
    Последнее: 04.10.2019, 18:03
  3. Портирование Stop the Express
    от nzeemin в разделе ДВК, УКНЦ
    Ответов: 90
    Последнее: 21.11.2018, 09:46
  4. Ответов: 38
    Последнее: 23.11.2014, 16:00

Ваши права

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