It can still update with a node transformation, but it won't update when the mesh changes (so only useful for static meshes, not for animated ones).
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@5351 dfc29bdd-3216-0410-991c-e03cc46cb475
This allows to access materials of colliding triangles.
It's an optional setting (as it can be a little bit slower).
There are new collision functions for users which need that feature.
This also fixes several bugs with MetaTriangleSelectors. Those did sometimes return the wrong nodes in the past (when used with box or line collisions).
Also MetaTriangleSelectors should no longer crash when it has no selectors.
Also box and line collisions will now return all triangles when the colliding node has no inversible matrix (before it returned the wrong results when for example a node had one axis scaled to 0).
So far only CTriangleSelector uses the new interface to return meshbuffer information. Octree will follow.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@5350 dfc29bdd-3216-0410-991c-e03cc46cb475
This is breaking the IAttributes interface - so anyone who derived from that will have to update his implementation. More changes in that interface probably coming later today.
The idea behind the patch is preparing the engine for SSE support.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@4725 dfc29bdd-3216-0410-991c-e03cc46cb475
Software drivers don't support 2d rendering into viewports, so they still fail to properly position text (or other 2d things) into a viewport.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@3489 dfc29bdd-3216-0410-991c-e03cc46cb475
ITriangleSelector::getSceneNodeForTriangle, ISceneNodeAnimatorCollisionResponse::getCollisionNode, ISceneCollisionManager::getCollisionPoint and ISceneCollisionManager::getCollisionResultPosition.
As collision functions often are followed by changing node positions users where so far forced to using const_casts (found by Greenya).
(This will lead once more to many post about correct getCollisionResultPosition usage, but can't be helped - those consts were too restricitive, sorry)
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@3442 dfc29bdd-3216-0410-991c-e03cc46cb475
Change default blend mode in OpenGL to SRC_ALPHA,ONE_MINUS_SRC_ALPHA
Use less precision in 2dmaterial test.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@3399 dfc29bdd-3216-0410-991c-e03cc46cb475
- Triangle selectors created from animated mesh scene nodes will update themselves as required to stay in sync with the node.
- ISceneCollisionManager::getSceneNodeAndCollisionPointFromRay() allows selection by BB and triangle on a heirarchy of scene nodes.
Example 07 updated to show the usage of ISceneCollisionManager::getSceneNodeAndCollisionPointFromRay(), used on animated meshes.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@2177 dfc29bdd-3216-0410-991c-e03cc46cb475
Revert my previous ITriangleSelector patch and implement garritg's great idea about retrieving an ISceneNode by index. Add an out parameter to ISceneCollisionManager::getCollisionPoint() to return the hit scene node. This is an API breaking change; the test and example apps have been updated.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@2125 dfc29bdd-3216-0410-991c-e03cc46cb475
Have all public ISceneCollisionManager.h methods take 'const type &' rather than 'type' where appropriate.
Conversely, have CSceneManager::getPickedNodeBB() take a non-const 'core::line3df& ray', so that child nodes can truncate the master ray when they get a collision.
This is an API change, so goes to the trunk only.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@2050 dfc29bdd-3216-0410-991c-e03cc46cb475
https://sourceforge.net/tracker2/?func=detail&aid=1339139&group_id=74339&atid=540679
This is a very small API breaking change to a method that's unlikely to be heavily used in user code. It is commented in the declaration, in changes.txt and a unit test has been added.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@1958 dfc29bdd-3216-0410-991c-e03cc46cb475