Commit Graph

758 Commits

Author SHA1 Message Date
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
Benau
fcd1e2830e Use callback function to directly upload joints without copying 2016-12-10 16:16:40 +08:00
Benau
8ca0c54bdc Merge remote-tracking branch 'origin/master' into hardware_skinning 2016-12-10 10:09:30 +08:00
Benau
b7e047b4c1 Avoid using else if in skinning vertex shader 2016-12-09 14:16:30 +08:00
Benau
21d9117b2d Fix matrix4 pointer in windows
Also allow minimum azdo rendering and avoid skinning empty joints
2016-12-08 16:12:54 +08:00
hiker
dbfaf2105b Merge remote-tracking branch 'origin/master' into nw 2016-12-08 13:36:36 +11:00
Benau
d21e5e0f76 Make skinning offset changeable by culling 2016-12-07 16:08:57 +08:00
Benau
ac8d7aa8c7 Try to fix the build 2016-12-07 08:18:19 +08:00
Benau
a3905a1e19 Allow tangent mesh to be converted 2016-12-07 08:07:01 +08:00
Deve
66f57ada61 Fixed a crash when GLES device is re-created 2016-12-07 00:08:16 +01:00
Deve
5fad8a135e Destroy egl context on exit 2016-12-06 23:32:04 +01:00
Benau
57d9e83ed4 First version of hardware skinning
Todo: shadow, non-instanced shaders, culling, changeable offset...
2016-12-07 02:15:11 +08:00
hiker
1939075a1b Merge remote-tracking branch 'origin/master' into nw 2016-12-06 18:45:17 +11:00
hiker
746bac00ce Merge remote-tracking branch 'origin/new-pi' into nw 2016-12-06 09:26:07 +11:00
Deve
23883b83c1 Fixed a crash on startup.
As written in the documentation: "The returned modifiers string is owned by Xlib and should not be modified or freed by the client."
2016-12-04 23:23:09 +01:00
deve
716c19325f Update common irrlicht files with modifications from Android branch.
- Added a function in GLES driver, which allows to re-create EGL surface when it's lost after resume event
- Some additional events/keycodes
- Fixed compilation with missing sys/sysctl.h header
2016-11-28 01:56:52 +01:00
Benau
fe371a28b5 Add non-const function for STK usage 2016-11-25 12:37:40 +08:00
deve
7f251fdf79 Merge branch 'master' of https://github.com/supertuxkart/stk-code 2016-11-22 09:16:59 +01:00
deve
467760f248 Remove illogical #ifdef 2016-11-22 08:29:18 +01:00
Benau
c1e931f5ba Merge branch 'legacy_opengl' 2016-11-22 09:23:17 +08:00
deve
e9f3fd4806 Fixed compilation with missing vidmode headers after some modifications in our CGUIEditBox. 2016-11-21 08:37:20 +01:00
Benau
de95db5c93 Avoid creating new glyph page too many times 2016-11-20 10:08:59 +08:00
Benau
9734c2e890 Fix crash in billboard text when using legacy opengl
Notice: freetype glyph metrics are not supported
2016-11-19 15:59:58 +08:00
Benau
a52c4699a1 Add back normal map renderer for legacy opengl
Fixed transparent issue
2016-11-19 14:21:56 +08:00
hiker
ae36208e29 Merge remote-tracking branch 'origin/master' into new-pi 2016-11-15 12:38:21 +11:00
Benau
e6e302af1c Fix copy and paste of unicode characters 2016-11-13 15:43:00 +08:00
Benau
5879933a23 Merge remote-tracking branch 'origin/master' into fix_2112 2016-11-13 10:42:47 +08:00
hiker
61a3d10e10 More Compile SERVER_ONLY, still not fully working. 2016-11-12 00:09:39 +11:00
Deve
452c7c1e40 Fixed compiler warning 2016-11-11 13:44:51 +01:00
hiker
8d9bb9c30f Cherry picked commits from old pi branch (which was based on dumb client). 2016-11-11 17:21:59 +11:00
deve
4bb0405a32 Added support for multitouch steering.
It will be used for steering on Android.

