- Added cube maps support to PVR file loader.
- Added support for load cube maps directly via IVideoDriver::getTexture call.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@5259 dfc29bdd-3216-0410-991c-e03cc46cb475
- Improved IRenderTarget::setTexture warnings.
- Minor improvements for textures in D3D9 and OpenGL drivers.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@5241 dfc29bdd-3216-0410-991c-e03cc46cb475
- Improved D24S8 color format handling in OpenGL.
- Fixed issue with wrong size for OpenGL RT when FBO isn't available. Thx CuteAlien for report that.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@5222 dfc29bdd-3216-0410-991c-e03cc46cb475
Also added a function to access the original name as well as the converted name for directories.
Can't fix the interface completely unfortunately without breaking it :-/
Not yet fixed is the conversion to lower-characters - that will be one of the next tasks (had to clean up other stuff before I could approach that).
Also _IRR_WCHAR_FILESYSTEM currently not compiling, but been like that a few versions already.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@5215 dfc29bdd-3216-0410-991c-e03cc46cb475
I had to add a few forward declarations in core::string because I didn't want to add another source-file for this now. If anyone decides to create a irrString.cpp those can be removed again by making multibyteToWString extern instead of static (in VS it would already be possible to avoid them, but gcc does more exact checks for friend linkage specifiers).
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@5212 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
* ECF_PVRTC_RGB2
* ECF_PVRTC_ARGB2
* ECF_PVRTC_RGB4
* ECF_PVRTC_ARGB4
* ECF_PVRTC2_ARGB2
* ECF_PVRTC2_ARGB4
* ECF_ETC1
* ECF_ETC2_RGB
* ECF_ETC2_ARGB
- Added PVR image loader with support for DXT*, PVRTC* and ETC* color formats.(this feature was available in ogl-es branch before)
- Fixed issue with mipmaps in DDS loader.
- Fixed minor issue with texture cubemap in OpenGL.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@5192 dfc29bdd-3216-0410-991c-e03cc46cb475
- Fixed issue related to sphere mapping on the whole scene (visible eg. in Tech Demo). Thanks AReichl for report this issue.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@5185 dfc29bdd-3216-0410-991c-e03cc46cb475
- Set IImage::lock and IImage::unlock methods as deprecated (those method names was wrong, IImage::unlock did nothing...). Please use IImage::getData method instead of older alternatives.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@5168 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
Also clarified animation documentation to describe current behavior more exactly.
CSkinnedMesh had returned the last key instead of the number of keys.
Thx to whoever mentioned to me once that our example dwarf is not playing his full animation in the meshviewer.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@5118 dfc29bdd-3216-0410-991c-e03cc46cb475
- Interface getMeshType moved from IAnimatedMesh up to IMesh.
- Static b3d mesh-writer written by Hendu, support for animated meshes added by JLouisB, testing and bugfixes by CuteAlien.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@5095 dfc29bdd-3216-0410-991c-e03cc46cb475
You can still access the frustum boundingbox through the frustum itself.
Also CSceneCollisionManager collision functions ignore now empty collision boxes.
This means cameras no longer show up in the node-collision of the SceneCollisionManager.
Tests have been adapted correspondingly.
Note that this behavior was once before changed in Irrlicht (rev. 345). But it was one of many changes and there was no documentation or log-message about why anyone would like
the cameras to show up in node-collisions based on their frustum boundingbox. Without any hints about the why I decided to change it back as it's just confusing.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@5094 dfc29bdd-3216-0410-991c-e03cc46cb475
Move ECOLOR_FORMAT enums added in r4984 to the end (adding in them in the middle can mess with serialization).
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@5092 dfc29bdd-3216-0410-991c-e03cc46cb475
The defaults had been changed in Irrlicht 1.6 (svn r2925) as line-smoothing did sometimes lead to software emulation under OpenGL.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@5089 dfc29bdd-3216-0410-991c-e03cc46cb475
Otherwise materials like EMT_TRANSPARENT_ALPHA_CHANNEL no longer worked.
Not sure if this is now causing other problems, but it no longer seems to break the known cases (tests about that pass again). If there are new problems we need new tests to show 'em.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@5086 dfc29bdd-3216-0410-991c-e03cc46cb475
Was using the wrong variable (RelativeRotation instead of RelativeScale) as default value.
This was also not working in older Irrlicht versions, but can't be fixed there as those had no default parameters for getAttribute yet.
This allows for example to load .irr files created with new CopperCube while setting a parent-node (some attributes will still be ignored as .irr files always expect the scene itself as parent, that would need some special SceneNode type to work around).
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@5081 dfc29bdd-3216-0410-991c-e03cc46cb475
In 4774 we tried fixing zwriting for shader materials as those are ignored in SMaterial::isTransparent.
This affected too many existing projects and made it hard to still write to zbuffer in some situations where it was necessary. So trying now another approach which brings back old functionality mostly, but allows users to have more fine-control with a new flag. Using an enum instead of bool for the new flag as it's foreseeable that more options might be necessary for this in the future.
Note: Several tests are currently failing, but they did that before, so that has to be debugged on it's own.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@5076 dfc29bdd-3216-0410-991c-e03cc46cb475
- Fixed OpenGL RTT.
- Fixed compilation issues in some unit tests.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@5072 dfc29bdd-3216-0410-991c-e03cc46cb475
Fixing it would be nice, but is probably worse. It would break users-apps in a very hidden way and
it's too easy to work around this problem to make such an evil API-change instead.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@5071 dfc29bdd-3216-0410-991c-e03cc46cb475
I kept the few places in code where the define is checked as those basically didn't matter.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@5054 dfc29bdd-3216-0410-991c-e03cc46cb475
Missing people with interest in maintaining it. Anyone who still needs DX8 can branch the previous svn version or use Irrlicht 1.8.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@5053 dfc29bdd-3216-0410-991c-e03cc46cb475
This was a bugfix for VS2003 (in combination with .NET) which we haven't supported in a while.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@5050 dfc29bdd-3216-0410-991c-e03cc46cb475
Note, I would have liked to get it compiling again a last time, but it was referring to a class which didn't exists, so I didn't know what to make of that.
NVidia has also stopped supporting this by the way.
No changes for MacOSX project files, so those still might have to be fixed.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@5046 dfc29bdd-3216-0410-991c-e03cc46cb475
IGUIProfiler can now work with any profiler using the IProfiler interface.
Some spelling fixes.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@4969 dfc29bdd-3216-0410-991c-e03cc46cb475
This needs to be rewritten - the current solution has too many linker troubles.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@4793 dfc29bdd-3216-0410-991c-e03cc46cb475
- breaks MacOSX build for now (files need to be added there).
- Interface still needs to be discussed, so maybe wait a few days before using this.
- Not yet tested on Windows (will do that tomorrow)
- No VS project files yet for the profiling example (will do that tomorrow)
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@4791 dfc29bdd-3216-0410-991c-e03cc46cb475
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