Blender V5.0
SGLSLEditMeshToTangent Struct Reference

Public Member Functions

uint GetNumFaces ()
uint GetNumVerticesOfFace (const uint face_num)
const BMLoopGetLoop (const uint face_num, uint vert_index)
mikk::float3 GetPosition (const uint face_num, const uint vert_index)
mikk::float3 GetTexCoord (const uint face_num, const uint vert_index)
mikk::float3 GetNormal (const uint face_num, const uint vert_index)
void SetTangentSpace (const uint face_num, const uint vert_index, mikk::float3 T, bool orientation)
bool has_uv ()

Public Attributes

Span< float3face_normals
Span< float3corner_normals
Span< std::array< BMLoop *, 3 > > looptris
int cd_loop_uv_offset
Span< float3orco
float(* tangent )[4]
int numTessFaces
const int * face_as_quad_map
int num_face_as_quad_map

Detailed Description

Definition at line 38 of file editmesh_tangent.cc.

Member Function Documentation

◆ GetLoop()

const BMLoop * SGLSLEditMeshToTangent::GetLoop ( const uint face_num,
uint vert_index )
inline

Definition at line 63 of file editmesh_tangent.cc.

References BM_FACE_FIRST_LOOP, face_as_quad_map, l, and looptris.

Referenced by GetNormal(), GetPosition(), GetTexCoord(), and SetTangentSpace().

◆ GetNormal()

mikk::float3 SGLSLEditMeshToTangent::GetNormal ( const uint face_num,
const uint vert_index )
inline

◆ GetNumFaces()

uint SGLSLEditMeshToTangent::GetNumFaces ( )
inline

Definition at line 39 of file editmesh_tangent.cc.

References num_face_as_quad_map, and numTessFaces.

◆ GetNumVerticesOfFace()

uint SGLSLEditMeshToTangent::GetNumVerticesOfFace ( const uint face_num)
inline

Definition at line 48 of file editmesh_tangent.cc.

References face_as_quad_map, looptris, and UNUSED_VARS.

◆ GetPosition()

mikk::float3 SGLSLEditMeshToTangent::GetPosition ( const uint face_num,
const uint vert_index )
inline

Definition at line 90 of file editmesh_tangent.cc.

References GetLoop(), and l.

◆ GetTexCoord()

mikk::float3 SGLSLEditMeshToTangent::GetTexCoord ( const uint face_num,
const uint vert_index )
inline

◆ has_uv()

bool SGLSLEditMeshToTangent::has_uv ( )
inline

Definition at line 134 of file editmesh_tangent.cc.

References cd_loop_uv_offset.

Referenced by GetTexCoord().

◆ SetTangentSpace()

void SGLSLEditMeshToTangent::SetTangentSpace ( const uint face_num,
const uint vert_index,
mikk::float3 T,
bool orientation )
inline

Definition at line 124 of file editmesh_tangent.cc.

References BM_elem_index_get, copy_v4_fl4(), GetLoop(), l, T, and tangent.

Member Data Documentation

◆ cd_loop_uv_offset

int SGLSLEditMeshToTangent::cd_loop_uv_offset

Definition at line 142 of file editmesh_tangent.cc.

Referenced by BKE_editmesh_orco_tangents_calc(), GetTexCoord(), and has_uv().

◆ corner_normals

Span<float3> SGLSLEditMeshToTangent::corner_normals

Definition at line 140 of file editmesh_tangent.cc.

Referenced by BKE_editmesh_orco_tangents_calc(), and GetNormal().

◆ face_as_quad_map

const int* SGLSLEditMeshToTangent::face_as_quad_map

◆ face_normals

Span<float3> SGLSLEditMeshToTangent::face_normals

Definition at line 139 of file editmesh_tangent.cc.

Referenced by BKE_editmesh_orco_tangents_calc(), and GetNormal().

◆ looptris

Span<std::array<BMLoop *, 3> > SGLSLEditMeshToTangent::looptris

◆ num_face_as_quad_map

int SGLSLEditMeshToTangent::num_face_as_quad_map

Definition at line 151 of file editmesh_tangent.cc.

Referenced by BKE_editmesh_orco_tangents_calc(), and GetNumFaces().

◆ numTessFaces

int SGLSLEditMeshToTangent::numTessFaces

Definition at line 145 of file editmesh_tangent.cc.

Referenced by BKE_editmesh_orco_tangents_calc(), and GetNumFaces().

◆ orco

Span<float3> SGLSLEditMeshToTangent::orco

Definition at line 143 of file editmesh_tangent.cc.

Referenced by BKE_editmesh_orco_tangents_calc(), and GetTexCoord().

◆ tangent

float(* SGLSLEditMeshToTangent::tangent)[4]

Definition at line 144 of file editmesh_tangent.cc.

Referenced by BKE_editmesh_orco_tangents_calc(), and SetTangentSpace().


The documentation for this struct was generated from the following file: