diff options
author | Campbell Barton <ideasman42@gmail.com> | 2016-01-20 07:05:01 +0300 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2016-01-20 09:10:12 +0300 |
commit | a1970234390e00bbb8a74534e3783a47ad2d280f (patch) | |
tree | 7f80892ef9f2216756313034f639210a8b0fe52d /source/blender | |
parent | 18ffeb689dc6eedef69612471bcf05b6f4925598 (diff) |
Cleanup: style, use const
Diffstat (limited to 'source/blender')
-rw-r--r-- | source/blender/blenkernel/intern/DerivedMesh.c | 50 | ||||
-rw-r--r-- | source/blender/blenkernel/intern/editderivedmesh.c | 18 |
2 files changed, 44 insertions, 24 deletions
diff --git a/source/blender/blenkernel/intern/DerivedMesh.c b/source/blender/blenkernel/intern/DerivedMesh.c index b5e6b6c4bac..85fa7a39df3 100644 --- a/source/blender/blenkernel/intern/DerivedMesh.c +++ b/source/blender/blenkernel/intern/DerivedMesh.c @@ -2987,6 +2987,9 @@ void mesh_get_mapped_verts_coords(DerivedMesh *dm, float (*r_cos)[3], const int /* ******************* GLSL ******************** */ +/** \name Tangent Space Calculation + * \{ */ + typedef struct { float (*precomputedFaceNormals)[3]; float (*precomputedLoopNormals)[3]; @@ -3004,32 +3007,36 @@ typedef struct { /* interface */ #include "mikktspace.h" -static int GetNumFaces(const SMikkTSpaceContext *pContext) +static int dm_ts_GetNumFaces(const SMikkTSpaceContext *pContext) { - SGLSLMeshToTangent *pMesh = (SGLSLMeshToTangent *) pContext->m_pUserData; + SGLSLMeshToTangent *pMesh = pContext->m_pUserData; return pMesh->numTessFaces; } -static int GetNumVertsOfFace(const SMikkTSpaceContext *pContext, const int face_num) +static int dm_ts_GetNumVertsOfFace(const SMikkTSpaceContext *pContext, const int face_num) { - //SGLSLMeshToTangent *pMesh = (SGLSLMeshToTangent *) pContext->m_pUserData; + //SGLSLMeshToTangent *pMesh = pContext->m_pUserData; UNUSED_VARS(pContext, face_num); return 3; } -static void GetPosition(const SMikkTSpaceContext *pContext, float r_co[3], const int face_num, const int vert_index) +static void dm_ts_GetPosition( + const SMikkTSpaceContext *pContext, float r_co[3], + const int face_num, const int vert_index) { //assert(vert_index >= 0 && vert_index < 4); - SGLSLMeshToTangent *pMesh = (SGLSLMeshToTangent *) pContext->m_pUserData; + SGLSLMeshToTangent *pMesh = pContext->m_pUserData; const MLoopTri *lt = &pMesh->looptri[face_num]; const float *co = pMesh->mvert[pMesh->mloop[lt->tri[vert_index]].v].co; copy_v3_v3(r_co, co); } -static void GetTextureCoordinate(const SMikkTSpaceContext *pContext, float r_uv[2], const int face_num, const int vert_index) +static void dm_ts_GetTextureCoordinate( + const SMikkTSpaceContext *pContext, float r_uv[2], + const int face_num, const int vert_index) { //assert(vert_index >= 0 && vert_index < 4); - SGLSLMeshToTangent *pMesh = (SGLSLMeshToTangent *) pContext->m_pUserData; + SGLSLMeshToTangent *pMesh = pContext->m_pUserData; const MLoopTri *lt = &pMesh->looptri[face_num]; if (pMesh->mloopuv != NULL) { @@ -3042,10 +3049,12 @@ static void GetTextureCoordinate(const SMikkTSpaceContext *pContext, float r_uv[ } } -static void GetNormal(const SMikkTSpaceContext *pContext, float r_no[3], const int face_num, const int vert_index) +static void dm_ts_GetNormal( + const SMikkTSpaceContext *pContext, float r_no[3], + const int face_num, const int vert_index) { //assert(vert_index >= 0 && vert_index < 4); - SGLSLMeshToTangent *pMesh = (SGLSLMeshToTangent *) pContext->m_pUserData; + SGLSLMeshToTangent *pMesh = pContext->m_pUserData; const MLoopTri *lt = &pMesh->looptri[face_num]; const bool smoothnormal = (pMesh->mpoly[lt->poly].flag & ME_SMOOTH) != 0; @@ -3070,10 +3079,12 @@ static void GetNormal(const SMikkTSpaceContext *pContext, float r_no[3], const i } } -static void SetTSpace(const SMikkTSpaceContext *pContext, const float fvTangent[3], const float fSign, const int face_num, const int vert_index) +static void dm_ts_SetTSpace( + const SMikkTSpaceContext *pContext, const float fvTangent[3], const float fSign, + const int face_num, const int vert_index) { //assert(vert_index >= 0 && vert_index < 4); - SGLSLMeshToTangent *pMesh = (SGLSLMeshToTangent *) pContext->m_pUserData; + SGLSLMeshToTangent *pMesh = pContext->m_pUserData; const MLoopTri *lt = &pMesh->looptri[face_num]; float *pRes = pMesh->tangent[lt->tri[vert_index]]; copy_v3_v3(pRes, fvTangent); @@ -3141,18 +3152,21 @@ void DM_calc_loop_tangents(DerivedMesh *dm) sContext.m_pUserData = &mesh2tangent; sContext.m_pInterface = &sInterface; - sInterface.m_getNumFaces = GetNumFaces; - sInterface.m_getNumVerticesOfFace = GetNumVertsOfFace; - sInterface.m_getPosition = GetPosition; - sInterface.m_getTexCoord = GetTextureCoordinate; - sInterface.m_getNormal = GetNormal; - sInterface.m_setTSpaceBasic = SetTSpace; + sInterface.m_getNumFaces = dm_ts_GetNumFaces; + sInterface.m_getNumVerticesOfFace = dm_ts_GetNumVertsOfFace; + sInterface.m_getPosition = dm_ts_GetPosition; + sInterface.m_getTexCoord = dm_ts_GetTextureCoordinate; + sInterface.m_getNormal = dm_ts_GetNormal; + sInterface.m_setTSpaceBasic = dm_ts_SetTSpace; /* 0 if failed */ genTangSpaceDefault(&sContext); } } +/** \} */ + + void DM_calc_auto_bump_scale(DerivedMesh *dm) { /* int totvert = dm->getNumVerts(dm); */ /* UNUSED */ diff --git a/source/blender/blenkernel/intern/editderivedmesh.c b/source/blender/blenkernel/intern/editderivedmesh.c index 642a89df8e0..34da175e64b 100644 --- a/source/blender/blenkernel/intern/editderivedmesh.c +++ b/source/blender/blenkernel/intern/editderivedmesh.c @@ -237,10 +237,13 @@ static void emDM_calcLoopNormalsSpaceArray( } +/** \name Tangent Space Calculation + * \{ */ + typedef struct { const float (*precomputedFaceNormals)[3]; const float (*precomputedLoopNormals)[3]; - BMLoop *(*looptris)[3]; + const BMLoop *(*looptris)[3]; int cd_loop_uv_offset; /* texture coordinates */ const float (*orco)[3]; float (*tangent)[4]; /* destination */ @@ -270,7 +273,7 @@ static void emdm_ts_GetPosition( { //assert(vert_index >= 0 && vert_index < 4); SGLSLEditMeshToTangent *pMesh = pContext->m_pUserData; - BMLoop **lt = pMesh->looptris[face_num]; + const BMLoop **lt = pMesh->looptris[face_num]; const float *co = lt[vert_index]->v->co; copy_v3_v3(r_co, co); } @@ -281,7 +284,7 @@ static void emdm_ts_GetTextureCoordinate( { //assert(vert_index >= 0 && vert_index < 4); SGLSLEditMeshToTangent *pMesh = pContext->m_pUserData; - BMLoop **lt = pMesh->looptris[face_num]; + const BMLoop **lt = pMesh->looptris[face_num]; if (pMesh->cd_loop_uv_offset != -1) { const float *uv = BM_ELEM_CD_GET_VOID_P(lt[vert_index], pMesh->cd_loop_uv_offset); @@ -299,7 +302,7 @@ static void emdm_ts_GetNormal( { //assert(vert_index >= 0 && vert_index < 4); SGLSLEditMeshToTangent *pMesh = pContext->m_pUserData; - BMLoop **lt = pMesh->looptris[face_num]; + const BMLoop **lt = pMesh->looptris[face_num]; const bool smoothnormal = BM_elem_flag_test_bool(lt[0]->f, BM_ELEM_SMOOTH); if (pMesh->precomputedLoopNormals) { @@ -324,7 +327,7 @@ static void emdm_ts_SetTSpace( { //assert(vert_index >= 0 && vert_index < 4); SGLSLEditMeshToTangent *pMesh = pContext->m_pUserData; - BMLoop **lt = pMesh->looptris[face_num]; + const BMLoop **lt = pMesh->looptris[face_num]; float *pRes = pMesh->tangent[BM_elem_index_get(lt[vert_index])]; copy_v3_v3(pRes, fvTangent); pRes[3] = fSign; @@ -394,7 +397,7 @@ static void emDM_calcLoopTangents(DerivedMesh *dm) mesh2tangent.precomputedFaceNormals = fnors; mesh2tangent.precomputedLoopNormals = tlnors; - mesh2tangent.looptris = em->looptris; + mesh2tangent.looptris = (const BMLoop *(*)[3])em->looptris; mesh2tangent.cd_loop_uv_offset = cd_loop_uv_offset; mesh2tangent.orco = (const float (*)[3])orco; mesh2tangent.tangent = tangent; @@ -414,6 +417,9 @@ static void emDM_calcLoopTangents(DerivedMesh *dm) } } +/** \} */ + + static void emDM_recalcTessellation(DerivedMesh *UNUSED(dm)) { /* do nothing */ |