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= | ||
'''Coldboot.raf''' was introduced in firmware 2.70. Raf format support started in 2.70 with the addition of [[Qt_Resource_Container_%28QRC%29#rhm.qrc_.26_raf.qrc | raf.qrc]], but it was on firmware 3.00 when it was used to implement dynamic [[PlayStation 3 Theme (P3T)]] support. See also: [[Rich Appearance Format (RAF)]] | |||
dev_flash\vsh\resource\coldboot_multi.ac3 705 KB 1.02-3.01: MD5:931D05254C198ED5D202ECAE9A0BC6E2 (in dupe present with below coldboot2 audio files in 2.70-3.01) | |||
dev_flash\vsh\resource\coldboot_stereo.ac3 705 KB 1.02-3.01: MD5:5EB0E4ECE6F221ED07D3128D416ADB44 (in dupe present with below coldboot2 audio files in 2.70-3.01) | |||
dev_flash\vsh\resource\coldboot2_multi.ac3 783 KB since 2.70: MD5:D837AA7B7AEC6C1A090CBA51CCA9434E (renamed coldboot_multi.ac3 in 3.10 and higher) | |||
dev_flash\vsh\resource\coldboot2_stereo.ac3 783 KB since 2.70: MD5:83D2B05CC85F65A1392614989F71ECFA (renamed 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.raf versions | |+coldboot.raf versions | ||
! rowspan="2" | | ! rowspan="2" | Version<BR />(firmware) !! rowspan="2" | Size<BR />(bytes) !! rowspan="2" | Hash<BR />(MD5) !! colspan="5" | Contents !! rowspan="2" | Feature<BR />(added, removed or changed) | ||
|- | |||
! EDGE !! SKEL !! GTF !! JSX !! XML | |||
|- | |- | ||
! [[2.70_CEX|2.70]]~[[4.65_CEX|4.65]] | |||
| 51.446 || FBFD819D6CD834AC2BDDA02EE3D5375F || 1 || 1 || 6 || 1 || 1 || | |||
|- | |- | ||
! | ! colspan="9" {{cellcolors|#ccccff}} Unnofficial | ||
| 51. | |- | ||
! Rebug | |||
| 51.867 || B69F4F4908F39CC50EE7A2F1E00C2B7B || 1 || 1 || 6 || 1 || 1 || | |||
|} | |} | ||
The | ==RAF contents== | ||
The scene inside colboot.raf has not changed too much along the firmwares (neither the file itself i guess but this is pure speculation and needs to be verifyed). This example below seems generic enought to explain it by now | |||
After the [[Template:Zlib Header|zlib]] decompression and the [[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}} | |||
| XML || 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> |