b93be7c49cAdd 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
957d34ff0eSwitch Irrlicht to 8 textures per Material as default by increasing value of _IRR_MATERIAL_MAX_TEXTURES_.
cutealien
2019-01-17 15:34:57 +0000
60b295bcdbCan'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
abd0fa9decFix several problems with SMaterial serialization. SMaterial.ZWriteFineControl only using 1 bit now.
cutealien
2019-01-17 14:19:18 +0000
f34b03f4bdAdd 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
a70e6ce6e7Create pdb file also in release.
cutealien
2019-01-16 21:01:27 +0000
b737b425baChecking 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
91247910b8No longer overwrite memory when compiling with _IRR_MATERIAL_MAX_TEXTURES_ set to a value > 8
cutealien
2019-01-16 18:22:04 +0000
f16f173fcbsetMaterial no longer changes texture-matrices in GL and D3D9 when no texture-pointer is set.
cutealien
2019-01-11 18:26:04 +0000
07e458c643OpenGL 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
c7a766c290Get rid of compile warnings in CAnimatedMeshHalfLife.cpp
cutealien
2019-01-02 11:44:43 +0000
7f60d679ccRemove .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
2c7871d2f4Fix 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
f4cce65ab1Reset 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
b3e9af5722Add IMaterialRenderer::getShaderConstantSetCallBack to allow access to user provided shader callbacks.
cutealien
2018-12-01 15:55:32 +0000
386cbffe9aNo 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
8f2eb13099Allow 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
b584c39295ITexture::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
343924adb7Add IVideoDriver::addTextureCubemap function to create an empty cubemaps.
cutealien
2018-11-22 14:40:34 +0000
05a05b75d1Enable 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
7873503041Fix test "renderTargetTexture" Was using wrong parameter order when setting the rendertarget.
cutealien
2018-11-19 21:50:24 +0000
665324b6a8Switch 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
c5e36eb111Minor 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
a2e744faa5Add current values as default values in serialization of several GUI elements.
cutealien
2018-11-10 14:09:49 +0000
fb7e234561Add 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
57949584edAdd 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
bc525f5dccFix ITexture::lock for D3D9Texture with RTT cubemaps.
cutealien
2018-11-09 13:59:13 +0000
3b7216ed7cBugfix: 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
243c124d85Try 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
8518f3bd2cRevert 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
c8ec2d3e05Added 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
8868d47688Fix 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
01de5276aeFix 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
10a3f02aa6Try 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
0c57deec15Simplify code (getAttributeAsBool didn't have default-paramters in the past).
cutealien
2018-07-24 20:13:16 +0000
09767f2541Merge 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
f6202b9e7bUpdate Windows version info slightly (at least tell it's Windows 8 or above).
cutealien
2018-07-19 20:22:40 +0000
2b4ec38555Fix compile error on gcc. Thanks @AReichl for reporting.
cutealien
2018-07-13 10:14:48 +0000
b795ba324bAdd support for cubemap rendertarget textures on D3D9. (OpenGL still needs to be done). Example will follow.
cutealien
2018-07-12 19:19:11 +0000
f41aad6c6dNo longer try to restore RTT's with a lost device.
cutealien
2018-07-04 17:56:38 +0000
f873cd7916Do no longer release DepthStencilSurface always in D3D9 device and then still work with it.
cutealien
2018-07-04 17:50:34 +0000
7942f3dae6Set 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
32c532ee36Log parameters when CreateTexture call in CD3D9Texture::generateRenderTarget fails.
cutealien
2018-06-29 10:34:58 +0000
7442e24dedSimplify code (no need to keep scroll-bar width in extra variable here).
cutealien
2018-06-17 19:46:40 +0000
2246895ae1CGUIComboBox 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
9d315a9354CGUIListbox, 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
8f3b9e6c6aNo 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
609a6474f0Prevent 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
a7a90ff191Add IVideoDriver::swapMaterialRenderers to allow swapping the renderer used to render a certain material.
cutealien
2018-05-17 15:04:43 +0000
63ec10d099Adding documentation about the way tangents/binormals are passed to shader.
cutealien
2018-05-16 21:23:05 +0000
144123beabIMeshManipulator 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
1d99bd8ff2PLY 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
fb39389bb8STL 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
2757651d10Improved 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
c422dcbe4dDocument 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
95e4f04796Example 09 can load russian filenames again on Linux.
cutealien
2018-05-01 21:40:39 +0000
69787af02dAdd 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
f02f226712Fix 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
30c123214eImprove documentation about ECF_A8R8G8B8.
cutealien
2018-02-06 20:12:30 +0000
d276dcc9f2Fix type conversion warning.
cutealien
2017-12-31 20:43:45 +0000
803250affcFix 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
c4247febe5IImage::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
c0f0b50915Remove '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
78f19c621bRename 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
6a05db3a0aPrevent some compiler warnings when using clang.
cutealien
2017-11-28 21:54:18 +0000
fc1b290951Fix a few places which called the driverType a deviceType (variable-names and documentation).
cutealien
2017-11-22 17:09:56 +0000
42958c233aMove E_TEXTURE_TYPE enum from IImage.h to ITexture.h
cutealien
2017-11-22 17:02:55 +0000
164aeb5831Get 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
e6cf90d594The 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
826aaf10caRemove _ITERATOR_DEBUG_LEVEL=0 also in the static-lib debug properties in VS 2017 project.
cutealien
2017-11-17 13:52:13 +0000
0de6f04378Fix solution name. Switch rest of targets to v141.
cutealien
2017-11-17 13:34:51 +0000
556eb4c95fRemove _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
1b0e050d90Add VS2017 project files + solution for library (not yet done for examples & tools).
cutealien
2017-11-16 13:28:33 +0000
340510629fFix spelling in warning.
cutealien
2017-11-10 14:19:52 +0000
00d79992a0Add entry for ECF_UNKNOWN to ColorFormatNames.
cutealien
2017-11-09 21:11:09 +0000
413a5b2504Add 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
7a87a77a8aDocument 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
51172244edRemove unused functions CNumbersAttribute::isNumberList and CNumbersAttribute::isFloat.
cutealien
2017-11-06 17:26:39 +0000
78572df3f1Use index notation instead of row/column notation in CMatrix4::getInverse as in other matrix functions.
cutealien
2017-11-06 16:59:10 +0000
2e3e75d049Fixing compile problems with c++11 introduced in r5564.
cutealien
2017-11-06 14:39:37 +0000
9c0cd04730Add _IRR_COMPILE_WITH_PARTICLES_ to control compilation of particle system
cutealien
2017-11-06 14:18:17 +0000
f37045af53Fix: No longer adding CLOWMeshFileLoader code to library when _IRR_COMPILE_WITH_LWO_LOADER_ is not set.
cutealien
2017-11-06 13:32:32 +0000
6e5b2c5978Make 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
a03af926e9Add 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