Commit Graph

69 Commits

Author SHA1 Message Date
Lars Mueller
d8274af670 Refactor global inversed matrix usage (+ minor fix)
Thanks to GreenXenith and Josiah for spotting a bug here
2024-10-10 21:39:57 +02:00
Lars Mueller
224066c1d3 Implement glTF texture wrapping support 2024-10-10 21:02:05 +02:00
Lars Mueller
2fee37f31b Fix gltf / glb loader oversights
- Avoid an unnecessary copy
- Reject models requiring extensions

Co-authored-by: DS <ds.desour@proton.me>
2024-10-10 21:02:05 +02:00
Lars Mueller
521e678d39 Add binary glTF (.glb) support 2024-10-10 21:02:05 +02:00
Lars Mueller
7e4919c6ed Refactor matrix4.h
Sets the surprising row-major conventions used here straight.

Renames rotateVect to rotateAndScaleVect:
If the matrix also scales, that is applied as well by the method.
Obsolete rotateVect variants are removed.
The inverseRotateVect method is also renamed accordingly.
Note that this applies the transpose of the product
of the scale and rotation matrices, which inverts just the rotation.
2024-10-10 17:40:31 +02:00
grorp
f5076723e8 Android: Fix camera jump when switching to mouse mode
Easy way to reproduce:

1. Connect a bluetooth mouse to your Android phone with Minetest installed
2. Play Minetest
3. Slowly move the mouse to the right so that the camera rotates continously
4. While still moving the mouse continously, tap the screen a few times per second

Before this commit: The camera jumps around randomly.
After this commit: The camera moves like it should.

