Commit Graph

680 Commits

Author SHA1 Message Date
Benau
88e15147b8 Merge remote-tracking branch 'origin/win-64bit' 2017-10-17 00:55:22 +08:00
Deve
1a250c5b74 Hopefully fixed rare crash in createVideoModeList.
Assume that the window was null.
2017-09-30 23:43:29 +02:00
Deve
34a3207f91 Fixed android compilation 2017-09-27 23:20:35 +02:00
Deve
afbdbaeee8 Remove unused files.
Both Console and FB don't work with opengl driver. And the software driver is not even included in stk sources. So I don't think that it will be ever used.
2017-09-27 23:07:44 +02:00
Deve
de116c7e4c Fixed possible issue with changing resolution 2017-09-27 22:24:40 +02:00
Deve
e2c0f83fb0 Move patform specific code from irr_driver to irrlicht devices 2017-09-27 17:37:56 +02:00
Benau
3cd2f403e0 Force re-skin when getMesh with hardware skinning on
Actually spm has a built in way to use mesh without bothering bind
pose
2017-09-20 01:27:52 +08:00
Deve
71334bac5b Move xrandr to irrlicht cmake file and also fixed indentations 2017-09-18 22:14:43 +02:00
Deve
66cebbdbe7 Add cmake scripts that find egl and wayland libraries 2017-09-18 21:50:34 +02:00
Deve
f6fa44f0df Request srgb colorspace on wayland 2017-09-17 21:51:07 +02:00
Deve
e615ff67d6 Don't use gl functions that are not available in core context.
Fixes some driver warnings.
2017-09-12 23:49:35 +02:00
Deve
dec9948d0b Make sure we don't write out of array.
It shouldn't happen, but code below assumes that visualAttrBuffer has its full size, so just in case...
2017-08-23 00:13:57 +02:00
Deve
b03e108902 Handle a case when request for srgb-capable framebuffer failed.
It fixes #2902.
2017-08-22 23:53:04 +02:00
Benau
a00b878919 Use transposed matrix everywhere 2017-08-17 01:26:08 +08:00
hiker
f3d56b37df Merge branch 'master' into win-64bit 2017-08-16 17:29:57 +10:00
Benau
3031fabcf9 Add spm loader 2017-08-16 13:48:27 +08:00
hiker
5a2b92d79d Merge branch 'master' into improve-xbox-gamepad-support 2017-08-14 10:05:26 +10:00
Deve
71bbafadbd Fixed memory leaks in gles 2017-08-13 22:02:55 +02:00
Deve
ee5bdad926 Move output/seat listener to better place 2017-08-13 01:38:21 +02:00
Deve
fd4ab9d88f Fixed possible uninitialized variable in gles renderer 2017-08-13 01:38:21 +02:00
Deve
cf868df93f Fixed memory leaks in wayland device 2017-08-13 01:38:21 +02:00
hiker
5b68e18df4 Fix cygwin support. 2017-08-11 09:38:58 +10:00
hiker
86d5e11c13 Merge branch 'improve-xbox-gamepad-support' of github.com:supertuxkart/stk-code into improve-xbox-gamepad-support 2017-08-09 20:32:13 +10:00
hiker
e03c0849ce Fixed previous commit - got confused with the #undef :P 2017-08-09 20:30:44 +10:00
hiker
d46b03b317 Hopefully fixed cygwin build problems. 2017-08-09 17:54:29 +10:00
Benau
ea97258b65 Add scripting code for throwing banana monkeys 2017-08-09 12:23:37 +08:00
hiker
6f5b1d2a55 Merge branch 'improve-xbox-gamepad-support' of github.com:supertuxkart/stk-code into improve-xbox-gamepad-support 2017-08-09 10:23:52 +10:00
hiker
11a587dd30 Merge branch 'improve-xbox-gamepad-support' of github.com:supertuxkart/stk-code into improve-xbox-gamepad-support 2017-08-09 10:15:35 +10:00
hiker
c3cd7ceaa2 Merge branch 'master' into improve-xbox-gamepad-support 2017-08-08 23:08:14 +10:00
hiker
b440511c95 Fixed incorrect right thumbstick mapping. 2017-08-08 21:55:28 +10:00
hiker
bd5eb89cc0 Use XInput 9.1 which does not need an installer and works on most
windows platforms. Move the linking to irrlicht cmake.
2017-08-08 21:44:32 +10:00
hiker
e6c2c3df95 Revert to using guidProduct for all existing code, but the correct guidInstance
for detecting XInput devices only.
2017-08-07 09:15:09 +10:00
hiker
891e439264 Remapped XInput to be the same as DirectInput buttons, so that
existing configs works as expected. Hard-coded 6 axis for xbox
controller to allow for triggers to be reported as two different
axis (instead of as one axis). Updated gamepad config to use
proper names for triggers.
2017-08-06 22:56:59 +10:00
hiker
68d41a07ba Now actually use XInput to read the joystick events for all
XInput devices.
2017-08-05 00:34:51 +10:00
hiker
f431730278 Fixed recognition of XInput devices. 2017-08-05 00:12:22 +10:00
hiker
d3da93f368 Try to use a Microsoft function to detect XInput devices when using
DirectInput - atm not working yet :(
2017-08-03 09:24:50 +10:00
Deve
1d2ff0bc47 Remove more unused files 2017-08-02 22:03:01 +02:00
Qwerty Chouskie
14ea69dc90 Cleanup V2 2017-08-02 09:29:15 -07:00
hiker
22208365d2 Switch to direct input for joystick handling. 2017-08-02 08:13:24 +10:00
hiker
1e5d2643be Bugfix: incorrect index. 2017-08-02 08:13:04 +10:00
hiker
cc6a1a3909 Started to add XInput support (to be able to distinguish the two
triggers).
2017-08-01 17:48:18 +10:00
hiker
85ee217d77 Converted tab to spaces. 2017-08-01 17:19:52 +10:00
Deve
09a735c25e Use key names in android device too 2017-07-20 22:58:12 +02:00
Deve
7a92708fd3 Use key names in wayland device 2017-07-20 22:58:12 +02:00
Deve
0dba3c8f67 Add a prefix to irrlicht key codes 2017-07-20 22:58:11 +02:00
Deve
1fd6a8aa86 Make sure that we are not using files from our zlib/libpng when STK is compiled with shared libraries.
It's possible that STK was using these files for compilation when cmake was run from main directory. In this case compiled files are stored in stk-code/lib, so that CMAKE_CURRENT_BINARY_DIR is stk-code/lib/irrlicht rather than stk-code/build/lib/irrlicht and we include whole lib/libpng rather than non-existing directory.
2017-07-10 21:14:28 +02:00
Deve
9b7f3d70dd One more place where we were linking with glu.
It doesn't really matter, but it's better that our linux package doesn't depend on it.
2017-07-05 21:49:31 +02:00
Deve
2bf99aef1d Remove useless gles defines from irrlicht cmake file 2017-07-04 23:32:57 +02:00
Deve
c6ea07eacc Remove unused gles 1.0 code 2017-07-04 23:30:09 +02:00
Deve
09262a606b Add missing copyright.
The EGL context manager has been written from scratch, so our copyright should be fine.
2017-07-04 22:55:08 +02:00
Deve
f672088a04 Tweak closing android device 2017-07-04 22:43:11 +02:00
Deve
23277066a4 Some fixes for egl config.
Added a fallback with basic configuration if requested config failed.
Also better check if choose config is success (num_configs can be >0 even if egl config is null)
2017-06-24 21:39:58 +02:00
Deve
78b9b92efa Fixed gles compilation.
We include CIrrDeviceLinux in our edit box widget and it doesn't respect irrlicht cmake flags, so that it tries to include opengl headers even if we selected gles renderer. Just move it to the cpp file to avoid redeclaration errors.
2017-06-23 23:51:33 +02:00
Deve
72358371f7 Some fixes for video mode list on android.
Should be a bit safer when user wants to close the game very early (i.e. when assets are extracting) and we get destroy event before irr_driver is actually initialized.
2017-06-19 22:59:27 +02:00
Marianne Gagnon
e4f2d0b1d5 Fix OS X build following libpng upgrade 2017-06-05 20:52:46 -04:00
Deve
15ce5b4ebf Fixed windows compilation 2017-06-05 21:54:44 +02:00
Deve
ccf3893abb Apply our modifications to libpng cmake script 2017-06-05 21:16:22 +02:00
Deve
9ebdb5fd00 Update libpng to newer version in order to fix some vulnerabilities.
I decided to just make a bug-fix update and keep the 1.5.x series because newer versions may also need the zlib update.
2017-06-05 21:10:38 +02:00
Deve
37a2752162 Use newer seat version if possible 2017-05-31 23:47:19 +02:00
Deve
212411fb49 Allow to repeat keys 2017-05-31 22:31:46 +02:00
Deve
d6e5e04666 One more tweak 2017-05-31 22:29:28 +02:00
Deve
c13f812290 Simplify previous commit and also fix the double egl context deletion 2017-05-30 21:39:30 +02:00
Deve
26a6c49fc1 Add missing break 2017-05-30 00:34:39 +02:00
Deve
e00995d099 Allow to use GLES renderer with Wayland device.
It would be nice to simplify it a bit, i.e. decide if OpenGL context should be created on device side or driver side, use single constructor in GLES driver etc... But I'm not really sure how it will look like after Benau's space partitioning work, so some refactoring postponed till later.
2017-05-30 00:30:00 +02:00
Deve
c8137fc0fa Add a possibility to set a window class in irr device.
This makes one ugly #ifdef less in the irr_driver.cpp.
2017-05-25 21:26:31 +02:00
Deve
b5f2e4d163 Allow to set window caption 2017-05-25 20:49:10 +02:00
Deve
0c18090669 Minor simplifications for keyboard on wayland 2017-05-25 17:27:08 +02:00
Deve
8989cc97b5 Some fixes for keyboard on wayland 2017-05-24 01:17:25 +02:00
Deve
bc25bc4435 Keep consistency with other irrlicht defines 2017-05-18 20:48:42 +02:00
Deve
abde57cd4a Add mouse wheel event 2017-05-17 22:44:22 +02:00
Deve
36368041ee Mostly cleanup and style modifications 2017-05-17 22:43:56 +02:00
Deve
f99bc25845 Avoid semi-transparent window 2017-05-15 21:17:03 +02:00
Deve
961ac4d79e Better fix for glew 2017-05-14 00:06:54 +02:00
Deve
1966d3f072 Use x11 functions in irr_driver only if x11 device was created 2017-05-14 00:05:36 +02:00
Deve
da802d836d Some fixes for mouse cursor. 2017-05-12 22:58:33 +02:00
Deve
ba39e88680 Update cursor when visibility is changed 2017-05-12 21:47:51 +02:00
Deve
23c428160f Some fixes 2017-05-12 00:57:01 +02:00
Deve
70dc99ca6c Fixed some non-working keys.
We can't include linux/input.h because it breaks irrlicht keys.
2017-05-06 23:25:00 +02:00
Deve
632a759ee6 Allow to choose device type using environmental variable 2017-05-06 22:38:05 +02:00
Deve
e02a8f4448 Allow to make single build with both x11 and wayland device 2017-05-06 21:53:32 +02:00
Deve
2f1b61b798 Remember mouse button states 2017-05-05 23:04:18 +02:00
Deve
a9c2a1922a Some work on support clipboard 2017-05-04 22:36:12 +02:00
Deve
e27df23415 Draw mouse cursor 2017-05-04 21:06:40 +02:00
Deve
da65650b75 Allow to write unicode characters.
Needs some cleanup.
2017-05-03 20:45:42 +02:00
Deve
fc79ee50d0 Add the ping/pong events to avoid non-responding window and few other minor fixes 2017-04-28 23:04:34 +02:00
Deve
01ffc129fb Make it working for current wayland/weston 2017-04-24 22:26:47 +02:00
Deve
f31e4f8ea4 Add missing files 2017-04-23 21:22:15 +02:00
Deve
5d9b1e103d Rename file 2017-04-22 21:55:24 +02:00
Deve
63517dd4be Better EGL context creation 2017-04-22 21:51:49 +02:00
Deve
035c33f960 Merge branch 'master' into wayland 2017-04-22 21:11:10 +02:00
deve
f4e803220b Some minor fixes 2017-04-21 08:51:54 +02:00
Deve
9fc3578b51 Rewrite whole EGL manager.
Now it allows to create OpenGL context, so we can use it for Wayland.
2017-04-20 23:20:21 +02:00
hiker
8a1d0bae34 Fixed some 64-bit related compiler warnings on VS. 2017-04-07 00:41:08 +10:00
Deve
240041f520 Fixed android compilation 2017-04-05 21:49:52 +02:00
Deve
1d39030f51 Assume that EGL version is always greater than 1.3 because otherwise we won't be able to create GLES 2.0/3.0 context. 2017-04-05 21:49:42 +02:00
Deve
635ea89cd0 Some corrections with egl attribs 2017-04-05 21:49:33 +02:00
Deve
3961a9a3b7 Move EGL context to separate class.
It will allow to use it for OpenGL + Wayland.
2017-04-05 21:49:24 +02:00
Benau
b7c709c709 Allow muxing mjpeg with vorbis audio with mkv
Not sure if playable in with all players
2017-04-04 16:12:09 +08:00
Benau
9039324145 Allow muxing into webm using libwebm 2017-03-30 13:30:21 +08:00
Benau
2660a5b332 Allow message queue to be able to do linebreak
Also set "/" and "\" to be breakable
2017-03-23 00:51:50 +08:00
Benau
aecb1a97ce Update license of img.h as Stragus said in IRC
Also remove unneeded file
2017-03-23 00:12:06 +08:00
Benau
09e2f96ba8 Remove libpng's png_set_gamma
Stragus suggested:

It will degrade quality by converting from true sRGB to ^2.2 and
then rounding the values back on 8 bits
2017-03-17 13:19:56 +08:00
Benau
41844de6a5 Apply real fix from Stragus for normal map 2017-03-17 13:08:08 +08:00
Benau
e1a563612f Avoid calling gamma correction on non-srgb png 2017-03-17 10:15:06 +08:00
Benau
1a0034bb9e Apply fix from stragus 2017-03-15 13:35:09 +08:00
Benau
bfd8198f72 Update from stragus 2017-03-15 00:25:20 +08:00
hiker
47835bc1ef Fixed VS compiler warnings. 2017-03-14 22:39:27 +11:00
Benau
eedc7f55c9 Make addThreadedLoadTexture thread safe 2017-03-14 11:35:26 +08:00
Benau
677723fe5d Fix msvc build 2017-03-13 12:34:08 +08:00
Benau
ab10702d12 Try to fix build 2017-03-13 12:12:51 +08:00
Benau
a1492981cf Apply fixes from Stragus for restrict keyword 2017-03-13 11:50:57 +08:00
Benau
76aa38e5b4 Try HQMipmapGenerator 2017-03-13 10:28:43 +08:00
Benau
27fcc4e266 Allow custom memory management in IImage 2017-03-12 09:09:40 +08:00
Benau
40a25e1d9e Remove dependency on STKTexture (for HQ mipmap generator later) 2017-03-11 15:33:36 +08:00
Benau
ab673fc03b Merge remote-tracking branch 'origin/master' into threaded_tex_loader 2017-03-11 13:55:18 +08:00
Benau
6e80271ad9 Max texture size 2k and allow them to be threaded load 2017-03-11 09:41:46 +08:00
Deve
adfa8f30f9 Better fix for missing transparency in GLES legacy pipeline 2017-03-08 23:17:03 +01:00
Benau
d864995c7d First version of ThreadedTexLoader 2017-03-08 15:54:59 +08:00
Deve
fcae7dfc33 Fixed compiler warnings 2017-03-06 17:22:44 +01:00
Deve
11024569b0 More tweaks to GLES legacy pipeline 2017-03-02 22:19:10 +01:00
Deve
067518df5d Fixed rtts in GLES legacy pipeline 2017-03-01 23:20:21 +01:00
Deve
282bb6c655 Always use fixed blending for GLES legacy pipeline 2017-03-01 21:44:11 +01:00
Deve
40fe3585bb One more fix for legacy pipeline in GLES renderer.
It looks that the second texture is not used at all and it may cause a crash, so just disable it.
2017-02-27 00:58:43 +01:00
Deve
6d395d4510 Some fixes for GLES renderer 2017-02-27 00:58:43 +01:00
Deve
803eba5d5c Fixed typo 2017-01-27 22:44:22 +01:00
Deve
5931ba288a Don't crash if irrlicht shaders are not available for GLES.
They are needed only for legacy pipeline.
2017-01-12 21:43:11 +01:00
Benau
2127e44cc2 Remove clang compling warning 2017-01-12 09:54:20 +08:00
Benau
40fe84ddbd Fix addon stk mercuy crash
Please avoid using 2nd uv layer on animated mesh
2017-01-11 14:29:37 +08:00
Benau
8acd2d689a Merge branch 'new_texture_format' 2017-01-10 09:09:38 +08:00
Benau
08876e30ab Remove unused builtin font 2017-01-09 15:50:26 +08:00
Benau
c4b4ea006e We don't need to add a new glyph page for billboard text anymore 2017-01-09 13:16:40 +08:00
Benau
46be4948b2 AZDO for new texture format 2017-01-09 13:03:50 +08:00
Daniel Ölschlegel
be2e86166f Update CIrrDeviceLinux.cpp (#2731)
Fix compile error under NetBSD
2017-01-08 20:44:04 -05:00
Daniel Ölschlegel
64015348da Update as_memory.cpp (#2730)
Merged required patch from OpenBSD and NetBSD
2017-01-07 18:55:10 -05:00
Daniel Ölschlegel
6e38e7429b Update as_config.h (#2729)
NetBSD is a BSD
2017-01-07 18:52:39 -05:00
Benau
2af126357d Port font to use new texture format 2017-01-06 18:20:19 +08:00
Benau
827a483e85 Allow legacy pipeline to use new texture format 2017-01-06 15:04:15 +08:00
Benau
0129c539b9 Fix #2543
Also disable warning when switching cases for context detection
2017-01-03 13:53:44 +08:00
Benau
2dbf4675a5 First version of new texture format
Todo: IBL, texture compression, GLES, premul alpha ....
2017-01-02 16:14:59 +08:00
Benau
67b6c3bf05 Allow to reload textures on the fly
Enter texture filename(s) (full path is optional) separating by
";" in the artist debug mode "Reload texture" dialog

Notice: premultiplied alpha texture reloading is not supported,
because it was done on STK side.
2016-12-29 14:56:18 +08:00
Benau
ffe4dd88b4 Apply mask directly on texture
Avoiding the ref counting issues
2016-12-28 15:32:27 +08:00
Benau
6a142e8d2e Allow animated models in track to have different animation 2016-12-24 13:11:08 +08:00
Deve
6486d1548b Fixed clang compilation 2016-12-24 02:07:53 +01:00
Tobias Markus
6fb93fa208 Fix compilation on macOS 10.12 (#2701) 2016-12-22 19:17:31 -05:00
Benau
85bd8c3146 Add unlit and normal map skinned mesh shader
Also fix normal map with skinned mesh, now vertices and joints
will be recalculated for tangents mesh
2016-12-14 16:28:37 +08:00
Benau
c8e5238ce2 Merge remote-tracking branch 'origin/master' into hardware_skinning 2016-12-12 13:45:04 +08:00
Daniel Ölschlegel
62e1a2ddcc Add a little more BSD detection (#2685)
Tested for NetBSD, the same signature has DragonFly(http://fxr.watson.org/fxr/source/sys/endian.h?v=DFBSD#L42)
2016-12-11 19:16:47 -05:00
Benau
e9b68a8a1f Use a non-hardcoded values for mat4 array (max 1024)
Also cull mesh that doesn't have enough space to be rendered
2016-12-11 15:50:53 +08:00
Benau
f6490b6fa6 Allow array to capture lambada
Also use a correct sorting function, will be useful later if
we only need the more influetial bones.
2016-12-11 13:21:17 +08:00
Benau
ceef7495d2 Enable culling for animated mesh
Use the first frame bounding box for it, don't update each frame
2016-12-11 11:01:02 +08:00