Was needed because just having isPointInside virtual doesn't allow controlling sub-element behavior.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@4787 dfc29bdd-3216-0410-991c-e03cc46cb475
- Fix bug in IGUISkin serialization which messed up serialization of the button-pressed offsets (Thanks at @Midnight for reporting).
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@4779 dfc29bdd-3216-0410-991c-e03cc46cb475
Fixed issue with missing blending when transparent shader material is used with blending operation set to EBO_NONE.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@4774 dfc29bdd-3216-0410-991c-e03cc46cb475
- ParticleSystemSceneNode does now affect the particle movement direction by default. Can be disabled to get old behavior.
- Allow interpolating postions which is useful when particles are attached to fast-moving nodes (to avoid regular patterns).
- Invisible behavior flags from check-in yesterday re-implemented with new general behavior flags.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@4770 dfc29bdd-3216-0410-991c-e03cc46cb475
- Moved StartTime in the ISceneNodeAnimators class instead of derived classes.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@4767 dfc29bdd-3216-0410-991c-e03cc46cb475
Unfortunately more tricky to get rid of those in S4dVertex, so can't fix em all.
Reason is that pedandic clang no longer likes those in newer clang versions.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@4766 dfc29bdd-3216-0410-991c-e03cc46cb475
Our current member function documentation look often rather strange. The reason is that the first
line in multi-line comment is handled special (it get's a box around it). So in the cases where we use
this for \param or have sentences starting in that line and continuing in the next it always looks broken.
Please click for example through IGUIElement documenation which is not yet fixed to see this.
Also links to enums don't seem to need @ref but just ::my_enum_name.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@4746 dfc29bdd-3216-0410-991c-e03cc46cb475
Japanese not yet, but we're even a little closer to that now.
Dead-key handling is not working. I just can't figure it out (X11 documentation and examples make me swear badly).
Users which have language input with dead-keys (like ^) will now have those characters always ignored.
Before it had just printed the characters but set a complete wrong key-code. So dead keys partly better, partly worse.
But this solution is going in the right direction. Either we figure out later why X11 doesn't handle dead-keys or we handle them ourselves.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@4743 dfc29bdd-3216-0410-991c-e03cc46cb475
Thx @Nalin and @StarSonata who both proposed patches for this in the past.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@4730 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
Previously each meshloader had implemented texture loading independendly. This had caused a lot of redundant codes and behaviour
between different meshloaders was often different. So we have now one common interface which should be used by all meshloaders.
This also allows deprecating TEXTURE_PATH attributes as those paths can now be set by that interface and for all meshloaders using it.
I have replaced the codes for the 3DS, B3D, CSM, Collada, DMF, LMTS, LWO, MY3D, OBJ, OCT, Ogre, SMF and X meshloader.
Not changed (just using old code) are: MS3D (I forgot that one), CIrrMeshFileLoader (haven't figured out how it works yet).
STL and PLY both don't load textures and need no changes.
MDL, MD3, MD2 and BSP all work a little different (the textureloading there isn't implemented inside the meshloaders). Those could maybe still be adapted.
Stuff still needs a lot more test (unfortunately I don't have test-models for most formats...), but wanted to check it in already to get some feedback.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@4703 dfc29bdd-3216-0410-991c-e03cc46cb475
Note about implementation: There is already IVideoDriver::getScreenSize() which is more or less the getter for this function. But I don't think it belongs in IVideoDriver and also this function is about the window and not the screen obviously. So might make sense adding getWindowSize and deprecating getScreenSize, but that needs further changes in GUI. For now I just added a comment and let the rest be as it was.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@4693 dfc29bdd-3216-0410-991c-e03cc46cb475
A few minor changes to the GUIEditor:
- Displays the window-size
- Update (rarely) when Window now active
- Sleep after drawing to prevent update-delays on resizing
- Driver choice now only for available drivers
- Kick out the "Tools" tab as it's unused so far and just irritating users.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@4692 dfc29bdd-3216-0410-991c-e03cc46cb475
CSceneNodeAnimatorFlyStraight, CSceneNodeAnimatorFlyCircle, CSceneNodeAnimatorFollowSpline, CSceneNodeAnimatorTexture.
It's also implemented for CSceneNodeAnimatorRotation, but that one currently resets the StartTime constantly (I don't think
it has to, but I have no tests written for animators currently so can't change that for now).
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@4675 dfc29bdd-3216-0410-991c-e03cc46cb475
Note that I did this just to do some tests against the fast-math functions - and those tests showed a lot of troubles so I still won't recommend using IRRLICHT_FAST_MATH.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@4672 dfc29bdd-3216-0410-991c-e03cc46cb475
It uses again SMaterial::MaterialTypeParam instead of a hardcoded values and makes an exception when MaterialTypeParam is 0 (using it like 0.5 instead) to ensure it works by default. See http://irrlicht.sourceforge.net/forum/viewtopic.php?f=7&t=48940 for new discussion.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@4569 dfc29bdd-3216-0410-991c-e03cc46cb475
Exposed some more functions:
getArchiveName returning name (path) of archive
getColor and getColorHSL for color select dialog
get/setDoubleClickTime in device for setting the time offset necessary to have two separate clicks instead of a double-click
Removed deprecated getXJoint and getMS3DJoint functions
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@4545 dfc29bdd-3216-0410-991c-e03cc46cb475
Some fixes:
Added get/setCurrentRenderPass to scene manager (internally renamed, exposed)
Removed destructor from light scene node.
Removed getType calls from archive loaders (one file archives have this)
Removed some internal exposures and virtual attributes for protected classes
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@4543 dfc29bdd-3216-0410-991c-e03cc46cb475
- Added query feature related to DXT compressed textures.
- Added compressed textures support for D3D9.
- Fixed minor bugs in OpenGL related to compressed textures handling.
- Properly handle compressed textures in D3D8 and Software drivers (Those drivers doesn't support compressed textures).
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@4450 dfc29bdd-3216-0410-991c-e03cc46cb475
- Extended IImage class for support compressed textures.
- Improved DDS loader for support mip map loading.
- Added DXT1-5 compressed textures support for OpenGL.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@4449 dfc29bdd-3216-0410-991c-e03cc46cb475
(sorry commit-message got lost because I ignored some warning)
Also fixed a comment again which I accidentally messed up in last login.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@4438 dfc29bdd-3216-0410-991c-e03cc46cb475
- IGUISpinBox no longer validates values after each character type but only on KEY_ENTER and when losing focus. New behavior can be set with IGUISpinBox::setValidateOn
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@4428 dfc29bdd-3216-0410-991c-e03cc46cb475
Will break OSX compiling for now as that project file is not yet updated. I hope other project files are all fixed correctly.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@4425 dfc29bdd-3216-0410-991c-e03cc46cb475
- Added ECFN_DISABLED value (it works like ECFN_NEVER worked before) and changed ECFN_NEVER behaviour (it works like its equivalent value in OpenGL/Direct3D).
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@4424 dfc29bdd-3216-0410-991c-e03cc46cb475
- Restored const-correctness for draw2DImage methods (it was changed in previous revision).
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@4405 dfc29bdd-3216-0410-991c-e03cc46cb475
- r4389: Fix crashes in CCubeSceneNode::clone and CSphereSceneNode::clone (reported by marsupial)
- r4387/r4390: fixed getDepthFunction in IQ3Shader which always returned ECFN_EQUAL due to missing break (found by the cppcheck tool)
- r4382: Fix the clipping in the listbox drawing which was only showing the right line of the sunken pane (reported by Mloren and Abraxas).
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@4391 dfc29bdd-3216-0410-991c-e03cc46cb475
NOTE: There's a good chance that this should be changed in more places where iszero is used, as that check is often about avoiding a division by 0.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@4343 dfc29bdd-3216-0410-991c-e03cc46cb475
Also added some documentation that UNICODE must be set as well for compiling with _IRR_WCHAR_FILESYSTEM ('cause I always forget to set that at first otherwise...).
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@4322 dfc29bdd-3216-0410-991c-e03cc46cb475
Change matrix pointer access to direct array operator access.
Add some test cases for quaternion methods.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@4280 dfc29bdd-3216-0410-991c-e03cc46cb475
- In CColladaMeshWriter the texcoords in in mesh-source and those in texture (for effects) don't use the same name anymore. bind_vertex_input does handle that connection and having the same name had complicated the code (and was confusing)
- In Collada export mesh-geometries can now be copied when different materials are using the same mesh. Reason was that many tools (all I tested so far including Irrlicht) can't handle such materials otherwise.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@4277 dfc29bdd-3216-0410-991c-e03cc46cb475
- Add some callbacks that allow users to use custom-names on writing
(I'll probably add an example as well soon for how to use all that - the problem is that there don't seem to be 2 tools out there interpreting Collada the same way and so we have to be rather flexible on export. And yeah - our own import also still has way to go...)
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@4268 dfc29bdd-3216-0410-991c-e03cc46cb475
- Also added new packing headers to c::b project file.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@4226 dfc29bdd-3216-0410-991c-e03cc46cb475
- Update changes.txt
- Change include order to get example 21 compiling on MinGW.
- Fix linker path in example 16 for C::B project file (linker path was in include path section).
- Link with opengl32 and gdi32 in Example 14 in C::B.
- Remove --no-export-all-symbols which got recently added to the windows build as that flag is not known by gcc on Windows.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@4209 dfc29bdd-3216-0410-991c-e03cc46cb475
Fix push and pop usage - some files forgot to add the define, so effectively not work under gcc with special architectures - and move all files to use the new include files.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@4196 dfc29bdd-3216-0410-991c-e03cc46cb475
- triangle3d::isPointInsideFast now using some epsilon to catch all points on the borders.
- triangle3d::getIntersectionOfPlaneWithLine calculates now with higher precision for more exact results.
- triangle3d::isOnSameSide (used by isPointInside) calculates now with higher precision and uses some epsilon to make it work with larger integers and less floating point troubles. Slightly slower now.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@4183 dfc29bdd-3216-0410-991c-e03cc46cb475
- fast_atof tests now running on 64-bit (should've been last 64-bit specific trouble in tests).
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@4180 dfc29bdd-3216-0410-991c-e03cc46cb475
- Allow difference of 1 ULP in fast_atof tests (as that is still correct). Note that this only fixes part of the fast_atof test, the whole tests still fails on 64-bit because test_strtol still fails (that looks more like a real bug).
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@4179 dfc29bdd-3216-0410-991c-e03cc46cb475