UNPKG

@babylonjs/core

Version:

Getting started? Play directly with the Babylon.js API using our [playground](https://playground.babylonjs.com/). It also contains a lot of samples to learn how to use it.

83 lines (82 loc) 2.62 kB
import type { Nullable } from "../../types.js"; /** * CubeMap information grouping all the data for each faces as well as the cubemap size. */ export interface CubeMapInfo { /** * The pixel array for the front face. * This is stored in format, left to right, up to down format. */ front: Nullable<ArrayBufferView>; /** * The pixel array for the back face. * This is stored in format, left to right, up to down format. */ back: Nullable<ArrayBufferView>; /** * The pixel array for the left face. * This is stored in format, left to right, up to down format. */ left: Nullable<ArrayBufferView>; /** * The pixel array for the right face. * This is stored in format, left to right, up to down format. */ right: Nullable<ArrayBufferView>; /** * The pixel array for the up face. * This is stored in format, left to right, up to down format. */ up: Nullable<ArrayBufferView>; /** * The pixel array for the down face. * This is stored in format, left to right, up to down format. */ down: Nullable<ArrayBufferView>; /** * The size of the cubemap stored. * * Each faces will be size * size pixels. */ size: number; /** * The format of the texture. * * RGBA, RGB. */ format: number; /** * The type of the texture data. * * UNSIGNED_INT, FLOAT. */ type: number; /** * Specifies whether the texture is in gamma space. */ gammaSpace: boolean; } /** * Helper class useful to convert panorama picture to their cubemap representation in 6 faces. */ export declare class PanoramaToCubeMapTools { private static FACE_LEFT; private static FACE_RIGHT; private static FACE_FRONT; private static FACE_BACK; private static FACE_DOWN; private static FACE_UP; /** * Converts a panorama stored in RGB right to left up to down format into a cubemap (6 faces). * * @param float32Array The source data. * @param inputWidth The width of the input panorama. * @param inputHeight The height of the input panorama. * @param size The willing size of the generated cubemap (each faces will be size * size pixels) * @param supersample enable supersampling the cubemap * @returns The cubemap data */ static ConvertPanoramaToCubemap(float32Array: Float32Array, inputWidth: number, inputHeight: number, size: number, supersample?: boolean): CubeMapInfo; private static CreateCubemapTexture; private static CalcProjectionSpherical; }