Skip to content

ludus::content::scene_format::MaterialRecordV3

Ludus Wiki · API overview · Browse API

Struct

Version 3 and 4 material. Power is resolved independently for each placed emitter; otherwise Emission is already resolved RGB luminance in nits (cd/m²). Source IDs identify authored equivalence groups, not individual triangles.

Declared in modules/content/scene_format/include/ludus/content/scene_format/luscn.h

#include <ludus/content/scene_format/luscn.h>
struct ludus::content::scene_format::MaterialRecordV3 final

Fields

Texture

uint32 ludus::content::scene_format::MaterialRecordV3::Texture
Texture index or NO_TEXTURE.

Related types: uint32

Declared in modules/content/scene_format/include/ludus/content/scene_format/luscn.h

AddressMode

uint32 ludus::content::scene_format::MaterialRecordV3::AddressMode
ADDRESS_CLAMP or ADDRESS_REPEAT.

Related types: uint32

Declared in modules/content/scene_format/include/ludus/content/scene_format/luscn.h

Metallic

float32 ludus::content::scene_format::MaterialRecordV3::Metallic
[0, 1].

Related types: float32

Declared in modules/content/scene_format/include/ludus/content/scene_format/luscn.h

Roughness

float32 ludus::content::scene_format::MaterialRecordV3::Roughness
[MIN_ROUGHNESS, 1].

Related types: float32

Declared in modules/content/scene_format/include/ludus/content/scene_format/luscn.h

Emission

float32 ludus::content::scene_format::MaterialRecordV3::Emission[3][3]
Nonnegative linear Rec.709 RGB, at most MAX_EMISSION.

Related types: float32

Declared in modules/content/scene_format/include/ludus/content/scene_format/luscn.h

EmissionFlags

uint32 ludus::content::scene_format::MaterialRecordV3::EmissionFlags
EMISSION_TWO_SIDED and/or EMISSION_HAS_POWER.

Related types: uint32

Declared in modules/content/scene_format/include/ludus/content/scene_format/luscn.h

AreaSourceId

uint64 ludus::content::scene_format::MaterialRecordV3::AreaSourceId
Nonzero for emissive surfaces; zero for nonemitters.

Related types: uint64

Declared in modules/content/scene_format/include/ludus/content/scene_format/luscn.h

EmissionPower

float32 ludus::content::scene_format::MaterialRecordV3::EmissionPower
Lumens after authoring scale; zero without HAS_POWER.

Related types: float32

Declared in modules/content/scene_format/include/ludus/content/scene_format/luscn.h

Reserved

uint32 ludus::content::scene_format::MaterialRecordV3::Reserved
Must be zero.

Related types: uint32

Declared in modules/content/scene_format/include/ludus/content/scene_format/luscn.h