User Tag List

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

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

Комбинированный просмотр

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1

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

    По умолчанию

    Цитата Сообщение от Sameone Посмотреть сообщение
    P.S. Номер режима 0 может быть использован (зарезервирован) для текстового режима видеокарты (пригодится для системных и офисных программ).
    P.S.2. Не понимаю какая разница с какого адреса у нас видеопамять: с 0000 или 8000, всё равно банками щёлкать. Хотя как бы процессору и незачем лезть непосредственно в память спрайтовой видеокарты (а Метеор хоть и несколько оригинальная, но таки спрайтовая видеокарта). А вот источником головной боли для программиста/хакера-адаптатора отображение видеопамяти поверх системного ПЗУ вполне может стать. Ведь игра вполне может вызывать отдельные функции оттуда. Или использовать системный шрифт.
    320х240 кратен режиму монитора 640х480. Каждая точка увеличена в два раза по-вертикали и по-горизонтали. В режиме 256х192 лишние точки используются для бордера. Под номером 0 стандартный экран. Адрес 0000 - для упрощения вычислений адреса байта на экране. Z80 не имеет доступа к памяти видеокарты. Банками переключать не надо. Адреса у всех байтов, из которых получаются 8 точек одинаковые. Байты записываются по-очереди в один адрес. Но в слоях 8 точек в любом дополнительном режиме представлены 8 байтами. Количество битов на точку в режимах с палитрой - это количество цветов на спрайт. Это может быть один байт или несколько. Без разницы. Под атрибуты память не тратится. Закрашивание точек происходит после записи последнего байта из 1-4 для разных режимов. Из ПЗУ читается как-обычно. И подпрограммы в нем тоже могут выполняться. В видеокарту происходит только запись. Но можно эту запись временно отключать на время работы некорректных подпрограмм в ПЗУ, которые пишут в адрес ПЗУ.
    Последний раз редактировалось zx-kit; 28.09.2015 в 18:39.
    "L-256"

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

  3. #2

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

    По умолчанию

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

    ---------- Post added at 22:44 ---------- Previous post was at 22:38 ----------

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

  4. #3

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

    По умолчанию

    Дык никто не говорит что *****, старые игры переделать и я мож помогу
    Просто я до сих пор не пойму зачем столько сложностей для программиста если в железяке стоит довольно мощная плис и аж 1-8 метров видеопамяти, и при этом до сих пор непонятно как же выводить с точностью до пикселя, я не хочу крутить по битам спрайт диззи в буфере, я хочу тупо вывести его на экран, и пусть это будет даже 1 байт на пиксель, всё равно всё храниться в видеопамяти, я в самом начале игры возьму чёрно-белый спрайт, 1 байт на 8 пикселей, наложу на него цвет, и закину в видеопамять уже в виде 1 байт на пиксель, а в нужный момент просто дам команду для переброски из адреса спрайта в адрес на экране с учетом размеров спрайта, а если мне захочется сделать новую игру или графический редактор то я сразу буду хранить это в 1 байт на точку.

    п.с. Ничего личного, это моё виденье ситуации

  5. #4

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

    По умолчанию

    Старую игру всё равно придётся полностью делать ЗАНОВО!
    Иначе какой тогда смысл вообще начинать?
    Экономия 5-10% мощности CPU не есть гуд, переделывать даже 1 старую игру это ппц какой гемор, а если это делать только из-за того что бы убрать на паре спрайтов наползание цвета то не вижу в этом смысла. Почему нельзя сделать тупо видео DMA ?
    А если я захочу сделать игру и в 256x192 и в 640x480 ? Всё? Тупик?
    А ведь с видео дма это решается примитивно и просто, AMIGA тому подтверждение.

  6. #5

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

    По умолчанию

    Цитата Сообщение от Nesser Посмотреть сообщение
    Старую игру всё равно придётся полностью делать ЗАНОВО!
    Иначе какой тогда смысл вообще начинать?
    Не обязательно. Можно остановиться на минимальной доработке - убрать клешинг. Есле захочется что-то улучшить, можно работать дальше. Каждый будет выбирать, до какой степени модернизировать игру.
    Экономия 5-10% мощности CPU не есть гуд, переделывать даже 1 старую игру это ппц какой гемор, а если это делать только из-за того что бы убрать на паре спрайтов наползание цвета то не вижу в этом смысла.
    Главное, что нет особого торможения в новых режимах. Если клешинг не видно - нет смысла переделывать игру.
    Почему нельзя сделать тупо видео DMA ?
    А если я захочу сделать игру и в 256x192 и в 640x480 ? Всё? Тупик?
    А ведь с видео дма это решается примитивно и просто, AMIGA тому подтверждение.
    Надо все делать поэтапно. Нет пределу совершенства. Сначала отладим программое рисование спрайтов без клешинга. Потом продолжим разработку блиттера. DMA наверно не понадобится.

    ---------- Post added at 18:28 ---------- Previous post was at 18:26 ----------

    Цитата Сообщение от Nesser Посмотреть сообщение
    А можно нагрузить плис выводом анимационного заднего фона?
    А зачем и как это будет выглядеть ?
    "L-256"

  7. #6

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

    По умолчанию

    А можно нагрузить плис выводом анимационного заднего фона?

  8. #7

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

    По умолчанию

    Сейчас мне скажут что создавай свою ветку и там пиши про свою новую видеокарту

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

  9. #8

    Регистрация
    16.08.2005
    Адрес
    Estonia,Tallinn
    Сообщений
    1,131
    Спасибо Благодарностей отдано 
    55
    Спасибо Благодарностей получено 
    257
    Поблагодарили
    195 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    вводные
    1. игры - код старый, сырцы недоступны, разработчики недоступны, для вывода графики писался зубодробительный код что бы выжать максимум
    2. новый девайс со своей системой команд и требованием существенных внесения изменений в исполняемый код
    мой конклюжн - адаптация при таком возьмет примерно столько же сколько написание игры с нуля, таких стахановых в лагере спектрумистов врядли есть

  10. #9

    Регистрация
    26.11.2013
    Адрес
    г. Новосибирск
    Сообщений
    1,104
    Спасибо Благодарностей отдано 
    1,345
    Спасибо Благодарностей получено 
    323
    Поблагодарили
    152 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Raydac Посмотреть сообщение
    возьмет
    Оно должно давать. Давать наслаждение работой своего мозга, разбираясь в интересном старом загадочном коде. Получая наглядный результат.
    Не интересно - просто брось это. И никаких проблем.

  11. #10

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

    По умолчанию

    Берём хотя бы диззи, к примеру в лесу стоит факел, нужно сделать отрисовку всего экрана с учётом света от факела, при чём с минимальной нагрузкой, единственный вариант это наложить слой с радиальной яркостью которая изменит яркость предыдущего слоя, то есть чисто маска есть/нет здесь не прокатит. Так же интересно выглядело солнце вверху от которого идёт яркостная засветка фона.
    Ну это в принципе мелочи.

    Ландшафтный фон - загружаем в память видеокарты файл карты и спрайты к ней. Допустим карта 512 на 256 двухбайтовых слов в которых содержится номер спрайта ну и к примеру разброс анимации по номеру спрайта, к примеру спрайты 16 на 16, карта получается 8192 на 4096 пикселей, то есть 32 на 21 экран, че то я переусердствовал ну да бог с ним, так вот, подаю я к примеру координаты 2785, 476 и карточка будет отображать слой с ландшафтом по этим координатам, то есть CPU вообще не имеет гемора с отображением карты, а если видеокарте сказать что разрешение было изменено с 256x192 на 640x480 то она просто изменит поправочный делитель в блоке вывода и на экране прекрасно будет выводиться другое разрешение, можно даже завести туда все стандартные, скажем так на будущее чем мощнее потом ставить плисину тем большее разрешение она будет успевать перелопачивать, одна и та же игра будет заведомо работать на б`О`льших разрешениях.
    Может вообще сделать её командно-управляемую? как встроенный калькулятор BASICа у которого свой язык, подаешь карте адрес и она начинает выполнять программу в своей памяти, запихать в плисину небольшой специализированный cpu с небольшим набором команд я думаю не сложно

    нуу пока что так

Страница 58 из 70 ПерваяПервая ... 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

Ваши права

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