UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
FBSPSurfaceStaticLighting Class Reference

#include <ModelLight.h>

+ Inheritance diagram for FBSPSurfaceStaticLighting:

Public Member Functions

ENGINE_API FBSPSurfaceStaticLighting (const FNodeGroup *InNodeGroup, UModel *Model, UModelComponent *Component)
 
virtual void GetTriangle (int32 TriangleIndex, FStaticLightingVertex &OutV0, FStaticLightingVertex &OutV1, FStaticLightingVertex &OutV2) const override
 
virtual void GetTriangleIndices (int32 TriangleIndex, int32 &OutI0, int32 &OutI1, int32 &OutI2) const override
 
virtual FLightRayIntersection IntersectLightRay (const FVector &Start, const FVector &End, bool bFindNearestIntersection) const override
 
virtual bool IsInstancedMesh () const override
 
virtual bool IsValidMapping () const override
 
virtual const FGuidGetLightingGuid () const override
 
virtual FString GetDescription () const override
 
const UModelGetModel () const
 
- Public Member Functions inherited from FStaticLightingTextureMapping
ENGINE_API FStaticLightingTextureMapping (FStaticLightingMesh *InMesh, UObject *InOwner, int32 InSizeX, int32 InSizeY, int32 InLightmapTextureCoordinateIndex, bool bInBilinearFilter=true)
 
virtual void Apply (struct FQuantizedLightmapData *QuantizedData, const TMap< ULightComponent *, class FShadowMapData2D * > &ShadowMapData, const FStaticLightingBuildContext *LightingContext)=0
 
virtual FStaticLightingTextureMappingGetTextureMapping ()
 
virtual bool IsTextureMapping () const
 
virtual int32 GetTexelCount () const
 
 FStaticLightingTextureMapping (const FArchive &Ar)
 
- Public Member Functions inherited from FStaticLightingMapping
 FStaticLightingMapping (FStaticLightingMesh *InMesh, UObject *InOwner)
 
virtual ~FStaticLightingMapping ()
 
bool IsDeferred () const
 
 FStaticLightingMapping (const FArchive &)
 
- Public Member Functions inherited from FRefCountedObject
 FRefCountedObject ()
 
virtual ~FRefCountedObject ()
 
 FRefCountedObject (const FRefCountedObject &Rhs)=delete
 
FRefCountedObjectoperator= (const FRefCountedObject &Rhs)=delete
 
FReturnedRefCountValue AddRef () const
 
uint32 Release () const
 
uint32 GetRefCount () const
 
- Public Member Functions inherited from FStaticLightingMesh
ENGINE_API FStaticLightingMesh (int32 InNumTriangles, int32 InNumShadingTriangles, int32 InNumVertices, int32 InNumShadingVertices, int32 InTextureCoordinateIndex, bool bInCastShadow, bool bInTwoSidedMaterial, const TArray< ULightComponent * > &InRelevantLights, const UPrimitiveComponent *const InComponent, const FBox &InBoundingBox, const FGuid &InSourceMeshGuid, const FGuid &InComponentGuid)
 
ENGINE_API FStaticLightingMesh ()
 
virtual ENGINE_API void Serialize (FArchive &Ar)
 
virtual ~FStaticLightingMesh ()
 
virtual void GetShadingTriangle (int32 TriangleIndex, FStaticLightingVertex &OutV0, FStaticLightingVertex &OutV1, FStaticLightingVertex &OutV2) const
 
virtual void GetShadingTriangleIndices (int32 TriangleIndex, int32 &OutI0, int32 &OutI1, int32 &OutI2) const
 
virtual bool ShouldCastShadow (ULightComponent *Light, const FStaticLightingMapping *Receiver) const
 
virtual bool IsTriangleCastingShadow (uint32 TriangleIndex) const
 
virtual bool IsControllingShadowPerElement () const
 
virtual bool IsUniformShadowCaster () const
 

Public Attributes

const FNodeGroupNodeGroup
 
bool bComplete
 
TMap< ULightComponent *, FShadowMapData2D * > ShadowMapData
 
FQuantizedLightmapDataQuantizedData
 
FIntRect MappedRect
 
- Public Attributes inherited from FStaticLightingTextureMapping
int32 SizeX
 
int32 SizeY
 
int32 LightmapTextureCoordinateIndex
 
bool bBilinearFilter
 
- Public Attributes inherited from FStaticLightingMapping
class FStaticLightingMeshMesh
 
UObjectOwner
 
uint32 bProcessMapping: 1
 
uint32 bIsDeferred: 1
 
- Public Attributes inherited from FStaticLightingMesh
const int32 NumTriangles
 
