2024-12-09 18:41:40 -08:00
..

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
   "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<head>
    <title>CPML documentation</title>
    <link rel="stylesheet" href="../ldoc_new.css" type="text/css" />
</head>
<body>

<div id="container">

<div id="product">
	<div id="product_logo"></div>
	<div id="product_name"><big><b></b></big></div>
	<div id="product_description"></div>
</div> <!-- id="product" -->


<div id="main">


<!-- Menu -->

<div id="navigation">
<br/>
<h1>LEEF Math</h1>


<ul>
  <li><a href="../index.html">Index</a></li>
</ul>



<h2>Topics</h2>
<ul class="">
  <li><strong>readme</strong></li>
</ul>
<h2>Modules</h2>
<ul class="nowrap">
  <li><a href="../modules/bound2.html">bound2</a></li>
  <li><a href="../modules/bound3.html">bound3</a></li>
  <li><a href="../modules/bvh.html">bvh</a></li>
  <li><a href="../modules/color.html">color</a></li>
  <li><a href="../modules/constants.html">constants</a></li>
  <li><a href="../modules/intersect.html">intersect</a></li>
  <li><a href="../modules/mat4.html">mat4</a></li>
  <li><a href="../modules/mesh.html">mesh</a></li>
  <li><a href="../modules/octree.html">octree</a></li>
  <li><a href="../modules/quat.html">quat</a></li>
  <li><a href="../modules/simplex.html">simplex</a></li>
  <li><a href="../modules/utils.html">utils</a></li>
  <li><a href="../modules/vec2.html">vec2</a></li>
  <li><a href="../modules/vec3.html">vec3</a></li>
</ul>

</div>

<div id="content">


<h1>Cirno's Perfect Math Library</h1>

<p>This is a Love (the game framework) library CPML which has been ported and modified to work in the context of Luanti.</p>

<h3>Main features</h3>
<p>* only Luanti Library which implements the ability to manipulate matrices and quaternions and convert them reliably to irrlicht bone rotations.
* bounding box modules
* mat4
* vec3
* quaternions
* octrees
* bvh lib
* more</p>

<h3>Adapted for Luanti</h3>
<p>For best memory performance: have luaJIT &amp; it's FFI library (this should be built into luaJIT), and add LEEF-Math to your trusted list (so it can <code>require()</code> call the FFI library).</p>

<p>Various useful bits of game math. 3D line intersections, ray casting, 2d/3d vectors, 4x4 matrices, quaternions, etc.</p>

<p>This is a fork of CPML (for LÖVE/love3d), it's been ported over the minetest so it can be used in whatever you need it for.
Documentation can be found here: <hhttps://luanti-extended-engine-features.github.io/LEEF-Math/>.</p>

<p>For possible future contributors: documentation must be generated manually when a commit is made, because I haven't set up workflows (and have no idea how to).</p>

<h3>TODO:</h3>
<p>* Vec3s and Vec2s are not currently adapted for functionality with MT vectors, fix.</p>


</div> <!-- id="content" -->
</div> <!-- id="main" -->
<div id="about">
<i>generated by <a href="http://github.com/lunarmodules/ldoc">LDoc 1.5.0</a></i>
<i style="float:right;">Last updated 2024-12-09 17:59:28 </i>
</div> <!-- id="about" -->
</div> <!-- id="container" -->
</body>
</html>