Бывает![]()
Бывает![]()
БK 0010-01, БК 11М, БК11М+,МС 0511 (УКНЦ)х3, Atari 65XE, Commodore 64, AMIGA 500 (HDD), ZX EVO
Посмотрел на оригинал игры, на аркадном автомате.
Там из вращающихся объектов - только сам кораблик, всё остальное хоть и векторное, но рисуется без поворотов.
Получается, что все объекты можно один раз отрендерить под фиксированное разрешение и хранить как статичные спрайты.
Только с корабликом уже возиться - либо на лету рендерить либо держать N спрайтов для одного сектора в 90 градусов и отражать по вертикали и горизонтали.
Может так скорости хватит?
Если векторами рисовать, то все равно вращаются они или нет, по любому каждый раз на матрицу переноса-поворота умножаем.
Хочу попробовать рисовать средствами граф. режима терминала, вроде быстрее рисует. (разом выводить просчитанный кадр.. массивом кодов)..хотя.. хз.
Если рантайм отрендерить в память кораблик через градус, а камни статичные сделать .. можно попробовать на крайняк.
- - - Добавлено - - -
Кому интересно:
Преобразование чисел в коды терминала (для граф. режима)
Код:;--------------------------------------------------------------------- ; П/п преобразование целого числа в три символа ;вход: R1 - число , R3- буфер для 3х смволов. ;--------------------------------------------------------------------- ACE1: MOV R0,-(SP) MOV R3,-(SP) MOV R4,-(SP) TST R1 BGE 1$ NEG R1 1$: MOV R1,R0 ASH #-12,R0 BIC #177700,R0 BIS #100,R0 MOVB R0,(R3)+ MOV R1,R0 ASH #-4,R0 BIC #177700,R0 BIS #100,R0 MOVB R0,(R3)+ MOV R1,R0 BIC #177760,R0 BIS #40,R0 MOVB R0,(R3)+ MOV (SP)+,R4 MOV (SP)+,R3 MOV (SP)+,R0 RETURNКод:;--------------------------------------------------------------------- ; П/п преобразования двух целых чисел в пять символов ;вход: R1 - X, R2-Y , R3- буфер для 5ти смволов. ;--------------------------------------------------------------------- ACE2: MOV R0,-(SP) MOV R3,-(SP) MOV R4,-(SP) MOV R2,R0 ASH #-7,R0 BIC #177740,R0 BIS #40,R0 MOVB R0,(R3)+ MOV R1,R4 BIC #177774,R4 MOV R2,R0 BIC #177774,R0 ASL R0 ASL R0 BIS R0,R4 BIS #140,R4 MOV R4,R0 MOVB R0,(R3)+ MOV R2,R0 ASR R0 ASR R0 BIC #177740,R0 BIS #140,R0 MOVB R0,(R3)+ MOV R1,R0 ASH #-7,R0 BIC #177740,R0 BIS #40,R0 MOVB R0,(R3)+ MOV R1,R0 ASR R0 ASR R0 BIC #177740,R0 BIS #100,R0 MOVB R0,(R3)+ MOV (SP)+,R4 MOV (SP)+,R3 MOV (SP)+,R0 RETURN
Последний раз редактировалось S_V_B; 31.05.2021 в 12:15.
БK 0010-01, БК 11М, БК11М+,МС 0511 (УКНЦ)х3, Atari 65XE, Commodore 64, AMIGA 500 (HDD), ZX EVO
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)