* Support u8 / u32 indices
* Skip primitives without vertices
* Add support for non-indexed geometry & skipping primitives
* Fix possible memory leak on error
* Use SSkinnedMesh
* Check indices
* Properly mirror node hierarchy
* Update .gitignore
* Reorder includes
* Add some throws for logic errors
* Fix non-indexed geometry winding order, add unit test
* Address code review comments
* Add matrix transform unit test
* git --CRUSH
And try to make this line the same
Now undo my gitignore nonsense
Hail mary
Move these functions to the top
More documentation
Add some serious documentation
Move this to the top
Readability & documentation
Add some documentation
Add spec documentation
Make this more more complex to make it less complex
Move this up & document
Make this more readable for me
Document and make this more readable
Move this out of the way and document it
Update CGLTFMeshFileLoader.cpp
Documentation
Document
Update CGLTFMeshFileLoader.cpp
Document
Move entry point to bottom
Part 5
Part 4
Part 3
Part 2
Allman -> OTBS (readability for me)
Consolidate
Remove unneeded function
These files are annoying
* fix#1
* fix 2
* indentation
* Remove redundant function
* Remove redundant function
* add trailing new line
* Stop an interesting build error with a template
* Code reduction
* Document bytestride
* Add more detail to chain hierarchy
* Dump this huge vscode thing in here for no reason
* Document 3 more functions
* Document copyTcoords
* Dump in (incorrect) scale documentation for node
* Add a readable description
* Fix incorrect getScale
* Add update based on context of function
* Add documentation, fix another one
* Document another
* Document another
* And document another
* Document this nice function
* Bolt in some future use documentation
* Add highlighting for IDE
* Just shovel on more docs to this
* 2 more comments
* I think that's all of them
* Add some wild west debuggin
* And then update this comment
* Bolt on isAccessorNormalized()
* Bolt in an absolute hack job to test
* Now clean this mess up and give josiah ref material
* Fix Josiah's request for scale
* Fix josiah request
* Fix josiah request .vscode
Fix indentation
Fix indentation
Fix indentation
* Unfix getScale()
again
These antialiasing techniques have been removed in OpenGL 3.1, they were often executed by the CPU, and Minetest does not use them.
The OpenGL wiki recommends that we do not use this functionality in our program.
https://www.khronos.org/opengl/wiki/Multisampling#Smooth_antialiasing
The irrString implementation doesn't allow constructing a string with a
size that would exceed a u32, so it should be safe to narrow the size of
the underlying STL container back to a u32.
This fixes 5 narrowing cast warnings from Visual Studio 17 2022.
Rest of Irrlicht is using left-handed rotatations.
But 2d vector rotations all uses ccw which is kinda the same direction as this one if you consider those as rotations around Y, so I guess that was maybe the reason back then.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@6536 dfc29bdd-3216-0410-991c-e03cc46cb475
Turns out we can avoid a square root and a division.
Patch comes even with proof: https://raw.org/proof/quaternion-from-two-vectors
(I also tested it a while and indeed got same results)
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@6511 dfc29bdd-3216-0410-991c-e03cc46cb475
What Irrlicht calls ShaderConstants is called uniforms by everyone else. So let's mention this at least.
Also reworked setVertexShaderConstant interface had an example for the old interface in the header.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@6497 dfc29bdd-3216-0410-991c-e03cc46cb475
We had changed that once before in the other direction in svn r421
Reason back then was "Sleep(0) doesn't allow any lower priority threads to execute"
But Microsoft changed the behaviour of Sleep(0) after Windows XP so that's no longer true.
And the costs of it is pretty high - due to this using a timer with a 15ms resolutions it meant not just giving up the thread but it also always waited for 15ms on Windows.
I also replaced a few sleep calls in examples for that reason with yield() calls.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@6459 dfc29bdd-3216-0410-991c-e03cc46cb475
The exact commands to make this commit were:
git reset --hard origin/master
find -type f | # list all regular files
grep -E '\.(h|cpp|fsh|vsh|mm)|LICENSE$' | # filter for text files
xargs -n 1 -P $(nproc) sed -i 's:\s*$::' # for each file, trim trailing whitespace including the CR
git commit -a