(can still jump up walls, which is likely around the same position as this fix, but a little more tricky)
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@5370 dfc29bdd-3216-0410-991c-e03cc46cb475
CMetaTriangleSelector had been (even more) broken after last check-in,sorry. Now fixed again.
Making octrees triangle selector return meshbuffer information would be possible, but not without some cost or larger rewrite. So instead I've added another workaround - it's now possible to create octress for single meshbuffers. If that makes sense for speed is something users have to check per scene (slower than using a single octree obviously), but at least it's now possible in case someone needs it.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@5352 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
Thanks to all people who reported and to JLouisB and kinkreet for the patches:
- Gravity is now fps independent
- Values of gravity now like documented (wasn't 1 unit = 1m before, had been 1m = current frames per second, so maybe 100 units = 1m).
Note that jump-values for fps-camera must also change when adapting gravity!
Several examples got adapted for new ranges
- Pausing timer now pauses animator. Also doesn't reset values anymore with pauses.
- Clones no longer have 1000 times the gravity of original animator.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@5305 dfc29bdd-3216-0410-991c-e03cc46cb475
- Added new XCode projects for engine and all examples (ARC enabled, proper bundles etc.).
- Added external context manager with support for NSOGL.(this feature was available in ogl-es branch before).
- Removed *.nib dependencies from OSX project (menu is created programmatically).
- Added missing _IRR_OVERRIDE_ for some methods.
- Renamed MacOSX to OSX directories.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@5202 dfc29bdd-3216-0410-991c-e03cc46cb475
- Set the platform SDK for VS2010 and VS 2012 throughout to Windows7.1SDK
- Fix the fix for compiling on GCC5
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@5141 dfc29bdd-3216-0410-991c-e03cc46cb475
- Removed project files for Dev-C++ and Visual Studio 2008 and older.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@5022 dfc29bdd-3216-0410-991c-e03cc46cb475
- C::B project files work again on newer Linux-distributions which have cleaned up their dev-lib dependencies.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@4722 dfc29bdd-3216-0410-991c-e03cc46cb475
We use multicolor hardware cursors, but so far only Linux and Windows 32 are supported.
For Linux application must now link additionally with Xcursor unless they disable _IRR_LINUX_XCURSOR_.
Example 24 is added to show how to use those cursors and also as a general test for mouse-behavior.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@3302 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
Derive COctTreeSceneNode from IMeshSceneNode instead ISceneNode, and have it return the IMesh that was used to create its octtree. Tested with a slightly modified example 07.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@2173 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
Change from dimension2d<s32> to dimension2d<u32> where practical. IImage and ITexture now have unsigned dimensions, as does screen size. This has had a significant knock-on through the code base, but it is more technically correct - the BEST KIND of correct.
GUI elements and draw2DImage methods still have and take signed dimensions, but we can look into this in future. Regression tested with the test suite and the example apps. Note that createDevice() now takes dimension2d<u32>!
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@2092 dfc29bdd-3216-0410-991c-e03cc46cb475
Change ray/bounding box selection so that the nearest node is determined by the actual collision point with the bounding box (or the distance to the box centre if the ray starts inside the box). Since this is a functional change from the old behaviour, I'm only committing to the trunk. This will be slightly slower than the old method, but should return the correct node; I consider accuracy to take priority over efficiency for collision.
tests/sceneCollisionManager.cpp has been updated, as has examples/07.Collision/main.cpp.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@2047 dfc29bdd-3216-0410-991c-e03cc46cb475
Significant internal change to the way that FPS camera jump speed and collision response animator gravity interact. The behaviour is now much more realistic, but it will require you to adjust your jump speed and gravity.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@1811 dfc29bdd-3216-0410-991c-e03cc46cb475