207 Commits
Author SHA1 Message Date
proller f55e2f7e37 Merge tag '5.14.0-rc1' into wip5.14.0 2025-09-27 22:22:49 +02:00
y5nw 2eded3f078 Add missing IsWritable checks (#16504) 2025-09-21 21:12:42 +02:00
SmallJoker 39f2727503 IrrlichtMt: Add scrollbar support to CGUIEditBox 2025-09-20 13:44:40 +02:00
SmallJoker ecabcb5c58 IrrlichtMt: import scrollbar changes 2025-09-20 13:44:40 +02:00
SmallJoker 70fbef112c IrrlichtMt: Import code from guiEditBox.cpp
This does not include the scrollbar.
2025-09-20 13:44:40 +02:00
SmallJoker 2cab46280b IrrlichtMt: expose CGUIEditBox 2025-09-20 13:44:40 +02:00
SmallJoker 176cadc377 IrrlichtMt: Fix 2D texture rendering regression
Caused by 024e1d2.
2025-09-07 10:00:36 +02:00
SmallJoker 024e1d2d27 IrrlichtMt: Implement mip-mapping for RTTs (#16434)
This can be helpful to draw fonts memory-efficiently at varying scales.

Adds ETCF_CREATE_RTT_MIP_MAPS to generate mip-maps on request.
2025-09-04 18:58:23 +02:00
Lars Mueller 550b042076 Make bone interpolation work again 2025-08-24 19:01:35 +02:00
sfan5 079169612d Fix Irrlicht snprintf problems and UB in my_string_to_double 2025-08-24 19:01:18 +02:00
proller 5ab5402e5a Merge tag '5.13.0' into wip5.13.0
5.13.0
2025-08-19 18:06:57 +02:00
sfan5 6da927a548 Add more texture size limit checks
closes #16014
2025-08-14 12:33:35 +02:00
sfan5 b6065797ce Clarify some keycode names
fixes #16258
2025-08-14 12:33:35 +02:00
sfan5 b1cb5fcb9f Improve texture creation logging and checking 2025-08-08 13:42:36 +02:00
Lars a0547b3435 Fix non-SDL compilation on Linux after #16324 2025-08-02 14:53:13 +02:00
Lucas OH 93dd22b901 Clean up unused Forward Declarations (#16324) 2025-08-02 10:07:45 +02:00
sfan5 e8e5ef0369 Deleted unused parts of blitter 2025-07-16 11:42:21 +02:00
Lars Müller 23bf50a07c Document & extend testing for rotation conventions (#16200)
* Document Luanti rotation conventions
* Add test for setPitchYawRollRad (entity) rotation conventions
* Test and document that `vector.rotate` uses (extrinsic) Z-X-Y rotation order
2025-07-13 17:11:12 +02:00
Lucas OH ce2380b58e Include header files in CMake sources (#16297) 2025-07-12 13:23:35 +02:00
Lucas OH f71e1447c9 Fix downward shadows at time 12000 (#16326) 2025-07-12 13:23:17 +02:00
Lars Müller 61551cfc3a Remove irr namespace (#16309) 2025-07-09 10:35:52 +02:00
Lucas OH 51a453ca7b Formspec: Fix newline conversion on Windows (#16311)
Strings with CR+LF (\r+\n) were wrongly fixed into \r, which is enough to display them correctly, but the missing \n became important once the text was saved/reloaded.

By removing the \r instead of the \n, then the text is displayed correctly and saved correctly.
2025-07-06 22:10:51 +02:00
Lars Müller 08bc036311 Remove obsolete SMeshBuffer.h (#16308) 2025-07-03 17:32:35 +02:00
Miguel P.L 49f48e0a7c Update links and names in the documentation (#16153) 2025-06-22 22:04:42 +02:00
Lars Müller fde6384a09 Fix and clean up skeletal animation (#15722)
* Fix attachments lagging behind their parents (#14818)
* Fix animation blending (#14817)
* Bring back cool guy as another .x smoke test
* Add .x mesh loader unittest
* Do bounding box & matrix calculation at proper point in time
* Remove obsolete `SAnimatedMesh`
2025-06-01 23:21:35 +02:00
proller 632662281b Merge tag '5.12.0' into wip5.12.0
5.12.0
2025-05-25 04:18:27 +02:00
sfan5 1214a1d4a6 Refactor ITextureSource use in main menu (#16135) 2025-05-24 22:49:29 +02:00
Lars Müller 7ac5502fdf Fix handling of skinned meshes for nodes
Second try after the revert in 8a28339 due to an unexpected regression.

- Rigidly animated models (e.g. the glTF frog node) were not working correctly,
  since cloning the mesh ignored the transformation matrices.
  Note that scaling the mesh needs to occur *after* transforming the vertices.
- Visual scale did not apply to skinned models,
  as resetting the animation overwrote scaled vertex data with static positions & normals.
  For backwards compatibility, we now apply a 10x scale to static, non-glTF models.

We now do scale static meshes, as the bug that caused meshes not to be scaled was limited to skeletally animated meshes,
hence we ought not to reproduce it for skinned meshes that do not take advantage of skeletal animations (e.g. current MTG doors).

However, glTF models (e.g. Wuzzy's eyeballs) up until recently were always affected due to technical reasons
(using skeletal animation for rigid animation).

Thus, to preserve behavior, we:

1. Do not apply 10x scale to glTF models.
2. Apply 10x scale to obj models.
3. Apply 10x scale to static x or b3d models, but not to animated ones.

See also: #16141
2025-05-20 18:37:33 +02:00
9b2ee1dd5d Remove Irrlicht GUI gradients (#16015)
Co-authored-by: rollerozxa <rollerozxa@voxelmanip.se>
Co-authored-by: grorp <grorp@posteo.de>
2025-05-07 08:56:00 +02:00
Lars Müller f4285a59ac Purge some dead code (mostly Irrlicht) (#16111)
* Remove obsolete Irrlicht attributes system

* Remove dead GUI element types

* Remove some obsolete Irrlicht headers

* Fix some oopsies from d96f5e1
2025-05-04 16:31:44 +02:00
sfence 0bdd5f294e Make SDL2 default on macOS (#16039) 2025-05-02 21:28:13 +02:00
Lars Mueller 01e4395977 glTF: Clean up rigid animation 2025-04-26 16:15:05 +02:00
Lars Mueller 5113fcaedd Fix glTF reader not ignoring parent transforms for skinned meshes 2025-04-26 16:15:05 +02:00
Lars Mueller e1143783e5 Fix some (MSVC) compiler warnings 2025-04-20 20:49:10 +02:00
Lars Mueller 695d526764 Get rid of _IRR_OVERRIDE_ macro 2025-04-20 20:49:10 +02:00
Lars Mueller 5f1ff453c9 Replace _IRR_DEBUG_BREAK_IF with assertions 2025-04-20 20:49:10 +02:00
y5nw c1d2124102 SDL: Send events for X1 and X2 mouse buttons (#16025) 2025-04-20 20:20:33 +02:00
y5nw bf15036831 Show SDL version in the About tab (#16046) 2025-04-20 20:20:22 +02:00
sfan5 04e82749db Make ETLF_FLIP_Y_UP_RTT work for texture download on GLES 2025-04-15 21:42:47 +02:00
sfan5 cf07b56235 Expand workarounds for format inconsistency with BGRA8888 extension on GLES
fixes #16011
2025-04-15 21:42:47 +02:00
sfan5 a00b9cab36 Fix operator[] for vector2d and vector3d being potentially UB (#15977)
We don't have a C++ expert on hand, but taking a pointer to one member
and expecting to access another by an offset is very fishy:
- for one, there could theoretically be padding
- the compiler might assume that we are only writing to that first member

The new code has shown to be free for constant parameter values.
Non-constant ones cause the assembly to have branches (why?), but we don't
use that much.
2025-04-08 22:25:45 +02:00
sfan5 46db688cc8 Implement support for array textures in GL driver
note: feature detection was not implemented in the legacy driver, but the code itself probably works.
2025-04-08 22:24:37 +02:00
sfan5 d5bf094f9a Prefer immutable texture storage when available 2025-04-08 22:24:37 +02:00
sfan5 427a7e4998 Split texture initialization code from upload 2025-04-08 22:24:37 +02:00
sfan5 9ff07df45e Fix GLES texture download to handle mipmaps and cubemap type 2025-04-08 22:24:37 +02:00
sfan5 38c3876c4e Drop support for storing mipmap data alongside IImage 2025-04-08 22:24:37 +02:00
sfan5 03affa1bbb Some minor code cleanups 2025-04-08 22:24:37 +02:00
Lars Müller a3648b0b16 Add spatial index for objects (#14631) 2025-04-08 08:44:53 +02:00
sfan5 785c042f1f Drop gzip support from CZipReader
This allowed reading concatenated gzip-compressed files as if they were an archive.
Aside from being generally uncommon we literally don't need this.
2025-03-30 18:17:19 +02:00
sfan5 89e3bc8d56 Improve std::hash<SMaterial> implementation 2025-03-30 18:17:19 +02:00