Benau
3607c7d520
Adjust irrlicht CSkinnedMesh class for .spm
...
The last frame in .spm is usable
2017-12-02 15:24:05 +08:00
Benau
2161efd9c4
Allow configure animation set through scripting
2017-12-02 02:36:43 +08:00
Rémi Verschelde
2a093cde0a
GLEW: Update to pristine upstream 2.1.0
...
Previous version was a modified GLEW 1.11.0 (2014). The STK modifications meant
to address https://sourceforge.net/p/glew/patches/40/ which is now fixed since
GLEW 2.0.0.
Here's the diff between pristine 1.11.0 and STK's version before this patch:
```diff
diff --git a/lib/glew/src/glew.c b/lib/glew/src/glew.c
index a78f14e1e..f8df0d758 100644
--- a/lib/glew/src/glew.c
+++ b/lib/glew/src/glew.c
@@ -296,30 +296,6 @@ static GLboolean _glewStrSame3 (GLubyte** a, GLuint* na, const GLubyte* b, GLuin
return GL_FALSE;
}
-#include <string.h>
-#include <stdlib.h>
-
-/* A simple open addressing hashset for extensions on OpenGL 3+. */
-static const char ** ext_hashset = NULL;
-size_t ext_hashset_size = 0;
-
-static unsigned hash_string(const char * key)
-{
- unsigned hash = 0;
- unsigned i = 0;
- for (; i < strlen(key); ++i)
- {
- hash += key[i];
- hash += (hash << 10);
- hash ^= (hash >> 6);
- }
- hash += (hash << 3);
- hash ^= (hash >> 11);
- hash += (hash << 15);
-
- return hash;
-}
-
/*
* Search for name in the extensions string. Use of strstr()
* is not sufficient because extension names can be prefixes of
@@ -328,37 +304,14 @@ static unsigned hash_string(const char * key)
*/
static GLboolean _glewSearchExtension (const char* name, const GLubyte *start, const GLubyte *end)
{
- if (ext_hashset != NULL)
+ const GLubyte* p;
+ GLuint len = _glewStrLen((const GLubyte*)name);
+ p = start;
+ while (p < end)
{
- unsigned hash = hash_string(name);
-
- /*
- * As the hashset is bigger than the number of extensions
- * this will eventually break.
- */
- while(1)
- {
- unsigned index = hash % ext_hashset_size;
- if (ext_hashset[index] == NULL)
- break;
-
- if (!strcmp(ext_hashset[index], name))
- return GL_TRUE;
-
- hash++;
- }
- }
- else
- {
- const GLubyte* p;
- GLuint len = _glewStrLen((const GLubyte*)name);
- p = start;
- while (p < end)
- {
- GLuint n = _glewStrCLen(p, ' ');
- if (len == n && _glewStrSame((const GLubyte*)name, p, n)) return GL_TRUE;
- p += n+1;
- }
+ GLuint n = _glewStrCLen(p, ' ');
+ if (len == n && _glewStrSame((const GLubyte*)name, p, n)) return GL_TRUE;
+ p += n+1;
}
return GL_FALSE;
}
@@ -10099,13 +10052,9 @@ static GLboolean _glewInit_GL_WIN_swap_hint (GLEW_CONTEXT_ARG_DEF_INIT)
/* ------------------------------------------------------------------------- */
GLboolean GLEWAPIENTRY glewGetExtension (const char* name)
-{
+{
const GLubyte* start;
const GLubyte* end;
-
- if (ext_hashset != NULL)
- return _glewSearchExtension(name, NULL, NULL);
-
start = (const GLubyte*)glGetString(GL_EXTENSIONS);
if (start == 0)
return GL_FALSE;
@@ -10165,39 +10114,9 @@ GLenum GLEWAPIENTRY glewContextInit (GLEW_CONTEXT_ARG_DEF_LIST)
GLEW_VERSION_1_2 = GLEW_VERSION_1_2_1 == GL_TRUE || ( major == 1 && minor >= 2 ) ? GL_TRUE : GL_FALSE;
GLEW_VERSION_1_1 = GLEW_VERSION_1_2 == GL_TRUE || ( major == 1 && minor >= 1 ) ? GL_TRUE : GL_FALSE;
}
-
- if (major >= 3) /* glGetString method is deprecated */
- {
- GLint n, i;
- glGetIntegerv(GL_NUM_EXTENSIONS, &n);
- glGetStringi = (PFNGLGETSTRINGIPROC)glewGetProcAddress((const GLubyte*)"glGetStringi");
-
- free(ext_hashset); /* In case we get called a second time. */
-
- ext_hashset_size = (n * 3) / 2;
- ext_hashset = calloc(ext_hashset_size, sizeof(const char *));
- for (i = 0; i < n; ++i)
- {
- const char * extension;
- unsigned hash;
-
- extension = (const char *)glGetStringi(GL_EXTENSIONS, i);
- hash = hash_string(extension);
-
- while(ext_hashset[hash % ext_hashset_size] != NULL)
- hash++;
-
- ext_hashset[hash % ext_hashset_size] = extension;
- }
-
- extStart = 0;
- }
- else
- {
- /* query opengl extensions string */
- extStart = glGetString(GL_EXTENSIONS);
- }
+ /* query opengl extensions string */
+ extStart = glGetString(GL_EXTENSIONS);
if (extStart == 0)
extStart = (const GLubyte*)"";
extEnd = extStart + _glewStrLen(extStart);
@@ -14064,9 +13983,6 @@ GLenum glxewContextInit (GLXEW_CONTEXT_ARG_DEF_LIST)
GLXEW_VERSION_1_2 = GL_TRUE;
GLXEW_VERSION_1_3 = GL_TRUE;
GLXEW_VERSION_1_4 = GL_TRUE;
- /* Check if GLX display is available */
- if (glXGetCurrentDisplay == NULL || glXGetCurrentDisplay() == NULL)
- return GLEW_OK;
/* query GLX version */
glXQueryVersion(glXGetCurrentDisplay(), &major, &minor);
if (major == 1 && minor <= 3)
```
2017-11-22 12:04:46 +01:00
Deve
252403c9cc
Avoid semi-transparent window on some compositors
2017-11-10 22:48:48 +01:00
Deve
3baefcd6a7
Initialize FeatureAvailable array to false for legacy pipeline.
...
It has been broken in commit 271a26eaf0
.
It solves some issues with etnaviv gallium driver. It may also solve a crash on old intel 965gm on windows, but I can't test it atm.
2017-11-07 22:54:36 +01:00
Benau
b28574eb46
Fix b3d with more than 4 weights per vertex
2017-10-25 13:11:54 +08:00
Benau
fc2e05c0a6
Use a trick to make skinned mesh shader branchless
2017-10-22 13:03:45 +08:00
Benau
7252a38da1
Fix skinning glitches possible in (some) cards
2017-10-22 02:17:37 +08:00
Benau
0d96906d54
Use texture buffer (texture2d in gles) for skinning
2017-10-19 13:31:07 +08:00
Benau
fa48d099f2
Fix the remaining msvc warnings
2017-10-17 10:51:52 +08:00
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
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