Просмотр полной версии : EOR fill
Andrew771
30.10.2015, 23:39
Объясните, пожалста, суть метода. Читал, читал тут (http://speccy.info/EOR_fill), нифига не понял суть.
EOR fill с переносом на экран. Примерный код: pop de:xor e:ld (hl),a:inc h:xor d:ld (hl),a:inc h
Что содержится в de и a?
Andrew771
30.10.2015, 23:46
Что содержится в de и a?
Объясните, пожалста, суть метода. Читал, читал тут (http://speccy.info/EOR_fill), нифига не понял суть.
Что содержится в de и a?
давай поясню на пальцах...
есть вот такой код
pop de
xor e
ld (hl),a
inc h
xor d
ld (hl),a
inc h
...
pop de
xor e
ld (hl),a
inc h
xor d
ld (hl),a
на стеке столбец изображения
например такой
#00
#01
#02
#00
#04
#00
#08
#00
но на экран будет отрисовано вот такое знакоместо
#00
#01
#03
#03
#07
#07
#0f
#0f
так понятно?
Andrew771
31.10.2015, 00:02
так понятно?
в цифрах понятно. Непонятно, как будет выглядеть на экране. Наверно, нужно конвертануть в двоичное счисление. Вроде как размывать что-то должно или закрашивать между первоначальными точками.
А что изначально содержит регистр a?
в цифрах понятно. Непонятно, как будет выглядеть на экране. Наверно, нужно конвертануть в двоичное счисление. Вроде как размывать что-то должно или закрашивать между первоначальными точками.
А что изначально содержит регистр a?
А при старте содержит 0
вот тебе с размывочкой
sp экран
#00000000 #00000000
#00000001 #00000001
#00000010 #00000011
#00000000 #00000011
#00000100 #00000111
#00000000 #00000111
#00001000 #00001111
#00000000 #00001111
и вместо точек по синусу получается крашеная синусоида.
Andrew771
31.10.2015, 00:20
Блин а я попался на такой примитивный троллинг. Молодца смешно.
в смыселе? Я серьезно спрашивал, не понимал сути.
jerri, вроде теперь я понял, спасибо.
---------- Post added at 00:20 ---------- Previous post was at 00:16 ----------
вот тебе с размывочкой
Код:
sp экран
#00000000 #00000000
#00000001 #00000001
#00000010 #00000011
#00000000 #00000011
#00000100 #00000111
#00000000 #00000111
#00001000 #00001111
#00000000 #00001111
и вместо точек по синусу получается крашеная синусоида.
кстати, забавно получается, что в исходном изображении даже граница не сплошная, а красит точно по границе :v2_jawdr:
в смыселе? Я серьезно спрашивал, не понимал сути.
А я и счаз не догоняю нахрена всё это нужно...
Показали-бы что-ли картинку.
Или лучше две, с размыванием и без.
Или это не фильтр, а только для заливок?
Или это не фильтр, а только для заливок?
Это не фильтр. Это заливка.
Это не фильтр. Это заливка.
А как подготовить входные данные?
Можешь набросать примерный код для треугольника например?
А как подготовить входные данные?
Можешь набросать примерный код для треугольника например?
Джерри показал примеры выше в бинарном виде прям на пальцах.
Заливка идет, условно говоря, сверху вниз. Т.е. движемся по столбцу сверху вниз. Если встретили установленный пиксель, то ниже него идет заливка. Опять встретили установленный пиксель, то заливка выключается, и т.д.
Ничерта не понятно как например заливать в другую сторону или байты целиком.
Как заливать если контур сменил направление по X и стал не влево ниспадать а вправо.
Неужели это всё надо заранее просчитывать?
Тогда на кой чёрт сдался такой долгий алгоритм.
Ничерта не понятно как например заливать в другую сторону или байты целиком.
Как заливать если контур сменил направление по X и стал не влево ниспадать а вправо.
Неужели это всё надо заранее просчитывать?
Тогда на кой чёрт сдался такой долгий алгоритм.
Этот код работает во время вывода буфера на экран
в буфер рисует другая процедура, которая сначала буфер чистит а потом расставляет в нем точки по алгоритму.
А я и счаз не догоняю нахрена всё это нужно...
Показали-бы что-ли картинку.
Или лучше две, с размыванием и без.
Или это не фильтр, а только для заливок?
вот тебе кстати картинко
http://zx-pk.ru/attachment.php?attachmentid=53930&stc=1&d=1446297031
вот тебе кстати картинко
http://zx-pk.ru/attachment.php?attachmentid=53930&stc=1&d=1446297031
а я вот вижу просто чб текстуру стен. что тут eor fill?
Ну а так понятней?
клавиша 2 - заготовка
клавиша 1 - результат
Так бы и сразу! Ясно для чего всё это...
а я вот вижу просто чб текстуру стен. что тут eor fill?
какбы eorfill это процесс преобразования изображения из контурного в целостное.
в данном случае он оказался очень удобен для масштабирования графики.
а я как бы не понял прикола. т.е. текстуры стен в данном движке процедурные? никаких спрайтов и нормальных текстур? так это ж гемор! в том смысле - для чего тратить время при генерации текстур, когда можно взять нормальные текстуры? кроме того, качество картинки с процедурной текстурой явно ниже. И это ещё не учитывая то, что процедурной текстурой много не нарисуешь.
а я как бы не понял прикола. т.е. текстуры стен в данном движке процедурные? никаких спрайтов и нормальных текстур? так это ж гемор! в том смысле - для чего тратить время при генерации текстур, когда можно взять нормальные текстуры? кроме того, качество картинки с процедурной текстурой явно ниже. И это ещё не учитывая то, что процедурной текстурой много не нарисуешь.
блин вот ты нудный :)
текстуры нормальные 32х32
но если при рендеринге сцены используя "нормальные" алгоритмы
ты берешь и клоцаешь каждую точку текстуры нужное тебе количество раз (растягиваешь по вертикали)
то здесь ты ее берешь и наносишь с нужным шагом (что значительно быстрее)
так понятнее? :)
блин вот ты нудный :)
текстуры нормальные 32х32
но если при рендеринге сцены используя "нормальные" алгоритмы
ты берешь и клоцаешь каждую точку текстуры нужное тебе количество раз (растягиваешь по вертикали)
то здесь ты ее берешь и наносишь с нужным шагом (что значительно быстрее)
так понятнее? :)
я не нудный, я дотошный. большая разница.
в данном примере я нормальных текстур не увидел. только процедурные, т.е. текстура которая генерируется (полоски сверху и снизу) и потом наносится (промежуток между полосками заливается вертикальными линиями). может для чб это будет хорошо, я не спорю. но что делать, когда экран цветной и можно много цветов кинуть на стены?
Sayman, Этот алгоритм написан Alone для спектрума который в принципе не умеет цвет на точку а только цвет на знакоместо. а текстуры у него не хуже цитадельских так что не вижу проблемы.
Sayman, Этот алгоритм написан Alone для спектрума который в принципе не умеет цвет на точку а только цвет на знакоместо. а текстуры у него не хуже цитадельских так что не вижу проблемы.
ясно. т.е. к цветным режимам эвы и спринтера этот метод не применим. хорошо, понял, отстал. хотя на спринтере этот метод был бы полезен местами благодаря наличию аппаратной вертикальной заливалки.
ясно. т.е. к цветным режимам эвы и спринтера этот метод не применим. хорошо, понял, отстал. хотя на спринтере этот метод был бы полезен местами благодаря наличию аппаратной вертикальной заливалки.
Ну блин, другое железо другие технологии.
Andrew771
31.10.2015, 20:13
Ну дык теперь наполовину секрет wolf48 раскрыт :)
Ну дык теперь наполовину секрет wolf48 раскрыт :)
какой секрет? Дима секретов из технологии не делал.
он её популярно обьяснить не может это да
а секретов тут нет
он её популярно обьяснить не может это да
Пора вводить профиль "синклерист-публицист".
Чтоб значит шарил в ассемблере и мог нести исскуство в массы, освещая и разжёвывая технологии.
Когда-то этим занимался Инфорком, но к сожаленью канул в лету.
После него многие издания (электронные) пытались, но я например не припомню ни одной толковой и доходчивой статьи. (ну разве что статья Shiru про рэйкастинг. по ней кстати сам АлонеКодер начинал лепить свои шедевры).
Shadow Maker
01.11.2015, 01:30
Ширу очень хорошо объясняет, я читал его статьи про NES, всё понятно как работает.
Дима секретов из технологии не делал.
он её популярно обьяснить не может это да
Как частенько говорят: "если не можешь объяснить что-то простым языком – значит ты сам не понимаешь этого в полной мере".
Как частенько говорят: "если не можешь объяснить что-то простым языком – значит ты сам не понимаешь этого в полной мере".
А еще говорят чтобы правильно задать вопрос нужно знать половину ответа.
Он все прекрасно понимает. Но его исходники несколько оптимизированы. как по текстовым записям так и по получаемым данным.
DragonsLord
08.02.2021, 07:22
Алоний пишет, что этот кубик залит при помощи процедуры EOR-fill. Это каким таким местом приключилось, не объясните мне? Вы же говорите, что заливка спрошная, а тут градиентными чанками.
Смотреть здесь с 1:09
https://youtu.be/LDfDNpJrfa8?t=69
https://youtu.be/LDfDNpJrfa8?t=69
NEO SPECTRUMAN
08.02.2021, 07:55
не знаю как там у алона
но за 3 секунды размышлений я придумал вот так
https://jpegshare.net/images/4e/02/4e023e099be9c0acfad3aad3a09fba8b.png
как раз 5 градаций яркосте
- - - Добавлено - - -
обращаю внимание демопесателей на еще один момент
https://jpegshare.net/images/1c/20/1c205ef7d3dd243510ed8c496b250dd6.png
DragonsLord
08.02.2021, 15:15
Та же самая заливка применяется в Hedj - Eihwaz- 2015
https://youtu.be/tzZmxRtwt78?t=22
https://youtu.be/tzZmxRtwt78?t=22
DragonsLord
10.02.2021, 10:16
Что Алоний называет "выпуклые объекты" я понять не могу никак.
Он говорит, что в Hedj - Eihwaz не EOR fill
Black Cat / Era CG
10.02.2021, 11:23
Наверное выпуклый объект - это например 5-угольник, 3-угольник, а вот звезда уже нет.
Что Алоний называет "выпуклые объекты" я понять не могу никак.
Он говорит, что в Hedj - Eihwaz не EOR fillИ правильно говорит, там не eor fill
DragonsLord
10.02.2021, 15:39
но выглядит точно также. один в один, как кубик Алония
но выглядит точно также. один в один, как кубик АлонияПотому что заливка паттерном.
DragonsLord
10.02.2021, 16:35
Заливка патерном позволяет легко залить в 8 градаций и даже выше. Не обязательно лить в 5 цветов. Посему не понятна логика, когда говорят "ну это же очевидно". - Нифига не очивидно
Заливка патерном позволяет легко залить в 8 градаций и даже выше. Не обязательно лить в 5 цветов. Посему не понятна логика, когда говорят "ну это же очевидно". - Нифига не очивидноПотому что чанк 2*2 а не 2*4
DragonsLord
10.02.2021, 17:25
И зачем там юзается чанк 2*2, если всё тормозит, аж капец? И графика чёт не становится круче ни на милипусечку.
И зачем там юзается чанк 2*2, если всё тормозит, аж капец? И графика чёт не становится круче ни на милипусечку.Потому что использование чанков 2*2 даёт разрешение 128*96
А использование чанков 4*4 даёт разрешение 64*48
Как-то так.
DragonsLord
25.02.2021, 03:06
Потому что использование чанков 2*2 даёт разрешение 128*96
Элитка будет так сделана.
Неожиданные проблемы с уменьшением логического разрешения: плохая читаемость объектов на средней дистанции и полная нечитаемость при дальней отрисовке. Пока думаю, что с этим делать...
В ближней зоне всё шикарно.
NEO SPECTRUMAN
05.07.2023, 00:06
еор филл это конечно хорошо
а вот как под него отрисовать буфер с пересекающимися объектами?
нужно как то хитро отрисовывать каждый столбец с сортировкой
Powered by vBulletin® Version 4.2.5 Copyright © 2026 vBulletin Solutions, Inc. All rights reserved. Перевод: zCarot