User Tag List

Страница 58 из 71 ПерваяПервая ... 545556575859606162 ... ПоследняяПоследняя
Показано с 571 по 580 из 703

Тема: Новый графический режим для игр

  1. #571

    Регистрация
    11.04.2009
    Адрес
    г. Санкт-Петербург
    Сообщений
    3,603
    Записей в дневнике
    15
    Спасибо Благодарностей отдано 
    19
    Спасибо Благодарностей получено 
    67
    Поблагодарили
    52 сообщений
    Mentioned
    1 Post(s)
    Tagged
    1 Thread(s)

    По умолчанию

    Цитата Сообщение от Nesser Посмотреть сообщение
    Непонятные для меня моменты:

    Если карта успевает отображать только 5 слоёв с прозрачностью, то какой смысл в 8 слоях?
    На отключенных слоях, например, можно рисовать следующий кадр, а потом по INT их включить, а слои с предыдущим изображением выключить.
    Что подразумевается под прозрачностью, просто отсутствие пикселя на данном плане и оставленный пиксель с предыдущего плана или же настоящая прозрачность - цвет пикселя на данном плане интерполированный с цветами пикселей предыдущих планов
    Пиксель не может отсутствовать на слое - он или прозрачный и через него будет видно изображение с нижних слоев при выводе на монитор или он цветной.
    при переделке игре надо оставлять стандартный вывод в 16384 и добавлять вывод цветов в пзу или полностью делать заново и всё выводить в пзу? если по 1 варианту так это явное увеличение выполнения, а если по 2-му то какой тогда смысл оставлять такую "неудобную" работу с пикселями если всё равно придётся всё перелопачивать
    Сначала все выводится стандартно с адреса 16384 в слое 0. Потом, для устранения клешинга главного героя (ГГ), подпрограмму его вывода можно изменить для вывода в режиме COLOR2M в слой 1. Цвета спрайта в переменной attr те же, что были раньше.
    скроллинг экрана надо будет делать по принципу 15 летней давности аля денди? мож у кого посвежей идея есть?

    Денди сделали в 1983 году, на год позже ZX Spectruma, то есть 32 года назад. Однако кое-что оттуда можно применить. У Спектрума нет аппаратного скроллинга. Почему бы не добавить ? Только у нас сдвиг будет задаваться на 1-8 точек. Это свежая идея ?
    я не понимаю как мне вывести спрайт в координаты x=243, y=179
    Пример копирования спрайта с маской для стандартного режима (40*8=320 такта):
    Код:
    ; hl - адрес спрайта с маской  
    ; de - адрес в области пикселей экрана               
    dup 8         
    
    ld a,(de)         
    and (hl)         
    inc l         
    or (hl)         
    inc l         
    ld (de),a         
    inc d         
    
    edup
    Пример копирования спрайта с маской для нового режима с линейной адресацией с адреса 0000 (36*8=288 тактов):
    Код:
    ; hl - адрес спрайта с маской  
    ; de - адрес в области пикселей экрана              
    dup 8         
    
    ldi         
    dec e         
    ldi         
    
    edup
    Пример копирования спрайта с маской для стандартного режима с использованием стека (36*8=288)
    Код:
    ; стек - адрес спрайта с маской 
    ; hl - адрес в области пикселей экрана      
    dup 8
    
    pop de
    ld a,(hl)
    and e
    or d
    ld (hl),a
    inc h
    
    edup
    Пример копирования спрайта с маской для нового режима с линейной адресацией с адреса 0000 с использованием стека (28*8=224 такта):
    Код:
    ; стек - адрес спрайта с маской 
    ; hl - адрес в области пикселей экрана      
    dup 8
    
    pop de
    ld (hl), e
    ld (hl), d
    inc l
    
    edup
    Последний раз редактировалось zx-kit; 12.09.2015 в 16:42.
    "L-256"

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

  3. #572

    Регистрация
    11.04.2009
    Адрес
    г. Санкт-Петербург
    Сообщений
    3,603
    Записей в дневнике
    15
    Спасибо Благодарностей отдано 
    19
    Спасибо Благодарностей получено 
    67
    Поблагодарили
    52 сообщений
    Mentioned
    1 Post(s)
    Tagged
    1 Thread(s)

    По умолчанию

    Цитата Сообщение от krt17 Посмотреть сообщение
    почти все игры выводящие с маской рисуют в буфер. Мгновенный фейл всей затеи с простой переделкой, придется все переделывать.
    А можно выводить без буфера сразу на экран.
    экономия в 4 такта без стека (вот не надо принудительно тормозить вывод) и 8 со стеком не столь существенна.
    Исправил на более быстрый вариант для стандартного режима. Экономия 4 такта при рисовании каждых 8 точек. Не много, но все равно это быстрее, чем в стандартном режиме. Даже если бы и медленнее было бы - устраняется клешинг атрибутов, а это - резкое улучшение качества графики. Кроме этого, с такой же скоростью рисует и режим "4 цвета на точку". Это позволит немного разукрасить старые игры, а в новых рисовать тайлы и спрайты более объемными или разноцветными.
    все игры с xor идут мгновенно лесом (казалось бы причем тут dizzy), ну или требуют также серьезной переделки
    xor то был не от хорошей жизни. можно ничего и не менять - тогда все останется по-старому. А можно поменять и получится лучшая графика.
    попиксельные выводилки немного посложнее
    В линейном режиме линии точками рисовать проще и быстрее
    аппаратный скролл сдвигом битов в памяти просто убил, то есть дма делаем но только для сдвига или как это должно работать, я не совсем понял
    Можно и без дма обойтись. Даем команду сдвинуть фон на точку - карта просто добавит смещение при отображении данного слоя без копирования.
    Последний раз редактировалось zx-kit; 12.09.2015 в 17:20.
    "L-256"

  4. #573

    Регистрация
    02.11.2007
    Адрес
    г. Краснодар
    Сообщений
    293
    Спасибо Благодарностей отдано 
    1
    Спасибо Благодарностей получено 
    1
    Поблагодарили
    1 сообщение
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Бог с ним, с задним планом, в обычном режиме он заодно и экран стирает, так а как мне вывести того же самого колобка который двигается с точностью 1 пиксель во все стороны? делать 2 буфера (пиксельный и масочный) на 8 пикселей больше по X и в нём уже сдвигать всё это по пикселям в зависимости от того куда мне надо сдвинуть? а если у меня 64 одинаково выглядящих объекта на экране которые динамично двигаются по экрану с точностью 1 пиксель? делать 64 буфера и в них двигать? или делать по 8 вариантов самого спрайта вместе с цветовой маской?

    как бы всё таки проц не помер на первой же трети экрана

    ---------- Post added at 21:41 ---------- Previous post was at 21:39 ----------

    И кстати, видео DMA в состоянии всего из 1 обычного экрана сделать хоть 16 планов, причём с наложением, стоит ли овчинка выделки?

  5. #574

    Регистрация
    11.04.2009
    Адрес
    г. Санкт-Петербург
    Сообщений
    3,603
    Записей в дневнике
    15
    Спасибо Благодарностей отдано 
    19
    Спасибо Благодарностей получено 
    67
    Поблагодарили
    52 сообщений
    Mentioned
    1 Post(s)
    Tagged
    1 Thread(s)

    По умолчанию

    Неспособность Z80 нарисовать колобка и необходимость для этого блиттера сильно преувеличена. До этого спрайты в играх рисовали без блиттера. Шарики есть во многих играх.

    Реализация 1 этапа расширения графики в эмуляторе и видеокарте "Meteor Graphics" позволит устранить клешинг и ускорить построение изображений в играх следующих типов:


    Цветные ходилки типа "Three Weeks in Paradise"




    Ходилки с несколькими планами фона типа "SABOTEUR 2"




    Игры с проволочной графикой типа "ELITE"




    Реализация 2 этапа расширения графики в эмуляторе и видеокарте "Meteor Graphics" позволит ускорить построение изображений в играх со скроллингом фона:


    "R-TYPE"




    "SILKWORM"




    "SABOTAGE"




    "Flying Shark"




    Посмотрите на игры для Денди. Не так уж много там спрайтов. Неужели Z80 не успеет их нарисовать ?


    "Darkwing Duck Черный Плащ"




    "Jackal"



    Конечно можно пытаться вывести огромное количество спрайтов на экран и перегрузить процессор. Но можно ведь выбрать разумное их количество !
    Последний раз редактировалось zx-kit; 13.09.2015 в 08:37.
    "L-256"

  6. #575

    Регистрация
    02.11.2007
    Адрес
    г. Краснодар
    Сообщений
    293
    Спасибо Благодарностей отдано 
    1
    Спасибо Благодарностей получено 
    1
    Поблагодарили
    1 сообщение
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    А на сколько процентов работа уже выполнена в железе?
    И на каком чипе будет?

  7. #576

    Регистрация
    02.11.2007
    Адрес
    г. Краснодар
    Сообщений
    293
    Спасибо Благодарностей отдано 
    1
    Спасибо Благодарностей получено 
    1
    Поблагодарили
    1 сообщение
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    А кто программно ваять будет?

    ---------- Post added at 22:53 ---------- Previous post was at 22:17 ----------

    Как подключаться будет, мгтф или разъём чей нибудь?

  8. #577

    Регистрация
    14.09.2014
    Адрес
    г. Гусь-Хрустальный
    Сообщений
    603
    Спасибо Благодарностей отдано 
    84
    Спасибо Благодарностей получено 
    1
    Поблагодарили
    1 сообщение
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Nesser Посмотреть сообщение
    Как подключаться будет, мгтф или разъём чей нибудь?
    Надеемся на ZX-BUS/NEMO-BUS, иначе в топку.

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

    ZX Spectrum +2 +divIDE + BDI
    Profi 1024k plus
    Scorpion ZS-256 Turbo+
    ZX Evolution rev.C2+NeoGS+SDCard HxC Floppy Emulator
    ZX Evolution rev.C2+ZXM-SoundCard Extreme+ZXM-MoonSound
    AVR ZX Spectrum V2.0
    Орион 128
    [свернуть]

  9. #578

    Регистрация
    11.04.2009
    Адрес
    г. Санкт-Петербург
    Сообщений
    3,603
    Записей в дневнике
    15
    Спасибо Благодарностей отдано 
    19
    Спасибо Благодарностей получено 
    67
    Поблагодарили
    52 сообщений
    Mentioned
    1 Post(s)
    Tagged
    1 Thread(s)

    По умолчанию

    Цитата Сообщение от Nesser Посмотреть сообщение
    А кто программно ваять будет?
    Прошивку для FPGA буду сам разрабатывать и кодировать. И форум поможет.
    Как подключаться будет, мгтф или разъём чей нибудь?
    Видеокарта "Meteor Graphics" будет разрабатываться в виде контроллера для шины ZX-BUS.

    Скроллинг по-горизонтали.
    Экран шириной 256 точек - это 32 столбика байтов с номерами от 0 до 31. Чтобы сдвинуть экран влево надо заполнить тайлами еще один столбик с номером 32. А чтобы через 8 сдвигов на 1 точку продолжилось изображение надо за это время заполнить тайлами еще и столбик с номером 33. Как прошел сдвиг, кратный байту номера, номера и адреса столбиков соответственно меняются. То есть номера столбиков у нас опять будут 0-31, но экран сдвинулся на 1 байт влево.

    Для сдвига экрана влево надо предварительно заполнять тайлами столбики с номерами 40 и 41.
    Последний раз редактировалось zx-kit; 14.09.2015 в 22:44.
    "L-256"

  10. #579

    Регистрация
    08.09.2005
    Адрес
    Воронеж
    Сообщений
    4,966
    Записей в дневнике
    3
    Спасибо Благодарностей отдано 
    319
    Спасибо Благодарностей получено 
    314
    Поблагодарили
    237 сообщений
    Mentioned
    11 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Мда, взялся было прочитать всё, что накопилось за время моего отсутствия в теме, дошёл до замены блиттера слоями... и бросил нафиг
    Прихожу без разрешения, сею смерть и разрушение...

  11. #580

    Регистрация
    15.02.2015
    Адрес
    г. Могилёв, Беларусь
    Сообщений
    931
    Спасибо Благодарностей отдано 
    15
    Спасибо Благодарностей получено 
    119
    Поблагодарили
    73 сообщений
    Mentioned
    3 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Lethargeek Посмотреть сообщение
    Мда, взялся было прочитать всё, что накопилось за время моего отсутствия в теме, дошёл до замены блиттера слоями... и бросил нафиг
    Это на какой странице было?
    ¡Un momento, señor fiscal!


Страница 58 из 71 ПерваяПервая ... 545556575859606162 ... ПоследняяПоследняя

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

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

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

Похожие темы

  1. Ответов: 18
    Последнее: 11.04.2021, 10:54
  2. графический редактор
    от yur в разделе Вектор
    Ответов: 1
    Последнее: 08.11.2012, 13:01
  3. графический режим на Атари
    от goblinish в разделе Atari
    Ответов: 3
    Последнее: 06.01.2012, 11:19
  4. графический софт для 48 К
    от goglus в разделе Софт
    Ответов: 6
    Последнее: 02.08.2006, 15:33

Ваши права

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