Difference between revisions of "Diffusely convolved cube map"

From polycount
Jump to: navigation, search
(image and formatting fixes)
Line 1: Line 1:
 
= Introduction =
 
= Introduction =
 +
[[image:whatif_nmech_env-alone.jpg|thumb|The convolved cube map on a normalmapped model. <BR> Image by [http://www.linkedin.com/in/ericchadwick Eric Chadwick] and [http://www.whatif-productions.com/ Whatif Productions LLC].]][[image:whatif_nmech_env+lgt.jpg|thumb|The convolved cube map on a normalmapped model. <BR> Image by [http://www.linkedin.com/in/ericchadwick Eric Chadwick] and [http://www.whatif-productions.com/ Whatif Productions LLC].]]
 
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.  
 
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.  
 
[[image:whatif_nmech_env-alone.jpg|frame|left|The convolved cube map on a normalmapped model. <BR> Image by [http://www.linkedin.com/in/ericchadwick Eric Chadwick] and [http://www.whatif-productions.com/ Whatif Productions LLC].]]<br clear="all"/>
 
 
[[image:whatif_nmech_env+lgt.jpg|frame|left|The convolved cube map on a normalmapped model. <BR> Image by [http://www.linkedin.com/in/ericchadwick Eric Chadwick] and [http://www.whatif-productions.com/ Whatif Productions LLC].]]<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://code.google.com/p/cubemapgen/ Cubemapgen] is great for filtering down cube maps. Sébastien Lagarde made [http://seblagarde.wordpress.com/2012/06/10/amd-cubemapgen-for-physically-based-rendering/ a physically based rendering mod]
+
[[image:Cubemapgen_Tips.jpg|thumb|Some tips for filtering cubemaps in Cubemapgen. <BR> Image by [http://www.linkedin.com/in/ericchadwick Eric Chadwick].]]
  
[[image:Cubemapgen_Tips.jpg|frame|left|Some tips for filtering cubemaps in Cubemapgen. <BR> Image by [http://www.linkedin.com/in/ericchadwick Eric Chadwick].]]<br clear="all"/>
 
  
 
== Cubemapgen Cube Faces ==
 
== Cubemapgen Cube Faces ==
 
 
{| border="1" cellpadding="2" cellspacing="0"
 
{| border="1" cellpadding="2" cellspacing="0"
 
|-
 
|-
Line 106: Line 103:
  
 
== Cubemapgen Custom Meshes ==
 
== Cubemapgen Custom Meshes ==
 +
[[image:cubemapgen_nmech_cube.jpg|thumb|Custom geometry in Cubemapgen. <BR> Image by [http://www.linkedin.com/in/ericchadwick Eric Chadwick].]]
 +
[[image:cubemapgen_nmech_basemap+cube.jpg|thumb|Basemap is modulated (multiplied) with the cube map.<BR> Image 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 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 [[DiffuseMap]].
 
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 [[DiffuseMap]].
  
{| border="1" cellpadding="2" cellspacing="0"
 
|  [[Image:DiffuselyConvolvedCubeMap$tmp.320.cubemapgen_nmech_cube.jpg]]
 
|  [[Image:DiffuselyConvolvedCubeMap$tmp.320.cubemapgen_nmech_basemap+cube.jpg]]
 
|-
 
|  Custom geometry in Cubemapgen. [[attachment:cubemapgen_nmech_cube.jpg|Actual size]]<<BR>><span style="font-size: smaller">image by[http://www.linkedin.com/in/ericchadwick Eric Chadwick]</span>
 
|  Basemap is modulated (multiplied) with the cube map. [[attachment:cubemapgen_nmech_basemap+cube.jpg|Actual size]]<<BR>><span style="font-size: smaller">image by[http://www.linkedin.com/in/ericchadwick Eric Chadwick]</span>
 
|}
 
  
<span id="ECIP"></span>
 
 
== 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.
Line 125: Line 117:
 
Unfortunately NVIDIA introduced some bugs when they updated the plugin, so now DDS cubes don't load mips properly. If you need to load cube maps with mips, here's an old version that does it right.
 
Unfortunately NVIDIA introduced some bugs when they updated the plugin, so now DDS cubes don't load mips properly. If you need to load cube maps with mips, here's an old version that does it right.
 
* [http://www.ericchadwick.com/examples/files/2005.10.14_DDSformat_and_NormalMapFilter.zip NVIDIA Photoshop Plugins 8.21 beta]
 
* [http://www.ericchadwick.com/examples/files/2005.10.14_DDSformat_and_NormalMapFilter.zip NVIDIA Photoshop Plugins 8.21 beta]
 +
  
 
= Links =
 
= Links =
 
+
* [http://zellersamuel.wordpress.com/2010/03/06/cubemaps/ Cubemaps how-to and why] by Zeller Samuel - A great introduction to [[Cube map|Cubemaps]].
* [http://zellersamuel.wordpress.com/2010/03/06/cubemaps/ Cubemaps how-to and why] by Zeller Samuel<<BR>>A great introduction to cubemaps.
+
* [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.
* [http://www.cgtextures.com/content.php?action=tutorial&name=cubemaps Cubemaps Tutorial] by CGTextures.com<<BR>>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.
+
* [[Cube map]]<<BR>>Wiki page describing cubemaps.
+
  
 
----
 
----
 
[[Category:Texturing]] [[Category:TextureTypes]]
 
[[Category:Texturing]] [[Category:TextureTypes]]

Revision as of 03:54, 24 November 2014

Introduction

The convolved cube map on a normalmapped model.
Image by Eric Chadwick and Whatif Productions LLC.
The convolved cube map on a normalmapped model.
Image by Eric Chadwick and Whatif Productions LLC.

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.


AMD Cubemapgen

Some tips for filtering cubemaps in Cubemapgen.
Image by Eric Chadwick.


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

Custom geometry in Cubemapgen.
Image by Eric Chadwick.
Basemap is modulated (multiplied) with the cube map.
Image 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 DiffuseMap.


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.

Unfortunately NVIDIA introduced some bugs when they updated the plugin, so now DDS cubes don't load mips properly. If you need to load cube maps with mips, here's an old version that does it right.


Links


Personal tools
Namespaces

Variants
Actions
Navigation
Tools