Работа крутая, как и все твои 256! Спасибо за статью!
PS: Видео можно через iframe кажется вставить, на ютупчике «поделится-встроить», ещё можно тэг cut использовать чтобы не вся статья разом вываливалась! Подустарел хайпик под капотом)
Если я правильно помню у Вектора нет разрешения 512х512 ) Из советских безусловно самый интересный, но в нём как-будто всё назло сделано чтобы не быть быстрым. Демка огонь, отличная идея и реализация!
Ещё одно предложение по спрайтам от Monster^Sage с последующей доводкой introspec
Если коротко то формат спрайта меняется на байт маски+уплотненный байт спрайта, в конверторе генерируем маску зная где у нас прозрачный пиксел а где нет. вывод такой:
pop bc ;берём маску в с и уплотненный байтик в b
ld a, (hl) ;берём байт
and c ;накладываем маску
or b ;орим
ld (hl), a ;кладем в экран
Итого 32т на две точки. По итогу сумасшедшее ускорение от моего первоначального варианта.
Я постараюсь всё это оформляю в отдельный опенсорсный движок-TSU, будет 8 спрайтов против 6 в Ringo, размер вырастет на две линии в высоту и плюс ещё 16 маленьких спрайтов 5х5. Также полностью доступны два нижних бордюра на код игры.
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!
про тайлы это я просто не всё рассказал видимо или не так подробно, там я когда делал голова болела уже, а как описывать стал опять заболела ) я попробую расписать, но не обещаю, потому что смотрю в конвертер и туплю )
Очень крутая работа, дневники разработки всегда интересно читать. Единственное пожелание — начинай на три дня раньше чтобы следующий раз приехать на пати :))
PS: Видео можно через iframe кажется вставить, на ютупчике «поделится-встроить», ещё можно тэг cut использовать чтобы не вся статья разом вываливалась! Подустарел хайпик под капотом)
Если коротко то формат спрайта меняется на байт маски+уплотненный байт спрайта, в конверторе генерируем маску зная где у нас прозрачный пиксел а где нет. вывод такой:
Итого 32т на две точки. По итогу сумасшедшее ускорение от моего первоначального варианта.
Я постараюсь всё это оформляю в отдельный опенсорсный движок-TSU, будет 8 спрайтов против 6 в Ringo, размер вырастет на две линии в высоту и плюс ещё 16 маленьких спрайтов 5х5. Также полностью доступны два нижних бордюра на код игры.
Игра расчитана под любой размер монитора/тв, чем больше размер тем дальше отодвигаться надо )
А можно сделать ремарку «участвовать в компо, но не участвовать в голосовании»?