lovr.data.newTextureData

Creates a new TextureData. Image data can be loaded and decoded from an image file, or a raw block of pixels with a specified width, height, and format can be created.

Load image data from a file.

textureData = lovr.data.newTextureData(filename, flip)

Arguments

NameTypeDefaultDescription
filenamestringThe filename of the image to load.
flipbooleantrueWhether to vertically flip the image on load. This should be true for normal textures, and false for textures that are going to be used in a cubemap.

Returns

NameTypeDescription
textureDataTextureDataThe new TextureData.

Create a TextureData with a given size and pixel format.

textureData = lovr.data.newTextureData(width, height, format, data)

Arguments

NameTypeDefaultDescription
widthnumberThe width of the texture.
heightnumberThe height of the texture.
formatTextureFormatrgbaThe format of the texture's pixels.
dataBlobnilRaw pixel values to use as the TextureData contents. If nil, the data will all be zero.

Returns

NameTypeDescription
textureDataTextureDataThe new TextureData.

Clone an existing TextureData.

textureData = lovr.data.newTextureData(source)

Arguments

NameTypeDescription
sourceTextureDataThe TextureData to clone.

Returns

NameTypeDescription
textureDataTextureDataThe new TextureData.

Decode image data from a Blob.

textureData = lovr.data.newTextureData(blob, flip)

Arguments

NameTypeDefaultDescription
blobBlobThe Blob containing image data to decode.
flipbooleantrueWhether to vertically flip the image on load. This should be true for normal textures, and false for textures that are going to be used in a cubemap.

Returns

NameTypeDescription
textureDataTextureDataThe new TextureData.

Notes

The supported image file formats are png, jpg, hdr, dds (DXT1, DXT3, DXT5), ktx, and astc.

Only 2D textures are supported for DXT/ASTC.

Currently textures loaded as KTX need to be in DXT/ASTC formats.

See also