Difference between revisions of "Diffusely convolved cube map"
(WikiName) |
EricChadwick (Talk | contribs) (→More Information: Samule Zeller's article is forever gone) |
||
(21 intermediate revisions by 4 users not shown) | |||
Line 1: | Line 1: | ||
− | + | A ''diffusely convolved cube map'' is simply a blurred-down version of a regular [[CubeMap|cube map]]. When a [[:Category:Shaders|shader]] adds the cube map to the model's diffuse map the result is similar to global-illumination, except it is extremely efficient performance-wise. | |
− | + | ||
− | = | + | {|border="1" |
+ | |[[image:whatif_nmech_env-alone.jpg|thumb|left|The convolved cube map on a normalmapped model.]] | ||
+ | |[[image:whatif_nmech_env+lgt.jpg|thumb|left|The convolved cube map on a normalmapped model.]] | ||
+ | |- | ||
+ | |colspan="2"|Images by [http://www.linkedin.com/in/ericchadwick Eric Chadwick]. | ||
+ | |} | ||
+ | == Lys == | ||
+ | "Lys is an ultra-fast GPU powered solution that sets the standard for generating Radiance, Irradiance and Specular textures from panoramic, Sphere or 2d cube map cross source textures for use with HDR Image Based Lighting." | ||
+ | * [http://polycount.com/discussion/148953/lys-1-0-1-released Lys 1.0 Released!] | ||
− | + | [[image:Lys_axis_rotation_3_855px.jpg|left|thumb|600px|Image by [http://www.metalliandy.com/ Andy "metalliandy Davies].]]<br clear="all"/> | |
− | + | ||
− | + | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
== AMD Cubemapgen == | == AMD Cubemapgen == | ||
+ | * [http://code.google.com/p/cubemapgen/ Cubemapgen] is open-sourced utility for filtering down cube maps. | ||
+ | * Sébastien Lagarde made [http://seblagarde.wordpress.com/2012/06/10/amd-cubemapgen-for-physically-based-rendering/ a modified version for physically based rendering] | ||
− | [http:// | + | [[image:Cubemapgen_Tips.jpg|thumb|left|Some tips for filtering cubemaps in Cubemapgen. Image by [http://www.linkedin.com/in/ericchadwick Eric Chadwick].]]<br clear="all"/> |
+ | |||
+ | === Cubemapgen Cube Faces === | ||
{| border="1" cellpadding="2" cellspacing="0" | {| border="1" cellpadding="2" cellspacing="0" | ||
|- | |- | ||
+ | | '''Cubemapgen''' | ||
+ | | '''3ds Max''' | ||
+ | | '''Maya''' | ||
+ | | '''CryENGINE 3''' | ||
+ | | '''Unity''' | ||
+ | |- | ||
+ | | +X | ||
+ | | _RT | ||
+ | | | ||
+ | | | ||
+ | | Left -X | ||
+ | |- | ||
+ | | -X | ||
+ | | _LF | ||
+ | | | ||
+ | | | ||
+ | | Right +X | ||
+ | |- | ||
+ | | +Y | ||
+ | | _UP | ||
+ | | | ||
+ | | | ||
+ | | Top +Y | ||
+ | |- | ||
+ | | -Y | ||
+ | | _DN | ||
+ | | | ||
+ | | | ||
+ | | Bottom -Y | ||
+ | |- | ||
+ | | +Z | ||
+ | | _BK | ||
+ | | | ||
+ | | | ||
+ | | Front (+Z) | ||
+ | |- | ||
+ | | -Z | ||
+ | | _FR | ||
+ | | | ||
+ | | | ||
+ | | Back (-Z) | ||
|} | |} | ||
− | + | {| border="1" cellpadding="2" cellspacing="0" | |
+ | |- | ||
+ | | '''Cubemapgen''' | ||
+ | | '''3ds Max''' | ||
+ | | '''Maya''' | ||
+ | | '''CryENGINE 3''' | ||
+ | | '''Unity''' | ||
+ | |- | ||
+ | | c00 | ||
+ | | | ||
+ | | | ||
+ | | | ||
+ | | Left -X (180°) | ||
+ | |- | ||
+ | | c01 | ||
+ | | | ||
+ | | | ||
+ | | | ||
+ | | Right +X (180°) | ||
+ | |- | ||
+ | | c02 | ||
+ | | | ||
+ | | | ||
+ | | | ||
+ | | Top +Y | ||
+ | |- | ||
+ | | c03 | ||
+ | | | ||
+ | | | ||
+ | | | ||
+ | | Bottom -Y | ||
+ | |- | ||
+ | | c04 | ||
+ | | | ||
+ | | | ||
+ | | | ||
+ | | Back -Z (180°) | ||
+ | |- | ||
+ | | c05 | ||
+ | | | ||
+ | | | ||
+ | | | ||
+ | | Front +Z (180°) | ||
+ | |} | ||
− | + | === Cubemapgen Custom Meshes === | |
− | {| border="1 | + | {|border="1" |
− | | | + | |[[image:cubemapgen_nmech_cube.jpg|thumb|left|Custom geometry in Cubemapgen.]] |
− | | | + | |[[image:cubemapgen_nmech_basemap+cube.jpg|thumb|left|Basemap is modulated (multiplied) with the cube map.]] |
|- | |- | ||
− | | | + | |colspan="2"|Images by [http://www.linkedin.com/in/ericchadwick Eric Chadwick].]] |
− | + | ||
|} | |} | ||
− | + | You can load your own geometry in Cubemapgen using the ''Load Object'' button, really helps to see what settings are working well. | |
+ | |||
+ | You can also load a bitmap for the model using the ''Load Basemap'' button. There's a bug right now that causes your Basemap to be mirrored vertically... to fix it pre-flip the bitmap yourself before loading it in Cubemapgen. An [[Ambient occlusion map]] map makes a great Basemap, or you can use your [[Diffuse map]]. | ||
+ | |||
+ | |||
== Editing Cubemaps in Photoshop == | == Editing Cubemaps in Photoshop == | ||
If your cube map is in DDS cube format, you'll need the NVIDIA DDS plugin to load and save in Photoshop. | If your cube map is in DDS cube format, you'll need the NVIDIA DDS plugin to load and save in Photoshop. | ||
− | * [http://developer.nvidia.com/ | + | * [http://developer.nvidia.com/nvidia-texture-tools-adobe-photoshop NVIDIA Photoshop Plugins] |
+ | |||
− | + | == More Information == | |
− | * [http://www. | + | * [http://www.cgtextures.com/content.php?action=tutorial&name=cubemaps Cubemaps Tutorial] by CGTextures.com - Tutorial using Nvidia's Photoshop plugin, AMD's [http://developer.amd.com/gpu/cubemapgen/pages/default.aspx CubeMapGen], and Photoshop to convert cubemaps to various layouts. |
− | + | ---- | |
− | + | [[Category:TextureTypes]] |
Latest revision as of 17:17, 22 May 2016
A diffusely convolved cube map is simply a blurred-down version of a regular cube map. When a shader adds the cube map to the model's diffuse map the result is similar to global-illumination, except it is extremely efficient performance-wise.
Images by Eric Chadwick. |
Contents
Lys
"Lys is an ultra-fast GPU powered solution that sets the standard for generating Radiance, Irradiance and Specular textures from panoramic, Sphere or 2d cube map cross source textures for use with HDR Image Based Lighting."
AMD Cubemapgen
- Cubemapgen is open-sourced utility for filtering down cube maps.
- Sébastien Lagarde made a modified version for physically based rendering
Cubemapgen Cube Faces
Cubemapgen | 3ds Max | Maya | CryENGINE 3 | Unity |
+X | _RT | Left -X | ||
-X | _LF | Right +X | ||
+Y | _UP | Top +Y | ||
-Y | _DN | Bottom -Y | ||
+Z | _BK | Front (+Z) | ||
-Z | _FR | Back (-Z) |
Cubemapgen | 3ds Max | Maya | CryENGINE 3 | Unity |
c00 | Left -X (180°) | |||
c01 | Right +X (180°) | |||
c02 | Top +Y | |||
c03 | Bottom -Y | |||
c04 | Back -Z (180°) | |||
c05 | Front +Z (180°) |
Cubemapgen Custom Meshes
Images by Eric Chadwick.]] |
You can load your own geometry in Cubemapgen using the Load Object button, really helps to see what settings are working well.
You can also load a bitmap for the model using the Load Basemap button. There's a bug right now that causes your Basemap to be mirrored vertically... to fix it pre-flip the bitmap yourself before loading it in Cubemapgen. An Ambient occlusion map map makes a great Basemap, or you can use your Diffuse map.
Editing Cubemaps in Photoshop
If your cube map is in DDS cube format, you'll need the NVIDIA DDS plugin to load and save in Photoshop.
More Information
- Cubemaps Tutorial by CGTextures.com - Tutorial using Nvidia's Photoshop plugin, AMD's CubeMapGen, and Photoshop to convert cubemaps to various layouts.