Cubemap es una colección de seis texturas cuadradas que representan las reflexiones sobre un entorno. Los seis cuadrados forman las caras de un cubo imaginario que rodea a un un objeto; cada cara representa la vista hacia las direcciones de los ejes del mundo (arriba, abajo, izquierda, derecha, adelante y atrás).
Cubemaps are often used to capture reflections or “surroundings” of objects; for example skyboxes y reflexiones del ambiente a menudo utilizan cubemaps.
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 are
soportado (y en la mayoría de casos detectado automáticamente).
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 are
often 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 from the 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 by
Reflection Probes. It processed cubemap mip levels in a special way
(specular convolution) that can be used to simulate reflections from surfaces of different smoothness:
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.
Propiedad: | Función: |
---|---|
Right..Back Slots | Textures for the corresponding cubemap face. |
Face Size | Width and Height of each Cubemap face in pixels. The textures will be scaled automatically to fit this size. |
Mipmap | Should mipmaps be created? |
Linear | Should the cubemap use linear color? |
Readable | Should 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) - this way cubemap texture data can be compressed; edge fixups and glossy reflection convolution be performed; and HDR cubemaps are supported.
Otra técnica útil es generar el cubemap desde los contenidos de una escena de Unity utilizando un script. The Camera.RenderToCubemap function can record the six face images from any desired position in the scene; the code example on the function’s script reference page adds a menu command to make this task easy.