Difference between revisions of "Customization"

From EmuVR Wiki
Jump to: navigation, search
m (Updated total number of posters.)
 
(35 intermediate revisions by the same user not shown)
Line 1: Line 1:
== Custom Assets ==
+
EmuVR supports importing custom label images for your game cartridges and CDs.
  
At the moment, EmuVR supports adding a few custom textures to the game to make it your own. Below are instructions on how to add these assets. Once things like dimensions and templates are available, they will be added to each section.
+
You can also customize your posters, wallpaper, bed sheet and pillow.
  
At the moment, we can change:
 
  
* Labels/CD Images for games
+
'''You'll find a lot of cool user-made images for game labels, posters, wallpapers, etc, in the [https://docs.google.com/spreadsheets/d/1RdMTzZhVW811lTHfKmAZvux2Z_tLdwU4PazVHytpLXg/ Custom Artwork Google Sheets] maintained by Dau, collecting everything shared by other players from our Discord server!
* Posters throughout the room(in preset locations)
+
 
* The wallpaper for the room
+
 
* The bedspread
+
__TOC__
  
 
== Labels ==
 
== Labels ==
 +
=== TL;DR: What's the easiest way to add game labels? ===
 +
# Download a cool user-made '''label pack''' from the [https://docs.google.com/spreadsheets/d/1RdMTzZhVW811lTHfKmAZvux2Z_tLdwU4PazVHytpLXg/edit#gid=0 spreadsheet] mentioned above, or from anywhere you want. (It's just a zip file with lots of properly named images for each console.)
 +
# Extract it into the appropriate folders, like <code>EmuVR\Custom\Labels\<span style="color:#1f8ee0"><b><media name here></b></span></code>, which '''Game Scanner has already created and named for each of your systems''' (don't worry about any underscores there).
 +
# That's it!
  
Cartridge Labels and CD Art go in your `Custom/Labels` folder, and should follow the **exact** same file structure as your Games folder.
+
If you want to create or add your own individual labels (packs are not perfect, some games might be missing), just add your images to the folders mentioned above. Keep reading to learn how this works.
  
For example, if you are adding a label for Super Mario Bros 3, which in this example is located in:
+
=== Folders ===
 +
Cartridge labels and CD art can be added to the '''"EmuVR\Custom\Labels"''' folder, within subfolders that need some ''specific names.''
  
<code>EmuVR\Games\NES\Super Mario Bros 3\Super Mario Bros 3.nes</code>
+
Examples:
 +
* <code>EmuVR\Custom\Labels\<span style="color:#1f8ee0"><b>SNES</b></span></code>
 +
* <code>EmuVR\Custom\Labels\<span style="color:#1f8ee0"><b>SNES (PAL)</b></span></code>
 +
* <code>EmuVR\Custom\Labels\<span style="color:#1f8ee0"><b>PlayStation</b></span></code>
 +
* <code>EmuVR\Custom\Labels\<span style="color:#1f8ee0"><b>PlayStation 2 (DVD)</b></span></code>
 +
* <code>EmuVR\Custom\Labels\<span style="color:#1f8ee0"><b>Neo Geo (Cartridge)</b></span></code>
  
You would add the label in:
 
  
<code>EmuVR\Custom\Labels\NES\Super Mario Bros 3\Super Mario Bros 3.jpg</code>
+
'''Where do these folder names come from? How must I name them?'''<br>They're the '''Media''' names as you see in '''Game Scanner''''s drop-downs.
  
Alternatively, you can use .png files for your labels.
+
* Game Scanner will '''automatically create these label folders for you''' each time you save your setup.
  
*TODO: Add dimensions, filetypes, and templates for each type of label*
+
 
 +
This means that it doesn't matter how your actual '''games''' folders are named, or if you have multiple folders for a same system, they'll all load labels for the '''media''' you've assigned to them.
 +
 
 +
For example, if you have '''games''' in folders named like this:
 +
* <code>EmuVR\Games\<span style="color:#1f8ee0"><b>PSX</b></span></code>
 +
* <code>EmuVR\Games\<span style="color:#1f8ee0"><b>PlayStation</b></span></code>
 +
* <code>EmuVR\Games\<span style="color:#1f8ee0"><b>PS1 (LightGuns)</b></span></code>
 +
 
 +
All of the games above will load labels from a single label folder, which comes from their assigned media:
 +
* <code>EmuVR\Custom\Labels\<span style="color:#1f8ee0"><b>PlayStation</b></span></code>
 +
 
 +
Also even if your games are in extra subfolders for organization or any other reason (e.g. some disc games with multiple files), '''they <u>don't</u> need to be in extra subfolders for labels.'''
 +
 
 +
