ruffle-rs / ruffle

A Flash Player emulator written in Rust
https://ruffle.rs
Other
15.55k stars 806 forks source link

Dino run - dino colour issues #13652

Open Kz-92 opened 11 months ago

Kz-92 commented 11 months ago

Describe the bug

the dino is usually a solid colour, but ruffle only briefly makes the dino render properly, and then its head is only the proper colour, until a creature is eaten, then it is completely wrong

this happens with both dino run and dino run marathon of doom flash eva

ruffle

https://github.com/ruffle-rs/ruffle/assets/103858019/f5ccb2dd-b5ec-48e5-8120-ab07640b745a

Expected behavior

the dino should be rendered correctly

Affected platform

Desktop app

Operating system

windows 10

Browser

No response

Additional information

dinorun-new-working.zip 566176_dinoRunMD-working.zip

n0samu commented 10 months ago

I tried creating a minimal reproduction of the issue, but this works perfectly fine in my reproduction. The game is just adding a ColorTransform to the various movieclips that the dino is composed of. But for some reason, in Ruffle the ColorTransform gets cleared from the main body MC once it starts animating. If you pause Ruffle and look in the debug tools, you'll see the ColorTransform is there at first, but disappears. So this is some kind of AVM2 issue, since Ruffle does render the dino correctly according to the information AVM2 gives it.