This is a combination of two Irrlicht changes copied from MoNTE48/irrlicht
and one Minetest change authored by me. I have no idea why this works, but
it does work and I have spent way too much time on this bug already.
2024-10-09 18:26:19 +02:00
grorp
4952f17df4 Auto-toggle TouchControls in-game when receiving touch/mouse input 2024-10-09 18:26:19 +02:00
sfan5
3c5f05b284 Don't expose irrlicht internal headers as public 2024-10-09 16:25:02 +02:00
swagtoy
05cbd84ae0
Fix irrString use-after-free with char-like assignment (operator=) 2024-10-04 10:45:09 +02:00
grorp
3eef1ca28f
Fix incorrect SMaterial::operator!= (regression from #15165) (#15226) 2024-10-03 11:37:14 +02:00
swagtoy
c6fc694ea6
Fix deletePathFromFilename returning cutoff filenames (#15211) 2024-09-30 22:41:53 +02:00
Desour
e3efaa1733 Move irr_ptr.h too irr/include/ 2024-09-18 12:19:40 +02:00
grorp
70e169f165
Drop fixed pipeline lighting stuff (#15165) 2024-09-18 12:18:28 +02:00
sfan5
58ea11c2b3 Add some debug helpers around this area 2024-09-16 23:12:52 +02:00
sfan5
6f275e2ba0 Remove dead code in COpenGL3MaterialBaseCB 2024-09-16 23:12:52 +02:00
DS
4aec4fbe6f
Add support for Tracy profiler (#15113) 2024-09-15 13:47:45 +02:00
Gregor Parzefall
2208fc0632 Move Minetest GUISkin -> Irrlicht CGUISkin 2024-09-08 13:53:33 +02:00
Gregor Parzefall
c8ebc2e5d0 Delete Irrlicht CGUISkin 2024-09-08 13:53:33 +02:00
sfan5
3feec87d52 Count global number of drawcalls too 2024-09-08 13:53:23 +02:00
sfan5
e90ef85e7d Fix texture matrix handling in our shaders 2024-09-07 14:23:37 +02:00
sfan5
e55fb6da71 Mark a bunch of classes as final 2024-09-02 21:50:13 +02:00
sfan5
3fb4049612 Prevent accidentally copy/move of refcounted objects 2024-09-02 21:50:13 +02:00
sfan5
62131fe295 Put all pieces together and clean up leftover code 2024-09-02 21:50:13 +02:00
sfan5
6b7fc1e9fe Handle vertex & index VBOs separately in GL drivers 2024-09-02 21:50:13 +02:00
sfan5
be9aa19208 Propagate changes to IMeshBuffer parent class 2024-09-02 21:50:13 +02:00
sfan5
435a89b5a4 Apply same changes to SSkinMeshBuffer 2024-09-02 21:50:13 +02:00
sfan5
47e4c33a50 Split CIndexBuffer from CMeshBuffer 2024-09-02 21:50:13 +02:00
sfan5
5d6e15bc49 Split CVertexBuffer from CMeshBuffer 2024-09-02 21:50:13 +02:00
JosiahWI
ac11a14509
Add static glTF support (#14557)
Co-authored-by: Lars Mueller <appgurulars@gmx.de>
Co-authored-by: jordan4ibanez <jordan4ibanez@users.noreply.github.com>
Co-authored-by: sfan5 <sfan5@live.de>
Co-authored-by: SmallJoker <SmallJoker@users.noreply.github.com>
2024-09-02 14:50:30 +02:00
red-001
43363ee066
Disable CRT security warnings in MSVC (#15077)
MSVC by default warns if Annex-K style secure functions with additional parameter validation are not used. For better or worse, afaik other major compilers don't implement it, so it's not a very useful warning for a cross-platform project.
2024-08-31 20:47:29 +02:00
SmallJoker
efd7792add
Debloat IVideoDriver and IrrlichtDevice includes (#15080)
As the project grows, compile time will not go down unless the header mess
is cleaned up one by one to only include exactly what's needed.
2024-08-31 11:44:30 +02:00
sfan5
bf4d31227b
Delete OpenGL ES 1.0 driver (#15067) 2024-08-28 20:44:42 +02:00
sfan5
fa4529b4f1 Keep stats on hw buffer uploads 2024-08-28 15:38:02 +02:00
sfan5
b010714426
[no sq] Move shaders & remove dead Irrlicht tests (#15006)
* Move irrlicht shaders to correct place

* Remove unused Irrlicht tests
2024-08-19 09:17:52 +02:00
cx384
03e600a721 Fix whitespaces 2024-08-17 21:02:54 +02:00
sfan5
5d226268df
Irrlicht cleanups (mostly getting rid of core::array)
Co-authored-by: Lars Müller <34514239+appgurueu@users.noreply.github.com>
2024-08-17 19:49:11 +02:00
Dmitry Marakasov
a677d33bdf Include unistd.h for getpid() when _IRR_COMPILE_WITH_X11_ 2024-08-13 18:38:59 +02:00
y5nw
a3838dd0e8
Show IME candidate list in Windows (#14942) 2024-08-12 15:34:37 +02:00
1F616EMO~nya
53a50e0b0d
Fix warning about getVertexTypeDescription reaching its end (#14806) 2024-08-12 15:34:25 +02:00
rubenwardy
c6c2c4f60f
Revert "Disable SDL2 for 5.9.0 (#14944)" (#14959)
This reverts commit ebaf3c8d77e5240b505b7e7b0c05a769e44d8e0e.
2024-08-11 20:18:11 +02:00
rubenwardy
ebaf3c8d77
Disable SDL2 for 5.9.0 (#14944)
See #14545 and https://forum.minetest.net/viewtopic.php?t=30864
2024-08-11 13:27:41 +01:00
Francesco Gazzetta
10fd41b4a8
Take screenshot from back buffer when using double buffering (#14904)
Fixes #14901 (black screenshots on Wayland)
2024-08-04 18:40:21 +02:00
JosiahWI
ac284e61b4
Clean up MSVC warnings in CIrrDeviceSDL.{h,cpp} (#14872)
The only changes are to add a number of `static_cast`s to make implicit
type conversions explicit.
2024-07-27 18:28:54 +02:00
Yoruma
682b789dd5
Fix variable use-without-initialization error in MSVC debug build 2024-07-22 16:32:50 +02:00
1F616EMO~nya
b03e9ef1c7
Set SDL_HINT_APP_NAME to Minetest (#14862)
* Set SDL_HINT_APP_NAME to Minetest

* Check for SDL version

* Re-run docker-image check
2024-07-19 13:22:42 +02:00
grorp
9a1501ae89
CIrrDeviceSDL: Fix numpad key events not having correct KeyInput.Char (#14780)
Allows you to change viewing range using numpad +/- again. This fix also works with the current unreleased version of SDL 3.

The keycodes for numpad keys (both SDL keycodes and Irrlicht keycodes) are not the same as the keycodes for the equivalent non-numpad keys and don't correspond to chars, so I mapped them to chars manually.

Since I think the resolution of https://github.com/minetest/minetest/issues/13770 was "just disable numlock", I made sure to only do this for the numpad number keys if numlock is enabled.
2024-06-27 14:44:44 +02:00
grorp
4c001bd248
Make button sprites (scrollbar arrows) DPI-aware (#14772) 2024-06-26 15:25:27 +02:00
grorp
a9cca5e76c
SDL2: Support highdpi (#14703)
and handle DPI changes at runtime
2024-06-16 17:49:42 +02:00
grorp
85878d894a
Android: Fix back button sometimes not working as ESC (#14743) 2024-06-11 22:37:57 +02:00
sfan5
3539af7d77 Set some useful SDL hints
fixes #14596
2024-06-10 18:49:43 +02:00