Commit Graph

466 Commits

Author SHA1 Message Date
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
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