Commit Graph

117 Commits

Author SHA1 Message Date
sfan5
593103a261 Refactor SDL device to use the same abstraction as other devices
In particular this makes the OpenGL procedure stuff work.
fixes https://github.com/minetest/minetest/issues/12265
2022-05-21 15:26:38 +02:00
sfan5
0732807cc8 Improve IrrCompileConfig handling in cmake 2022-05-21 15:26:38 +02:00
paradust7
00a7741cd4 Remove irrMap and use std::map instead 2022-05-18 13:12:47 +02:00
paradust7
51ae495c4a
Remove extra memcpy in ogles2 driver 2022-05-11 13:25:50 +02:00
paradust7
401e769114 Enable GL_ALPHA_TEST in OpenGL driver for custom transparent alpha shaders 2022-05-04 17:35:31 +02:00
ndren
24594ce226
Add missing overrides to fix compiler warnings 2022-04-30 16:53:53 +02:00
paradust7
ba0396e93d
Replace HWBufferMap with a list and back pointers (#99) 2022-04-29 12:04:22 +02:00
sfan5
e469c54f76 Fix COSOperator::getSystemMemory
The values it returns are in Kilobytes and it was broken on macOS.
2022-03-09 22:52:11 +01:00
sfan5
df908ef4ea Get rid of various old compiler and platform checks 2022-02-26 12:11:27 +01:00
sfan5
95af6d7c08 Get rid of all sprintf calls 2022-02-26 12:11:27 +01:00
sfan5
00dd274510 Fix uninitialized variable in previous commit 2022-02-26 12:11:27 +01:00
sfan5
d59bcdbd07 Create OpenGL context using CreateContextAttribsARB 2022-02-20 23:18:17 +01:00
sfan5
09b8837ef9 Fix SDL2 include paths
closes #96
2022-02-14 18:26:59 +01:00
cutealien
4fb1c55ec5 IBillboardSceneNode got functions to access meshbuffers.
So uv-coordinates can now be modified directly (previously only possible via texture matrix).

git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@6299 dfc29bdd-3216-0410-991c-e03cc46cb475
2022-02-09 19:09:04 +01:00
cutealien
684293f527 Prefer static_cast to reinterpret_cast where possible.
Just safer. Could probably do in a lot more places... another time.

git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@6293 dfc29bdd-3216-0410-991c-e03cc46cb475
2022-02-09 19:05:49 +01:00
sfan5
fa2a7dc236 Gracefully handle lack of bundle on macOS
should fix https://github.com/minetest/minetest/issues/10170
2022-01-31 21:03:21 +01:00
sfan5
7d1dc8b2d5 Get rid of ancient workaround
...that probably negatively impacted performance or something else
2022-01-22 21:01:17 +01:00
Emmanuel Hansen
53db262bd2
Update CIrrDeviceSDL to support SDL2 (#85) 2022-01-16 12:16:15 +01:00
sfan5
195759100f CB3DMeshFileLoader: abort if offsets point outside of file
fixes #70
2022-01-15 16:06:30 +01:00
x2048
2fec5e5dd3
Reset mesh animation state before recalculating normals (#90) 2022-01-02 20:41:03 +01:00
ROllerozxa
52e03a8485
Remove unused attribute saving and loading (#86) 2021-12-29 23:00:56 +01:00
sfan5
dd09fdcb4e
Remove more unused code (#87) 2021-12-29 13:12:09 +01:00
William L. DeRieux IV
4bdecbc6b7 Automatically use SSE registers for FP operations on i386 (#83) 2021-12-15 16:33:20 +01:00
JosiahWI
6d133e1bcc Fix various GCC warnings
- fix overload hiding
- handle missing enumeration values in switch
- remove extraenous semicolons
- always have defaults in color converter switch
- fix root cause of stringop warning
2021-11-24 22:07:26 +01:00
JosiahWI
d4119ba664 Remove unused functions
renderLine16_Blend(), renderLine16_Decal(), renderLine32_Blend(), renderLine32_Decal()
clipLine()
frand()
drawRectangle() and drawLine()

remove unused private fields
2021-11-24 22:06:12 +01:00
sfan5
d322b73e4c Get rid of MATERIAL_MAX_TEXTURES_USED
Another configurable knob of questionable usefulness,
especially since this inhibits certain optimizations
by making loop length dependent on a global variable.
2021-11-19 20:16:57 +01:00
sfan5
6779cb7254 Unconditionally load first texture matrix in OpenGL driver
This used to work in Irrlicht 1.8 and I tried to figure out
why it no longer did, but failed.
fixes minetest/minetest#11206
2021-11-19 19:34:53 +01:00
x2048
39cad3e618
Fix updating of vertex normals for animated meshes (#77)
Updates cached positions and normals of animated vertices
from the mesh. Useful when using meshManipulator to update
the normals.
2021-11-16 12:30:31 +01:00
sfan5
dbd39120e7 Limit dimensions of all image loaders to 23000x23000 2021-10-05 11:17:36 +02:00
sfan5
594de99153 CImageLoaderJPG: protect size calculation from overflow by rejecting huge dimensions 2021-09-14 20:07:44 +02:00
ROllerozxa
ac57007c55
Readd TGA format support (#64) 2021-09-13 21:21:26 +02:00
sfan5
4389a15e0f Remove unused locale-like code, utf8 functions and headers 2021-08-30 22:42:13 +02:00
sfan5
8f386999a6 Change clipboard to UTF-8 on macOS
(untested)
2021-08-30 21:53:12 +02:00
sfan5
34f1f8d089 Make clipboard UTF-8 on Windows too 2021-08-30 21:51:24 +02:00
DS
9c4b6f25ab
Fix X11 selections (#55)
This fixes all the issues with the X11 selection in addition to switching the clipboard to always be UTF-8.
2021-08-30 21:44:56 +02:00
sfan5
75b4c05741 Drop _IRR_WCHAR_FILESYSTEM
never used and never worked for us.
2021-08-30 20:55:06 +02:00
JosiahWI
2dc2846c3f
Add support for OpenBSD
There were three patches OpenBSD applied to build Irrlicht, and I implemented two of them. The first required turning off joystick events on OpenBSD, and the second (which I didn't confirm was necessary) required some defines in os.h. The third patch would have added an include to CIrrDeviceLinux.cpp, but the file had changed quite a bit and I could not tell whether this was necessary, so I left it out, and it appears Irrlicht builds fine.
2021-08-28 18:12:40 +02:00
cutealien
9690c1b3e3 Merging r6196 through r6248 from trunk to ogl-es branch
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/branches/ogl-es@6249 dfc29bdd-3216-0410-991c-e03cc46cb475
2021-08-27 10:59:31 +02:00
TheBrokenRail
c26ff3476f
CIrrDeviceLinux: Add support For TouchInput.touchedCount 2021-08-27 10:58:46 +02:00
sfan5
da33f80bb8 Readd CSceneCollisionManager with only the method we need 2021-08-26 22:17:35 +02:00
hecks
5bf68b5731
Add a unified cross platform OpenGL core profile binding (#52) 2021-08-07 21:56:00 +02:00
hecks
6c78f181b5
Fix .x material slot parsing
Co-authored-by: hecktest <>
2021-07-29 05:05:34 +02:00
hecks
4ab3de3bab
Delete lots of unused features (#48) 2021-07-23 16:23:44 +02:00
sfan5
1d66c921c2 Drop unused and unportable "fast math" code 2021-07-17 00:02:37 +02:00
sfan5
22c3219ff0 Set correct flags for static builds
this is only really relevant on Windows
2021-07-16 23:12:49 +02:00
sfan5
b2b000597a CIrrDeviceOSX: drop all video mode code 2021-07-16 23:12:45 +02:00
sfan5
0afd799002 Remove various ancient support code 2021-07-16 22:01:37 +02:00
sfan5
729c214c00 Drop XML implementation, related code and dependent features 2021-07-07 17:04:05 +02:00
sfan5
d62e0424f2 Fix path issues when imported as subdirectory 2021-06-30 21:13:59 +02:00
NeroBurner
924178ebf6
Set includes and libs on object targets
Instead of using the global `include_directories()` and
`link_libraries()` calls use the target versions
`target_include_directories()` and `target_include_libraries()` with
`PRIVATE` keyword instead.

The dependencies are libraries only, the headers are added to the build
instructions in a separate call. So the `target_link_libraries()` calls
are not needed for the object-libraries to be built.
2021-06-27 23:04:56 +02:00