Commit Graph

536 Commits

Author SHA1 Message Date
sfan5
a7dd075dec Mark some common constructors and other stuff as constexpr 2024-03-09 22:05:06 +01:00
sfan5
1e89db1b80 Consistently include C headers by their C++ wrapper 2024-02-25 22:10:04 +01:00
sfan5
44a368ef0e Migrate public headers to #pragma once 2024-02-25 22:10:04 +01:00
sfan5
7ddf740f9b Remove unused includes in public headers 2024-02-25 22:10:04 +01:00
ROllerozxa
2bbfa178ea
Don't link against SDL2main (#265) 1.9.0mt15 2024-02-23 22:44:16 +01:00
sfan5
61682104df COpenGLCoreTexture: fix abort when format not supported 2024-02-23 21:31:33 +01:00
sfan5
46542793d6 OpenGL: Fix BGRA format mapping 2024-02-23 21:31:33 +01:00
sfan5
9f2d13a2b6 OpenGL: Print more debug info at init time 2024-02-23 21:31:33 +01:00
sfan5
602a4050b5 Adjust CI vcpkg run package installation 2024-02-23 21:31:33 +01:00
sfan5
54de743641 Workaround for too old GL header on older SDL versions
Problem: Since the removal of !_IRR_OPENGL_USE_EXTPOINTER_ we require some quite recent
symbols to compile the legacy GL driver. (*) Since the previous commit we prefer including
them via SDL but those are sometimes too old.

(*) This was in fact always a problem since USE_EXTPOINTER is the default.
    I guess people just had recent enough headers usually.
