Последний раз редактировалось Lethargeek; 26.04.2008 в 22:39.
Прихожу без разрешения, сею смерть и разрушение...
На ПЦ нету. Учите сами.
Спрайты вообще не имеют никакого отношения к разрешению, оно просто остаётся каким было. Кому не хватает разрешения, идут на другую платформу.
Не вдвое а на трерть. Это раз. Во-вторых, альфа может быть частью самой палитры. Тогда на ноль.
Альфа-канал решает. Используется палитра, в которой есть полностью прозрачный цвет.
Размещенных в любых местах по строке, я настаиваю на втором варианте. Это удобно для програминга. И наплевать, что нужна немножко сложненькая логика для выбора того из какого именно спрайта или фона берётся пиксель. Это прошивается один раз и зыбыли.
Я не знаю, что это, но наверняка в плане графики на Ямахе можно сделать всё что есть на спеке и еще в 10 раз больше. Хотя я видел только парочку игрушек, случайно попал в класс для продвинутых детей, туда нас наш препод пригласил зачёты ему сдавать по прогрммированию. Пока его группа детишек играла и на бэйсике кое-кто кропал, он и у нам чего-то принимал. Спек в это время у меня уже был, и я уже мог осознвть, что эта графика Спеку недоступна.
Если тока прошьется...
Добавлено через 7 минут
Я кончно понимаю, но смотреть на железку со стророны эмулятора...
и кидаться общими фразами немножко там, слегка там, на самом деле Ваш вариант српайтового движка будет сложнее в реализации чем просто тупой блитер с той же функциональностью, а в итоге можно будет гораздо больше вывести графических обьектов за такт, при тех же затратах со стороны проца
Добавлено через 20 минут
И еще в ПЦ есть 2D и он доступен даже из под DOS через последние версии VESA VBE BIOS, а под конкретные видяхи через порты их юзают еще знает фик с каких времен Trident 9440 уже содержал данный блок (звался что то в духе - ускоритель Windows)
Последний раз редактировалось ZEK; 27.04.2008 в 12:52. Причина: Добавлено сообщение
При чём тут 2D? Ускорение пересылки блоков, тот же DMA, но внутри исключительно видеопамяти. Хотя называйте как хочется.
Я не очень понимаю 2 вещи. Каким образом ускорение пересылки байтов (тот же DMA или блиттер как его именуете вы) может решить 2 проблемы: построение сцены (заполнение экрана) фрагментами из разных мест памяти, и вотрая, это экономичное представление более 16 цветов на точку одновременно. Если делать 256 цветов, то ещё как-то представить можно, но это ещё в 2 раза больше памяти чем для 16цветов (который требует в 4 раза больше памяти чем стандартный, и дело ведь не в объёме, а в скорости заполнения экрана), но спрайтный режим при наличии 8 (даже) палитр даёт уже 128 разных цветов, что не на много меньше 256 (а можно подумать как сделать ещё больше), и при этом памяти (всего) для представления экрана требуется в 2 раза больше чем для стандартного режима. В 2 тоько лишь потому что прежний экран остаётся как сдвинутый по x, y фон, и ещё ровно столько же - для описателей размещения спрайтов. Что касается самих спрайтов, то они занимают почти столько же, например, сколько занимали бы гипотетически в плоском 16ц режиме (будь для этого режима хоть одна спрайтовая игрушка, что невозможно из-за тормозов).
Да, я понимаю, что если играть "по правилам" и делать устройство, которое бы соблюдало скоростные характеристики памяти, имевшие место в 1995, то ни фига не выйдет. Хотя, если обеспечить эксклюзивный доступ к нужным банкам памяти от видеоустройства, можно было бы и подумать. (На самом деле, когда мы приготовили кадр и переключили видеобанк, нам доступ к банкам, отданным видеопроцессору уже не нужен от проца, пока не пройдёт кадр и банки опять не переключатся).
Для блиттера (что за блитер, кстати, если реализован и используется широко для некоего видеорежима, то как называется это устройство, чтобы почитать), я пока не могу понять способ заполнения даже для режима 16ц. Тем более ничего не знаю о режимах 256ц. Просветите?
С любовью к вам, Yandex.Direct
Размещение рекламы на форуме способствует его дальнейшему развитию
Не стыдно раз за разом так попадать исключительно из-за собственного упрямства?Сообщение от Vladimir Kladov
А кому не хватает спрайтов и вертолетиков - идут туда же?Сообщение от Vladimir Kladov
Проблема сглаживания тоже не одним увеличением разрешения решается (см. собственную цитату). Телевизор обычный - высокое там разрешение? (имею в виду не старые кинескопы, а сам сигнал) И ничего - все гладко.
Сообщение от Vladimir KladovНалицо полное непонимание вопроса и даже базовых терминов.Сообщение от Vladimir Kladov
Прозрачный цвет - это и есть полностью "прозрачный" цвет (transparent) (общий или вырожденный случай)
Альфа-канал - это частично прозрачный цвет (translucent) (более узкий термин)
Альфа требует на один пиксель столько же бит, сколько на одну цветокомпоненту в палитре (а не количество бит на закодированный цвет в палитровых режимах). То есть 32K цветов (hi-color) - нужно 5 бит, 256K цветов (VGA-палитра) - 6 бит, 16M цветов (true-color) - 8 бит на каждый альфа-пиксель. Это в дополнение к каждому пикселю собс-но самого спрайта.
Далее - спрайты в прямой кодировке сроду не делались (иначе любой спрайтовый движок сдохнет), обычно - 4-16-32 цвета на спрайт из палитры начиная с 4K-32K цветов. То есть в среднем надо 5 бит на пиксель спрайта и столько же - на альфа-пиксель. Итого - ВДВОЕ больше.
В особо извращенных случаях может быть еще и раздельная альфа для каждой из трех цветокомпонент (для эффектов типа цветного стекла).
Спрайты должны читаться полностью и заранее - с опережением на строку, вне зависимости от перекрытия. Отсюда получаем верхнюю границу и ограничение на число спрайтов в строке. Если их даже там нет ни одного - все равно должны резервировать столько же времени.Сообщение от Vladimir Kladov
А вот неплохо бы посмотреть - что это (и чем отличается от упомянутой комодурской вериии). Чисто для сравнения с "вертолетиками". На Ямахе сделать такое (а именно перспективный скроллинг и эпизодическую псевдо-трехмерность) "на спрайтах" не выйдет, а прямой доступ к видеопамяти там ацтойный.Сообщение от Vladimir Kladov
"Недоступна" фактически только по цветности, в меньшей степени - по плавности (эти проблемы в принципе решаемы даже методами ZX-Poly а-ля EmuZwin и/или турбированием проца, не говоря уж о растровых ускорителях). А вот спрайтовым движкам многие вещи недоступны по качеству и динамике (либо доступны, но с большим геморроем и "потерей мощности").Сообщение от Vladimir Kladov
Добавлено через 1 час 18 минут
Тут вообще проблемы нет.
Я так понял, про упаковку графики - в упор не видим?
По блиттеру - читаем доки на Амигу. Для начала. Это наверное первый - и довольно простой - вариант.
Последний раз редактировалось Lethargeek; 27.04.2008 в 22:07. Причина: Добавлено сообщение
Прихожу без разрешения, сею смерть и разрушение...
Народ а не кажется ли Вам что разговор зашел в тупик по причине того что обсуждается не конкретная реализация а так что-то несуществующее при этом расплывчатое и имеющие сходство практически со всем что вокруг можно увидеть - MSX, SNES, c64, S3-911/Trident windoze ускорители, NEOGEO, SONY PS1/2/3 ... Так или иначе никто их Вас сдесь не предложил ничего нового а только лишь описал что-то отдаленно напоминающие какую-то конкретную железяку из существующих. Дальнейшее обсуждение имеет смысл вести токо приводя какие-то куски псевдо кода (например похожего на тот же C или BASIC) чтоб описать а что собственно будет делать это предлагаемое железо иначе разговор ни о чем.
Ну и так общее замечание - прежде чем предлагать конструкцию учитывайте на какую пропускную способность памяти мы сдесь ориентируемся. На скоко я понял с самого начала железяка планируется не для "monster RDRAM 1Ghz 512bit quad pumped bus" а для того же родного Leningrad-1 с РУ5Г и все что можно достичь введением в основное адресное пространство всяких там DMA и blitter-ов уже достиг тот же VELESOFT и автор UltraDMA sound-a.
При этом спрайтовые движки древнейшая и проверенная технология которую протерли до дыр в свое время вот на этом сайте доказательства: http://www.system16.com/
То есть даешь резню и тупой раскаленный предмет?
К тому же все эти РУ скоро совсем вымрут как класс.
Глупо не юзать современные м/с, которые и лучше, и доступнее!!
DMA - не блиттер. Ну и трогать основную память - опять же, для любителей резни и затормаживания проца.
"Если в сыре много дыр - значит, вкусным будет сыр.
Если в нем одна дыра - значит, вкусным был вчера!!"
Добавлено через 40 минут
Даже ссылки нормальной не дал. Хотя в результате поиска по форуму выясняется, что они там даже таких слов, как "блиттер", походу не знают. Узость мышления, таксзать.
Последний раз редактировалось Lethargeek; 27.04.2008 в 22:18. Причина: Добавлено сообщение
Прихожу без разрешения, сею смерть и разрушение...
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)