Commit Graph

  • b93be7c49c Add some readme.txt's to folders which would otherwise be empty in source-control-systems. Just making life a little easier for the hg & git crowd. cutealien 2019-01-18 15:17:34 +0000
  • 957d34ff0e Switch Irrlicht to 8 textures per Material as default by increasing value of _IRR_MATERIAL_MAX_TEXTURES_. cutealien 2019-01-17 15:34:57 +0000
  • 60b295bcdb Can't avoid writing empty textures or SMaterial. I changed that while fixing SMaterial serialization, but bad optimization. Editors needs the info even when it's empty or it can't offer options to user. cutealien 2019-01-17 14:32:03 +0000
  • 6bf700d408 Remove compile warnings. cutealien 2019-01-17 14:24:11 +0000
  • abd0fa9dec Fix several problems with SMaterial serialization. SMaterial.ZWriteFineControl only using 1 bit now. cutealien 2019-01-17 14:19:18 +0000
  • f34b03f4bd Add MATERIAL_MAX_TEXTURES_USED to allow setting a limit of used textures in materials. CD3D9Driver::setTransform limits no longer to MATERIAL_MAX_TEXTURES, but to MaxTextureUnits. COpenGLCoreFeature::TextureUnit renamed to COpenGLCoreFeature::MaxTextureUnits (same as Direc3D names it and slightly better description) Limiting used texture numbers with MATERIAL_MAX_TEXTURES_USED is currently not making a big speed difference. But it has a more noticable effect when we increase _IRR_MATERIAL_MAX_TEXTURES_ soon. It allows software which doesn't need more textures to mostly keep old speed. cutealien 2019-01-16 21:18:43 +0000
  • a70e6ce6e7 Create pdb file also in release. cutealien 2019-01-16 21:01:27 +0000
  • b737b425ba Checking TextureMatrix pointer before de-allocating. While possibly double-checking the pointer now (which would be slightly slower when it's non-0), it's generally increasing speed of SMaterialLayer as our allocator is still somewhat expensive when the pointer is 0 (which is generally the case). And the cost would increase further when we raise max texture numbers soon. cutealien 2019-01-16 20:53:37 +0000
  • 91247910b8 No longer overwrite memory when compiling with _IRR_MATERIAL_MAX_TEXTURES_ set to a value > 8 cutealien 2019-01-16 18:22:04 +0000
  • f16f173fcb setMaterial no longer changes texture-matrices in GL and D3D9 when no texture-pointer is set. cutealien 2019-01-11 18:26:04 +0000
  • 07e458c643 OpenGL driver no longer changes active texture as often when it doesn't have to do anything with the texture. Minor speed improvement, which also will make it less costly to increase max-textures in future. cutealien 2019-01-11 16:49:24 +0000
  • c7a766c290 Get rid of compile warnings in CAnimatedMeshHalfLife.cpp cutealien 2019-01-02 11:44:43 +0000
  • 7f60d679cc Remove .aps file from source control. It's a binary representation of the resource file which shouldn't be checked-in as VS can rebuild it. cutealien 2018-12-22 23:17:34 +0000
  • 2c7871d2f4 Fix memory leak in OpenGL for automatic generated rendertarget depthbuffer textures. Didn't release old one when switching between between rt's with different sizes. Also some refactoring to make code easier to read. cutealien 2018-12-04 16:01:12 +0000
  • f4cce65ab1 Reset blend and alphatest states in GL and GLSL shader materials. Those resets got removed in the materialrenderer rewrite in r4979, so sometimes we got wrong states now (stuck to blend or alphatest enabled when switching back to other materials). At least that was the case for alphatest, not so certain about blend which is also set in COpenGLDriver::setBasicRenderStates. That one is likely enabled/disabled more than once right now when setting up some materials (shader materials which have a transparent base material but SMaterial.BlendOperation != EBO_NONE). So better state-handling there could likely allow some speed optimization in the future. cutealien 2018-12-04 13:46:09 +0000
  • b3e9af5722 Add IMaterialRenderer::getShaderConstantSetCallBack to allow access to user provided shader callbacks. cutealien 2018-12-01 15:55:32 +0000
  • 386cbffe9a No longer set world transform twice in CMeshSceneNode. I suspect that was just some copy-paste error (some other nodes need this). cutealien 2018-12-01 15:01:03 +0000
  • 8f2eb13099 Allow to create images with floating point formats. While IGUIImage doesn't support those well yet, it at least allocates memory and that turns out to be useful sometimes. For example we can now lock() floating point textures and access the data on OpenGL, which wasn't possible before. If this turns out to cause any problems (shouldn't really) we can handle them case-by-case. cutealien 2018-11-29 16:04:39 +0000
  • b584c39295 ITexture::lock interface changed. - mipmapLevel is now the second parameter as it was in Irrlicht 1.8 (but currently not doing anything) - layer moved to third parameter - New parameter lockFlags which allows to disabled flipping the texture upside down for RTT's on OpenGL. Sorry for any inconvenience this change causes, but as I had to break the interface now anyway I decided to make it backward compatible to Irrlicht 1.8. Anyone already using the new "layers" feature in trunk will have to move the layer parameter now. But the last interface change which replaced the mipmaplevel with another variable with very different meaning wasn't a solution. Mipmap support can also likely be re-introduced. At least I still haven't seen a real reason why it shouldn't be possible to have that anymore. cutealien 2018-11-22 19:13:59 +0000
  • 343924adb7 Add IVideoDriver::addTextureCubemap function to create an empty cubemaps. cutealien 2018-11-22 14:40:34 +0000
  • 05a05b75d1 Enable seamless filtering for cubemaps on OpenGL by default and add a new driver feature flag to disable it. cutealien 2018-11-20 15:47:13 +0000
  • 7873503041 Fix test "renderTargetTexture" Was using wrong parameter order when setting the rendertarget. cutealien 2018-11-19 21:50:24 +0000
  • 665324b6a8 Switch COpenGLCoreTexture::lock to using glGetTexImage instead of glReadPixels. Also got rid of extra temporary image. Main reason it didn't work before was likely because the image had not been set as active. tests failing: 51,53,54 (some related to this, but none of those worked before, so no change there). Note: Still keeping old code around a little longer as it's currently nice to have for comparison. If new stuff causes any preoblems, we could even make it optional somehow (some driver flag or so). cutealien 2018-11-19 15:24:48 +0000
  • c5e36eb111 Minor change to COpenGLExtensionHandler::dump (internal use only). And comment about WGL_CONTEXT_FLAGS_ARB (but debug not enabled). cutealien 2018-11-12 16:45:25 +0000
  • a2e744faa5 Add current values as default values in serialization of several GUI elements. cutealien 2018-11-10 14:09:49 +0000
  • fb7e234561 Add a default parameter to some IAttributes::getAttributeAsEnumeration functions. Use existing values as default values now in serialization of CGUIEditBox. cutealien 2018-11-10 13:55:12 +0000
  • 0ec5f98831 Fix default value for ScaleImage in CGUIImage::deserializeAttributes. Thanks @chronologicaldot for the report: http://irrlicht.sourceforge.net/forum/viewtopic.php?f=7&t=52405 cutealien 2018-11-10 13:33:55 +0000
  • 57949584ed Add support for creating cubemap rendertargettextures on OpenGL. Still having some troubles: - Lock() returns very strange results - The usual texture-flipping for rendertargets in opengl is causing here even more troubles than usual. Still working out how to render cubemaps into RTT's the same way as when just passing "normal" textures to a cubemap. Just putting them upside down isn't enough. cutealien 2018-11-09 19:16:50 +0000
  • bc525f5dcc Fix ITexture::lock for D3D9Texture with RTT cubemaps. cutealien 2018-11-09 13:59:13 +0000
  • 3b7216ed7c Bugfix: BillboardSceneNode must set meshbufferbuffer to dirty now. (wasn't needed in the past when it wasn't using a real meshbuffer as new updates were send each frame anyway). cutealien 2018-10-29 21:35:36 +0000
  • 243c124d85 Try restoring a lost device for 4 instead of 3 seconds. Better error messages for failed CreateTexture calls. (time of restoring device is try&error really, with 3 seconds it seemed to work sometimes, but still failed in some cases, so just increasing it slightly to see if helps). cutealien 2018-10-19 13:39:20 +0000
  • 8518f3bd2c Revert r5645 (adding default value). Reason: No c++11 code in Irrlicht 1.9 and also - this value already is default in core::string, so no need to set it. cutealien 2018-10-04 10:03:11 +0000
  • c8ec2d3e05 Added Default-value for ISceneNode->Name so the code won't crash if someone tries to compare it with empty... dbocksteger 2018-10-04 05:57:43 +0000
  • 8f7f59d193 Simplify code in CGUITabControl (thx @chronologicaldot for patch-proposal). Forum: http://irrlicht.sourceforge.net/forum/viewtopic.php?f=7&t=52344&p=304167#p304167 cutealien 2018-09-20 21:16:46 +0000
  • 8868d47688 Fix serialization bug introduced in svn r5631. That fix there was only missing some understanding of a strange side-effect. Comment added so we don't run into it again (and solved slightgly different than before). cutealien 2018-09-20 20:56:35 +0000
  • 4edf23c775 Add serialization for ToolTip to IGUIElement. Thanks @chronologicaldot for fix. Forum: http://irrlicht.sourceforge.net/forum/viewtopic.php?f=2&t=52374 cutealien 2018-09-12 09:47:38 +0000
  • 01de5276ae Fix bug introduced in r5627 which generated certain rtt's on d3d9 now twice - which broke resetting the d3d9 device. That check got accidentally deleted while adding support for cubemap rtt's. cutealien 2018-09-04 16:52:08 +0000
  • 10a3f02aa6 Try recovering lost device in D3D9 for 3 seconds when device reset fails after resizing Window. The device becomes useless if we don't recover it, so it's worth giving it a few more shots at that point as it might take a while until it can be recovered. The 3 seconds are just a number which seems to make some sense, could be it would be worth waiting even longer? cutealien 2018-09-04 14:20:34 +0000
  • b44b6891a6 Add typedefs like value_type and size_type to array, list and map like std containers have. Thanks @SLC for idea (http://irrlicht.sourceforge.net/forum/viewtopic.php?f=1&t=52363) cutealien 2018-08-23 09:52:13 +0000
  • 27915916df readme.txt: fixed typo dbocksteger 2018-08-14 07:19:47 +0000
  • 0c57deec15 Simplify code (getAttributeAsBool didn't have default-paramters in the past). cutealien 2018-07-24 20:13:16 +0000
  • 09767f2541 Merge branch releases/1.8 revisions 5529-5631 into trunk: - Add comment to Makefile about MinGW compilation - Fix serialization of OverrideTextColorEnabled flag in CGUITab cutealien 2018-07-24 20:11:37 +0000
  • 438fb2a0ac Remove unused enum E_LOST_RESOURCE cutealien 2018-07-19 20:25:34 +0000
  • f6202b9e7b Update Windows version info slightly (at least tell it's Windows 8 or above). cutealien 2018-07-19 20:22:40 +0000
  • 2b4ec38555 Fix compile error on gcc. Thanks @AReichl for reporting. cutealien 2018-07-13 10:14:48 +0000
  • b795ba324b Add support for cubemap rendertarget textures on D3D9. (OpenGL still needs to be done). Example will follow. cutealien 2018-07-12 19:19:11 +0000
  • f41aad6c6d No longer try to restore RTT's with a lost device. cutealien 2018-07-04 17:56:38 +0000
  • f873cd7916 Do no longer release DepthStencilSurface always in D3D9 device and then still work with it. cutealien 2018-07-04 17:50:34 +0000
  • 7942f3dae6 Set ETCF_ALLOW_MEMORY_COPY to "on" by default. This means opengl textures keep again a copy in main-memory as they did in Irrlicht 1.8. The reason this is changed back is because otherwise ITexture::lock() for alpha-textures is broken by default. This is a (long time reported) bug, but it has gone unfixed for over a year and caused too many problems. cutealien 2018-07-01 12:21:17 +0000
  • 32c532ee36 Log parameters when CreateTexture call in CD3D9Texture::generateRenderTarget fails. cutealien 2018-06-29 10:34:58 +0000
  • 7442e24ded Simplify code (no need to keep scroll-bar width in extra variable here). cutealien 2018-06-17 19:46:40 +0000
  • 2246895ae1 CGUIComboBox uses now EGDS_SCROLLBAR_SIZE instead of EGDS_WINDOW_BUTTON_WIDTH for the width of the listbox button to allow changing that without changing window topbar height. It also changes now directly when the value is changed in the skin. Thanks @LunaRebirth for reporting. Forum-link: http://irrlicht.sourceforge.net/forum/viewtopic.php?f=1&t=52297&p=303682#p303682 cutealien 2018-06-17 19:31:14 +0000
  • 9d315a9354 CGUIListbox, CGUITreeView and CGUITable now resize scrollbars when EGDS_SCROLLBAR_SIZE in the skin changes without having to re-create the elements. This also fixes the problem that drawing looked wrong when this value got changed after the elements were created. Thanks @LunaRebirth for reporting. (Forum: http://irrlicht.sourceforge.net/forum/viewtopic.php?f=1&t=52297&p=303682#p303682) cutealien 2018-06-16 22:27:08 +0000
  • 8f3b9e6c6a No longer let scrollbar-buttons get larger than half the size of the scrollbar element. Fixes problem that buttons could overlap. cutealien 2018-06-16 21:53:58 +0000
  • e3282308c1 Spelling fix. cutealien 2018-06-01 10:20:15 +0000
  • a916b5de6a spelling cutealien 2018-05-24 22:37:27 +0000
  • 609a6474f0 Prevent crash in CD3D9RenderTarget::generateSurfaces when a CD3D9Texture has no IDirect3DTexture9. Increase log-warning level from information to error when CD3D9Texture::generateRenderTarget fails to generate a IDirect3DTexture9. cutealien 2018-05-24 10:53:43 +0000
  • a7a90ff191 Add IVideoDriver::swapMaterialRenderers to allow swapping the renderer used to render a certain material. cutealien 2018-05-17 15:04:43 +0000
  • 63ec10d099 Adding documentation about the way tangents/binormals are passed to shader. cutealien 2018-05-16 21:23:05 +0000
  • 144123beab IMeshManipulator functions createMeshWith1TCoords, createMeshWith2TCoords and createMeshWithTangents no longer weld vertices while converting meshes. Use IMeshManipulator::createMeshWelded if you need that welding. cutealien 2018-05-16 21:12:54 +0000
  • a8b9071f96 Add ITerrainSceneNode::setFixedBorderLOD to handle connecting terrain nodes without gaps. Thanks @diho for the bugreport, testcase and a patch proposal. Forum: http://irrlicht.sourceforge.net/forum/viewtopic.php?f=9&t=51220 cutealien 2018-05-14 21:03:11 +0000
  • 1d99bd8ff2 PLY loader now works with files which use "st" instead of "uv" for texture coordinates. Thanks @JLouisB for patch. This fixes loading from files generated by Blender or Assimp. Forum: http://irrlicht.sourceforge.net/forum/viewtopic.php?f=9&t=52261 cutealien 2018-05-12 15:31:01 +0000
  • fb39389bb8 STL writer does now also write binary files when EMWF_WRITE_BINARY flag is used. Based on patch from JLouisB. (Forum: http://irrlicht.sourceforge.net/forum/viewtopic.php?f=9&t=52261) (EMWF_WRITE_COMPRESSED also still works for downward compatibility) cutealien 2018-05-12 15:24:33 +0000
  • 2757651d10 Improved PLY exporter. Thanks for Patch from JLouisB. Forum discussion: http://irrlicht.sourceforge.net/forum/viewtopic.php?f=9&t=52261 - Support for UV and vertex colors. - Support for binary PLY files export with the EMWF_WRITE_BINARY flag - Fix for the meshes with 32 bits index cutealien 2018-05-12 14:36:10 +0000
  • c422dcbe4d Document IVideoDriver::makeNormalMapTexture some more. Mainly to make it obvious that (at least for now) only the red-channel is used for 32-bit textures. cutealien 2018-05-09 20:50:45 +0000
  • 95e4f04796 Example 09 can load russian filenames again on Linux. cutealien 2018-05-01 21:40:39 +0000
  • 69787af02d Add B3DExporter script for Blender from SuperTuxKart. It is copied from here: https://sourceforge.net/p/supertuxkart/code/17112/tree/media/trunk/blender_25/B3DExport.py Reason is that STK uses now different scripts and this one was getting hard to find for users (that was the last version before they removed it). It's GPL licensed, but not combined with rest of library, so no problem for us. cutealien 2018-03-18 15:11:26 +0000
  • f02f226712 Fix wrong colors on big endian platforms with burnings renders. Thx @kas1e for reporting and @curaga for the patch (#318). Note: this patch just removes some old #ifdef __BIG_ENDIAN__ code, so it's slightly suspicious. But it does fix the wrong color problems on big-endian platforms. See http://irrlicht.sourceforge.net/forum/viewtopic.php?f=7&t=52177 for the discusssion. cutealien 2018-02-18 16:03:52 +0000
  • 30c123214e Improve documentation about ECF_A8R8G8B8. cutealien 2018-02-06 20:12:30 +0000
  • d276dcc9f2 Fix type conversion warning. cutealien 2017-12-31 20:43:45 +0000
  • 803250affc Fix bug #440 where OpenGL driver enabled second texture for single-texture materials when setMaterial was called twice. Thx@ "number Zero" for bugreport and test-case. This problem was introduced in Irrlicht 1.7. The cause was that material renders can change chache-values which were then not reflected in the internal LastMaterial of the OpenGL driver. cutealien 2017-12-31 20:24:55 +0000
  • 12cab21629 Irrlicht icon now loaded with LR_DEFAULTSIZE to better support larger icon requests. Thx@ luthyr for report and bugfix. Forum-thread: http://irrlicht.sourceforge.net/forum/viewtopic.php?f=7&t=51422&p=298400#p298400 cutealien 2017-12-20 21:28:56 +0000
  • cd876e4fe7 Cursor on X11 behaves now like on Win32 and doesn't try to clip positions to the window. cutealien 2017-12-19 23:00:31 +0000
  • 3712ca9d97 Spelling. cutealien 2017-12-10 14:15:41 +0000
  • c4247febe5 IImage::copyToWithAlpha has a new parameter to allow combining alpha value instead of replacing them. This uses new blitters called BLITTER_TEXTURE_COMBINE_ALPHA. Thx @chronologicaldot for providing this patch and @burningreggae for his feedback. cutealien 2017-12-06 20:54:57 +0000
  • c0f0b50915 Remove 'register' storage class specifier which is deprecated with c++11 (and did get ignored by c++ compilers anyway since a long time). cutealien 2017-11-29 20:46:29 +0000
  • 5dc065e3f7 Remove unused variable. cutealien 2017-11-29 20:37:32 +0000
  • 78f19c621b Rename internal function setRenderTarget in software drivers to setRenderTargetImage to avoid clang warning. Clang does not like having non-virtual functions with identical names to virtual functions. cutealien 2017-11-29 20:30:58 +0000
  • bc3eff7e40 Fix clang compiler warning. cutealien 2017-11-29 19:43:26 +0000
  • 6a05db3a0a Prevent some compiler warnings when using clang. cutealien 2017-11-28 21:54:18 +0000
  • fc1b290951 Fix a few places which called the driverType a deviceType (variable-names and documentation). cutealien 2017-11-22 17:09:56 +0000
  • 42958c233a Move E_TEXTURE_TYPE enum from IImage.h to ITexture.h cutealien 2017-11-22 17:02:55 +0000
  • 164aeb5831 Get rid of some warnings from VS 2017 static code analyser. (just cleaner, unlikely to have caused trouble in real code) cutealien 2017-11-20 17:12:37 +0000
  • e6cf90d594 The new EGET_ELEMENT_REMOVED event got... removed. Sorry, it had sounded like a good idea when I coded it, but the original reason for asdding it (allowing the gui-enviornment to notice when elements are removed) never worked out anyway. And now I learned about other problems this can cause. Just too risky to use the event-system for this, have to find another solution some day. cutealien 2017-11-17 15:16:43 +0000
  • 826aaf10ca Remove _ITERATOR_DEBUG_LEVEL=0 also in the static-lib debug properties in VS 2017 project. cutealien 2017-11-17 13:52:13 +0000
  • 0de6f04378 Fix solution name. Switch rest of targets to v141. cutealien 2017-11-17 13:34:51 +0000
  • 556eb4c95f Remove _ITERATOR_DEBUG_LEVEL=0 in debug project settings. This was done to allow mixing debug/release versions in Irrlicht which was sometimes nice for testing and worked as we don't use STL. But it's not nice as it makes it hard to work with other libraries. Also setting platform toolset to 141 (was just an error it got set to 140 in first check-in of the vs2017 project files). Note: There will be more changes in future. We have to use different names for debug/release and certain c++ settings (for example mt vs mtd). cutealien 2017-11-17 13:22:30 +0000
  • 1b0e050d90 Add VS2017 project files + solution for library (not yet done for examples & tools). cutealien 2017-11-16 13:28:33 +0000
  • 340510629f Fix spelling in warning. cutealien 2017-11-10 14:19:52 +0000
  • 00d79992a0 Add entry for ECF_UNKNOWN to ColorFormatNames. cutealien 2017-11-09 21:11:09 +0000
  • 413a5b2504 Add some documentation about the workings of the attribute system. (I hope I figured it out all correct) cutealien 2017-11-08 22:19:35 +0000
  • 7a87a77a8a Document some bug/missing feature in the serializeAttributes tests. (stringw arrays can't serialize to/from strings - that's ignored silently at the moment, not yet tested if/how it works in combination with xml-reader, but that one should or other tests would fail). cutealien 2017-11-07 00:30:49 +0000
  • 51172244ed Remove unused functions CNumbersAttribute::isNumberList and CNumbersAttribute::isFloat. cutealien 2017-11-06 17:26:39 +0000
  • 78572df3f1 Use index notation instead of row/column notation in CMatrix4::getInverse as in other matrix functions. cutealien 2017-11-06 16:59:10 +0000
  • 2e3e75d049 Fixing compile problems with c++11 introduced in r5564. cutealien 2017-11-06 14:39:37 +0000
  • 9c0cd04730 Add _IRR_COMPILE_WITH_PARTICLES_ to control compilation of particle system cutealien 2017-11-06 14:18:17 +0000
  • f37045af53 Fix: No longer adding CLOWMeshFileLoader code to library when _IRR_COMPILE_WITH_LWO_LOADER_ is not set. cutealien 2017-11-06 13:32:32 +0000
  • 6e5b2c5978 Make all getter in IAttribute const. I'm not sure really why attributes even have all the type conversion functions. I wonder if we could replace all that stuff by IAttribute with a single get and set and a template parameter? cutealien 2017-11-04 19:50:43 +0000
  • a03af926e9 Add IGUIImage::setDrawBackground to allow disabling background drawing even when no texture is set. I considered also adding more flags to allow background drawing when a texture is set, but couldn't really find a good use-case for that, so keeping it simple (also that case could be done otherwise with a second element and disabling background drawing for top-element completely). cutealien 2017-11-03 22:34:46 +0000
  • 99f957efe9 Update documentation. cutealien 2017-11-03 21:42:16 +0000