Commit Graph

2914 Commits

Author SHA1 Message Date
Benau
a339975df6 Clean skidmark earlier if there are many karts 2016-12-23 10:08:12 +08:00
Benau
8008ec851e Allow to use hardware skinning with opengl 3.1
Now we only need UBO to store the joint matrices to support it
2016-12-23 01:31:13 +08:00
Benau
ffa4ad84cb Merge branch 'hardware_skinning' 2016-12-22 10:38:06 +08:00
Deve
082661db65 Add a possibility to change touch device settings in GUI 2016-12-20 23:10:57 +01:00
Benau
4f2e2331ee Correct the spelling of shader files 2016-12-18 14:59:37 +08:00
Benau
752d847b09 Add the remaining shaders for GL3 hardware skinning
Also use the same shader code for normal map shader
2016-12-15 15:55:14 +08:00
Benau
a696fd6dff Add transparent skinned mesh shader 2016-12-15 09:52:02 +08: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
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
8ca0c54bdc Merge remote-tracking branch 'origin/master' into hardware_skinning 2016-12-10 10:09:30 +08:00
samuncle
ae0b1136f5 better shader for underwater vegetation 2016-12-09 11:38:56 -05:00
Benau
c68492f42b Use a for loop for four bones (thanks leyyin suggestion!) 2016-12-09 23:21:41 +08:00
Benau
94f6d09bf5 Allow indirect and azdo shadow rendering for skinned mesh 2016-12-09 22:37:17 +08:00
Benau
76e070b709 Allow GL3 to have hardware skinning 2016-12-09 18:41:13 +08:00
Benau
b7e047b4c1 Avoid using else if in skinning vertex shader 2016-12-09 14:16:30 +08:00
Benau
57d9e83ed4 First version of hardware skinning
Todo: shadow, non-instanced shaders, culling, changeable offset...
2016-12-07 02:15:11 +08:00
Benau
ed43d16a1c Allow alpha test shader to be colorizable 2016-12-04 13:21:39 +08:00
Benau
7d5f786da8 Make grass shader colorizable 2016-12-04 00:59:09 +08:00
Benau
4261a96d06 Fix inconsistency between grass shader and the instanced version
1. Assign the missing depth stencil texture (dtex)

2. Correct the movement and color
2016-12-03 15:54:59 +08:00
Benau
acf0ac909f And a correct ifdef for bindless texture 2016-11-30 15:00:08 +08:00
Benau
9e8fb63dc4 Fix AZDO with colorization
Also re-arrange texture layer
2016-11-30 13:52:06 +08:00
Benau
5884d7b9d8 Avoid using matrix4 calculation 2016-11-28 15:44:14 +08:00
Benau
45c5b0ffd6 Improved colorization in instanced rendering 2016-11-28 13:08:27 +08:00
Benau
decf3b9715 4 bindless textures + texture translation + colorization in vao 2016-11-28 10:47:14 +08:00
Benau
60908c3e1d Try to use vec2 for texture translation only
In stk, only setTextureTranslate is used which modify 8,9 of
matrix array. Also don't update it when it is identity.
2016-11-28 10:41:27 +08:00
Deve
7e4dfdb97e Remove version from graphics restrictions for sRGB-capable visual workaround.
It doesn't look that they're going to fix it soon.
2016-11-11 16:22:31 +01:00
Benau
8b069df97f Merge remote-tracking branch 'origin/renderer_refactoring' 2016-11-11 08:43:42 +08:00
LoadingPleaseWait
578a3732c0 Add help page with icons for banana penalties 2016-11-04 22:16:06 -05:00
Benau
2f0252be98 Merge remote-tracking branch 'origin/master' into renderer_refactoring 2016-10-28 21:41:49 +08:00
Benau
24f926b780 Merge remote-tracking branch 'origin/spare_tire_kart' 2016-10-18 14:32:44 +08:00
deve
5502fa4ebe Declare custom alpha also when bindless sampler is enabled 2016-10-17 08:23:27 +02:00
Benau
af223ddf24 Try to use sun color to determine custom alpha for ghost karts
This may need more adjustments, also add custom_alpha uniform float
to transparent fragment shader to remove duplicated shader
2016-10-17 01:03:10 +08:00
Benau
23a1b08efe Allow normal map karts to be used in ghost race
Also split ghost karts out of additive shader, so fixed issues like
"drivers are facing backwards", "water in abyss affects ghost karts"

