Cubemap

来源:互联网 发布:netbeans php xdebug 编辑:程序博客网 时间:2024/05/20 17:13

http://docs.unity3d.com/Manual/class-Cubemap.html

Cubemap

Switch to Scripting

A Cubemap is a collection of six square textures that represent thereflections on an environment. The six squares form the faces of an imaginary cube that surrounds anobject; each face represents the view along the directions of the world axes(up, down, left, right, forward and back).

Cubemaps are often used to capture reflections or “surroundings” of objects; for exampleskyboxes andenvironment reflections often use cubemaps.

Cubemapped skybox and reflectionsCubemapped skybox and reflections

Creating Cubemaps from Textures

Preferred way of creating cubemaps is importing them from specially laid out textures.Select Cubemap texture import type and Unity should do the rest. Several commonly used cubemap layouts aresupported (and in most cases detected automatically).

Cubemap texture import typeCubemap texture import type

Vertical and horizontal cross layouts, as well as column and row of cubemap faces are supported:

Another common layout is LatLong (Latitude-Longitude, sometimes called cylindrical). Panorama images areoften in this layout:

SphereMap (spherical environment map) images can also be found:

By default Unity looks at the aspect ratio of the imported texture to determine the most appopriate layout fromthe above. When imported, a cubemap is produced which can be used for skyboxes and reflections:

Selecting Glossy Reflection option is useful for cubemap textures that will be used byReflection Probes. It processed cubemap mip levels in a special way(specular convolution) that can be used to simulate reflections from surfaces of different smoothness:

Cubemap used in a Reflection Probe on varying-smoothness surfaceCubemap used in a Reflection Probe on varying-smoothness surface

Legacy Cubemap Assets

Unity also supports creating cubemaps out of six separate textures.Select Assets > Create > Legacy > Cubemap from the menu,and drag six textures into empty slots in the inspector.

Legacy Cubemap InspectorLegacy Cubemap InspectorProperty:Function:Right..Back SlotsTextures for the corresponding cubemap face.Face SizeWidth and Height of each Cubemap face in pixels. The textures will be scaled automatically to fit this size.MipmapShould mipmaps be created?LinearShould the cubemap use linear color?ReadableShould the cubemap allow scripts to access the pixel data?

Note that it is preferred to create cubemaps using the Cubemap texture import type (see above) - thisway cubemap texture data can be compressed; edge fixups and glossy reflection convolution be performed;and HDR cubemaps are supported.

Other Techniques

Another useful technique is to generate the cubemap from the contents of a Unity scene using a script.TheCamera.RenderToCubemap function can record the six faceimages from any desired position in the scene; the code example on the function’s script reference pageadds a menu command to make this task easy.

0 0
原创粉丝点击