There are some limitations:
- currently it works only in single player mode (but I don't see any reason to make it working for multiplayer)
- speedometer is not available in race GUI because there is no place for it

TODO:
- add DPI support (race GUI should have probably different proportions on smaller devices for comfortable playing)
- make nice button images
- make nitro button that changes its look depending on collected nitro (a kind of nitro bar)

Touch input events must be handled in android device to make use of it. It can be simulated for debugging on non-android devices using standard mouse.
2016-11-10 02:42:56 +01:00
Benau
8a0d911d10 Allow using input method (for CJK) in linux 2016-11-09 12:28:23 +08:00
Benau
956aa83a0a Remove unused function 2016-10-27 10:15:41 +08:00
Benau
76f32b4a41 Fix an unfree Atom 2016-10-12 09:52:34 +08:00
Deve
5c4b61a26e Fixed numpad keys on linux.
We need to check numlock mask, because it may be different on different systems, and possibly also modified manually.

It should generally work fine, but some testing are welcome.
2016-10-06 20:31:10 +02:00
Deve
5e05f1178c Fixed compiler error on Linux with non-x86 64bit platforms, e.g. arm64, mips, and s390x architectures
This modification is already applied in upstream angelscript repository:
https://sourceforge.net/p/angelscript/code/2353/

Thanks to Adrian Bunk and Andreas Jonsson
2016-10-03 23:26:09 +02:00
deve
cabc696710 Fixed compilation with cmake 3.6 2016-09-26 11:28:19 +02:00
Deve
7f4d815dde Request GLES 3.0 context and fallback to 2.0 if not available. 2016-08-22 20:05:36 +02:00
Deve
26d2bf847c Allow to use non-hd textures in OpenGL ES renderer 2016-08-13 00:01:08 +02:00
Deve
b23f39f1cd Fixed non-hd textures in legacy pipeline 2016-08-12 23:51:29 +02:00
Deve
08202f2fa8 Remove USE_XRANDR flag from cmake.
Our vidmode code is old, has some bugs (eg. resolution is not restored properly in some cases), doesn't have multi monitor support and IMO shouldn't be used in current state.

If someone really wants to use it, the flags can be set directly in IrrCompileConfig.h.
2016-08-12 23:39:12 +02:00
Deve
1481da9718 Fixed button icons with non-hd textures and low MAX_TEXTURE_SIZE parameter 2016-08-12 20:51:19 +02:00
Benau
89976def57 Remove not-used-anymore setReferenceCount 2016-07-19 13:58:38 +08:00
Deve
5601309ae8 Fixed windows compilation 2016-07-12 00:04:37 +02:00
Deve
886382bb54 Merge remote-tracking branch 'origin/master' into gles 2016-07-11 23:43:10 +02:00
Deve
0f7976e5f8 Merge branch 'master' into gles 2016-07-11 23:23:02 +02:00
Deve
b25a4e874f Remove android related code. It will be handled in different branch. 2016-07-11 22:54:59 +02:00
Deve
f2d21d2353 Remove GLESv1 renderer because it's not used 2016-07-09 02:59:40 +02:00
Deve
17a0e4fbd8 Fixed an issue with grass shader.
It looks that EMT_TRANSPARENT_ALPHA_CHANNEL_REF wasn't handled at all in irrlicht OpenGL renderer.
2016-07-09 02:50:40 +02:00
Deve
66e76be76d Don't use hardcoded path for irrlicht shaders 2016-07-06 06:37:22 +02:00
deve
93dde11562 Use proper depth texture 2016-07-05 11:48:43 +02:00
Benau
b6153b6002 Thanks devee for this fix 2016-07-05 17:47:55 +08:00
Benau
04ccadd745 Fix non-linux build 2016-07-05 16:24:59 +08:00
Deve
4132177132 Fully integrate gles renderer with our irrlicht version. 2016-07-05 00:25:03 +02:00
Ezequiel Garcia
02361a37e8 Minor fixes for issues found while cross-building v2 (#2556)
* irrlicht: Fix harmless typo when setting CMAKE_CXX_FLAGS

The CMAKE_CXX_FLAGS set should be based on previously set
CMAKE_CXX_FLAGS (instead of C flags). This is currently
harmless because CMAKE_CXX_FLAGS is not previously set.

Signed-off-by: Ezequiel Garcia <ezequiel@vanguardiasur.com.ar>

* irrlicht: Get rid of unprefixed cflags

Cross-building requires proper include paths. This commit
removes the unprefixed -I/usr/X11R6/include in irrlicht cflags,
replacing it with a proper CMake module.

Signed-off-by: Ezequiel Garcia <ezequiel@vanguardiasur.com.ar>

* irrlicht: Fix boolean return type for jpeglib's callback

Building on certain toolchains can fail due to returning an integer
instead of TRUE. In any case, only {TRUE,FALSE} should be used
as 'boolean' jpeglib type. Fix this by returning TRUE.

  CImageLoaderJPG.cpp: In static member function 'static boolean
  irr::video::CImageLoaderJPG::fill_input_buffer(j_decompress_ptr)':
  CImageLoaderJPG.cpp:69:9: error: invalid conversion from 'int' to 'boolean'
  [-fpermissive]

Signed-off-by: Romain Naour <romain.naour@smile.fr>
Signed-off-by: Ezequiel Garcia <ezequiel@vanguardiasur.com.ar>
2016-07-03 21:07:53 -04:00
Deve
961428f04c Increase _IRR_MATERIAL_MAX_TEXTURES_ to 8 2016-06-29 22:18:24 +02:00
Benau
984553fd33 Merge remote-tracking branch 'origin/master' into render_kart_driver_differently 2016-06-28 14:56:21 +08:00
Benau
22e5c0909c Allow setting color without copying the mesh 2016-06-28 14:55:48 +08:00
hiker
431ed63da2 Improved fix for 2522 by using isStaticOrKinematicObject() function
(instead of accessing the rigid body). This separates collision
and dynamic handling of bullet again.
2016-06-27 07:48:30 +10:00
Benau
2f217fd55b Allow render red or blue karts in soccer mode using shader 2016-06-25 16:29:54 +08:00
Deve
d13716a917 Initial linux version.
Currently works only with irrlicht-based renderer because shaders are not ported yet.
2016-06-24 02:47:13 +02:00
Odd0002
416edef95d Fix debug build on GCC 5.3.0 2016-06-23 23:10:36 +02:00
hiker
0eb4ca2abd Fix #2522 in case of a sphere, and apply this fix only in case of a
static body to reduce potential incorrect side effects.
2016-06-21 09:53:51 +10:00
hiker
7a95f10cc0 Try to fix #2522 for a puck. 2016-06-21 09:32:14 +10:00
hiker
0a883f3832 First try to fix #2522 (soccer ball pushed in air). Needs to be tested,
and puck still needs to be done.
2016-06-20 15:10:58 +10:00
Benau
d520c4477d Design a way to render kart and driver differently 2016-06-12 16:19:34 +08:00
Deve
56c6062a81 One more tweak..... 2016-06-04 00:10:56 +02:00
Deve
d60d9120b4 Define constants in glew cmake file before 'add_library' function.
It was working for me as it was before, but based on this comment: 10488bc79a (commitcomment-17724549) it looks that some cmake versions may ignore definitions that are defined below add_library.
2016-06-03 06:48:46 +02:00
Deve
10488bc79a Don't link libGLU library.
This should allow to run linux static package even if libglu1-mesa package is not installed. And the utilities from GLU library are not used in STK anyway.
2016-05-12 23:38:56 +02:00
Deve
58846002eb Fixed bullet compilation for gcc 6.0.
Just converted all negative values and kept unsigned char* type to avoid too many modifications in the code.
2016-04-15 23:46:14 +02:00
Benau
224bd277b3 Better function name 2016-04-03 13:59:10 +08:00
Benau
79db5e2365 Fix comment 2016-04-02 16:02:51 +08:00
Benau
5ac25db7f8 Initial work to support transparent kart in ghost replay 2016-04-02 12:55:20 +08:00
Odd0002
47bac3b33d Fix debug build on GCC 5.3.0 2016-03-26 22:36:22 -05:00
Marianne Gagnon
33defa44b7 Merge most modifications by egirsova to build 64-bits on OS X 2016-03-21 20:16:59 -04:00
Lucas Baudin
b8ef827510 [irrlicht/android] don't poll events or it creates a race lock when polling accelerometer events elsewhere 2016-02-27 00:23:08 +01:00
Lucas Baudin
e9657beaa6 [android] detect size 2016-02-26 18:01:51 +01:00
Lucas Baudin
f484e7ef6b [android] More debug print for the android irrlicht device 2016-02-25 23:13:33 +01:00
Lucas Baudin
f91426d748 [android] Use CIrrDeviceAndroid before the console device… 2016-02-25 20:38:50 +01:00
Lucas Baudin
e39efc128c [android] backport the Irrlicht.cpp createDevice changes, fix the compile error, and use OGLES2 on android 2016-02-25 20:15:24 +01:00
Lucas Baudin
f89a4b1a75 Merge back the IEvent changes 2016-02-25 15:55:52 +01:00
Lucas Baudin
02808cdfd0 GLES2 for android devices by default 2016-02-25 12:06:54 +01:00
Lucas Baudin
d4d3817d63 Disable sound and curl, add freetype 2016-02-24 22:24:33 +01:00
Lucas Baudin
48069a7bcc More backport from the ogl-es irrlicht branch 2016-02-24 20:34:46 +01:00
Lucas Baudin
a470cd74d6 add android port from irrlicht (based on commit 875d0cfac88c26994b82d68737b085ec1b84c5f8) 2016-02-24 12:34:08 +01:00
Odd0002
0289e93bcc Silence AngelScript warning as in 6af30b68f0 2016-02-18 09:50:49 -06:00
Odd0002
e69e96af19 Fixed cmake based on https://github.com/supertuxkart/stk-code/issues/2325 and the related commit 2016-02-17 23:48:59 -06:00
Odd0002
fdd6f36b46 Update angelscript to 2.30.2 2016-02-17 22:07:55 -06:00
Deve
bd9f435190 Fixed 64-bit windows compilation.
Broken in 53164e5cbe or somewhere around it.
2016-01-03 00:10:30 +01:00
David Carlier
2841c0e165 better alternative OSes handling + tiny C++ fix 2015-12-19 07:05:45 +00:00
deve
e77dbf3d9f Totally remove wiiuse hack for mingw.
It breaks versions with proper header file due to redeclaration error.
You should simply use current 4.9 version or 5.0 and newer for wiimote support.
2015-12-14 10:18:08 +01:00
deve
0dbc3575a7 Fixed mingw compilation 2015-12-14 10:11:40 +01:00
Benau
9d1c9fac5a Merge remote-tracking branch 'origin/master' into i18n 2015-12-14 03:00:07 +08:00
Deve
6d757326d2 Make sure that we start game with disabled GL_FRAMEBUFFER_SRGB 2015-12-11 19:18:14 +01:00
Deve
b91bcaf554 Disabl sRGB framebuffer on irrlicht side to avoid modifying current user interface colors 2015-12-11 19:18:14 +01:00
Deve
0216fd9697 Request sRGB-capable visual during creating OpenGL context.
We need it for proper working. When it's not available, then function glEnable(GL_FRAMEBUFFER_SRGB) doesn't take any effect, and then displayed image is too dark.

It doesn't solve the issue that the screen is too dark for intel graphics cards on linux, because the driver ignores this request. But still, this is the proper way to do it and it may avoid similar issues in future.

Actually we should detect that the visual is not srgb-capable, and in this case maybe make some gamma correction or filter it on our side to get similar effect.
2015-12-11 19:18:14 +01:00
Benau
93b1b11b99 Merge remote-tracking branch 'origin/master' into i18n 2015-12-11 09:27:15 +08:00
deve
ea581e0909 Try to support more mingw versions for wiiuse build.
This function has been already added to the header in mingw-w64 5.1 and newer.
2015-12-04 10:47:56 +01:00
Nado
d66a70b250 Fixing some -Wunused-variable 2015-11-17 11:42:28 +01:00
Nado
97de0cbc34 Fixing clang only warnings 2015-11-17 11:42:28 +01:00
Deve
8572c5ef3b Open window in fullscreen mode when it was set by user 2015-10-29 00:16:00 +01:00
Deve
e61d3bc0ac Fixed a crash on startup 2015-10-28 23:40:57 +01:00
Deve
c81243fc1a Merge branch 'master' into wayland 2015-10-28 22:43:02 +01:00
Benau
2096532d0e Make stk more-i18n friendly
Now supertuxkart can do:

Windows (fully test in win8 and win7 built with vs2015, mingw not tested):
Input characters using ime (CJK tested).
Fix crashes when try to paste unicode text into editbox in stk.

Linux:
Different keymap can be used in stk now, ie typing russian,hebrew (not bidi-aware) is now possible.
IME not supported.

Mac:
No work has been done, sorry mac fanboys/girls:( Though testing is welcome, esp when pasting words into stk.

Limitation:
No ime box is shown in fullscreen

(Windows)Only the used language in current setting of non-Unicode programs can be typed with its supported IME.
2015-10-27 02:34:46 +08:00
Deve
e7e7e9e7d3 Make sure that we compile irrlicht only as static library.
Compiling as shared library can cause errors during linking because of GLContextDebugBit variable, which is defined in STK sources.
2015-10-17 16:02:35 +02:00
Deve
407f29641c Use ugly hack for compile bullet with 64-bit mingw until I will find better solution 2015-10-13 01:05:41 +02:00
Deve
e15cd49cae Make changing to fullscreen on linux safer.
Now we are waiting until window state is already changed to fullscreen. We are getting real window size at the end of creating window function and previously it was sometimes reporting size of the window in windowed mode, which could causing issues in gui. Previously this was workarounded by forcing minimal window size to be at least in screen resolution, but window managers don't like to have non-resizeable fullscreen windows. Now this workaround is not needed anymore.
2015-10-03 16:43:22 +02:00
Deve
f351c359fd Create angelscript library in build directory instead of lib directory.
This solves issues with multiple build directories (every one should have its own angelscript lib). It was causing conflicts eg. 32-bit library with 64-bit STK.
Ideally it should be commited upstream to avoid this problem after updating library.
2015-09-26 23:02:18 +02:00
Deve
35fa7fd272 Fixed a strange bug during changing window to fullscreen under Gnome 2015-09-26 20:32:55 +02:00
Deve
6af30b68f0 Silence angelscript warning in different way.
We can't remove project() line because it uses ${PROJECT_SOURCE_DIR} in other place.
2015-09-12 21:56:49 +02:00
Deve
27a2f1bdc1 Silence warning about project version in angelscript.
I still didn't find proper solution for it...
2015-09-07 18:19:42 +02:00
auriamg
b64de23b06 Merge pull request #2307 from Benau/master
Fix typo and and add quotation
2015-09-03 18:49:48 -04:00
Ben
c488e843b8 Fix typo and and add quotation
The quotation added is for Chinese Simplified which I discovered usage in translation work.
2015-09-03 16:30:22 +08:00
Marianne Gagnon
e2da2a36a1 Fix line endings 2015-09-01 19:39:30 -04:00
Benau
0a7a0d7c98 Fix the ugly hack for displaying Chinese in #2110, and then fix #2297 2015-08-30 02:35:17 +08:00
Deve
78cd8efdd4 Reset screensaver counter on linux when joystick event was received 2015-08-09 18:54:59 +02:00
deve
b5c15275de Fixed compiler warning.
This is already fixed upstream in commit r2174:
"Fixed compiler warnings in asGetTypeTraits on gnuc 5.1"
2015-08-06 14:35:26 +02:00
deve
5458792b79 Disable deprecated and unused irrlicht function to avoid compiler warnings 2015-08-06 13:54:40 +02:00
Marianne Gagnon
3687eb79d6 Apply modified version of patch from Benau to fix chinese word wrapping. See #2110 2015-07-29 18:51:03 -04:00
hiker
cd8fd7fb16 Merge remote-tracking branch 'origin/master' into Flakebi-fixes 2015-07-20 09:10:05 +10:00
hiker
93282f8abf Completely removed the usage of a physical wheel radius in the physics, it was
never really necessary, the phsyics are basically the same). Wheel rotation is
was refactored to be completely done in KartModel now.
2015-07-09 23:59:53 +10:00
hiker
3b9e85af0b Converted bullet's TravelCM (i.e. in cm) into Travel (i.e. in m). 2015-07-09 00:06:19 +10:00
Flakebi
d2ca7d11d7 Remove unused/commented out code 2015-07-03 15:36:45 +02:00