RCOXML ofw animations: Difference between revisions

From PS3 Developer wiki
Jump to navigation Jump to search
mNo edit summary
m (→‎Firmware 3.00 up to latest: better this way because i dont think BG4 is stopping BG3, are overlapped running in parallel until anim_otherboot_Finished stops them)
Line 64: Line 64:
| {{cellcolors|#aaffaa}} '''Fade'''<br>object:ps3logo || colspan="3" {{cellcolors|lightgrey}}
| {{cellcolors|#aaffaa}} '''Fade'''<br>object:ps3logo || colspan="3" {{cellcolors|lightgrey}}
|-
|-
| colspan="2" {{cellcolors|#aaffaa}} '''FireEvent'''<br>anim_otherboot_BG3 || colspan="2" {{cellcolors|lightgrey}}
| colspan="3" {{cellcolors|#aaffaa}} '''FireEvent'''<br>anim_otherboot_BG3 || {{cellcolors|lightgrey}}
|-
|-
| colspan="2" {{cellcolors|#ff7777}} '''Delay'''<br>200 || {{cellcolors|#aaffaa}} '''FireEvent'''<br>anim_otherboot_BG4 || {{cellcolors|lightgrey}}
| colspan="2" {{cellcolors|#ff7777}} '''Delay'''<br>200 || {{cellcolors|#aaffaa}} '''FireEvent'''<br>anim_otherboot_BG4 || {{cellcolors|lightgrey}}

Revision as of 07:14, 1 September 2016

PS3

PS3 ofw .rco's using animations: custom_render_plugin.rco gamelib_plugin.rco bdp_plugin.rco friendim_plugin.rco friendim_plugin_game.rco impose_plugin.rco npsignin_plugin.rco premo_plugin.rco sacd_plugin.rco system_plugin.rco

anim_otherboot

In custom_render_plugin.rco

Firmware 1.00 up to 2.80

Code Sample
anim_otherboot timeline (1.00~2.80)
Total time 0.00" D-Pad right button 1.00" D-Pad right button 1.00" D-Pad right button
Parallel
execution
threads
Lock
0xffffffff
Fade
object:ps3logo
FireEvent
anim_otherboot_BG3
Delay
1000
FireEvent
anim_otherboot_Finished
Time frames D-Pad left button 0.00" D-Pad right button D-Pad left button 1.00" D-Pad right button D-Pad left button 0.00" D-Pad right button

This animation is a basic "fade-in" of 1 second length, at the first instant of the animation (time=0) the 4 threads are executed in parallel, from top to botton it locks the XMB, then initializes the transparency of the image, and triggers the event anim_otherboot_BG3 from custom_render_plugin.sprx (at this point the animation is performed by the code inside the .sprx). Also at the same time (time=0) it starts the timer for the delay of 1 second

When the delay of 1 second ends, it sends the event anim_otherboot_Finished to custom_render_plugin.sprx (is a terminator controll signal to stop the previous event anim_otherboot_BG3 running in the .sprx)

The event anim_otherboot_BG3 is the responsible of the "flying sparks" behind the "playstation" logo but the details of how it works are unknown (hardcoded inside the .sprx)

Firmware 3.00 up to latest

Code Sample
anim_otherboot timeline (3.00~Template:Latest)
Total time 0.00" D-Pad right button 0.20" D-Pad right button 0.30" D-Pad right button 0.30" D-Pad right button
Parallel
execution
threads
Lock
0xffffffff
Fade
object:ps3logo
FireEvent
anim_otherboot_BG3
Delay
200
FireEvent
anim_otherboot_BG4
Delay
300
FireEvent
anim_otherboot_Finished
Time frames D-Pad left button 0.00" D-Pad right button D-Pad left button 0.20" D-Pad right button D-Pad left button 0.10" D-Pad right button D-Pad left button 0.00" D-Pad right button

The purpose of this modification was to short the whole duration of the animation but instead of simply reducing the delay from the previous version they added another event with its own delay

The purpose of anim_otherboot_BG4 is unknown, but it starts only 200 miliseconds after the anim_otherboot_BG3 (the sparks animation) so it seems is hiding it at least partially because the sparks are still visibles in lates firmwares, is working as an small fade-out because the animation was not supposed to stop at 200 miliseconds so they refused to "chop" it rudelly, instead they added this event that can be considered a "visual patch" to soft the transition to the terminator event that comes next

The delay of only 300 miliseconds before the event anim_otherboot_Finished is what is really shorting the whole animation length, after the 300 miliseconds the event anim_otherboot_Finished is sent and the animation ends

In short... the animation length has been reduced from the 1 second originally to 300 miliseconds (less than a third of a second) and an effect has been added to stop it smoothlly

anim_gameboot

In gamelib_plugin.rco

Code Sample

In custom_render_plugin.rco

Code Sample

anim_coldboot

anim_coldboot2