Foundation
Loading...
Searching...
No Matches
Functions
Texture.cpp File Reference
#include "Texture.hpp"
#include <bc7enc.h>
#include <limits>
#include <stb_image_write.h>
#include <stb_image.h>

Functions

void LoadDDS (FTexture &texture, StringView path)
 
void LoadRGBA8 (FTexture &texture, StringView path, bool gamma)
 
void LoadRGBA8 (FTexture &texture, Span< const unsigned char > data, bool gamma)
 
void LoadHDR (FTexture &texture, StringView path)
 
void SaveHDR (const float *data, int width, int height, StringView path)
 
void SavePNG (const unsigned char *data, int width, int height, StringView path)
 

Function Documentation

◆ LoadDDS()

void LoadDDS ( FTexture texture,
StringView  path 
)

Loads a DDS file into a texture

Note
This is an alias of FSerialize. FTexture is in fact in standard DDS format.

◆ LoadHDR()

void LoadHDR ( FTexture texture,
StringView  path 
)

Loads HDR image formats (.hdr) via stb_image into an R32G32B32A32Float texture. Used for environment maps.

◆ LoadRGBA8() [1/2]

void LoadRGBA8 ( FTexture texture,
Span< const unsigned char data,
bool  gamma = true 
)

Loads standard image formats (PNG, JPG, etc.) via stb_image into an uncompressed R8G8B8A8 texture from memory

Parameters
gammaWhether to load the image as sRGB (true) or linear (false) encoding.

◆ LoadRGBA8() [2/2]

void LoadRGBA8 ( FTexture texture,
StringView  path,
bool  gamma = true 
)

Loads standard image formats (PNG, JPG, etc.) via stb_image into an uncompressed R8G8B8A8 texture

Parameters
gammaWhether to load the image as sRGB (true) or linear (false) encoding.

◆ SaveHDR()

void SaveHDR ( const float data,
int  width,
int  height,
StringView  path 
)

Saves float RGBA pixel data as an HDR image. Output format is Radiance HDR (stb_image_write), RGB only (alpha discarded).

Parameters
dataPointer to float RGBA pixel data (4 floats per pixel).
widthImage width in pixels.
heightImage height in pixels.
pathOutput file path.

◆ SavePNG()

void SavePNG ( const unsigned char data,
int  width,
int  height,
StringView  path 
)

Saves RGBA8 data as a PNG (.png) file via stb_image_write.

Parameters
dataPointer to uint8 RGBA pixel data (4 bytes per pixel).
widthImage width in pixels.
heightImage height in pixels.
pathOutput file path.