Wogole to jestem ciekawy czy ktos to przeczyta, ba a nawet pomoze:
Sprawa wyglada tak, koduje duuuze wektory w hiresie 320x200 (lub 256x200),
wypelniane + 16 kolorow/bez sprajtow
Mam zrobione szybkie obroty na macierzach - 16 lini rastra plus oborty obiektu 8lini
rastra plus pozostale bzdety -perspektywa i ukrywanie scian.
Do wyliczenia elementow macierzy 3x3 wykorzystuje sinusa o wartosciah w przedziale
od -64 do 64 (w kodzie U2). Sinus jest 16 bitowy, czyli poprostu sinus przemnozony przez
64. Elementy macierzy sa juz 8-bitowe. Nextem na bazie tych wartosci wyliczane sa
wsporzedne 3d x,y,z tez 8bitowe w U2 dla obiektu.
Potem perspektywa i obcinanie do 80x50 i teraz nieszczesne przemnozenie
wszystkiego razy 4 tj. Xx4 i Yx4 co daje 320x200.
Pomijajac juz bledy w obcinaniu problemem jest koszmarne drganie w zakresie 4-16 pikseli.
Rzucilem to w kat bo mi sie nie chce juz nad tym siedziec, jedyny sensowny sposob
jaki widze to przepisac wszystkie operacje na wiecej bitow 32,24,16 ?
Wszystko musi byc tak liczone zeby juz ostatecznie po perspektywie wspolrzedne
byly 16 bitowe tak zeby obiekt byl wiekszy od ekranu. No wlasnie i moze mi ktos
przypomni jak sie wykonuje operacje add/sub i inne tego typu na wordach/longach
lub 24-bitach ?
Jakby ktos mogl pomoc pisac na maila
fenekars@wp.pl.
Fenek/Arise