


@Mirq, post #2
A w kodzie opendune takie rzeczy nie zostały już rozszyfrowane?
@Hexmage960, post #1
@cholok, post #4
Speed zależy od wersji DPainta. Generalnie DPaint używa stałej prędkości i zapisuje speed do chunku DPAN ignorując zapisy w ANHD.
DP5 ma 2 tryby, stałe fps i zmienne fps. Jednak jego ANHD jest specyficzny i jako jedyny ze wszystkich programów zapisuje go pod siebie (używa pad1=$80 i $81). Jako jedyny zapisuje też czas abstime.
@Hexmage960, post #5
Jednakże DPaint wczytuje poprawnie prędkość klatek z moich ANHD. Tylko trzeba przestawić czas w ustawieniach prędkości animacji z globalnego na pobrany z klatek animacji. Wtedy jest OK.
Tak, analizując plik ANIM zapisany przez DPaint zauważyłem, że używa nieudokumentowanego ósmego bitu opcji (udokumentowane są tylko bity 0-5).
Dodam, że wcześniej próbowałem metod kompresji 0 i 1 (tzw. Direct i XOR), ze względu na prostotę ale DPaint raczej ich nie obsługuje, bo wczytywał tylko pierwszą klatkę.
@cholok, post #6
Czyli jest niepoprawnie, skoro trzeba korygować.
To nie jest bit opcji tylko w miejscu typu pad.
Metody 0 i 1 w rzeczywistości nie istnieją, były one używane przez wewnętrzne programy Sparty (twórcy formatu). Mają wartość historyczną, nawet najstarszy publiczny showanim (od Sparty) nie odtwarza tych kodów.
@cholok, post #8
Nie. Wartość jest odczytywana z chunku DPAN.

@cholok, post #10




@Hexmage960, post #11
@cholok, post #12
Kilka uwag do chunku ANHD:
Wstawiasz maskę $FF, a większość programów ustawia 0 za wyjątkiem Adpro/AWorks. Wartość ta i tak jest ignorowana, podobnie jak wymiary, które też często są zerowane.
Ustawiasz abstime identycznie jak reltime co jest błędem. Wartość ta jest również jest ignorowana, ale zobacz jak to robi DP5, najlepiej jest wyzerować. W zasadzie jedynym programem , który korzysta z abstime jest stary Animotion, używa abstime, aby ustalić czas dla pierwszej ramki, bo stare programy nie zapisywały chunku ANHD dla pierwszej ramki. DP5 zapisuje abstime, ale zapewne nie korzysta. Cała reszta zeruje.
@aMifan, post #14
@Hexmage960, post #15