const int32 NumShadingTriangles
 
const int32 NumVertices
 
const int32 NumShadingVertices
 
const int32 TextureCoordinateIndex
 
TArray< int32VisibilityIds
 
const uint32 bCastShadow: 1
 
const uint32 bTwoSidedMaterial: 1
 
const TArray< ULightComponent * > RelevantLights
 
TArray< FGuidRelevantLightsGuid
 
const UPrimitiveComponent *const Component
 
FGuid ComponentGuid
 
FBox BoundingBox
 
FGuid Guid
 
FGuid SourceMeshGuid
 
TArray< TRefCountPtr< FStaticLightingMesh > > OtherMeshLODs
 
uint32 HLODTreeIndex
 
uint32 HLODChildStartIndex
 
uint32 HLODChildEndIndex
 

Detailed Description

Represents a BSP surface to the static lighting system.

Constructor & Destructor Documentation

◆ FBSPSurfaceStaticLighting()

FBSPSurfaceStaticLighting::FBSPSurfaceStaticLighting ( const FNodeGroup InNodeGroup,
UModel Model,
UModelComponent Component 
)

Initialization constructor.

Member Function Documentation

◆ GetDescription()

virtual FString FBSPSurfaceStaticLighting::GetDescription ( ) const
inlineoverridevirtual

Reimplemented from FStaticLightingTextureMapping.

◆ GetLightingGuid()

virtual const FGuid & FBSPSurfaceStaticLighting::GetLightingGuid ( ) const
inlineoverridevirtual

Returns the Guid used for static lighting.

Returns
FGuid that identifies the mapping

Reimplemented from FStaticLightingMapping.

◆ GetModel()

const UModel * FBSPSurfaceStaticLighting::GetModel ( ) const
inline

◆ GetTriangle()

void FBSPSurfaceStaticLighting::GetTriangle ( int32  TriangleIndex,
FStaticLightingVertex OutV0,
FStaticLightingVertex OutV1,
FStaticLightingVertex OutV2 
) const
overridevirtual

Accesses a triangle.

Parameters
TriangleIndex- The triangle to access.
OutV0- Upon return, should contain the first vertex of the triangle.
OutV1- Upon return, should contain the second vertex of the triangle.
OutV2- Upon return, should contain the third vertex of the triangle.

Implements FStaticLightingMesh.

◆ GetTriangleIndices()

void FBSPSurfaceStaticLighting::GetTriangleIndices ( int32  TriangleIndex,
int32 OutI0,
int32 OutI1,
int32 OutI2 
) const
overridevirtual

Accesses a triangle's vertex indices.

Parameters
TriangleIndex- The triangle to access.
OutI0- Upon return, should contain the first vertex index of the triangle.
OutI1- Upon return, should contain the second vertex index of the triangle.
OutI2- Upon return, should contain the third vertex index of the triangle.

Implements FStaticLightingMesh.

◆ IntersectLightRay()

FLightRayIntersection FBSPSurfaceStaticLighting::IntersectLightRay ( const FVector Start,
const FVector End,
bool  bFindNearestIntersection 
) const
overridevirtual

Checks if a line segment intersects the mesh.

Parameters
Start- The start point of the line segment.
End- The end point of the line segment.
bFindNearestIntersection- Whether the nearest intersection is needed, or any intersection.
Returns
The intersection of the light-ray with the mesh.

Implements FStaticLightingMesh.

◆ IsInstancedMesh()

virtual bool FBSPSurfaceStaticLighting::IsInstancedMesh ( ) const
inlineoverridevirtual

Returns true if this mesh is an instanced mesh.

Implements FStaticLightingMesh.

◆ IsValidMapping()

virtual bool FBSPSurfaceStaticLighting::IsValidMapping ( ) const
inlineoverridevirtual

Whether or not this mapping should be processed or imported

Reimplemented from FStaticLightingTextureMapping.

Member Data Documentation

◆ bComplete

bool FBSPSurfaceStaticLighting::bComplete

true if the surface has complete static lighting.

◆ MappedRect

FIntRect FBSPSurfaceStaticLighting::MappedRect

Minimum rectangle that encompasses all mapped texels.

◆ NodeGroup

const FNodeGroup* FBSPSurfaceStaticLighting::NodeGroup

The surface's static lighting node group mapping info.

◆ QuantizedData

FQuantizedLightmapData* FBSPSurfaceStaticLighting::QuantizedData

Quantized light map data

◆ ShadowMapData

TMap<ULightComponent*,FShadowMapData2D*> FBSPSurfaceStaticLighting::ShadowMapData

The documentation for this class was generated from the following files: