1323
2016-09-27 12:02:17 +0200
Enhance the math utilities to support more operations on vectors, matrices and quaternions
2019-03-29 13:58:07 +0100
1
1
3
JogAmp
Jogl
opengl
tbd
All
all
UNCONFIRMED
P4
minor
---
0
gouessej
sgothel
FEATURE
---
oldest_to_newest
5943
0
gouessej
2016-09-27 12:02:17 +0200
JOGL has some math utilities in the packages "com.jogamp.opengl.math" and "com.jogamp.opengl.math.geom" and "com.jogamp.graph.geom". The size of these APIs is very small but some essential features are missing. It tends to encourage some developers to use third party libraries whereas JOGL could satisfy their needs by reasonably increasing the complexity of the APIs.
Moreover, there is some code duplication between projects strongly tied to JogAmp, for example Java3D (Vecmath) and JogAmp's Ardor3D Continuation (own vecmath implementation). Using a single common math API would help several engines to use a subset of JogAmp's Ardor3D Continuation (ardor3d-math + ardor3d-savable + a subset of ardor3d-extras) to load 3D models or to move the importers into jogl-utils and to use them in all JogAmp scenegraph APIs.
There are several sources of inspiration:
- elect's JGLM
- JOML
- Vecmath
- ardor3d-math
The missing features are (non exhaustive list):
- matrices containing 2, 3 or 4 integer, float and double values
- vectors containing 2, 3 or 4 integer, float and double values
- operations that apply on the current "local" object (this) and that create another one (exactly like ardor3d-math)
- lerp, slerp, simplex noise, ...
5944
1
gouessej
2016-09-27 12:32:49 +0200
- pre-multiplication of quaternions
- Gram-Schmidt orthogonalization: https://github.com/ricardolpd/Ardor3D/commit/7aff0a370fef909a11a5eed9591d6ab7205cd089
5945
2
gouessej
2016-09-27 12:35:20 +0200
- component-wise multiplication
- operations to convert from/to NIO buffers
- bitangent
5946
3
gouessej
2016-09-27 12:41:15 +0200
- adjugate: http://en.wikipedia.org/wiki/Adjugate_matrix
- quaternion inversion (!= conjugate)