Commit Graph

  • 849336343d Merging r6519 through r6561 from trunk to ogl-es branch svn-ogl-es cutealien 2023-10-16 21:17:56 +0000
  • 614308e19c Merging r6555 through r6560 from branch releases/1.8 to trunk - Fixing buffer overflow in tga loader cutealien 2023-10-16 20:59:41 +0000
  • e5c8a75d40 Document deviant ITexture::lock behaviour for EDT_SOFTWARE drivers Software driver sometimes works with original image (in 2D) and sometimes with POT version of the image (in 3D). That is probably useful so it can draw the UI in best quality while having relative fast 3D. The problem is that lock() only returns one data - so it decided to return the original data and then in unlock it updates the other data. But lock() data usually depends on getSize() so using EDT_SOFTWARE like other drivers causes crashes. Not sure what the best solution here would be (maybe more flags or more lock functions?), so I just document the deviating behaviour and leave it as is. cutealien 2023-10-15 21:38:06 +0000
  • 631c0fa77b Add warning about rotateXZBy using right handed rotation Rest of Irrlicht is using left-handed rotatations. But 2d vector rotations all uses ccw which is kinda the same direction as this one if you consider those as rotations around Y, so I guess that was maybe the reason back then. cutealien 2023-09-26 21:31:35 +0000
  • 9813b460e1 Fix number overflows in TGA loader causing crashes Image size calculation could overflow s32 in one place (but not others where it was done correct), which first lead to wrong amount of memory getting allocated for image data and later crash in the CColorConverter. Thanks @sfan5 for his fuzzing tests @https://github.com/minetest/irrlicht/issues/236 and @erlehmann for passing them on: https://irrlicht.sourceforge.io/forum/viewtopic.php?t=52925 Also updating changes.txt with TGA loader changes from this and previous commits. cutealien 2023-09-23 19:01:01 +0000
  • 565f14677c Fix crash caused by memory overwriting in TGA loader caused by bad RLE data From sfan5's fuzzing test reported in Minetest here: https://github.com/minetest/irrlicht/issues/236 Was missing test if it writes beyond allocated memory which can be triggered by TGA's which lie in their RLE data. cutealien 2023-09-23 18:33:46 +0000
  • f53af0f2cf TGA images with palettes in 24 or 32 bit now create 32 bit images Was creating 16-bit images for those before. Could also support 24-bit images, but either we need another convert function or another palette for that (the 16 and 32 bit both work with 32 bit palettes, the 24 bit conversion function only with 24 bit palettes) cutealien 2023-09-23 17:08:43 +0000
  • 05ebc43222 Fix TGA's with bad palette colors reading from behind palette memory TGA's can claim to use less palette colors than they later do. We only support 8-bit palettes, so to make this safer lets just always allocate at least 256 bytes. Thanks @erlehmann for report and testcase: https://irrlicht.sourceforge.io/forum/viewtopic.php?p=307191 Based on Minetest bug report: https://github.com/minetest/irrlicht/issues/236 cutealien 2023-09-23 16:34:42 +0000
  • c01de80583 Merging r6511 through r6520 from branch releases/1.8 to trunk Note: Due to OSX always failing merge OSX it's rather applying a second patch from Ryan Schmidt from bugreport #462 to trunk (Not sure why svn merging always fails for OSX. Probably related to MacOSX files getting moved in the past. Was that done without svn move commands? I guess that can't be fixed anymore now) cutealien 2023-08-04 10:22:58 +0000
  • fbdc4ee8d5 Optimization in quaternion::rotationFromTo from Robert Eisele Turns out we can avoid a square root and a division. Patch comes even with proof: https://raw.org/proof/quaternion-from-two-vectors (I also tested it a while and indeed got same results) cutealien 2023-07-30 16:34:24 +0000
  • 2c086e5fdc Improve documentation What Irrlicht calls ShaderConstants is called uniforms by everyone else. So let's mention this at least. Also reworked setVertexShaderConstant interface had an example for the old interface in the header. cutealien 2023-06-12 19:26:43 +0000
  • 627a3a5172 Spelling fixes cutealien 2023-04-27 18:44:33 +0000
  • 01e05f3c94 Fix recently broken scroll behaviour of listbox with moveOverSelect This also fixes the combobox which users the listbox like that. This got broken in [r6454] which had fixed the events send out by the listbox Note: Still a bit strange behaviour when leaving the combobox at the bottom, but that was already that way in Irrlicht 1.8, so I've got to investigate that on it's own. cutealien 2023-04-19 15:17:39 +0000
  • b673a4b2bb Tiny spelling fixes cutealien 2023-04-16 21:52:36 +0000
  • 5e01152f56 Avoid warning in VS 2022 cutealien 2023-04-11 13:19:12 +0000
  • c2dd664fc6 CIrrDeviceWin32::yield() now uses Sleep(0) instead of Sleep(1). We had changed that once before in the other direction in svn r421 Reason back then was "Sleep(0) doesn't allow any lower priority threads to execute" But Microsoft changed the behaviour of Sleep(0) after Windows XP so that's no longer true. And the costs of it is pretty high - due to this using a timer with a 15ms resolutions it meant not just giving up the thread but it also always waited for 15ms on Windows. I also replaced a few sleep calls in examples for that reason with yield() calls. cutealien 2023-04-03 15:32:41 +0000
  • 774d3d6d2b Spelling fixes cutealien 2023-04-01 15:50:08 +0000
  • e1f41edd29 Spelling fixes cutealien 2023-03-31 13:12:47 +0000
  • c766c3a023 Fix character encoding conversion issues Gregor Parzefall 2023-10-05 17:55:55 +0200
  • 93eebed8c9 Unify documentation between IOSOperator and COSOperator Gregor Parzefall 2023-10-05 17:52:58 +0200
  • 645b51a34d OpenGL3: Use std::vector in VertexType instead of clever lifetime games numzero 2023-10-11 19:40:49 +0300
  • bcc53e1e1a OpenGL3: Make sure mt_opengl is only included after GLAPI is defined numzero 2023-10-07 20:26:48 +0300
  • d4735ebc76 OpenGL3: Replace direct calls into libGL with mt_opengl numzero 2023-10-07 19:47:16 +0300
  • 063079b372 OpenGL3: Make VertexType reference and not store the attribute list numzero 2023-10-07 20:30:18 +0300
  • 3b198bdfda OpenGL3: Fix noexcept mismatch numzero 2023-10-07 19:57:40 +0300
  • f06347c8b7 Load top-down bmp images correctly Previously we handled all sizes as unsigned, but Windows BMP files can have negative height to signal top-down images. No clue about left-right (would be trivial to swap as well, but found no info so far if that would be correct) cutealien 2023-10-05 21:04:55 +0000
  • 5b2f1927d0
    Revert #225 (d98dc90b3808335a54b3ab7fe10f177148423942) Gregor Parzefall 2023-10-04 23:29:59 +0200
  • 9954667c45
    Cleanup line endings (#245) Vitaliy 2023-10-03 21:37:00 +0300
  • 099f83c023 Fix compiler warning in COBJMeshFileLoader Caused by recent patches for 1.8 - which still had different parameter types in IReadFile::read cutealien 2023-10-03 15:55:45 +0000
  • 857c75f37d Merging r6555 from branch releases/1.8 to trunk - Fixing buffer ovverread in CXMeshFileLoader (sfan5 patch) cutealien 2023-10-03 15:21:39 +0000
  • b6e9202272 Merging r6551 through r6553 from branch releases/1.8 to trunk All about bounds checks and preventing buffer overruns in b3d and obj files based on sfan5 patches for Minetest cutealien 2023-10-03 15:08:40 +0000
  • b93dac3ee1 Merging r6547 from branch releases/1.8 to trunk Just updating changes.txt (stuff got backported, so changes are now mentioned in 1.8.6 instead of 1.9) cutealien 2023-10-03 12:56:33 +0000
  • 7fd0f2b1fb COBJMeshFileLoader: Avoid memory leak when handling files with invalid vertex indices Thanks @sfan5 for report and patch Was part of the Minetest commit 80e1609 patch which was applied earlier (couldn't apply this with the rest as the rest could be fixed in Irrlicht 1.8, while this one is about new Irrlicht 1.9 code) cutealien 2023-10-02 21:49:08 +0000
  • 5a6e8c9d65 Merging r6522 through r6546 from branch releases/1.8 to trunk - Fixing buffer overflows in bmp and obj loaders - Fixed loading of rle4 encoded bmp images cutealien 2023-10-02 21:42:40 +0000
  • ea1b58387e
    ComboBox API additions for minetest#13814 Gregor Parzefall 2023-09-30 16:46:30 +0200
  • d767d27ca8 CXMeshFileLoader: revise error checking sfan5 2023-09-18 21:40:13 +0200
  • 6f4f7c4d75 CXMeshFileLoader: fix buffer overreads with text format sfan5 2023-09-18 21:39:56 +0200
  • 103ab16679 CB3DMeshFileLoader: fix string read primitive sfan5 2023-09-18 22:32:05 +0200
  • 64688f4490 CB3DMeshFileLoader: add some bounds checks sfan5 2023-09-18 19:41:58 +0200
  • 827710f74a COBJMeshFileLoader: properly check indices sfan5 2023-09-18 22:08:55 +0200
  • 80e160935d COBJMeshFileLoader: fix buffer overruns sfan5 2023-09-18 19:27:28 +0200
  • 4506d23dc3 CImageLoaderBMP: add bound checks to RLE decompression sfan5 2023-09-18 15:17:46 +0200
  • 028cb8dbed CImageLoaderBMP: check bitmap data against required size sfan5 2023-09-18 15:17:14 +0200
  • a5c9945bb8 CImageLoaderBMP: fix palette overreads sfan5 2023-09-18 15:16:26 +0200
  • cd70803500 Add warning about rotateXZBy using right handed rotation Rest of Irrlicht is using left-handed rotatations. But 2d vector rotations all uses ccw which is kinda the same direction as this one if you consider those as rotations around Y, so I guess that was maybe the reason back then. cutealien 2023-09-26 21:31:35 +0000
  • cfb73d07d7 Remove more obsolete files numzero 2023-09-23 11:09:39 +0300
  • 87f7cf3438 Drop unused resource script numzero 2023-09-23 11:00:33 +0300
  • ebe4fd0a59 Refer to the origins in README numzero 2023-09-23 09:57:58 +0300
  • fc7e3f2dff Move license to the root numzero 2023-09-20 22:45:08 +0300
  • b0a070d980 Drop Irrlicht icon numzero 2023-09-20 22:44:50 +0300
  • d9216362ec Drop obsolete docs numzero 2023-09-20 22:44:43 +0300
  • 298623541b Fix number overflows in TGA loader causing crashes Image size calculation could overflow s32 in one place (but not others where it was done correct), which first lead to wrong amount of memory getting allocated for image data and later crash in the CColorConverter. Thanks @sfan5 for his fuzzing tests @https://github.com/minetest/irrlicht/issues/236 and @erlehmann for passing them on: https://irrlicht.sourceforge.io/forum/viewtopic.php?t=52925 Also updating changes.txt with TGA loader changes from this and previous commits. cutealien 2023-09-23 19:01:01 +0000
  • 9f48103263 Fix crash caused by memory overwriting in TGA loader caused by bad RLE data From sfan5's fuzzing test reported in Minetest here: https://github.com/minetest/irrlicht/issues/236 Was missing test if it writes beyond allocated memory which can be triggered by TGA's which lie in their RLE data. cutealien 2023-09-23 18:33:46 +0000
  • 74d3a9967f TGA images with palettes in 24 or 32 bit now create 32 bit images Was creating 16-bit images for those before. Could also support 24-bit images, but either we need another convert function or another palette for that (the 16 and 32 bit both work with 32 bit palettes, the 24 bit conversion function only with 24 bit palettes) cutealien 2023-09-23 17:08:43 +0000
  • 811a9f3463 Fix TGA's with bad palette colors reading from behind palette memory TGA's can claim to use less palette colors than they later do. We only support 8-bit palettes, so to make this safer lets just always allocate at least 256 bytes. Thanks @erlehmann for report and testcase: https://irrlicht.sourceforge.io/forum/viewtopic.php?p=307191 Based on Minetest bug report: https://github.com/minetest/irrlicht/issues/236 cutealien 2023-09-23 16:34:42 +0000
  • e81038237b Add some comment that camera FOV is vertical Parameter already called fovy, but shouldn't hurt to mention it twice cutealien 2023-09-23 14:24:36 +0000
  • 7ff82528f3 Unify matrix4::buildProjectionMatrixPerspectiveFov functions We had 4 near identical functions, those now all call buildProjectionMatrixPerspectiveFov They were a bit hard to check for errors otherwise. Especially with the tiny confusing non-differences like one using (a-b) and other -(b-a) Also new one uses matrix template parameter in case someone needs for example a high-precision matrix. cutealien 2023-09-22 16:06:40 +0000
  • d8a21cb25f Drop unused CIndexBuffer numzero 2023-09-20 21:02:16 +0300
  • 9c54d927b9 Drop unused CVertexBuffer numzero 2023-09-20 20:45:35 +0300
  • 275e152523 v2 afl sfan5 2023-09-18 17:13:32 +0200
  • 4ca90e3dfd afl-fuzz sfan5 2023-09-17 23:40:31 +0200
  • b89455f385 Build OpenGL3 by default numzero 2023-07-02 21:35:58 +0300
  • 6a5fceb8fd Hide OpenGL3 behind SDL2 (it won’t build otherwise anyway) numzero 2023-07-02 21:35:11 +0300
  • 0b9ee5884f Fix Android build after #231 Gregor Parzefall 2023-09-17 20:28:53 +0200
  • 679dfd3343 Fix CNullDriver::removeTexture() segfault sfan5 2023-09-13 14:40:39 +0200
  • f9d7a632f5 CI: Add MinGW builds with SDL sfan5 2023-09-13 13:17:24 +0200
  • dc43583a2c CI: Merge 32- and 64-bit MinGW builds numzero 2023-07-02 22:21:47 +0300
  • 03fd4ff533 Remove unused IVideoDriver::getTextureByIndex and IVideoDriver::renameTexture Desour 2023-09-13 11:20:51 +0200
  • b7292226b4 Remove the unnecessary sort in CNullDriver::addTexture Desour 2023-09-13 11:26:14 +0200
  • 7298b46504 Use binary search in CNullDriver::removeTexture() sfan5 2023-09-13 12:33:50 +0200
  • af20d9ff86 Remove deprecated function transformBox Caleb Butler 2023-09-03 19:22:37 -0400
  • 00dd1f8ef3 Remove deprecated functionality of SMaterial Caleb Butler 2023-09-03 19:10:03 -0400
  • 364cb37698 Remove deprecated methods from IVideoDriver Caleb Butler 2023-09-03 18:39:07 -0400
  • 7ce9169d8d Remove deprecated method getOperatingSystemVersion Caleb Butler 2023-09-03 18:17:27 -0400
  • ebdb2e410b Remove deprecated member functions of IMeshCache Caleb Butler 2023-09-03 18:10:12 -0400
  • a28b8f9e91 Remove deprecated member functions Caleb Butler 2023-09-03 18:04:58 -0400
  • 6cd27d5dca Remove deprecated IImage member functions Caleb Butler 2023-09-03 17:58:01 -0400
  • 04ab99f218 Removes deprecated function getNumber Caleb Butler 2023-09-03 17:50:15 -0400
  • d753c8b782 Remove deprecated functions related to FileSystem Caleb Butler 2023-09-03 17:32:12 -0400
  • 6a3ed6428f Remove deprecated getBoneName method Caleb Butler 2023-09-03 17:25:54 -0400
  • 3492fd0d2d Remove primitive types not supported in OpenGL 3+ Caleb Butler 2023-09-03 17:18:43 -0400
  • c6b06533f3
    Deduplicate KP_5 from KP_HOME Kai Giebeler 2023-09-01 15:54:55 +0200
  • e609f5f263 Remove leftovers from D3D sfan5 2023-09-01 12:36:33 +0200
  • ddecc0fae2 Inline a pointless function sfan5 2023-09-01 12:26:43 +0200
  • dd3a34d674 Remove unused (I)Timer methods sfan5 2023-09-01 12:22:27 +0200
  • 0735220f86 Suppress a -Wunused-but-set-variable warning Desour 2023-08-29 14:58:28 +0200
  • 0740d055ac Fix uninitialized memory error in operator- for ustring16 iterators Desour 2023-08-29 14:14:14 +0200
  • 1d4672bd92 Remove the now unused SMaterialLayer::setFiltersMinetest method Gregor Parzefall 2023-08-24 12:25:41 +0200
  • c602a39598 Enable MultiProcessorCompilation in VC17 project file No reason to not have several times faster build-times cutealien 2023-08-17 10:12:28 +0000
  • ef3bab610d CIrrDeviceLinux: Fix type for NET_WM_PID XChangeProperty Jessica Clarke 2023-08-15 17:47:03 +0100
  • bd4ce386a2 Clean-up include dependencies (video namespace) cutealien 2023-08-15 18:42:05 +0000
  • ce1cdd2543 Clean-up include dependencies (scene namespace) cutealien 2023-08-14 22:01:22 +0000
  • f83697d0bb Clean-up include dependencies Files in irr namespace Also some spelling fixes cutealien 2023-08-14 20:38:23 +0000
  • 80ce85ecc2 Clean-up include dependencies in gui and io modules cutealien 2023-08-13 20:19:25 +0000
  • 1d58677e18 Clean up include dependencies in public headers Removing includes which were not needed by headers Note that if you include those headers directly (instead of including irrlicht.h) you may have to add some new includes now. Thought I generally tried to avoid removing headers where it leads to too much changes in user-code Reason was mainly that IntelliSense in VisualStudio 17.7 added a new feature which shows those unused headers :) Has to be used a bit careful as it doesn't know about defines and other platforms And I only did clean up public headers so far (will probably do some more later or another time) cutealien 2023-08-13 15:31:42 +0000
  • dc6d89a170 Fix compiling example 21 Somehow was broken since fixing the spelling of tessellation and never noticed cutealien 2023-08-13 15:25:54 +0000
  • e2a742e2fc Fix compile error with OS X 10.10 SDK, bug #463 Thanks @Ryan Schmidt for report and patch: https://sourceforge.net/p/irrlicht/bugs/463 cutealien 2023-08-04 15:46:17 +0000
  • 2149bfb317 Merging r6511 through r6520 from branch releases/1.8 to trunk Note: Due to OSX always failing merge OSX it's rather applying a second patch from Ryan Schmidt from bugreport #462 to trunk (Not sure why svn merging always fails for OSX. Probably related to MacOSX files getting moved in the past. Was that done without svn move commands? I guess that can't be fixed anymore now) cutealien 2023-08-04 10:22:58 +0000
  • e9c494503d Merging r6493 through r6517 from trunk to ogl-es branch cutealien 2023-08-03 19:12:11 +0000
  • 03fc9c73b5 Add missing word in changes.txt cutealien 2023-08-03 19:09:22 +0000