User Tag List

Страница 29 из 71 ПерваяПервая ... 252627282930313233 ... ПоследняяПоследняя
Показано с 281 по 290 из 703

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

  1. #281

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

    По умолчанию


    Уточнено описание режимов графики:

    Mode 0. 256х192 точек, цвет задается атрибутами, сохранены бордюрные эффекты, возможность включения палитры ULA+, fINT=50 Hz. Со скоростью развертки TV цвета точек целого кадра из экранной области ZX Spectrum и бордюра записываются в буфер экрана. При записи используется стандартная палитра или ULA+. Из буфера экрана с частотой кадров 50 или 60 Гц (задается перемычками или прошивкой) цвета точек выводятся на видеоустройство (телевизор, монитор или экран PC в эмуляторе). Стандартный режим ZX SPECTRUM после сброса.

    Mode 1. 256х192 точек, цвет задается атрибутами, без бордюрных эффектов, fINT=50 Hz, с дополнительными возможностями для устранения клешинга атрибутов (в стадии проработки). После импульса INT на максимальной скорости цвета точек из экранной области ZX Spectrum без бордюра записываются в буфер экрана. При записи используется стандартная палитра или ULA+. Сверху возможна печать спрайтов. Из буфера экрана с частотой кадров 50 или 60 Гц цвета точек выводятся на видеоустройство (телевизор, монитор или экран PC в эмуляторе).

    Mode 2. 320х240 точек. 15 бит на цвет точки (любой из 32768 или прозрачный), fINT=60 Hz. Картинка в игре делится на статическую и динамическую области. В статической области изображается вспомогательная, медленно меняющаяся информация в игре, например, выбранное оружие, количество снарядов и набранных очков. В динамической области возможен аппаратный скроллинг экрана. Фон строится из карты тайлов.

    Программист указывает координаты и размер динамической области на экране и координаты в карте тайлов. После INT по карте тайлов и координатам в ней строится формируется изображение фона игры путем копирования изображений тайлов из буфера тайлов в буфер экрана. Номера тайлов могут быть от 0 до 4095. Размер тайлов по 8х8 точек. Две карты тайлов размером по 256х512 клеток. В первой карте - номера тайлов для изображения фона. Вторая карта предназначена для аркадных атрибутов. По ним определяется, что находится в данном месте - препятствие, проходимое место, опора, предмет, который можно подобрать, другой герой и т.д.

    Далее выполняются командные буферы, куда Z80 записал номера и координаты спрайтов и тайлов для печати поверх фона в буфер экрана. Сверху возможно рисование линий аппаратными точками заданным цветом. Из буфера экрана с частотой кадров 60 Гц цвета точек выводятся на видеоустройство (телевизор, монитор или экран PC в эмуляторе). Если в буфере экрана точка прозрачного цвета - то при выводе он будет заменен на BACK_COLOUR. Используется два буфера экрана - на одном строим изображение, со второго изображение в этот момент выводится на видеоустройство.

    Mode 3. 640х480 точек. 15 бит на цвет точки (любой из 32768 или прозрачный), fINT=60 Hz. Похож на режим 2, только точек в два раза больше по-вертикали и по-горизонтали.

    Mode 4. 320х240 точек. У тайлов и спрайтов по 4 бит на цвет точки с возможностью выбора своей палитры (из 32768 или прозрачный), fINT=60 Hz. При печати тайла или спрайта в буфер экрана формируются цвета по 15 бит на точку, В остальном похож на режим 2.

    Mode 5. 640х480 точек. У тайлов и спрайтов по 4 бит на цвет точки с возможностью выбора своей палитры (из 32768 или прозрачный), fINT=60 Hz. При печати тайла или спрайта в буфер экрана формируются цвета по 15 бит на точку, В остальном похож на режим 3.
    Последний раз редактировалось zx-kit; 12.07.2015 в 00:40.
    "L-256"

  2. #282

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

    По умолчанию

    А наложение двух спектрумовских экранов для исключения мерцания в мультиколорных демках не будет?

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

    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
    [свернуть]

  3. #283

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

    По умолчанию

    Цитата Сообщение от Eagle Посмотреть сообщение
    А наложение двух спектрумовских экранов для исключения мерцания в мультиколорных демках не будет?
    Как писал alone, мультиколор было сложно использовать. Как и графику ATM. Для ULA+ возможно будут перекрашенные игры от наших иностранных коллег. Для сложных и медленных режимов мог написать игру только один программист. Лучше смотреть в будущее. Надо сделать так, чтобы игры было писать легко. А у нас еще даже аппаратная точка не работает. А это резко ускорило бы векторную графику типа ELITE.

    Давайте лучше обсудим, какой должна быть видеокарта для моей любимой игры WARCRAFT 2. Пока мы заложили возможности для разработки денди-игр - аппаратный вывод тайлов размером 8х8 из карты тайлов, апппаратный скроллинг в окне, наложение спрайтов сверху.



    Допустим Вячеслав Медноногов Часть 1, Часть 2, или обычный программист решил написать для нового режима Спектрума игру типа Черный Ворон. Посмотрев тайлы и спрайты в WARCRAFT 2, узнаем, что тайлы имеют размер 32х32, размер спрайта лучника и троля с топором 72х72. Спрайты у героев могут быть разного размера, количество фаз тоже разное, около 12-14 на каждое направление, некоторые направления зеркалятся. По данным Вячеслава Медноногова размер карты в игре 128х128 клеток. Скорости Z80 хватит, если мы ему поможем ускорить вывод на экран.

    Приходим к выводу, что для аппаратного изображения фона нужно, чтобы в карте тайлов можно было разместить тайлы 32х32. Глядя на спрайты можно сделать вывод, что для спрайтов хорошего качества 16 цветов на спрайт маловато. То есть надо 256 (8 битов) с палитрой или HI-COLOR (15 битов). Также надо решить. как удобнее рисовать спрайты и в каком формате их хранить в памяти видеокарты - целой картинкой на каждого героя игры или нарезав на отдельные куски. Также надо придумать команды, для простого указания на спрайт, используя имя героя, направление движения, номер фазы. Желательно. чтобы видеокарта получала адрес начала спрайта. то есть надо где-то хранить информацию по спрайтам. Это важный вопрос для упрощения программирования и для ускорения вывода на экран.


    Еще надо придумать как, имея один спрайт, перекрашивать его в разные цвета кланов.
    Последний раз редактировалось zx-kit; 13.07.2015 в 06:21.
    "L-256"

  4. #284

    Регистрация
    21.07.2010
    Адрес
    Ukraine
    Сообщений
    276
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    4
    Поблагодарили
    3 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    zst, кто сейчас участвует в разработке, статус, схема, рабочее железо, прототип?

  5. #285

    Регистрация
    21.12.2005
    Адрес
    Kyiv/Ukraine
    Сообщений
    415
    Спасибо Благодарностей отдано 
    7
    Спасибо Благодарностей получено 
    1
    Поблагодарили
    1 сообщение
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от zst Посмотреть сообщение
    Еще надо придумать как, имея один спрайт, перекрашивать его в разные цвета кланов.
    При печати спрайта, можно подсовывать таблицу, какие цвета, на какие поменять при печати.
    V6Z80P - Back for Good

  6. #286

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

    По умолчанию

    Цитата Сообщение от MVV Посмотреть сообщение
    zst, кто сейчас участвует в разработке, статус, схема, рабочее железо, прототип?
    Участвуют: я, надеюсь ты и другие читатели этой темы. Давайте разрабатывать открыто, on-line. Вместе у нас больше шансов разработать что-то стоящее. Железо пока не нужно. Сначала опробуем на ReVeRse и Speccy2010 - ведь у некоторых программистов они есть. Может попробуют в работе, подскажут. что не так - мы исправим. Да, ZX_Fanat внес материальный вклад на мой счет для покупки комплектующих для разработки видеокарты.

    ---------- Post added at 19:01 ---------- Previous post was at 18:52 ----------

    Цитата Сообщение от Valen Посмотреть сообщение
    При печати спрайта, можно подсовывать таблицу, какие цвета, на какие поменять при печати.
    Я вот что предлагаю. Допустим, для уменьшения занимаемой памяти и увеличения скорости копирования спрайтов мы выбрали режим 8 бит на точку в тайлах и спрайтах с возможностью выбора из 4х палитр. Одну палитру закрепим за спрайтами, а три - на тайлы для разной местности. Например, пустыня, снег и лед и лес. При чтении номера цвета точки из буфера спрайтов берем по номеру цвет из палитры и записываем в буфер экрана 15 бит цвета + старший бит как признак прозрачности.


    MVV, просвети, можно читать-писать в память палитры и двухпортовой памяти для буфера VGA на тактовой частоте FGPA, или она работает медленнее ?

    Продолжим о замене цветов для отображения разных кланов.


    Выше показаны двухголовые великаны из разных кланов. Они отличаются цветом сумок. Допустим, что нам достаточно 8 цветов для различения кланов: черный, красный, синий, зеленый, желтый, фиолетовый, голубой и белый. Каждый цвет может иметь 32 градации от черного до яркого. Выделим для этих 32 цветов старшие номера от 11100000 до 11111111. Нарисуем одного великана, например, с красной сумкой. Как вы знаете, перечисленные выше 8 цветов отличаются тем, в какой комбинации включены лучи RGB монитора. Поэтому для перекрашивания части спрайта в нужный цвет используем маску клана. 111 означает, что все лучи RGB включены и сумка будет в оттенках серого. 100 - красная, 010 - зеленая, 001 - синяя, 110 - желтая и т.д., 000 - черная.

    ---------- Post added at 19:51 ---------- Previous post was at 19:01 ----------

    Если в 32 старших номерах цветов оставить только 5 младших разрядов и записывать это число в те каналы, маска которого равна 1, мы получим 32 градации яркости нужного из восьми цветов. Нет только 7, так как по этому способу черный получится без градаций яркости. Только 7, зато это просто реализовать.
    Последний раз редактировалось zx-kit; 13.07.2015 в 17:36.
    "L-256"

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

  8. #287

    Регистрация
    21.07.2010
    Адрес
    Ukraine
    Сообщений
    276
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    4
    Поблагодарили
    3 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    zst, может тогда уже лучше ts-conf установить, доработать видео часть на зависть zx-evo? Они то в опе сейчас сидят тихо, сотрудничать не хотят, гордые. Новое железо есть, Speccy2010 и ReVerSE-U16, на U16 ещё можно и сеть поднять, железо отлажено, архитектура позволяет сделать всё о чем тут понаписали, разрабатывать велосипед уже не нужно, а это время-деньги, не факт что разработка платы это сейчас актуальная и разумная идея. Новые платы реверса Rev.C через 2-3 недели появятся в продаже, к этому моменту возможно тестовую конфигурацию успею дописать, потихоньку сам ведь делаю. Еще неделя и будет uBus2ZXBus переходник, а это все платы для спектрума подключить можно будет, хоть звуковую "ZXM-MoonSound", хоть контроллер дисковода, винта...

  9. #288

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

    По умолчанию

    Цитата Сообщение от MVV Посмотреть сообщение
    zst, может тогда уже лучше ts-conf установить, доработать видео часть на зависть zx-evo? Они то в опе сейчас сидят тихо, сотрудничать не хотят, гордые. Новое железо есть, Speccy2010 и ReVerSE-U16, на U16 ещё можно и сеть поднять, железо отлажено, архитектура позволяет сделать всё о чем тут понаписали, разрабатывать велосипед уже не нужно, а это время-деньги, не факт что разработка платы это сейчас актуальная и разумная идея. Новые платы реверса Rev.C через 2-3 недели появятся в продаже, к этому моменту возможно тестовую конфигурацию успею дописать, потихоньку сам ведь делаю. Еще неделя и будет uBus2ZXBus переходник, а это все платы для спектрума подключить можно будет, хоть звуковую "ZXM-MoonSound", хоть контроллер дисковода, винта...
    Видеорежим надо в FPGA делать так, чтобы работал на любом циклоне с SDRAM. Настроить частоту PLL, добавить модуль вывода (HDMI в ReVerSE или аналоговый VGA в Speccy2010). А остальное должно быть общее.

    Я и планировал только видеочасть делать. Все остальное обычно в компьютере уже есть или можно поставить. Видеокарта - это часть модульного компьютера. Может сделаю когда-нибудь. Это ReVerSE никак не должно мешать. Наоборот, это будет хорошо, если у людей будет выбор.

    Если дорабатывть ts-conf, то видеочасть надо свою всю, модуль SDRAM свой. Может порт управления этот же взять ? Я кроме видеочасти там ничего не изучал.

    NedoPC и TS-Labs любят разрабатывать тихо, без лишнего шума, а потом выдать готовый продукт. Мне больше нравится, как разрабатывает Mick. Видно процесс разработки, обсуждение.

    ---------- Post added at 22:00 ---------- Previous post was at 21:52 ----------

    Чтобы разработать эффективные видеорежимы надо представить, что разрабатываешь движок к игре. И смотреть, какие операции нужны, как их сделать эффективнее.

    Кстати когда делали WARCRAFT - сначала использовали спрайты из DUNE 2. Когда разрабатывали КАЗАКИ - сначала двигали спрайты из WARCRAFT 2.

    ---------- Post added at 22:05 ---------- Previous post was at 22:00 ----------

    Но им было труднее - им приходилось работать в рамках возможностей железа под DOS и WINDOWS. У нас же нет этих ограничений. Мы сделаем видеорежимы под себя. Давай продолжим разработку. Я пока не могу в полном объеме делать на FPGA. Покажи, что уже готово для новых режимов. Может что подскажу. Только пожалуйста не пытайся сделать все режимы по максимуму. Надо начать с простого. Надо организовать SDRAM в пакетный режим, настроить частоту на 125 МГц, двухпортовое ОЗУ для буфера VGA. Я уже писал об этом.
    "L-256"

  10. #289

    Регистрация
    23.12.2006
    Адрес
    Славный город Самара
    Сообщений
    484
    Спасибо Благодарностей отдано 
    135
    Спасибо Благодарностей получено 
    16
    Поблагодарили
    12 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от zst Посмотреть сообщение
    Также надо придумать команды, для простого указания на спрайт, используя имя героя, направление движения, номер фазы.
    По имени - это для бедных. Предлагаю следующие методы адресации спрайтов героя:
    - по показаниям свидетелей;
    - по свидетельствам очевидцев;
    - по доносу;
    - по наводке;
    - по словесному портрету;
    - по фотороботу героя, наконец.
    Последний раз редактировалось Sergey; 14.07.2015 в 07:46.
    С уважением,
    Gris / Red Triangle.
    _____________________________________
    ZX-EVO/TS-Labs config/NGS/HDD/SD-card
    Amiga A1200/Blizzard 1230@50/32/60GB
    Amiga A1200/Apollo 1260@66/32/60GB
    UnAmiga (C5) AGA GM7123 VideoDAC

  11. #290

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

    По умолчанию

    Цитата Сообщение от zst Посмотреть сообщение
    Как писал alone, мультиколор было сложно использовать.
    То есть реализовать некий noflic в подобие фильтру в эмуляторе unreal сложнее, чем прикрутить сотни команд для чудных блиттеров?

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

    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
    [свернуть]

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

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

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

Эту тему просматривают: 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

Ваши права

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