PlayStation 3 Theme (P3T): Difference between revisions

From PS3 Developer wiki
Jump to navigation Jump to search
(index rebuilt (all the RAF info needs to be moved to a new page later))
(some clean up... "static background" sections looks near finished)
Line 40: Line 40:
{{Boxcode|content=<syntaxhighlight lang="xml">
{{Boxcode|content=<syntaxhighlight lang="xml">
<?xml version="1.0" encoding="UTF-8"?>
<?xml version="1.0" encoding="UTF-8"?>
<!----------------------------------->
<!---------------------------------------------->
<!-- Reserved for notes if needed  -->
<!-- mtime = theme make time (YYYYMMDDHHMMSS) -->
<!----------------------------------->
<!---------------------------------------------->
<theme>
<theme>
<infotable>
<infotable>
Line 55: Line 55:
comment="No comment, thxbye"
comment="No comment, thxbye"
preview="preview.png"
preview="preview.png"
mtime="20081010105635"  
mtime="20121231235959"  
/>
/>
<!-- icon = theme icon (64x64, 32-bit PNG) -->
<!-- authoricon = author icon(64x64, 32-bit PNG) -->
<!-- preview = preview icon of the theme (480x270, 24-bit PNG) -->
<!-- mtime = theme update date (YYYYMMDDHHMMSS) -->
</infotable>
</infotable>
<color selection="10" /> <!-- From 1 to 12 = same color than monthly wallpapers. 0 = changes with the month  -->
<color selection="10" /> <!-- 1 to 12: color of a month, 0: changes with the month  -->
<font selection="1" /> <!-- Original: 0, Rounded: 1, Pop: 2 -->
<font selection="1" /> <!-- 0: original, 1: rounded, 2: pop -->
<notification src="notification.png" /> <!-- Notification windows background, at top-right corner of XMB -->
<notification src="notification.png" />
<icontable> <!-- All this icons are 128x128, 24-bit PNG, except the ones especifyed -->
<icontable>
<!-------------------------- horizontal row -------------------------->
<!-------------------------- horizontal row -------------------------->
<icon id="icon_user" src="icon_user.png" />
<icon id="icon_user" src="icon_user.png" />
Line 146: Line 142:
<icon id="icon_video_upload" src="icon_video_upload.png" />
<icon id="icon_video_upload" src="icon_video_upload.png" />
<!-------------------------- default icons -------------------------->
<!-------------------------- default icons -------------------------->
<icon id="icon_default_h" src="icon_default_h.png" /> <!-- default icon for horizontal row (used when the theme doesnt contains an icon for a higher firmware)  -->
<icon id="icon_default_h" src="icon_default_h.png" />
<icon id="icon_default_v" src="icon_default_v.png" /> <!-- default icon for vertical columns (used when the theme doesnt contains an icon for a higher firmware)  -->
<icon id="icon_default_v" src="icon_default_v.png" />
</icontable>
</icontable>
<!-------------------------- background -------------------------->
<!-------------------------- background -------------------------->
<bgimagetable>
<bgimagetable>
<bgimage hd="bgimage_hd.jpg" sd="bgimage_sd.jpg" /> <!-- hd=16:9 sd=4:3 aspect ratio -->
<bgimage hd="bg_hd_1.jpg" sd="bg_sd_1.jpg" />
</bgimagetable>
</bgimagetable>
<!-------------------------- mouse pointers -------------------------->
<!-------------------------- mouse pointers -------------------------->
Line 220: Line 216:


==Themeicon and Authoricon (.PNG)==
==Themeicon and Authoricon (.PNG)==
icon = theme icon (64x64, 32-bit PNG)


authoricon = author icon(64x64, 32-bit PNG)
==Theme Preview (.PNG)==
==Theme Preview (.PNG)==
preview = preview icon of the theme (480x270, 24-bit PNG)


==XMB Icons (.PNG)==
==XMB Icons (.PNG)==
All icons are 128x128, 32-bit PNG, except the ones in the next table


{| class="wikitable sortable"
{| class="wikitable sortable"
Line 242: Line 242:


*Default icons
*Default icons
'''icon_default_v''' and '''icon_default_v''' are used when the theme don t have newest icons needed by XMB (or not build with). E.g. when installing a theme made in 2008 in a firmware released in 2013
'''icon_default_h''' (default icon for horizontal row) and '''icon_default_v''' (default icon for vertical columns) are displayed in XMB when the theme doesnt have newest icons required by the firmware. E.g: when installing a theme made in 2008 in a firmware released in 2013


*Missing icons in newer firmwares ?... like PSvita ?
*Missing icons in newer firmwares ?... like PSvita ?
Line 249: Line 249:


==Notification window (.PNG)==
==Notification window (.PNG)==
Background image that appears at top-right corner of XMB for system messages
This image has transparent rounded corners, and is stretched by XMB depending of the lenght of the texts displayed, this stretching is made in the center of the image (not in the corners) to prevent deformation of the rounded corners


==Mouse Pointers (.PNG)==
==Mouse Pointers (.PNG)==
Line 280: Line 283:


==Background (.JPG .RAF)==
==Background (.JPG .RAF)==
 
Themes can include up to 24 background images.
{| class="wikitable"
{| class="wikitable"
|+sizes
|+sizes
! File !! File type !! File max size !! Group max items !! Group max size
! File !! File type !! File max size !! Group max items !! Group max size
|-
|-
| bg_sd_'''**'''.jpg || 640x480 JPEG 24bits || 2mb || 24 || ??
| bg_sd_'''**'''.jpg || 640x480 JPEG 24bits (4:3 aspect ratio) || 2mb || 24 || ??
|-
|-
| bg_hd_'''**'''.jpg  || 1920x1080 JPEG 24bits || 2mb || 24 || ??
| bg_hd_'''**'''.jpg  || 1920x1080 JPEG 24bits (16:9 aspect ratio) || 2mb || 24 || ??
|-
|-
| anim_'''**'''.raf  || ? || ? || 24 || ??
| anim_'''**'''.raf  || ? || ? || 24 || ??
Line 294: Line 297:


===Static Background (.JPG)===
===Static Background (.JPG)===
This methods are linked to a system function
The basic entry for 1 background in two resolutions. Is highly recommended to add both resolutions for compatibility with all TV's
{{Boxcode|content=<syntaxhighlight lang="xml">
<bgimagetable>
<bgimage hd="bg_hd_1.jpg" sd="bg_sd_1.jpg" />
</bgimagetable>
</syntaxhighlight>}}
 
The next methods using static backgrounds are variations of this entry, and uses a system function (boot counter, or system time) to select the image that is displayed
 
====Backgrounds linked to boot counter====
This works simply by including multiple backgrounds, the PS3 will rotate through them every time the system powers up.


=====Linked to boot counter=====
Themes can include up to 24 background images. When you include multiple backgrounds, the PS3 will rotate through them every time the system powers up.
{{Boxcode|content=<syntaxhighlight lang="xml">
{{Boxcode|content=<syntaxhighlight lang="xml">
<!-------------------------- background linked to boot counter -------------------------->
<bgimagetable>
<bgimagetable>
<bgimage hd="bgimage_hd_1.jpg" sd="bgimage_sd_1.jpg" />
<bgimage hd="bg_hd_1.jpg" sd="bg_sd_1.jpg" />
<bgimage hd="bgimage_hd_2.jpg" sd="bgimage_sd_2.jpg" />
<bgimage hd="bg_hd_2.jpg" sd="bg_sd_2.jpg" />
<bgimage hd="bgimage_hd_3.jpg" sd="bgimage_sd_3.jpg" />
<bgimage hd="bg_hd_3.jpg" sd="bg_sd_3.jpg" />
</bgimagetable>
</bgimagetable>
</syntaxhighlight>}}
</syntaxhighlight>}}


====Linked to time of the day====
====Backgrounds linked to hours of the day====
*Method 3 (linked to date time, all days). Time in '''HH Format'''
Note the maximun number of background images supported is 24. You can link them to the 24 hours of the day
In the example the image changes every hour, starting at 00:00 (day starts at 00:00 and ends at 23:00)
 
Or you can divide the day in 3 periods of 8 hours and use 3 backgrounds for "morning" "evening" and "night"
 
Or use the basic background entry (not linked to time from the previous examples) to be displayed permanently and configure some special hours with a specific background like "vampire time", "kids time", etc... (im not sure if this combination is posible --[[User:Sandungas|Sandungas]] 15:40, 14 February 2013 (MSK) not tested)
 
{{Boxcode|content=<syntaxhighlight lang="xml">
{{Boxcode|content=<syntaxhighlight lang="xml">
<!-------------------------- background linked to hours of the day. Time in "HH" Format -------------------------->
<bgimagetable showtype="datetime">
<bgimagetable showtype="datetime">
<bgimage hd="bgimage0_hd.jpg" sd="bgimage0_sd.jpg" from="00" until="01"/>
<bgimage hd="bg_hd_1.jpg" sd="bg_sd_1.jpg" from="00" until="01"/>
<bgimage hd="bgimage1_hd.jpg" sd="bgimage1_sd.jpg" from="01" until="02"/>
<bgimage hd="bg_hd_2.jpg" sd="bg_sd_2.jpg" from="01" until="02"/>
<bgimage hd="bgimage2_hd.jpg" sd="bgimage2_sd.jpg" from="02" until="03"/>
<bgimage hd="bg_hd_3.jpg" sd="bg_sd_3.jpg" from="02" until="03"/>
<!-- up to 24 images linked to 24 hours of the day -->
</bgimagetable>
</bgimagetable>
</syntaxhighlight>}}
</syntaxhighlight>}}


====Linked to day of the month====
====Backgrounds linked to days of the month====
*Method 1 (linked to specific days, in specific year). Time in '''YYYYMMDD''' Format
Usefull for special dates, a birthday, christmas, etc... The background is visible the same day all years because the year is not specifyed
In the example the image is visible for a period of 1 year (from 31 december 2012, until 31 december 2013)
 
{{Boxcode|content=<syntaxhighlight lang="xml">
{{Boxcode|content=<syntaxhighlight lang="xml">
<!-------------------------- background linked to days of the month. Time in MMDD Format -------------------------->
<bgimagetable showtype="days">
<bgimagetable showtype="days">
<bgimage hd="bgimage_hd.jpg" sd="bgimage_sd.jpg" from="20121231" until="20131231"/>
<bgimage hd="bg_hd_1.jpg" sd="bg_sd_1.jpg" from="1231" until="0101"/>
</bgimagetable>
</bgimagetable>
</syntaxhighlight>}}
</syntaxhighlight>}}


*Method 2 (linked to specific days, every year). Time in '''MMDD''' Format
====Backgrounds linked to days of a year====
In the example the image is visible only the last day of the year, in all years
Useful for special dates of specific years, like olympic games, the end of the world, etc... it can be used for restrictions too, in the example the image is visible for a period of 1 year (from 31 december 2012, until 31 december 2013)
 
{{Boxcode|content=<syntaxhighlight lang="xml">
{{Boxcode|content=<syntaxhighlight lang="xml">
<!-------------------------- background linked to days of a year. Time in "YYYYMMDD" Format -------------------------->
<bgimagetable showtype="days">
<bgimagetable showtype="days">
<bgimage hd="bgimage_hd.jpg" sd="bgimage_sd.jpg" from="1231" until="0101"/>
<bgimage hd="bg_hd_1.jpg" sd="bg_sd_1.jpg" from="20121231" until="20131231"/>
</bgimagetable>
</bgimagetable>
</syntaxhighlight>}}
</syntaxhighlight>}}
Line 338: Line 357:
In this themes the "background scene" (compiled in .RAF format but renamed to '''anim_1.jpg''' by the compiler) is composed by: 3d geometry models and 3d light models (.dae), textures (.dds), a script (.js), and a scene setting file (.xml)
In this themes the "background scene" (compiled in .RAF format but renamed to '''anim_1.jpg''' by the compiler) is composed by: 3d geometry models and 3d light models (.dae), textures (.dds), a script (.js), and a scene setting file (.xml)


====Dynamic Background XML entry====
This is the entry that links to the .RAF from the main '''Theme Scene.XML''' file. Note inside the .RAF there is another '''RAF Scene.XML''' that is very different
This is the entry that links to the .RAF from the main '''Theme Scene.XML''' file. Note inside the .RAF there is another '''RAF Scene.XML''' that is very different
{{Boxcode|content=<syntaxhighlight lang="xml">
{{Boxcode|content=<syntaxhighlight lang="xml">

Revision as of 12:40, 14 February 2013

Classic theme
default theme

Description

Themes can be created by Sony's official PlayStation 3 theme creator software or by theme compilers from third-party developers.

System software version 1.90 allows users to change the background of the XMB to display any image saved on the console's hard disk drive.

Firmware 2.00 added the ability to select the background color of the XMB (from the same choice as the PSP), and the brightness of the color. The same update also added extra font choices, and the ability to use custom themes that change the icons, wallpaper, color, font, and, in some cases, the click sound effects.

With the release of firmware 3.00, a 'sparkle' effect has been added to the default theme and night time black theme has the current month color as a basis, instead of white.

A Dynamic Themes feature was added in software version 3.00 which allows the user to use animated themes. These themes may feature animated backgrounds which change throughout the day or respond to user input

  • FW 2.00:
    • Ability to modify the PlayStation 3 XMB Home Menu icons or background design by using a theme compiler
    • [Colour], [Background] and [Font] have been added as options under [Theme Settings].
    • Ability to select [Brightness] as an option under [Theme Settings] > [Background].
  • FW 3.00:
    • Support for new Dynamic Custom Themes.
    • The default theme has been changed to an updated version of the 'Original' waves theme (the original theme has been renamed 'Classic').
    • XMB icons now change colour along with the theme depending on the time of day.
  • Installation
    • From USB (and CF/SD/MS memorycards): /PS3/THEME/*.p3t
    • From disc (or fake disc): Infos on Creating Discs
    • From PS3 INTERNET browser & SEN STORE
    • From FW
    • From Games
    • From PKG (with EDATA)
    • Manually by copying the *.p3t inside the /dev_hdd0/theme folder


Theme Contents

Theme Scene (.XML)

Code Sample



Variations

  • Reduced infotable

This is the minimal tested by me --Sandungas 14:05, 11 February 2013 (MSK) if you find some item of this table is not needed please delete the line

Code Sample
  • Localized info

This texts replaces the contents in the <info> with a translation for different languages, the "letter codes" used for languages are listed in this table: Content_Information_Files#Languages

Localized info texts are only displayed when the XMB is configured in the same language than the "letter code"

If the theme doesnt contains <localizedinfo> the default texts from <info> are used , so <localizedinfo> is not mandatory, and sometimes is not needed (e.g: the name of the theme doesnt need to be translated in most cases)

Code Sample

Themeicon and Authoricon (.PNG)

icon = theme icon (64x64, 32-bit PNG)

authoricon = author icon(64x64, 32-bit PNG)

Theme Preview (.PNG)

preview = preview icon of the theme (480x270, 24-bit PNG)

XMB Icons (.PNG)

All icons are 128x128, 32-bit PNG, except the ones in the next table

File Image type Notes
All the other XMB icons 128x128, 32-bit .PNG
icon_photo_default 170x128, 32-bit .PNG
icon_photo_album_default 170x128, 32-bit .PNG
icon_video_default 228x128, 32-bit .PNG
icon_video_album_default 228x128, 32-bit .PNG
  • Default icons

icon_default_h (default icon for horizontal row) and icon_default_v (default icon for vertical columns) are displayed in XMB when the theme doesnt have newest icons required by the firmware. E.g: when installing a theme made in 2008 in a firmware released in 2013

  • Missing icons in newer firmwares ?... like PSvita ?
  • Missing icons in the example ? (but supported by the compilers)

Notification window (.PNG)

Background image that appears at top-right corner of XMB for system messages

This image has transparent rounded corners, and is stretched by XMB depending of the lenght of the texts displayed, this stretching is made in the center of the image (not in the corners) to prevent deformation of the rounded corners

Mouse Pointers (.PNG)

Navigation Sounds (.VAG)

Sound effects as PlayStation Compressed Sound File.

-Total sound data under 256 KB.
  • Stereo Sounds (same sound used in left and right channels)
Code Sample
  • Stereo Sounds (separated sounds for left and right channels)
Code Sample

Background (.JPG .RAF)

Themes can include up to 24 background images.

sizes
File File type File max size Group max items Group max size
bg_sd_**.jpg 640x480 JPEG 24bits (4:3 aspect ratio) 2mb 24 ??
bg_hd_**.jpg 1920x1080 JPEG 24bits (16:9 aspect ratio) 2mb 24 ??
anim_**.raf ? ? 24 ??

Static Background (.JPG)

The basic entry for 1 background in two resolutions. Is highly recommended to add both resolutions for compatibility with all TV's

Code Sample

The next methods using static backgrounds are variations of this entry, and uses a system function (boot counter, or system time) to select the image that is displayed

Backgrounds linked to boot counter

This works simply by including multiple backgrounds, the PS3 will rotate through them every time the system powers up.

Code Sample

Backgrounds linked to hours of the day

Note the maximun number of background images supported is 24. You can link them to the 24 hours of the day

Or you can divide the day in 3 periods of 8 hours and use 3 backgrounds for "morning" "evening" and "night"

Or use the basic background entry (not linked to time from the previous examples) to be displayed permanently and configure some special hours with a specific background like "vampire time", "kids time", etc... (im not sure if this combination is posible --Sandungas 15:40, 14 February 2013 (MSK) not tested)

Code Sample

Backgrounds linked to days of the month

Usefull for special dates, a birthday, christmas, etc... The background is visible the same day all years because the year is not specifyed

Code Sample

Backgrounds linked to days of a year

Useful for special dates of specific years, like olympic games, the end of the world, etc... it can be used for restrictions too, in the example the image is visible for a period of 1 year (from 31 december 2012, until 31 december 2013)

Code Sample

Dynamic Background (.RAF)

In this themes the "background scene" (compiled in .RAF format but renamed to anim_1.jpg by the compiler) is composed by: 3d geometry models and 3d light models (.dae), textures (.dds), a script (.js), and a scene setting file (.xml)

This is the entry that links to the .RAF from the main Theme Scene.XML file. Note inside the .RAF there is another RAF Scene.XML that is very different

Code Sample

RAF contents

RAF (rich appearance format) is considered an "image format", themes can contain a raf file that is used as the background of the theme. This same format is used for the coldboot.raf animation when PS3 boots.

It must comply with these restrictions :

-Textures size max: 15 mb
-Geometry & script size max: 1mb
-Actor size max: 1.20mb
-Actor number max: 128
-Cameras: 1
-Lights: 2 (ambient + point)
-Scripts: 1
-Models: 64 (with 8 animations each model)
RAF Scene (.XML)
Models (.DAE)

DAE (digital asset exchange) is an XML file that contains COLLADA content. COLLADA is an open standard created by sony for interactive 3D applications. Is used to export and import files from 3-D authoring applications (Maya, SoftImage, and 3ds max) in .dae format https://collada.org/

There is a collada plugin for [Blender] (link is at bottom of page). Both blender and the collada plugin are free and open source projects

Models can be geometric 3D objects, or 3D light points

  • Typical objects and names used:
    • bg.dae
    • ambient_light.dae
    • point_light.dae

Models files contains references to the libraryes that was used by the 3D app that buid the object

  • Typical entries found in models (3d objects)
    • <asset>
    • <library_physics_scenes>
    • <library_images>
    • <library_materials>
    • <library_effects>
    • <library_geometries>
    • <library_visual_scenes>
    • <scene>
  • Typical entries found in models (3d lights)
    • <asset>
    • <library_physics_scenes>
    • <library_lights>
    • <library_visual_scenes>
    • <scene>
Textures (.DDS)
Script (.JS)

.js (playstation javascript derivate, also known as PSJS)

script.js

Combined background methods

Static and Dynamic backgrounds linked to boot counter

Code Sample

XMB color schemes

The XMB's by default changes his color depending on the current month of the year and brightness depending on the time of day. The color can be configured to "default" (changes every month) or one of the 12 color preconfigured for months, in XMB Settings column ---> Theme settings ---> Color

This change of color affects waves, background, all the icons, and other images like the "side menu", the color is applyed to the originall images like a "color filter" layer over them (note originall icons are semitransparent white to improve this effect)

The background image changes acordingly with the month. The file lines.qrc contains 24 textures_month_bg_*.dds images of 64x32 pixels. Each day has 2 different images for "day" and "night". See QGL_modding

  • Speculation

This color setting to apply as a "filter" needs to be stored somewhere :P and probably brightness is stored with it, this is the only code reference we will find to know the exact values used (but the method to apply brighness can be more complicated). At some point it was possible to change the font color in PSP firmwares (this is another "color filter" using the same technique) so is posible similar settings can be used in PS3... the candidate to contain all this easter eggs is lines.qrc, good hunting :) --Sandungas 07:38, 13 February 2013 (MSK)

Until somebody finds this values... the next tables are not accurate !

color values are only orientative !!!
Month All January February March April May June July August September October November December
Color code 0 1 2 3 4 5 6 7 8 9 10 11 12
Day background
(diagonal degrade)
Varies
Night background
(vertical degrade)
Varies
Color filter MonthTime
??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ???
brightness values are speculative !!!
Time DayTime NightTime NightBrightness NightDayBlend Alpha
override_*_HDR.mnu ? ??? ??? ??? ??? ???
Etc... ??? ??? ??? ??? ???

from wikipedia, too speculative

Major color changes occur on the three days before the 15th and 24th of each month, while the color gradually changes between those dates.

Colors during the year (At noon, full brightness) color values are only orientative !!!
Date Jan 15 Jan 24 Feb 15 Feb 24 Mar 15 Mar 24 Apr 15 Apr 24 May 15 May 24 Jun 15 Jun 24 Jul 15 Jul 24 Aug 15 Aug 24 Sep 15 Sep 24 Oct 15 Oct 24 Nov 15 Nov 24 Dec 15 Dec 24
Color
Brightness changes during the day (24 hour) color values are only orientative !!!
Time 00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23
Value

Tutorials & Tools Links

official:

  • Theme Settings manual:

http://manuals.playstation.net/document/en/ps3/current/settings/themesettings.html

  • How do I create my own theme for the PlayStation®3 computer entertainment system?

http://us.playstation.com/support/answer/index.htm?a_id=1205

  • Playstation 3 custom theme guidelines v2.00 (official p3tcompiler.exe with a sample theme). This toolset doesnt contains the raf compilers !

http://uk.playstation.com/ps3/support/settings/detail/linked235336/item85346/Download-PlayStation-3-Custom-Theme-Guidelines/

Others: