Editing Coldboot.raf
Jump to navigation
Jump to search
The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then publish the changes below to finish undoing the edit.
Latest revision | Your text | ||
Line 1: | Line 1: | ||
=Description= | =Description= | ||
dev_flash\vsh\resource\'''coldboot.raf''' is the animation when PS3 boots, introduced in firmware 2.70 with | dev_flash\vsh\resource\'''coldboot.raf''' is the animation when PS3 boots, introduced in firmware 2.70 with [[raf.qrc]] as support. | ||
[[Rich Appearance Format (RAF)]] belongs to a group of [[CXML Containers]] that uses [[Template:Zlib Header|zlib]] compression and a XML file enbedded in the container structure with the "scene" information and also works as an index to lists the contained files | [[Rich Appearance Format (RAF)]] belongs to a group of [[CXML Containers]] that uses [[Template:Zlib Header|zlib]] compression and a XML file enbedded in the container structure with the "scene" information and also works as an index to lists the contained files | ||
Coldboot animation uses settings from the [[RCOXML | Coldboot animation uses settings from the [[RCOXML Structure]] of [[custom render plugin]] (in RCOXML setion note the animation settings for: '''anim_coldboot''' and '''anim_coldboot2''') | ||
Coldboot.raf is the same file in all firmware versions, doesnt contains sound, but is played with sound by using | Coldboot.raf is the same file in all firmware versions, doesnt contains sound, but is played with sound by using the '''coldboot_multi.ac3''' and '''coldboot_multi.ac3''' audio files, this audio files has been present from firmware 1.02 but have changed (and also changed the coldboot animations settings inside the RCOXML of custom_render_plugin) | ||
dev_flash\vsh\resource\coldboot_multi.ac3 705 KB 1.02-2.80: MD5:931D05254C198ED5D202ECAE9A0BC6E2 (in dupe present with below coldboot2 audio files in 2.70-2.80, replaced for MD5:D837AA7B7AEC6C1A090CBA51CCA9434E in 3.00-3.01) | |||
dev_flash\vsh\resource\coldboot_stereo.ac3 705 KB 1.02-2.80: MD5:5EB0E4ECE6F221ED07D3128D416ADB44 (in dupe present with below coldboot2 audio files in 2.70-2.80, replaced for MD5:83D2B05CC85F65A1392614989F71ECFA in 3.00-3.01) | |||
dev_flash\vsh\resource\coldboot2_multi.ac3 783 KB since 2.70: MD5:D837AA7B7AEC6C1A090CBA51CCA9434E (only single coldboot_multi.ac3 in 3.10 and higher) | |||
dev_flash\vsh\resource\coldboot2_stereo.ac3 783 KB since 2.70: MD5:83D2B05CC85F65A1392614989F71ECFA (only single coldboot_stereo.ac3 in 3.10 and higher) | |||
dev_flash\vsh\resource\coldboot.raf 51 KB since 2.70: MD5:FBFD819D6CD834AC2BDDA02EE3D5375F | |||
=Versions= | |||
{| class="wikitable" style="font-size:x-small;" | {| class="wikitable" style="font-size:x-small;" | ||
|+ | |+Coldboot Animation related files | ||
! rowspan="2" | | ! rowspan="2" | Version<BR />(firmware) !! rowspan="2" | Size<BR />(bytes) !! rowspan="2" | Hash<BR />(MD5) !! colspan="4" | Contents !! rowspan="2" | File Name !! rowspan="2" | Notes | ||
|- | |||
! EDGE !! SKEL !! GTF !! JSX | |||
|- | |||
! [[1.02_CEX|1.02]]~[[2.80_CEX|2.80]] | |||
| 705 KB || 931D05254C198ED5D202ECAE9A0BC6E2 || colspan="4" {{cellcolors|lightgrey}} Audio || coldboot_multi.ac3 || Hash specific file removed from the firmware after 2.80 | |||
|- | |||
! [[1.02_CEX|1.02]]~[[2.80_CEX|2.80]] | |||
| 705 KB || 5EB0E4ECE6F221ED07D3128D416ADB44 || colspan="4" {{cellcolors|lightgrey}} Audio || coldboot_stereo.ac3 || Hash specific file removed from the firmware after 2.80 | |||
|- | |||
! [[2.70_CEX|2.70]]~[[4.65_CEX|4.65]] | |||
| 51.446 || FBFD819D6CD834AC2BDDA02EE3D5375F || 1 || 1 || 6 || 1 || coldboot.raf || Not present before 2.70, same for all the other firmware versions | |||
|- | |- | ||
! [[ | ! [[2.70_CEX|2.70]]~[[3.01_CEX|3.01]] | ||
| rowspan="2" | 783 KB || rowspan="2" | D837AA7B7AEC6C1A090CBA51CCA9434E || rowspan="2" colspan="4" {{cellcolors|lightgrey}} Audio || coldboot2_multi.ac3 || Since [[3.10_CEX|3.10]] the file was renamed from <code>coldboot2_multi.ac3</code> (no longer present from thereafter) to <code>coldboot_multi.ac3</code> | |||
|- | |- | ||
! coldboot. | ! [[3.00_CEX|3.00]]~[[4.65_CEX|4.65]] | ||
| | | coldboot_multi.ac3 || Note there is an overlap [[3.00_CEX|3.00]]~[[3.01_CEX|3.01]] where both coldboot2 + coldboot are same hash | ||
|- | |||
! [[2.70_CEX|2.70]]~[[3.01_CEX|3.01]] | |||
| rowspan="2" | 783 KB || rowspan="2" | 83D2B05CC85F65A1392614989F71ECFA || rowspan="2" colspan="4" {{cellcolors|lightgrey}} Audio || coldboot2_stereo.ac3 || Since [[3.10_CEX|3.10]] the file was renamed from <code>coldboot2_stereo.ac3</code> (no longer present from thereafter) to <code>coldboot_stereo.ac3</code> | |||
|- | |||
! [[3.00_CEX|3.00]]~[[4.65_CEX|4.65]] | |||
| coldboot_stereo.ac3 || Note there is an overlap [[3.00_CEX|3.00]]~[[3.01_CEX|3.01]] where both <code>coldboot2_stereo.ac3</code> + <code>coldboot_stereo.ac3</code> are same hash | |||
|- | |||
! colspan="9" {{cellcolors|#ccccff}} Unnofficial | |||
|- | |||
! Rebug | |||
| 51.867 || B69F4F4908F39CC50EE7A2F1E00C2B7B || 1 || 1 || 6 || 1 || coldboot.raf || Same for all rebug firmwares ? | |||
|} | |} | ||
*Note between firmwares [[2.70_CEX|2.70]]~[[3.01_CEX|3.01]] there was 2 different versions of the audio files living together and identifyed by "coldboot" and "coldboot2". | |||
*In [[2.70_CEX|2.70]]~[[2.80_CEX|2.80]], <code>coldboot2_multi.ac3</code> differs from <code>coldboot_multi.ac3</code> and <code>coldboot2_stereo.ac3</code> differs from <code>coldboot_stereo.ac3</code> | |||
*In [[3.00_CEX|3.00]]~[[3.01_CEX|3.01]], <code>coldboot2_multi.ac3</code> is same as <code>coldboot_multi.ac3</code> and <code>coldboot2_stereo.ac3</code> is same as <code>coldboot_stereo.ac3</code> | |||
*Since [[3.10_CEX|3.10]] "coldboot2" are no longer present (only <code>coldboot_multi.ac3</code> and <code>coldboot_stereo.ac3</code> | |||
==RAF contents== | |||
To extract the files from coldboot.raf is needed to make a [[Template:Zlib Header|zlib]] decompression and then a [[CXML Containers | CXML container]] extraction. The extracted files are: | |||
{| class="wikitable" | |||
{| class="wikitable" | |||
|- | |- | ||
! | ! Usage !! File Name !! Notes | ||
|- | |- | ||
| rowspan=2 | Model || plane.edge || The 3D object, composed by a simple perimetral line that will be "filled" with the textures | |||
|- | |- | ||
| | | plane.skel || The skelleton of the 3D object, composed by a single joint point, needed by all the animations | ||
|- | |- | ||
| rowspan=3 | Textures HD || new_logo.gtf || 700x350 pixels, the main logo (without the "copyright", "trademark" and "playstation3" text) | |||
|- | |- | ||
| | | new_logo_footer.gtf || 700x350 pixels, the "copyright", "trademark" and "playstation3" text | ||
|- | |- | ||
| | | new_logo_blur.gtf || 700x350 pixels, a blurry copy of logo+footer together | ||
|- | |- | ||
| | | rowspan=3 | Textures SD || new_logo_sd.gtf || 240x120 pixels, the main logo (without the "copyright", "trademark" and "playstation3" text) | ||
|- | |- | ||
| | | new_logo_sd_footer.gtf || 240x120 pixels, the "copyright", "trademark" and "playstation3" text | ||
|- | |- | ||
| | | new_logo_sd_blur.gtf || 240x120 pixels, a blurry copy of logo+footer together | ||
|- | |- | ||
| Script || coldboot.jsx || Animation script, written in [[PlayStation JavaScript]] format (and extracted as a [[VSMX]] file) | |||
|- {{cellcolors|lightgrey}} | |||
| Scene || coldboot.xml || | |||
|} | |} | ||
*Notes: | |||
**'''coldboot.xml''' file is not a real file inside the container, all his info can be obtained from the container structure but is not considered a file | |||
**Some elements of the scene like the camera or lights are defined in the XML and are not files inside the container | |||
{{Boxcode|content=<syntaxhighlight lang="xml"> | |||
<?xml version="1.0" encoding="utf-8"?> | |||
<raf version="1.0"> | |||
<scene camera_num="1" light_num="2" script_num="1" actor_num="6"> | |||
<actor anim_speed="1.0,1.0,1.0,1.0" scale="1.28,0.64,0.64" uv_offset="0.0,0.0" color="1.0,1.0,1.0,1.0" anim_weight="1.0,0.0,0.0,0.0" material="mtrl_logo" uv_scale="1.0,-1.0" id="logo" anim_time="0.0,0.0,0.0,0.0" position="1.85,0.0,0.0" model="plane" rotation="1.5708,0.0,0.0" /> | |||
<actor anim_speed="1.0,1.0,1.0,1.0" scale="1.28,0.64,0.64" uv_offset="0.0,0.0" color="1.0,1.0,1.0,1.0" anim_weight="1.0,0.0,0.0,0.0" material="mtrl_footer" uv_scale="1.0,-1.0" id="footer" anim_time="0.0,0.0,0.0,0.0" position="1.85,0.0,0.0001" model="plane" rotation="1.5708,0.0,0.0" /> | |||
<actor anim_speed="1.0,1.0,1.0,1.0" scale="1.28,0.64,0.64" uv_offset="0.0,0.0" color="1.0,1.0,1.0,1.0" anim_weight="1.0,0.0,0.0,0.0" material="mtrl_blur" uv_scale="1.0,-1.0" id="blur" anim_time="0.0,0.0,0.0,0.0" position="1.85,0.0,0.001" model="plane" rotation="1.5708,0.0,0.0" /> | |||
<actor anim_speed="1.0,1.0,1.0,1.0" scale="1.28,0.64,0.64" uv_offset="0.0,0.0" color="1.0,1.0,1.0,1.0" anim_weight="1.0,0.0,0.0,0.0" material="mtrl_logo_sd" uv_scale="1.0,-1.0" id="logo_sd" anim_time="0.0,0.0,0.0,0.0" position="1.85,0.0,0.0" model="plane" rotation="1.5708,0.0,0.0" /> | |||
<actor anim_speed="1.0,1.0,1.0,1.0" scale="1.28,0.64,0.64" uv_offset="0.0,0.0" color="1.0,1.0,1.0,1.0" anim_weight="1.0,0.0,0.0,0.0" material="mtrl_footer_sd" uv_scale="1.0,-1.0" id="footer_sd" anim_time="0.0,0.0,0.0,0.0" position="1.85,0.0,0.0001" model="plane" rotation="1.5708,0.0,0.0" /> | |||
<actor anim_speed="1.0,1.0,1.0,1.0" scale="1.28,0.64,0.64" uv_offset="0.0,0.0" color="1.0,1.0,1.0,1.0" anim_weight="1.0,0.0,0.0,0.0" material="mtrl_blur_sd" uv_scale="1.0,-1.0" id="blur_sd" anim_time="0.0,0.0,0.0,0.0" position="1.85,0.0,0.001" model="plane" rotation="1.5708,0.0,0.0" /> | |||
<camera direction="0.0,0.0,-2.0" yfov="0.927292" up="0.0,1.0,0.0" zfar="1000.0" znear="0.01" position="0.0,0.0,4.0" ymag="0.0" type="0" id="camera" /> | |||
<light color="1.0,1.0,1.0" position="0.0,1.0,0.0" attenuation="0.0,1.0,4.0" type="0" id="pointlight" /> | |||
<light color="0.0,0.0,0.0" type="2" id="ambientlight" /> | |||
<script fileref="coldboot.jsx" fileindex="8" /> | |||
</scene> | |||
<model-table num="1"> | |||
<model id="plane"> | |||
<geometry fileref="plane.edge" fileindex="0" /> | |||
<skeleton fileref="plane.skel" fileindex="1" /> | |||
</model> | |||
</model-table> | |||
<material-table num="6"> | |||
<material id="mtrl_logo" effect="sce01"> | |||
<_texture texref="_new_logo.gtf" /> | |||
</material> | |||
<material id="mtrl_footer" effect="sce01"> | |||
<_texture texref="_new_logo_footer.gtf" /> | |||
</material> | |||
<material id="mtrl_blur" effect="sce01"> | |||
<_texture texref="_new_logo_blur.gtf" /> | |||
</material> | |||
<material id="mtrl_logo_sd" effect="sce01"> | |||
<_texture texref="_new_logo_sd.gtf" /> | |||
</material> | |||
<material id="mtrl_footer_sd" effect="sce01"> | |||
<_texture texref="_new_logo_sd_footer.gtf" /> | |||
</material> | |||
<material id="mtrl_blur_sd" effect="sce01"> | |||
<_texture texref="_new_logo_sd_blur.gtf" /> | |||
</material> | |||
</material-table> | |||
<texture-table num="6"> | |||
<texture min_filter="0" mip_filter="0" fileindex="2" mag_filter="0" ext="1" wrap_t="1" wrap_s="1" wrap_p="1" fileref="new_logo.gtf" type="0" id="_new_logo.gtf" /> | |||
<texture min_filter="0" mip_filter="0" fileindex="3" mag_filter="0" ext="1" wrap_t="1" wrap_s="1" wrap_p="1" fileref="new_logo_footer.gtf" type="0" id="_new_logo_footer.gtf" /> | |||
<texture min_filter="0" mip_filter="0" fileindex="4" mag_filter="0" ext="1" wrap_t="1" wrap_s="1" wrap_p="1" fileref="new_logo_blur.gtf" type="0" id="_new_logo_blur.gtf" /> | |||
<texture min_filter="0" mip_filter="0" fileindex="5" mag_filter="0" ext="1" wrap_t="1" wrap_s="1" wrap_p="1" fileref="new_logo_sd.gtf" type="0" id="_new_logo_sd.gtf" /> | |||
<texture min_filter="0" mip_filter="0" fileindex="6" mag_filter="0" ext="1" wrap_t="1" wrap_s="1" wrap_p="1" fileref="new_logo_sd_footer.gtf" type="0" id="_new_logo_sd_footer.gtf" /> | |||
<texture min_filter="0" mip_filter="0" fileindex="7" mag_filter="0" ext="1" wrap_t="1" wrap_s="1" wrap_p="1" fileref="new_logo_sd_blur.gtf" type="0" id="_new_logo_sd_blur.gtf" /> | |||
</texture-table> | |||
<file-table num="9"> | |||
<file src="c:\coldboot\plane.edge" type="0" id="plane.edge" /> | |||
<file src="c:\coldboot\plane.skel" type="2" id="plane.skel" /> | |||
<file src="c:\coldboot\new_logo.gtf" type="4" id="new_logo.gtf" /> | |||
<file src="c:\coldboot\new_logo_footer.gtf" type="4" id="new_logo_footer.gtf" /> | |||
<file src="c:\coldboot\new_logo_blur.gtf" type="4" id="new_logo_blur.gtf" /> | |||
<file src="c:\coldboot\new_logo_sd.gtf" type="4" id="new_logo_sd.gtf" /> | |||
<file src="c:\coldboot\new_logo_sd_footer.gtf" type="4" id="new_logo_sd_footer.gtf" /> | |||
<file src="c:\coldboot\new_logo_sd_blur.gtf" type="4" id="new_logo_sd_blur.gtf" /> | |||
<file src="c:\coldboot\coldboot.jsx" type="5" id="coldboot.jsx" /> | |||
</file-table> | |||
</raf> | </raf> | ||
</syntaxhighlight>}} | </syntaxhighlight>}} | ||
*Notes: | *Notes: | ||
** | **This XML file can be extracted from coldboot.raf and can be used to rebuild it | ||
** | **Inside the "file-table" the "src" for the files uses an absolute path from a device unit in the PC, but is posible to use relative paths, this paths depends of the compiler or the options used at extraction/compiling time | ||
== | ==Coldboot Scene== | ||
A RAF animation contains an "scene" that is viewed from a "camera", and is displayed using a timeline that is defined in the "script" file | |||
The animation "scene" is composed by 3 "actors" (or more exactly... 2 groups of 3 actors... one group for SD TV's and other group for HD TV's) | |||
The | The 3 actors are overlapped in the same position and associated with the same "model" "geometry" by using the "skeleton" joint, how and when this actors appears is defined in the "script" file | ||
Every actor uses his specific "material" (that appears in the "material-table"), and every material uses a "texture" (that appears in the "texture-table") | |||
=Modifications= | |||
Mostly as examples | |||
==Original, minimal== | |||
One single image displayed in the same position than the original logo, in 2 resolutions (for SD and HD TV's) | |||
The "id"s and the file names has been renamed to make them more intuitive, 4 "actors" has been removed (with his associated "materials" and "textures" for footer and blur) | |||
To build this .raf is needed to modify the file coldboot.jsx to unlink the removed "actors", and to remove the animations asociated with them (the transition to footer and blur) | |||
{{Boxcode|content=<syntaxhighlight lang="xml"> | |||
<?xml version="1.0" encoding="utf-8"?> | |||
{ | <raf version="1.0"> | ||
<scene camera_num="1" light_num="2" script_num="1" actor_num="2"> | |||
<actor anim_speed="1.0,1.0,1.0,1.0" scale="1.28,0.64,0.64" uv_offset="0.0,0.0" color="1.0,1.0,1.0,1.0" anim_weight="1.0,0.0,0.0,0.0" material="mtrl_logo_hd" uv_scale="1.0,-1.0" id="actor_logo_hd" anim_time="0.0,0.0,0.0,0.0" position="1.85,0.0,0.0" model="plane" rotation="1.5708,0.0,0.0" /> | |||
<actor anim_speed="1.0,1.0,1.0,1.0" scale="1.28,0.64,0.64" uv_offset="0.0,0.0" color="1.0,1.0,1.0,1.0" anim_weight="1.0,0.0,0.0,0.0" material="mtrl_logo_sd" uv_scale="1.0,-1.0" id="actor_logo_sd" anim_time="0.0,0.0,0.0,0.0" position="1.85,0.0,0.0" model="plane" rotation="1.5708,0.0,0.0" /> | |||
<camera direction="0.0,0.0,-2.0" yfov="0.927292" up="0.0,1.0,0.0" zfar="1000.0" znear="0.01" position="0.0,0.0,4.0" ymag="0.0" type="0" id="camera" /> | |||
<light color="1.0,1.0,1.0" position="0.0,1.0,0.0" attenuation="0.0,1.0,4.0" type="0" id="pointlight" /> | |||
<light color="0.0,0.0,0.0" type="2" id="ambientlight" /> | |||
<script fileref="coldboot.jsx" fileindex="4" /> | |||
</scene> | |||
<model-table num="1"> | |||
<model id="plane"> | |||
<geometry fileref="plane.edge" fileindex="0" /> | |||
<skeleton fileref="plane.skel" fileindex="1" /> | |||
</model> | |||
</model-table> | |||
<material-table num="2"> | |||
<material id="mtrl_logo_hd" effect="sce01"> | |||
<_texture texref="tex_logo_hd.gtf" /> | |||
</material> | |||
<material id="mtrl_logo_sd" effect="sce01"> | |||
<_texture texref="tex_logo_sd.gtf" /> | |||
</material> | |||
</material-table> | |||
<texture-table num="2"> | |||
<texture min_filter="0" mip_filter="0" fileindex="2" mag_filter="0" ext="1" wrap_t="1" wrap_s="1" wrap_p="1" fileref="logo_hd.gtf" type="0" id="tex_logo_hd.gtf" /> | |||
<texture min_filter="0" mip_filter="0" fileindex="3" mag_filter="0" ext="1" wrap_t="1" wrap_s="1" wrap_p="1" fileref="logo_sd.gtf" type="0" id="tex_logo_sd.gtf" /> | |||
</texture-table> | |||
<file-table num="5"> | |||
<file src="c:\coldboot\original\minimal\plane.edge" type="0" id="plane.edge" /> | |||
<file src="c:\coldboot\original\minimal\plane.skel" type="2" id="plane.skel" /> | |||
<file src="c:\coldboot\original\minimal\new_logo_hd.gtf" type="4" id="logo_hd.gtf" /> | |||
<file src="c:\coldboot\original\minimal\new_logo_sd.gtf" type="4" id="logo_sd.gtf" /> | |||
<file src="c:\coldboot\original\minimal\coldboot.jsx" type="5" id="coldboot.jsx" /> | |||
</file-table> | |||
</raf> | |||
/ | |||
</syntaxhighlight>}} | </syntaxhighlight>}} | ||
{{File Formats}}<noinclude>[[Category:Main]]</noinclude> | {{File Formats}}<noinclude>[[Category:Main]]</noinclude> |