Don't worry if you see a label folder with an underscore "_". Special characters that aren't allowed in filenames are simply replaced with underscores, so for example the <code>Game Boy / Game Boy Color</code> media will create a folder named like <code>Game Boy _ Game Boy Color</code>.
 +
 
 +
=== Filenames ===
 +
How should your label files be named?
 +
 
 +
A label can be named after the game's '''filename''' or the game's '''detected name'''.
 +
 
 +
After scanning your games, their internal names are detected and shown in the inventory menu, which can differ from the actual filename.
 +
 
 +
For example, even if your ROM file is <code>smw.sfc</code> it could be detected as <code>Super Mario World (USA)</code>, so your label can be named as <code>smw.PNG</code> or <code>Super Mario World (USA).PNG</code>
 +
 
 +
Matching filenames will be searched before matching detected names.
 +
 
 +
This makes it easier to use '''label packs created by other users''' since the detected names are usually predictable, no matter how your actual game files are named.
 +
 
 +
Some internal names contain special characters (<code>\/:*?"<>|</code>) that aren't allowed in file names, so they must be replaced with an underscore in the label.<br>Example:<br><code>The Legend of Zelda: Ocarina of Time / Master Quest (USA)</code> (Detected name)<br><code>The Legend of Zelda_ Ocarina of Time _ Master Quest (USA).PNG</code> (Label image filename).
 +
 
 +
Only '''PNG''' and '''JPG''' images are supported.
 +
 
 +
They must actually be '''.png''' or '''.jpg'''. If it's not working and you're not sure, [https://cdn.discordapp.com/attachments/497454201266372628/703331317085110413/unknown.png enable file extensions] to check them.
 +
 
 +
=== Regions and Tags ===
 +
Many games have filenames (or detected names) like these:
 +
* Super Mario Bros 3 (USA)
 +
* Super Mario Bros 3 (USA) (Rev B).nes
 +
* Super Mario Bros 3 (Japan) [b] [!].nes
 +
 
 +
For each game, EmuVR will first look for a label with that exact file name. Then if it's not found, it will ignore anything in parenthesis or brackets (be it in games or in labels) and try again.
 +
 
 +
This means that if you have games named like in the examples above, ''after checking for exact file names'', a label named like this will also be loaded:
 +
* Super Mario Bros 3.PNG
 +
 
 +
Even if your label is named as "Super Mario Bros 3 (Europe).PNG", it will work for all the games above, since the label names also get stripped of the tags for the fallback. This makes it easier to create label packs without the need to duplicate the same image for every region.
 +
 
 +
Of course if you have a "(USA)" game and don't want it to match a "(Europe)" label, it won't happen if you actually have a "(USA)" label alongside your "(Europe)" label. Full names always take precedence. It would also match a label without any tags first.
 +
 
 +
Note that this is unrelated to '''folder''' names. If you set your games to use the "SNES (PAL)" '''media''', their labels must go into the "SNES (PAL)" folder.
 +
 
 +
If any of this sounds too complicated, just '''match the filenames''' in the proper folders and you're good. Or follow the [[#TL.3BDR:_What.27s_the_easiest_way_to_add_game_labels.3F|TL;DR]] above.
  
  
 
== Posters ==
 
== Posters ==
 +
You can customize your bedroom with lots of posters placed in specific locations.
  
Posters are added in <code>Custom/Posters</code>, numbered from 01-31. These should be in PNG format.
+
Your images should be added to the '''EmuVR\Custom\Posters''' folder, named as '''01.png''', '''02.png''', '''03.png''', and so forth, up to '''31.png'''.
  
Examples are also available(in the Examples folder), and it is highly recommended you copy those to your Posters folder so that you can see where each poster is located in-game.
+
PNG and JPG images are supported.
  
== Wall & Bed ==
+
To see the location for each numbered poster before adding your own images, follow these steps:
  
You can change your bed sheets, pillow, and wallpaper by changing the following files:
+
# Copy all example image files from <code>EmuVR\Custom\Posters\Examples</code> into <code>EmuVR\Custom\Posters</code>.
 +
# Run EmuVR and you'll see every poster location in the bedroom, each showing a number.
 +
# Replace the numbered image files in <code>EmuVR\Custom\Posters</code> with your custom images (try to find images closer to their aspect ratios to avoid stretched posters)
 +
# Delete the unused example posters in <code>EmuVR\Custom\Posters</code> after you're done.
  
<code>Custom\Misc\wallpaper.png</code>
+
== The Bed, Wallpapers, Floor and Ceiling ==
 +
 
 +
You can change your bed sheets, pillow, wallpaper, floor and ceiling by adding the following images:
  
 
<code>Custom\Misc\bed_sheet.png</code>
 
<code>Custom\Misc\bed_sheet.png</code>
Line 43: Line 108:
 
<code>Custom\Misc\pillow.png</code>
 
<code>Custom\Misc\pillow.png</code>
  
Additionally, there is a .txt with each of these that you can use to set tiling options and offsets.
+
<code>Custom\Misc\wallpaper.png</code>
 +
 
 +
<code>Custom\Misc\floor.png</code>
 +
 
 +
<code>Custom\Misc\ceiling.png</code>
 +
 
 +
PNG and JPG images are supported.
 +
 
 +
Additionally, there is a matching '''.txt''' file for each of those images, which you can edit to adjust the texture tiling and offset.
 +
 
 +
To make them '''not''' tile, set <code>tiling_x</code> and <code>tiling_y</code> to '''"1"'''.
 +
 
 +
=== Advanced texturing: normal, glossiness, roughness, emissive ===
 +
Optionally, you can add normal maps, glossiness ''or'' roughness maps, and emissive maps. This is supported only for walls, floor and ceiling textures.
 +
 
 +
If you have both glossiness ''and'' roughness maps for the same thing, the glossiness file will take precedence, and the roughness file will be ignored.
 +
 
 +
When authoring emissive textures, don't overdo it, or they'll be blindingly bright in the dark. The darker parts of your texture will be rendered like a "turned off" lamp: it works the same way a real wall projector works. Start with a pitch black image, then add colors in the places you want to be actually glowing, but still keep them somewhat dark. Contrast is key. If you make it all normally bright, it will look like '''Doom''' textures with no lighting. Check the included examples in your EmuVR installation to learn how to do it.
 +
 
 +
While JPG images are also supported for the additional maps, PNGs are better suited for these types of channels, as JPEG artifacts will be amplified and more noticeable, specially in normal maps.
 +
 
 +
File naming:
 +
 
 +
<code>Custom\Misc\wallpaper_normal.png</code>
 +
 
 +
<code>Custom\Misc\wallpaper_glossiness.png</code>
 +
 
 +
<code>Custom\Misc\wallpaper_roughness.png</code>
 +
 
 +
<code>Custom\Misc\wallpaper_emissive.png</code>
 +
 
 +
 
 +
<code>Custom\Misc\floor_normal.png</code>
 +
 
 +
<code>Custom\Misc\floor_glossiness.png</code>
 +
 
 +
<code>Custom\Misc\floor_roughness.png</code>
 +
 
 +
<code>Custom\Misc\floor_emissive.png</code>
 +
 
 +
 
 +
<code>Custom\Misc\ceiling_normal.png</code>
 +
 
 +
<code>Custom\Misc\ceiling_glossiness.png</code>
 +
 
 +
<code>Custom\Misc\ceiling_roughness.png</code>
 +
 
 +
<code>Custom\Misc\ceiling_emissive.png</code>
 +
 
 +
=== Individual wallpapers for each wall ===
 +
When using <code>wallpaper.png</code>, your image will be repeated in all four walls.
 +
 
 +
If you want individual textures for each wall, use this naming:
 +
 
 +
<code>wallpaper_f.png</code> <code>wallpaper_b.png</code> <code>wallpaper_l.png</code> <code>wallpaper_r.png</code>
 +
 
 +
The front wall (_f) is the windowed one.
 +
 
 +
You can use matching .txt files in the same way, e.g. <code>wallpaper_f.txt</code>
 +
 
 +
If you want to prevent your unique wallpapers to tile, setting their <code>tiling</code> and <code>offset</code> values to 1 and 0, respectively.
 +
 
 +
If a specific wall doesn't have its own separate custom texture, it will fall back to your usual <code>wallpaper.png</code> file if you have one, or else it will use the default blue color with no textures.
 +
 
 +
You can also use the same naming pattern for the additional maps explained in the section above, e.g.:
 +
 
 +
<code>wallpaper_r_normal.png</code>
 +
 
 +
<code>wallpaper_r_glossiness.png</code>
 +
 
 +
<code>wallpaper_r_roughness.png</code>
 +
 
 +
<code>wallpaper_r_emissive.png</code>
 +
 
 +
== Resolution and aspect ratio ==
 +
Irrespective of of your custom images resolutions (for labels, posters, walls, etc), they'll be resized internally at loading time.
 +
 
 +
* Your custom cartridge and CD labels will be loaded as '''256x256''' (default), '''128x128''' or '''512x512''' textures, depending on your [[Settings#Label_Texture_Resolution|settings]].
 +
* The walls, floor and ceiling will load your custom images as '''1024x1024''' textures.
 +
* Your custom bed sheet, pillow, and all posters will be loaded as '''512x512''' textures.
 +
 
 +
Again, you can author your images at any resolution, but they'll always be scaled to the respective sizes above when loaded. ''For the best image quality possible, save your image files already pre-scaled to these resolutions'', to prevent any blurring from internal scaling (e.g. a 256x256 label will actually look sharper ingame than a 1000x1000 image). It doesn't matter if they need to be weirdly stretched in your image editor to fit those exact resolutions, because they'll be unstretched back again when being used on the actual objects ingame.
 +
 
 +
* The generic cartridge label has a '''4:3''' aspect ratio.
 +
* The walls have the aspect ratio of '''16:10''', e.g. 1920x1200 and 2560x1600. You'll need to author your textures at this ratio or they will look stretched on the walls. You can still export your final images pre-stretched into 1024x1024 for max quality, as stated above, and they'll be unstretched back when actually being displayed on the walls ingame.
 +
* The floor and ceiling are perfect squares (1:1).
 +
* Posters and games have their own specific aspect ratios each.
 +
 
 +
== Extra Customization Settings ==
 +
* You can change your settings to disable [[Settings#Spawn_Objects_at_Start|objects]], [[Settings#Spawn_Games_at_Start|games, consoles and/or TVs]] from spawning at start. This setting will only have effect when loading the Default Room slot.
 +
 
 +
* Change your custom [[Settings#Label_Texture_Resolution|label resolution]] for games to increase quality (not recommended) '''or''' allow for more games.
 +
 
 +
* You can also pick a [[Settings#Season|season]] and [[Settings#Hide_Baseboard|hide the baseboard]].
 +
 
 +
* Learn how to save your bedroom layout in the [[Room_Saving|Room Saving]] page.

Latest revision as of 03:33, 3 March 2023

EmuVR supports importing custom label images for your game cartridges and CDs.

You can also customize your posters, wallpaper, bed sheet and pillow.


You'll find a lot of cool user-made images for game labels, posters, wallpapers, etc, in the Custom Artwork Google Sheets maintained by Dau, collecting everything shared by other players from our Discord server!


Labels

TL;DR: What's the easiest way to add game labels?

  1. Download a cool user-made label pack from the spreadsheet mentioned above, or from anywhere you want. (It's just a zip file with lots of properly named images for each console.)
  2. Extract it into the appropriate folders, like EmuVR\Custom\Labels\<media name here>, which Game Scanner has already created and named for each of your systems (don't worry about any underscores there).
  3. That's it!

If you want to create or add your own individual labels (packs are not perfect, some games might be missing), just add your images to the folders mentioned above. Keep reading to learn how this works.

Folders

Cartridge labels and CD art can be added to the "EmuVR\Custom\Labels" folder, within subfolders that need some specific names.

Examples:

  • EmuVR\Custom\Labels\SNES
  • EmuVR\Custom\Labels\SNES (PAL)
  • EmuVR\Custom\Labels\PlayStation
  • EmuVR\Custom\Labels\PlayStation 2 (DVD)
  • EmuVR\Custom\Labels\Neo Geo (Cartridge)


Where do these folder names come from? How must I name them?
They're the Media names as you see in Game Scanner's drop-downs.

  • Game Scanner will automatically create these label folders for you each time you save your setup.


This means that it doesn't matter how your actual games folders are named, or if you have multiple folders for a same system, they'll all load labels for the media you've assigned to them.

For example, if you have games in folders named like this:

  • EmuVR\Games\PSX
  • EmuVR\Games\PlayStation
  • EmuVR\Games\PS1 (LightGuns)

All of the games above will load labels from a single label folder, which comes from their assigned media:

  • EmuVR\Custom\Labels\PlayStation

Also even if your games are in extra subfolders for organization or any other reason (e.g. some disc games with multiple files), they don't need to be in extra subfolders for labels.

Don't worry if you see a label folder with an underscore "_". Special characters that aren't allowed in filenames are simply replaced with underscores, so for example the Game Boy / Game Boy Color media will create a folder named like Game Boy _ Game Boy Color.

Filenames

How should your label files be named?

A label can be named after the game's filename or the game's detected name.

After scanning your games, their internal names are detected and shown in the inventory menu, which can differ from the actual filename.

For example, even if your ROM file is smw.sfc it could be detected as Super Mario World (USA), so your label can be named as smw.PNG or Super Mario World (USA).PNG

Matching filenames will be searched before matching detected names.

This makes it easier to use label packs created by other users since the detected names are usually predictable, no matter how your actual game files are named.

Some internal names contain special characters (\/:*?"<>|) that aren't allowed in file names, so they must be replaced with an underscore in the label.
Example:
The Legend of Zelda: Ocarina of Time / Master Quest (USA) (Detected name)
The Legend of Zelda_ Ocarina of Time _ Master Quest (USA).PNG (Label image filename).

Only PNG and JPG images are supported.

They must actually be .png or .jpg. If it's not working and you're not sure, enable file extensions to check them.

Regions and Tags

Many games have filenames (or detected names) like these:

  • Super Mario Bros 3 (USA)
  • Super Mario Bros 3 (USA) (Rev B).nes
  • Super Mario Bros 3 (Japan) [b] [!].nes

For each game, EmuVR will first look for a label with that exact file name. Then if it's not found, it will ignore anything in parenthesis or brackets (be it in games or in labels) and try again.

This means that if you have games named like in the examples above, after checking for exact file names, a label named like this will also be loaded:

  • Super Mario Bros 3.PNG

Even if your label is named as "Super Mario Bros 3 (Europe).PNG", it will work for all the games above, since the label names also get stripped of the tags for the fallback. This makes it easier to create label packs without the need to duplicate the same image for every region.

Of course if you have a "(USA)" game and don't want it to match a "(Europe)" label, it won't happen if you actually have a "(USA)" label alongside your "(Europe)" label. Full names always take precedence. It would also match a label without any tags first.

Note that this is unrelated to folder names. If you set your games to use the "SNES (PAL)" media, their labels must go into the "SNES (PAL)" folder.

If any of this sounds too complicated, just match the filenames in the proper folders and you're good. Or follow the TL;DR above.


Posters

You can customize your bedroom with lots of posters placed in specific locations.

Your images should be added to the EmuVR\Custom\Posters folder, named as 01.png, 02.png, 03.png, and so forth, up to 31.png.

PNG and JPG images are supported.

To see the location for each numbered poster before adding your own images, follow these steps:

  1. Copy all example image files from EmuVR\Custom\Posters\Examples into EmuVR\Custom\Posters.
  2. Run EmuVR and you'll see every poster location in the bedroom, each showing a number.
  3. Replace the numbered image files in EmuVR\Custom\Posters with your custom images (try to find images closer to their aspect ratios to avoid stretched posters)
  4. Delete the unused example posters in EmuVR\Custom\Posters after you're done.

The Bed, Wallpapers, Floor and Ceiling

You can change your bed sheets, pillow, wallpaper, floor and ceiling by adding the following images:

Custom\Misc\bed_sheet.png

Custom\Misc\pillow.png

Custom\Misc\wallpaper.png

Custom\Misc\floor.png

Custom\Misc\ceiling.png

PNG and JPG images are supported.

Additionally, there is a matching .txt file for each of those images, which you can edit to adjust the texture tiling and offset.

To make them not tile, set tiling_x and tiling_y to "1".

Advanced texturing: normal, glossiness, roughness, emissive

Optionally, you can add normal maps, glossiness or roughness maps, and emissive maps. This is supported only for walls, floor and ceiling textures.

If you have both glossiness and roughness maps for the same thing, the glossiness file will take precedence, and the roughness file will be ignored.

When authoring emissive textures, don't overdo it, or they'll be blindingly bright in the dark. The darker parts of your texture will be rendered like a "turned off" lamp: it works the same way a real wall projector works. Start with a pitch black image, then add colors in the places you want to be actually glowing, but still keep them somewhat dark. Contrast is key. If you make it all normally bright, it will look like Doom textures with no lighting. Check the included examples in your EmuVR installation to learn how to do it.

While JPG images are also supported for the additional maps, PNGs are better suited for these types of channels, as JPEG artifacts will be amplified and more noticeable, specially in normal maps.

File naming:

Custom\Misc\wallpaper_normal.png

Custom\Misc\wallpaper_glossiness.png

Custom\Misc\wallpaper_roughness.png

Custom\Misc\wallpaper_emissive.png


Custom\Misc\floor_normal.png

Custom\Misc\floor_glossiness.png

Custom\Misc\floor_roughness.png

Custom\Misc\floor_emissive.png


Custom\Misc\ceiling_normal.png

Custom\Misc\ceiling_glossiness.png

Custom\Misc\ceiling_roughness.png

Custom\Misc\ceiling_emissive.png

Individual wallpapers for each wall

When using wallpaper.png, your image will be repeated in all four walls.

If you want individual textures for each wall, use this naming:

wallpaper_f.png wallpaper_b.png wallpaper_l.png wallpaper_r.png

The front wall (_f) is the windowed one.

You can use matching .txt files in the same way, e.g. wallpaper_f.txt

If you want to prevent your unique wallpapers to tile, setting their tiling and offset values to 1 and 0, respectively.

If a specific wall doesn't have its own separate custom texture, it will fall back to your usual wallpaper.png file if you have one, or else it will use the default blue color with no textures.

You can also use the same naming pattern for the additional maps explained in the section above, e.g.:

wallpaper_r_normal.png

wallpaper_r_glossiness.png

wallpaper_r_roughness.png

wallpaper_r_emissive.png

Resolution and aspect ratio

Irrespective of of your custom images resolutions (for labels, posters, walls, etc), they'll be resized internally at loading time.

  • Your custom cartridge and CD labels will be loaded as 256x256 (default), 128x128 or 512x512 textures, depending on your settings.
  • The walls, floor and ceiling will load your custom images as 1024x1024 textures.
  • Your custom bed sheet, pillow, and all posters will be loaded as 512x512 textures.

Again, you can author your images at any resolution, but they'll always be scaled to the respective sizes above when loaded. For the best image quality possible, save your image files already pre-scaled to these resolutions, to prevent any blurring from internal scaling (e.g. a 256x256 label will actually look sharper ingame than a 1000x1000 image). It doesn't matter if they need to be weirdly stretched in your image editor to fit those exact resolutions, because they'll be unstretched back again when being used on the actual objects ingame.

  • The generic cartridge label has a 4:3 aspect ratio.
  • The walls have the aspect ratio of 16:10, e.g. 1920x1200 and 2560x1600. You'll need to author your textures at this ratio or they will look stretched on the walls. You can still export your final images pre-stretched into 1024x1024 for max quality, as stated above, and they'll be unstretched back when actually being displayed on the walls ingame.
  • The floor and ceiling are perfect squares (1:1).
  • Posters and games have their own specific aspect ratios each.

Extra Customization Settings

  • You can change your settings to disable objects, games, consoles and/or TVs from spawning at start. This setting will only have effect when loading the Default Room slot.
  • Change your custom label resolution for games to increase quality (not recommended) or allow for more games.
  • Learn how to save your bedroom layout in the Room Saving page.