1
0
Fork 0
mirror of https://github.com/luanti-org/luanti.git synced 2025-06-27 16:36:03 +00:00

Port createForsythOptimizedMesh from Irrlicht 1.8

Mesh rotation helpers.
This commit is contained in:
RealBadAngel 2014-11-21 08:41:21 +01:00
parent 21464639b3
commit 0164483310
2 changed files with 654 additions and 0 deletions

View file

@ -64,6 +64,13 @@ void setMeshColorByNormalXYZ(scene::IMesh *mesh,
*/
void rotateMeshBy6dFacedir(scene::IMesh *mesh, int facedir);
/*
Rotate the mesh around the axis and given angle in degrees.
*/
void rotateMeshXYby (scene::IMesh *mesh, f64 degrees);
void rotateMeshXZby (scene::IMesh *mesh, f64 degrees);
void rotateMeshYZby (scene::IMesh *mesh, f64 degrees);
/*
Clone the mesh.
*/
@ -79,4 +86,11 @@ scene::IMesh* convertNodeboxNodeToMesh(ContentFeatures *f);
*/
void recalculateBoundingBox(scene::IMesh *src_mesh);
/*
Vertex cache optimization according to the Forsyth paper:
http://home.comcast.net/~tom_forsyth/papers/fast_vert_cache_opt.html
Ported from irrlicht 1.8
*/
scene::IMesh* createForsythOptimizedMesh(const scene::IMesh *mesh);
#endif