+144.29
Рейтинг
457.61
Сила

Денис

UPD(20.12.2022) Исходники оптимизированного рендера доступны на GitHub
Ещё одно предложение по спрайтам от Monster^Sage с последующей доводкой introspec
Если коротко то формат спрайта меняется на байт маски+уплотненный байт спрайта, в конверторе генерируем маску зная где у нас прозрачный пиксел а где нет. вывод такой:


pop bc ;берём маску в с и уплотненный байтик в b
ld a, (hl) ;берём байт
and c ;накладываем маску
or b ;орим
ld (hl), a ;кладем в экран


Итого 32т на две точки. По итогу сумасшедшее ускорение от моего первоначального варианта.

Я постараюсь всё это оформляю в отдельный опенсорсный движок-TSU, будет 8 спрайтов против 6 в Ringo, размер вырастет на две линии в высоту и плюс ещё 16 маленьких спрайтов 5х5. Также полностью доступны два нижних бордюра на код игры.
да, часто тоже так хочется )тут или stellar mode или делать широкие пиксели 8х4.
Да, в этот раз сначала движок, потом уже стиль под него. Хотя я примерно знаю свои возможности как игрового художника.

Игра расчитана под любой размер монитора/тв, чем больше размер тем дальше отодвигаться надо )
Проверил, работает )

Поступило ещё одно шикарное предложение от Monster^Sage, пока ещё не пробовал закодить т.к. по времени плотно, но обязательно попробую и доложусь )

зачем переключать экраны каждые 4 строки? ведь можно это делать каждые 8 строк, по «середине» атрибута ?

MACRO SPRITE_LINE_FAST
pop de : ld a,(hl)
inc e : jp nz,1f
jr 2f
1:
dec e : and b : or e
2:

;17+14+12=43t

inc d : jp nz,1f
jr 2f
1:
dec d : and c : or d
2:
ld (hl),a
;14+12+7=33t
ENDM
; overall: 76t
Круто, спасибо! Правда получается что значение в регистре меняется. Но тут даже два решения, либо в конвертере уменьшить на единичку, либо просто nop ниже заменить на dec!
класс! спасибо
про тайлы это я просто не всё рассказал видимо или не так подробно, там я когда делал голова болела уже, а как описывать стал опять заболела ) я попробую расписать, но не обещаю, потому что смотрю в конвертер и туплю )
Да, именно так и работает :) мозг не обманешь :) а если билеты взял уже и приезал то патикодинг выходит!
Очень крутая работа, дневники разработки всегда интересно читать. Единственное пожелание — начинай на три дня раньше чтобы следующий раз приехать на пати :))
Следующий шаг — постоянный по тактам down_hl без таблиц :)
Ну т.е. демо-маринады можно показывать в одном компо с демами, а те что вне компо «не гарантирую». Понятно, спасибо
Ничем
Добавлена ремарка, позволяющая автору не публиковать работу после пати (marinade™)

А можно сделать ремарку «участвовать в компо, но не участвовать в голосовании»?
Всё попробовал, работает отлично! Перелез. Для себя под классику добавил в конце такую конструкцию:


 IF (_ERRORS = 0)
    	savetap "main.tap",24500
	SHELLEXEC "main.tap"
    ENDIF


Если нет ошибок то запускает тапку в эмуле по умолчанию.
Ох, как легко деанонятся некоторые колы то…
в вайлде будет типо пофиг :) нужно компо без компо, в котором просто показывают работы и не голосуют!