Есть у кого процедурка быстрого циклического познакоместного скролла по горизонтали? Достаточно лишь треть экрана скроллить.
Взял с Supercode, но там кадр рвётся и скорость недостаточно быстрая, на мой взгляд.
Кстати, картинки идут копипастом 64х64 в ряд. Может их можно по-демосценерски прокешировать "гифкой" ?
Но опять же, реализации на асме я не знаю.
ALKO, POP-PUSH-ами можно. Тебе куда надо; направо, налево или туда-сюда?
Было бы ещё круче - параллаксом.
Чтоб на каждый второй знакоместный тик ряда из 32ух пикселей снизу приходился один тик ряда 32ух последующих пикселей.
То есть суммарно 64 пикселя скроллируется (8 знакомест снизу) но по скоростям скролла разделены.
Смена картинок (в цвете) по принципу растворения пикселей. Есть такое у кого-нибудь ?
Желательно сами картинки чтоб с какой-нибудь компрессией были.... ах да, и как их вообще подготовить в том же ZX-Paintbrush
В BMP2SCR есть встроенный компрессор, но он фуллскриновый, а мне для конкретной области экрана.
С любовью к вам, Yandex.Direct
Размещение рекламы на форуме способствует его дальнейшему развитию
Есть некое подобие смены картинок путем растворения пикселов. Меняется сначала пиксельгая часть, а затем атрибуты.
https://github.com/salextpuru/sdcc-n...csp2018invitro
Файл logos.c и библиотеки с функциями.
Тут https://github.com/salextpuru/sdcc-n...018invitro.pdf описано как что работает немного.
ALKO (02.01.2020)
Добрался до компа.
Вот тут https://github.com/salextpuru/sdcc-n...pr/spr0_fade.c процедура замена изображения на экране на изображение спрайта (один шаг). Заменяются случайные пиксели.
Для эффекта "замены путём растворения пикселов" - вызываем данную процедуру несколько раз подряд с задержкой между вызовами. Я вызывал 8 раз.
Затем (чтобы установить незамененные пиксели и установить атрибуты) вызывал просто печать спрайта с атрибутами: https://github.com/salextpuru/sdcc-n.../spr0_out0_s.s (там же описан формат спрайта).
Вот тут https://github.com/salextpuru/sdcc-n...nvitro/logos.c в процедуре void logos_check() как раз замена изображения за 8 шагов.
Все привязано к SDCC. Фанатам ассемблера не читать !
Последний раз редактировалось SfS; 02.01.2020 в 11:46.
Кстати, если делать по-уму - то заменятся должны не просто случайные пиксели, но ещё и так чтобы дважды не заменялись те что уже заменены.
Решается толково написаным RND. Тогда количество итераций можно выяснить исходя из знания площади картинки и количество заменяемых пикселей за раз...
Это как-бы настоящий подход, а то в большинстве процедур - костыли, прогнали несколько замен - а потом окончательная - весь кусок сразу...
С удовольствием использую вашу процедуру rnd, сделанную "по уму".Кстати, если делать по-уму
Эту тему просматривают: 2 (пользователей: 0 , гостей: 2)