User Tag List

Страница 14 из 32 ПерваяПервая ... 101112131415161718 ... ПоследняяПоследняя
Показано с 131 по 140 из 317

Тема: GameNoname

  1. #131

    Регистрация
    29.06.2022
    Адрес
    г. Ирвайн, США
    Сообщений
    408
    Спасибо Благодарностей отдано 
    590
    Спасибо Благодарностей получено 
    340
    Поблагодарили
    109 сообщений
    Mentioned
    3 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    jerri, то есть первый буфер который 768 байт содержит байт в котором запакованы данные об индексе тайла во втором буфере и признак действия с тайлом (стереть, нарисовать). Индекс от 0 до 31.
    А в момент отрисовки ты по всему первому буферу в 768 байт пробегаешь или как то хитрее например пропускаешь пустые строки?

    - - - Добавлено - - -

    BlaireCas, подход интересный, но требует очень много памяти. Нужно подумать

    - - - Добавлено - - -

    Stl75, мне нравится этот подход так как он позволяет рисовать спрайт целым куском во многих случаях. Это сильно уменьшает накладные расходы, но я тоже не могу придумать оптимальный алгоритм для отрисовки пересекающихся областей. То есть нужно считать колижен всех объектов которые рисуются на экране. Но возможно это как-то можно будет использовать и для игровой логики тоже, тогда это будет более оправданно.

    - - - Добавлено - - -

    Если найти быстрый способ определения задевает ли спрайт кого-то ещё или нет, то можно скрестить этот метод с тайловым выводом. То есть рисовать спрайт сразу на экране если он не задевает никого, и рисовать спрайт тайловым методом если задевает.

  2. #132

    Регистрация
    06.02.2020
    Адрес
    г. Москва
    Сообщений
    482
    Спасибо Благодарностей отдано 
    139
    Спасибо Благодарностей получено 
    390
    Поблагодарили
    145 сообщений
    Mentioned
    8 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Кстати тут наверное уже думалось про то что главного героя и скелетов можно тупо сделать на одном цветовом плане белым цветом который будет перекрывать остальные цвета (да увы будет потеряна вся крутая цветность компа, но блин - дофига игр где одноцветные спрайты и они смотрятся нормально и по 8-ми битному, а то с этими 16-ю цветами полный швах со скоростью будет)
    Шедевр портирования на УКНЦ - игра Highway Encounter
    Эмуляторы: UKNCBTL, EmuStudio (респект авторам)

  3. #133

    Регистрация
    01.03.2005
    Адрес
    Samara
    Сообщений
    4,866
    Спасибо Благодарностей отдано 
    328
    Спасибо Благодарностей получено 
    310
    Поблагодарили
    234 сообщений
    Mentioned
    12 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от parallelno Посмотреть сообщение
    jerri, то есть первый буфер который 768 байт содержит байт в котором запакованы данные об индексе тайла во втором буфере и признак действия с тайлом (стереть, нарисовать). Индекс от 0 до 31.
    в первом буфере номера тайлов фона
    во втором буфере номер модифицированного тайла 2-255 либо ничего либо 1 команда восстановления фона

    А в момент отрисовки ты по всему первому буферу в 768 байт пробегаешь или как то хитрее например пропускаешь пустые строки?
    по всему

    Код:
    drop_screen0		
    	or	(hl)
    	call	nz,drop_tile
    	inc	l
    	jp	nz,drop_screen0
    	inc	h
    	ret
    С уважением,
    Jerri / Red Triangle.

  4. #134

    Регистрация
    13.05.2018
    Адрес
    г. Тамбов
    Сообщений
    817
    Спасибо Благодарностей отдано 
    345
    Спасибо Благодарностей получено 
    659
    Поблагодарили
    200 сообщений
    Mentioned
    10 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Stl75, мне нравится этот подход так как он позволяет рисовать спрайт целым куском во многих случаях. Это сильно уменьшает накладные расходы, но я тоже не могу придумать оптимальный алгоритм для отрисовки пересекающихся областей. То есть нужно считать колижен всех объектов которые рисуются на экране. Но возможно это как-то можно будет использовать и для игровой логики тоже, тогда это будет более оправданно.
    Привет всем...

    Подумал про обработку буферных областей...
    Например...

    11111BBB2222

    В таком варианте - для буферных областей есть такие варианты -
    1. Персонаж из области 1 выходит в B - 1-B,
    2. Персонаж в B - B,
    3. Персонаж из B - переходит в область 2 - B-2...

    Случай 1 - обрабатываем совместно с областью 1,
    когда область 1 - обновляем...
    Случай 3 - совместно с областью 2...
    Если персонажи в 1 и 3 пересекаются с буферными -
    обновляем эти буферные персонажи...
    Случай 2 - оставшиеся буферные персонажи обновляем отдельно...

    ???
    Последний раз редактировалось Stl75; 05.09.2022 в 14:34.

  5. #135

    Регистрация
    06.02.2020
    Адрес
    г. Москва
    Сообщений
    482
    Спасибо Благодарностей отдано 
    139
    Спасибо Благодарностей получено 
    390
    Поблагодарили
    145 сообщений
    Mentioned
    8 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Stl75 Посмотреть сообщение
    Подумал про обработку буферных областей...
    Персонажи когда рисуются в буфер - типа ставишь 2 например
    000000
    002200
    000000

    Рисуешь на экран:
    проходишь по массиву, всё что больше 0 {
    буфер -> экран
    все что больше 1 надо после отрисовки на экран восстановить буфер тем тайлом который там есть
    уменьшить на 1
    }

    Персонаж пошел вправо:
    000000
    001220
    000000
    Отрисовались на экран все 1,2, восстановились в буфере те где 2, ну и уменьшаем на 1

    Персонаж остановился
    000000
    000220
    000000

    Персонаж телепортировался влево (внезапно) - тут восстановит экран там где он был до этого
    000000
    220110
    000000

    А еще вообще если без буфера - то можно сделать ведь чтобы персонажи не пересекались друг с другом. Ну мол скелеты чтобы не наезжали на другие скелеты и на игрока. Глядишь и буферизация не нужна станет.
    Последний раз редактировалось BlaireCas; 05.09.2022 в 15:32.
    Шедевр портирования на УКНЦ - игра Highway Encounter
    Эмуляторы: UKNCBTL, EmuStudio (респект авторам)

  6. #136

    Регистрация
    29.06.2022
    Адрес
    г. Ирвайн, США
    Сообщений
    408
    Спасибо Благодарностей отдано 
    590
    Спасибо Благодарностей получено 
    340
    Поблагодарили
    109 сообщений
    Mentioned
    3 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Попробовал писать таловый рендер, на пол пути бросил изза того что получался чудовишный оверхед на обработку такого рендера. В итоге сделал back buffer на квазидиске.
    Пусть пока нет скелеликов, но проделана тонна работы. Персонаж теперь стирается и рисуется в квазидиске. Затем переносится на основной экран. Прерывания не запрещаются. Перенос части библиотеки спрайтов на квазидиск было увлекальным занятием. Функции спрайтов теперь обрабатываются как библиотека с внешними метками. Это буквально дополнительный проект, который компилируется, архивируется, потом линкуется с основной программой. Потом библиотека разархивируется рантайм и копируется на квази-диск. Все функции вызываются оттуда. Это дает допольнительных 8K и будет очень полезно в дальейшем когда настанет время разворачивать циклы. Часть из них уже развернута, но все еще есть что анролить.

    Эти 3 пользователя(ей) поблагодарили parallelno за это полезное сообщение:

    BlaireCas(16.09.2022), nzeemin(16.09.2022), svofski(16.09.2022)

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

  8. #137

    Регистрация
    20.06.2007
    Адрес
    С.-Петербург
    Сообщений
    4,299
    Спасибо Благодарностей отдано 
    1,028
    Спасибо Благодарностей получено 
    813
    Поблагодарили
    484 сообщений
    Mentioned
    26 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Размах использования кваза впечатляет. Интересно будет увидеть как это работает с полом и скелетиками.
    Больше игр нет

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

    parallelno(16.09.2022)

  9. #138

    Регистрация
    24.01.2008
    Адрес
    Уфа
    Сообщений
    3,926
    Спасибо Благодарностей отдано 
    105
    Спасибо Благодарностей получено 
    290
    Поблагодарили
    216 сообщений
    Mentioned
    10 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от parallelno Посмотреть сообщение
    Пусть пока нет скелеликов
    Скелёлики

  10. #139

    Регистрация
    20.06.2007
    Адрес
    С.-Петербург
    Сообщений
    4,299
    Спасибо Благодарностей отдано 
    1,028
    Спасибо Благодарностей получено 
    813
    Поблагодарили
    484 сообщений
    Mentioned
    26 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от b2m Посмотреть сообщение
    Скелёлики
    Лёлики?
    Больше игр нет

  11. #140

    Регистрация
    06.02.2020
    Адрес
    г. Москва
    Сообщений
    482
    Спасибо Благодарностей отдано 
    139
    Спасибо Благодарностей получено 
    390
    Поблагодарили
    145 сообщений
    Mentioned
    8 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от parallelno Посмотреть сообщение
    но проделана тонна работы
    Ну.. никто никуда не спешит. Люди год пишут игрушки и недописывают (я например и не только). Но вообще с музыкой смотрится очень даже весело. Но постойте? Это что - так ВИ53 может звучать?
    Шедевр портирования на УКНЦ - игра Highway Encounter
    Эмуляторы: UKNCBTL, EmuStudio (респект авторам)

Страница 14 из 32 ПерваяПервая ... 101112131415161718 ... ПоследняяПоследняя

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

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

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

Ваши права

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