2024-02-23 21:31:33 +01:00
sfan5
3e8d8440e3 Vendor GL headers again
primary reason:
The unified GLES2 driver requires OpenGL headers (really), which Android does not provide.
2024-02-23 21:31:33 +01:00
sfan5
8189b2338a Remove now unused legacy OGLES2 driver 2024-02-23 21:31:33 +01:00
sfan5
0a77ef5dc2 Enable unified driver with all devices 2024-02-23 21:31:33 +01:00
sfan5
19f0f707a6 Use ContextManager to resolve symbols in GL driver 2024-02-23 21:31:33 +01:00
sfan5
83998f7471 Reduce OGLES extension array to ones actually used 2024-02-23 21:31:33 +01:00
sfan5
b7bb4b5958 Remove all !_IRR_OGLES1_USE_EXTPOINTER_ code 2024-02-23 21:31:33 +01:00
sfan5
f28e442bfa Drop all !_IRR_OGLES2_USE_EXTPOINTER_ code 2024-02-23 21:31:33 +01:00
sfan5
4cd5c3489e Drop all !_IRR_OPENGL_USE_EXTPOINTER_ code 2024-02-23 21:31:33 +01:00
sfan5
52e4d72ae2 Migrate OpenGL cache and texture handler to GL pointers
this makes the OpenGL 3 driver free of GL symbol references!
2024-02-23 21:31:33 +01:00
sfan5
7241a49566 Compile at least one CI build as debug 2024-02-23 13:19:23 +01:00
Muhammad Rifqi Priyo Susanto
2db8c8728e Missing value_or() when printing std::optional 2024-02-23 13:17:41 +01:00
paradust7
270b2bec6e Ensure that std::abs is used and not integer abs 2024-02-21 23:25:52 +01:00
sfan5
c83f28431b Add API to delete shader materials 2024-02-21 21:53:38 +01:00
sfan5
e60921f0cb Drop old shader material functions
I'm not sure what these actually are, but the situation is the same as the last commit.
2024-02-21 21:53:38 +01:00
sfan5
92252f70d2 Drop low-level shader constant setters
These don't work on the modern drivers and are unused anyway.
2024-02-21 21:53:38 +01:00
sfan5
4e9d0db4be Delete a broken method
implementation commented out, lol?
2024-02-19 21:22:54 +01:00
SmallJoker
2bb2d3fe01
CFileSystem: Fix signed integer conversion on MinGW 2024-02-18 23:45:39 +01:00
sfan5
45ace61007 OpenGL: support scene::EHM_STREAM
the relevant enum value is defined in both gl3 and gles2
2024-02-18 22:43:25 +01:00
sfan5
89d0717779 Delete some dead code 2024-02-18 17:12:51 +01:00
sfan5
19819bd23a Reduce needless use of wchar / stringw 2024-02-18 17:12:51 +01:00
sfan5
2894d9ab03 Add debug output to GL shader loading 2024-02-18 17:12:51 +01:00
sfan5
e56605d7ce
Update README for new SDL status 2024-02-17 22:15:02 +01:00
HybridDog
f91be59811 Remove support for GL_POINT_SMOOTH and GL_LINE_SMOOTH antialiasing
These antialiasing techniques have been removed in OpenGL 3.1, they were often executed by the CPU, and Minetest does not use them.
The OpenGL wiki recommends that we do not use this functionality in our program.
https://www.khronos.org/opengl/wiki/Multisampling#Smooth_antialiasing
2024-02-17 22:04:01 +01:00
wsor4035
0069837920
Upgrade CI actions (#290)
* update ci package versions to resolve warnings
* fix bug with duplicate package names under msvc
2024-02-17 21:07:25 +01:00
sfan5
ad96fabe4a Remove mistaken code block from OGLES1 driver
Version can never be 200 here, this was probably mistakenly copy-pasted from the OpenGL driver.
2024-02-17 21:01:15 +01:00
sfan5
6ba6118b8c Upgrade SDL CI to 22.04 everywhere
fed up with stuff not working for random reasons.
2024-02-16 22:42:49 +01:00
sfan5
7f11d2f950 Switch to llvm-mingw 2024-02-16 21:30:07 +01:00
sfan5
fe3e41e7ea Set minimum SDL version
It was determined that the touch/mouse hints only exist in this version.
Since it's from 2019 this should be a reasonable minimum.
2024-02-15 10:37:24 +01:00
sfan5
4478b1f1ec Remove old SDL Windows workaround
suggested by @waxtatect
2024-02-15 10:35:21 +01:00
sfan5
3992129735 Bind keypad enter on SDL
fixes https://github.com/minetest/minetest/issues/14170
2024-02-15 10:34:23 +01:00
Fatih Uzunoglu
0dab737d60 Do not use core::max_() with variable that can not be addressed
header struct is packed, and `core::max_()` takes the input as reference.
2024-02-12 16:31:10 +01:00
Fatih Uzunoglu
330150854b SDL: set default for ActiveIcon
getActiveIcon() may be called before ActiveIcon
is initialized, leading to undefined behavior.
2024-02-12 16:31:10 +01:00
y5nw
6779ac83f9
SDL: Improve handling of IMEs (#285)
* Set text input rectangle for IMEs
* Avoid unnecessarily "restarting" text input
2024-02-09 00:08:03 +01:00
Lars Müller
f1504093d1
Ensure that absent bone names work (#284) 2024-02-06 20:22:44 +01:00
sfan5
8482cc3db8 Adjust package config dependency again
Predictably, this broke dynamic linking setups where
SDL is not available at build-time (it doesn't need to be).
2024-01-30 14:23:33 +01:00
sfan5
a4f94b7656 Add missing dependency find to package config
refer to <https://cmake.org/cmake/help/latest/guide/importing-exporting/index.html#creating-a-package-configuration-file>
2024-01-28 01:06:17 +01:00
SmallJoker
4299ee21d8
CMake: Move generator conditional expressions (#281) 2024-01-22 09:50:29 +01:00
Vitaliy
5b81694b1d
CI: Android support (#197) 2024-01-21 15:51:11 +01:00
grorp
66786d0059
Make IrrlichtDevice::isWindowVisible do what it says on the tin (#279) 2024-01-19 18:17:26 +01:00
David Heidelberg
9df2f0b944 Undefine SDL2 DirectFB video driver
1. we don't need it
2. it's dropped in SDL 3
3. it breaks compilation on Alpine and postmarketOS with SDL2 enabled
   (and the bug never going to get fixed on SDL2 side)

Signed-off-by: David Heidelberg <david@ixit.cz>
2024-01-18 23:28:45 +01:00