No Man's Sky Modding Wiki
Tag: Visual edit
m (Removed useless comment in description, deleted text that had to be removed)
Tag: Visual edit
Line 1: Line 1:
βˆ’
NMS uses [https://en.wikipedia.org/wiki/DirectDraw_Surface DDS images] as texture maps. As such, it is highly recommended to use the nVidia DDS plugin for Photoshop, GIMP, or in whatever preferred image editor of choice with DDS file writing capabilities.
+
No Man's Sky uses [https://en.wikipedia.org/wiki/DirectDraw_Surface DDS images] as texture maps. As such, it is highly recommended to use the Nvidia DDS plugin for Photoshop, GIMP, or any image editor of choice with DDS file handling capabilities.
   
βˆ’
Due to the way shaders have been written inside the game, the arrangement of textures overall differ from what is more commonly known in other game engines. The most commonly used shader in NMS is called the Ubershader and functions similarly to Unity's Standard Shader (physically-based rendering) but with a few differences as discussed below and in the [[MATERIAL Files|MATERIAL page]].
+
Due to the way shaders have been written, the arrangement of textures overall differ from what is more commonly known in other game engines. The most commonly used shader is called the Ubershader and functions similarly to Unity's Standard Shader (physically-based rendering) but with a few differences as discussed below and in the [[MATERIAL Files|MATERIAL page]].
   
 
== Usable Texture Maps ==
 
== Usable Texture Maps ==
Line 19: Line 19:
 
=== Normal Map ===
 
=== Normal Map ===
 
As of the Path Finder update, NMS now uses standard XY/RG normal maps. Yay!
 
As of the Path Finder update, NMS now uses standard XY/RG normal maps. Yay!
βˆ’  
βˆ’
<s>The normal map in NMS's engine is apparently stored differently from the normally known blue normal maps and is apparently [https://www.youtube.com/watch?v=bLGRsskREA0 similar to normal maps in Starcraft 2], looking orange in appearance.</s>
 
βˆ’
* <s>Red channel - this channel is always apparently white</s>
 
βˆ’
* <s>Green channel - remains the same as in a standard blue normal map.</s>
 
βˆ’
* <s>Blue channel - always remains black.</s>
 
βˆ’
* <s>Alpha channel - whatever used to be in the red channel is now here instead.</s>
 
βˆ’
<s>With that in mind, it is possible to convert standard blue normal maps to the NMS version and vice versa manually by just copying colors between color channels in your preferred image editor.</s>
 
   
 
== Terrain texture formats ==
 
== Terrain texture formats ==
Line 37: Line 30:
   
 
'''HSV''' - Four CC, 4-bit DXT1, 1-bit alpha
 
'''HSV''' - Four CC, 4-bit DXT1, 1-bit alpha
  +
* HSV version of the RGB diffuse map (we aren't sure yet)
βˆ’
* Literally probably what it is - an HSV version of the RGB diffuse map. Why does it exist? Nobody knows. Only Hello Games can answer. Maybe even only the shader programmer who made this. Is he still in Hello Games? Maybe he works for the CIA?! WHO KNOWS?!
 
 
'''Normal''' - Four CC, 8-bit DXT5
 
'''Normal''' - Four CC, 8-bit DXT5
 
* Red channel - most likely a heightmap for texture blending
 
* Red channel - most likely a heightmap for texture blending

Revision as of 00:42, 20 August 2018

No Man's Sky uses DDS images as texture maps. As such, it is highly recommended to use the Nvidia DDS plugin for Photoshop, GIMP, or any image editor of choice with DDS file handling capabilities.

Due to the way shaders have been written, the arrangement of textures overall differ from what is more commonly known in other game engines. The most commonly used shader is called the Ubershader and functions similarly to Unity's Standard Shader (physically-based rendering) but with a few differences as discussed below and in the MATERIAL page.

Usable Texture Maps

Diffuse Map

The basic diffuse is practically the same as a basic 2D texture in most engines. The map contains RGB data containing the albedo colors for your object's texture. It is important to take note of the way channels are read by NMS's shaders.

  • RGB channels - color information for your albedo map.
  • Alpha channel - this channel is used for metalness, transparency, and emissive textures. (all these material flags read from the same channel and as such, you can't have all of these flags running at once)

Mask Map

The mask map contains other color information used by NMS.

  • Red channel - ambient occlusion bakes are attached here. As of Atlas Rises, most new textures no longer use an AO map and seem to just have this channel colored pure white (basically no AO).
  • Green channel - a roughness gloss map is used here. Despite the material settings specifying this should be a roughness map, the way they look in the textures implies it's really a gloss map, basically an inverted roughness map.
  • Blue channel - has something to do with detail textures but is largely unused for most models. (Blue channel appears to be for determining where custom colors are applied while base building - White receives primary color, grey (I used #7b7b7b) receives secondary color, and black retains original texture color.)
  • Alpha channel - (most likely unused)

Normal Map

As of the Path Finder update, NMS now uses standard XY/RG normal maps. Yay!

Terrain texture formats

The terrain texture files are located in TEXTURES/ATLASES/TERRAIN

These textures are slightly different to the normal textures used by the game as the are volume textures, so each file contains 10 layers of textures.

There are 3 Textures, each in a specific .DDS format:

Diffuse - Four CC, 4-bit DXT1, 1-bit alpha

HSV - Four CC, 4-bit DXT1, 1-bit alpha

  • HSV version of the RGB diffuse map (we aren't sure yet)

Normal - Four CC, 8-bit DXT5

  • Red channel - most likely a heightmap for texture blending
  • Green channel - actual normal map X
  • Blue channel - looks like an inverted specularity map
  • Alpha channel - actual normal map Y