Todo: maybe transparency depend on current track color?
2016-10-16 15:40:40 +08:00
Legimet
ee17928382 Fix credits for Boom-boom-boom song 2016-10-08 12:07:39 -04:00
Benau
71359a087d Add heart billboard with red kart for spare tire karts 2016-10-08 14:29:28 +08:00
hiker
ec3dd221a2 Merge branch 'doc' of https://github.com/konstin/stk-code into konstin-doc 2016-09-21 09:12:32 +10:00
Deve
852cc068d3 Restore SSAO on linux with GLES renderer. 2016-09-17 03:55:50 +02:00
Deve
d05cff09c8 Add a graphics restriction for BGRA format on android.
It causes issues with particles transparency.
2016-09-17 03:55:50 +02:00
auria.mg
6a94d12a11 Update credits 2016-09-15 20:05:06 -04:00
auria.mg
f2bf4eb549 Add new soccer ball icons 2016-09-15 20:00:00 -04:00
Deve
3a9b2b9872 Fixed advanced lighting on android 2016-09-12 21:43:31 +02:00
deve
6c9050f47a Merge branch 'master' of https://github.com/supertuxkart/stk-code 2016-08-26 10:36:09 +02:00
deve
5abc047b0c Declare precision also in vertex shaders in GLES renderer.
Some drivers complain that it was declared only in fragment shaders.
2016-08-26 10:35:48 +02:00
auria.mg
061323ffb0 Add information for translators 2016-08-23 20:01:06 -04:00
auria.mg
a07a8b6516 Fix XML files and regenerate strings 2016-08-23 19:53:41 -04:00
Aapo Rantalainen
38e5799167 Four help?.stkgui -files were treated as binary by git (#2612) 2016-08-23 19:36:16 -04:00
konstin
138daf57a4 Move credits file back 2016-08-23 11:07:13 +02:00
konstin
4ce6fb04ea Remove unused documentation and tool files 2016-08-23 01:58:53 +02:00
Deve
d5fe015ba7 Fixed typo in previous commit. 2016-08-20 08:35:08 +02:00
Deve
a001505abd Set ForceLegacyDevice for intel ironlake and for old radeon drivers.
This hopefully will allow to run STK with these graphics cards and drivers.
2016-08-20 08:13:17 +02:00
Alpt
67e94e73ce In the addons screen, show a tip to remember that the Internet connection is disabled. (Issue #1763). (#2605) 2016-08-19 18:28:59 -04:00
Elderme
41cd1e0364 merged with master 2016-08-18 22:36:19 +02:00
Michael Murphey
d213bef9db Place buttons in confirm dialog horizontally (#2573)
* Place buttons in confirm dialog horizontally closes #2548

* Use RibbonWidget for MessageDialog

* Use buttonbar for confirm dialog
2016-08-16 19:08:45 -04:00
Deve
bd6ad544cc Fixed bloom with scale_rtts_factor parameter. 2016-08-15 08:46:02 +02:00
Benau
2d95df1722 Update appdata file to latest standard 2016-08-12 00:48:57 +08:00
MTres19
8e8433f08c Credit where credit is due (#2593)
* Give GeekPenguinBR and TuxKartDriver credit

* Give credit to samuncle and konstin
2016-08-05 19:12:52 -04:00
auria.mg
ea939459e8 Improve string as suggested on transifex 2016-07-30 21:51:31 -04:00
Elderme
a21d7b4b71 Merge branch 'master' into renderer_refactoring 2016-07-26 22:16:48 +02:00
Elderme
cd1b9a66a0 Merged master in branch 2016-07-26 21:31:52 +02:00
qwertychouskie
9cbf8a0641 Update link 2016-07-23 14:16:09 -07:00
Benau
744a4705b6 Auto embolden glyph of bold face, without fallback font 2016-07-21 12:26:19 +08:00
Benau
a72f67015c Remove 36MB CJK fonts, use the previous font instead 2016-07-20 09:49:10 +08:00
Benau
89f06ed8d3 Fix crash with fixed pipeline 2016-07-18 23:56:14 +08:00
Benau
05419cd555 Initial work on new font rendering engine 2016-07-18 16:03:11 +08:00
Benau
8408a7c158 Merge remote-tracking branch 'origin/master' into colorful_track_object 2016-07-15 09:27:59 +08:00
Deve
93fc20e275 Merge OpenGL ES renderer branch
It adds support for OpenGL ES renderer, which is needed for Android port and for running STK on other embedded devices such as Raspberry Pi.

Currently it works in two ways:
- Shader-based pipeline, which requires OpenGL ES 3.0 (Android >= 4.3)
- Fallback to irrlicht-based fixed pipeline that needs OpenGL ES 2.0. The fixed pipeline generally works, but it is affected by the same issues as our OpenGL 2.1 fixed pipeline renderer.

I tried to modify our OpenGL renderer as little as possible to avoid regressions. The only one major change is that we are now using the "#stk_include" directive in shaders instead of linking multiple shaders into one program.

Currently it works only on linux. The Android port needs some refactoring. In theory it should be possible to make it working on Windows, but we would need some OpenGL ES SDK, or maybe modified libglew.

At this stage it is playable with current mesa drivers. I tested it on intel graphics card and I didn't notice any issues.

On Android only the OpenGL ES 2.0 renderer with fixed pipeline  has been tested for now.
2016-07-14 20:54:30 +02:00
Benau
53374176ad First try to support colorization texture mask 2016-07-15 00:53:22 +08: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
Benau
19acdad9b4 Replace Ubuntu font with a really free font 2016-07-11 15:52:16 +08:00
Deve
f1effe3208 Revert "Fixed a grass being too dark in some places."
This reverts commit 2b734a9579.
2016-07-09 02:20:06 +02:00
Deve
2b734a9579 Fixed a grass being too dark in some places.
It seems to be an inconsistency in using sRGB rendering.
2016-07-07 01:52:22 +02:00
Deve
04d3bfb9a1 Restore previous version of object pass shader.
This one doesn't have sense at all. We should make sure that uniforms are always initialized in c++ code.
2016-07-05 01:10:53 +02:00
Deve
9ceab23c5f Apply ssao fix from master 2016-06-30 00:50:33 +02:00
Deve
0fb119068b Fixes in more shaders 2016-06-28 21:55:51 +02:00
Benau
22e5c0909c Allow setting color without copying the mesh 2016-06-28 14:55:48 +08:00
Deve
bf54626815 Added missing file 2016-06-27 23:06:48 +02:00
deve
964baad705 Some fixes 2016-06-27 13:39:20 +02:00
deve
d5e30ee41e Port also other shaders to use #stk_include 2016-06-27 13:11:27 +02:00
Benau
892bc490f7 Make shaders run as efficient as possible 2016-06-27 13:49:27 +08:00
Deve
f679078e75 Port some basic shaders to use #stk_include.
Already working race with disabled advanced lighting :)
2016-06-26 16:39:34 +02:00
Benau
8bae12e080 Fix potential warning 2016-06-26 15:52:47 +08:00
Benau
b467d0819d Add a missed shader 2016-06-26 07:16:07 +08:00
Benau
416050a923 Use a more simple way to render red/blue karts 2016-06-26 07:14:11 +08:00
Deve
ce8a1c4e1b Already working GUI in shader-based pipeline 2016-06-25 15:10:53 +02:00
Elderme
80713ec019 Fixed glow color issue when GL_ARB_draw_indirect extension is not available 2016-06-25 14:55:51 +02:00
Benau
7e806fe86f Merge remote-tracking branch 'origin/master' into render_kart_driver_differently 2016-06-25 16:31:08 +08: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
auria.mg
f90703beb6 Move hardcoded cutscene FOV to a config file 2016-06-23 19:10:56 -04:00
qwertychouskie
c17070209d Fix warning for cards without "Radeon" in string (#2523) 2016-06-21 19:38:44 -04:00
Elderme
b359e8f9fd Merged with master, solved conflicts 2016-06-18 19:28:54 +02:00
auria.mg
8e886b796a Improve python script that sets translation authors to be able to process all files at once 2016-06-08 19:54:17 -04:00
auria.mg
1469a9e396 Update pot file, slightly breaking string freeze. Sorry about that, better late than never :S 2016-06-07 19:49:33 -04:00
Deve
cc92ee6ef3 One more tweak in SSAO.
Just use mod(x, 6.283185307179586) as suggested by mesa developer, instead converting it to degrees and back to radians.
2016-05-26 11:48:57 +02:00
Deve
cee0de3af3 Fixed a bug in my previous commit.
I forgot that sin and cos functions want angle value in radians.
Now the code looks a bit ugly, but generates proper values.
2016-05-26 02:39:35 +02:00
Deve
cdae595724 Fixed SSAO on intel.
In ssao.frag we are computing theta valaue and it looks that intel driver doesn't like too big values for sinus and cosinus computations.

I just used modulo 360 to store lower angle values in theta variable.
2016-05-25 23:16:01 +02:00
auria.mg
6f36bc5b34 Update changelog and credits 2016-05-18 20:01:21 -04:00
auria.mg
2c6e678929 Add new volcano track 2016-05-18 19:57:09 -04:00
Deve
edfc7d285c Fixed shadows and GI for mesa drivers.
The check for GL_ARB_geometry_shader4 doesn't have sense at all because we don't use this extension and our geometry shaders use functionality which is available in core OpenGL 3.2.

The reason that it wasn't working for older mesa versions must be a bug in mesa or maybe missing other functionality (but not GL_ARB_geometry_shader4).

I checked it with mesa 11.2 and current git version and it works fine on intel, nouveau and with software rendering.

It needs some testing because it potentially affects all drivers with OpenGL >= 3.2 on every platform.

If someone could test it with Radeon drivers, I would be really happy to enable it in upcoming release, at least on linux.
2016-05-18 22:19:31 +02:00