2737 Commits

Author SHA1 Message Date
hiker
3a5f398b3e Fixed installers: only include the vcredist for the right architecture,
search in bld*64 for 64 bit installer, fixed VERSION_BUILD to be empty,
changed name of installers to include XXbit.
2017-11-17 13:35:14 +11:00
Deve
a959f3c3e2 Corrrect gp info screen to keep consistency with track info screen.
Now num karts config param is updated only if spinner button or start button has been pressed.
2017-11-15 22:11:02 +01:00
Deve
2ddd4cbb09 Avoid negative AI karts number in follow the leader 2017-11-15 22:11:02 +01:00
Deve
030bc713c1 Avoid running follow the leader GP with 0 AIs 2017-11-15 22:11:02 +01:00
hiker
aa56acc830 Changed VERSION_BUILD to empty, indicating a stable version. 2017-11-14 22:44:07 +11:00
hiker
f0358ae8af Added Benau's 64-bit installer. 2017-11-14 22:27:16 +11:00
Daniel Butum
d15d958726 Modify windows installer so that it is version specific + add entry in the windows add/remove list 2017-11-14 22:00:30 +11:00
hiker
a8c858e757 Updated x86 redistributable to 2017 version. 2017-11-14 21:43:30 +11:00
hiker
2b054d1ebb Updated translator-credits, removed translations that are less
than 40% done.
2017-11-14 17:53:11 +11:00
hiker
d8ec02f2c4 Updated script to handle existing entries without duplicating authors
(or even worse msgids for translator credits).
2017-11-14 17:50:27 +11:00
hiker
bc384eb16f Merge branch '0.9.3' of github.com:supertuxkart/stk-code into 0.9.3 2017-11-14 17:50:03 +11:00
auria.mg
f4b584d908 Version number 2017-11-13 18:27:20 -05:00
hiker
3154130a97 Updated translations. 2017-11-14 09:55:46 +11:00
Deve
c429b466cd Avoid a crash in ghost replay screen.
It was crashing when add-on track was uninstalled.

It only avoids a crash and it's not true fix, because replays list should be updated when add-ons have been installed/uninstalled.
2017-11-13 22:36:44 +01:00
auria.mg
c92003b4bf Update version numbers 2017-11-12 19:13:24 -05:00
Deve
191542e26e Allow to compile STKRelease build with debug symbols.
It may be useful for decoding backtraces from our linux static package.
2017-11-12 23:58:57 +01:00
auria.mg
2c54549cb0 Fix #2990 2017-11-11 18:16:15 -05:00
Deve
17dbe47e2e Avoid semi-transparent window on some compositors 2017-11-10 23:13:35 +01:00
Benau
dcfae897ca Read only 4 bytes for tangent (unused atm), remember update stk-assets 2017-11-09 12:24:44 +08:00
Deve
603ad87ffe Allow to move installed apk to sdcard 2017-11-08 22:07:30 +01:00
Deve
2a5baac331 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:53:54 +01:00
hiker
8ce6f4de7c Fixed server-only execution. 2017-11-08 01:26:48 +11:00
Benau
1f4599b92e Expose race mode for scripting 2017-11-06 15:16:55 +08:00
auria.mg
7acc36d015 Fix FTL reset bug, fixes #3019 2017-11-05 18:22:46 -05:00
Deve
77597da26f Fixed 64-bit dependencies.
Thanks to qwertychouskie for finding it.
2017-11-05 21:55:35 +01:00
Deve
dfdc1a26b3 Ignore some configuration changes that don't matter for us.
The "orientation" without "screenSize" was a clear bug. And now connecting external keyboard doesn't close STK for me anymore.
2017-11-04 22:07:46 +01:00
Benau
3a6b429c40 Don't raycast driveable objects that are not enabled 2017-11-05 01:35:02 +08:00
Benau
cb2f3e56d5 Allow exact shape to be used with tangents mesh 2017-11-05 00:56:30 +08:00
Benau
7d9f345fbd Allow light to be disabled by scripting 2017-11-04 14:05:20 +08:00
Benau
6770277de7 Fix #2949
Use clamp to edge sampler
2017-11-04 09:25:28 +08:00
QwertyChouskie
fa86bbd506 Prevent upgrades to 0.9.3 causing all particles to be disabled
Older version's "false" in the config file translates to "0", which disables all particles in 0.9.3.  Mitigate this by renaming the variable.

See https://forum.freegamedev.net/viewtopic.php?f=17&t=7662&sid=71b18d47f0b9d436d4bd17c2da8cbb86#p74823 for an example of this causing confusion.
2017-11-04 00:01:56 +01:00
Benau
21382e94f4 Clarify running commands location 2017-11-03 21:19:12 +08:00
Urtzi Odriozola
0e8cd5a260 All languages capitalized
In order to keep a correct order in a language selection menu, the language names need to be capitalized
2017-11-03 21:10:40 +08:00
Urtzi Odriozola
49c068dc25 Update localized_name.txt 2017-11-03 17:03:56 +08:00
Deve
bcc6a18f40 Add missing languages to tinygettext 2017-11-02 22:21:32 +01:00
Deve
f18d76777f Remove invalid empty translations.
They are not available on transifex. Norwegian is nb and nn. Chinese is zh_TW and zh_CN.
2017-11-02 22:21:21 +01:00
auria.mg
49997122de Clarify UI in game paused dialog of story mode, fixes #3004 2017-11-01 19:28:22 -04:00
auria.mg
1cbd96b911 Attempt to fix #2997 2017-11-01 19:08:57 -04:00
auria.mg
d8bd5d9c07 Tweak challenge that was too difficult. See #2997 2017-10-31 19:07:05 -04:00
auria.mg
acb605ec92 Hide networking stuff (again) 2017-10-30 12:12:45 +08:00
Deve
82cf56d773 Add a possibility to overwrite assets dir using environment variable.
It fixes #2982 when both SUPERTUXKART_DATADIR and SUPERTUXKART_ASSETS_DIR are set.
2017-10-29 21:06:14 +01:00
Deve
8ecb308948 Better fix for shadow acne 2017-10-29 20:24:00 +01:00
Benau
9aef3f7f66 Fix #2988 2017-10-30 02:15:31 +08:00
Benau
37e7a5aa6b Fix wrong normal, vertex 2 color and memory leak of texture quad
Fix #2979
2017-10-30 02:15:23 +08:00
Benau
f62accb0ae Remove the dead elephpant 2017-10-30 02:15:15 +08:00
auria.mg
52a1e1751d Fix #2977 2017-10-29 14:07:56 -04:00
Benau
344f255252 Update Changelog 2017-10-27 14:38:52 +08:00
hiker
e2083cef2e Updaetd translator credits. 2017-10-27 11:11:03 +11:00
auria.mg
8d1b8058bb #2734 2017-10-25 20:19:46 -04:00
auria.mg
b648ae392a Fix #2734 2017-10-25 20:16:52 -04:00
hiker
1b7d3dab2c Merge branch '0.9.3-rc1' of github.com:supertuxkart/stk-code into 0.9.3-rc1 2017-10-26 10:18:25 +11:00
hiker
b7162921bf Updated credits to include all doncators and other contributors. 2017-10-26 10:16:38 +11:00
Deve
405a6e46d8 Avoid tinygettext warning 2017-10-25 23:58:46 +02:00
hiker
9405df4c7e Updated version number (except supertuxkart.nsi). 2017-10-26 00:07:48 +11:00
Benau
50c79ed0a8 Fix b3d with more than 4 weights per vertex 2017-10-25 13:13:42 +08:00
Benau
f1f0c5e27a Fix #2917 2017-10-25 12:34:14 +08:00
auria.mg
4f03933c11 Update version number 2017-10-24 18:56:50 -04:00
Benau
537ddd6e78 Add Karelian localized name 2017-10-25 00:25:42 +08:00
hiker
40e8a6effc Updated translations. 2017-10-25 00:34:50 +11:00
hiker
6476af46cd Replced unicode characters with ascii characters. 2017-10-24 10:27:00 +11:00
hiker
d6251054cb Merge branch 'master' of github.com:supertuxkart/stk-code 2017-10-23 09:45:20 +11:00
hiker
4c1874ebf8 Hopefully fix #2939 (backpedal animation flickers when stopping and
left/right is being pressed).
2017-10-23 08:44:17 +11: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
aa080db501 Fix resolution change crash
UpdateFlips stop working if we don't m_flips_data.clear();
2017-10-22 01:52:37 +08:00
Benau
a0991c3233 Don't use unsync map buffer
It causes regression in hd5670 in windows

Although we should update ubo only once per frame
2017-10-22 01:51:45 +08:00
Benau
6a79d204c1 Don't use SSBO for skinning
It causes trouble in hd5670 in windows
2017-10-22 01:31:15 +08:00
Deve
cf26337bd4 Fixed particles in multiplayer mode 2017-10-21 08:18:28 +02:00
hiker
7f1c460227 Merge branch 'master' of github.com:supertuxkart/stk-code 2017-10-21 01:00:44 +11:00
hiker
d7f5fb9e69 Avoid flicker when a kart with backpedal animation is stopping and
left/right is pressed (see #2939).
2017-10-21 00:58:25 +11:00
Benau
6896c44da8 Clang fix 2017-10-20 18:35:28 +08:00
Benau
42a3eb1880 Uniform vertex color for fonts in all pipelines 2017-10-20 18:21:55 +08:00
Benau
e61eb3415a Remove hardcoded max 1024 bones for skinning 2017-10-20 17:10:08 +08:00
Benau
1b70144c80 Reserve a graphics restriction for hardware skinning 2017-10-20 14:00:38 +08:00
Benau
fd0eaf064f Show a ghost hat for ghost kart 2017-10-20 10:05:49 +08:00
Benau
8a0232382a Some fixes for some shader compiler 2017-10-20 09:25:43 +08:00
Benau
ebdde49984 Merge remote-tracking branch 'origin/master' into tbo_skinning 2017-10-20 08:36:54 +08:00
Deve
5216f8e917 Fixed jump explosion on android 2017-10-19 21:44:50 +02:00
Benau
553b2439ac Allow using SSBO for skinning if supported 2017-10-20 01:27:44 +08:00
Benau
0d96906d54 Use texture buffer (texture2d in gles) for skinning 2017-10-19 13:31:07 +08:00
Deve
1a9cf6a46f Set max texture size to 256 for Raspberry Pi 2017-10-18 21:13:23 +02:00
Deve
9ec06f122c Allow to filter graphical restrictions by vendor 2017-10-18 20:51:26 +02:00
auria.mg
204e715637 Fix build 2017-10-17 20:08:15 -04:00
Deve
c3e772e863 Add different explosion effect for Android.
It gives much better performance while it still looks similar.
2017-10-17 23:34:19 +02:00
Deve
77161cc583 Avoid compilation errors for GLES 2017-10-17 23:34:19 +02:00
Deve
f034b3c22b Add tracks for apk 2017-10-17 23:34:19 +02:00
Benau
b204c492ef Update syntax 2017-10-17 12:15:37 +08:00
Benau
6a74b88273 Update readme and changelog 2017-10-17 11:53:22 +08:00
Benau
aaa8befe0a Fix appveyor build 2017-10-17 11:04:28 +08:00
Benau
fa48d099f2 Fix the remaining msvc warnings 2017-10-17 10:51:52 +08:00
Benau
fb6a0d7631 Merge remote-tracking branch 'origin/master' 2017-10-17 10:25:22 +08:00
Deve
1454e53b79 Set proper min sdk version for 64bit build 2017-10-16 21:31:17 +02:00
Benau
88e15147b8 Merge remote-tracking branch 'origin/win-64bit' 2017-10-17 00:55:22 +08:00
Benau
e47aa5d567 Take relative path issue into account when unloading texture
Now except global particle textures all textures loaded by track can be
clean properly
2017-10-16 16:09:07 +08:00
Benau
c8d13d7360 Preload the particle textures when first load
This prevent hangs when lazy loading texture runtime
2017-10-16 14:22:09 +08:00
Benau
7e0d706946 Don't call setLastTriggeredCheckline for check cannon
It will override the track check line
2017-10-16 13:47:21 +08:00
Benau
9f10676dd3 Remove unused billboard shader 2017-10-16 07:43:00 +08:00
Benau
30e78fb1c0 Merge branch 'fix_2427' 2017-10-16 07:25:38 +08:00
hiker
9166e704e9 Take ball squashing into account when computing the ball height (so now
the basketball properly touches the ground if its height is 0).
2017-10-16 10:10:33 +11:00
Benau
c7dbe715fc Remove duplicated and unused code 2017-10-16 00:48:08 +08:00
Benau
4573e51e98 Fix #2427 2017-10-15 19:14:07 +08:00
Benau
a7debc286a Check flips using unordered_set 2017-10-15 15:05:49 +08:00
Benau
058f9163db Some work to make particle shader able to render billboard
The lifetime in height map stimulation will always now < 1.0f
2017-10-15 13:57:01 +08:00
Benau
f646a26fbe Clean up particle .xml
Remove unsupported entries, notice that particles now are auto-
faded out by lifetime

Also remove flips that are not visible at all
2017-10-15 12:47:21 +08:00
Benau
998b11ed51 Add an option to disable pre-generation for explosion particles
Also remove some unused code
2017-10-15 11:32:58 +08:00
Benau
b1f4ced6f0 Fix bounding boxes in legacy pipeline 2017-10-15 00:18:11 +08:00
Benau
85adab6e1e Allow to use new STKParticle with legacy pipeline
Due to cull face issue the kart exhaust is still not visible
2017-10-14 15:42:10 +08:00
Benau
088d09cb64 Don't hardcode first vbo size 2017-10-14 14:42:54 +08:00
Benau
c3a22ddcf7 Pre-generate some particles if max count is small 2017-10-14 14:42:24 +08:00
Benau
a0c9ba2b8c Pack mixed color into instanced array
With half-floats for lifetime and size for same stride
2017-10-14 12:33:08 +08:00
Benau
e49a7139d7 Split MiniGLM for more usage (instancing, cpu particle, network...) 2017-10-14 11:00:51 +08:00
Benau
0b9a3e1c69 Fix some issues found in first-try 2017-10-14 09:47:13 +08:00
Benau
0066722dab Features completed cpu particle 2017-10-14 00:19:59 +08:00
Deve
63ecbefbdd I forgot about particles 2017-10-12 22:55:26 +02:00
Deve
928ae4e44d Try to fix server-only compilation 2017-10-11 21:50:44 +02:00
Deve
b0cdbd94b4 Merge branch 'srgb_fb' 2017-10-11 21:46:58 +02:00
Deve
c1e17f0593 Add a fallback for intel on linux.
When workaround with alpha_channel=true failed, then fallback to the path with disabled srgb framebuffer.
2017-10-11 21:39:13 +02:00
Deve
6794670510 Disable srgb framebuffer for intel hd 2000 too 2017-10-11 20:53:49 +02:00
Benau
9304f6fa3c Disable the usage of all parts colorized
Please use colorization mask for better effect
2017-10-11 13:05:15 +08:00
Benau
839142b752 Add up-to-date restriction for hd3000 in windows 2017-10-11 11:25:28 +08:00
Ben Krajancic
865426aad7 Small clarification to prevent build errors (#2954)
Building outside of this directory prevents the executable from launching, this small addition can help prevent this issue from happening.
2017-10-09 21:10:50 -04:00
Deve
ae4e302741 Add a way to run STK without srgb framebuffer 2017-10-09 21:18:15 +02:00
auria.mg
0453809915 Update credits 2017-10-08 19:56:13 -04:00
Benau
10e3467f96 Merge remote-tracking branch 'origin/better_rescue_animation' 2017-10-09 07:44:50 +08:00
hiker
fba22def40 Merge branch 'master' of github.com:supertuxkart/stk-code 2017-10-09 10:29:24 +11:00
hiker
b97088c933 Fixed computation of new point. The previous approach was based on
the newly computed point. If this point should be under the track,
and the new height is not enough to offset this, the ball will be
tunnelling, which results in the ball being reset to the previous
position, i.e. the ball will not move.
2017-10-09 10:25:36 +11:00
hiker
f94b3a9120 Added more debug info, removed unused code. 2017-10-09 10:25:11 +11:00
Benau
2217083421 Replace broken abyss replay with candela city 2017-10-08 11:16:25 +08:00
Deve
48d94e10a7 Use separate os name for android stats 2017-10-07 21:37:59 +02:00
Benau
4f1becb20d Add a better rescue animation
Also fix #2501
2017-10-06 23:42:23 +08:00
Benau
cf2a9f7089 Allow configurable exhuast particle, fixes #2878 2017-10-06 01:08:27 +08:00
auria.mg
3ad081104e Re-extract strings for missing track, oops 2017-10-04 20:59:30 -04:00
auria.mg
7a63955a06 Minor challenge tweak 2017-10-04 18:56:43 -04:00
auria.mg
1c9e4bc04a Tweak hacienda easy challenge, see #2951 2017-10-04 18:50:27 -04:00
Deve
bc84559f1d Revert a hack for shadows.
It helps for horizontal surfaces, but makes vertical surfaces worse (for example rocks in cornfield crossing), so it's not really a solution.
2017-10-04 22:19:19 +02:00
auria.mg
0f790d4331 Update strings 2017-10-03 19:04:34 -04:00
Deve
27a79526b1 Allow to use particles heightmap simulation in GLES 2017-10-02 23:05:12 +02:00
Deve
843ebad9a1 Don't use GL_FRAMEBUFFER_SRGB in GLES 2017-10-01 22:25:37 +02:00
Benau
d6d1fa40c0 Use a hack to get the "real" transformation for bones
Sometimes the value return before was not as correct as in blender

Todo: expose it in mesh interface
2017-10-01 15:20:37 +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
d99b2d4b5a Fixed a crash in overworld after kart selection screen when accelerometer is enabled 2017-09-30 23:08:17 +02:00
Benau
f1dfabdcc2 Update Changelog 2017-09-30 14:55:14 +08:00
Sam
c4726e767a Merge branch 'master' of https://github.com/supertuxkart/stk-code 2017-09-28 20:07:17 +02:00
Sam
e3bfa79d43 Now you must progress the story mode to unlock sara the wizard 2017-09-28 20:05:12 +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
126991118d Now only irrlicht depends on x11 2017-09-27 21:45:08 +02:00
Deve
e2c0f83fb0 Move patform specific code from irr_driver to irrlicht devices 2017-09-27 17:37:56 +02:00
Benau
e655c5e971 Don't initInverseBoneMatrices for < version 3 karts
grep -rn speed-weighted-object in deveee's addon karts show nothing
(even most addons)
2017-09-20 13:27:46 +08:00
auria.mg
4078863d1d Update achivements.xml, fixes #2940 2017-09-19 18:44:05 -04:00
Deve
70471a7266 Adjust explosion particle size to updated explosion image (removed transparent margins).
Causes minor performance improvement, but better than nothing.
2017-09-19 22:42:39 +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
Benau
b09eec4bcb Allow speed weight objects to be attached to bone 2017-09-18 11:27:21 +08:00
Deve
f6fa44f0df Request srgb colorspace on wayland 2017-09-17 21:51:07 +02:00
Benau
cef65cb98a Use the same radius as before 2017-09-17 08:44:58 +08:00
Deve
29ba4ee543 Avoid a warning about missing texture in race result gui 2017-09-16 23:38:26 +02:00
Benau
12188c5287 Allow sharing headlight model and config its color (for gnu) 2017-09-16 14:46:21 +08:00
Benau
00660293b7 Fix #1795, fix #2755 and fix #2886
Allow using bone attachment in straight-frame static mesh.

Advanced headlight rendering with light origin from center mass
of headlight model which can be bound to any bone in kart model
2017-09-15 20:08:38 +08:00
auria.mg
32243e7eb3 Update the newlt-added icons with ones whose liense is known 2017-09-14 19:44:34 -04:00
auria.mg
024b642d27 Add margin 2017-09-14 19:24:23 -04:00
auria.mg
1d2e882ffe Merge branch 'master' into master_fhach
# Conflicts:
#	src/guiengine/widgets/kart_stats_widget.cpp
2017-09-14 19:24:06 -04:00
Deve
04cc5bb62c Make sure that music pointers are always null when deleted 2017-09-13 21:11:12 +02:00
deve
9681a9586f Update supertuxkart.pot 2017-09-13 06:20:20 +02:00
deve
6500cf716a Use better names in touch device settings 2017-09-13 06:18: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
be4d0e7208 Fixed a crash when starting ghost replay 2017-09-12 20:14:10 +02:00
deve
6829bb1e51 Fixed aspect ratio for icon button widget.
It happened when using non-hd textures. Textures with aspect ratio != 1, are scaled to MAX_TEXTURE_SIZE, for example from 512x256 to 256x256, so we can't base on scaled texture size.

Btw. such behaviour seems to not have a sense (for example 2048x256 will be scaled down to 256x256), so it may need some work in stk_texture.cpp.
2017-09-12 06:10:23 +02:00
Deve
fd00ef4d92 Fixed a crash in grand prix editor 2017-09-09 21:25:56 +02:00
deve
4610572649 Don't draw explosion particles if only important effects are selected in options.
It causes slowdown on some devices, i.e. from 30fps to 5fps when explosion occurs very near of the camera. So disable it for lowest graphical level.
2017-09-08 06:25:21 +02:00
Deve
f96863c421 Add a possibility to totally disable particles.
Particles cause a crash on some radeon devices, so people can at least disable it to make the game working.
Also tfb causes quite big slowdown on slow devices even if there is no particles displayed, so it can give few more fps.
2017-09-08 00:33:46 +02:00
QwertyChouskie
039a7d0ecc Put screenshots in ~/.local/share/supertuxkart/screenshots (#2932)
* Put screenshots in ~/.local/share/supertuxkart/screenshots

Instead of `~/.cache/supertuxkart/screenshots`.

* whoops :(
2017-09-06 20:22:05 -04:00
auria.mg
5e8f25a1fc Add a slight delay when triggering the falling camera, avoids triggering it too soon when the kart is not yet sure to fall 2017-09-06 19:23:58 -04:00
Benau
88972f8308 Cache all mipmap levels for compressed texture
Not sure if devee has super-fast loading speed like me
2017-09-06 15:14:36 +08:00
Benau
ee3d0df242 Try to fix "Cannot find container_id for texture" for models 2017-09-06 15:13:50 +08:00
hiker
92aec928a1 Tweaked physics so that wheel raycasts happen from inside the collision shape
(fixes karts getting stuck at borders), use a longer less bevelled collision
shape better kart stability), and reduce angular factor to make it less
likely that karts can drive on walls.
2017-09-06 09:06:04 +10:00
hiker
5cbcd79cca Merge branch 'master' of github.com:supertuxkart/stk-code 2017-09-06 09:02:33 +10:00
Deve
8a3cdb4fef Don't link with useless libs.
Also remove custom script for xrandr.
2017-09-05 00:19:55 +02:00
hiker
416b93b0a1 Reset steering when calling reset in a kart, which results in more accurate
physics replays.
2017-09-04 18:08:14 +10:00
hiker
71978e2bb0 Merge branch 'master' of github.com:supertuxkart/stk-code 2017-09-04 10:43:00 +10:00
auria.mg
15ea4a8f17 Merge branch 'master' of https://github.com/supertuxkart/stk-code 2017-09-03 20:38:16 -04:00
auria.mg
b974b35a07 Code cleanup in kart audio code 2017-09-03 20:37:43 -04:00
hiker
5d51b7fcd1 Added #define to switch between AI-debugging-topview camera (high up)
and physics-debugging-topview camera (close to kart).
2017-09-04 08:41:21 +10:00
hiker
bd6c2d9b21 Allow setting bevel to 0, fix incorrect Y position when using bevelled
values for wheel positions.
2017-09-04 08:30:31 +10:00
Deve
b820a60e98 Tweak default accelerometer sensitivity.
Also move it to the config file.
2017-09-03 23:39:03 +02:00
auria.mg
beb10863c4 Continue optimizing OpenAL sources, see #2921 2017-09-02 22:49:36 -04:00
auria.mg
cb2295c738 Improve kart audio refactor, see #2921 2017-09-02 22:35:41 -04:00
auria.mg
663c7aacaf Tweak kart audio code to use fewer OpenAL sources (see #2921). Seems to work well, though I need to take a closer look to make it thread-safe 2017-09-02 22:00:37 -04:00
auria.mg
590ec78640 Update changelog 2017-09-02 21:54:02 -04:00
Deve
1123ceeceb Don't try to create textures for empty names.
It's not designed to work with empty file names, because the "existFile" function in irrlicht returns true for directories, our file manager doesn't check that it's a directory and generally strange things happen.

This solves a problem with luna track that doesn't have a screenshot and possibly with some broken add-ons, so that valgrind doesn't complain anymore.

Benau, feel free to revert it if you have better solution.
2017-09-03 00:04:29 +02:00
Deve
6710fc2a5c Don't add absolute path if screenshot name is empty 2017-09-02 23:47:25 +02:00
Deve
6f11a1669f Make particles in GLES renderer to look a bit better.
Now kart exhaust is not too dark anymore.
2017-09-02 01:01:35 +02:00
Benau
f07a7062b3 Add min / max height testing for all graphs 2017-09-01 14:12:10 +08:00
hiker
f7397028ff Merge branch 'master' of github.com:supertuxkart/stk-code 2017-08-31 23:55:33 +10:00
hiker
4759ff2490 Cancel the setAnimationEndCallback when a non-existing animation is
tried to be set. Fixes #2628.
2017-08-31 23:47:39 +10:00
auria.mg
64c1e8d19c Fix SFX leaks 2017-08-30 20:39:20 -04:00
Deve
69e26d7561 Remove unclear warning.
Weather node without particles is fine and it's used in Blackhill Mansion (just for lightning). The warning was suggesting that something is wrong there.
2017-08-30 21:21:43 +02:00
hiker
0dd3bbbd9b Changed severity level so that additional information in case of a crash
is certain to be seen.
2017-08-30 17:54:45 +10:00
hiker
7a3448a159 Merge branch 'master' of github.com:supertuxkart/stk-code 2017-08-30 17:52:41 +10:00
hiker
c33ee321cc Merge branch 'master' of github.com:supertuxkart/stk-code 2017-08-30 17:49:59 +10:00
hiker
4440c7e40a Added error check for alDeleteSource. 2017-08-30 17:46:07 +10:00
deve
8c73b67309 Update supertuxkart.pot 2017-08-30 06:50:51 +02:00
deve
2de3a39e04 Make device name translatable 2017-08-30 06:46:55 +02:00
auria.mg
6e30154fc3 Update strings 2017-08-29 19:48:32 -04:00
Allan Nordhøy
f08b53c1fc Spelling: Chose, add-ons, low, command-line (#2914)
* Spelling: Chose, add-ons, low, command-line, HTTPS

* Back to http for privacy.supertuxkart.net

It auto-negotiates for https from Let's Encrypt when connected to through http, strange.
2017-08-29 19:47:07 -04:00
Deve
e05ef71b77 Make it clear that NDK >= r15b is atm. not supported 2017-08-29 22:00:45 +02:00
Deve
184ecce836 Reset multitouch buttons state when game is restarted 2017-08-29 22:00:45 +02:00
Deve
65363a2fa0 Move multitouch race gui creation.
It's to avoid duplicated buttons because result gui uses gui_base too.
2017-08-29 22:00:45 +02:00
Benau
ba55fc7d2e Fix previously always true statement
bufferSize (Real*BOSize) was never used and set
2017-08-29 10:31:56 +08:00
auria.mg
96c4e26ef3 Update strings 2017-08-28 19:36:34 -04:00
hiker
ab6fbd2609 Merge remote-tracking branch 'origin/master' into fix-ball-cannon 2017-08-29 09:19:41 +10:00
hiker
cf98e049b0 Fixed sliding (i.e. not being able to drive up steep uphill sections). Fixes #2906. 2017-08-29 08:23:06 +10:00
Deve
2fdb33990e Tweak some touch device params.
Better on 5'', worse on 10''... Can be changed in options anyway.
2017-08-28 22:25:32 +02:00
Deve
704d3ea9d9 Try to make touch device a bit more comfortable 2017-08-28 22:25:32 +02:00
Benau
ea58a736d5 Fix displace fallback in non-advanced pipeline 2017-08-28 13:04:41 +08:00
Benau
7b571de395 Fix the wrong "misuse"
Now you can play hot.ogg
2017-08-25 16:39:34 +08:00
auria.mg
5999e83cba Update changelog 2017-08-23 19:02:19 -04:00
auria.mg
e852714466 Update challenges for new city track 2017-08-23 18:52:10 -04:00
Deve
6465cc4569 Minor fix in graphics restrictions.
Some android restrictions are very basic, eg. UniformBufferObject is disabled on whole platform. So make sure that it's not used on any exotic OS.
2017-08-23 21:18:45 +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
850afc8620 Allow using animated texture with displace shader
Plus some clean-up
2017-08-23 00:55:25 +08:00
Deve
6a03f147f6 Add a possibility to use ubo on gles.
Disabled by default on android, because it's been tested on only one device and it's a bit slower in most cases.
2017-08-22 00:02:34 +02:00
Deve
bd84929982 Don't convert gloss maps.
It causes artifacts when advanced lighting is enabled.
2017-08-21 11:30:49 +02:00
Benau
ad369b88da Remove .b3d usage in stk-code 2017-08-21 16:02:06 +08:00
Benau
a8e20101f8 Make SPM loader more portable (for stk-editor later)
Also allow calculating normal if required
2017-08-21 14:57:33 +08:00
hiker
f1f8bf0e4d Oops - fixed unexplainable #includes ... I am sure I didn't put them in :P 2017-08-21 14:59:28 +10:00
hiker
6d61ef7fb9 Use StringUtils instead of strrchr, some code cleanup. 2017-08-21 08:47:28 +10:00
hiker
5a35bb6195 Made crash reporting work with 32- and 64-bit windows executables. 2017-08-21 08:11:03 +10:00
Deve
d698e62053 Minor fix in video settings dialog 2017-08-19 22:09:42 +02:00
Benau
1ca6a6edea Remove the need of 2nd UVmap for displace objects 2017-08-19 08:51:09 +08:00
Benau
4c0b28a43e Fix speed weight object looping in non-animated character 2017-08-17 15:48:21 +08:00
Benau
fd7bf80493 Fix kart selection screen animation if only 1 kart 2017-08-17 15:28:04 +08:00
Deve
ad062d3b81 Fixed indentations 2017-08-17 00:11:25 +02:00
Deve
3cf8649a6e More work with generate_assets script.
Now uncompressed tux with .spm takes just 350 kb.
2017-08-17 00:11:25 +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
Deve
196fe378b4 Fix for png->jpg converter.
It's possible that there are multiple file names in single parameter, for example:
<sky-box texture="0006.png 0001.png 0004.png 0002.png 0003.png 0005.png" ... />
now it should work.

Also use is_opaque rather than has_alpha that gives better results.
2017-08-15 23:03:22 +02:00
hiker
01be800253 Fixed stack traces for win32 (#2642). 2017-08-15 23:54:39 +10:00
Deve
8fa0e4e7b3 Make it less verbose 2017-08-15 10:12:56 +02:00
Deve
4da945f710 Move duplicated code to separate function 2017-08-15 10:12:56 +02:00
Deve
0a2d05a998 Add a possibility to convert png->jpg for spm format for smaller apk 2017-08-15 10:12:56 +02: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
0bf0ca0a35 Fixed memory leak 2017-08-13 01:38:21 +02:00
Deve
1f4a9135b6 Remove useless elif 2017-08-13 01:38:21 +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
50c3ac671b Merge branch 'master' of github.com:supertuxkart/stk-code 2017-08-11 10:10:27 +10:00
hiker
3923da30bc Use unique names for profiler events. 2017-08-11 09:41:22 +10:00
hiker
5b68e18df4 Fix cygwin support. 2017-08-11 09:38:58 +10:00
auria.mg
936ef3c4c7 Update changelog 2017-08-09 19:37:49 -04:00
hiker
587687a614 Merge remote-tracking branch 'origin/fix-2850' 2017-08-09 21:40:44 +10:00
hiker
626f540b15 Merge branch 'Fix-2617' 2017-08-09 21:21:03 +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
8be5443f8c Merge branch 'fix-profiler' into improve-xbox-gamepad-support 2017-08-09 17:56:40 +10:00
hiker
d46b03b317 Hopefully fixed cygwin build problems. 2017-08-09 17:54:29 +10:00
Benau
861e7f7ebd Remove contradiction 2017-08-09 15:36:26 +08:00
Benau
cc8331f5cd Fix #2897 2017-08-09 15:03:37 +08:00
Benau
79c6705bb1 Fix #2814 2017-08-09 13:00:09 +08:00
Benau
ea97258b65 Add scripting code for throwing banana monkeys 2017-08-09 12:23:37 +08:00
auria.mg
94bb657102 Ignore input sensing coming from the wrong gamepad 2017-08-08 20:44:31 -04: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
auria.mg
f589bbea04 Attempt to fix 2617 2017-08-08 20:23:22 -04: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
0acda38987 Add profiling events to sfx manager, but they are commented out
by default (using preprocessor directives), since they are typically
not useful.
2017-08-08 16:44:55 +10:00
hiker
6a0fb83209 Clear existing events when the circular buffer wraps around. 2017-08-08 16:36:54 +10:00
hiker
d29d2b831f Only use start and end time for thread 0, since all other threads
might not have valid start and end times (since they can record
several identical events during one frame). Bars for all other
threads can therefore not be nested.
2017-08-08 16:09:49 +10:00
hiker
887814ea98 Fixed incorrect start and end time setting when synchronising
frames. Only use thread 0's start and end time to compute the
duration (since other threads might have multiple identical
events during one frame, resulting in incorrect start times).
2017-08-08 16:08:15 +10:00
Deve
0a715ac31a Fixed 32-bit mingw compilation 2017-08-07 22:33:57 +02:00
hiker
620d1f34c1 Link in xinput on windows builds. 2017-08-07 23:50:09 +10:00
hiker
6783ab26f8 Keep a list of all event names in the order in which they first
appear. This list allows the proper ordering of events when drawing
the bar chart to show nesting. Make sure that enabling the profiler
starts at the next synch point (to avoid incomplete event pairs).
Create a seprate output file for each thread.
2017-08-07 17:53:15 +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
Deve
b6df36fc39 Don't hardcode build-tools version 2017-08-06 23:15:08 +02:00
Deve
bc6ff38b22 Simplify light factor when advanced lighting is disabled.
In this case only diffuseMatColor really matters, other values are constant.

It improves performance on GLES renderer and it's also noticeably faster for GL on desktop.
For example:
- fps increased for me from 60 to 69 on Hacienda with intel HD 4000
- from 43 to 49 on lighthouse

There is much less difference on nvidia graphics card, but still it gives small performance improvement.
2017-08-06 22:18:18 +02:00
hiker
4c55ca4da9 Merge commit 'e6a134c3479ccdbaf91bb36d46ffb64b6a3b52b9' into improve-xbox-gamepad-support 2017-08-06 22:58:49 +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
Geoffrey Mon
a73af6eb0d Save and use usernames in replay files (#2754) (#2893)
* Save and use usernames in replay files

Fixes #2754.

* Store usernames of each racer in recorded replay files
* Display those usernames in a column of the replay selection UI
  and in race result dialogs
* RaceResultGUI::getKartDisplayName functionality moved into
  Controller::getName

* Move Controller::getName definition to avoid unnecessary #include

* Backwards compatibility: use kart name if username is not in replay

* Fix code style issues
2017-08-03 19:51:42 -04:00
hiker
623bb460c6 Merge branch 'master' of github.com:supertuxkart/stk-code 2017-08-03 21:23:32 +10:00
hiker
04c775eead Don't measure lock time, some whitespace cleanup. 2017-08-03 21:21:40 +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
Geoffrey Mon
802d70ca8d Fix code style issues 2017-08-02 17:21:37 -04:00
Deve
1d2ff0bc47 Remove more unused files 2017-08-02 22:03:01 +02:00
Deve
e9496caa71 Merge pull request #2892 from qwertychouskie/cleanup2
Cleanup V2
2017-08-02 21:49:58 +02:00
Geoffrey Mon
9ec2ff5c4a Backwards compatibility: use kart name if username is not in replay 2017-08-02 14:13:26 -04:00
Geoffrey Mon
ca5258a46c Move Controller::getName definition to avoid unnecessary #include 2017-08-02 13:48:44 -04:00
Benau
ac406e1e00 Fix #2891 2017-08-03 01:34:35 +08:00
Geoffrey Mon
f3a962c391 Save and use usernames in replay files
Fixes #2754.

* Store usernames of each racer in recorded replay files
* Display those usernames in a column of the replay selection UI
  and in race result dialogs
* RaceResultGUI::getKartDisplayName functionality moved into
  Controller::getName
2017-08-02 12:55:23 -04:00
Qwerty Chouskie
14ea69dc90 Cleanup V2 2017-08-02 09:29:15 -07:00
hiker
203995262c Exclude the time to get the lock from profile measurements. 2017-08-02 22:40:19 +10:00
hiker
d8fe700f64 Don't store data when the profiler is disabled. 2017-08-02 08:48:01 +10:00
hiker
d800a8c0bc Made everything threadsafe. 2017-08-02 08:34:43 +10: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
hiker
ea12c8f494 Very first version of profiler that supports multiple threads
and handles events in branches better.
2017-07-31 22:56:47 +10:00
hiker
47d2e30c5f Fixed compiler warnings. 2017-07-31 22:56:00 +10:00
hiker
e6a134c347 Fix 2850 by increasing the number of axis for a gamepad to include
D-pad.
2017-07-30 23:05:27 +10:00
hiker
65c8cb7ae1 Replaced arrays with std::vector (to get better error checking). 2017-07-30 23:03:40 +10:00
Deve
a89b2f5df2 Minor tweak for linux icon.
On freedesktop specs they suggest to use 48x48 icon.
2017-07-30 12:56:25 +02:00
Deve
7d4fbb8d0c Minor modification in play tutorial text. Fixes #2535 2017-07-29 00:43:17 +02:00
QwertyChouskie
0be10ce448 Fix MinGW cross-compilation (#2883)
* Fix MinGW x64 cross-compilation

* Fix MinGW x86 cross-compilation
2017-07-22 20:17:31 -04:00
Benau
979e1546fb Fix #2881, only create a camera when initializing 2017-07-21 09:27:57 +08:00
auria.mg
1770d01e07 Changelog, continued 2017-07-20 19:57:42 -04:00
auria.mg
b2fd3d341a Changelog 2017-07-20 19:50:46 -04: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
Benau
10909b9556 Remove m_scale_rtts_factor == 1.0f in image quality for now
Because not working in advanced pipeline
2017-07-20 10:19:30 +08:00
samuncle
a3d6f2f453 Start to update the changelog for the release (please add/correct if needed) 2017-07-19 19:35:04 +02:00
Deve
11b2409fab Activate accelerometer only if needed 2017-07-18 21:43:45 +02:00
Deve
20850c9811 Remove unused cmake option 2017-07-18 00:11:09 +02:00
Deve
bbee93dfe8 Update readme and generate_assets script.
The issues on android 4.4 + qualcomm should be already fixed in 8653d410f8 and d44802a482

I also added few lightweight tracks and karts to the apk
2017-07-14 22:04:52 +02:00
Deve
cbba2b6b7d Merge pull request #2880 from scootergrisen/patch-2
Add danish translation
2017-07-14 06:21:38 +02:00
scootergrisen
cb8e0d7b2a Add danish translation 2017-07-14 00:40:56 +02:00
Deve
d44802a482 Add a workaround for some qualcomm devices on android 4.4 2017-07-11 00:37:31 +02:00
Deve
70c481cb26 Add a possibility to set android version in graphics restrictions. 2017-07-10 22:54:38 +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
Benau
8653d410f8 Option 1 for fixing android 4.4
Reinit vertex attribute pointer each time, performance may hurt
2017-07-09 00:46:42 +08:00
QwertyChouskie
7b185ce2f1 Add new GPwin cutscene (#2875)
* Add new cutscene

* Cleanup

* Make all podiums arrive at the same time
2017-07-06 20:54:42 -04:00
Deve
6fc285b794 Show only native resolution in settings on android.
Changing resolution is atm. not available, so adding 1024x768 doesn't have a sense.
2017-07-06 23:18:43 +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
9fc1acc4c0 Allow to draw steering wheel on the right side 2017-07-05 21:21:33 +02:00
Deve
2cda14686d Simplify touch device settings 2017-07-05 20:43:57 +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
2bdce1994c Minor fix in android build script 2017-07-04 22:57:59 +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
f13f69851f Fixed black screen on some GLES 2.0 devices.
It affects only GLES 2.0. The GLES >= 3.0 and OpenGL allow sized internal formats.
2017-06-29 23:00:08 +02:00
Deve
8462c552d1 Add a warning for very low screen resolutions.
There are some android devices that are 320x240, 400x240 etc... Bare minimum to run STK is 640x480. Otherwise some important gui elements are not displayed and it may crash in guiengine.
2017-06-28 21:32:12 +02:00
QwertyChouskie
76257f68c5 Avoid error when libopenglrecorder not found (#2871)
* Avoid error when libopenglrecorder not found

* Full fix
2017-06-27 19:56:53 -04:00
Deve
076d1f2b62 Save few more mbytes in the apk 2017-06-27 21:20:38 +02:00
Deve
68cfdfbf17 Minor fix for android progress bar that probably doesn't make any difference anyway 2017-06-24 21:41:36 +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
8f70b74db9 Some tweaks in generate assets script 2017-06-24 01:11: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
QwertyChouskie
a2d831c1ea Handle missing libopenglrecorder gracefully (#2867)
* Handle missing libopenglrecorder gracefully

* Tweak readme

* Change version to "git"

* fail when version !== git

* oops

gota do my research :/
2017-06-22 20:27:29 -04: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
Matthew Trescott
1d8a709e38 Fix the --cutscene=<cutscene> commandline flag (#2861)
If the menu is shown, there's this ugly purple background (the OpenGL default, I think) and the cutscene won't play.
2017-06-17 18:49:00 -04:00
Deve
cfc506d0cf Merge pull request #2862 from MTres19/unlock_all_cmdline
Add option to unlock everything with a command line flag
2017-06-17 18:04:36 +02:00
Matthew Trescott
3dee6ce5dd Add option to unlock everything (and disable that option) from the command line
This was a complaint of Michael Larabel from Phoronix and is why he doesn't use STK in benchmarks; because the new tracks are mostly locked from the start and unavailable even with the --track flag
2017-06-17 11:45:57 -04:00
QwertyChouskie
10e439b6a1 Clean up output (#2856) 2017-06-13 20:50:13 -04:00
Deve
ae19ade5e5 Add gradle support to android build script 2017-06-13 22:06:53 +02:00
QwertyChouskie
be00283b2e Fix a few compiler warnings (#2854)
* Fix compiler warnings in gpwrap.cpp

* Fix compiler warning in skybox.cpp
2017-06-11 15:59:12 -04:00
Deve
e11641cd43 Minor correction in generate_assets script 2017-06-08 21:44:17 +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
ce0a7bde84 Correct the rule for Polish plural forms.
It's already fixed in transifex.
2017-05-25 16:17:38 +02:00
Deve
8989cc97b5 Some fixes for keyboard on wayland 2017-05-24 01:17:25 +02:00
Deve
2102b059de Update sources.cmake 2017-05-18 21:26:38 +02:00
Deve
8968706c09 Merge branch 'wayland' 2017-05-18 21:25:53 +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
hiker
91bad37939 Fixed incorrect position for a rubber ball in a cannon. 2017-05-13 21:38:59 +10: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
hiker
bdbc7fd728 Reduce the height of a rubber ball in a cannon over time, so that
it starts closer to the ground when released after the cannon.
2017-05-12 17:52:15 +10:00
hiker
490bef516e Fix crash: the ProjectileManager must be cleared before the CheckManager
(since a rubber ball will emove itself from all cannon checklines, so
a crash happens if the checklines are gone).
2017-05-12 17:39:53 +10:00
hiker
1b75ed9b4c First fix for the basket-ball in cannon - make the ball follow
the cannon.
2017-05-12 17:11:46 +10:00
Deve
23c428160f Some fixes 2017-05-12 00:57:01 +02:00
hiker
03f4b76a32 Fixed various compiler warnings. 2017-05-09 09:34:37 +10:00
hiker
3a176f818c Merge remote-tracking branch 'origin/master' 2017-05-09 09:26:30 +10:00
auria.mg
dbd0cfa7d0 Expose the time of day to scripting, see #2315 2017-05-06 18:48:18 -04:00
auria.mg
242c8be90c Pause the bomb during animations, fixes #2846 2017-05-06 18:46:25 -04: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
QwertyChouskie
58a170b4b7 Update string (#2824)
* Change message

* Update string in another file.

* Update addons_manager.cpp

* Update news_manager.cpp
2017-05-04 19:17:08 -04:00
auria.mg
553207fc11 Fix assertion failure if a bomb explodes while in a cannon, see #2846 (the bug is not quite fixed) 2017-05-04 19:12:17 -04: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
Dagan Martinez
ec3a74f758 Changed "macOS X" to "macOS" (#2843)
No such system stylized as "macOS X."

Left "OS X Install" because I don't think Apple uses install DVD's anymore since renaming as macOS?
2017-04-22 18:49:37 -04: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
72012120d9 Merge branch 'egl2' 2017-04-21 21:09:21 +02:00
Deve
d0a909361b Revert "Avoid reading/writing out of array"
This reverts commit 7f53faed4a.
2017-04-21 21:06:53 +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
auria.mg
49be7570a9 Fix inaccuracy in readme 2017-04-19 19:17:48 -04:00
hiker
db71824804 Minor documentation update. 2017-04-19 23:33:31 +10:00
Yevgeny
89c3a5cc65 Improved README.md's quality - April 17 2017 (#2839)
* Massive README.md update

Readme.md updated and cleaned up, a new section was added

* More updates to README.md

Updated README.md with another STK Winbuild method, some additonal
changes - mostly to enrich and improve the language of the readme file.
Windows_build.md is just a scratch pad for README.md's Windows sections.

* more tweaks to the file

more tweaks, old windows build method was removed because it is
confusing. additional tweaks were added

* More tweaks to the file

Updated the file to correct issues that were found in
supertuxkart/stk-code#2839

Disk space requirement was updated to be more correct.
mention of libvpx-devel was temporarly removed.

step  8 was revised slightly

* quick mistake correction
2017-04-18 19:02:24 -04:00
hiker
752b0645fb Merge branch 'master' of github.com:supertuxkart/stk-code 2017-04-18 23:17:04 +10:00
hiker
c23873da37 Properly fix driving no physical objects to enable smoothing (e.g.
volcano in both directions).
2017-04-18 23:07:24 +10:00
Benau
31f9acf7ed Update config.xml with libopenglrecorder
Consider use mjpeg / h264 (DIY compile) for HQ video
2017-04-18 14:08:30 +08:00
auria.mg
3fcf62a84a Add support for multiple crah sounds, update sfx credits 2017-04-17 20:42:20 -04:00
Benau
76491d13ec Update cmake sources list 2017-04-17 09:50:15 +08:00
Benau
fd07df4251 Merge remote-tracking branch 'origin/libopenglrecorder' 2017-04-17 09:49:36 +08:00
Benau
0e15e6de75 Update readme for libopenglrecorder 2017-04-17 09:47:03 +08:00
Benau
6911db0ac2 Remove duplicated code 2017-04-17 09:28:41 +08:00
auria.mg
2da86cab08 Cleanup hack that seems unecessary 2017-04-16 21:17:13 -04:00
Benau
487d007b17 Try to use progress bar to indicate the encoding progress
Need an updated libopenglrecorder
2017-04-15 16:30:43 +08:00
Benau
f3e0d2f9e9 Revert move capture right before glfencesync if possible 2017-04-13 15:13:47 +08:00
Benau
4de0ca83aa Move capture right before glfencesync if possible 2017-04-13 13:59:36 +08:00
hiker
158a771363 Merge branch 'master' of github.com:supertuxkart/stk-code 2017-04-13 00:22:10 +10:00
hiker
4dce66ba6d Worked around incorrect normal calculation if the kart was driving
on a physical object.
2017-04-13 00:21:35 +10:00
Benau
fe0fe828a0 Fix travis build 2017-04-12 13:41:14 +08:00
Benau
b1f9ce2dbd Remove libwebm and recorder code 2017-04-12 11:51:59 +08:00
auria.mg
ad092f0213 Add missing language 2017-04-11 18:42:32 -04:00
hiker
efec344738 Fixed more 64-bit related compiler warnings. 2017-04-11 22:30:57 +10:00
deve
6599ceddec Fixed server only build 2017-04-10 06:15:01 +02:00
Benau
f30962b944 Use lambda to workaround __stdcall issue 2017-04-10 10:00:34 +08:00
Benau
bcf996e291 Fix callback 2017-04-10 08:53:55 +08:00
Deve
f2e2ebb259 Update readme 2017-04-09 21:48:15 +02:00
Benau
ab10f335e9 Remove glew include in libopenrecorder 2017-04-10 01:26:52 +08:00
Benau
c69ea65ac2 Use RGBA for capture 2017-04-09 16:19:09 +08:00
Deve
c06ea3447d Revert "Move loadSfx to the SFXManager thread"
This reverts commit ce426d82cc.
2017-04-09 09:29:25 +02:00
Benau
a5759afac7 Improvements from Stragus and leyyin 2017-04-09 15:28:28 +08:00
Benau
156b799011 Remove STK headers in recorder and use c++11 thread library 2017-04-09 14:16:45 +08:00
Corentin Pazdera
c00c35e59a Fix appveyor build by using correct branch for dependencies (#2834) 2017-04-08 18:48:49 -04:00
hiker
c6109c9392 Try to fix linux compilation. 2017-04-08 23:36:41 +10:00
hiker
f2138e062d Tried to fix all 64-bit related compiler warnings triggered from files
in graphics.
2017-04-08 23:25:33 +10:00
Deve
91e7c51ae7 Make sure we don't link with GLU 2017-04-08 12:31:09 +02:00
Deve
9efe8ae4fa One more fix for mingw 2017-04-07 21:34:28 +02:00
hiker
5af4ea35a7 Fixed 64-bit related compiler warnings. 2017-04-07 23:43:01 +10:00
hiker
668fdd3b49 Fixed some 64-bit related compiler warnings. 2017-04-07 23:25:52 +10:00
hiker
14ec154f19 Try to fix linux build. 2017-04-07 20:27:11 +10:00
Deve
724cb100e0 Make grass material more bright in legacy pipeline 2017-04-07 00:02:31 +02:00
Deve
7f53faed4a Avoid reading/writing out of array 2017-04-06 23:48:49 +02:00
hiker
8a1d0bae34 Fixed some 64-bit related compiler warnings on VS. 2017-04-07 00:41:08 +10:00
hiker
5e5d86bc6d On windows look for the 64-bit dependency package in dependencies-64bit.
This allows installation compiling 32 and 64-bit windows versions from
the same repo without switching dependencies.
2017-04-06 23:59:01 +10:00
deve
70d7fdd197 Fixed mingw compilation.
It should be possible to simplify it with something like
find_library(CURL_LIBRARIES NAMES libcurl libcurldll PATHS "${PROJECT_SOURCE_DIR}/dependencies/lib")
so you can look if it works on Visual Studio.

And as far as I see pkgconfig is used only on unix. Btw. I'm also not sure if it should be if(UNIX AND NOT APPLE) ?
2017-04-06 11:39:53 +02:00
Daniel Butum
2ba148a84e Add appveyor and freenode chat badges to README (#2819) 2017-04-05 21:57:36 -04:00
Corentin Pazdera
eca2a99f38 Add irc notifications to appveyor with the script from battle of wesnoth team (#2688)
https://raw.githubusercontent.com/wesnoth/wesnoth/master/utils/appveyor/irc-notify.py
2017-04-05 21:57:09 -04:00
Benau
b2d3817de3 Merge remote-tracking branch 'origin/master' into advanced_recording 2017-04-06 09:43:36 +08:00
Benau
ab554315b5 Remove non-supported video format 2017-04-06 09:37:32 +08: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
hiker
96bdf77050 Merge branch 'physics-tweaks' 2017-04-06 00:06:22 +10:00
hiker
00bba293ad Merge remote-tracking branch 'origin/master' into physics-tweaks 2017-04-05 23:59:34 +10:00
hiker
6c4f6d1cf5 Merge branch 'master' of github.com:supertuxkart/stk-code 2017-04-05 23:14:29 +10:00
Benau
391d31659b Remove hardcoded 44100 samplerate 2017-04-05 15:43:47 +08:00
Benau
bb529c011e Add message queue for result callback 2017-04-05 12:31:39 +08:00
Benau
1a072d609f Add vp9 encode support, though it encodes very slowly 2017-04-05 01:10:44 +08:00
Benau
85de10ffb5 Fix memory leak 2017-04-04 23:53:44 +08: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
b0d0a0739e Add CMake flag to enable / disable recorder 2017-04-04 14:23:04 +08:00
Benau
0bb5bfb930 Don't use dlloaded function in pulseaudio recorder namespace 2017-04-04 12:19:29 +08:00
Benau
ea6719990a Move all recording code into recorder folder 2017-04-04 10:04:55 +08:00
Benau
2d4bfa9fb0 Use shared library for vpx on msvc 2017-04-03 14:32:07 +08:00
Benau
6bc935d085 Try to build 64bit appveyor 2017-04-03 09:20:14 +08:00
Benau
19f88e3939 Allow stk to be built with 64bit msvc
Please use lastest adv_recording_64 branch in repo
2017-04-03 01:33:13 +08:00
hiker
fdcb39b8fc Fix #2812 (non-smooth cannon behaviour). 2017-04-02 21:06:10 +10:00
Benau
8a5e28251e Fix mingw build 2017-04-02 14:55:55 +08:00
Benau
adf889a885 End vorbis encoder thread more properly 2017-04-02 10:36:21 +08:00
Benau
ab2ce24914 Reduce cpu usage 2017-04-02 10:28:46 +08:00
Deve
9bde708155 Tweak generate assets script to save few Mbytes in the apk.
Musics are still not-that-bad while they take less space.
2017-04-02 00:19:13 +02:00
Benau
9bfe4200c4 Only use TJFLAG_FASTDCT if supported 2017-04-02 00:43:31 +08:00
Benau
7f23d062b7 Use turbo jpeg for compression 2017-04-01 16:41:06 +08:00
Benau
8a8b388170 Allow pulseaudio to be loaded dynamically 2017-04-01 15:21:58 +08:00
Benau
294aa3ad48 Allow recording 16bit pcm data with any channels 2017-04-01 11:02:14 +08:00
Benau
cfea104a50 Apply camera fix from Stragus 2017-04-01 10:33:48 +08:00
Benau
cacbdbd668 Allow recording audio in windows using wasapi 2017-04-01 00:52:38 +08:00
hiker
794f1b59ed Removed unused code. 2017-03-31 23:30:55 +11:00
hiker
db31237d19 Removed old workaround for uneveness in tracks, which contributed
to karts sometimes being able to drive up walls.
2017-03-31 23:13:38 +11:00
Benau
29d0839162 Move libvpx parameters to user config 2017-03-31 12:22:21 +08:00
Benau
21ff135b04 Merge remote-tracking branch 'origin/master' into advanced_recording 2017-03-31 11:50:24 +08:00
Benau
9039324145 Allow muxing into webm using libwebm 2017-03-30 13:30:21 +08:00
hiker
1cd5bb66c9 Try to better handle small 'gaps' (or perhaps floating point
rounding errors) in tracks that can cause odd physics behaviour
(e.g. being able td drive upp the walls).
2017-03-30 00:08:30 +11:00
hiker
6f293af93a Merge branch 'physics-tweaks' of github.com:supertuxkart/stk-code into physics-tweaks 2017-03-29 08:49:51 +11:00
hiker
3da2c07d62 Enable friction to be changed per wheel: previously sliding was only
enabled once the whole kart chassis was tilted enough, but karts could
still end up driving on a wall (one wheel on a wall would not tilt the
chassis enough to trigger sliding, but give the kart an up velocity
which allowed it to drive on the wall). Friction is now determined
by the normal of the triangle hit by the raycast.
2017-03-29 08:32:50 +11:00
Deve
af98b526d6 Give few more fps in GLES renderer by pre-computing diffuse/specular color 2017-03-28 22:15:33 +02:00
QwertyChouskie
0123228c20 Set menu FPS to 60 (#2823)
Smoother, see https://github.com/supertuxkart/stk-code/issues/2302.
2017-03-27 21:56:20 -04:00
hiker
2875e7ca6f Revert "Comment out caching so that appveyor can download new dependencies."
(which should have been done on master).

This reverts commit 2819801c7e.
2017-03-28 12:20:17 +11:00
hiker
a3544735db Re-enable caching now that appveyor has downloaded the new dependencies. 2017-03-28 11:00:33 +11:00
hiker
345d9c3ef1 Comment out caching in appveyor config to allow it to download new dependency package. 2017-03-28 10:44:12 +11:00
hiker
2819801c7e Comment out caching so that appveyor can download new dependencies. 2017-03-28 10:42:37 +11:00
Benau
df758669d3 Use high resolution timer for AV sync 2017-03-28 00:44:12 +08:00
Deve
0f9151e5d2 Move recording settings to separate group 2017-03-27 00:31:55 +02:00
Deve
075afde636 Fixed kart particles for GLES with disabled advanced lighting 2017-03-27 00:25:39 +02:00
Deve
a7f0d3762c Some fixes for GLES renderer.
- Don't use BGRA format at all. It doesn't work with non-typical cases (i.e. with srgb or compressed textures) and also casues artifacts on some android devices. I kept the extension in central settings, but it probably won't be used.
- Use sRGB texture format when advanced lighting is enabled. This makes it closer to the original OpenGL renderer and also avoids to have even more #ifdef's for sRGB conversions.
- Keep RGBA textures for non-advanced lighting to make it simpler.

Now advanced lighting in GLES looks almost the same as in OpenGL 3.x (without shadows/GI)
2017-03-25 22:23:46 +01:00
Benau
be103dd666 Implement real time vp8 encoding 2017-03-25 16:30:41 +08:00
Deve
5931e20f8b Use highp precision qualifier.
For OpenGL 3.x renderer it only matters for some buggy drivers (i.e old AMD driver that complains about missing precision qualifier). Based on specification is should have no effect and was added for compatibility with GL ES.

In our case vertex and fragment must have the same precision because we use common header for both shader types and the precision for uniform variables must match.
Also "precision highp float;" is defined by default for both vertex and fragment shaders, so it seems to be more proper.

This will hopefully solve the problem with nvidia driver that tries to use f16vec4 instead of just vec4, see:
https://forum.freegamedev.net/viewtopic.php?f=17&t=7397&sid=06682ddb05ee9fbf48a2984d0bd48d5b
2017-03-24 22:21:09 +01:00
Benau
a68c085e95 Use pulseaudio + vorbisenc for sound recording (linux for now) 2017-03-24 21:51:17 +08:00
hiker
9fdd39b075 Removed unused code. 2017-03-24 16:35:45 +11:00
Marianne Gagnon
8461ffcc68 Merge branch 'master' of https://github.com/supertuxkart/stk-code 2017-03-23 21:03:10 -04:00
Marianne Gagnon
b85d84c9dd Remove outdated Apple-specific code 2017-03-23 21:02:16 -04:00
Benau
372ce6923c Log in terminal if recording isn't supported 2017-03-24 08:51:42 +08:00
hiker
6c35c08474 Increased suspensoin stiffness to offset the reduced impulse casued
by removing the '*f' factor (seee 9a5eec3761).
Otherwise the AI triggers rescue in sandtrack because of very frequent
chassis-track collisions.
2017-03-24 09:58:26 +11:00
hiker
b26d833e84 Fixed compiler warnings. 2017-03-24 08:41:17 +11:00
hiker
f35b9c9480 Try setting kart (vs track specificially) friction to 0, and
reduce roll/pitch impact which should keep karts more parallel
to the ground.
2017-03-23 19:22:53 +11:00
hiker
b8655e53cc Added support to modify the angular factor of a kart. The angular
factor can be used to reduce the effect of an impulse for roll
and pitch - keeping karts more parallel to the ground.
2017-03-23 19:07:34 +11: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
81c6735ba2 Fix when getNumProcessors return 0 2017-03-22 20:47:34 +08:00
deve
a3a8289836 Fixed a hang on startup under cygwin 2017-03-22 13:17:04 +01:00
deve
4df773d283 Some fixes in cmake.
Note that you need updated dependencies on windows.
2017-03-22 10:24:33 +01:00
hiker
f55c39b3b1 Support setting of friction for karts, moveable and track in stk_config.xml
and kart_characteristics.xml (for now no changed settings, all are at
tbe default of 0.5).
2017-03-22 19:52:03 +11:00
Benau
41e66bef37 Allow keeping target name after changing resolution 2017-03-22 12:44:32 +08:00
Benau
9a69859c8f Fix crash when deleting AVIWriter with file closing 2017-03-22 11:34:42 +08:00
Benau
7e9f723038 Allow recording video with ctrl + printscreen 2017-03-22 10:43:02 +08:00
Benau
4b663a08ce Use array deallocation 2017-03-22 09:58:22 +08:00
Benau
9034d89a31 Add the missing clear() 2017-03-22 09:53:02 +08:00
Benau
58c665efc6 Merge branch 'avi_writer' 2017-03-22 09:14:35 +08:00
Benau
740bf19446 Fix grammar 2017-03-22 09:08:44 +08:00
Benau
6ef70e2e7c Use message queue to inform users about recording status 2017-03-22 09:02:21 +08:00
Benau
2b9a84253a Make MessageQueue thread-safe 2017-03-22 08:40:58 +08:00
Benau
668b28f632 Allow to config whether to limit game framerate with recordings 2017-03-22 07:43:00 +08:00
Benau
196b2b722c Fix mac build 2017-03-22 07:42:48 +08:00
Deve
4ef8ec3af2 Fixed a warning in shaders compilation 2017-03-21 19:42:53 +01:00
Deve
583b858860 Handle #stk_include in better way.
It allows to use it recursively.
2017-03-21 18:41:18 +01:00
Benau
f58cf2d9cc Better handling with thread 2017-03-22 00:39:24 +08:00
Benau
3ed52e26d0 Call createFile only in AVIWriter thread 2017-03-21 16:16:10 +08:00
Benau
e2482e602c Don't use irrlicht image 2017-03-21 14:35:20 +08:00
hiker
5bbacfc72d Allow tracks to set their friction (defaults to the bullet default 0f 0.5). 2017-03-21 16:24:29 +11:00
Benau
449d63c0d8 Save record option in user config 2017-03-21 13:08:08 +08:00
Benau
547d28a9e4 Use jpeg-turbo library in msvc 2017-03-21 09:17:39 +08:00
samuncle
8265bb14f3 Revert, the high frequency noise has it's own branch 2017-03-20 15:15:51 -05:00
Sam
16c0736f8b Add base for detail map with splatting 2017-03-20 20:49:54 +01:00
Benau
3087a7c856 Don't call malloc for each frame 2017-03-21 01:09:20 +08:00
Benau
78dcabb143 Try to maintain a better synchronization with game framerate 2017-03-20 16:16:26 +08:00
Deve
2a64ce94c8 Some fixes for scale rtts.
- Don't force using rtts when advanced lighting is disabled because it actually makes the game slower
- Keep the minimap and kart selection screen in high quality
2017-03-18 22:26:35 +01:00
Benau
88cbcd202c Don't enable AVIWriter if PBO is not usable 2017-03-18 16:06:38 +08:00
Benau
8259026ac1 Make AVIWriter threaded and get pixel with 3 async PBOs
Also try to record at a fixed 24fps
2017-03-18 15:50:18 +08:00
Benau
21cbcd9185 Load speedmeter texture before rendering the first frame 2017-03-18 08:30:50 +08:00
Benau
d3d7c95b4d Fix msvc build 2017-03-17 17:19:46 +08:00
Benau
65da13fc52 Merge remote-tracking branch 'origin/threaded_tex_loader' into avi_writer 2017-03-17 16:31:32 +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
hiker
6ac6d9ebfe Fixed compiler warnings. 2017-03-17 15:56:47 +11:00
Benau
e1a563612f Avoid calling gamma correction on non-srgb png 2017-03-17 10:15:06 +08:00
Benau
40a94b5562 First try to use Stragus's normal map filter on normal map texture 2017-03-17 09:57:45 +08:00
Benau
de3c9d7411 Allow to preserve more texture config 2017-03-16 16:20:05 +08:00
Benau
0f218cff32 Allow re-create ThreadedTexLoader with suitable capacity 2017-03-16 13:15:33 +08:00
hiker
9a5eec3761 Try tp reduce sudden rotation after a collision, and reduce frequencies
of kart being pushed into the air.
2017-03-16 16:14:48 +11:00
hiker
0f37f7cdc0 Merge branch 'master' of github.com:supertuxkart/stk-code 2017-03-16 15:59:10 +11:00
Benau
feb66664f4 Don't build graphics utils if server only or gles 2017-03-16 11:29:16 +08:00
Benau
ce76abf4fe Merge remote-tracking branch 'origin/master' into hq_mipmap_generator 2017-03-16 11:23:27 +08:00
Benau
ce426d82cc Move loadSfx to the SFXManager thread 2017-03-16 11:01:46 +08:00
Benau
e0fcf7c613 Fix build for real 2017-03-16 10:52:12 +08:00
Benau
9025948ced Fix build 2017-03-16 10:18:31 +08:00
Benau
b112b124f2 Fix build 2017-03-16 10:02:51 +08:00
Benau
d55b513ca8 Try to fix clang build 2017-03-16 09:51:09 +08:00
Benau
1ba3fce7b8 Get rid of STK::Tuple 2017-03-16 09:16:06 +08:00
Benau
cc2c2c6f33 Remove the usage of openmp in stk, see #2810 2017-03-16 08:42:53 +08:00
Benau
0f1e0f8f4d Merge remote-tracking branch 'origin/optimisations' 2017-03-16 08:29:05 +08:00
Benau
02c8c87d5d Remix all image quality options 2017-03-16 01:04:53 +08:00
hiker
d32cb733a5 Bugfix, if path was given the filename was not used at all. 2017-03-15 22:30:32 +11:00
Benau
1a0034bb9e Apply fix from stragus 2017-03-15 13:35:09 +08:00
Benau
d08d2cc9c7 Avoid compling useless code in server only or gles 2017-03-15 12:45:35 +08:00
Benau
562131b53f Make operator inline 2017-03-15 11:40:41 +08:00
Benau
f920ed7f97 Fix reloading texture with threads 2017-03-15 10:44:02 +08:00
hiker
698fe1aa1b Merge branch 'fix2809' 2017-03-15 12:52:55 +11:00
hiker
a2bca46958 Fixed compiler warning. 2017-03-15 12:52:46 +11:00
hiker
71f247ecb7 Fix 2809. 2017-03-15 12:46:20 +11:00
Benau
6b0610af50 Don't use HQ Mipmap on colorization mask 2017-03-15 00:59:30 +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
eef2c19db7 Merge remote-tracking branch 'origin/master' into hq_mipmap_generator 2017-03-14 13:06:27 +08:00
Benau
ea948014a2 Allow dumping single channel texture by manual conversion 2017-03-14 12:58:00 +08:00
hiker
9bee42ccb7 Merge remote-tracking branch 'origin/master' into fix-cannon 2017-03-14 15:10:27 +11:00
Benau
eedc7f55c9 Make addThreadedLoadTexture thread safe 2017-03-14 11:35:26 +08:00
hiker
e5eb40b773 Smooth skidding rotation when entering a cannon. 2017-03-14 12:51:10 +11:00
Benau
abfb402acb Disable saving generated mipmap to disk 2017-03-13 12:47:13 +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
Deve
6ea06e05de Use kart lights only in shader-based pipeline.
It causes a huge slowdown in legacy pipeline, even if the radius is set to 0.
2017-03-13 01:26:48 +01:00
Sam
97670ed23c Improved wind effect for vegetation 2017-03-12 21:35:48 +01:00
Deve
b8e3de0161 Allow to use debug menu on android 2017-03-12 11:42:21 +01:00
Benau
498ce3ebc9 Use a correct method to detect last queue texture 2017-03-12 15:03:02 +08:00
Benau
27fcc4e266 Allow custom memory management in IImage 2017-03-12 09:09:40 +08:00
rogue-spectre
d33d72dfb8 fix feedback offroad #2761 (#2806)
* Fix updateenginesfx

smooth engine sound and fix https://github.com/supertuxkart/stk-code/issues/2761

* update enginesfx

* remove m_last_max_speed useless

* forgot : float max_speed

* Add missing space around =

* add space around = m_last_factor_engine_sound
2017-03-11 09:04:38 -05:00
Benau
a274f217ed Fix build 2017-03-11 15:41:54 +08:00
Benau
40a25e1d9e Remove dependency on STKTexture (for HQ mipmap generator later) 2017-03-11 15:33:36 +08:00
Benau
ead543fae4 Avoid checking too many 2017-03-11 14:04:42 +08:00
Benau
ab673fc03b Merge remote-tracking branch 'origin/master' into threaded_tex_loader 2017-03-11 13:55:18 +08:00
Benau
b0adb92964 Make sure all textures are uploaded without using timeout in TTL 2017-03-11 13:35:33 +08:00
Benau
6e80271ad9 Max texture size 2k and allow them to be threaded load 2017-03-11 09:41:46 +08:00
Benau
6eb69db4ea Properly clean up when exit 2017-03-11 00:23:54 +08:00
Benau
579aa8a9d1 Allow setThreadName to be used in linux (glibc > 2.11) 2017-03-10 23:30:18 +08:00
Benau
85011791e4 Try to use priority queue 2017-03-10 20:43:40 +08:00
Benau
6b3441d2a0 Allow reload texture with threads 2017-03-10 15:40:58 +08:00
Benau
ed9b16fe7b Don't use std::thread library 2017-03-10 15:02:21 +08:00
Benau
553c483bf4 Avoid unnecessary sync 2017-03-10 14:16:23 +08:00
hiker
0bd459c2aa Fix the transition from physics orientation to cannon (i.e. no more
yerk when the kart is not parallel to the tangent of the curve at start).
2017-03-10 17:11:54 +11:00
Marianne Gagnon
62d64847c4 Fix texture paths on case-sensitive file systems, fixes #2807 2017-03-09 18:41:35 -05:00
hiker
aac92f6111 Code simplification. 2017-03-10 08:44:51 +11:00
hiker
5640436aa8 Support cannons in reverse tracks. 2017-03-10 08:38:03 +11:00
hiker
c8b69cecb6 Merge remote-tracking branch 'origin/master' into fix-cannon 2017-03-09 23:05:03 +11:00
hiker
a500f3becc Applied Stragus' SSE optimisations for spherical harmonics. 2017-03-09 22:58:22 +11:00
hiker
12e6bab90a Merge branch 'master' of github.com:supertuxkart/stk-code 2017-03-09 22:42:06 +11:00
Benau
68e36268aa Try to use pbo for each ThreadedTexLoader 2017-03-09 16:41:15 +08:00
auria.mg
2d6cf4c487 Remove a few more string allocations/manipulations 2017-03-08 20:42:16 -05:00
auria.mg
571832fbbc Make all material names and path lowercase upon loading them, moving several string allocations and modifications outside of hot loops 2017-03-08 20:30:45 -05:00
Deve
adfa8f30f9 Better fix for missing transparency in GLES legacy pipeline 2017-03-08 23:17:03 +01:00
hiker
87950c9a94 Adjust up vector of kart slowly so that the kart is upright (even
when it was not upright at the start of the cannon).
2017-03-09 08:56:01 +11:00
Deve
21cb853079 One more tweak for hiding story mode icon if it's not available.
Now it should work properly, sorry for the mess.
2017-03-08 22:09:47 +01:00
Deve
d339d9acef Fixed ambient light for legacy pipeline.
TODO: It should be possible to convert it once together with spherical harmonics computations.
2017-03-08 21:41:53 +01:00
Deve
11255cb2b8 Fixed wrong lights color for legacy pipeline.
SColor is ARGB, but SColorf is RGBA... WTF?
2017-03-08 21:12:24 +01:00
Benau
d864995c7d First version of ThreadedTexLoader 2017-03-08 15:54:59 +08:00
hiker
bedb565f24 Simplified maths. 2017-03-08 17:57:03 +11:00
hiker
2436161b05 Approximate bezier curves better to avoid stuttering in cannons. 2017-03-07 22:24:46 +11:00
hiker
ae375c50b6 Allow the player to go to the left and right when in a cannon. 2017-03-07 22:11:15 +11:00
Deve
35139877f6 Fixed a crash on changing resolution 2017-03-06 23:10:29 +01:00
Deve
fcae7dfc33 Fixed compiler warnings 2017-03-06 17:22:44 +01:00
Deve
d4cecd5a8b Show story mode icon only if overworld track exists.
It allows to decrease apk size a bit.
2017-03-05 23:31:53 +01:00
Deve
eeb7c8f5de Added a support for release builds 2017-03-05 22:02:50 +01:00
Deve
be67fb1df9 Update readme 2017-03-05 08:55:35 +01:00
Deve
6c472660a1 Some additional checks for android assets manager.
If data was already extracted somewhere, then use this directory as preferred path. This is to avoid a situation that we have data extracted in two different places after STK upgrade.
2017-03-03 21:57:55 +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
82e724c12e One more fix for GLES legacy pipeline 2017-02-27 06:41:26 +01:00
Deve
f6cdf79b1e Avoid spamming with errors 2017-02-27 00:58:43 +01:00
Deve
2ff79141a0 Don't show exhaust emitter for legacy pipeline 2017-02-27 00:58:43 +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
auria.mg
5d342a2dab Fix all tracks achivement following the replacement of the farm track 2017-02-25 20:56:17 -05:00
auria.mg
5b85d36dfa Tweak a few challenges in easy mode following feedback 2017-02-24 20:06:29 -05:00
Benau
c7eeb8338d Try to fix for gles 2017-02-24 19:03:14 +08:00
Deve
46619ec62a Fixed gaussian blur 2017-02-23 20:40:06 +01:00
hiker
a7d1a312ad Merge branch 'fix-cannon' of github.com:supertuxkart/stk-code into fix-cannon 2017-02-23 17:19:30 +11:00
hiker
bf61b98444 Merge branch 'master' of github.com:supertuxkart/stk-code 2017-02-23 17:18:10 +11:00
hiker
b884f6429d Fix stuttering of camera/kart when usnig a cannon (caused by the cannon
animation updating the (physical) kart position after the graphical position
was taken from the physical position, causing a stuttering because of the
differences between those two values.
2017-02-23 17:12:15 +11:00
Deve
b34e749198 Fixed nitro bar in multiplayer game when uniform buffer object is not available 2017-02-22 23:33:11 +01:00
hiker
f0efce62b1 Added debug view of target cannon line. 2017-02-23 09:00:07 +11:00
Deve
0767abe2bc Draw a touch steering button that allows to run challenges.
It was broken because the fire button uses now the icon of collected weapon, so that it's not displayed at all when there is no weapon.
2017-02-22 21:43:36 +01:00
Deve
db4d11a0c5 Disable kart shadow for legacy pipeline in GLES renderer because it's broken 2017-02-22 21:04:28 +01:00
Deve
2ef6652183 Create a kart shadow only of shadow texture exists.
If the image doesn't exist, in some cases it can draw non-transparent square below the kart, which is unwanted.
2017-02-22 21:04:28 +01:00
Benau
02d3bd2c2b Take item on walldriving tracks into account 2017-02-21 15:06:26 +08:00
Benau
3898678e76 Use raycasted position for point 2
Fix #2796, #2774
2017-02-21 13:36:00 +08:00
Benau
0cf0002c08 Header clean up 2017-02-21 12:09:22 +08:00
auria.mg
eb9f656b44 Add config flag to persist GUI visibility state at samuncle's request 2017-02-20 19:16:49 -05:00
Deve
668e10d8ca Don't use srgb format in gles 2017-02-20 21:56:33 +01:00
Deve
ef2cba0f85 Display multitouch settings properly on low resolutions 2017-02-20 21:56:33 +01:00
Deve
875d5d8ef9 Some tweaks to the arrows size in dynamic ribbon widget.
- arrow size now depends on screen size, so that it's now easier to click it on high resolutions
- it's additionally scaled on Android for easier usage
2017-02-20 21:56:33 +01:00
hiker
41df6afbf9 Fixed compilation. 2017-02-20 09:22:09 +11:00
hiker
a17b537699 Make cannon smoother. 2017-02-20 07:48:43 +11:00
hiker
30cff00757 Reduce internal physics timestep to test if collision handling improves. 2017-02-20 07:48:25 +11:00
hiker
8e8de3c5e2 Merge branch 'master' of github.com:supertuxkart/stk-code 2017-02-20 07:45:26 +11:00
Benau
131dc4bfad Fix #2786 2017-02-18 14:30:35 +08:00
Arthur-D
70511c5348 Lower terrain-impulse. It should keep its intended function of avoiding getting stuck when driving perpendicular to walls, but should be less forceful and look less artificial as a result. 2017-02-17 23:13:39 +01:00
Deve
40e326bb41 Avoid using fixed pipeline on newer intel graphics cards.
The force legacy device graphics restriction is needed for ironlake graphics cards. But newer generations in pentium/celeron processors also are named just "Intel(R) HD Graphics" without any number.

The newest drivers for ironlake graphics card is 8.15 and it's unlikely that it will get an update. So assume that all drivers older than 9.x are ironlake generation or that are too old to run STK anyway.
2017-02-17 21:23:22 +01:00
Deve
5cdcf39583 Add intel HD2000 to graphics restrictions.
It's just slower HD3000 version, so disable the same features for it.
2017-02-17 19:50:50 +01:00
Deve
ab8a68f295 Enable HD textures on newer intel graphics cards.
It should work fine for intel HD4000 and newer, especially after recent memory management improvements in STK.
2017-02-17 19:44:28 +01:00
Benau
269b1b5cb9 Add restriction for intel hd4600 on windows about compute shader
Fix #1916
2017-02-17 13:52:50 +08:00
Deve
299a4dc5f2 Don't check the TBO extension 2017-02-17 06:31:15 +01:00
Deve
251c46dcc4 Always call bind sampler function.
This fixes errors for Intel HD4000 on Windows.

My understending of this issue is following:
- a shader assigned two textures, i.e. texture1 = sampler1, texture2=sampler2
- then next shader (i.e. importance sampling specular) assigned two textures: texture1=sampler1, texture2=without_sampler
- when we executed setTextureUnits, the glBindSampler function wasn't called at all, so the drivers were trying to use combination texture2=sampler2, even though the sampler2 was prepared for different texture and most likely was already deleted.

We can just always call the glBindSampler function, so that if texture doesn't have a sampler, it will execute it with sampler_id=0 param, which is practically an "unbind" function.
2017-02-17 01:03:39 +01:00
auria.mg
f181acea3d Add Jymis to credits 2017-02-15 18:38:56 -05:00
Benau
c635e8d1c4 Get rid of some srgb conversion in shader, see #2787 2017-02-13 10:06:35 +08:00
Benau
d3cbc6ca0e Fix GLES 2017-02-13 00:45:18 +08:00
Benau
ca0a605b0e Don't use texture buffer object if not supported, see #2571
Also allow to use setTextureUnits for texture buffer
2017-02-12 15:42:22 +08:00
Benau
4af255431c Fix opengl warning about glTexSubImage2D buffer of null pointer
For example, whitespace in freetype glyph has no bits buffer
2017-02-12 10:23:18 +08:00
Deve
68a99fd38b Fixed sRGB for GLES renderer.
It's a bit ugly solution because we should handle it properly in one place and not add another sRGB correction... But it's already working solution and it doesn't affect the OpenGL renderer, so we can use it until better fix will be done.
Now the GLES renderer looks almost the same as the original OpenGL 3.x one :)
2017-02-11 23:56:44 +01:00
Deve
e316df1807 Update readme 2017-02-11 14:40:54 +01:00
Deve
3794e0bbbe Use slightly lower rate for explosion effect.
It causes fps drop on slow devices when explosion occurs near the camera and everything is white for a while.
2017-02-11 14:30:08 +01:00
Benau
48f27df1c9 Fix wrong angle when normal is exactly 0, -1 ,0 2017-02-11 16:05:10 +08:00
Benau
0ddada2897 Fix --track-debug crash 2017-02-11 14:42:24 +08:00
Deve
3f214c1bb7 Find textures once on race gui initialization 2017-02-11 00:51:22 +01:00
Deve
a877cb848f Added better icons for touch steering.
Thanks to jymis!
2017-02-11 00:51:22 +01:00
Benau
ea95ffe424 Remove compiler warning 2017-02-10 18:21:27 +08:00
Alayan-stk-2
0293dabfd3 New GP point system (#2765)
* Change grand-prix node for the new GP point system

* New GP point system

* Typo fix
2017-02-07 19:31:53 -05:00
Deve
5df2531a65 Added a hack that removes ugly lines when shadows are enabled.
Mathematically it's not 100% correct, but it looks much better.
2017-02-07 21:48:50 +01:00
Deve
77ff387f6b Minor tweak 2017-02-07 14:38:40 +01:00
Deve
4852664143 Allow to use accelerometer for turning left/right.
It should be much more comfortable on small devices.
Though it's not possible to get default screen orientation (and real device orientation) using NDK functions, so at this stage user has to manually choose if he needs "tablet" or "phone" accelerometer.
2017-02-07 13:48:08 +01:00
Deve
a40fd4cde9 Handle new Polish format in tinygettext.
It's PITA because they broke it at it doesn't look that they are going to do something with it.

The plural form for number 14 is broken because the condition is bad. It should be n%100>14 instead of n%100>=14. In the past it was using 3rd form for numbers 12, 13, 14 and it's the proper form for these numbers. The new format uses 2nd form for number 14.

Moreover the condition for third form is just a negation of the first and second form, so that the 4th form actually never happens.

Also the condition for 3rd form is ambiguous. Should it be
(n!=1 && (n%10>=0 && n%10<=1)) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14)
or maybe
n!=1 && ((n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14))

Based on Unicode plural rules, the 4th form should be used for floating point numbers, but it's not supported by tinygettext anyway.

In short, handle the new format in the same way as it was before, so that the 4th form is useless, but at least everything works properly.
2017-02-06 20:39:30 +01:00
deve
cdd96f67dd Draw powerup icon on a button when touch steering is enabled 2017-02-06 06:26:11 +01:00
Seebi
e5feb3d35f Fix sometimes not initializing a soccer game - fixes #2769 (#2772) 2017-02-05 20:09:51 -05:00
Alayan-stk-2
8858d4d86f Parachute improvements (#2768)
* Change grand-prix node for the new GP point system

* New GP point system

* Add parachute characteristics for rank and speed time multipliers

* Add new parachute characteristics

* typo fix

* Add rank and speed parachutes characteristics

* Add rank and speed parachute characteristics

* Add rank and speed parachute characteristics

* Add rank and speed parachute characteristics

* Add rank and speed parachute characteristics

* Add logic for parachute time scaling according to rank

* Add logic for parachute time scaling according to speed

* Separate GP and parachute branches

* Separate GP and parachute branches
2017-02-05 18:54:32 -05:00
Benau
5d30393641 Allow reload texture with control+f3 for sam in game 2017-02-05 14:10:26 +08:00
Benau
6fae872a69 Fix #2766 2017-02-05 09:11:48 +08:00
Deve
7c48c3e6cc Choose a directory where we have the most available disk space for data extraction.
It's not a perfect solution because at least on my device internal storage is much faster than sd card. But at least it should be much safer to choose a path with more free space.
2017-02-03 23:53:47 +01:00
auria.mg
01765fce80 Fix crash 2017-02-02 19:54:48 -05:00
Benau
13081a07ec Fix #2763 2017-02-03 08:41:18 +08:00
Deve
2557a700cc Just to be more clear about explicit attrib location availability in GLES 2017-02-02 22:26:37 +01:00
Deve
19cb9cd041 Fixed a crash when starting cutscene 2017-02-02 22:22:33 +01:00
Deve
d4d5452825 Enable glBindSampler in GLES 2017-02-01 22:52:07 +01:00
Deve
b54c3648b3 Again missing parenthesis... 2017-02-01 22:15:48 +01:00
Deve
28d85d7ba3 Use explicit attrib location when the extension is available.
It allows to enable it easily in GLES renderer. And we check if this extension is available anyway because it's needed for shadows, so we can use it for other shaders too.
2017-02-01 21:58:10 +01:00
deve
d124c61e3c Remove useless ifdef.
It should depend on features available in graphics drivers and not on headers that were used for compilation.
In theory there was a possible case that GL_VERSION_3_3 was not defined and CVS->getGLSLVersion() >= 330 was true, so that bind wasn't done at all.
And still GL_VERSION_3_3 should be always true for OpenGL renderer because it's defined in glew.
2017-02-01 10:40:48 +01:00
deve
3c8369b915 Set GLSL version for GLES.
It's not 100% true because GLES has different versions numbering. For example it doesn't have geometry shaders even if they were introduced in GLSL 1.50 (OpenGL 3.2).
But still in this way we make sure that it uses the same features on all devices, no mater if it's GLES 3.0, 3.1, 3.2 etc.
2017-02-01 10:30:46 +01:00
auria.mg
93d6b1e515 Tweak camera settings 2017-01-30 19:17:27 -05:00
auria.mg
62e8ec86fa Merge branch 'NewSmoothCamera' 2017-01-30 18:51:24 -05:00
Deve
fbffb108f1 Force to use rtts when scale_rtts_factor is set.
It allows to scale down resolution even if advanced lighting is disabled.
2017-01-31 00:18:02 +01:00
deve
bf64459458 Handle a case that advanced lighting is disabled in graphics restrictions. 2017-01-30 11:18:31 +01:00
auria.mg
e7252cc643 More work on camera smoothness 2017-01-29 21:48:54 -05:00
auria.mg
e8cb873f08 Finish smoothing the kart rotation 2017-01-29 21:37:58 -05:00
auria.mg
6d3eb84a8e Reduce shaking a bit by smoothing kart position. Still need to smooth kart rotation, can't quite get it to work yet 2017-01-29 21:33:11 -05:00
auria.mg
56b6f81eb7 New smooth camera 2017-01-29 19:58:33 -05:00
Deve
803eba5d5c Fixed typo 2017-01-27 22:44:22 +01:00
hiker
5690eb0edd Merge branch 'master' of github.com:supertuxkart/stk-code 2017-01-26 23:14:43 +11:00
deve
62bcf52f9c Add a possibility to select team without a keyboard for single player mode 2017-01-26 10:23:45 +01:00
deve
99b2cd7e57 Some corrections in team selection events 2017-01-26 10:22:31 +01:00
deve
85f153f0d5 Move changing a team to separate function to avoid code duplication 2017-01-26 09:21:35 +01:00
Deve
49a77a8f48 Add a possibility to disable touch steering in options.
It may be useful if someone wants to play with external keyboard.
The multitouch_mode parameter will be also used to choose between steering with buttons and using accelerometer.
2017-01-25 21:50:11 +01:00
hiker
2ca7a1468e Fixed compiler warning. 2017-01-25 22:17:06 +11:00
hiker
37af3a3690 Fixed coding style issues (same should be done with speedweight objects). 2017-01-25 22:16:40 +11:00
hiker
3edff9523e Fixed compiler warning. 2017-01-25 22:16:40 +11:00
deve
9ede4d2185 Merge branch 'master' of https://github.com/supertuxkart/stk-code 2017-01-25 10:29:18 +01:00
deve
fea3b1b3e5 Set curl nosignal option.
It fixes the crash under cygwin and should also fix a crash when c-ares/threaded resolver are not available in curl library.
Fixes #2753
2017-01-25 10:28:48 +01:00
auria.mg
6e8480379b Add support of headlight models to karts 2017-01-23 20:14:42 -05:00
Arthur-D
925d756454 Adding some replays from Kitoko, thanks! Also removing a few so as to keep a low number of replays, and renamed easy replay files to novice. 2017-01-23 23:44:34 +01:00
deve
a1e8cb8acd Try to fix build 2017-01-23 10:49:18 +01:00
deve
8c8d2ac8c4 Add a screen keyboard that can be used on touch screens 2017-01-23 07:14:09 +01:00
samuncle
d935f0318c The exhaust is tweaked a bit 2017-01-23 00:27:31 -05:00
samuncle
9e1afc89ee Add a permanant exhaust to the kart, tweaking needed 2017-01-22 23:20:07 -05:00
samuncle
50f3c224b3 change the name to development more accurate 2017-01-22 22:14:19 -05:00
samuncle
74cc87cd65 Merge branch 'master' of https://github.com/supertuxkart/stk-code 2017-01-22 22:10:12 -05:00
samuncle
d600720830 Add a new category of production babies 2017-01-22 22:09:56 -05:00
auria.mg
2bcc579f61 Fix crash 2017-01-22 21:23:33 -05:00
samuncle
996cea5a14 Oups, I forgot to drop the light 2017-01-22 20:32:25 -05:00
samuncle
979f61b8c1 Add support for day/night notion in tracks 2017-01-22 19:28:08 -05:00
samuncle
4f1101d62b Activate headlight only for the player 2017-01-22 10:09:32 -05:00
samuncle
93011e934e Merge branch 'master' into headlight 2017-01-22 08:35:07 -05:00
hiker
3712f1d600 Merge branch 'master' of github.com:supertuxkart/stk-code 2017-01-21 10:59:15 +11:00
samuncle
e86e146442 Add emit map to a shader, so cars in candela are like small dots 2017-01-20 00:06:35 -05:00
samuncle
44207e9620 ground work for an headlight for karts to allow better visiblity in dark tracks 2017-01-19 23:45:42 -05:00
hiker
620a5b34f2 Merge branch 'master' of github.com:supertuxkart/stk-code 2017-01-20 14:15:55 +11:00
hiker
b5f285a182 Fixed #2742 - incorrect triggering if cannon line triggereed Caused
by not updating m_front_xyz when moving the kart (so an incorrect
position was used to detect checkline triggering).
2017-01-20 14:13:12 +11:00
auria.mg
7234caffd9 Fix travis build 2017-01-19 21:11:44 -05:00
auria.mg
a0499fcfd6 Merge branch 'master' of https://github.com/supertuxkart/stk-code
# Conflicts:
#	src/scriptengine/script_engine.cpp
2017-01-19 21:04:35 -05:00
auria.mg
52fff152de Scripting : add support for "onStart" callbacks in library objects 2017-01-19 21:03:09 -05:00
samuncle
ef82257110 Add support for array in scripting 2017-01-19 20:49:46 -05:00
Benau
4506f4baed Fix possible failed build 2017-01-18 18:42:19 +08:00
Benau
93ad594ff2 Merge branch 'fix_186' 2017-01-16 08:48:06 +08:00
Benau
5ad7b1491a Add marker for kart selection screen 2017-01-16 08:45:34 +08:00
auria.mg
b758e2eb62 Do not crash when pressing hidden button on Gp results screen. Fixes #2734 2017-01-15 19:32:15 -05:00
auria.mg
02d3e7a371 Fix restarting race not resetting kart velocity during a cannon ride. Fixes #2738 2017-01-15 19:22:06 -05:00
Deve
20ed2ad277 Print a warning on low memory event 2017-01-15 17:01:23 +01:00
Deve
a82784ab8e Minor modification that makes moving the list box smoother 2017-01-15 17:00:41 +01:00
Deve
7890c1669b Merge pull request #2736 from nado/clanglto
Fix clang compilation
2017-01-14 15:50:37 +01:00
samuncle
b9dd867c86 Use gamma corrected decal 2017-01-14 09:41:29 -05:00
Nado
e866d88118 Fix clang compilation 2017-01-14 14:36:52 +01:00
auria.mg
6e2a11abd1 Update GPs and challenges for the new farm track replacement 2017-01-13 20:06:41 -05:00
Benau
44faae26bf Fix typo 2017-01-13 18:39:57 +08:00
Benau
89c209bc6c Try to fix server build 2017-01-13 18:10:08 +08:00
Benau
30de9aef62 Fix #186
Display win animation as jymis suggests in kart selection screen
2017-01-13 18:03:13 +08: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
ec0ff7e984 Fix possible crash when dump the glyph pages 2017-01-12 13:22:41 +08: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
ffedf637de Fix some override warnings 2017-01-11 13:34:25 +08:00
Benau
3105407b2f Remove error when dropping tires in battle mode when kart dead 2017-01-11 13:33:54 +08:00
Benau
3bffe1f1a7 Allow texture error message to be used in STKTexManager 2017-01-11 10:55:18 +08:00
Benau
874d3d347d Remove unused resize texture code 2017-01-11 09:46:00 +08:00
Deve
527132b6c8 Allow to enforce default player using a config variable.
It can be used on Android until screen keyboard will be done.
2017-01-10 22:10:43 +01:00
Deve
0ffde761ef Minor improvements in list box widget.
- Current time was broken because getTimeSinceEpoch() gives a time in seconds, so the timeout for double click was 500 seconds.
- I disabled the timeout for double click anyway because it's IMO not needed (and it was broken anyway and nobody complained). Second click on the same element always sends the "selected again" event.
- I removed code that hovers new item when mouse is moved during selecting because it was working rather strange. For example it was possible to slightly move a mouse during selecting the item and the action was executed on the first click, even if we expect double click.
- Action is executed on single click on Android
2017-01-10 21:30:45 +01:00
deve
9d9fb06401 Don't select new item when listbox was moving 2017-01-10 13:37:36 +01:00
deve
67b9c85918 Fixed GLES 2017-01-10 10:55:44 +01:00
Benau
5a31cd4e97 Support for backpedal animation 2017-01-10 16:13:34 +08:00
Benau
f1b0f529be Fix #1679 2017-01-10 14:12:38 +08:00
Benau
aa01fafe92 Fix server build 2017-01-10 13:05:19 +08:00
Benau
21060133a8 Fix invalid read reported by valgrind when changing language
And fix possible crash
2017-01-10 12:52:50 +08:00
Benau
a55cc47845 Fix leaking font texture when changing language 2017-01-10 12:52:31 +08:00
Benau
9af219f691 Fix #1780 2017-01-10 11:39:01 +08:00
hiker
2641f0b067 Merge branch 'master' of github.com:supertuxkart/stk-code 2017-01-10 13:25:53 +11:00
hiker
55e98e041c Removed unused (or replaceable in case of clamp) functions from helpers. 2017-01-10 13:25:26 +11:00
auria.mg
87646463b8 Minor : upgrade profiler utils to use the logging functions 2017-01-09 20:36:08 -05:00
auria.mg
7e6761e968 Minor : reduce logging level 2017-01-09 20:30:08 -05:00
auria.mg
ebf3893f73 Minor : add a little documentation to user config 2017-01-09 20:29:41 -05:00
Benau
f7d843a7f7 Make dialog draggable in artist debug mode
So artist can view texture change by moving texture console
2017-01-10 09:22:08 +08:00
Benau
8acd2d689a Merge branch 'new_texture_format' 2017-01-10 09:09:38 +08:00
Deve
ecd5445eed Added a helper function that prints opengl errors 2017-01-09 23:21:40 +01:00
Benau
08876e30ab Remove unused builtin font 2017-01-09 15:50:26 +08:00
Benau
bd20d2512c Keep single channel for reloading texture 2017-01-09 15:35:57 +08:00
Benau
848dd05f11 Add IImage to STKTexture constructor for areamap texture 2017-01-09 15:04:34 +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
Benau
e049cb2bd6 Allow saving single channel compressed texture 2017-01-09 00:50:04 +08:00
Benau
71c14ff0b3 Convert code to a more readable format 2017-01-08 23:50:47 +08:00
Benau
1cc8371ac5 Preserve max texture size when restart 2017-01-08 22:02:04 +08:00
Benau
597461d680 Fix server build 2017-01-08 15:42:29 +08:00
Benau
21d35d4bcd Display texture size instead of pointer location 2017-01-08 15:37:03 +08:00
Benau
00437e6d15 Allow using colorization mask with single channel texture only 2017-01-08 15:30:49 +08:00
Benau
4ba1b2408c Minor optimization 2017-01-08 14:38:58 +08:00
Benau
6f191bd7da Fix gles
Because in the past call texture->lock() will return unmodified
cached image (always bgra), now the image will be converted
dependently
2017-01-08 13:31:10 +08:00
James Cowgill
4aae66a050 Convert CREDITS to UTF-8 (#2723)
* Convert CREDITS to UTF-8

* Remove trailing whitespace in CREDITS

* Read CREDITS file as utf-8

* Make CREDITS file non-executable
2017-01-07 18:56:15 -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
f609114594 Zero the array to prevent black border in glyph
Also use the correct internal format
2017-01-08 00:05:00 +08:00
Benau
314c32865b Allow using single color channel for font texture 2017-01-07 16:36:25 +08:00
Benau
f78d749a0c Fix no graphics run 2017-01-07 15:43:25 +08:00
Benau
6deb0e0f8a Avoid using createImageFromData with preload data for texture
Todo: allow using single channel for font texture, saving 75% size
2017-01-07 14:45:47 +08:00
Benau
37a4d512ab Add cache version inside the cache file
Also clean up commented out code
2017-01-07 10:44:29 +08:00
auria.mg
68fe1e58c2 Fix a few divisions by zero, see #2727 2017-01-06 21:26:16 -05:00
auria.mg
67e66b44b0 Improve texture cache code to use precise subpaths instead of hashes 2017-01-06 21:07:53 -05:00
Benau
3e5199334d Drop models and lights when leaving model widget screen 2017-01-07 00:27:48 +08:00
Benau
ba8846522e Implement cleaning for new texture
Also warn if there is possible texture leaking when exit STK
2017-01-06 23:45:25 +08:00
Benau
555cdacd83 Improve warning 2017-01-06 20:54:22 +08:00
Benau
437f89eea7 Clean up 2017-01-06 20:28:03 +08:00
Benau
66f3a2e32b Make dump glyph page possible for new texture format
Also implement read-only lock, please use reload() for writing
2017-01-06 19:58:51 +08:00
Benau
2af126357d Port font to use new texture format 2017-01-06 18:20:19 +08:00
Benau
4bcf03e296 Port reload texture to use new STKTexManager 2017-01-06 15:47:54 +08:00
Benau
827a483e85 Allow legacy pipeline to use new texture format 2017-01-06 15:04:15 +08:00
Deve
5f4bef044b Pause/resume sounds when game is paused on Android.
We should handle both pause and focus events, but they may occur in different order or in some cases we may receive only lost focus event.
So we need to check the current state to make sure that pause/resume sounds is executed only once.
2017-01-05 15:53:32 +01:00
Benau
c7f9de3080 Merge pull request #2725 from LoadingPleaseWait/ghost-slipstream
No slipstream from ghost kart, fix #2721
2017-01-05 16:23:18 +08:00
LoadingPleaseWait
1cb329dccf No slipstream from ghost kart, fix #2721 2017-01-05 02:10:35 -06:00
Benau
513f1e2edf Add unicolor texture loading 2017-01-05 14:51:38 +08:00
Benau
6e4d7da487 Improve warning handling 2017-01-05 13:42:22 +08:00
Benau
c7d56d3edc Allow caching compressed texture
Use std::hash for string (path + basename + max_texture_size)
2017-01-05 12:50:33 +08:00
Deve
fb0a54278a Fixed possible crash.
STK could crash when invalid graphics restriction name was set in graphics_restrictions.xml file.
It's because of wrong while (m_names_of_restrictions[i] != NULL) condition.
2017-01-05 00:28:16 +01:00
Deve
23acade026 Make sure that legacy pipeline is used when it's set in graphics restrictions.
It was be done only for GLES before, but also for OpenGL some drivers create OpenGL 4.x compatibility profile context even if we request GL 2.1. So we can't assume that it will report GL2.1 and we should make sure that fixed pipeline will be used.
Actually now it works in the same way as force_legacy_device in config.xml.
2017-01-04 23:39:15 +01:00
Benau
99857ca193 Fix GLES 2017-01-04 15:05:04 +08:00
Benau
497f1e2785 Clean up billboard texture code
Todo: compress them in STKTexture class
2017-01-04 14:35:49 +08:00
Benau
c98e4f2bac Simplify particle texture loading 2017-01-04 13:43:14 +08:00
Benau
63f57d6a9c Fix wrong texture if absolute path is not given 2017-01-04 11:41:11 +08:00
Benau
1f8e047164 Update credits about new Hexley 2017-01-04 00:49:31 +08:00
Benau
05a29fe7da Let material code handle premultiplied alpha and srgb 2017-01-03 16:35:37 +08:00
Benau
0129c539b9 Fix #2543
Also disable warning when switching cases for context detection
2017-01-03 13:53:44 +08:00
Benau
d57841bcb8 Fix crash if skybox / SH shares textures from track 2017-01-03 12:35:05 +08:00
Benau
57e16dcb73 Avoid unneeded copying in sky box and SH 2017-01-03 11:08:33 +08:00
Benau
19ac8a0d3c Allow sky box and SH to use new texture format 2017-01-03 10:18:11 +08:00
auria.mg
ac8a5c552f Make dialogs non-draggable. Fixes #2717 2017-01-02 19:02:05 -05:00
Deve
9c7a438826 Remove simulating mouse events from event handler.
It will be handled in irrlicht device.
2017-01-02 21:49:41 +01:00
Deve
bcea2355fa Allow to scroll list box by touch gesture.
It can be restricted to Android-only, but tbh. I don't see any reason that it can't work in the same way on desktop computers (may be usable on laptops with touch screen, all-in-one computers etc...).

I also made a minor fix with if(!event.MouseInput.isLeftPressed()) because the EGET_ELEMENT_FOCUS_LOST event seems to not work at all.
2017-01-02 21:47:23 +01:00
Benau
6db2212690 Try to fix server build 2017-01-03 00:03:26 +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
Deve
6a16f23132 Fixed GLES 2016-12-31 03:41:37 +01:00
Deve
cec7c51bc0 Request closing the app on android in better place, so that it handles both - quit button and escape pressed. 2016-12-31 02:51:08 +01:00
Benau
dbe148baf6 Max 10 players supported in arena
See #2705
2016-12-31 09:27:39 +08:00
Benau
f8c09ccf83 Handle score times too 2016-12-31 09:03:42 +08:00
Benau
0d35ea74d1 Fix #2713 2016-12-31 08:59:24 +08:00
auria.mg
09e1e6d7a3 Update achivement with new track name. Fixes #2712 2016-12-30 17:05:30 -05:00
auria.mg
fcdb0b5614 Improve material code, fixes #2709 2016-12-30 16:04:56 -05:00
Benau
360e1bb88b Case insensitive in linux for reloading texture 2016-12-30 20:24:35 +08:00
Deve
412399cdf7 Fixed a crash in GLES 2.0.
The glGetStringi is available only in GLES >= 3.0. We can't easily check if this function exists or not because it requires EGL >= 1.5 (and still we can't be sure that all drivers handle it properly).

Though glGetString(GL_EXTENSIONS) is allowed on both GLES2.0 and GLES3.0, so we can just fallback to this method.
2016-12-30 11:09:06 +01:00
Benau
cb5f24e551 Reset time target if leaving the soccer screen with escape 2016-12-30 15:02:07 +08:00
Benau
5b96b4aa3f Allow windows user to enter path more easily 2016-12-30 15:00:26 +08:00
Benau
caf9dbab0c Fix crash when loading particle texture inside track folder 2016-12-30 13:28:13 +08:00
Benau
1e2a759f7b Restart STK if advanced pipeline option changed 2016-12-30 11:01:29 +08:00
auria.mg
7a6e6cb6a4 Attempt to imporove AMD driver version detection 2016-12-29 21:43:19 -05:00
Benau
bbaff0467e Fix normal map when advanced pipeline off 2016-12-30 00:58:48 +08:00
Deve
278ef781bf GLES: Make sure that we are using fixed pipeline when force legacy device is set in graphics restrictions.
It is generally safe for GLES drivers. The driver often reports OpenGL ES 3.1 or 3.0 support even though we request only GLES 2.0. But we can still use GLES 2.0 / GLSL 1.0 functions on GLES 3.x context, so it shouldn't cause any issues.

I also added Android Emulator to graphics restrictions.
2016-12-29 16:01:46 +01:00
Benau
bc2fb1da76 Fix server build 2016-12-29 15:46:00 +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
b9b8ab3e5f Don't load normal map too if not advanced pipeline 2016-12-29 09:46:26 +08:00
auria.mg
875bfad197 Merge remote-tracking branch 'temeliak/fix_non_hd_option' 2016-12-28 20:39:20 -05:00
auria.mg
dfca641172 Merge branch 'fix_2316' 2016-12-28 20:19:41 -05:00
auria.mg
f0afba84c8 More cleanup 2016-12-28 20:17:32 -05:00
auria.mg
33802d9f81 Materials optimisation : minor tweaks and cleanup 2016-12-28 20:13:55 -05:00
Benau
1597c2ad48 Make scaled texture work with alpha mask 2016-12-29 00:36:13 +08:00
samuncle
b669382b93 Change the detail map to a more usefull decal shader. Now we can add easily details to texture 2016-12-28 10:23:07 -05:00
Benau
72963f4fb4 Fix GLES 2016-12-28 16:23:57 +08:00
Benau
71161264be Merge remote-tracking branch 'origin/master' into fix_2316 2016-12-28 15:50:14 +08:00
Benau
f43f76b7c9 Fix server build 2016-12-28 15:40:12 +08:00
Benau
ffe4dd88b4 Apply mask directly on texture
Avoiding the ref counting issues
2016-12-28 15:32:27 +08:00
auria.mg
5e415e3331 Install all materials before loading meshes 2016-12-27 22:08:27 -05:00
Benau
8c5c85245f Use full detail default 2016-12-27 18:31:06 +08:00
auria.mg
0be858f7f8 Fix crash in texture cleanup branch 2016-12-26 23:03:22 -05:00
auria.mg
943373ea8e Try cleaning up textures when unloading tracks. Crashes at this time, more debugging is required 2016-12-26 22:33:54 -05:00
Benau
15469e555d Allow track loading to take care of geometry details 2016-12-27 11:15:24 +08:00
Benau
7085c164b5 Merge remote-tracking branch 'origin/geometry_detail' 2016-12-26 23:56:18 +08:00
Benau
9831802c7f Fix typo 2016-12-26 13:59:34 +08:00
Benau
c2d9f91c62 Allow to run cutscene(s) in artist debug menu 2016-12-26 13:51:40 +08:00
auria.mg
46e7b5ac77 Try to fix build 2016-12-25 22:27:46 -05:00
auria.mg
2b34dd8410 More cleanup and bugfixing related to #2316 2016-12-25 22:21:41 -05:00
auria.mg
059c2c8573 Bugfix delayed-loaded textures bug 2016-12-25 22:00:11 -05:00
Benau
ebef08c3d8 Try to combine all text field dialogs 2016-12-26 10:53:14 +08:00
auria.mg
4aa31dc56e First attempt at #2316. WIP, issues remains 2016-12-25 20:21:00 -05:00
Benau
3c9174d278 Add a general debug dialog
To be used later
2016-12-25 16:41:55 +08:00
samuncle
e62edcc89a Ground work for geometry detail option 2016-12-24 19:16:39 -05: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
Deve
26bbffe8b0 Don't declare features that are used for SDSM, AZDO and compute shaders and that are not available in GLES renderer anyway. 2016-12-24 01:26:18 +01:00
Deve
7b76804354 Allow to unlock all tracks in config.xml.
Can be used on android when only some tracks are included in the apk.
2016-12-23 23:36:39 +01:00
Deve
674e617018 Allow to use isDirectory function outside of file manager class.
It is used on android for extracting assets
2016-12-23 19:01:16 +01:00
Deve
8a88c9707b Fixed rendering when UBO is disabled 2016-12-23 16:45:03 +01:00
Deve
424b62552e Fixed MLAA in GLES renderer.
This function was used by Cand for his OpenGL 2.1 renderer. The round function is available since GLSL 1.3 (OpenGL 3.0), so there is no need to override it.
If it will be needed in future, I suggest to change the name to round_stk or something similar.
2016-12-23 15:12:16 +01:00
Benau
15d6c7207a Minor improvements for non-instanced shaders 2016-12-23 19:22:30 +08:00
Benau
989234a0ba Clean up header part 2 2016-12-23 17:12:53 +08:00
Benau
31f2a720ca Try to reduce the header size of materials.hpp
Plus header clean up
2016-12-23 14:44:18 +08:00
Benau
d932451295 Don't out a interpolated color change
It will should be determined by colorization mask in fragment shader
2016-12-23 11:38:32 +08:00
Benau
f7e2122b79 Allow drawing instanced glow color without explicit location 2016-12-23 10:36:35 +08:00
Benau
a339975df6 Clean skidmark earlier if there are many karts 2016-12-23 10:08:12 +08:00
Benau
969592e3fc Try to fix framerate drop after few laps
Because skidmark left are never culled
2016-12-23 09:19:46 +08:00
Tobias Markus
6fb93fa208 Fix compilation on macOS 10.12 (#2701) 2016-12-22 19:17:31 -05: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
28841d601d Remove old code for getting straight frame
With hardware skinning it is not necessary
2016-12-23 00:44:26 +08:00
Benau
bfd57659eb Remove unused file 2016-12-22 11:17:52 +08:00
Benau
ffa4ad84cb Merge branch 'hardware_skinning' 2016-12-22 10:38:06 +08:00
Deve
53ee40af70 Update multitouch device when settings are changed 2016-12-20 23:11:06 +01:00
Deve
082661db65 Add a possibility to change touch device settings in GUI 2016-12-20 23:10:57 +01:00
Benau
c26f8150f4 Fix server only build 2016-12-19 11:17:45 +08:00
Benau
581ca964fd Fix hats with hardware skinning 2016-12-19 11:06:05 +08:00
Benau
2f07b6a8ea Merge pull request #2694 from leyyin/hardware_skinning
Separate the non-cached shader loading in ShaderFilesManager
2016-12-18 19:49:35 +08:00
Daniel Butum
d0229cd85e Separate the non-cached shader loading in ShaderFilesManager 2016-12-18 13:40:36 +02:00
Benau
4f2e2331ee Correct the spelling of shader files 2016-12-18 14:59:37 +08:00
Benau
4477dbb0fb Preload shaders that delay kart selection screen the most
Plus some suggestion from #1787
2016-12-18 14:51:27 +08:00
Benau
7ea4f30824 Make sure no duplicated shader is added somewhere else 2016-12-18 13:49:58 +08:00
Benau
2a9656bfdc Allow all shader files to be loaded only once
Todo: preload
2016-12-18 10:51:05 +08:00
Benau
7894e5c864 Try to use a smarter approach 2016-12-18 09:27:50 +08:00
auria.mg
da795b69ed Better fix for #2687 2016-12-17 18:49:00 -05:00
auria.mg
2b13a5643e Ignore the "applesmc" accelerator as input device. see #2691 2016-12-17 17:43:03 -05:00
Deve
f314c1ff2a Some improvements for multitouch steering GUI
- move it to separate class, so that it can be displayed in Overworld too
- add a possibility to scale the interface (atm. only in config.xml)
- touch steering buttons are created only for single player races

I removed unused drawEnergyMeter function from Overworld GUI. The reason was that I use this function from race_gui.cpp for nitro button and this function in overworld breaks it. And still the proper drawEnergyMeter function is available in race_gui.cpp and can be moved to RaceGuiBase if it will be needed in Overworld in future.

I moved the font size computation to the top of constructor because I use it to check available space for minimap.
2016-12-17 23:28:22 +01:00
Benau
90a556fe9c Try to share shaders across different programs
Todo: non-instanced version
2016-12-17 15:59:40 +08:00
auria.mg
488af78fa3 Fix #2687, reset cameras properly 2016-12-16 21:03:05 -05:00
auria.mg
fc9a51b7f4 Reset cameras when resetting 3 strikes battle. Fixes #2687 2016-12-16 20:33:30 -05:00
auria.mg
5f0a65a07b Fix bug where an animated texture matrix could never be reset to identity. Fixes #2692 2016-12-16 20:21:09 -05:00
Benau
79e5aadd4d Avoid using software skinning on empty joint objects 2016-12-16 10:04:35 +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
3d814d1036 Fix wrong case handling 2016-12-15 13:30:26 +08:00
Benau
035271d6ec Remove GL error about draw2DLine
Use GL32_draw2DRectangle, only works if it's a straight line.
2016-12-15 12:57:39 +08:00
Benau
2e2345289c Don't upload / bind skinning ubo if not supported 2016-12-15 12:17:39 +08:00
Benau
1f23e6e783 Remove code used to duplicate VAOs for animated meshes 2016-12-15 11:44:09 +08:00
Benau
6baed2b0dd Merge remote-tracking branch 'origin/master' into hardware_skinning 2016-12-15 10:01:12 +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
hiker
4ee6f6315f Made World::m_weather a singleton to further remove dependencies on World. 2016-12-13 17:14:29 +11:00
hiker
32f2196201 Removed unnecessary #include world.hpp. 2016-12-13 17:13:54 +11:00
hiker
ed7574ca85 Merge remote-tracking branch 'origin/master' into simplify-world 2016-12-13 09:19:24 +11:00
hiker
4d406490e1 Made ScriptingEngine a singleton and removed it from World, which reduces
more dependencies on world.
2016-12-13 09:18:59 +11:00
hiker
b12453e9ca Made Physics a singleton, removing the accessor functions from World.
Removes dependency on World for a few files.
2016-12-13 08:31:08 +11:00
hiker
cd149ab5d7 Moved m_track out of World into a static m_track in Track. Makes
world smaller and removes a few dependencies on World.
2016-12-13 07:53:33 +11:00
Benau
abe4ae2d6a Fix server only stk 2016-12-12 13:54:43 +08:00
Benau
c8e5238ce2 Merge remote-tracking branch 'origin/master' into hardware_skinning 2016-12-12 13:45:04 +08:00
Benau
269e440d0c Avoid translating artist debug mode only fps string 2016-12-12 13:43:01 +08:00
Benau
a420b09363 Disable all karts animation if UBO size not big enough 2016-12-12 13:24:34 +08:00
auria.mg
044e8c52e1 Fix tabs added in previous commit, used spaces instead... 2016-12-11 20:19:58 -05:00
auria.mg
ab7ded308a Make presentation of kart characteristics uniform and indepdendent of difficulty. Fixes #2684, fixes #2539 2016-12-11 20:16:44 -05:00
Corentin Pazdera
aaecd58fc0 Adding appveyor config file (#2652)
I am unfamiliar with appveyor myself but I can merge the file. Next step would be for someone to take a look at settuping an account
2016-12-11 19:52:15 -05: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
Daniel Butum
244c812cf3 Add travis server only matrix configuration (#2682)
Also increase number of threads for the gcc builds
2016-12-11 19:15:37 -05:00
hiker
8785ddf148 Moved force-fog settings into track. 2016-12-12 08:05:07 +11:00
Benau
4327885f07 Add alpha test skinned mesh instanced shaders 2016-12-12 01:00:57 +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
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
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
f2422317ba Auto fallback to software skinning if not supported
Currently explicit attribute location, uniform buffer object and
opengl greater or equal 3.3 are required for hardware skinning

So even intel hd3000 in linux can do hardware skinning
2016-12-09 20:50:09 +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
hiker
22092e6459 Moved background/clear color from world to irr_driver. 2016-12-09 17:14:04 +11: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
hiker
fed12f774c Fixed potential deadlock, made debug output more useful. 2016-12-08 09:46:44 +11:00
Benau
407ed319de Show debug info about total skinning joints being calculated 2016-12-07 16:26:22 +08:00
Benau
d21e5e0f76 Make skinning offset changeable by culling 2016-12-07 16:08:57 +08:00
Benau
fcebb5c2e6 Fix crash with normal map skinned mesh 2016-12-07 09:29:40 +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
hiker
32daf4ce29 Removed unused functions. 2016-12-07 09:34:33 +11:00
Deve
5fad8a135e Destroy egl context on exit 2016-12-06 23:32:04 +01:00
Deve
c013fcea61 Allow to log messages to file on android 2016-12-06 23:31:49 +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
95e627c004 Fixed pi compilation. 2016-12-07 00:28:36 +11:00
hiker
63fe4373a8 Removed unnecessary #ifdef. 2016-12-06 21:50:23 +11:00
hiker
8b806dd35a Fixed compiler warnings. 2016-12-06 18:46:03 +11:00
hiker
1939075a1b Merge remote-tracking branch 'origin/master' into nw 2016-12-06 18:45:17 +11:00
hiker
fdfb56ddf8 Fix server-only compilation. 2016-12-06 18:10:31 +11:00
hiker
746bac00ce Merge remote-tracking branch 'origin/new-pi' into nw 2016-12-06 09:26:07 +11:00
hiker
526b2a8f0d Added two more graph connections. 2016-12-06 09:22:13 +11:00
hiker
79ad569542 Only allow LAN connections for LAN servers (previously anyone with
the IP address could connect, even from the outside). Added new
--public-server command line option to enable public WAN server.
2016-12-06 09:10:05 +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
c0cd915716 Minor fixes in file manager.
The listFiles function returns absolute paths, so the condition if ((*i)=="..") doesn't have a sense. I added a check for absolute paths (file == name + "/.."). Btw. what about Windows? Does it return 'name + "\\.." ' or so?

I also enabled recursive removing of directories on Android. It is needed for example when you have already installed STK with extracted data files, and then you want to upgrade STK to newer version.
2016-12-04 22:22:42 +01:00
Deve
419e9e5351 Some minor modifications that make merging with master easier 2016-12-04 15:11:48 +01:00
Benau
2c8b31379b Don't push color info for shadow and rsm 2016-12-04 13:41:28 +08:00
Benau
ed43d16a1c Allow alpha test shader to be colorizable 2016-12-04 13:21:39 +08:00
Benau
2a50149e62 Remove TODOs about splatting
Splatting will be drawn using non-instanced shader only, it's only
used one place (in overworld) and may be removed eventually
2016-12-04 11:48:52 +08:00
Benau
902f4e20a5 Leave the loop as soon as one material is colorizable 2016-12-04 11:15:32 +08:00
Benau
2d980264b4 Update LOD to support colorization 2016-12-04 10:47:08 +08:00
Benau
7d5f786da8 Make grass shader colorizable 2016-12-04 00:59:09 +08:00
Benau
31b6a0a4b1 Try to fix gcc build 2016-12-03 16:06:46 +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
79136e0289 Fix GLES 2016-12-03 14:10:07 +08:00
Benau
332811af84 Merge branch 'improve_instanced_rendering' 2016-12-03 09:17:15 +08:00
Benau
6a3ad6605b Try to fix release build 2016-12-02 21:00:34 +08:00
Benau
c7d025d81d Fix binding texture error with AZDO
See specification of bindless textures for details
2016-12-02 20:09:08 +08:00
Benau
bfc006b979 Fix wrong texture units 2016-12-02 19:26:40 +08:00
Benau
4fbce474c5 Fix ambient light on track not updated 2016-12-02 19:17:55 +08:00
hiker
8bd3e35c7b Removed some of the debug output of the latency protocol. 2016-12-02 09:26:03 +11:00
hiker
e3e072557c Fixed deadlock when more than one client was used. 2016-12-02 09:16:51 +11:00
hiker
ee63f2c456 Support --port command line option to change a client or servers
port number.
2016-12-01 22:29:23 +11:00
hiker
09ca38d36e Renamed handleLANRequest to HandleDirectSocketRequest, since the code
can also be used to connect to a public server (outside of the server's LAN).
2016-12-01 10:11:50 +11:00
hiker
fc5cecceae Use the port number from the config instead of hard coded one. 2016-12-01 09:55:39 +11:00
Deve
3add543a22 Fixed conflict between GLES2 headers included in irrlicht and GLES3 headers included in STK.
There is one minor difference in one declaration, which is probably an inconsistency in these headers. But it may cause compilation errors on some compiler versions.
2016-11-30 21:31:29 +01: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
hiker
b0294060dc Support direct connection to LAN server using command line option,
based on Benau's fix_2446 branch.
2016-11-30 09:07:27 +11:00
Benau
5884d7b9d8 Avoid using matrix4 calculation 2016-11-28 15:44:14 +08:00
hiker
5fc4531c01 Updated finite state machine graph. 2016-11-28 18:39:18 +11:00
hiker
70c203cc3f Updated and fixed server documentation. 2016-11-28 18:20:41 +11:00
hiker
9c2b17602d Added documentation for cliebt lobby. 2016-11-28 18:09:38 +11:00
Benau
497b7e3f14 Use reference when possible 2016-11-28 13:34:45 +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
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
hiker
21ca9b40f0 Merge branch 'master' of github.com:supertuxkart/stk-code 2016-11-28 12:46:00 +11:00
hiker
aa36f7856f Fixed compiler warnings. 2016-11-28 09:03:56 +11:00
hiker
de0f153f0c Renamted SynchronizationProtocol to LatencyProtocol. 2016-11-28 08:45:17 +11:00
Benau
3e938a79be Fix #2676 by moving rsm matrix to be assigned lastly 2016-11-27 11:21:16 +08:00
auria.mg
decaac85d9 Tweak item collision box, fixes #2678 2016-11-26 19:01:38 -05:00
Benau
0298d48e24 Try to use the internal template to colorize objects
Todo: instanced version
2016-11-27 01:14:40 +08:00
Benau
9b15bd2c63 Remove useless extern BoundingBox 2016-11-26 10:10:10 +08:00
Benau
a9a6ec0b7f Use the old unrolling draw mesh for RSM shaders on GL3
Todo: fix CustomUnrollArgs for rsm shaders
2016-11-26 00:06:22 +08:00
Benau
f7e0babe02 Fix global illumination on instanced rendering 2016-11-26 00:03:22 +08:00
Benau
df6ab0a7fd Fix god rays regression 2016-11-25 20:44:44 +08:00
hiker
6053ad207f Don't use the SynchronisationProtocol for startup state changes at all.
It is now totally optional, and only estimates the latency between the
server and all clients (and this value is not even used).
2016-11-25 22:17:24 +11:00
Benau
5ca5dc3b3e Clean up culling code 2016-11-25 16:45:00 +08:00
Benau
0c091125b0 Remove const cast in three strikes battle 2016-11-25 12:38:08 +08:00
Benau
fe371a28b5 Add non-const function for STK usage 2016-11-25 12:37:40 +08:00
hiker
18f14ae142 Fixed compiler warnings. 2016-11-24 17:48:23 +11:00
hiker
b1afac23a7 Moved creation of the race protocols into lobby, so SynchronizationProtocol
is not involved in the race start anymore.
2016-11-24 08:56:30 +11:00
hiker
617e1c538d Merge remote-tracking branch 'origin/master' into nw 2016-11-23 21:58:00 +11:00
hiker
414b0e0633 Fixed sending 'client ready' twice. 2016-11-23 18:50:44 +11:00
hiker
dd515292ee Fixed deadlock (in case of protocol error). 2016-11-23 18:40:56 +11:00
hiker
62da83317e Fixedc compilation, renamed LobbyRoomProtocol to LobbyProtocol. 2016-11-23 18:39:59 +11:00
Benau
a2bb0487b1 Disable backface culling when set in the material. 2016-11-23 15:16:19 +08:00
hiker
2c7e7d8722 Merge remote-tracking branch 'origin/master' into nw 2016-11-23 17:16:42 +11:00
Benau
eb84de2666 Fix #2491 2016-11-23 10:11:08 +08:00
hiker
026e1623ec Renamed ServerLobbyRoomProtocol to just ServerLobby, ClientLobbyRoomProtocol
to ClientLobby, and LobbyRoomProtocol to Lobbyprotocol.
2016-11-23 09:39:33 +11: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
hiker
09eae7e25f Removed StartGameProtocol, and added the necessary states to the
Lobby rooms. Added documentation of the FSM for the ServerLobby.
2016-11-22 17:57:15 +11:00
Benau
61a00a9068 Fix transparent displacement rendering with advanced pipeline off
Allowing them to render using the same custom alpha uniform used
by ghost karts, fixed #2459.
2016-11-22 12:34:48 +08:00
Benau
c1e931f5ba Merge branch 'legacy_opengl' 2016-11-22 09:23:17 +08:00
Benau
690d36271d Try to fix LOD in legacy pipeline 2016-11-22 00:51:10 +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
befa2394a8 Some improvement to #2667 2016-11-21 11:58:46 +08:00
Benau
72ff03c024 Fix light in legacy pipeline 2016-11-21 11:10:40 +08: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
Benau
f853255204 Merge branch 'fix_1704' 2016-11-18 09:51:34 +08:00
Benau
9eb6ef5bfe Simplify code 2016-11-18 09:44:30 +08:00
Deve
952bed5672 Few minor fixes for multitouch steering:
- don't update a button that is already not pressed
- use full axis range, which means higher sensitivity in the center
- make sure that we don't divide by 0
2016-11-18 01:22:32 +01:00
hiker
6b1563321f Use singleton for lobby protocols. 2016-11-18 09:08:37 +11:00
Benau
ac74304dd7 Fix #1704 2016-11-18 00:31:48 +08:00
Benau
b6c1a45918 Use a better define 2016-11-16 10:20:40 +08:00
hiker
ba600f40f2 The server waits now for all client to start (which means it will be
behind the clients by the maximum latency, which in turn means that
at server time T all client events at time T have arrived, so less
rollback necessary).
2016-11-16 08:48:04 +11:00
hiker
019e61ec66 iFixed pi compilation. 2016-11-16 00:19:09 +11:00
hiker
fbd858a64c Fixed non-server compilation. 2016-11-15 12:52:37 +11:00
hiker
ae36208e29 Merge remote-tracking branch 'origin/master' into new-pi 2016-11-15 12:38:21 +11:00
Benau
2f2940115e Use a smooth dt on camera to determine its position 2016-11-14 15:47:55 +08:00
hiker
621e61c644 Fixed coding style. 2016-11-14 18:32:29 +11:00
hiker
feae91042a Explicitly disable X11 compilation for windows. No idea why it is
defined in CGUIEditbox now, but it somehow is ;(
2016-11-14 18:25:00 +11:00
hiker
13bcdcade6 Fixed crash in case of standalone server. 2016-11-14 10:15:40 +11:00
hiker
245045f575 Fixed various crashes on server. 2016-11-14 10:09:25 +11:00
hiker
f2b67f75b6 Minor coding style fixes. 2016-11-14 10:02:46 +11:00
hiker
73182863df Fixed linking problems - will probably not run ;) 2016-11-14 09:59:08 +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
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
Deve
e707b7a2ea Remove pthread_setcancelstate functions.
This function is not available on android and it is default on other platforms anyway.
It makes easier to port changes from master to android branch.
2016-11-11 14:11:27 +01:00
hiker
61a3d10e10 More Compile SERVER_ONLY, still not fully working. 2016-11-12 00:09:39 +11:00
Deve
6b2bf1c088 Make sure that we are not out of array.
Command line arguments are not available on android.
2016-11-11 14:07:18 +01:00
hiker
ddcddf4a0a Compile SERVER_ONLY (by #ifdef'ing out all graphics related code).
Does not link yet!!
2016-11-11 23:46:22 +11:00
Deve
452c7c1e40 Fixed compiler warning 2016-11-11 13:44:51 +01:00
Benau
19cd3656a9 Use all cores only in clang for travis 2016-11-11 15:29:17 +08:00
hiker
8d9bb9c30f Cherry picked commits from old pi branch (which was based on dumb client). 2016-11-11 17:21:59 +11:00
hiker
8ecb0ecaeb Merge branch 'master' of github.com:supertuxkart/stk-code 2016-11-11 15:35:30 +11:00
hiker
fd5f60a786 Merge branch 'master' of github.com:supertuxkart/stk-code 2016-11-11 15:27:45 +11:00
hiker
190490e0ce Merge branch 'master' of https://github.com/supertuxkart/stk-code 2016-11-11 15:15:02 +11:00
Benau
f31cfa261a Try to fix compilation by reducing number of threads 2016-11-11 11:58:53 +08:00
Benau
6b282acae2 Use bullet built-in function 2016-11-11 10:20:15 +08:00
Benau
656ddcfdee Add tools from hiker 2016-11-11 09:06:06 +08:00
Benau
8b069df97f Merge remote-tracking branch 'origin/renderer_refactoring' 2016-11-11 08:43:42 +08:00
hiker
10b7dac658 Replaced static with dynamic casts, fixed docu. 2016-11-11 09:14:18 +11:00
hiker
10575174fc Fix for disabling LAN detection. 2016-11-11 08:47:10 +11:00
hiker
6065a6ce3e Added debug option to disable automatic LAN connection. 2016-11-10 18:21:27 +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
deve
78c1c5e14a Update .gitignore 2016-11-10 02:42:07 +01:00
hiker
9201a08daf Fix crash exiting a server screen. 2016-11-09 23:24:04 +11:00
hiker
64d2d43f5b Disable console (for #2665). 2016-11-09 23:06:17 +11:00
Benau
8a0d911d10 Allow using input method (for CJK) in linux 2016-11-09 12:28:23 +08:00
Benau
0c0581f97a Merge remote-tracking branch 'lpw/malice' 2016-11-05 11:25:19 +08:00
LoadingPleaseWait
578a3732c0 Add help page with icons for banana penalties 2016-11-04 22:16:06 -05:00
Benau
214ea6801b Merge remote-tracking branch 'origin/master' into renderer_refactoring 2016-11-04 21:06:42 +08:00
Benau
9da38a2755 Fix Mac build 2016-11-04 21:05:07 +08:00
Benau
7da108c8b1 Header clean up
Also move getUnicolorTexture to a better location
2016-11-04 20:30:08 +08:00
Benau
01c7576755 Update prefilled textures if new RTT is used
Required by multiplayer kart selection screen
2016-10-31 14:13:38 +08:00
Benau
253281aaeb Avoid crashes in fixed pipeline RTT if it fails 2016-10-31 11:57:15 +08:00
Benau
1678078aea Fix GLES 2016-10-31 09:15:50 +08:00
Benau
07ebb760ac Try to make RTT creation as close to master as possible 2016-10-31 00:33:06 +08:00
Benau
7998c326fc Prevent using uninitialized values 2016-10-30 14:44:08 +08:00
Benau
df57a73813 Fix start projection of karts 2016-10-30 10:10:09 +08:00
Benau
fc47d6e220 Minor header clean up 2016-10-29 10:37:45 +08:00
Benau
0165469301 Fix build 2016-10-28 23:46:24 +08:00
Benau
2f0252be98 Merge remote-tracking branch 'origin/master' into renderer_refactoring 2016-10-28 21:41:49 +08:00
hiker
9f4c842b6c Merge branch 'master' of https://github.com/supertuxkart/stk-code 2016-10-27 21:36:17 +11:00
hiker
fda3afad93 Fix 2658 by separating networking code from main loop. 2016-10-27 21:33:42 +11:00
Benau
956aa83a0a Remove unused function 2016-10-27 10:15:41 +08:00
Benau
93197d9569 Merge branch 'fix_2445' 2016-10-27 09:41:35 +08:00
Benau
d4e9de1f53 Fix non-animated karts 2016-10-27 09:41:01 +08:00
hiker
94346ae64d Merge branch 'master' of https://github.com/supertuxkart/stk-code 2016-10-27 11:13:19 +11:00
hiker
b3b9d16ba1 Removed unnecessary logging. 2016-10-27 08:48:38 +11:00
hiker
2c56837ee8 Fixed token handling. 2016-10-27 08:41:35 +11:00
hiker
b1f6632e5b Changed countdown from a mixture of ms and seconds to seconds only;
added documentation.
2016-10-27 08:40:45 +11:00
deve
bc7f89d49a Merge branch 'master' of https://github.com/supertuxkart/stk-code 2016-10-26 13:51:40 +02:00
deve
8d270e5ff3 Fixed nitro bar for non-HD textures 2016-10-26 13:51:17 +02:00
Benau
e93e8b7708 Make animated mesh render separately in instanced rendering
Try to introduce mesh + render info hash in vao manager, without
copying the mesh
2016-10-26 14:25:48 +08:00
Benau
9bd4c87b9c Fix leaking createTextBillboard 2016-10-26 09:21:17 +08:00
Benau
cc3ff7cf9f Simplify calculation of transform 2016-10-26 09:08:10 +08:00
Benau
a38c8f0c19 Make billboard text display properly when viewing in any direction 2016-10-26 00:34:13 +08:00
hiker
e31a7ca4a8 Merge branch 'master' of https://github.com/supertuxkart/stk-code 2016-10-25 10:05:28 +11:00
hiker
6a578e374f Fix LAN handling when connecting via a WAN server. 2016-10-25 07:53:52 +11:00
Benau
68ea2ed3b2 Fix typo 2016-10-22 12:33:47 +08:00
Benau
cf557f6982 Fix release build 2016-10-22 10:46:30 +08:00
Benau
3e70fa27d9 Add doxygen for Font modules
Plus some coding-style cleanup
2016-10-22 00:01:48 +08:00
hiker
df21ba55b4 Merge branch 'master' of https://github.com/supertuxkart/stk-code 2016-10-21 08:31:11 +11:00
Benau
7505630cd4 Add doxygen for Soccer and SpareTire AI 2016-10-21 01:38:30 +08:00
Benau
021509387d Add doxygen for Arena and Battle AI
Plus some coding-style cleanup
2016-10-20 16:40:20 +08:00
Benau
b12f7a1079 Fix shaking u-turn 2016-10-19 00:37:29 +08:00
Benau
24f926b780 Merge remote-tracking branch 'origin/spare_tire_kart' 2016-10-18 14:32:44 +08:00
Benau
8eb8e805eb Fix dropping of normal map wheel in battle mode 2016-10-18 14:18:51 +08:00
Benau
f1caba7932 Make ArenaAI reverse more naturally 2016-10-18 10:33:27 +08:00
Benau
9aa92cfe30 Fix profiling mode framerate regression 2016-10-18 09:55:30 +08:00
auria.mg
8c0fe53ff2 Fix texture mirroring on alpha blend/test shaders. See #2167 2016-10-17 19:46:21 -04:00
auria.mg
9d1b115e59 Don't call OpenAL's position method when audio is disabled 2016-10-17 19:15:28 -04:00
auria.mg
513e32d9ff Fix bug that could cause reversible textures to be mirrorred twice when driving the track in reverse (see #2167) 2016-10-17 19:09:01 -04:00
Deve
28f04b472b Merge pull request #2654 from LoadingPleaseWait/redundant-includes
Remove duplicate include statements from kart.cpp
2016-10-17 11:02:38 +02:00
LoadingPleaseWait
eddf39b8a1 Remove duplicate include statements from kart.cpp 2016-10-17 03:36:29 -05:00
deve
5502fa4ebe Declare custom alpha also when bindless sampler is enabled 2016-10-17 08:23:27 +02:00
Benau
caf095ed60 Add improvements from auria and devee 2016-10-17 09:13:07 +08: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
auria.mg
929b9b5c20 Stop world imer when game is paused 2016-10-15 20:28:48 -04:00
auria.mg
020edf1679 Add support for directional (forward-only or backwards-only) driveline segments 2016-10-15 18:56:13 -04:00
Benau
1f8149f138 Merge remote-tracking branch 'origin/skinned_mesh_normal_map' 2016-10-15 15:25:20 +08:00
Benau
604e454f33 Fix normal map in library and track objects if they are animated 2016-10-15 15:21:34 +08:00
Benau
efb6b7431a Try to make skinned mesh work with normal map 2016-10-15 00:17:09 +08:00
hiker
35e382b893 Remove unnecessary request for server address,since it is now included
for each server in the list of all servers.
2016-10-14 18:08:39 +11:00
Benau
f70a64f61a Fix controller and text billboard leaking in kart 2016-10-14 12:01:37 +08:00
Benau
e09fe6ff8a Fix memory leak of mesh tool 2016-10-13 14:08:58 +08:00
hiker
62b9b93d10 Merge branch 'master' of github.com:supertuxkart/stk-code 2016-10-13 14:06:48 +11:00
hiker
85e0fed9b7 Merge branch 'master' of https://github.com/supertuxkart/stk-code 2016-10-13 11:14:40 +11:00
hiker
83ffbd96e1 Better error message in case of a failure to creaet a server. 2016-10-12 17:21:15 +11:00
hiker
061827a1ac Ported to use the new server (Issue65 branch). 2016-10-12 17:09:57 +11:00
Benau
965e901796 Fix typo 2016-10-12 14:00:51 +08:00
Benau
48e6128e12 Grab light in the correct place, fixed all leaking of lights 2016-10-12 11:48:50 +08:00
Benau
ddcf6fbb14 Fix memory leaking when changing resolution 2016-10-12 10:28:33 +08:00
Benau
76f32b4a41 Fix an unfree Atom 2016-10-12 09:52:34 +08:00
Benau
7df560ae63 Fix leaking of scripting engine 2016-10-12 09:30:08 +08:00
Benau
b2cdc8c97e Fix memory leak of unicolor texture
Also try to hold them until the last moment, this may need some
testing.
2016-10-11 16:25:22 +08:00
hiker
b0bb6ce00f Simplified structure. 2016-10-11 18:13:21 +11:00
hiker
3243f81f10 Avoid crash. 2016-10-11 18:02:11 +11:00
hiker
68f5259f4d Removed static variables and properly initialised in setup, which
should allow this protocol to work for more than one race.
Back-ported to master.
2016-10-11 17:58:43 +11:00
Benau
ef7201cf51 Remove an unneeded line 2016-10-11 12:24:36 +08:00
Benau
fb79cf3a6e Let spare tire karts follow bounding box points 2016-10-11 10:52:08 +08:00
Benau
28f1e45f79 Really fix model view widget 2016-10-11 09:09:09 +08:00
hiker
7b3fc04d26 Removed debug output. 2016-10-11 08:46:14 +11:00
hiker
09ce5515b0 Avoid extrapolation by making sure the client starts after receiving
a message from the server, and only updating the previous position
if the new previous position is indeed before the current client time.
Fixed conflicts, removed dumb-client related interpolation code, left
client starting in place.
2016-10-11 08:44:17 +11:00
Deve
850b23db1f Fixed setting viewport in multiplayer games.
It was broken in commit 5cfed1bc1c.

We mix irr_driver->getVideoDriver()->setViewPort() and glViewport(...) functions and thus the first one, which is executed during camera activation, in some cases doesn't work. It compares the viewport to values which has been set last time and thinks that nothing changed.

It only happens on single player (with single camera), so we just restore the viewport to fullscreen after scene rendering to workaround the issue.

Actually the problem was that it was set after camera activation, which overwrote proper values.

I also fixed SSAO, RSM and normals vizualization in multiplayer games.
2016-10-10 22:47:30 +02:00
Benau
6750fb3c94 Fix leaking of script engine 2016-10-11 00:11:45 +08:00
Benau
1a9a4c626e Properly add the model view widget
Use add() will set angle = 0 in ModelViewWidget
2016-10-10 14:38:30 +08:00
Benau
d1c1435b55 Use a better string 2016-10-10 05:16:19 +00:00
Benau
8e2d7c5499 Fix memory leaks and uninitialized values of ShadowMatrices 2016-10-10 13:04:40 +08:00
Benau
d39f5e487b Don't set position and target of camera the same
Otherwise NAN will be calculated in ViewArea of camera
2016-10-10 13:04:40 +08:00
Benau
aaa0e11770 Fix using uninitialized values when init() the first time 2016-10-10 13:04:40 +08:00
Benau
03f9fb35da Fix valgrind warning 2016-10-10 13:04:34 +08:00
Benau
4ed599403e Show a message when a life gained 2016-10-10 08:47:10 +08:00
hiker
91363f820b Disable slow-down of game time in case of very low FPS when networking
is used (this would desynchronise client and server).
2016-10-10 09:54:44 +11:00
hiker
d00f2abb0b Fixed item collection (token must not be tested by protocols anymore). 2016-10-10 09:54:11 +11:00
Benau
fdcb4dac8d Fix assertion when no spare tire karts 2016-10-09 17:41:20 +08:00
Benau
b4907f5519 Tell player that they have max 3 lives only 2016-10-09 13:52:24 +08:00
Benau
fb0f4fca3c Allow BattleAI to collect lives 2016-10-09 13:24:00 +08:00
Benau
6b8156c254 Pre-spawn spare tire karts on random nodes in graph
Don't use the item location, as it can be remembered by players
2016-10-09 11:17:36 +08:00
Benau
357567ae8d Move spare tire num info to race_manager
It allows this info to be get more easily
2016-10-09 09:50:26 +08:00
Deve
8092cfc0a7 Fixed displaying some special characters in keys binding in options.
It most probably needs to be done this way since commit 2096532d0e.
I don't know what about OSX, so I enabled it only for linux.
2016-10-08 21:26:20 +02:00
Deve
1e520d551f Merge pull request #2650 from Legimet/fix-boom-boom-boom-credits
Fix credits for Boom-boom-boom song
2016-10-08 19:52:47 +02: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
Benau
8889654d96 Move STA function out of world 2016-10-08 09:41:02 +08:00
Benau
9096bb05bd Merge remote-tracking branch 'origin/master' into spare_tire_kart 2016-10-08 08:36:05 +08:00
Benau
59edb96489 Fix warning when eliminate a kart in battle mode 2016-10-08 08:35:07 +08:00
Benau
71662df159 Improve spawn formula 2016-10-07 21:49:05 +08:00
Benau
c907442bb4 Fix incorrect target node access 2016-10-07 16:43:54 +08:00
Benau
2147b74fe4 Fix engine sound after re-spawn 2016-10-07 16:03:15 +08:00
Benau
b055fa573d Try to fix hangs when firstly spawn STA 2016-10-07 15:29:36 +08:00
Benau
91af45337f Pre-add spare tire karts probably 2016-10-07 14:39:39 +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
Benau
b66e6ef06d Use MaxSpeed to slow down spare tire karts 2016-10-06 00:35:52 +08:00
deve
ce28d46d14 Merge branch 'master' of https://github.com/supertuxkart/stk-code 2016-10-05 11:30:22 +02:00
deve
7a82a8d2c6 Fixed compiler warning 2016-10-05 10:56:40 +02:00
deve
bd42f2c2df Fixed rare case that anisotropic filtering feature is not available in graphics drivers. 2016-10-05 10:50:20 +02:00
Benau
a0b02659f7 Don't use num of karts from world, as it includes spare tire karts 2016-10-05 16:42:37 +08:00
Benau
a91af96637 Initial work on spare tire kart in battle mode
Some values are hard-coded for now
2016-10-05 16:18:39 +08:00
Benau
43d9db4db0 Fix acceleration and braking of ArenaAI 2016-10-05 11:53:45 +08:00
hiker
5767f2294e Merge branch 'master' of https://github.com/supertuxkart/stk-code 2016-10-05 13:32:13 +11:00
hiker
ceb961ae87 Fixed reverse camera (smooth speed was positive even when
going backwards).
2016-10-05 13:31:31 +11:00
hiker
3506b7da2f Merge pull request #2615 from nado/warning-fix
Fixes warnings
2016-10-05 12:59:22 +11:00
hiker
8949e89809 Merge remote-tracking branch 'origin/master' into rewind
Fixed conflicts.
2016-10-05 08:21:10 +11:00
Nado
d21630c815 This simplifies the reading of bool isEasterMode() 2016-10-04 08:55:07 +02:00
Nado
25a4aa565a Reduce variables scope when possible, based on the warnings reported by
cppcheck.
2016-10-04 08:55:01 +02:00
Nado
afbea19d34 Fix -Wunused-variable 2016-10-04 08:44:50 +02:00
Nado
4c0b4d8078 Fixes -Wsign-compare
See #2613
2016-10-04 08:43:38 +02:00
hiker
9595a76d36 Removed unnecessary flag to keep track if speed icnrease is defined. 2016-10-04 08:28:01 +11: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
hiker
84a3f5d8b2 Fixed compiler warnings. 2016-10-04 08:16:35 +11:00
hiker
9cf88ef874 Merge remote-tracking branch 'origin/master' into rewind.
Fixed conflicts.
2016-10-04 08:15:40 +11:00
hiker
50b1a8cdfb Added some (commented out) code to investigate camera shaking - if it
should happen again.
2016-10-03 18:13:03 +11:00
Benau
21a04213d5 Fix typo 2016-10-03 10:30:06 +08:00
Benau
78e6cfc8db Merge remote-tracking branch 'origin/master' into walldriving 2016-10-03 10:03:12 +08:00
Benau
13eaf82af1 Patch TestAI with changes to SkiddingAI 2016-10-03 10:02:27 +08:00
Benau
e2030dabbc Disable AI debug 2016-10-03 09:54:02 +08:00
Benau
c64c8717a5 Use 16bit integer to save some space in ArenaGraph 2016-10-03 09:28:12 +08:00
auria.mg
6e37c5375a Fix end camera crash 2016-10-02 20:18:40 -04:00
Benau
3f71745d92 Only rescue AI if it's on the ground 2016-10-02 15:04:08 +08:00
Benau
fc94c5e4c4 Change the whole path to avoid bad items 2016-10-02 15:03:09 +08:00
Benau
d3301ff006 Allow battle ai profiling with different track 2016-10-01 12:35:57 +08:00
Benau
c434cb80f4 Significantly improve turning and bad items avoidance for ArenaAI 2016-10-01 07:58:14 +08:00
Benau
62dfef1fb9 Improve performance for findOutOfRoadSector on ArenaGraph 2016-09-30 09:27:44 +08:00
Benau
3c24c73faa Fix unknown sector in arena after rescue 2016-09-30 08:15:36 +08:00
Benau
c22714951c Missed reset before update TrackSector 2016-09-30 00:42:04 +08:00
Benau
d386c76e2d Fix explosion animation on upside down area 2016-09-29 14:37:39 +08:00
Benau
43c40c062e Make m_bb_max and m_bb_min private in Graph again
Avoid setting them in ArenaGraph, let createQuad handle them all
2016-09-29 13:36:50 +08:00
hiker
18b1218312 Oops - made boundary box protected again, it is accessed in the ArenaGraph. 2016-09-29 15:21:59 +10:00
hiker
2e38154bd6 Merge branch 'walldriving' of github.com:supertuxkart/stk-code into walldriving 2016-09-29 15:12:11 +10:00
hiker
0b76a576a3 Exit loop as soon as kart is found to be on one GraphNode. 2016-09-29 15:11:08 +10:00
hiker
fb7b42a625 Fixed compiler warning. 2016-09-29 15:10:51 +10:00
hiker
7f6d800fe7 Made the boundary box private to Graph. 2016-09-29 15:10:26 +10:00
Benau
32f87fa8a9 Fix wrong doxygen comments 2016-09-29 10:19:18 +08:00
Benau
df52922d08 Clean up unused function and wrong comment 2016-09-29 09:57:38 +08:00
Benau
100c23b3c0 Move TrackSector to WorldWithRank 2016-09-28 13:48:32 +08:00
Benau
3d89d5adc6 Make OverWorld be derived from World 2016-09-28 11:24:04 +08:00
Benau
7867a30276 Allow auto-rescue for ArenaAI if off road for some times 2016-09-28 09:59:33 +08:00
Benau
ff52d91372 Improve SoccerAi front point handling 2016-09-27 16:24:38 +08:00
Benau
e26920e479 Improved skidding when closing to item or kart as target 2016-09-27 15:30:31 +08:00
Benau
3030b679df Clean up ArenaAI 2016-09-27 12:38:36 +08:00
hiker
a58cef4701 Smoothing the speed of a kart (necessary to reduce camera stutter)
results in difficult to reproduce physics. So maintain two speed
values: smoothed (for camera), and 'normal' (for everything else).
2016-09-27 08:42:05 +10:00
deve
cabc696710 Fixed compilation with cmake 3.6 2016-09-26 11:28:19 +02:00
Benau
6f67fd6507 Make swatter be able to swat in any direction 2016-09-26 12:46:44 +08:00
Benau
1260f23db0 Try to fix animation
Don't create a new one after the previous one just got deleted
2016-09-26 11:32:19 +08:00
Benau
9be31ba57b Fix build 2016-09-26 10:25:38 +08:00
Benau
2701af315b Try to make checkCrashes work in any direction 2016-09-26 10:09:53 +08:00
hiker
81004adb90 Moved all m_speed handling into a seperate function. 2016-09-26 09:28:28 +10:00
hiker
a6568e01ea Propperly handle instand speed increases in the physics when rewinding. 2016-09-26 09:01:18 +10:00
Benau
3659ad9068 Try to make determineTurnRadius works with any plane 2016-09-26 00:11:49 +08:00
Benau
bff7154e03 Simplify code and fix typo
Because AI always aims quad center now even for 3d quads
2016-09-25 11:22:15 +08:00
Benau
123e667ab4 Simplify code 2016-09-24 10:05:15 +08:00
deve
1a3daafbff Fixed exit on startup when force legacy device is set in graphics restrictions.
It was working on Linux, but on Windows we need to clear system messages when closing irrlicht device.
2016-09-23 10:22:56 +02:00
hiker
74f521980a Fixed time handling to be in synch between history and rewind. 2016-09-23 07:56:21 +10:00
Benau
111fc297d5 Fix overworld crash 2016-09-23 00:15:04 +08:00
hiker
25a457f88f Moved m_speed computation, so that the correct speed was computed
when the engine force (which is speed dependent) is used.
2016-09-22 08:57:37 +10:00
hiker
f0b5f41fc7 Added info message in case of rewinding. 2016-09-21 17:33:37 +10:00
hiker
1651d28a4c In case of history replay update dt earlier so that World is updated
with the replay dt value.
2016-09-21 17:31:24 +10:00
hiker
15660f2d7a Bugfixes: update MaxSpeed(dt=0) (which updates additional engine power
and slowdowns correctly). Call proceedToTransform after updating
the velocities (which are read).
2016-09-21 17:28:26 +10:00
hiker
f09ed569cc Bugfix: kart rewinder stored incorrect bullet zipper speed. 2016-09-21 17:27:08 +10:00
hiker
8ceb85ef14 Merge branch 'konstin-doc' 2016-09-21 09:13:04 +10:00
hiker
ec3dd221a2 Merge branch 'doc' of https://github.com/konstin/stk-code into konstin-doc 2016-09-21 09:12:32 +10:00
hiker
cf3f75c6e3 Moved SVN-CONFIG file to assets (subversion) repo. 2016-09-21 09:10:07 +10:00
hiker
3ccbeff180 Removed exec permission. 2016-09-21 09:07:06 +10:00
fHachenberg
a82f36d61d Fixes issue #2065
Changes applied:

 *symbol files added
 *LabelWidget removed from SkillLevelWidget and replaced by IconButtonWidget
  Subsequently variables and method containing Label or Text renamed
  setSize method was rewritten
 *Unused property "m_label_name" removed from SkillLevelWidget
 *Substitution label->icon also introduced renamings in KartStatsWidget.
  For instance, setDisplayText is now named setDisplayIcons
2016-09-20 14:01:02 +02:00
Benau
54bf37c09b Make camera works better in upside down area 2016-09-20 10:51:51 +08:00
Deve
a1e2764263 Merge pull request #2636 from SuicSoft/patch-1
Fix typo in main_loop.cpp
2016-09-19 11:38:16 +02:00
Suici Doga
1d75987fe6 Fix typo in main_loop.cpp 2016-09-19 13:54:42 +05:30
Benau
36eca8bc55 Avoid setting gravity in btKart 2016-09-19 11:18:16 +08:00
Benau
8a0a9b2617 Allow showing 3D quad in track debug better 2016-09-19 08:49:59 +08:00
Benau
3187c7e0f9 Allow referee showing on upside down starting position 2016-09-18 13:54:00 +08:00
Benau
ffd497276b Fix kart flying 2016-09-18 12:38:36 +08:00
Benau
b137dbb71c Set gravity inside btKart, allowing starting upside down in arena 2016-09-18 10:53:58 +08:00
Benau
eeac5668d9 Rename QuadGraph to DriveGraph, make it use the new Graph interface 2016-09-17 14:30:28 +08:00
Deve
f2d354d759 Fixed graphics restrictions on android 2016-09-17 03:55:50 +02:00
Deve
852cc068d3 Restore SSAO on linux with GLES renderer. 2016-09-17 03:55:50 +02:00
Deve
21d62ed405 Check availability of color buffer float extension in 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
Benau
606a5401d3 Allow starting position on an upside down surface in arena
Todo: referee and make btKart cast ray at correct normal
2016-09-17 09:53:44 +08:00
Benau
a0005d57e9 Bugfix and better error handling in ArenaGraph 2016-09-16 12:21:38 +08:00
Benau
20e85aa781 Port all function from battle graph to new graph interface 2016-09-16 11:08:19 +08:00
Benau
fff0bab42a Merge remote-tracking branch 'origin/master' into walldriving 2016-09-16 09:23:18 +08:00
Benau
05d2d05f2a Make ArenaAI use only new graph interface 2016-09-16 09:22:57 +08:00
auria.mg
7c2642d427 Workaround crash 2016-09-15 21:12:01 -04: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
Benau
1491236e84 Allow TrackSector to use with new graph class 2016-09-15 15:47:17 +08:00
Benau
05ad91c701 Port all function from battle graph to arena graph
Todo: AI and worlds
2016-09-15 13:29:26 +08:00
Benau
483dca3754 Make EndController to use length() 2016-09-15 12:40:58 +08:00
Benau
8c830bdabf Inital work on one graph interface 2016-09-15 11:46:31 +08:00
Benau
061f187142 Make slipstream work in upside down track 2016-09-13 15:07:07 +08:00
Benau
4574686c1d Make angle computation work in 3D 2016-09-13 12:49:30 +08:00
Benau
3f86722181 Fix skid mark on wall surface 2016-09-13 11:48:36 +08:00
Benau
382905716f Simplify code 2016-09-13 09:26:05 +08:00
hiker
457cb700d2 Make rewind work with history replay (when replaying kart controls),
which allows to have reproducible test cases.
2016-09-13 09:58:42 +10:00
hiker
f8b48a0313 Added zipper speed to state of kart. 2016-09-13 09:55:51 +10:00
Benau
f5d43aaa2e Use btAsin in setHPR
The following quaternion calculated by shortestArcQuat in
rescue animation leads to nan in asinf:

0.710828841, -0.00974362344, -0.703500867, 0.00481829932
-2.0f * (X * Z - Y * W) equals 1.00004351 with above figures

With btAsin it will:
if (x<btScalar(-1)) x=btScalar(-1);
if (x>btScalar(1)) x=btScalar(1);
return asin(x);
2016-09-13 07:43:19 +08:00
Deve
3a9b2b9872 Fixed advanced lighting on android 2016-09-12 21:43:31 +02:00
Benau
b699018879 Only do custom direction of raycast if item is on quad graph 2016-09-12 13:04:05 +08:00
Benau
7544dc3315 Fix uninitialized value 2016-09-12 11:35:34 +08:00
Benau
cc54c44ec0 Fix rotation of items on upside down surface 2016-09-12 10:43:49 +08:00
Benau
f4861a6279 Fix bubblegum on upside down track 2016-09-12 09:33:05 +08:00
Deve
b0c0af8c46 Check if drivers support BGRA texture format and fallback to RGBA 2016-09-11 22:35:54 +02:00
Benau
f687454313 Fix item positioning on Node3D 2016-09-11 16:31:57 +08:00
Benau
ba047a4f99 Keep flying karts parallel to the ground in the physics, not outside
Like 44da1fb4f2, but takes terrain
into account
2016-09-11 15:35:42 +08:00
Benau
2415340cae Try to fix too bouncy bowling ball 2016-09-11 10:07:43 +08:00
Benau
c37f75bf90 Improve item projection on upside down surface 2016-09-10 16:09:21 +08:00
Benau
b3d5e58dd1 Revert enable sliding for upside down tracks.
Actually !getMaterial()->highTireAdhesion() is always false for
upside down texture, so the below code was useless to test with
normal
2016-09-10 14:32:55 +08:00
Benau
7cfd9752d0 Fix restarting the race when karts are up-side-down 2016-09-10 11:11:52 +08:00
Benau
fde9ccd53e Move updateTerrainInfo to a better location 2016-09-10 11:09:52 +08:00
Deve
fb1c049906 Fixed skybox in GLES renderer 2016-09-10 00:17:47 +02:00
Deve
37f3a8e19e Fixed RTTs formats in GLES renderer.
The problem is that textures with float internal formats can be used in framebuffers only when some extensions are available. This is a basic functionality and we need something that is supported on all drivers. As far as I tested, the basic integer GL_RGBA8 format works fine.

Another problem is with GL_BGRA format. The extension with GL_BGRA support is available for almost every device and irrlicht is able to load all textures from files (it has a fallback mode anyway), but when it's used as a texture for framebuffer, it produces a black screen. Again it works fine with GL_RGBA format.

The only issue that is not fixed is SSAO rendering. It uses linear depth rtt, which has GL_R32F type and which can't be easily changed to something other. I disabled SSAO for now, because it is too slow for embedded devices anyway.

I didn't change anything in original OpenGL 3.x rendering, so everything should work as before.
2016-09-09 23:56:22 +02:00
Deve
278d985632 Disable rtt that is not used in GLES renderer anyway 2016-09-09 22:23:01 +02:00
Benau
ceb92f9b4a Try to completely fix rescue issue 2016-09-10 01:20:11 +08:00
Benau
4f67567834 Fix the up vector 2016-09-09 19:48:11 +08:00
Benau
ca4640716a Fix findOutOfRoadSector with Node3D 2016-09-09 16:30:35 +08:00
Benau
505b50da0c Make getNode return pointer. (easier with dynamic_cast later) 2016-09-09 16:14:28 +08:00
Benau
9d65e2047c Fix heading (which got overwriten by merge) 2016-09-09 12:46:42 +08:00
hiker
876ba33876 Added state saving for skidding. 2016-09-09 13:38:39 +10:00
hiker
e1af0cc353 Fixed various bugs in max speed state saving. 2016-09-09 13:36:49 +10:00
Deve
f2d1eb7117 Use high precision floating point variables if possible.
On desktop medium and high precision is generally the same, at least for mesa drivers. But on some Android devices medium precision is much worse, which causes artifacts. We need high precision float variables in vertex shaders for proper scene rendering. Setting different precision for fragment and vertex shaders seems to be not possible, so we just set it to high for both shader types when it's available.
2016-09-07 22:43:11 +02:00
hiker
3a367ce989 For debugging: instead of specifying the time to go back, specify the
time to go back to.
2016-09-07 08:46:46 +10:00
hiker
6245cea609 Added MaxSpeed to saved state of each kart. 2016-09-07 08:15:09 +10:00
hiker
7d7b98564f Fixed speed smoothing factor (which hopefully fixes the shaking camera). 2016-09-05 17:54:45 +10:00
hiker
77ae30a0c5 Avoid compiler warning. 2016-09-05 09:59:29 +10:00
hiker
1860edca4e Save startup-boost information in state. 2016-09-05 08:14:51 +10:00
hiker
a563266988 Made the KartRewinder to be a kart (which gives it easier access to
some of the kart attributes that need to be saved).
2016-09-05 08:00:21 +10:00
Benau
262eb40dfe Allow showing yellow (2d) / green (3d) quads in track debug 2016-09-04 14:33:23 +08:00
Benau
9d41f4b429 Add assert check for graph.xml 2016-09-04 13:15:51 +08:00
Benau
23a49d5245 Merge remote-tracking branch 'origin/master' into walldriving 2016-09-04 11:56:28 +08:00
Benau
21dc569f70 Start to clean up quad and graph node 2016-09-04 11:56:03 +08:00
Benau
78baaff23e Fix crash in profile mode 2016-09-03 23:03:14 +00:00
hiker
b91ecc9754 Use exponential smoothing for speed, to further reduce stuttering
in speed (and therefore camera).
2016-09-01 15:52:26 +10:00
hiker
f89aaa67f5 Reduce (admittedly very minor) camera jitter by computing the speed
of a kart after it was capped by max speed.
2016-09-01 09:54:09 +10:00
Deve
29eda8a206 Merge pull request #2620 from LoadingPleaseWait/tiny-typo
Fix CPU marker typo
2016-08-31 22:57:00 +02:00
LoadingPleaseWait
3dc13eb071 Fix CPU marker typo 2016-08-31 15:36:15 -05:00
hiker
2a06036fb7 Changed order in which rendering and various updates are done, which
results in the physics reacting one frame earlier to user input.
2016-08-31 16:31:59 +10:00
hiker
ce91d6c2b4 Bugfix (saved incorrect variable). 2016-08-31 16:27:05 +10: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
Benau
35ce9a39ce Merge branch 'master' into walldriving 2016-08-26 15:36:57 +08: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
konstin
fb226a717f Proper building instructions in the readme 2016-08-23 01:51:27 +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
hiker
e6b2c0f1a0 Fised neniry leak. 2016-08-22 18:08:51 +10:00
hiker
75e1f1c82b Bugfix, wrong variable type. 2016-08-22 18:06:26 +10:00
hiker
8f068c4ff0 Somewhat reduced debug output. 2016-08-22 18:05:14 +10:00
hiker
e62948499f Fixed compiler warning. 2016-08-22 18:04:06 +10:00
Deve
ed5a957a64 Fixed typo in config.xml 2016-08-20 23:39:31 +02:00
Deve
790634a914 Use proper size for RSM framebuffer when scale rtts parameter is set.
It looks that only RSM visualization was affected.
2016-08-20 23:34:12 +02:00
Deve
a4dfbc552f Fixed also minimap in overworld with scale rtts parameter 2016-08-20 22:47:53 +02:00
Deve
150e40e4e8 Break the loop with glClientWaitSync also when GL_CONDITION_SATISFIED is returned.
The GL_CONDITION_SATISFIED says that the sync was signaled before the timeout expired. In this case there is no reason to make another glClientWaitSync execution.
2016-08-20 09:31:29 +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
Deve
c7d970b745 Allow to set ForceLegacyDevice in graphics restrictions 2016-08-20 08:13:17 +02:00
Benau
91e11a8d88 Don't crash in overworld 2016-08-20 09:01:52 +08: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
hiker
e7803fe1ab Don't use intermediate states when replaying (only the original state),
since the states after the original are potentially incorrect (due to
the (later) insertion of an event that triggers the rewind).
Rewinds are now much more different than previously ... wip.
2016-08-19 16:38:49 +10:00
Elderme
41cd1e0364 merged with master 2016-08-18 22:36:19 +02:00
Benau
a1c09c4adb Fix potential crash 2016-08-18 15:34:58 +08:00
Benau
6b0fe9dd89 Clean up:
Try to use forward enum declaration for KartRenderType

NoCopy for RenderInfo
2016-08-18 11:15:05 +08:00
hiker
3d5de1c24c Fixed saving kart control events (they stored the previous value, not
the new value).
2016-08-17 17:54:26 +10:00
Benau
fa39de691e Fix Release build 2016-08-17 12:08:20 +08:00
Benau
f07452842d Add support for colorizing library objects using material.xml only 2016-08-17 11:57:18 +08: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
hiker
adba5c48c8 Fix commented out code to use setter/getter in KartControl. 2016-08-17 08:32:11 +10:00
hiker
e56d324738 Moved the kart control events from the kart control class instead
of the kart rewinder.
2016-08-17 08:08:42 +10:00
Deve
489c34edbf Fixed minimap with scale_rtts_factor parameter 2016-08-16 23:59:36 +02:00
auria.mg
084fa04012 Merge branch 'master' of https://github.com/supertuxkart/stk-code 2016-08-15 20:33:11 -04:00
auria.mg
63a82c915c Bugfix: prevent activating disabled ribbon items 2016-08-15 20:33:06 -04:00
hiker
7c899c943c Refactored KartControl to use setters/getters instead of
just public variables.
2016-08-15 17:26:07 +10:00
Deve
bd6ad544cc Fixed bloom with scale_rtts_factor parameter. 2016-08-15 08:46:02 +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
d320df749f Allow to set max texture size in config file.
It gives much lower memory usage when it's set for example to 128.
2016-08-12 23:30:10 +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
c5446c4cf1 Remove unused header 2016-08-12 10:41:07 +08:00
Benau
c71b24f98f Correct fixes to #2599 2016-08-12 09:41:08 +08:00
Benau
aa15b0070e Determine the texture size of bold face smartly 2016-08-12 08:31:52 +08:00
Benau
2d95df1722 Update appdata file to latest standard 2016-08-12 00:48:57 +08:00
hiker
239881ef5e Refactored event handling, so that now not only Rewinder objects
can store events. This allows e.g. a 'new attachment' event to
be handled entirely in the attachment class, not in the kart
rewinder anymore.
2016-08-11 17:16:54 +10:00
Deve
5cfed1bc1c Allow to set lower RTTs resolution.
It allows to increase performance on devices that have only one available resolution.

It also allows to draw GUI elements in full resolution while rendering the scene with slightly lower resolution, which gives you few additional FPS.

Note that particles don't work as expected yet with this feature.
2016-08-11 02:04:35 +02:00
hiker
e621e93f4c Updated comments. 2016-08-10 08:35:23 +10:00
hiker
eaf21fe2f8 Replaced #include in kart.hpp to reduce dependencies; some coding style fixes. 2016-08-10 08:21:37 +10:00
hiker
7c598df8d1 Save powerup state in kart status. 2016-08-09 17:46:06 +10:00
hiker
f4f2f11943 Fix crash in case the same event is replayed more than once. 2016-08-09 17:39:20 +10:00
hiker
a5ce27caa5 Added events for new attachments. 2016-08-09 17:16:45 +10:00
hiker
5f6c954c5a Added documentation. 2016-08-08 18:10:30 +10:00
hiker
5da96cf9d0 Fixed documentation and usage of ATTACHMENT_NOLOKS_SWATTER (which is
never an actual attachment value, even nolok has 'ATTACHMENT_SWATTER'
set).
2016-08-08 17:57:15 +10:00
hiker
f341cd1440 Optimised rewind of attachments (avoid creating new attachments
when the attachment was not changed).
2016-08-08 17:46:52 +10:00
hiker
c01f838b0f Merge remote-tracking branch 'origin/master' into rewind 2016-08-08 14:34:24 +10:00
Benau
15a2526971 Merge branch 'fix_graph' 2016-08-08 08:56:05 +08:00
hiker
b3f932a0e3 Renamed getState to saveState, and added support for saving a kart's
attachmend in a state.
2016-08-08 10:33:12 +10: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
hiker
40697ab5f7 Bugfix for rewind: previously for a floating point value f add(f)
would actually call add(Vec3(f)), which adds a vector (f,f,f).
2016-08-05 17:22:04 +10:00
hiker
e039eb59c9 Added more fields to debug output. 2016-08-05 17:21:17 +10:00
hiker
05db7c1481 Use BareNetworkString for storing states and events. 2016-08-04 23:17:16 +10:00
Elderme
6f78f5b9b9 Fixed GLES 2016-08-04 14:36:35 +02:00
hiker
1025e25846 Refactored RewindInfo into astand-alone class/file with separate
classes for time, event, and states.
2016-08-03 17:48:38 +10:00
Benau
10937333a1 Remove duplicated code in navmesh 2016-08-03 12:37:48 +08:00
hiker
3eb94e023d Fixed error in rewind when only event but no state information
was available at chosen rewind-to time.
2016-08-02 21:24:10 +10:00
hiker
9f0529f26f Merge branch 'master' of https://github.com/supertuxkart/stk-code 2016-08-01 08:42:09 +10:00
hiker
a15c9529a5 Merge remote-tracking branch 'origin/master' into rewind 2016-08-01 08:18:38 +10:00
hiker
cdde62dadb Further tweaked restitution for track and bowling ball to avoid
bowling balls jumping up and down, while still maintaining a push
back for soccer balls.
2016-08-01 08:00:14 +10:00
auria.mg
ea939459e8 Improve string as suggested on transifex 2016-07-30 21:51:31 -04:00
Benau
6904402547 Fix wrong RTL text in arena screen 2016-07-31 09:04:10 +08:00
auria.mg
9a740311bf Merge branch 'master' of https://github.com/supertuxkart/stk-code
# Conflicts:
#	src/challenges/challenge_data.cpp
2016-07-30 20:53:37 -04:00
auria.mg
40ab343922 Fix string remaining in wrong language when changing language 2016-07-30 20:52:32 -04:00
Benau
788f168c7f Fix space before colon 2016-07-31 08:04:16 +08:00
auria.mg
b69faff13d Fix indentation (tabs/spaces) 2016-07-30 19:46:15 -04:00
auria.mg
347f977ea7 Fix english string, as reported a while ago but couldn't fix then due to string freeze 2016-07-30 19:44:21 -04:00
auria.mg
a318e3b216 Log out user when deactivating internet connection, fixes #2589 2016-07-30 19:43:48 -04:00
Elderme
a3c78a7245 Fixed polycount in kart selection screen 2016-07-30 11:31:23 +02:00
Benau
637e468f18 Use uniform copyright header for source 2016-07-29 11:50:37 +08:00
hiker
efe9fa6329 Merge branch 'master' of https://github.com/supertuxkart/stk-code 2016-07-29 09:54:25 +10:00
hiker
8f7d47d3c3 Fix ball-track collision (which should also improve kart-track
collision).
2016-07-29 09:53:37 +10:00
qwertychouskie
611e70ac83 Show boost at startup (#2586)
* Show boost at startup

* Fix https://github.com/supertuxkart/stk-code/pull/2586#issuecomment-235765919
2016-07-28 19:24:42 -04:00
hiker
aba8d8d1f0 Merge branch 'master' of https://github.com/supertuxkart/stk-code 2016-07-28 16:30:48 +10:00
hiker
83117fe649 Fixed wheel position in case of a rescue: if the suspension of
a wheel is stretched at the time a rescue or explosion is triggered,
the wheel will appear to be very far away from the kart (not connected
anymore).
2016-07-28 09:47:56 +10:00
qwertychouskie
277a4b9262 Fix #2542. Also update copyright year. (#2585)
* Fix #2542.  Also update copyright year.

* Update header
2016-07-27 18:31:39 -04:00
hiker
6ca0eed28f Added debug option to trigger a kart explosion in debug mode. 2016-07-27 17:34:59 +10:00
Benau
bc5e2f3e29 Add unit testing for fonts for translation 2016-07-27 11:48:38 +08:00
hiker
b1a7c01b6e Merge branch 'master' of https://github.com/supertuxkart/stk-code 2016-07-27 08:59:02 +10:00
hiker
6d0ad4a4fe Fixed compiler warning. 2016-07-27 08:26:41 +10:00
hiker
0db2a195b6 Fixed compiler warning. 2016-07-27 07:54:54 +10:00
Elderme
a21d7b4b71 Merge branch 'master' into renderer_refactoring 2016-07-26 22:16:48 +02:00
Elderme
7812965d37 Fixed issue with colorization (mistake when merging) 2016-07-26 22:04:57 +02:00
Elderme
cd1b9a66a0 Merged master in branch 2016-07-26 21:31:52 +02:00
hiker
f69d04edd3 Fixed STUN protocol (#fixed #2566). 2016-07-27 00:42:51 +10:00
Benau
cefead119a Try to use c++11 typeid for getFont 2016-07-26 08:04:12 +08:00
Deve
29185f679b Merge pull request #2581 from qwertychouskie/patch-7
Update deps from INSTALL.md
2016-07-25 11:51:31 +02:00
hiker
ba3497bb81 Properly set the camera type in the constructor (which previously
was always 'CM_TYPE_NORMAL'). Fixes #2576.
2016-07-25 17:45:24 +10:00
Benau
8c38e9e79b Merge remote-tracking branch 'origin/fix_timer' 2016-07-25 14:46:58 +08:00
hiker
c64733e3d0 Merge branch 'dijkstra-test' 2016-07-25 16:42:24 +10:00
Benau
5a7f3caefd Fix the rest non-working timer-related function 2016-07-25 13:48:41 +08:00
Benau
d9e0d0d458 Fix #2580 2016-07-25 10:18:11 +08:00
hiker
7e91642eb7 Merge branch 'master' into dijkstra-test 2016-07-25 08:37:48 +10:00
hiker
7196ddfba8 The unit test for battle graph detects incorrect parents for some
(other) arenas. Those are false positives (often there is more
than one shortest path, all with the same length; e.g. in case of
a regular gridded section). Added more details in error reporting
to help in debugging, but generally disabled the test for identical
paths, only the actual path length is tested now.
2016-07-25 08:11:56 +10:00
Benau
6a4fe397d4 Thanks devnexen for spotting this out 2016-07-24 15:56:02 +08:00
Deve
91b41272d9 Merge pull request #2579 from qwertychouskie/patch-6
Update links
2016-07-24 08:10:26 +02:00
Benau
236c9c44a8 Minor improvements for font 2016-07-24 09:56:46 +08:00
qwertychouskie
3d3b7a7de7 Update deps from INSTALL.md
(and put them in alphabetical order.)
2016-07-23 16:12:59 -07:00
qwertychouskie
42b80d5e9c Update link 2016-07-23 14:23:36 -07:00
qwertychouskie
94440645a0 Update link 2016-07-23 14:22:03 -07:00
qwertychouskie
178fbbfefa Merge pull request #1 from qwertychouskie/patch-7
Update link
2016-07-23 14:19:07 -07:00
qwertychouskie
493030ba9c Update link 2016-07-23 14:17:30 -07:00
qwertychouskie
9cbf8a0641 Update link 2016-07-23 14:16:09 -07:00
Benau
5b4d8e1f8a Remove old font settings 2016-07-23 10:48:48 +08:00
Rob Clark
ce38df268b couple small performance optimizations (#2578)
* pass timeout to driver, rather than unconditional 1ms sleep

This way if the fence is signalled earlier, we can get on with life
sooner.

* optimize displacement bind/clear/render

Stop thrashing render targets, and group things together into single
render-passes.  And only bind/clear if we will actually draw.
2016-07-22 20:29:42 -04:00
hiker
2654705da1 Fixed linux compilation. 2016-07-22 11:50:41 +10:00
hiker
78fa5f08b6 Merge branch 'master' into dijkstra-test 2016-07-22 11:46:45 +10:00
hiker
9fcb55aac3 Use Dijkstra instead of Floy-Warshall for computing the paths in battle mode
(which is signiccantly faster). Added unit testing for dijksta based on
the F.W. algorithm.
2016-07-22 11:06:32 +10:00
hiker
d6a62a85b7 Removed unnecessary #include. 2016-07-22 09:58:10 +10:00
Benau
744a4705b6 Auto embolden glyph of bold face, without fallback font 2016-07-21 12:26:19 +08:00
hiker
2cfe99827f Merge branch 'master' into dijkstra-test 2016-07-21 09:18:07 +10:00
Benau
a72f67015c Remove 36MB CJK fonts, use the previous font instead 2016-07-20 09:49:10 +08:00
Benau
7f1e776bf6 Fix digit font drawing 2016-07-19 16:47:39 +08:00
Benau
03b92efba5 Fix wrong text alignment 2016-07-19 15:21:14 +08:00
Benau
89976def57 Remove not-used-anymore setReferenceCount 2016-07-19 13:58:38 +08:00
Benau
1079800376 Merge remote-tracking branch 'origin/master' into new_font_engine 2016-07-19 13:15:47 +08:00
Benau
e02a25f8f5 Use bold font for billboard text 2016-07-19 13:13:31 +08:00
Benau
b2ee606e7b Try to use float for dest_ret 2016-07-19 12:25:16 +08:00
Benau
89f06ed8d3 Fix crash with fixed pipeline 2016-07-18 23:56:14 +08:00
Benau
6a319cbed2 Clean up old font code 2016-07-18 23:00:40 +08:00
Benau
05419cd555 Initial work on new font rendering engine 2016-07-18 16:03:11 +08:00
David CARLIER
c890483931 small mem leak in this unit test (#2575) 2016-07-16 18:28:45 -04:00
Benau
9fd6fd2673 Fix crashes when using the uninitialized layer 8 texture 2016-07-15 15:23:17 +08:00
Benau
1d6c7fa60f Remove vector int in RenderInfo 2016-07-15 12:31:00 +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
Deve
eea30b3197 Handle glDebugMessageCallback extension in better way for OpenGL ES 2016-07-14 20:34:43 +02:00
Deve
8f8acdcef3 Remove android related code part2.
Again, it will be handled in different branch and hopefully with curl and sounds support.
2016-07-14 19:50:34 +02:00
Benau
53374176ad First try to support colorization texture mask 2016-07-15 00:53:22 +08:00
Elderme
d7ebde2e68 Do not upload UBO data when UBO are disabled by graphics restriction 2016-07-13 23:19:52 +02:00
auria.mg
1463cf9344 Fix uninitialized variables, fixes #2567 2016-07-12 19:39:44 -04:00
Deve
81b471be1f More proper solution for glDrawElementsBaseVertex function 2016-07-12 23:34:31 +02:00
Deve
32cd942760 Revert "Use function compatible with GLES 3.0 for drawing elements with offset."
This reverts commit 86a1d3a07a.
2016-07-12 22:50:59 +02:00
Deve
131dfb2fc0 Fixed compiler warning 2016-07-12 00:04:46 +02: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
01dfd7bc05 More #ifdef's simplifications 2016-07-11 22:55:32 +02:00
Deve
b25a4e874f Remove android related code. It will be handled in different branch. 2016-07-11 22:54:59 +02:00
Benau
19acdad9b4 Replace Ubuntu font with a really free font 2016-07-11 15:52:16 +08:00
Benau
08f2437754 Merge branch 'support_loop_start_music' 2016-07-11 09:09:06 +08:00
Elderme
cc43879308 Tried to fix issue with Intel HD 3000 2016-07-10 22:49:58 +02:00
Deve
3728adf1c5 The gles renderer is currently supported only on linux 2016-07-09 03:03:15 +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
f1effe3208 Revert "Fixed a grass being too dark in some places."
This reverts commit 2b734a9579.
2016-07-09 02:20:06 +02:00
Deve
a67a378c41 Merge pull request #2563 from LoadingPleaseWait/wiimote-string
Add missing space in string for wiimote manager
2016-07-08 22:43:23 +02:00
LoadingPleaseWait
bdd21142bb Add missing space in string for wiimote manager 2016-07-08 15:33:10 -05:00
Benau
b903baf226 Fix crash sound only working once if the timer counts backwards 2016-07-08 23:43:12 +08:00
Benau
98b9aef121 Add support for loop start of music 2016-07-08 13:54:37 +08:00
Deve
fa03185370 Remove extensions that are not used anyway 2016-07-08 01:24:02 +02:00
Deve
44f8290d77 Added gles renderer to the warning about incompatible irrlicht version 2016-07-08 01:02:25 +02:00
Deve
902e6163dc Disable heightmap simulation shader for now 2016-07-08 00:48:20 +02:00
Deve
86a1d3a07a Use function compatible with GLES 3.0 for drawing elements with offset. 2016-07-08 00:20:08 +02:00
Elderme
0630145a5c Fixed rendering issue when switching advanced pipeline on to off in RTT screen 2016-07-07 23:08:31 +02:00
hiker
b2a62c222c Merge branch 'camera-refactor' 2016-07-08 06:47:32 +10:00
hiker
c3e1a67f39 Merge branch 'master' of https://github.com/supertuxkart/stk-code 2016-07-08 06:24:19 +10:00
hiker
c43930dc46 Bugfix: characteristics could not be overwritten in kart.xml files.
First part of #2560.
2016-07-08 06:22:28 +10: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
66e76be76d Don't use hardcoded path for irrlicht shaders 2016-07-06 06:37:22 +02:00
qwertychouskie
fbcd0ef495 Update TODO.md (#2531)
* Update TODO.md

* Update link
2016-07-05 19:09:22 -04:00
deve
20e72b2e9d Show better text in old driver popup 2016-07-05 12:18:43 +02:00
deve
e42673c4ac Read mesa version in better way.
It solves the problem with OpenGL ES, because there is one more word in the version string:
OpenGL version string: OpenGL ES 3.0 Mesa 11.2.2
2016-07-05 12:17:40 +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
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
0f318ab1ba Restore checking for framebuffer completion 2016-07-05 00:28:25 +02: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
Benau
a0898962a9 Remove hard-coded value for colorization factor 2016-07-04 00:26:25 +08:00
Benau
ffbe06a98c Update with the same type from blender export script 2016-07-03 11:25:50 +08:00
Benau
6b60d866ba Make render info works with instanced rendering
The unordered_map in the past skipped some mesh buffer even its
render_info pointer is different, now the map takes it into account
2016-07-02 11:48:36 +08:00
Benau
ae790e9c62 Fix transparency of ghost karts 2016-07-02 08:59:38 +08:00
Elderme
2da28b22b7 Do not create CommandBuffers when Indirect Instancing Rendering is not available. 2016-07-01 23:15:08 +02:00
Benau
48d94097d6 Add min saturation setting to material class 2016-07-01 23:55:56 +08:00
Benau
f23ec7e7b8 Add more helper function to render info class 2016-07-01 00:39:25 +08:00
Benau
bfd66ebbac Put color change code in a better location 2016-06-30 16:08:59 +08:00
Benau
4c4b4782e0 Fix wrong type 2016-06-30 14:16:12 +08:00
Benau
cda6bd7603 Allow changing kart color on-the-fly in soccer setup screen 2016-06-30 14:12:12 +08:00
Benau
4a2bac1cd5 Merge remote-tracking branch 'origin/master' into render_kart_driver_differently 2016-06-30 11:02:40 +08:00
Benau
a55ab7f707 Fix colorization of wheels and speed weight objects 2016-06-30 11:01:56 +08:00
Benau
5bb2a5cf7e Allow changing kart color on-the-fly 2016-06-30 09:30:52 +08:00
hiker
4feb3350a2 Fix linux release build. 2016-06-30 09:42:50 +10:00
hiker
65af731e66 Merge branch 'master' of https://github.com/supertuxkart/stk-code 2016-06-30 09:22:15 +10:00
hiker
392dd6a5ff Added new installer picture. 2016-06-30 09:21:59 +10:00
hiker
48dbc6c80a Fixed various bugs in kart characteristics: a negative value for
a float now works, also longer computations like 1+2*3 (see unit
testing).
2016-06-30 09:20:24 +10:00
hiker
9efb4da2ec Added unit testing for kart characteristics (failing atm due to
bugs in characteristics).
2016-06-30 09:17:30 +10:00
Deve
9ceab23c5f Apply ssao fix from master 2016-06-30 00:50:33 +02:00
Deve
c07472cf38 Simplify #ifdef's a bit 2016-06-30 00:29:15 +02:00
Deve
742fb309df Totally disable code that needes gles 3.1. 2016-06-29 23:58:45 +02:00
hiker
3d2c2b63c0 Fixed unit testing for network string. 2016-06-30 07:47:35 +10:00
Deve
3ae175e05a Fixed skybox rendering.
The GL_SRGB_ALPHA_EXT and GL_SRGB8_ALPHA8 formats are available in OpenGL ES, but they produce black texture for some reason. The basic GL_RGBA format works fine though.
2016-06-29 22:24:17 +02:00
Deve
961428f04c Increase _IRR_MATERIAL_MAX_TEXTURES_ to 8 2016-06-29 22:18:24 +02:00
qwertychouskie
31b4c86b8f Update links for new site (#2529)
* Update links for new site

* more tweaks to readme.md
2016-06-28 19:02:03 -04:00
qwertychouskie
e8462334ee Update more links (#2530) 2016-06-28 18:27:15 -04:00
Deve
0fb119068b Fixes in more shaders 2016-06-28 21:55:51 +02:00
hiker
59a64625fa Use references instead of copying the string. 2016-06-28 17:43:25 +10:00
hiker
c3f1b53535 Added samuncle's new installer image. 2016-06-28 17:39:43 +10:00
hiker
f6a37b5e99 Simplified Stars constructor, removed unnecessary #include from kart.cpp. 2016-06-28 17:29:32 +10: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
David CARLIER
a99d02f366 couple of resource leaks fixes (#2526) 2016-06-27 19:47:56 -04:00
hiker
3c66a02337 Minor code simplification. 2016-06-28 08:01:26 +10:00
Deve
51d3b71ec6 Already working advanced lighting! 2016-06-27 23:24:39 +02:00
Deve
bf54626815 Added missing file 2016-06-27 23:06:48 +02:00
Deve
f73befbe0b Fixed particles 2016-06-27 23:05:25 +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
hiker
8b52831083 Merge branch 'fix-2522' 2016-06-27 18:13:11 +10:00
Benau
892bc490f7 Make shaders run as efficient as possible 2016-06-27 13:49:27 +08:00
Benau
5424d49ce7 Remove an ugly cast 2016-06-27 09:19:40 +08:00
hiker
4faa84a1a7 Merge branch 'master' into fix-2522 2016-06-27 07:49:28 +10: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
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
Deve
b27f771318 Fixed compiler warning and remove debug output 2016-06-26 16:38:19 +02:00
Deve
e46905b106 Added #stk_include directive for our shaders.
OpenGL ES doesn't allow to link multiple shaders into one program. We can just join it on our side and compile it as one file instead.
2016-06-26 16:05:05 +02:00
Elderme
896f730827 Fixed isARBBufferStorageUsable function 2016-06-26 11:49:29 +02:00
Deve
9ce190f704 Fixed missing dot in file name 2016-06-26 10:19:34 +02:00
Benau
8bae12e080 Fix potential warning 2016-06-26 15:52:47 +08:00
Benau
8497ad0204 Use a deeper hue 2016-06-26 11:23:17 +08:00
Benau
f1dd7ce06e Remove the arrows in soccer mode if using glsl 2016-06-26 07:53:59 +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
Elderme
12155ef8ee Added draw policy information in the log. 2016-06-25 22:14:14 +02:00
Elderme
4c00d98001 Fixed glow issue when GL_ARB_explicit_attrib_location extension is not available 2016-06-25 20:57:13 +02:00
Deve
c26f7a91d7 Temporarily disabled checking for framebuffer completion 2016-06-25 15:11:52 +02: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
auria.mg
cecc075e74 Add new improved race end sound 2016-06-24 20:23:00 -04:00
Benau
d0539ebe0c Merge remote-tracking branch 'origin/master' into bfd_crash_report 2016-06-24 09:00:19 +08:00
Benau
aa0edb65dc Use cmake to find libbfd 2016-06-24 08:59:39 +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
Odd0002
416edef95d Fix debug build on GCC 5.3.0 2016-06-23 23:10:36 +02:00
Benau
6222ce650f Add optional linux crash reporting with backtrace (using libbfd)
Notice:

To get backtrace too for leak check, you need to
define GET_STACK_TRACE in leak_check.cpp, but will slow down STK
2016-06-23 16:18:17 +08:00
qwertychouskie
c17070209d Fix warning for cards without "Radeon" in string (#2523) 2016-06-21 19:38:44 -04:00
Elderme
9de9d98b8f Restore activated texture to GL_TEXTURE0 before calls to irrlicht rendering functions 2016-06-21 23:02:07 +02:00
hiker
e7fbff6974 Merge branch 'master' of https://github.com/supertuxkart/stk-code 2016-06-21 18:33:43 +10:00
hiker
99e0b677ac Fixed #2499. 2016-06-21 18:33:13 +10: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
Elderme
c4cb241b62 Added a call to glCheckFramebufferStatus for layered framebuffers 2016-06-20 22:24:12 +02:00
Elderme
863451d91d Merged with master 2016-06-20 21:04:48 +02: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
Elderme
64a8a9be8c Fixed light issue with legacy OpenGL 2016-06-19 15:36:52 +02:00
Elderme
b359e8f9fd Merged with master, solved conflicts 2016-06-18 19:28:54 +02:00
Deve
14a6f20f5b Merge pull request #2518 from akien-mga/master
Fix double slash in include
2016-06-16 23:04:59 +02:00
Rémi Verschelde
0a042c25a0 Fix double slash in include
Triggers a weird 9 year old RPM bug when extracting
debugging information for the compiled binary:
https://bugzilla.redhat.com/show_bug.cgi?id=304121
2016-06-16 21:27:34 +02:00
Michael Murphey
c849aa3b8d More information in race result GUI (#2516)
* More information in race result GUI

* Fix extra race result GUI information

* Rename displayHighScores()

* Use race_manager->hasModeLaps() and fix clang compile error

* Don't initialize best_lap_time unless the mode has laps
2016-06-15 19:36:37 -04:00
hiker
02f77f315e Merge branch 'master' of https://github.com/supertuxkart/stk-code 2016-06-14 23:02:45 +10:00
hiker
39db063799 Don't include ilk (linker) files, properly remove shortcut to editor. 2016-06-14 23:00:27 +10:00
Benau
143bc2618e Remove a unneeded setting 2016-06-13 09:09:18 +08:00
Benau
d520c4477d Design a way to render kart and driver differently 2016-06-12 16:19:34 +08:00
Benau
1e1093dccc Fix default value of m_angular_damping 2016-06-12 08:09:28 +08:00
Benau
d1d591ca34 Fix compiler warning 2016-06-11 15:58:17 +08:00
Benau
023dbe1968 More statistics in soccer mode profiling 2016-06-11 15:31:58 +08:00
Benau
bbc61480a4 Fix missing white-space 2016-06-10 21:11:55 +08:00
Benau
eaf1486d9c Remove misleading-FPS info in soccer mode profiling
As it will increase with the total polycount of the soccer field.
Now just use total frame elapsed to estimate AI performance.
2016-06-10 20:52:38 +08:00
hiker
321fc09a15 Fixed compiler warning. 2016-06-10 16:02:24 +10:00
hiker
a097c205d2 Merge branch 'master' of https://github.com/supertuxkart/stk-code 2016-06-10 09:31:57 +10:00
hiker
9de6def4cf Fixed missing collision callbacks for e.g. soccer balls. 2016-06-10 09:31:12 +10:00
auriamg
d13015226e Merge pull request #2514 from LoadingPleaseWait/graphical-options
Document graphical configuration command line options
2016-06-09 19:13:08 -04:00
LoadingPleaseWait
95602791cf Document graphical configuration command line options 2016-06-08 22:19:15 -05:00
auriamg
8ead8c21da Merge pull request #2513 from LoadingPleaseWait/master
Toggle graphical options from command line
2016-06-08 20:03:59 -04: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
LoadingPleaseWait
88dd551229 Toggle graphical options from command line 2016-06-07 23:37:14 -05:00
Benau
d234954e14 Call enterRaceOverState from base class for 3SB too 2016-06-08 08:40:33 +08: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
Benau
315ea69020 Call enterRaceOverState from base class in soccer world
Even when profiling
2016-06-07 10:15:07 +08:00
auria.mg
d0e7cdea81 Update changelog 2016-06-06 19:55:59 -04:00
Benau
f4fef6fbf2 Fix #2511 2016-06-05 09:34:30 +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
Benau
16e24e6f0b Fix #2498 2016-06-02 08:30:12 +08:00
hiker
d444ab802d Added test-implementation of dijkstra. 2016-06-01 23:51:12 +10:00
Benau
b9311f95a8 Merge remote-tracking branch 'origin/master' into new_path_finding 2016-06-01 08:39:23 +08:00
Benau
020b1822bd Fix warning 2016-06-01 08:39:14 +08:00
Benau
c66df6082d Remove not too useful angle calculation
Fix a bug in reverse position returned
2016-06-01 08:21:35 +08:00
hiker
0f79dcc238 Fixed FreeBSD builds (freebsd installs Freetype etc in /usr/local/lib,
but does not search in that directory for libraries).
2016-05-31 13:43:07 +10:00
Benau
f83407f661 More detailed comments 2016-05-31 00:36:03 +08:00
hiker
70c0038b93 Added backtwards force when reversing. That fixes the problem that a
kart might sometimes get stuck when driving backwards.
2016-05-30 16:59:54 +10:00
Benau
999dee9bce Don't use getDistance from battle graph for kart
As sometimes it will return 0 if kart is on unknown node

Also try to make banana avoidance better
2016-05-30 12:56:14 +08:00
Benau
913bb511b8 Use an improved turn radius determination 2016-05-29 16:31:40 +08:00
auria.mg
b9c1b20209 Update readme file, don't mention version number, we'll forget to update it on every release 2016-05-28 19:26:52 -04:00
auriamg
fd0ca51332 Merge pull request #2507 from adamralph/patch-1
tidy up README
2016-05-28 19:25:59 -04:00
Adam Ralph
6f854ca38d tidy up README 2016-05-28 15:07:33 +02:00
Benau
91b9d13611 Make gift package playable 2016-05-28 00:33:06 +08: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
Benau
0c254dfa5d Try to make AI work like zidane 2016-05-26 08:24:45 +08: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
hiker
3ec56386df Merge branch 'master' of https://github.com/supertuxkart/stk-code 2016-05-25 21:35:17 +10:00
hiker
566df3dee6 Made more physics parameters for objects adjustable in the xml file
(for now to support a puck).
2016-05-25 17:21:31 +10:00
Deve
396bbd0199 Fixed an error message when unlocking texture in spherical harmonics.
On some tracks it was reporting following message:
[warn   ] GLWrap: OpenGL debug callback - API
[warn   ] GLWrap:     Error type : ERROR
[warn   ] GLWrap:     Severity : HIGH
[warn   ] GLWrap:     Message : GL_INVALID_VALUE error generated. Size and/or offset out of range.

This fixes #2504
2016-05-24 18:59:51 +02:00
Benau
221a757942 Merge branch 'arena_ai_profiling' 2016-05-24 15:52:32 +08:00
Benau
63a3b50bb7 More details on profiling 2016-05-24 15:50:34 +08:00
Benau
f4e297c415 Merge branch 'advanced_soccer_ai' into arena_ai_profiling 2016-05-24 15:49:25 +08:00
Benau
a18c53f4e7 Add more defense 2016-05-24 15:48:38 +08:00
hiker
5f6f1ec448 Merge branch 'master' of https://github.com/supertuxkart/stk-code 2016-05-24 17:37:28 +10:00
Benau
625f403a6c Update CHANGELOG.md 2016-05-24 09:13:29 +08:00
hiker
de7ba54b90 Updated debug outpout (commented out). 2016-05-24 09:19:54 +10:00
Benau
02779e39a9 Merge remote-tracking branch 'origin/advanced_soccer_ai' into arena_ai_profiling 2016-05-21 11:41:02 +08:00
Benau
ae18983655 Fix wrong colon 2016-05-21 11:31:43 +08:00
Deve
41283ad408 Added a check for GL_ARB_explicit_attrib_location extension.
It is enabled by default for OpenGL 3.3, but we need it for some of our shaders in render_geometry.cpp (which are OpenGL >= 3.2) and also for InstancedColorizeShader.
2016-05-20 20:12:34 +02:00
Benau
390f45a9d1 Fix crashes in arena profiling mode
Notice: you need to merge arena_ai_profiling into here to test
2016-05-21 01:11:37 +08:00
Benau
0f9438d824 Use math formula to determine overtake position 2016-05-21 00:37:11 +08:00
hiker
53f9d9d1ba Merge branch 'master' of https://github.com/supertuxkart/stk-code 2016-05-19 13:26:20 +10:00
hiker
92be0c65ad Added support for setting the restitution for physical objects. 2016-05-19 13:25:29 +10: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
Benau
9a815b4e65 Fix x N items font size
It should depend on screen scaling.
2016-05-18 13:03:35 +08:00
Benau
12522cc99f Don't crash if missing texture 2016-05-18 10:05:12 +08:00
Benau
a94fc6c1c3 Fix goal target not updated when going back
Also fix some unitialized value issue
2016-05-18 00:50:29 +08:00
Benau
de8d172c07 Improvements in soccer mode with minimap
1. Larger ball

2. Draw goal line of two teams in minimap
2016-05-17 16:01:27 +08:00
Benau
d2f26fe70d First playable advanced soccer ai 2016-05-16 15:24:05 +08:00
Benau
748051871c Get rid of two more member values 2016-05-16 07:54:03 +08:00
Benau
b5345c8b31 Remove unneeded memeber 2016-05-16 07:19:18 +08:00
Benau
7e8ca70bc6 First version of advanced soccer ai 2016-05-16 00:46:06 +08:00
auria.mg
5b2cb52dc5 Add higher-res icon 2016-05-14 21:15:11 -04:00
Deve
c9f2de8155 Update dependencies for Ubuntu
- use officially supported pkg-config instead of pkgconf replacement
- add zlib library to dependencies
- remove GLU library which is not needed at all since this commit: 60dc171700
- add libgl1-mesa-dev and mesa-common-dev which contains OpenGL headers that we need
- use libcurl-gnutls instead of openssl because it is used by default in Debian/Ubuntu for STK and many other projects.
2016-05-14 23:17:13 +02:00
auriamg
6c2dc56f94 Merge pull request #2494 from qwertychouskie/master
Fix dependencies list for Ubuntu compilation
2016-05-13 18:48:51 -04: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
qwertychouskie
2077f4bd5e Remove Autotools 2016-05-12 10:12:08 -07:00
qwertychouskie
12a755f9fe Remove libgl1-mesa-dev
According to http://packages.ubuntu.com, `libglu1-mesa-dev` depends on `libgl1-mesa-dev` for all listed Ubuntu versions.
2016-05-11 18:15:33 -07:00
auria.mg
8fa902a748 Another attempt at fixing camera roll in cutscenes, hopefully the right one this time. See #2483 2016-05-11 20:18:07 -04:00
auria.mg
b84b28b3a7 Undo previous "bugfix", it doesn't work 2016-05-11 19:45:42 -04:00
auria.mg
dc885fbf05 Merge branch 'master' of https://github.com/supertuxkart/stk-code 2016-05-11 19:35:08 -04:00
auria.mg
17f96ac9ef Fix camera roll in cutscenes 2016-05-11 19:35:00 -04:00
qwertychouskie
568ff1e0c2 libgl1-mesa-dev depends on libxxf86vm-dev 2016-05-11 12:08:09 -07:00
qwertychouskie
6bd3e69ddc fix dependencies 2016-05-11 12:05:04 -07:00
hiker
b3d59de288 Merge branch 'master' of https://github.com/supertuxkart/stk-code 2016-05-11 00:04:11 +10:00
hiker
01ce2c32ef Properly fixed #1347. Made a global variable part of the
KartSelection object, to avoid the two instances of the
kart selection screen to interfere with each other. Removed
tearing down the kart selection screen. Also fixed crash
when starting the kart screen after a network kart screen.
2016-05-10 17:27:50 +10:00
Benau
9624d27f59 Try to fix lost control for soccer ai 2016-05-10 08:53:33 +08:00
Deve
58f7424b4f Add a workaround for skybox.
The problem was with shader-based pipeline with disabled "advanced effects" in options.

In this case we don't use RTTs and gl_FragCoord contains values in range of whole window. So fo 2 players we still get gl_FragCoord.y = 0..window_size instead of gl_FragCoord.y = 0..window_size/2.

The easiest way to solve it seems to be modulo it by current viewport size. It should be compatible with advanced pipeline as well as single-player games.

Atm. I'm not sure if this should be applied to 0.9.2 branch. It should work fine, but needs some testing.
2016-05-08 21:39:50 +02:00
Benau
bb01c83d6e Auto-balance the number of AIs
If there are uneven the number of human players in each team
2016-05-08 08:08:57 +08:00
auriamg
1af4853f40 Merge pull request #2489 from qwertychouskie/master
Update screenshots and description
2016-05-07 19:23:01 -04:00
qwertychouskie
87f3609b06 Update screenshots and description 2016-05-06 19:50:57 -07:00
hiker
898cefc91e Merge branch 'master' of https://github.com/supertuxkart/stk-code 2016-05-07 00:20:58 +10:00
hiker
bc418acb05 Fixed second location where the kart/playe rname was used. 2016-05-07 00:16:36 +10:00
Benau
264e5af3ee Fix determineTurnRadius in ArenaAI
Before this function always return nan/inf/too large number of
radius, now this function will calculate the radius of curvature
correctly.
2016-05-06 22:03:01 +08:00
hiker
6c9f3d73b5 Show the name of the player in the grand prix result screen. 2016-05-06 16:47:36 +10:00
hiker
c92f369cdd Allow 0 laps GP in artist debug mode. 2016-05-06 16:47:05 +10:00
Benau
db6ea0e740 Add help for translator 2016-05-06 08:37:05 +08:00
hiker
ef4b200dca Merge branch 'master' of https://github.com/supertuxkart/stk-code 2016-05-06 09:13:50 +10:00
auria.mg
ce6bc4a3fe Document new command-line option 2016-05-05 19:12:27 -04:00
hiker
43c2cb37c9 Use a #define SkiddingAI TestAI in the TestAI to make this file
as close as possible to the SkiddingAI, which makes it easier to
compare the two AIs to find significant differences.
2016-05-06 08:52:46 +10:00
hiker
e8c54bbdcd Use getControllerName instead of hard coded to string, minor
coding style fixes.
2016-05-06 08:52:19 +10:00
hiker
c1bdfabc89 Fixed comment. 2016-05-06 08:25:46 +10:00
hiker
ff561aa679 Fixed steering when avoiding a collision (see 79b3864511
for same patch on skidding ai).
2016-05-06 08:24:45 +10:00
hiker
79b3864511 Fixed incorrect steering direction when trying to avoid a crash. 2016-05-06 08:12:58 +10:00
hiker
ca379d921d Left the comments in, but reset the test ai to be identical to the
skidding ai again.
2016-05-05 18:42:11 +10:00
Benau
bbde4659c1 Allow arena ai profiling 2016-05-05 16:25:54 +08:00
hiker
101611af3e Merge branch 'master' of https://github.com/supertuxkart/stk-code 2016-05-05 12:51:40 +10:00
auria.mg
8496352133 Make it easier to launch cutscenes, see #2482 2016-05-04 19:44:26 -04:00
hiker
45184a0322 Fixed line endings. 2016-05-05 09:40:41 +10:00
hiker
57bbf30d76 Improve new AI performance on math class (and others), but
this makes it worse on some other tracks (xr591, zen).
Maybe we should tweak AI per track?
2016-05-04 17:54:38 +10:00
hiker
f0c35965af Merge branch 'master' of https://github.com/supertuxkart/stk-code 2016-05-04 08:51:01 +10:00
hiker
8c25addda5 Changed item display from "item N x" to "item x N". 2016-05-04 07:52:40 +10:00
Deve
d989ae1d4a Update graphics restrictions for mesa:
- Increase version for sRGB-capable visual workaround because it doesn't look that it will be fixed anytime soon
- Enable compute shaders because it works fine now
- Enable texture compression because it works now too.

Texture compression for intel should work fine also for older versions, but it's hard to say which one version is the first working one.
2016-05-03 21:48:21 +02:00
Deve
62ea873373 Fixed compute shaders on mesa.
It was reporting an error:
[error  ] GLWrap: Error in shader gaussian6h.comp
[error  ] GLWrap: 0:77(1): error: storage qualifiers must come after precise, invariant, interpolation, layout and auxiliary storage qualifiers
2016-05-03 21:48:21 +02:00
hiker
2e6eeb15ea Merge branch 'master' of https://github.com/supertuxkart/stk-code 2016-05-03 21:31:49 +10:00
hiker
a5ba5b0a2a Improved profile statistics somewhat. 2016-05-03 21:31:32 +10:00
hiker
2745e42935 Added a new 'testing ai', which can be started using a command line
option to either test it in play against computer, or in AI against
AI races. Atm the test_ai is nearly identical to the skidding
ai, except for one brake statement that needs to be investigated.
2016-05-03 21:28:11 +10:00
Benau
bf64ce9ec0 Avoid negative square root
Which seems to happen if a kart is going backward
2016-05-03 15:44:44 +08:00
auriamg
a852c9857e Merge pull request #2475 from antoniusriha/support_disable_race_intro_sound
Support disabling race intro sound
2016-05-02 18:58:01 -04:00
Antonius Riha
342b4f299e Delay start for 3s when intro sound is off
To bridge the silence before ready-set-go, the engines are started earlier than normal if intro sound is off.
2016-05-02 21:53:34 +02:00
hiker
c1445386b2 Merge branch 'master' of https://github.com/supertuxkart/stk-code 2016-05-02 22:27:25 +10:00
hiker
8950bc1b6c Added '(beta)' to editor link. 2016-05-02 22:26:53 +10:00
Antonius Riha
d4f1f28070 Support disabling race intro and start sounds 2016-05-02 11:32:04 +02:00
Benau
f8ec241d9a Add isInvulnerable() detection for skidding ai 2016-05-02 12:28:23 +08:00
hiker
56d8f10ef9 Minor code cleanup. 2016-05-02 10:37:37 +10:00
hiker
ec41a7806c Fixed setting colour of (debug) spheres added. 2016-05-02 09:58:01 +10:00
hiker
24d298b743 Merge branch 'master' of https://github.com/supertuxkart/stk-code 2016-05-01 23:14:58 +10:00
hiker
f17abe4095 Updated visual studio redistributable to the latest version (14.0.23026). 2016-05-01 23:13:53 +10:00
Benau
c096503860 Fix swatter on bubblegum shield decreasing a life in battle mode
Also let the AIs be able to protect itself using bubblegum shield
when a kart nearby is using a swatter
2016-04-30 11:13:28 +08:00
Benau
56549f68d4 Fix memory leak 2016-04-30 07:00:24 +08:00
hiker
0449263b6e Fixed compiler warning. 2016-04-28 17:16:02 +10:00
hiker
92f0ab6819 Implemented command line option "--dont-load-navmesh" to disable
loading of any navmeshes (to avoid extremly slow loading times
in debug mode, e.g. for temple).
2016-04-28 17:15:07 +10:00
hiker
b83246aac2 Revert "Do not compute the battle graph in case of a single kart in debug"
since Benau has suggested a better approach.
This reverts commit c9c37fb400.
2016-04-28 16:58:37 +10:00
hiker
fdf2df2f0f Also search for directories with the name 'build' for the editor
(not only bld), which is the documented name to use for the editor.
2016-04-28 13:59:21 +10:00
hiker
c9c37fb400 Do not compute the battle graph in case of a single kart in debug
mode in an arena: in debug mode computing the distance matrix
takes a LONG time (approximately 12 minutes on my machine). In
release mode it's fast enough for now.
2016-04-28 11:17:20 +10:00
Benau
1ad20811b8 Fix leaning value 2016-04-28 08:23:50 +08:00
hiker
94ad7ad676 Adjust wheel position in case of leaning: move the wheels on the side
that is higher in the air a bit further down so that they touch the ground.
Fixed #2400.
2016-04-27 18:15:28 +10:00
hiker
1870691900 Decrease leaning somewhat, and increased leaning speed. 2016-04-27 18:11:57 +10:00
hiker
d90dc8ea37 Removed unused entry. 2016-04-27 17:58:28 +10:00
hiker
30d60acfaf Added freetype to list of software used. 2016-04-27 15:19:00 +10:00
hiker
a0dc35b1fe Removed openal installer, fixed installer to properly install and remove
the editor (now named supertuxart-editor).
2016-04-27 14:00:02 +10:00
hiker
95b5161367 Removed openal installer (which is likely not necessary, see
ticket #2089.
2016-04-26 13:10:36 +10:00
hiker
031ae27919 Merge branch 'master' of https://github.com/supertuxkart/stk-code 2016-04-26 12:50:51 +10:00
hiker
031c918bf4 Fixed files that were not uninstalled. 2016-04-26 12:50:21 +10:00
auria.mg
4bc0cccf00 Fix user/login screen layout, fixes #2474 2016-04-25 19:10:56 -04:00
Benau
0503855b7d Add freetype into INSTALL.md 2016-04-25 09:18:37 +08:00
auria.mg
a1eceb9d3d Fix build 2016-04-24 19:55:37 -04:00
auria.mg
5e9f0ba246 Fix invalig logging 2016-04-24 19:37:51 -04:00
auria.mg
8dfa5a3755 GPLose screen tweak 2016-04-24 19:37:27 -04:00
auria.mg
ab2f46cc90 Improve reverse track support 2016-04-24 19:36:52 -04:00
auria.mg
32eba771e2 Tweak GP win and GP lose buttons : translator reported they were too small, and also they were designed for mouse use only and didn't work well from another input device 2016-04-24 18:21:45 -04:00
auria.mg
8c337110a2 Fix text 2016-04-23 09:00:40 -04:00
auria.mg
b6431c3383 Tweak grand prix 2016-04-22 20:44:35 -04:00
auria.mg
cffd0bd00c Fix invalid XML and update translations 2016-04-22 20:28:21 -04:00
auria.mg
ea14dcc1ca Update pot file 2016-04-22 18:59:07 -04:00
auria.mg
1fc99d7948 Add a few more replays + minor text change 2016-04-22 18:55:26 -04:00
auria.mg
5e8168e020 Add a few more stock replays 2016-04-22 18:20:32 -04:00
Benau
55278122fe Allow showing same difficulty of ghost replay only 2016-04-22 23:07:45 +08:00
hiker
b59194cdf3 Add a command line option to start the network console. 2016-04-22 16:37:17 +10:00
hiker
d092dcf96c Avoid slowdown in profile mode in profile mode when fps is < 60. 2016-04-22 16:04:27 +10:00
Benau
ff10bfd07a Fix getHeading() for ghost karts 2016-04-22 11:32:55 +08:00
Benau
f6ce065cee Allow a few replays coming with the game 2016-04-22 09:49:46 +08:00
auria.mg
790cd807a3 Start updating changelog for STK 0.9.2. Prepare challenges/GPs for the new abyss track (replacing the old subsea) 2016-04-21 20:50:01 -04:00
hiker
9299eca758 Fixed compilation after moving the windows installer to a different directory. 2016-04-22 07:54:40 +10:00
hiker
41ecd83d55 Started to add support for installing the editor. 2016-04-22 00:19:22 +10:00
hiker
97b7320c5b Fixed uninstallation to only delete files belonging to STK (to avoid
problems if someone installed STK e.g. in c:\Program Files - without
a subdirectory).
2016-04-22 00:03:49 +10:00
hiker
28d78447c3 Fixed installation of prerequisites. 2016-04-21 23:14:39 +10:00
hiker
6a0fdba062 Moved windows installer into tools directory. 2016-04-21 23:13:53 +10:00
hiker
889baa7e39 Removed unnecessary --with-profile command line option. 2016-04-21 22:32:24 +10:00
hiker
b16f225e47 Fixed path in installer, and support common different names
for the build directory (bld, build, cmake_build).
2016-04-21 22:28:50 +10:00
hiker
3827b504c7 Added new installer from MattDevo. 2016-04-21 09:14:33 +10:00
hiker
6987c82c7b Merge branch 'master' of https://github.com/supertuxkart/stk-code 2016-04-20 09:16:52 +10:00
hiker
9de3b4484f Fixed crash when collecting profiler output. 2016-04-20 08:47:02 +10:00
hiker
434a00640b Use switch instead of if. 2016-04-19 17:08:53 +10:00
hiker
904db68028 Removed debug code. 2016-04-19 11:56:23 +10:00
hiker
5b8e99e8c8 Fixed incorrect enum. 2016-04-19 11:55:16 +10:00
hiker
7ca76bbfbf Removed unused smoothing setting. 2016-04-19 09:56:05 +10:00
hiker
d788ca9a1b Fixed behind wheel debug camera. 2016-04-19 09:53:55 +10:00
hiker
d1f611197f Fixed reset of cameras, and switching to debug views. 2016-04-19 09:40:14 +10:00
Deve
dac357daec Fixed kart selection screen for legacy pipeline 2016-04-19 01:38:48 +02:00
Benau
bb67ee78fe Fix Lesbea's game 2016-04-18 23:57:42 +08:00
hiker
d65dd6c199 Started to refactor the camera into different classes. Normal
camera is working atm. but not much more.
2016-04-18 23:29:10 +10:00
Benau
caca4b06b2 Fix #1797
Don't give a bomb in case of time trial.
2016-04-16 08:15:18 +08: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
f9b0b05d53 Fix warning 2016-04-14 10:40:15 +08:00
hiker
ff7556130a Merge branch 'master' of https://github.com/supertuxkart/stk-code 2016-04-14 11:04:28 +10:00
hiker
95853787b3 Minor code cleanup. 2016-04-14 09:37:20 +10:00
hiker
f59ea0f258 Moved the camera debug parameter from UserConfig to a static value
in camera. Added proper names for the debug modes instead of int.
2016-04-14 09:30:26 +10:00
hiker
ef1e5da4bc Fixed compiler warning. 2016-04-13 17:11:43 +10:00
auria.mg
c18343f60b Improvements to login screen : properly center buttons, and allow logging in by pressing enter 2016-04-12 19:27:11 -04:00
hiker
2f0e60694c Removed duplicated function. 2016-04-13 08:01:24 +10:00
hiker
a0623aee57 Force fresh cmake configuration. 2016-04-13 07:40:47 +10:00
hiker
7a9d283f43 Fixed comments. 2016-04-12 22:35:56 +10:00
hiker
c54caf3e03 Fixed missing #include file, some code cleanup. 2016-04-12 17:38:15 +10:00
hiker
8763c3aca7 Changed rewind key from F1 to F11 (F1 always opens the in-game menu). 2016-04-12 17:37:14 +10:00
hiker
7d0953ad83 Merge branch 'master' into rewind 2016-04-12 17:36:56 +10:00
Deve
29e4d4a0bc Fixed memory corruption in case of gamepads with large buttons count.
SEvent::SJoystickEvent::NUMBER_OF_BUTTONS is a constant value and is equal to 32. In practice we don't expect any gamepad that has over 32 buttons. However some wireless mices are incorrectly detected as gamepads and they report for example 69 available buttons. Just resize m_buttonPressed array to be equal to the reported buttons count.
2016-04-10 01:22:39 +02:00
Benau
d914e1eea3 Make game playable when start racing 2016-04-08 15:44:50 +08:00
Benau
6dc05a1ec7 Merge remote-tracking branch 'origin/master' into walldriving 2016-04-08 13:42:58 +08:00
auria.mg
8c29fb01f6 Minor tweaks to split screen text to make it clearer 2016-04-07 20:53:48 -04:00
auria.mg
1ef082b2e6 Fix tabs accidentally committed previously 2016-04-04 19:46:41 -04:00
Benau
9fb7f5617b Merge remote-tracking branch 'origin/master' into transparent_kart 2016-04-04 09:02:45 +08:00
Benau
dca821d4e6 Allow looking back when watching replay 2016-04-04 09:02:04 +08:00
Benau
ae8fac6dcb No powerup display when watching replay 2016-04-04 07:54:24 +08:00
Benau
740e4e10c8 Remove soccer team color handling in kart model
Let hope in the future someone is smart enough to implement that...
2016-04-04 07:53:33 +08:00
auria.mg
53b8b90ae6 Update servers list as they are found 2016-04-03 18:56:35 -04:00
auria.mg
b0af2b40b3 Multiplayer : don't lock tracks 2016-04-03 18:42:46 -04:00
Benau
224bd277b3 Better function name 2016-04-03 13:59:10 +08:00
Benau
508ddfcd45 Show translucent icon for ghost kart in race gui 2016-04-03 11:27:46 +08:00
Benau
2e016e63b4 Allow displaying transparent wheels and speed weight objects
That's done by copying the mesh, not sure if it should be avoided...
2016-04-03 00:17:36 +08:00
Benau
79db5e2365 Fix comment 2016-04-02 16:02:51 +08:00
Benau
ccd6294699 Add transparent ghost kart in STK
There is already define for soccer team too, so in the future,
if anyone is smart to make a shader to draw red/blue karts,
it should be easier.

TODO: wheels and speed weight objects. (They seem need to be copied to work)
2016-04-02 15:53:21 +08:00
Benau
5ac25db7f8 Initial work to support transparent kart in ghost replay 2016-04-02 12:55:20 +08:00
Benau
34f9d507d0 Fix real lan network connection 2016-04-01 09:59:16 +08:00
auria.mg
894a38f6c7 Fix empty popup when no lan server detected 2016-03-31 20:40:42 -04:00
Benau
a3265d5c15 Fix uninitialised member value 2016-03-30 10:58:21 +08:00
hiker
932365cee3 Fixed VS compilation. 2016-03-29 11:18:19 +11:00
hiker
840244d476 Merge branch 'master' of https://github.com/supertuxkart/stk-code 2016-03-29 11:09:55 +11:00
hiker
5c83249a30 Fixed crash in stand-alone server. 2016-03-29 11:09:07 +11:00
auriamg
640b6bb6b8 Merge pull request #2464 from Odd0002/master
Fix debug build on GCC 5.3.0
2016-03-28 20:08:53 -04:00
Benau
09bfdafd12 Use current font to getDimension for text
Fix crashes
2016-03-28 14:46:04 +08:00
Benau
4e0f217fc8 Remove unneeded cast 2016-03-27 20:53:33 +08:00
Odd0002
47bac3b33d Fix debug build on GCC 5.3.0 2016-03-26 22:36:22 -05:00
Benau
692539690d No combined uint32
Sorry people, you will need to re-record replay
2016-03-27 08:31:31 +08:00
Benau
dff5f8d459 Allow auto recreation of ghost replay file lists after recording. 2016-03-25 16:11:32 +08:00
Benau
151cc72e22 Save skidding info in replay 2016-03-25 15:37:53 +08:00
Benau
11b119066c Add support for using ghost kart in challenge
Real challenge file added later.
2016-03-23 14:26:48 +08:00
Marianne Gagnon
33defa44b7 Merge most modifications by egirsova to build 64-bits on OS X 2016-03-21 20:16:59 -04:00
Benau
8df9ff2cd8 Simplify ghost replay screen 2016-03-21 15:18:47 +08:00
hiker
ee4c4bd962 Try again to fix crash when exiting the server profile screen without networking. 2016-03-21 14:14:21 +11:00
hiker
ad545861ed Fix crash when exiting the server screen (network was still set to
be enabled).
2016-03-21 13:59:42 +11:00
hiker
fcc2b6493b Merge branch 'master' of https://github.com/supertuxkart/stk-code 2016-03-21 12:13:27 +11:00
hiker
e1ce01b5d2 Removed mostly unnecessary default constructor. 2016-03-21 12:12:01 +11:00
Benau
7aad4835b9 Merge branch 'new_track_gui' 2016-03-21 08:54:49 +08:00
hiker
065edebc70 Merge pull request #2455 from tobbi/coverity_issues_2
Add missing unlock
2016-03-21 11:53:35 +11:00
Benau
a62145ed6e Merge remote-tracking branch 'origin/master' into new_track_gui 2016-03-21 08:48:54 +08:00
hiker
ca0f66e4f8 Merge branch 'master' of https://github.com/supertuxkart/stk-code 2016-03-21 11:03:48 +11:00
hiker
1f4776abb3 Allow server gui to start selection. 2016-03-21 09:58:21 +11:00
Marianne Gagnon
e28b48c61b Fix previous commit 2016-03-20 18:51:05 -04:00
hiker
fa721409c0 Show connected players on server gui. 2016-03-21 09:50:29 +11:00
Marianne Gagnon
cbf1e4b5d7 Remove unused files, fixes #2458 2016-03-20 18:40:43 -04:00
hiker
05483396c2 Also show name of selected karts on waiting screen. 2016-03-21 09:39:17 +11:00
hiker
be7c7bfcbc Show Waiting screen on server. 2016-03-21 09:38:53 +11:00
Benau
c258418577 Fix going back 2016-03-21 01:02:13 +08:00
Benau
fce3eec66f New GUI for track only screen, used in network and loaded from replay 2016-03-20 16:23:49 +08:00
Benau
4d42010f2a Add missed number of laps setting 2016-03-20 08:54:12 +08:00
Benau
b92210d4a0 No watching replay when split-screen
And some bugs fixes
2016-03-20 08:40:55 +08:00
Benau
da70d305a9 Allow watch replay only 2016-03-20 01:33:26 +08:00
Benau
07afd444a8 Allow racing against the replay on equal footing
It make record while replay possible too.

We show the ghost only when start racing, fixing the overlapping issue.
2016-03-19 14:57:22 +08:00
Benau
a42ee39240 Merge remote-tracking branch 'origin/master' into random_arena_item 2016-03-19 08:58:25 +08:00
Marianne Gagnon
78abafb9df Attempt proper fix for #2453 2016-03-18 19:35:26 -04:00
hiker
97ac0a6f59 Merge branch 'master' of https://github.com/supertuxkart/stk-code 2016-03-19 10:28:01 +11:00
hiker
d25f3cee25 Added time step size as parameter to each protocol's synchromous update
function (which is needed for interpolation later).
2016-03-19 10:24:44 +11:00
auriamg
616a34ea77 Merge pull request #2456 from tobbi/coverity_issues_3
Properly free memory for m_story_mode_status and m_achievements_status
2016-03-18 19:08:38 -04:00
hiker
10bb5caae3 Show lobby screen on interactive server in LAN mode. 2016-03-18 08:10:47 +11:00
Tobias Markus
8ae746f330 Properly free memory for m_story_mode_status and m_achievements_status 2016-03-17 15:48:24 +01:00
Tobias Markus
0775347431 Add missing unlock 2016-03-17 15:38:40 +01:00
hiker
4101d72d90 Avoid crashes when the server enters the lobby (somewhat temporary,
the server needs a different kind of lobby anyway).
2016-03-17 17:20:02 +11:00
hiker
b6bcf33ae0 Added end of race handling, so that clients and server shut
down properly and go back to the lobby.
2016-03-17 17:19:21 +11:00
Benau
5b7161710d Add GUI option in track info screen for random item location. 2016-03-17 12:16:19 +08:00
hiker
094a87eb94 Avoid NULL reference crash. 2016-03-17 10:00:03 +11:00
Benau
d2509baf5c Allow random items number and type for arena with navmesh.
Number and types are hard-coded for now.
2016-03-17 01:27:24 +08:00
hiker
970159d98f Merge branch 'master' of https://github.com/supertuxkart/stk-code 2016-03-16 22:47:34 +11:00
hiker
c6b22cdffb Fix crash when player is not logged in. See #2453 for more details. 2016-03-16 22:29:51 +11:00
hiker
90f82494f7 Cosmetic changes only. 2016-03-16 09:49:30 +11:00
auriamg
6f5d36f479 Merge pull request #2451 from egirsova/master
Update README
2016-03-14 20:00:56 -04:00
hiker
07048d62fe Removed indices used in reading network string, now all reading
is sequentially.
Merge branch 'network_string_sequential_read'
2016-03-15 10:34:19 +11:00
hiker
19222c25bc Merge remote-tracking branch 'origin/master' into network_string_sequential_read 2016-03-15 10:33:47 +11:00
hiker
3a3e8bb49e Create a dummy camera if the server is running with graphics. This
allows starting a server from the gui.
2016-03-15 09:53:26 +11:00
hiker
1ad41db6c9 Fixed reading code which ignored 2 bytes. 2016-03-15 00:04:00 +11:00
egirsova
8d312174d8 Update README.
There is no stk-code/src/ide folder. Users should simply follow the instructions in the wiki to build for Mac OS X
2016-03-13 16:10:02 -05:00
Benau
c48ce20091 Thanks leper for this fix 2016-03-14 00:43:00 +08:00
hiker
7783de8770 Fixed line ending style. 2016-03-13 16:37:19 +11:00
hiker
e267aa9dff Merge branch 'master' of https://github.com/supertuxkart/stk-code 2016-03-13 16:31:36 +11:00
hiker
54463e9d66 Save server password so that authentication works. 2016-03-13 16:30:24 +11:00
hiker
467953cfe6 Merge remote-tracking branch 'origin/master' into network_string_sequential_read 2016-03-13 16:08:21 +11:00
hiker
f2c26f06f1 Another refactoring of NetworkString, this time added support for sequential
reads, so that you don't need to specify the offset anymore (and no more
removeFromFront).
2016-03-13 13:49:43 +11:00
Benau
8a9168a024 Remove the hard-coded localized name in language.cpp 2016-03-13 10:25:26 +08:00
hiker
96bf567c2e Merge branch 'master' of https://github.com/supertuxkart/stk-code 2016-03-11 16:46:20 +11:00
hiker
655987b992 Removed NetworkPlayerProfile field from STKPeer (since if splitscreen will
be supported there will be no 1:1 relationship between peer and players
anymore). All voting related protocols were extended to include the
voting player's player id (sp in future split screen player can vote
individually - though atm they would all vote for the same thing).
2016-03-11 16:42:35 +11:00
Marianne Gagnon
5500a06ceb Tweak subsea challenge 2016-03-10 20:57:43 -05:00
Marianne Gagnon
d0499be4b9 Update protocol to include server difficulty and mode 2016-03-10 19:25:55 -05:00
Marianne Gagnon
90f0c12393 More work on networking UI 2016-03-10 18:48:40 -05:00
Marianne Gagnon
35451515a2 Work on "Create server" screen to include more options 2016-03-09 19:47:45 -05:00
Marianne Gagnon
193aabe393 Remove weird unicode character from help GUI files 2016-03-09 19:47:21 -05:00
hiker
fc38acbea4 Fixed waiting screen. 2016-03-10 09:29:53 +11:00
hiker
b4d4f770ca Fixed line endings. 2016-03-10 09:28:52 +11:00
hiker
69f128b62f Added some log messages about received events. 2016-03-09 21:22:53 +11:00
hiker
6d1e5dc8ae Fixed crashed caused by sending messages that have been read previously
(which were sent with incorrect length).
2016-03-09 21:21:50 +11:00
hiker
45b2fef88a Merge remote-tracking branch 'origin' into remove-event-processing-info 2016-03-09 16:50:51 +11:00
hiker
058c1554ac Merge branch 'master' of https://github.com/supertuxkart/stk-code 2016-03-09 16:47:13 +11:00
hiker
1923ba0ab4 Two bugfixes (thanks to Benau for debugging). 2016-03-09 16:38:06 +11:00
Marianne Gagnon
8ba337c343 Regenerate pot file, fixing transifex issue hopefully 2016-03-08 21:35:25 -05:00
hiker
f35b3d2670 Merge branch 'master' of github.com:supertuxkart/stk-code 2016-03-09 13:22:00 +11:00
hiker
6067b3b8fa Use new #supertuxkart channel instead of #stk. 2016-03-09 13:21:37 +11:00
hiker
67068db470 Merge branch 'master' of https://github.com/supertuxkart/stk-code 2016-03-09 13:19:16 +11:00
hiker
603dfe7eee Minor code cleanup. 2016-03-09 13:18:46 +11:00
hiker
62a527a14b Fixed protocol. 2016-03-09 13:16:14 +11:00
hiker
f371a019c6 Fixed compiler warning. 2016-03-09 07:49:27 +11:00
hiker
087d491445 Removed EventProcessingInfo, and pre-computing of protocols that should
receive an event. Solves potential problem that an event might arrive at
a client before the destination protocol is up and running. Also improved
handling of (dis)connects, now only protocols that can handle a disconnect
event will receive them, hopefully reducing the number of crashes when
a client disconnects.
2016-03-09 07:46:33 +11:00
Benau
114732035f Fix log 2016-03-08 10:32:35 +08:00
Benau
88fb0a555e Use uniform spelling for SuperTux 2016-03-08 08:17:47 +08:00
hiker
edbdde4536 Replaced another soft-dash with a normal - (to avoid transifex complains). 2016-03-07 13:58:44 +11:00
hiker
c6cef53c99 Merge branch 'refactor-network-string' 2016-03-07 12:26:36 +11:00
hiker
68e394702b Merge branch 'refactor-network-string' of github.com:supertuxkart/stk-code into refactor-network-string 2016-03-07 12:20:43 +11:00
hiker
64993718b4 Replaced soft-dash with a normal - (to avoid transifex complains). 2016-03-07 12:15:20 +11:00
hiker
1dc5c0b4af Merge branch 'master' of https://github.com/supertuxkart/stk-code 2016-03-07 12:14:05 +11:00
Benau
05081c3033 Fix keep translating online/login issue 2016-03-07 09:08:27 +08:00
hiker
7ff4cd8873 Merge branch 'refactor-network-string' 2016-03-07 12:04:17 +11:00
hiker
94dc236a75 Merge remote-tracking branch 'origin/master' into refactor-network-string 2016-03-07 12:03:09 +11:00
Marianne Gagnon
9500331716 Merge branch 'master' of https://github.com/supertuxkart/stk-code 2016-03-06 20:01:48 -05:00
Marianne Gagnon
04999c35ee More work on networking UI 2016-03-06 20:01:40 -05:00
hiker
a462d4a81e Fixed compiler warnings. 2016-03-07 09:12:21 +11:00
hiker
9c71dc78d1 Merge remote-tracking branch 'origin/master' into refactor-network-string 2016-03-06 16:42:16 +11:00
hiker
f70dfb7d5d Fixed crashes (on VS at least) when the string printed contained
format characters.
2016-03-06 15:54:39 +11:00
Benau
2d1d912ee8 Fix #1841 2016-03-05 16:01:42 +08:00
Benau
e3cf054ea7 Fix #1835 2016-03-05 12:55:20 +08:00
Benau
6fd6dd8792 Remove hack 2016-03-05 10:04:05 +08:00
Benau
70d5114dd7 Display localized name instead of English translation 2016-03-05 09:49:03 +08:00
hiker
ab641b0dad Replaced the filename for packet log file in the UserConfig with a
flag to enable/disable this debug output in the file STDOUT.packets
(where stdout is the final set at startup).
2016-03-03 17:10:18 +11:00
hiker
4947881d10 Removed unnecessary #include in hpp file. 2016-03-03 16:42:46 +11:00
hiker
43b3684e12 Fixed memory leak. 2016-03-03 09:39:14 +11:00
hiker
5ddd577080 Removed incorrect warning messages. 2016-03-03 09:38:53 +11:00
hiker
e1892bc4fd Try to fix handling a kart finishing the race. 2016-03-02 16:58:41 +11:00
Marianne Gagnon
14c8ecddb5 Add waiting screen for networking 2016-03-01 18:58:51 -05:00
hiker
85f15d7221 Removed unnecessary broadcast functions. 2016-03-01 17:13:31 +11:00
hiker
b26c4fc372 Send the kart updates with proper token set. 2016-03-01 17:12:04 +11:00
hiker
c77522c07f Removed ProtocolManager::sendMessageExcept() function. 2016-03-01 16:50:45 +11:00
hiker
052e369df2 Removed unnecessary setting of token, use ProtocolManager sendExcept
instead of loop.
2016-03-01 16:45:42 +11:00
hiker
d9f607fc24 Merge branch 'refactor-network-string' of github.com:supertuxkart/stk-code into refactor-network-string 2016-03-01 11:56:49 +11:00
hiker
d086501035 Merge branch 'refactor-network-string' of https://github.com/supertuxkart/stk-code into refactor-network-string 2016-03-01 11:55:57 +11:00
hiker
e3c7033aa1 Fixed incorrect level of info message. 2016-03-01 11:54:09 +11:00
hiker
753868361f Removed many token settings and tests, which are now done in
Event and when sending the message.
2016-03-01 09:56:33 +11:00
hiker
1f53923c45 Fixed potentially incorrect code in getFloat; added memory leak check;
improved handling of m_current_offset; let the NetworkString autpmatically
add the size for the type and token, so the user code only needs to allocate
space for the real content.
2016-03-01 09:54:26 +11:00
Benau
96a10ce92c Update strings 2016-02-29 10:59:42 +08:00
hiker
b18712f8c2 Added some output when running unit tests. 2016-02-29 13:53:15 +11:00
Benau
4438664907 Merge remote-tracking branch 'origin/master' into fix_replay 2016-02-29 10:25:19 +08:00
hiker
390fee96da Try to fix linux release builds. 2016-02-29 11:40:02 +11:00
hiker
a6fbd019fb Fixed linux compilation. 2016-02-29 11:09:40 +11:00
hiker
00347d2743 Removed explicitly setting token (which is now done when sending
a message to a client).
2016-02-28 16:42:32 +11:00
hiker
6c022cec6b Use sendMessageToPeershangingToken instead of creating new messages
in a loop.
2016-02-28 16:41:54 +11:00
hiker
ceb831d852 Removed STKHost::sendMessage function. 2016-02-28 16:26:48 +11:00
hiker
4b9d9cfc92 Replaced Protocol::sendMessage (which was either a send or a broadcast
depending on if the caller is a client or server) with explicitly named
functions.
2016-02-28 16:18:08 +11:00
hiker
c9d3577a13 Removed unnecessary sendMessage function in ProtocolManager. 2016-02-28 15:57:41 +11:00
hiker
58505eeb88 Started to set token in the 'lower level' functions, removing the need
to set the token in each protocol. Started to remove some of the
unnecessary send* functions.
2016-02-28 15:54:43 +11:00
hiker
9a16595261 Renamed NewNetworkString to NetworkString. 2016-02-28 14:58:15 +11:00
hiker
1e49595c53 Further improved look of NetworkString log messages. Added unit testing. 2016-02-28 14:55:48 +11:00
Lucas Baudin
287349716c [android] hack to control the kart with the accelerometer (to be moved in a proper place - just for debugging purpose right now) 2016-02-27 00:23:55 +01: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
aee2835e54 [android] unsuccessfully trying to add debug flags 2016-02-27 00:21:49 +01:00
Lucas Baudin
88419935b7 [android] fix typo in the readme 2016-02-27 00:20:37 +01:00
Lucas Baudin
c842324b75 [android] stop makefile target to kill a running stk 2016-02-27 00:19:47 +01:00
Lucas Baudin
5e125ee5c1 [android] less hacky way to disable glsl 2016-02-26 19:40:52 +01:00
Lucas Baudin
d88f414f96 [android] disable GLSL and set width/height according to the size detected by the driver 2016-02-26 18:04:03 +01:00
Lucas Baudin
86d1ca811a [android] re-enable things in 2dutils.cpp that are available with opengles 3.0 2016-02-26 18:02:41 +01:00
Lucas Baudin
e9657beaa6 [android] detect size 2016-02-26 18:01:51 +01:00
hiker
be815e4234 Fixed various bugs caused by switching to new NetworkString class. 2016-02-26 16:38:59 +11:00
hiker
5c32cbe1be Fixed crash (getUInt takes m_current_offset into account, which made
the indices partially invalid).
2016-02-26 09:20:13 +11:00
Lucas Baudin
6dc2752c81 [android] update readme 2016-02-25 23:20:07 +01:00
Lucas Baudin
a76b98de89 [android] Add the patch used to have a lighter dataset 2016-02-25 23:16:44 +01:00
Lucas Baudin
0dc59b9e4a [android] Boilerplate code to launch stk main 2016-02-25 23:14:03 +01:00
Lucas Baudin
f484e7ef6b [android] More debug print for the android irrlicht device 2016-02-25 23:13:33 +01:00
Lucas Baudin
40b45a8442 [android] Disable command line 2016-02-25 23:12:14 +01:00
Lucas Baudin
3f13d69eb3 [android] Remove the main loop from main to debug things more easily 2016-02-25 23:12:02 +01:00
Lucas Baudin
cb3b3a0eaf [android] use PrivateData in irr_driver to give the androidapp to the driver 2016-02-25 23:11:26 +01:00
Lucas Baudin
419b516dcf Add extra stk-assets possibility (inside the data/) 2016-02-25 23:10:27 +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
d2b5d5ad05 [android] auto-download jpeglib 2016-02-25 19:38:36 +01:00
Lucas Baudin
dacb6a41d3 [android] Add angelscript to libstk.so 2016-02-25 19:36:26 +01:00
Lucas Baudin
658ab615d2 Fix freetype build system 2016-02-25 19:30:00 +01:00
Lucas Baudin
81f759e876 Don't use pthread at all if no curl 2016-02-25 16:49:33 +01:00
Lucas Baudin
22b8d15939 Switch to OGLES2, it seems to be working 2016-02-25 16:48:39 +01:00
Lucas Baudin
2b543ca88d Add src symlink, add build system to build the rest of stk, freetype, ifaddrs, etc… Does not compile yet 2016-02-25 16:47:48 +01:00
Lucas Baudin
de576272e6 Add android makefile (it was ignored by the .gitignore…) and ignore freetype and ifaddrs (downloaded via the makefile) 2016-02-25 16:46:35 +01:00
Lucas Baudin
3a663f8e71 Shaders and data files for the irrlicht example 2016-02-25 16:44:55 +01:00
Lucas Baudin
2c9f2c84c5 More macros to disable extra gl calls 2016-02-25 16:27:50 +01:00
Lucas Baudin
f89a4b1a75 Merge back the IEvent changes 2016-02-25 15:55:52 +01:00
Lucas Baudin
368a230ed7 Put some preprocessor macros to prevent unsupported GLES calls 2016-02-25 13:56:43 +01:00
Lucas Baudin
02808cdfd0 GLES2 for android devices by default 2016-02-25 12:06:54 +01:00
hiker
8621437e07 Use NetworkString's log function. 2016-02-25 17:02:51 +11:00
hiker
2357e965b4 Fixed crash, and started to improve log output. 2016-02-25 17:00:08 +11:00
hiker
6f55877e94 Fixec various crashes. 2016-02-25 16:54:31 +11:00
Marianne Gagnon
ba4e9d1a79 Tweak default config as suggested in ticket #2438, it's not perfect but seems much better that what we had previously in most cases 2016-02-24 19:20:14 -05:00
hiker
03f4339cee Handle error in lan connection. 2016-02-25 09:49:45 +11:00
hiker
9d546d4980 Use BareNetworkString to correctly decode requests-for-servers. 2016-02-25 09:49:09 +11:00
hiker
1655a4889d Use BareNetworkString. 2016-02-25 09:48:47 +11:00
hiker
28bb228914 Added missing initialisation. 2016-02-25 09:46:17 +11:00
Lucas Baudin
d4d3817d63 Disable sound and curl, add freetype 2016-02-24 22:24:33 +01:00
Lucas Baudin
c7c5788086 Add android build files 2016-02-24 20:41:21 +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
hiker
2e8ddb1c50 Added a new base class 'BareNetworkString' for NetworkString,
used it for some of the messages exchanged before the ProtocolManager
is started (i.e. establishment of initia connection).
2016-02-24 20:32:11 +11:00
hiker
98ba11d9ba Started to introduce new network string. It compiles, but certainly
does not work yet.
2016-02-23 16:29:57 +11:00
Benau
abdd32c070 Fix warning 2016-02-22 07:43:29 +08:00
Benau
8f1daabbe1 Merge remote-tracking branch 'origin/master' into fix_replay 2016-02-22 07:26:26 +08:00
auriamg
c0bfd46ee9 Merge pull request #2441 from tobbi/missing_override
Add forgotten override's where necessary
2016-02-21 18:18:25 -05:00
Benau
dafde30077 Fix crash when press save replay key when it's not initialized. 2016-02-21 15:13:32 +08:00
Tobias Markus
d8cce95b0e Add forgotten override's where necessary 2016-02-21 01:36:15 +01:00
Benau
abd9ed189c Merge remote-tracking branch 'origin/master' into fix_replay 2016-02-19 08:43:11 +08:00
auriamg
91bd844dca Merge pull request #2439 from Odd0002/master
Update AngelScript to version 2.30.2
2016-02-18 18:37:03 -05: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
Benau
64522d9d13 Merge remote-tracking branch 'origin/master' into fix_replay 2016-02-17 14:03:58 +08:00
Benau
c65b0aaae0 Save jumping event in replay file 2016-02-17 14:02:33 +08:00
Marianne Gagnon
1e0586dc40 Add missing files forgotten in previous commit 2016-02-16 18:52:54 -05:00
Marianne Gagnon
9c49312714 Work on networking GUI, combine older server interfaces with the newer online/profile screens 2016-02-16 18:33:09 -05:00
Benau
ee68b5ccce Merge remote-tracking branch 'origin/master' into fix_replay 2016-02-16 10:55:53 +08:00
Benau
51bfc327d7 Make race end-able 2016-02-16 10:20:05 +08:00
Benau
71c1fadcd3 Merge remote-tracking branch 'origin/master' into fix_replay 2016-02-16 09:57:41 +08:00
hiker
05a1a8a785 Merge branch 'master' of https://github.com/supertuxkart/stk-code 2016-02-16 12:37:43 +11:00
hiker
2f0a69525a Use kart id instead of kart name to identify kart that has collected an item. 2016-02-15 18:16:31 +11:00
Benau
c8ecb78ffa Remove useless header 2016-02-15 15:16:26 +08:00
hiker
132ecfe409 Created separate function for handling received collectedItem messages. 2016-02-15 18:00:09 +11:00
hiker
d15a234ace Let only the server decide when a kart finished the race. Notify
all clients if this happens.
2016-02-15 17:45:24 +11:00
Benau
a6412d7a07 Add ghost icon, use it in race setup screen 2016-02-15 09:28:36 +08:00
Benau
bd1380a240 Do not crash if used addon track not found in local STK 2016-02-15 01:19:53 +08:00
Benau
05093852bc Add sorting support in ghost replay selection screen 2016-02-15 01:12:13 +08:00
Benau
4ea6ea8ea6 Add confirm dialog when deleting replay file 2016-02-14 13:52:16 +08:00
Marianne Gagnon
52b3d533f5 Fix memory management issue 2016-02-13 21:18:03 -05:00
Benau
aa81925860 Don't crash if kart not found loaded by replay files 2016-02-14 09:25:04 +08:00
Benau
c46bccc6e3 Finished GUI 2016-02-13 11:55:42 +08:00
Benau
8a121ed32b Add Ghost replay GUI 2016-02-13 01:34:00 +08:00
Benau
5cd27f8f99 Seperate directory for replay files
It allows replay GUI to load them easier
2016-02-12 10:01:54 +08:00
Elderme
da5529f5bb Improved coding style 2016-02-11 21:40:20 +01:00
Benau
a6c4a72e2c Make lap counting works for ghost kart
As no m_terrain_info->update in ghost kart update
2016-02-12 01:18:26 +08:00
Elderme
05f9b01be3 Fixed compilation issue with MinGW 2016-02-11 14:34:16 +01:00
hiker
1ad782e6a6 Added comments. 2016-02-11 17:24:55 +11:00
Benau
7765b43d42 Merge remote-tracking branch 'origin/master' into fix_replay 2016-02-11 13:45:16 +08:00
Benau
ece95cbb81 Use MessageQueue to show whether the replay file is saved successfully 2016-02-11 13:42:25 +08:00
Benau
1278394740 More clean 2016-02-11 10:09:31 +08:00
Benau
80152d2989 Clean up 2016-02-11 10:05:40 +08:00
Benau
4daa752bb6 Don't hurt a kart when it's already hurt enough 2016-02-11 09:08:12 +08:00
Benau
3f89512b34 Remove most isGhostKart() hack when avoidable 2016-02-11 09:01:09 +08:00
Marianne Gagnon
fe6bbb80c4 Delete unused da_DK translation, closes #2435 2016-02-10 19:56:45 -05:00
hiker
7e6711e163 Renamged NetworkWorld to RaceEventManager (since this class is
not a 'world' in the sense our game modes are).
2016-02-11 09:03:51 +11:00
Benau
bb88a0f0ec Allow auto-save replay when specified in time trial mode.
It will disable AI when recording, also it will only save if the
race is completed, ie no one gave up or all events fit in max frame recorded.
2016-02-11 00:42:33 +08:00
hiker
99bc5477a2 Use a password to authenticate the client that is allowed to
control a server (now the controlling client can reconnect in
case it gets disconnected, previously with only allowing the host
with id 1 to control, the server could not be controlled anymore).
2016-02-10 18:03:42 +11:00
Benau
5a9fdd7a8d Allow replay reverse track 2016-02-10 12:43:45 +08:00
Benau
61d6e572c0 Remove unnused file 2016-02-10 10:38:27 +08:00
hiker
bfced53aaf Started to add password support for a controlling a server. 2016-02-10 13:32:39 +11:00
Benau
0181ba0bc9 Add Ghost Controller 2016-02-10 10:27:13 +08:00
Elderme
b2a9c412ed Fixed issue when deffered lighting is disabled (graphics level 1) 2016-02-09 22:37:52 +01:00
hiker
cebf395939 Only allow the first connected client to control the server. 2016-02-10 08:28:15 +11:00
Elderme
d54aee1535 Central video settings were initialized twice: fixed 2016-02-09 21:43:58 +01:00
hiker
ee320588d5 Merge remote-tracking branch 'origin/master' into support_nw_splitscreen 2016-02-09 17:40:59 +11:00
hiker
354770f564 Added 0 number of laps to configuration to test ending a race. 2016-02-09 13:38:25 +11:00
hiker
8f492d8480 Updated documentation. 2016-02-09 13:38:06 +11:00
hiker
f5a344ccb4 Fixed voting for laps and reverse. 2016-02-09 09:41:35 +11:00
Benau
bf080421a7 Allow showing speed of ghost karts in replay
Use when change camera target to ghost karts
2016-02-08 12:28:40 +08:00
Elderme
5b81d97482 Merge branch 'master' into renderer_refactoring 2016-02-07 13:56:25 +01:00
Elderme
2ee4aefcd7 Improved coding style 2016-02-07 13:54:46 +01:00
Benau
b6b644ecb5 Clean up 2016-02-07 10:20:37 +08:00
Elderme
f26667ec85 Removed unnessary #include in header files 2016-02-06 23:38:15 +01:00
Elderme
d5bcfb9446 Improved coding style 2016-02-06 19:11:23 +01:00
Benau
af5b23e5c6 Fix potential crash 2016-02-07 00:56:14 +08:00
Elderme
6bf238a134 More cleaning 2016-02-06 15:06:39 +01:00
Elderme
6465666d7c Improved interfaces 2016-02-06 14:30:21 +01:00
Benau
c3f589561c Initial work on supporting real race with ghost karts
To test, you need to pass --ghost to supertuxkart with choosing a
track that has replay recorded, you can record one with artist
debug mode.

TODO: correct position handling
2016-02-06 14:52:50 +08:00
hiker
52460d02de Made start/terminate/pause/unpause-Protocol private, so that now all
calls to those functions from the ProtocolManager event loop (which
avoids locking problems).
2016-02-05 16:28:58 +11:00
hiker
af6ecfec3a Removed unused function. 2016-02-05 16:15:58 +11:00
hiker
89979a46f5 Removed unused variables. 2016-02-05 16:09:31 +11:00
Benau
647f42e984 Update comment 2016-02-05 09:40:34 +08:00
Benau
0091c1555a Save nitro and zipper GFX in replay 2016-02-05 09:30:40 +08:00
hiker
2d0fd0260e Added file forgotten in previous commit. 2016-02-05 10:08:58 +11:00
hiker
6a9a8565d0 Replaced exit mutex with Synchronised. 2016-02-05 09:02:32 +11:00
hiker
89c972c316 Cosmetic changes only. 2016-02-05 08:33:35 +11:00
hiker
e392aa6ead Fixed syntax errors :( 2016-02-05 08:28:21 +11:00
hiker
0d488b916d Use Synchronised instead of mutex for next protocol id. 2016-02-05 08:24:28 +11:00
hiker
348a300c09 Use Synchronised for m_requests instead of separate mutex. 2016-02-05 08:19:26 +11:00
hiker
263e41ec1f The update messages are now handled in the main thread, which removes the
need for locking. Also only the last update event is handled, older events
are discarded.
2016-02-04 17:15:14 +11:00
hiker
4fa7a89963 Fixed (probably debug only) crash: evaluating the pointer arithmetic
left to right had invalid intermediate result (i>0; offset <0).
2016-02-04 16:56:11 +11:00
hiker
f580603c97 Cosmetic changes. 2016-02-04 16:55:42 +11:00
Benau
5810acb114 Fix memory leak 2016-02-04 10:11:14 +08:00
Benau
38eeddd4e8 No reference for int and float 2016-02-04 09:51:59 +08:00
Benau
4cbb31b8e5 Ghost kart replay fixes:
1. Allow saving steering, speed, suspension length

2. No more crashes when trying to replay
2016-02-04 08:17:02 +08:00
hiker
878760ed2d Fixed GameEventProtocol (e.g. collecting items). 2016-02-03 09:07:15 +11:00
hiker
f5897001d8 Properly lock data structure (I've seen data corruption, most likely
caused by not locking).
2016-02-03 09:05:26 +11:00
hiker
19053d8ac6 Removed unnecessary call. 2016-02-03 08:48:28 +11:00
hiker
cc017da1d6 Let only the server ping the clients (to reduce network traffic). Reduce
frequency of pings (since it appears that often esp. during loading
clients are busy loading which artificially increases latency).
2016-02-03 08:21:34 +11:00
hiker
4f12a9a66c Prevent usage of duplicated host ids (before if hosts A and B are connected,
then A disconnects and C connects, B and C would have the same host id).
2016-02-02 09:52:07 +11:00
Elderme
b85bd204aa Removed useless methods in FixedPipelineRenderer class 2016-02-01 21:20:10 +01:00
hiker
ef8c04e117 Removed unnecessary lock. 2016-02-01 16:45:07 +11:00
hiker
d78c1b3272 Replaced array with scalar value, minor code cleanups. 2016-02-01 16:42:36 +11:00
Elderme
20290decc0 Added default statement in switch on material types 2016-01-31 21:49:22 +01:00
Benau
87862c27ae Fix #2127 2016-01-31 10:16:12 +08:00
Marianne Gagnon
3de922bc19 Fix animated textures not working on animated meshes. FIxes #2432 2016-01-30 18:11:58 -05:00
Elderme
1e7e126b55 merged with master 2016-01-30 15:00:22 +01:00
Elderme
011777e93f Added missing include in command_buffer 2016-01-30 14:13:50 +01:00
Elderme
6be1e7a209 Removed useless lines in draw_calls 2016-01-29 22:14:15 +01:00
Elderme
0c85dd2e2e Fixed issue when async instance upload is not supported 2016-01-29 22:11:31 +01:00
Benau
40e193e415 Reset the ball if out of navmesh after 2 seconds
Plus some code clean up
2016-01-29 14:40:52 +08:00
hiker
ad21b6dfa2 Merge pull request #2375 from leyyin/travis-matrix
Add matrix configuration to travis file
2016-01-29 12:23:04 +11:00
hiker
17de128f09 Cosmetic changes only. 2016-01-29 08:18:34 +11:00
hiker
e81935df99 Added convenience functions that encode and decode Vec3s and Quats. 2016-01-29 08:14:13 +11:00
hiker
6039f63c0b Removed need m_self_kart from NetworkWorld, which is not necessary anymore. 2016-01-29 07:42:32 +11:00
hiker
06d1168948 Refactored to remove need for unique kart names. 2016-01-29 07:40:16 +11:00
Elderme
1ba19948f6 Moved variadic templates arguments first in ShadowCommandBuffer to fix compilation with visual studio 2016-01-28 15:21:18 +01:00
Benau
cbc9353210 Completely brake the AI karts in goal phase. 2016-01-28 16:13:03 +08:00
hiker
497a018667 Cosmetic changes only. 2016-01-28 08:41:50 +11:00
hiker
2606c5230d Refactored ControllerEventsProtocol so that unique kart names
are not necessaruy anymore.
2016-01-28 08:05:48 +11:00
hiker
892e1b58d1 Protocols are now either synchronous or asynchronous. This avoids a problem
that in (rare) circumstances e.g. a message that is only handled synchronously
is deleted from the asynchronous thread (if the main thread is too slow and
a time out is reached).
2016-01-27 10:05:25 +11:00
Elderme
c82ff61cf4 Added more comments 2016-01-26 22:30:42 +01:00
hiker
e31ce6844e Partial fix for crash when disconnecting clients. 2016-01-27 07:40:25 +11:00
hiker
618248ef4d Added comments. 2016-01-27 07:39:53 +11:00
Daniel Butum
28394c36b1 Add matrix configuration to travis file 2016-01-26 18:01:54 +02:00
Benau
5c81a2a3e7 Seperate red and blue balls a bit in race gui
This make score like 10:10 a bit clearer
2016-01-25 12:51:43 +08:00
Benau
e8adf7f051 Remove bubblegum in soccer mode as suggested by auria 2016-01-25 12:50:20 +08:00
Elderme
126f883fac Fixed poly count 2016-01-24 22:49:56 +01:00
Elderme
8d17911ef6 Cleaned and added comments 2016-01-23 21:59:56 +01:00
Benau
3674815e03 Missing reset() 2016-01-23 10:50:32 +08:00
Benau
2bc9362ac6 Add mini-skid for BattleAI when attacking targets 2016-01-23 10:34:20 +08:00
Benau
df9dc5ff34 Make AI really bends it like Beckham
Notice: AI will only try to skid to save the ball from being scored
when expert and supertux mode.
2016-01-22 22:01:22 +08:00
Benau
ea05f4b6ba Allow saving default time limit option too 2016-01-22 12:27:09 +08:00
Benau
99162e3d0f Fix wrong positioning of music description in soccer mode with time limit. 2016-01-22 12:01:01 +08:00
Benau
95f6f910b8 Allow saving selected team in single player soccer mode. 2016-01-22 11:32:06 +08:00
Benau
a7aedbe208 Remove unused PNG 2016-01-22 09:20:03 +08:00
Elderme
8a5405eff9 Make diffuse/specular/depth texture handles resident when creating RTT instead of during rendering loop 2016-01-21 15:05:14 +01:00
Benau
1ee9979fe1 More soccer mode improvements:
1. Max 8 karts are supported now

2. Clearer starting position assignment in soccer world

3. Reset all karts to starting position after each goal
2016-01-21 15:28:11 +08:00
Elderme
4eec1d8570 Removed getFBO method in IrrDriver 2016-01-20 23:39:19 +01:00
Benau
35ce3d8299 Add defense knowledge for AIs 2016-01-20 16:30:26 +08:00
Benau
1e7ac6e98b Avoid eating banana in a smarter way 2016-01-20 14:20:46 +08:00
Benau
93b6b96c2e Put animation settings in KartModel 2016-01-20 10:16:18 +08:00
Benau
3a3963bf8d Make STK soccer mode more like real match
1. Short win animation is shown in a kart if it scored correctly

2. Possible to identify own goal in result gui

Also player name is shown instead of kart name in result gui for all modes.
2016-01-19 16:21:58 +08:00
Benau
7831ef5ef5 Reverse logic for opposite goal 2016-01-19 16:21:30 +08:00
Benau
b7df193ed4 Add Red/Blue icon in soccer setup screen 2016-01-19 08:49:23 +08:00
hiker
560ff7cee4 Moved ActivePlayer out of Controller and into LocalPlayerController. 2016-01-18 16:47:48 +11:00
hiker
affc53fef4 Updated documentation. 2016-01-18 16:22:15 +11:00
Marianne Gagnon
7e93af7414 Forgotten file in previous commit 2016-01-17 21:31:23 -05:00
Marianne Gagnon
025c117d58 Tweak soccer setup screen to be clearer 2016-01-17 21:21:55 -05:00
Benau
6e2f1c98e1 Merge remote-tracking branch 'origin/master' into soccer_ai 2016-01-18 10:00:45 +08:00
Marianne Gagnon
0b5fdb6729 More work on billboards to render them properly, see #2427 2016-01-17 20:58:20 -05:00
Benau
d9a9900608 Merge remote-tracking branch 'origin/master' into soccer_ai 2016-01-18 09:54:23 +08:00
Benau
61113bbef9 Silence warning as auria suggested 2016-01-18 09:52:34 +08:00
Benau
606add8605 Use back billboard arrow 2016-01-18 09:50:55 +08:00
Marianne Gagnon
ea02f232dc Fix compositing of billboards, they were forced to be additive 2016-01-17 20:37:15 -05:00
hiker
a6386e1f20 Simplified and documented code. 2016-01-18 08:17:44 +11:00
hiker
73d8e18044 Fixed and simplified sendMessageToPeersChangingToken, avoiding
incorrect messages if more than one peer is connected.
2016-01-18 08:16:32 +11:00
Elderme
14fa4f3def Removed IrrDriver::RTTProvider 2016-01-17 15:27:16 +01:00
Elderme
585f94d717 Moved calls to glEnable from MovelViewWidget to the graphics engine 2016-01-17 15:09:45 +01:00
Elderme
e9087a7dd6 Merged with master 2016-01-17 14:42:11 +01:00
Elderme
bff0a98708 Moved m_post_processing attribute from IrrDriver to ShaderBasedRenderer, and removed some getter/setter functions 2016-01-17 13:42:06 +01:00
Benau
51ce4c5cbd Use red/blue billboard text above karts in soccer world as Arthur suggested 2016-01-17 12:13:20 +08:00
Benau
ab61e55a6d Fix bugs in Race GUI 2016-01-17 12:11:09 +08:00
Benau
b410c8f67c Make soccer menu useful in single player
Notice: As race_manager->setKartSoccerTeam(i, info.team) already
pre-set karts team, there is no need to test for
(getNumKartsInTeam(SOCCER_TEAM_RED) == 0 || getNumKartsInTeam(SOCCER_TEAM_BLUE) == 0),
so the the menu code is simplified.
2016-01-16 16:11:33 +08:00
Benau
b45d926a00 Clean up and bug fixes 2016-01-16 09:14:19 +08:00
Benau
d328fc7133 Better team saving 2016-01-15 23:50:54 +08:00
Benau
82dca17f42 Friendly-fire in soccer mode 2016-01-15 21:49:54 +08:00
Benau
e296ebe4af Use white-black ball in minimap 2016-01-15 19:52:49 +08:00
Benau
7ef019f794 Use the checkPosition function for better angle handling in SkiddingAI 2016-01-15 18:35:21 +08:00
Benau
d14a39e0f7 Initial work on soccer AI, plus lots of code re-factor/clean up.
To test, you need to update stk-assets with the dummy soccer field.
In single player, you are limited to be in red team for now, so just
shoot the ball into the blue goal. Also max-goal is limited to 4.

Regarding AIs, the steering with ball logic is handled in
SoccerAI::correctBallPosition, max AI supported in single player
is limited to 5 by now.

The AI is not as good as Zidane or Ronaldo, but steering with ball
for human is not as easy as not normal driving anyway, so don't
laugh at the AIs. :)

TODO: Friendly-team firing, polish the soccer field.
2016-01-15 18:25:52 +08:00
hiker
b7870b2377 Fixed crash (when going back from track screen to kart screen). 2016-01-15 16:25:02 +11:00
hiker
d3a7c75a62 Replaced many uses of getPlayer with Controller::canGetAchievements.
Removed some unused variables.
2016-01-15 08:02:36 +11:00
hiker
45399fc43f Removed unused data. 2016-01-14 08:30:02 +11:00
hiker
846fd3f059 Started to support split screen by fixing and improving the handling
of local plauyer ids.
2016-01-14 08:20:14 +11:00
hiker
e70017a1a6 Code simplification. 2016-01-14 08:05:40 +11:00
hiker
b0571e419a Added documentation. 2016-01-13 17:03:01 +11:00
hiker
409862dbe2 Merge branch 'removeLocalPlayerInfo' 2016-01-12 13:15:36 +11:00
hiker
2c232bf400 Merge branch 'master' of https://github.com/supertuxkart/stk-code 2016-01-12 13:15:09 +11:00
hiker
7b6ec4e916 Merge remote-tracking branch 'origin/master' into removeLocalPlayerInfo 2016-01-12 13:02:34 +11:00
hiker
e7dd7f4d1a Replaced setLocalKartInfo with setPlayerKart. Updated some docs. 2016-01-12 13:00:45 +11:00
hiker
6816b08af1 Made m_player private in Controller. 2016-01-11 17:35:24 +11:00
hiker
4d28bb484f Added host id which is used to determine local/remote players. 2016-01-11 17:08:06 +11:00
hiker
f0c5f43fe2 Removed setNumLocalPlayers (which is now part of setNumPlauers)<
fixed coding style in race manager.
2016-01-11 07:58:30 +11:00
Deve
87d474bd1a Fixed compilation.
The __try and __except are not available in mingw.
2016-01-08 20:48:39 +01:00
Deve
2da5efd983 Simplify code a bit 2016-01-08 20:20:03 +01:00
Deve
280ad614bb Fixed creating screenshots in menu screens 2016-01-08 20:20:03 +01:00
hiker
e46c47d5c9 Removed m_local_player_karts data structure in RaceManager. 2016-01-08 17:03:50 +11:00
Benau
283c1a7c37 Update supertuxkart desktop file to support searching with keywords 2016-01-08 09:34:13 +08:00
Elderme
76453afc49 Removed useless functions 2016-01-07 22:11:14 +01:00
Elderme
e58a45441b Fixed aliasing issue with render to texture 2016-01-07 15:59:06 +01:00
Elderme
c14ce23e66 Merged with master and solved conflict with the new graph structure 2016-01-07 14:56:09 +01:00
hiker
6ffe0cc995 Updated comments. 2016-01-07 17:11:14 +11:00
hiker
f5438c433c Removed unused variable. 2016-01-07 17:07:04 +11:00
hiker
a1b05dbb00 Merge branch 'master' of https://github.com/supertuxkart/stk-code 2016-01-07 08:48:00 +11:00
hiker
f3851e44a9 Removed code duplication in StartGameProtocol. 2016-01-07 08:47:43 +11:00
hiker
7826a8a751 Removed compiler warnings. 2016-01-06 18:10:54 +11:00
hiker
eb30294259 Disable access to network races. 2016-01-06 18:01:46 +11:00
hiker
b8ed2025ed Merge remote-tracking branch 'origin/master' into refactor_networking 2016-01-06 17:53:45 +11:00
Marianne Gagnon
4eb5ee6e77 Fix crash due to goal checklines not initializing properly 2016-01-05 20:36:01 -05:00
hiker
efa0f0afc9 More docs, code cleanup. 2016-01-06 08:21:48 +11:00
hiker
c1560ddb02 Renamed getPlayerID() to getGlobalPlayerId(); started to refactor
StartGameProtocol.
2016-01-06 08:10:03 +11:00
hiker
801f6961cf Updaetd documentation. 2016-01-06 07:59:38 +11:00
hiker
7bb14cc1fc Minor code cleanup. 2016-01-05 17:32:46 +11:00
Benau
347c608867 Final clean, put every kart location in three strikes battle world 2016-01-05 13:15:50 +08:00
hiker
65a23c125a ADded comment. 2016-01-05 08:22:27 +11:00
Elderme
290ac3489b Added render to texture support for legacy OpenGL (but rendering with legacy GL is currently bugged) 2016-01-04 22:19:19 +01:00
Elderme
a257acfd4b Fixed memory leak and improved interfaces for rendering to texture 2016-01-04 21:36:00 +01:00
Benau
405d31ecfc Better pointInPoly 2016-01-04 16:10:38 +08:00
Benau
87df259f48 Cleanup controller, plus better logic in updateKartNodes 2016-01-04 14:28:06 +08:00
Benau
0393eef825 Merge remote-tracking branch 'origin/win_lose_music' 2016-01-03 10:27:37 +08:00
Benau
d4e312885a Make SFX depends on race result too
Currently use gp_end for test
2016-01-03 10:19:51 +08:00
Marianne Gagnon
b1ef0bc40a Try to fix travis build 2016-01-02 20:57:46 -05:00
Marianne Gagnon
15b35b76ac Scripting : add ability to use delegates for timeouts (enabling complex timeouts) 2016-01-02 20:34:39 -05:00
Benau
37da8423f8 Fix #2417 2016-01-03 09:04:24 +08:00
Deve
bd9f435190 Fixed 64-bit windows compilation.
Broken in 53164e5cbe or somewhere around it.
2016-01-03 00:10:30 +01:00
Benau
2aaab61f93 Implement win or lose music for race result screen
TODO: Proper music file
2016-01-01 13:31:15 +08:00
Benau
9624b1ab28 Prevent crashes when invaild navmesh is used or no items in an arena 2015-12-31 09:34:37 +08:00
Elderme
956ae27eca Added abstract RenderTarget class for rendering to texture, and a renderToTexture method in IrrDriver 2015-12-30 12:02:11 +01:00
Benau
629f090646 More battle mode improvements
1. Fix text overflow in arena menu

2. Try to make battle AI avoiding eating banana
2015-12-29 08:27:24 +08:00
Benau
94c5ba4193 Add more arena info in track screen 2015-12-24 07:53:49 +08:00
Elderme
8ce03609d1 Fixed rendering issue whith AZDO 2015-12-22 14:38:08 +01:00
Elderme
b5fd7aa104 Fixed compilation errors 2015-12-20 17:43:15 +01:00
Deve
70aad3e265 Just rename a variable 2015-12-20 13:46:41 +01:00
Deve
5020f3ca2e Disable compute shader for intel on mesa for now, because it is shaking for some reason. 2015-12-20 13:46:41 +01:00
Deve
f9c48a0fa2 Fixed compute shaders compilation for drivers which report only OpenGL 3.x 2015-12-20 13:46:41 +01:00
Deve
9eb6694d61 Check for arrays of arrays extension, which we use in compute shaders 2015-12-20 13:46:41 +01:00
Benau
4e5197e7c1 Different max number of AIs per arena
Now I make large arena like stadium to have max 8 player-slots,
should be very fun to play

Remember update stk-assets to test!
2015-12-20 16:28:01 +08:00
Benau
7031e1bf8c Merge remote-tracking branch 'origin/graph_cleanup' 2015-12-20 09:12:50 +08:00
Benau
fefeffad91 Further clean 2015-12-20 09:01:50 +08:00
auriamg
82032ca6c9 Merge pull request #2406 from devnexen/master
better alternative OSes handling + tiny C++ fix
2015-12-19 17:59:26 -05:00
Benau
3d409a9742 Fix comment 2015-12-20 01:13:51 +08:00
Benau
08b2e27ed9 More clean up 2015-12-19 16:23:18 +08:00
Benau
e4da6d4a99 Merge remote-tracking branch 'origin/master' into graph_cleanup 2015-12-19 16:23:11 +08:00
David Carlier
2841c0e165 better alternative OSes handling + tiny C++ fix 2015-12-19 07:05:45 +00:00
Benau
74c547cb1d Remove duplicated code, plus some more cleanup 2015-12-19 02:09:37 +08:00
Elderme
c158fa1757 Removed getRTT method in irr_driver 2015-12-18 14:19:55 +01:00
Marianne Gagnon
94151dda60 Add forgotten file 2015-12-17 20:25:05 -05:00
Elderme
cba4685d02 Start moving m_rtts from IrrDriver to Renderer classes 2015-12-16 10:15:38 +01:00
hiker
c222ba2ebd Added documentation and minor cosmetic changes. 2015-12-16 18:31:03 +11:00
hiker
c9bf95079c Cosmetic changes only. 2015-12-16 08:22:30 +11:00
hiker
6280613e5c Avoid incorrect warning message in case of a disconnect. 2015-12-16 07:59:10 +11:00
hiker
07baf05b90 Fixed incorrect order in which protol ids were deleted. 2015-12-16 07:58:39 +11:00
hiker
68e37c902f Merge remote-tracking branch 'origin/master' into refactor_networking 2015-12-15 22:52:55 +11:00
hiker
430529ed58 Fixed non-windows compilation. 2015-12-15 09:14:51 +11:00
hiker
5c2f78b176 Refactored Local- and NetworkPlayerController to use a common base
class PlayerController.
2015-12-15 07:50:50 +11:00
Benau
12e4c76a6f Add minimap for battle mode when it has a navigation mesh
TODO: update battle island arena to use only 4 vertices per poly
2015-12-15 02:32:01 +08:00
Deve
e6068923b4 Give more light in kart selection screen 2015-12-14 19:23:27 +01:00
Deve
153fabb502 Fixed a crash on start with legacy pipeline 2015-12-14 19:03:10 +01:00
Deve
bddfa43da4 One more tweak.
glGetFramebufferAttachmentParameteriv function is available in OpenGL 3.0 and newer.
2015-12-14 18:56:08 +01:00
deve
5f46863a19 Display pop-up message when fatal error occured on windows.
The reason to do it is that in release mode we don't receive any message in console. This causes that the game sometimes doesn't start and you have no idea why (for example missing supertuxkart.git file etc.).
2015-12-14 12:25:04 +01:00
deve
4531b15d5c Check for sRGB workaround only if needed.
This fixes the crash for old OpenGL 2.1 drivers
2015-12-14 11:35:42 +01: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
Benau
7fccddb734 Show "Fribidized" user name and enable input for it 2015-12-14 02:56:42 +08:00
Benau
f0abbad937 Fix plural forms 2015-12-14 02:56:16 +08:00
Deve
306ace7fd2 Keep consistency with log label in irr driver 2015-12-11 19:18:14 +01:00
Deve
7dd7f76e87 Check if we really need to re-create the device by checking if framebuffer is sRGB or not. 2015-12-11 19:18:14 +01:00
Deve
6d757326d2 Make sure that we start game with disabled GL_FRAMEBUFFER_SRGB 2015-12-11 19:18:14 +01:00
Deve
80d36208f1 Added ugly hack, which forces srgb-capable framebuffer creation for intel drivers on linux 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
Elderme
c5caa610ec Moved functions from render_lighting.cpp to ShaderBasedRenderer class 2015-12-10 15:34:33 +01:00
Benau
8f6a529531 Complete fix to arena selection menu (handle random arenas) 2015-12-10 15:49:47 +08:00
hiker
dbd210d08c Renamed PlayerController into LocalPlayerController. 2015-12-10 17:54:29 +11:00
hiker
770d05f0de Fixed crash if more than one kart is connected to the server (since the
network kart screen will only show local karts now).
2015-12-10 17:37:28 +11:00
hiker
e0b3de17f6 Added new isLocalPlayerKart() function to controller, which is used
to detect when sfx and graphical effects should be shown. The isPlayerKart
funtion is used to detect a (local or remote) player, e.g. for rubber-banding
the AI, or finding the Xth player kart.
2015-12-10 17:35:31 +11:00
Benau
cebefcf374 Fix some gui interface bugs:
1. Fix credits fading effect

2. Display have many no of (addons mostly) arenas are hidden due to
   missing of navigation mesh

3. Fix wrong size of kart stats bar
2015-12-10 10:25:52 +08:00
Benau
ca6da8c537 Make AI smarter
1. Correct fire angle for bowling

2. When swapper is used, follow a closest kart instead.
2015-12-10 01:21:01 +08:00
Benau
11c4b41f13 More menu fix 2015-12-09 12:42:13 +08:00
hiker
1969ee0b1f Set a name for each thread in VS. 2015-12-09 08:55:46 +11:00
Benau
aac5a368b8 Avoid invaild Ai karts number during switching game modes 2015-12-09 01:27:02 +08:00
hiker
1755f22663 Cosmetic changes only. 2015-12-09 00:13:35 +11:00
Benau
140a229f71 Fix swatter issue 2015-12-08 16:47:42 +08:00
hiker
03594fcad9 Bugfix: the server would try to send a received kart action to the
server again.
2015-12-08 17:28:01 +11:00
hiker
34dad96017 Minor code cleanup. 2015-12-08 17:25:19 +11:00
hiker
786f9eb693 Fixed typoe (isclient vs isClient). 2015-12-08 17:24:10 +11:00
Benau
c789b1a8df Fix compile error 2015-12-08 10:46:01 +08:00
Benau
2644b0458b Merge remote-tracking branch 'origin/master' into battleAI 2015-12-08 10:09:35 +08:00
Marianne Gagnon
508dcdd7e8 Update credits 2015-12-07 19:07:10 -05:00
auriamg
f0fafc2651 Merge pull request #2245 from Flakebi/kart-properties
Kart properties
2015-12-07 18:44:14 -05:00
hiker
7fa062881d Removed unused variable. 2015-12-08 08:08:00 +11:00
Benau
152dddc110 Fix potential hang after end race in temple arena 2015-12-08 00:44:28 +08:00
hiker
e74ef461a4 Fixed crash (probably in debug mode only): iterator+i+o would
first compute and check iterator+i, and not iterator+(i+o), which
caused a crash.
2015-12-07 23:54:43 +11:00
hiker
27f1828c73 Fix crash (in case of result==false, index could be out of bounce). 2015-12-07 23:51:38 +11:00
hiker
7cc77f41f7 File missing in previous commit. 2015-12-07 23:50:21 +11:00
Benau
21c38a6c0b Make swatter disappear after one hit in 3 strikes battle 2015-12-07 16:24:11 +08:00
hiker
d8b417d536 Cosmetic changes; removed static variable. 2015-12-07 17:05:08 +11:00
Marianne Gagnon
ae916fced6 Add warning when animated texture not found 2015-12-06 20:14:55 -05:00
Benau
ba706f4476 Make swatter works better 2015-12-07 02:27:21 +08:00
Elderme
ba40b7fcd0 Removed ununsed SunDir uniform in InstancedGrassPass2Shader 2015-12-06 15:30:22 +01:00
Benau
b92395533e Fix infinite loop 2015-12-06 14:43:07 +08:00
Benau
239412327a Fix crashes when a kart has no wheels 2015-12-06 13:51:38 +08:00
Marianne Gagnon
cfc6ccf5ea Add missing copyright 2015-12-05 21:47:50 -05:00
Marianne Gagnon
27290b4ffb More work on scripting Property animator 2015-12-05 20:45:37 -05:00
Marianne Gagnon
840bc3df64 Make more properties animatable + fix build (oops, forgot files in previous commit) 2015-12-05 20:03:11 -05:00
Marianne Gagnon
2252495fdc Scripting refactor : add new property animator helper, transfer light animations to this new animator class. Can be used in the future to animate more properties 2015-12-05 19:42:06 -05:00
Elderme
ba7aa4bc58 Moved m_spherical_harmonics from IrrDriver to ShaderBasedRenderer class 2015-12-05 21:43:04 +01:00
Benau
8a0cbea933 Merge remote-tracking branch 'origin/master' into battleAI 2015-12-05 16:27:06 +08:00
Benau
ed41b7c805 Proper fix for reverse and unstuck 2015-12-05 16:21:12 +08:00
Elderme
a4ba78d1fb Merge branch 'master' into renderer_refactoring 2015-12-04 23:25:53 +01:00
Elderme
288b9db71b Moved skybox from IrrDriver to Renderer class 2015-12-04 23:23:56 +01:00
Flakebi
f63c4af8be Fix crash 2015-12-04 21:19:15 +01: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
Benau
9ad438b945 Try to fix too fast reverse and unstuck issue 2015-12-04 16:32:33 +08:00
hiker
9153439f68 Cosmetic changes only. 2015-12-04 18:07:43 +11:00
hiker
35d1059a39 Cosmetic changes only (coding style, comments). 2015-12-04 17:52:21 +11:00
hiker
97756dd337 Only show kart selection widgets for local (and this means atm only
one) player.
2015-12-04 08:12:29 +11:00
hiker
637202077f Automatically start game when all track votes have been received. 2015-12-04 08:00:51 +11:00
Deve
8980a32c20 Added profiler marker to keep consistency with other effects 2015-12-03 19:31:13 +01:00
Deve
9b3908cc62 Some lightning improvements:
- move OpenGL-related code to graphics directory, as it should be
- solve issue with applying effect multiple times in multiplayer mode
- remove old already disabled opengl code
2015-12-03 19:25:40 +01:00
deve
94d5c19b7f Fixed compiler warnings.
The winsock2.h header should be always included before windows.h header (or we should define WIN32_LEAN_AND_MEAN). It's because windows.h header includes also winsock.h header and there is possible conflict between winsock and winsock2.

I didn't test in on Visual Studio yet. I hope there is no WIN32_LEAN_AND_MEAN redefinition errors...
2015-12-03 14:59:54 +01:00
deve
0bd15acb93 Fixed compiler warning.
gcc complains that std::auto_ptr is deprecated.
2015-12-03 14:51:26 +01:00
deve
92248399d0 Update project version :P 2015-12-03 14:48:03 +01:00
deve
cbc8d84fc4 Allow to enable wiiuse build for mingw in cmake.
Still disabled by default because it only works with mingw-w64. It won't work with other compiler versions due to some inconsistencies in header files. But at least it's possible now to enable it without modifying cmake file.
2015-12-03 14:47:08 +01:00
deve
dbdf9db377 Fixed cygwin compilation.
Unfortunately it doesn't support std::to_string function, even on relatively new gcc (tested with version 4.9.2).
2015-12-03 14:38:57 +01:00
Benau
ab428dc8cf Different AI intelligence per difficulties 2015-12-03 16:13:39 +08:00
hiker
af3f72ae84 Automatically trigger computing the track data (based on votes)
once the game starts.
2015-12-03 17:56:16 +11:00
hiker
26155933f0 Set the local master on the server. 2015-12-03 17:54:24 +11:00
Flakebi
c5277edc54 Change suspension-travel that was changed in master meanwhile 2015-12-03 02:15:58 +01:00
hiker
0983038d5c Fixed size of token. 2015-12-03 09:10:07 +11:00
hiker
9765c56a44 Enable voting for tracks. 2015-12-03 08:24:17 +11:00
hiker
4286f47a31 Fixed incorrect indices. 2015-12-03 08:23:52 +11:00
hiker
ee7097af35 Added some default settings for race mode and send them to the server.
Changed major and minor mode in protocols from 1-byte to int, since 1-byte
is too small to store the actual values.
2015-12-03 07:53:56 +11:00
Flakebi
b3cb029087 Remove kart-type specific turn settings 2015-12-02 19:40:59 +01:00
Flakebi
dbecbc3840 Assign KartProperties to a variable instead of fetching it every time 2015-12-02 19:40:28 +01:00
Benau
b5d4610f45 Better navmesh handling 2015-12-02 10:41:32 +08:00
Benau
084a4ee844 Fix crashes when no navmesh
User should have no way to start with ai in battle mode,
when the arena has no navmesh.

Unless artist debug mode or more than 1 human players.
2015-12-02 10:08:03 +08:00
hiker
03d857db3e Removed unnecessary code. 2015-12-02 08:17:03 +11:00
hiker
0f52f0bdd9 Fixed incorrect message id in kart selection update message. 2015-12-02 08:16:22 +11:00
hiker
dfa78eaef2 Fixed random token computation to use indeed all 32 bits. 2015-12-02 07:45:05 +11:00
hiker
6d272d8a5a Fixed crash when quicly exiting stk after refreshing the server list. 2015-12-01 23:25:04 +11:00
hiker
109288e0f5 Removed unused code. 2015-12-01 18:10:06 +11:00
hiker
76ddaeaef7 Force refresh of server list when exiting from the server info screen. 2015-12-01 17:47:03 +11:00
hiker
642c402dcf Fixed unconnecting from a server. 2015-12-01 17:43:43 +11:00
Benau
c910c19827 Backwards firing and hard u-turn for backward node
TODO:
correct unstuck and perfect angle fire?
2015-12-01 09:27:49 +08:00
hiker
14390c2c5b Cosmetic changes. 2015-12-01 08:28:53 +11:00
hiker
c9a23bcbb7 Fixed disconnecting of a client. 2015-12-01 08:19:48 +11:00
hiker
bcfec98fa2 Removed all references to OnlineProfile, which makes LAN and WAN
server behave idential (and it also fixed potential memory leaks).
2015-12-01 07:57:42 +11:00
Flakebi
12a1227f20 Merge branch 'upstream/master' into kart-properties 2015-11-29 22:21:08 +01:00
Flakebi
ba3bc326eb Minor refinements 2015-11-29 22:21:03 +01:00
hiker
2e758a0641 Don't use #players as next player id - if a player gets disconnected,
the next player id would be duplicated.
2015-11-30 08:12:10 +11:00
Deve
5d6a233da2 Fixed wrong unit 2015-11-29 20:31:10 +01:00
Deve
7e7d4e120a Handle errors during recording. 2015-11-29 20:29:37 +01:00
Flakebi
aea68a2c14 Remove characteristics from kart 2015-11-29 04:08:12 +01:00
Flakebi
9fbe72b3c5 Move getter from characteristics to properties 2015-11-29 04:08:12 +01:00
Deve
3144cd1595 Implement recording video to avi file.
It allows to easily record a video, which can be then for example attached to a bug report. It also allows to record promotion videos (eg. trailers), which should be more smooth than recorded using external application.

Main disadventages are:
- Constant fps in avi file
- Atm. it's not possible to record sounds. I even don't know if it's possible at all (if we can easily get access to the sound buffer).

I see about 20-25% fps drop during recording. I think that it's acceptable. But if needed, the fps can be increased by using separated thread for recording.

Currently it uses jpeg compression with 70 quality. It can be easily tweaked to use higher/lower compression or even just uncompressed bitmaps.
2015-11-28 16:42:48 +01:00
hiker
18e5cd8d53 Enable refresh of server list after exiting a connection again. Also
removed deleting the joined server.
2015-11-28 12:45:03 +11:00
hiker
73e94e9824 Avoid race condition when a client exits in the lobby. 2015-11-28 12:33:01 +11:00
hiker
e2a6d1c33c Avoid crash (index could be -1). 2015-11-28 12:32:00 +11:00
hiker
09a32c2132 Fix various crashes when a client exits. 2015-11-27 23:05:32 +11:00
hiker
8d843a7317 Show the connected players in the player list of the gui. 2015-11-27 23:05:05 +11:00
hiker
0076a041c9 Used new decode/encodeString functions in other places, made getString private. 2015-11-27 08:55:21 +11:00
hiker
b092b47a58 Send the player's online or local (if not online) name to the server
and all clients.
2015-11-27 08:24:02 +11:00
Elderme
a753008521 Cleaned glow rendering 2015-11-26 20:12:24 +01:00
hiker
801b390860 Removed linux compiler warnings. 2015-11-26 09:16:27 +11:00
hiker
896d55816f Removed linux compiler warnings. 2015-11-26 09:13:57 +11:00
hiker
5c0f71ad07 Fixed names utf8ToWide and wideToUtf8; added convenience functions
taking std:;string and core::stringw as parameter (removed .c_str()
in many function calls).
2015-11-26 08:56:03 +11:00
hiker
517b0dabf9 Merge branch 'refactor_networking' of https://github.com/supertuxkart/stk-code into refactor_networking 2015-11-26 08:48:05 +11:00
hiker
f81bd5d0c5 Fixed names utf8ToWide and wideToUtf8; added convenience functions
taking std:;string and core::stringw as parameter (removed .c_str()
in many function calls).
2015-11-26 08:47:02 +11:00
hiker
2f126ab226 Moved NetworkPlayerProfile into its own file, added getter and
setters for it.
2015-11-26 07:41:37 +11:00
Elderme
1b27424b67 Moved more drawing functions from GeometryPasses to drawing policies classes. 2015-11-24 23:33:14 +01:00
Marianne Gagnon
8ca0fea6fa Fix audio listener positionning code crash 2015-11-23 19:05:51 -05:00
Marianne Gagnon
c806c1de49 Clear status text in register screen, fixes #2361 2015-11-23 19:04:24 -05:00
hiker
927969e720 Added new server state for 'selecting karts'. 2015-11-24 07:55:58 +11:00
hiker
078de5fe93 Server-side authorisation now implemented if client is on
same IP address.
2015-11-24 07:53:51 +11:00
hiker
981a4ab234 Fix crash when disconnecting. 2015-11-23 17:22:12 +11:00
hiker
3e9e9349c0 Removed commented out code. 2015-11-23 17:21:51 +11:00
hiker
07876a0899 Fixed linux compilation 2015-11-23 11:40:33 +11:00
Flakebi
6e36c223b9 Hold one kart properties object per player 2015-11-23 01:19:00 +01:00
hiker
064414afa3 Added server-side test to see if client is authorised to send commands. 2015-11-23 08:26:18 +11:00
Elderme
951b852ede Adding policies for each way to rendering meshes (depending on available OpenGL extensions) 2015-11-22 22:25:54 +01:00
hiker
da2671c6ee An 'authorised' client can now tell the server to select karts. 2015-11-23 08:08:23 +11:00
hiker
0f38d6fb8a Don't add same peer twice (which causes a crash when the peer disconnects etc) 2015-11-23 08:03:15 +11:00
Elderme
b26c152fce Added splatting materials in ShadowCommandBuffer 2015-11-22 16:22:25 +01:00
Elderme
b4d39f7d85 Improved interfaces 2015-11-22 16:13:34 +01:00
Deve
8a0927f574 Fixed minor inconsistency in video settings dialog.
Regression since 9b562d31f4
2015-11-22 15:33:46 +01:00
Benau
aa9220772f Merge remote-tracking branch 'origin/master' into battleAI 2015-11-22 15:01:41 +08:00
Benau
e1f1461488 Fix some bugs and copyright year 2015-11-22 15:01:22 +08:00
Flakebi
79c962dd79 Remove skidding properties and use characteristics instead 2015-11-22 00:40:11 +01:00
Flakebi
2f1d08edbd Add enabled property to skid characteristics 2015-11-21 23:27:00 +01:00
Flakebi
b4904b182f Fix merge 2015-11-21 23:15:54 +01:00
Flakebi
ffa85d2206 Merge remote-tracking branch 'upstream/master' into kart-properties 2015-11-21 23:03:58 +01:00
Flakebi
4778460f6c Apply script 2015-11-21 23:02:16 +01:00
Flakebi
4be02becac Add skiding properties to characteristics 2015-11-21 23:02:02 +01:00
Benau
62f5be0d9d First playable version of battle AI
TODO:
backwards firing
better handling to obstacles
ai karts number selection
win/lose screen handling

Please use a better navmesh to test
2015-11-21 15:58:03 +08:00
hiker
f05b6f6dd7 Improved handling of cancelling server creation. 2015-11-21 12:21:50 +11:00
hiker
815d663ee3 Revert "Removed unnecessary stkgui file." - it was the wrong file :P
This reverts commit e804fc281a.
2015-11-21 12:21:16 +11:00
hiker
093283c5b0 Avoid crash if networking was selected, but not actually started. 2015-11-21 12:20:05 +11:00
hiker
e804fc281a Removed unnecessary stkgui file. 2015-11-21 12:15:02 +11:00
hiker
1700395dc2 Fixed crash when no votes for a category have been received. 2015-11-21 12:01:45 +11:00
hiker
68bcd4bde3 Cosmetic changes only. 2015-11-21 11:49:15 +11:00
hiker
10bed9a20d Used more names for protocol commands, and use switch instead of if's. 2015-11-21 10:39:56 +11:00
Elderme
be1178871b Removed ListInstance* singletons 2015-11-20 22:39:42 +01:00
Elderme
db52543655 Removed GlowPassCmd singleton, now use new CommandBuffer class to render glow 2015-11-20 22:16:58 +01:00
hiker
3ab66592cd Only minor cosmetic changes. 2015-11-20 17:02:47 +11:00
hiker
7a2c7125e5 Used enums instead of numbers for lobby protocol subcommands. 2015-11-20 16:41:54 +11:00
hiker
73e14a964a Cosmetic changes only. 2015-11-20 08:16:41 +11:00
hiker
c3e74d344f Add warning message in case of an unknown command, and do not send
it to the servrer (which typically just confuses it).
2015-11-20 08:07:31 +11:00
Elderme
ea7fc05af4 Removed RSMPassCmd singleton class 2015-11-19 14:50:17 +01:00
Elderme
c0ca591827 Removed useless things in CommandBuffer and GeometryPasses classes, and removed ShadowPassCmd singleton class 2015-11-19 14:16:59 +01:00
hiker
683f0fdc07 Fixed incorrect index. 2015-11-19 14:21:56 +11:00
hiker
b55b91edf1 Use const & for std::string, cosmetic changes. 2015-11-19 14:20:10 +11:00
hiker
2b687e1051 Avoid crash when voting. 2015-11-19 14:19:01 +11:00
hiker
e7cc868c85 Removed uneccesary vector copy. 2015-11-19 14:18:34 +11:00
hiker
4813637a37 Cosmetic changes only. 2015-11-19 09:21:28 +11:00
hiker
5994123b98 Fixed crash. 2015-11-19 09:21:03 +11:00
hiker
ba4ccd5621 Added command line option to start a LAN server. 2015-11-18 17:24:56 +11:00
hiker
e6c2620c90 Print 'hide address' only in WAN mode; remove commented out code. 2015-11-18 13:44:25 +11:00
hiker
90b92419f3 Avoid crash in case that a player is not logged in online. 2015-11-18 08:15:22 +11:00
hiker
17f588bcf2 Fixed storing of EnetAddresses in TransportAddress. 2015-11-18 08:14:58 +11:00
Elderme
e36ba066fb Removed duplicate code in CommandBuffer class, and replaced singleton ShadowPassCmd by the new ShadowCommandBuffer class 2015-11-16 22:28:22 +01:00
hiker
29e0b50e14 Removed friend declaration; fixed crash caused by deleting the
ENetPeer when deleting an (STK) Event.
2015-11-17 08:11:07 +11:00
hiker
0ed22d0d6e Fixed debug message. 2015-11-16 18:46:04 +11:00
hiker
980cdf835d Avoid crash when clicking on (empty) list while server list is being refreshed. 2015-11-16 18:44:14 +11:00
hiker
785b9a9130 Don't try to hide address in LAN networking, other minor fixes. 2015-11-16 18:43:46 +11:00
Benau
f4b723de82 Merge remote-tracking branch 'origin/battleAI' into battleAI 2015-11-15 12:29:01 +08:00
hiker
4a3c4c552e LAN clients now start to connect to the server. 2015-11-13 08:50:03 +11:00
Elderme
5c02c58ded Now use new CommandBuffer class for reflective shadowmaps 2015-11-12 22:13:18 +01:00
hiker
af9018ea64 Moved Server and ServersManager into network directory. 2015-11-12 17:52:04 +11:00
hiker
6716dfce97 Removed unnecesary #include. 2015-11-12 12:04:36 +11:00
hiker
2e65b23539 Don't poll stk server if this is a LAN server. 2015-11-12 09:58:21 +11:00
hiker
5fc830825f Refactoring: Created a separate NetworkConfiguration class which stores
all information to create the STKHost.
2015-11-12 09:53:12 +11:00
hiker
51411a796a Minor refactoring of lan handling, added client's ip address and port
to the answer from the client (which can later be used when the
client requests a connection from a server).
2015-11-10 17:00:47 +11:00
hiker
833c20ceff Added comment. 2015-11-10 08:34:45 +11:00
hiker
8953547305 Store TransportAddress of server in servers data structure. Avoid
copying the currently connected server, instead avoid modifying the
server data structure while while a client is connected to a server.
2015-11-10 08:31:07 +11:00
hiker
3a9576f109 Removed unnecessary #include. 2015-11-10 08:11:03 +11:00
hiker
0074550f57 Fixed typo. 2015-11-10 08:09:05 +11:00
hiker
0a23198be1 Cosmetic changes only. 2015-11-10 08:08:41 +11:00
hiker
36ebe29649 Fixed typo. 2015-11-10 08:08:22 +11:00
hiker
cdbc5cf15d One more linux compilation fix. 2015-11-09 21:51:05 +11:00
hiker
d4856f6d64 Added missing #include for memcpy. 2015-11-09 21:38:18 +11:00
hiker
453ce8cf60 Added LAN server discovery. 2015-11-09 20:51:00 +11:00
Elderme
97d497a0b5 Merge with master and solved conflicts 2015-11-08 21:54:10 +01:00
Elderme
84592ef631 Removed singleton class SolidPassCmd 2015-11-08 21:16:29 +01:00
Elderme
c1eb0bbe73 Moved Materials definition in a separate Materials file 2015-11-07 22:10:32 +01:00
Elderme
928dd8d24d Partially replaced singleton SolidPassCmd by DrawCalls class 2015-11-07 15:01:00 +01:00
hiker
9d9b83059d Fixed deadlock (when while handing a request another request was queued). 2015-11-07 00:19:16 +11:00
hiker
60f550e9d1 Fixed coding style, removed unnecessary #include in hpp file. 2015-11-06 16:50:58 +11:00
hiker
47a7bd1caf Print correct protocol name in 'has been terminated" message. 2015-11-06 16:32:18 +11:00
hiker
00843b8685 Fixed typos. 2015-11-06 16:30:34 +11:00
hiker
541509f29a Added new requestPause and requestUnpause commands for protocols,
minor code cleanups and improvements.
2015-11-06 16:11:12 +11:00
hiker
e14bc572b6 Fixed typo in comment (thanks to leyyin). 2015-11-05 23:35:37 +11:00
hiker
847a788a9c Removed server creation request (which is now down automatically
from STKHost).
2015-11-05 23:34:27 +11:00
hiker
bec317b9ed Added documentation to the table use and protocol between
game server/client and the stk server.
2015-11-05 08:03:06 +11:00
hiker
c99ad34cb0 Coding style changes. 2015-11-05 08:02:17 +11:00
hiker
73c59db858 Reverted to previous version of protocol (since it is not yet
supported by the server).
2015-11-05 08:01:37 +11:00
hiker
4fc46c510f Fixed too early release of objects, and some state changes in finite state machine. 2015-11-05 08:00:45 +11:00
hiker
b7b37b9ec9 Updated documentation. 2015-11-05 07:59:28 +11:00
hiker
35793d99c8 Create an STKHost client instance if a connection to client is
requested. The rest of the protocol is handled from STKHost.
2015-11-05 07:57:49 +11:00
hiker
f2aa1ddea6 Code cleanup. 2015-11-05 07:55:59 +11:00
hiker
bdf34edc00 Removed --client command line option (since this command needs a
server id to work).
2015-11-05 07:54:58 +11:00
Elderme
331cc0827f Fixed bug in CommandBuffer class 2015-11-02 22:27:37 +01:00
hiker
dc80fb1c11 Updated docs. 2015-11-02 16:24:05 +11:00
hiker
eab07b31dd Hide RefreshRequest class. 2015-11-02 16:14:38 +11:00
hiker
6946306c4c Fixed memory leak (thanks to CruzR). 2015-11-02 10:55:17 +11:00
hiker
7c51be7724 Removed need for m_fake_refrehs, some coding style improvements. 2015-11-02 09:16:39 +11:00
hiker
c0817d29d3 Minor coding style update. 2015-11-02 09:16:09 +11:00
hiker
d7d2115abd Removed setupClient (which is now done in the constructor). 2015-11-02 09:14:35 +11:00
hiker
0b62d2f82b Created two different constructors for STKHost - one for server, one for client. 2015-11-02 08:11:51 +11:00
hiker
6add49b065 Allow WAN server creation from GUI. 2015-11-01 23:42:24 +11:00
hiker
f05ee47e2b Moved lan/wan setting to static functions in STKHost. 2015-11-01 22:16:57 +11:00
hiker
15e3ac021f Fix ending STK when no STKHost exists. 2015-11-01 21:28:39 +11:00
hiker
1334a467e3 Don't start a STKHost if neither client nor server is requested. 2015-11-01 19:45:28 +11:00
hiker
4aea491ed0 Merge remote-tracking branch 'origin/master' into refactor_networking 2015-10-31 11:41:43 +11:00
hiker
f2ae36fc65 Simplified ConnectToPeer (no more fsm). 2015-10-31 11:40:41 +11:00
Elderme
6ba82eaac9 Removed several singletons and added a CommandBuffer class 2015-10-30 15:23:15 +01:00
hiker
8585afb713 Minor code cleanup. 2015-10-30 17:00:57 +11:00
hiker
94bc18df52 Removed ShowPublicAddress protocol, instead submit blocking
request in ConnectToServer.
2015-10-30 16:45:43 +11:00
hiker
dd289dc1cd Removed polling for GetPublicAddress with callback. 2015-10-29 18:58:18 +11:00
hiker
ef310a5666 Renamed types.hpp to transport_address.hpp. 2015-10-29 18:39:01 +11:00
hiker
83154ae3a7 Converted the CallbackObject to actually call a function. This
means that if protocol A starts protocol B and needs a result from B,
previously B would set a (potential private) variable in A. Now
B calls a callback in A, where the result can be set.
2015-10-29 18:27:55 +11: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
Deve
af68dd9046 Fixed compilation 2015-10-28 22:28:12 +01:00
hiker
966d31dc45 Cosmetic changes, removed unused and unimplemented 'stop protocol' support. 2015-10-28 17:22:09 +11:00
hiker
cf9ce6674c Removed unused class. 2015-10-28 17:08:01 +11:00
hiker
5df6c225ef Cosmetic changes only. 2015-10-28 08:57:05 +11:00
hiker
e919b97037 Removed unnecessary getProtocolState functions. 2015-10-28 08:24:05 +11:00
hiker
2909e42a25 Minor code cleanup for ConnectToPeer handling. 2015-10-28 08:21:35 +11:00
hiker
7e202d94a8 Removed hardcoded maximum number of players. 2015-10-28 08:03:05 +11:00
hiker
60bbfe3ab3 Remved StartServer protocol, and used executeNow() in ServerLobby instead. 2015-10-28 08:01:46 +11:00
hiker
e212276dd2 Move enet initialisation into STKHost. 2015-10-27 16:58:40 +11:00
hiker
10f8f6b3a5 Removed unnecessary function, added some docs. 2015-10-27 16:46:26 +11:00
hiker
f7f12d5431 Renmated ServerConsole to NetworkConsole. 2015-10-27 16:38:22 +11:00
hiker
c511fc48af Added leak checking. 2015-10-27 08:44:28 +11:00
hiker
b47b8bd196 Removed empty file. 2015-10-27 08:25:52 +11:00
hiker
6297d8c65d Removed NetworkManager and ClientNetworkManager. 2015-10-27 08:23:59 +11: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
hiker
7d04cc78de Fixed printing of type name. 2015-10-27 00:26:14 +11:00
hiker
90b8db9993 Start to remove ClientNetworkManager. 2015-10-27 00:23:20 +11:00
hiker
a58f408a99 Merge branch 'refactor_networking' of https://github.com/supertuxkart/stk-code into refactor_networking 2015-10-26 21:31:11 +11:00
hiker
1e9afd473d Removed isClient/isServer from NetworkManager. 2015-10-26 21:30:41 +11:00
hiker
5564239773 Removed NetworkManager::run(). 2015-10-26 18:33:23 +11:00
hiker
b788aa6e95 Removed NetworkManager::isConnectedTO 2015-10-26 18:31:32 +11:00
hiker
d45d5a1051 Fixed type name debug print. 2015-10-26 18:29:28 +11:00
hiker
334780b5d7 Moved sendPacket from NetworkManager to STKHost. 2015-10-26 18:26:53 +11:00
hiker
51d39879b4 Moved NetworkManager::connect and STKPeer::connextTo functions into STKHost. 2015-10-26 18:01:07 +11:00
hiker
0bd2b48ea0 Removed sendPacket function and destructor. 2015-10-26 17:55:19 +11:00
hiker
cf51d2f0e0 Added missing object deletions. 2015-10-26 17:54:19 +11:00
hiker
4c0a195fdd Moved handling of peers from NetworkManager to STKHost. 2015-10-26 08:33:07 +11:00
hiker
c273e709eb Fixed linux compilation. 2015-10-26 08:25:43 +11:00
hiker
f610573295 Removed unnecessary function. 2015-10-25 20:28:35 +11:00
hiker
85cca69113 Moved GameSetup handling from NetworkManager to STKHost. 2015-10-25 00:19:30 +11:00
hiker
34f0d1b349 Moved public address data from NetworkManager to STKHost. 2015-10-24 23:30:34 +11:00
hiker
350f434c37 Started to refactor network code. 2015-10-24 12:39:17 +11:00
Elderme
4452661533 Removed singletons (objects added as DrawCalls members) 2015-10-22 18:09:11 +02:00
Elderme
51415ed43a Minor coding style improvements 2015-10-20 21:32:56 +02:00
Elderme
e609aa61fc Minor coding style improvements 2015-10-18 22:05:02 +02:00
Elderme
236d90c36d Modified templates in draw_tools to make them more generic and removed duplicated code 2015-10-18 19:20:05 +02:00
Elderme
73c0b010ff Started splitting geometry_passes in smaller files 2015-10-18 15:52:52 +02:00
Elderme
c1e709b320 Start moving draw calls generation into a dedicated class 2015-10-14 13:40:12 +02:00
Elderme
878570f7c1 Moved m_shadow_matrices from IrrDriver to Renderer class 2015-10-12 13:44:49 +02:00
Elderme
7590a90e67 Improved LightingPasses interfaces 2015-10-10 16:06:03 +02:00
Elderme
0ebadf7963 Improved LightingPasses interfaces 2015-10-09 22:19:57 +02:00
Elderme
84d3f19daf Improved coding style 2015-10-06 22:35:17 +02:00
Elderme
017c609154 Start removing dependency to irr_driver in LightingPasses class 2015-10-06 22:29:00 +02:00
Elderme
cf7bb82e8a Remove irr_driver dependency in GeometryPasses class 2015-10-04 13:58:54 +02:00
Flakebi
abc2ae54ea Use correct cached characteristics 2015-10-03 20:14:39 +02:00
Flakebi
37ca28e868 Use cached characteristics 2015-10-03 18:15:29 +02:00
Flakebi
a789f346ad Add comments 2015-10-03 17:45:25 +02:00
Flakebi
cb4dd91e08 Apply script 2015-10-03 17:23:40 +02:00
Flakebi
4a9bc60e93 Try to follow coding style guidelines more 2015-10-03 17:23:40 +02:00
Flakebi
5e6e85ab79 Merge branch master into kart-properties 2015-10-03 15:20:06 +02:00
Elderme
ff6e6c8340 Merge branch 'master' into renderer_refactoring 2015-09-29 22:21:25 +02:00
Elderme
fcb485d3d8 Moved irr_driver geometry rendering functions into GeometryPasses class 2015-09-29 22:19:08 +02:00
Elderme
f56baaefcb split shader_based_renderer into smaller objects 2015-09-20 21:14:01 +02:00
Elderme
b7ab99e5e2 Merged with master and solved conflicts 2015-09-18 11:05:27 +02:00
Elderme
b2a23acd46 Moved more methods from irr_driver to renderer 2015-09-18 10:45:00 +02:00
Elderme
44adc14cff Removed debug meshes rendering methods in irr_driver (these methods are now in abstract_renderer class) 2015-09-07 22:31:34 +02:00
Elderme
417bfb89e9 Fixed compilation error with debug mode 2015-09-06 16:15:15 +02:00
Elderme
9916b9073b Fixed crash with fixed pipeline 2015-08-21 21:44:55 +02:00
Elderme
b411028210 Removed irr_driver renderFixed and renderGLSL methods: now render method from FixedPipelineRenderer or ShaderBasedRenderer is used 2015-08-21 14:00:00 +02:00
Elderme
c711ce117e Added new classes for rendering 2015-08-20 22:46:22 +02:00
Flakebi
586724c855 Merge branch 'master' into kart-properties
Conflicts:
	src/karts/kart.cpp
2015-08-19 12:03:43 +02:00
Flakebi
b51eadae28 Merge branch 'master' into kart-properties 2015-08-16 16:45:47 +02:00
Flakebi
1c29ce7636 Fix little issues and remove wheel position from characteristics 2015-08-16 16:23:06 +02:00
Flakebi
acbc629610 Add a script that automates the code replacements
Various other things:
 - Try to use newer c++ features
 - Rename travelcm
 - Remove wheel radius
2015-08-16 15:54:05 +02:00
Flakebi
ec3083827d Add some documenation and try to get some backwards compatibility 2015-07-29 23:02:16 +02:00
Flakebi
5d36b95c95 Merge remote-tracking branch 'upstream/master' into kart-properties
Conflicts:
	data/stk_config.xml
	sources.cmake
	src/karts/kart.cpp
	src/karts/kart.hpp
	src/karts/kart_properties.cpp
	src/karts/kart_properties.hpp
	src/tracks/track.cpp
2015-07-29 02:48:43 +02:00
Flakebi
37e78e85a6 Forgot to convert string to char* 2015-07-29 02:25:32 +02:00
Flakebi
324a93cd65 Fix karts without a type 2015-07-24 02:10:23 +02:00
Flakebi
2620a77dc1 Adjust and remove properties 2015-07-13 00:23:05 +02:00
Flakebi
a61ad88ee6 Move more properties 2015-07-13 00:08:35 +02:00
Flakebi
ffca848a33 Remove more outdated variables 2015-07-12 01:29:17 +02:00
Flakebi
1317714ba1 Adjust the speed and power values 2015-07-12 01:09:01 +02:00
Flakebi
5bfb1a2c6b Fix some bugs 2015-07-12 00:39:38 +02:00
Flakebi
db13a1fae6 Remove data from stk_config.xml 2015-07-11 19:33:13 +02:00
Flakebi
9fc6f84545 Switch from properties to characteristics 2015-07-11 19:22:27 +02:00
Flakebi
1ceab872b1 Remove PlayerDifficulty class 2015-07-11 16:16:40 +02:00
Flakebi
eb19bf571e Load and combine characteristics 2015-07-11 15:38:52 +02:00
Flakebi
0ecc76090b Add kart types 2015-07-10 01:14:08 +02:00
Flakebi
a305b357a3 Change characteristics to characteristic and add player characteristics 2015-07-10 00:36:50 +02:00
Flakebi
cb797c3145 Remove unnecessary move and add a bit documentation 2015-07-08 22:07:46 +02:00
Flakebi
2272002d5c Implement processFloat 2015-07-08 16:55:11 +02:00
Flakebi
c22d5c8e6e Add more to xml reading 2015-07-08 16:55:11 +02:00
Flakebi
cedd816ca1 Extend InterpolationArray 2015-07-08 16:55:11 +02:00
Flakebi
35aeeea6c6 Add getName for enum 2015-07-08 16:55:10 +02:00
Flakebi
17b775959c Change reference to pointer 2015-07-08 16:55:10 +02:00
Flakebi
c1ed8790ef Add xml reading 2015-07-08 16:55:10 +02:00
Flakebi
ddb850b149 Add new files 2015-07-08 16:55:10 +02:00
Flakebi
2b9a7a2016 More work 2015-07-08 16:55:10 +02:00
Flakebi
78b4634363 Work 2015-07-08 16:55:10 +02:00
Flakebi
a3f94f6b67 Update abstract characteristics with script generated content 2015-07-08 16:55:10 +02:00
Flakebi
3414f7cb91 Add script to create characteristics file 2015-07-08 16:55:10 +02:00
Flakebi
483993d2d8 Start with getters 2015-07-08 16:55:10 +02:00
Flakebi
5dec3c4602 Add characteristics 2015-07-08 16:55:10 +02:00
Flakebi
fc8a726156 Add config file for kart characteristics 2015-07-08 16:54:35 +02:00
Marianne Gagnon
3f167f6728 Do not load glossmaps when they are disabled 2015-03-26 18:31:16 -04:00
Vincent Lejeune
cbf9e03b41 honour vsync param 2015-02-01 19:43:43 +01:00
Vincent Lejeune
1844ab2a7c Fix attempt for void scene in non advanced pipeline 2015-02-01 19:38:47 +01:00
Vincent Lejeune
d2ececacf4 Delay sync 2015-02-01 19:23:05 +01:00
Vincent Lejeune
da449e02d0 Improve keypad support 2015-02-01 19:18:47 +01:00
Vincent Lejeune
73a8220203 Improve mouse support 2015-02-01 19:13:37 +01:00
Vincent Lejeune
874d63f5bc WIP wayland 2015-02-01 18:53:12 +01:00
nixt
887a86d3a6 Only set kart gravity when the material sets gravity. 2014-08-09 13:09:47 +05:30
nixt
cfa8e29523 Add comments. 2014-08-09 13:07:07 +05:30
nixt
c4cfb83150 enable sliding for upside down tracks. 2014-08-09 13:06:42 +05:30
nixt
e3dea1da02 Forgot to add // functionName 2014-08-07 15:34:20 +05:30
nixt
b4b2f6988b Add documentation and some cleanup. 2014-08-07 15:28:21 +05:30
nixt
c915f231ee Merge remote-tracking branch 'upstream/master' into walldriving
Conflicts:
	src/graphics/irr_driver.cpp
2014-08-07 01:38:42 +05:30
nixt
1f4ecc2464 Cleanup irr_driver.cpp and remove ai_debug from skidding_ai 2014-08-07 01:38:01 +05:30
nixt
058cec9f65 Make items align with the track triangle instead of the driveline quad. 2014-08-06 00:19:53 +05:30
nixt
1f435142db Merge remote-tracking branch 'upstream/master' into walldriving 2014-08-02 02:36:35 +05:30
nixt
8431fcfef2 Prevent crash in modes where there is no QuadGraph 2014-08-02 02:35:14 +05:30
nixt
f40fb50386 Fix "Wrong Direction" message 2014-08-01 04:01:28 +05:30
nixt
fbf002bfc6 Disable debug messages 2014-07-31 18:15:37 +05:30
nixt
21328d0e05 Fix a steering bug where the kart will try to steer back to the current quads center. 2014-07-31 01:07:37 +05:30
nixt
c05840f9ab Ground closeness is now checked using dist. between hitpoint and kart's xyz. Also disable rescue when debug flying. 2014-07-30 23:56:57 +05:30
nixt
5077540beb Avoid an assertion failure when re-aligning items, the angle is zero. 2014-07-30 23:55:37 +05:30
nixt
393aa86c31 Fix explosion animation 2014-07-29 01:53:21 +05:30
nixt
52f773f19b Disable debug messages. 2014-07-29 00:36:36 +05:30
nixt
5912dd2dd6 Merge remote-tracking branch 'upstream/master' into walldriving
Conflicts:
	src/karts/kart.cpp
2014-07-29 00:18:52 +05:30
nixt
4cc406062f Fix the initial raycast to make it go towards the track. 2014-07-25 20:31:42 +05:30
nixt
51a460e3cf Merge branch 'walldriving' of https://github.com/lurk26/stk-code into walldriving 2014-07-25 15:12:10 +05:30
nixt
051ee24173 Fix item orientation bug. Items should now appear correctly. 2014-07-25 15:11:49 +05:30
hiker
78cdc3bd69 Fixed rescue bug: the kart orientation adjustment would cause a collision
with the track on rescue. For now disable the orientation if the kart is
close to the ground. A proper solution will be implemented as part of the
soft-landing branch.
2014-07-24 21:38:58 +10:00
hiker
43124f05fe Merge branch 'walldriving' of github.com:lurk26/stk-code into walldriving 2014-07-24 21:38:33 +10:00
nixt
a8a6435657 Merge remote-tracking branch 'upstream/master' into walldriving 2014-07-23 20:14:21 +05:30
nixt
abd07e0dc5 Merge branch 'walldriving' of https://github.com/lurk26/stk-code into walldriving 2014-07-23 20:01:38 +05:30
nixt
2673e59844 Fix a bug where the rubber ball would collide with the ceiling in a tunnel. 2014-07-23 20:00:15 +05:30
nixt
f19afc98cf Fix plunger to work on vertical tracks. 2014-07-23 19:59:20 +05:30
hiker
0c49b87ed7 Merge remote-tracking branch 'upstream/master' into walldriving 2014-07-23 17:07:07 +10:00
hiker
de46494482 Merge branch 'walldriving' of github.com:lurk26/stk-code into walldriving 2014-07-23 08:12:53 +10:00
hiker
0ef42111bc Fixed rescue transform: the heading rotation need to be done around
(0,1,0), not around the normal, and the order of rotation needs to be
first the heading rotation, then pitch/roll to make the kart parallel
to the ground.
2014-07-23 08:11:30 +10:00
hiker
f0ea8a1a38 Simplify up-offset computation. 2014-07-23 08:03:10 +10:00
hiker
6c02849df3 Avoid use of quaternions, simplify rescue animation. Heading is currently
unchanged, but it looks ok-ish.
2014-07-23 08:02:13 +10:00
hiker
20603a2084 Try better computation of heading (which might be better if the kart
is not in the xz plane).
2014-07-23 07:59:47 +10:00
nixt
8a4911d41d Rubber ball (Basketball) now fixed for non-horizontal tracks. 2014-07-22 16:36:08 +05:30
hiker
413c062932 Simplify code by using the kart's normal. 2014-07-21 16:24:44 +10:00
nixt
6e2d92ec20 Remove old comment 2014-07-20 18:29:59 +05:30
nixt
97c628faca New implementation for the cake throwing code that finds the angle velocity of the cake to hit a target in an arbitrary orientation. 2014-07-20 18:27:51 +05:30
nixt
c0c4dab805 Update rubber ball for non-horizontal tracks 2014-07-20 18:24:47 +05:30
nixt
8d7f09e037 Update bowling ball to follow the track. Also updated cake, but it needs more work. 2014-07-16 10:58:40 +05:30
nixt
cf354e2828 set m_glsl = false; because AI_DEBUG not supported in the new pipeline. 2014-07-15 13:39:19 +05:30
nixt
cd7a46cefd Merge remote-tracking branch 'upstream/master' into walldriving 2014-07-11 12:45:51 +05:30
nixt
c7d4a8c85c Disabled AI_DEBUG because its currently not supported. 2014-07-10 00:38:14 +05:30
nixt
732c3a4b2f Merge remote-tracking branch 'upstream/master' into walldriving
Conflicts:
	src/graphics/irr_driver.cpp
	src/karts/kart.cpp
2014-07-09 23:40:26 +05:30
nixt
6fc144dd8a Item collection and avoidance now works with 3D tracks!
Also improved AI steering where it would cut corners too aggressively.
2014-07-09 23:22:20 +05:30
nixt
2556ef2246 Increase value of m_distance_2 in Item.hpp (needs testing/tweaking)
Increase value of m_distance_2 because distances from a 3D line as
checked in hitLine() can be greater but the kart may still hit the item.
This may need to be tweaked.
2014-07-09 23:07:17 +05:30
nixt
523d38c76b Change hitLine so that it checks for closeness with a 3D line. 2014-07-09 23:02:25 +05:30
nixt
504360ef7e Correct getDistance and m_line for 3D.
Line joining lower_center to upper_center of quad is now a 3D line.
getDistances is now fixed to return the correct distance of a point from
m_line and with the correct direction.
2014-07-09 22:56:01 +05:30
nixt
9220d50035 Revert "Correct spatialToTrack and getDistances to work in 3D."
This reverts commit 5f15138247.
2014-07-09 00:09:48 +05:30
nixt
5f15138247 Correct spatialToTrack and getDistances to work in 3D. 2014-07-04 21:41:12 +05:30
nixt
2985974f83 Tilt items on track 2014-07-04 21:40:23 +05:30
nixt
dbe4cd02fa First attempt at correcting the rescue animation. 2014-07-04 12:43:34 +05:30
nixt
437f8191f4 Fix a bug where the kart's wheels would intersect with the road when rescued to an upside location. 2014-07-03 17:24:04 +05:30
nixt
184e45bb6d Correct the landing after rescue for non-horizontal tracks. 2014-07-03 11:13:49 +05:30
nixt
64c2292051 Revert "Some smoothing to the changing gravity.."
This reverts commit 8011f5b40d.
2014-06-30 19:18:48 +05:30
nixt
4c8e67556c Merge remote-tracking branch 'upstream/master' into walldriving 2014-06-30 17:44:41 +05:30
nixt
8011f5b40d Some smoothing to the changing gravity.. 2014-06-30 17:41:20 +05:30
nixt
4b303814fa Some cleanup 2014-06-30 16:43:51 +05:30
nixt
1aaf3fbcc5 Fix a bug in code related to alternate paths. 2014-06-30 16:43:28 +05:30
nixt
4b36197787 Fixed reverse mode. 2014-06-30 16:42:20 +05:30
nixt
1bf287d4cc Avoid use of C++11 std::array. 2014-06-28 16:17:09 +05:30
nixt
450d8d1ed2 Enable AI to take alternate paths. More testing needed. 2014-06-28 16:16:24 +05:30
nixt
e0d2777c7d [Optimization] Moved code for computing quad bounding boxes to constructor. 2014-06-23 12:47:24 +05:30
nixt
0a66a6f7dd Workaround to enable visual aids for track debugging. 2014-06-22 18:05:16 +05:30
nixt
55617da42c Merge remote-tracking branch 'upstream/master' into walldriving
Conflicts:
	src/graphics/irr_driver.cpp
2014-06-22 18:03:52 +05:30
nixt
c489f5ca19 Fix compilation problem in linux 2014-06-22 17:16:23 +05:30
nixt
3a7fc1e0f9 The AI can now finally drive a loop in newton. 2014-06-22 13:09:05 +05:30
nixt
c1dd87d95b Fix copy-paste error in pointInQuad function. 2014-06-22 13:07:38 +05:30
nixt
be43273f80 Change how angle_to_track is determined. Now it uses the kart velocity instead of the heading. 2014-06-22 11:51:58 +05:30
nixt
f1c675fce9 Adjust angle to next computation to work with 3D quads. 2014-06-22 11:49:29 +05:30
nixt
70ad2d58db Remove test for vertical distance of kart from sector. 2014-06-22 11:43:54 +05:30
nixt
fc7692819a Adapt steerToPoint to work in 3D 2014-06-19 18:12:25 +05:30
nixt
652af9a0a1 Adapt findNonCrashingPoint to work in 3d 2014-06-19 18:12:10 +05:30
nixt
0c3cded260 get distances would crash by accessing m_node_index + quad_idx . This quad does not exist when m_node_index is the last quad. 2014-06-19 18:11:18 +05:30
nixt
2249a73c50 Fix flattened quads. rotateVect was reading and writing to the same location earlier. 2014-06-19 18:07:52 +05:30
nixt
a06ec9407a New function GraphNode::getDistanceUnrolled to find distances from the unrolled quads 2014-06-18 08:45:16 +05:30
nixt
c3eae006f9 New function spatialToTrackUnrolled to track points on the unrolled quads. 2014-06-18 08:44:06 +05:30
nixt
46638c0d83 Change function name to an appropriate one. 2014-06-18 08:42:24 +05:30
nixt
7acfec7866 Some utility functions. 2014-06-17 13:29:39 +05:30
nixt
886345b818 Unrolled quads are now almost correct.
After continuous trial and error, dropped using the flattened quads as
it was causing the quads to shear (not sure why). Now unrolled quads
have orientation in 3D starting from the parent quad.
2014-06-17 12:44:42 +05:30
nixt
374b8753b4 Drop the Y (set to 0) value for flattened quads 2014-06-16 17:04:16 +05:30
nixt
ce0a3db195 Fix unrolled quads 2014-06-16 17:03:31 +05:30
nixt
39f76b02ff Temporary function to create a debug mesh for unrolled quads 2014-06-16 14:38:03 +05:30
nixt
40f205dd0f Function to get a point transformed to the reference of the flattened quad 2014-06-16 12:14:38 +05:30
nixt
306e856464 Build a vector of unrolled quads for each graph node. 2014-06-16 10:05:37 +05:30
nixt
64b21b0fff Flattening of quads. Each quad now has a n associated flattened (rotated) quad which is more or less in the XZ plane. 2014-06-14 02:53:20 +05:30
nixt
4ce4861925 Do not reset gravity when kart is flying.
Simply commented out setGravity(), will do a proper cleanup once fully
tested.
2014-06-14 02:52:29 +05:30
nixt
94481097b6 Temporary workaround to make track debug work. 2014-06-12 10:08:02 +05:30
nixt
def4b27124 Fix inverted sign on quad normals and epsilon. 2014-06-12 10:05:38 +05:30
nixt
5ba60d4c36 Merge remote-tracking branch 'upstream/master' into walldriving 2014-06-12 06:29:29 +05:30
nixt
f3a5677e78 Using quad normals to find material and set gravity. (not yet functional) 2014-06-12 06:23:05 +05:30
nixt
b5017dd452 Revert "New function in AIBaseController and PlayerController(previous commit) that returns the normal of the current quad."
This reverts commit 2e27e0065d.
2014-06-12 04:56:10 +05:30
nixt
579c26048b Revert "Tracking of Player kart on the quad graph."
This reverts commit 10a124825c.
2014-06-12 04:55:21 +05:30
nixt
9e95fb4a7a Update terrain info based on start position and a direction. 2014-06-09 17:44:39 +05:30
nixt
2e27e0065d New function in AIBaseController and PlayerController(previous commit) that returns the normal of the current quad. 2014-06-08 03:02:16 +05:30
nixt
10a124825c Tracking of Player kart on the quad graph.
This is needed because the player kart's gravity will also be adjusted
depending on which quad(track node) it is on.
2014-06-08 02:48:20 +05:30
nixt
182122720e Undo workaround for operator-(Vec3, btVector3) and remove Log message for debugging. 2014-06-06 06:43:41 +05:30
nixt
b81a8fb0a7 Forgot to change all instances of pointInQuad to pointInQuad3D 2014-06-06 05:41:13 +05:30
nixt
377c84547e Merge remote-tracking branch 'upstream/master' into walldriving 2014-06-06 05:19:32 +05:30
nixt
527a8d674b 3D kart localization implemented. 2014-06-06 05:15:11 +05:30
nixt
8e9d518aa2 Increase curve radius to reduce braking when kart is close. 2014-03-07 07:41:55 +05:30
nixt
28b089592d Merge remote-tracking branch 'upstream/master' 2014-03-07 05:17:59 +05:30
nixt
a840e3a81f Enable item collection and reduce item search radius. 2014-03-07 05:14:10 +05:30
nixt
c192d5e53d Fix nested namespace error and some warnings 2014-03-06 06:15:09 +05:30
nixt
c3bd527b8c Merge remote-tracking branch 'upstream/master'
Conflicts:
	data/shaders/ssao.frag
2014-03-06 04:25:17 +05:30
nixt
1c13034a21 Turn off item collection for the moment 2014-03-06 04:18:42 +05:30
nixt
39c3aff8ae Add basic item collection 2014-03-06 03:51:02 +05:30
nixt
28309e0afd Add more documentation. 2014-02-20 19:42:45 +05:30
nixt
c13b263ba0 Add lots of comments. 2014-02-16 02:52:03 +05:30
nixt
d8a1949160 Merged from main repo 2014-02-14 22:26:10 +05:30
nixt
7b8629232f Implemented the funnel algorithm for pathfinding. 2014-02-14 21:47:32 +05:30
nixt
39ef5f1655 Merge remote-tracking branch 'origin/master' into battleAI 2014-02-09 00:37:48 +05:30
nixt
d1d83459d0 Merged from master 2014-02-07 23:40:09 +05:30
nixt
5e64f02685 Add a comment to three_strikes_battle.cpp 2014-02-07 23:13:51 +05:30
nixt
e6ba8c3b1d Fix some errors due to merge 2014-01-23 04:05:29 +05:30
nixt
cc78233258 Merged from master 2014-01-23 03:17:32 +05:30
nixt
9e3b338965 Implemented portal extraction for string-pulling (funnel algorithm). Implemented braking but its untested.
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/branches/battleAI@14898 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2014-01-04 00:13:09 +00:00
nixt
83d91b7b07 Merge from trunk, pending.
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/branches/battleAI@14776 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2013-12-24 04:34:57 +00:00
nixt
a72175b3b7 Adding more missing files, fourth installment.
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/branches/battleAI@14708 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2013-12-11 05:09:36 +00:00
nixt
50e746eccc Add/update missing files from trunk, third installment.
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/branches/battleAI@14707 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2013-12-11 05:05:28 +00:00
nixt
cd20059fc0 Adding missing files from trunk, in second installment, because SVN simply hates me.
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/branches/battleAI@14706 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2013-12-11 04:53:42 +00:00
nixt
8d7c867c59 Added missing files from trunk.
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/branches/battleAI@14705 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2013-12-11 04:46:09 +00:00
hikerstk
a01c98302e On nixt's requests I removed the online subdirectory so that he can try
to fix his inconsistent/broken svn checkout.


git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/branches/battleAI@14704 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2013-12-11 03:53:38 +00:00
hikerstk
7aee2035ea Fixed crash.
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/branches/battleAI@14703 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2013-12-11 02:50:39 +00:00
nixt
ba4e573797 Merge from trunk, some files were left out.
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/branches/battleAI@14690 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2013-12-09 19:23:17 +00:00
nixt
7de27d234a Add missing shaders to my branch.
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/branches/battleAI@14689 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2013-12-09 14:12:18 +00:00
nixt
eaacb20c90 fix nested template arguments angle bracket spacing for gcc.
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/branches/battleAI@14685 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2013-12-09 12:48:30 +00:00
nixt
13ddb2bfbe Fixed redeclaration of m_debug_sphere. Improved AI turning while reversing.
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/branches/battleAI@14684 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2013-12-09 12:38:34 +00:00
nixt
420e73d102 Improved kart reverse when stuck. Fixed a bug in ThreeStrikesBattle::updateKartNodes().
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/branches/battleAI@14673 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2013-12-09 00:02:15 +00:00
nixt
04a5d17de3 Merge from trunk recent changes.
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/branches/battleAI@14671 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2013-12-08 21:15:01 +00:00
nixt
acd7a64802 Huge merge from trunk, part 2.3 (splitting commits because they keep failing)
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/branches/battleAI@14669 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2013-12-08 20:47:10 +00:00
nixt
09a966b2d7 Huge merge from trunk, part 2.2 (splitting commits because they keep failing)
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/branches/battleAI@14668 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2013-12-08 20:33:54 +00:00
nixt
65a7bd0d84 Huge merge from trunk, part 2.1 (splitting commits into small parts because they keep failing for some reason)
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/branches/battleAI@14667 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2013-12-08 20:25:11 +00:00
nixt
43f1c59a6e Huge merge from trunk, part 1.
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/branches/battleAI@14659 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2013-12-08 03:45:57 +00:00
nixt
1c8dfb72e6 Last commit failed due to permission error. Testing to see if this commit succeeds.
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/branches/battleAI@14658 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2013-12-08 03:35:17 +00:00
nixt
a49a990a99 Improved kart localization on the nav map. The old location is mainted when a kart moves out of the nav map and cannot be found on it.
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/branches/battleAI@14654 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2013-12-08 00:11:40 +00:00
nixt
20d30bc09d BattleAI: Karts can now get un-stuck. They will reverse while turning in the opposite direction.
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/branches/battleAI@14653 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2013-12-08 00:00:20 +00:00
nixt
96d5666a08 Code refactoring: Moved AIBaseLapController::crashed()and its associated vars to AIBaseController::crashed(). Created update() and reset() in AIBaseController which are now called from AIBaseLapController's respective update/reset. Hopefully I didn't break the skidding AI.
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/branches/battleAI@14646 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2013-12-06 17:16:35 +00:00
nixt
c23f962119 Reimplemented the Floyd-Warshall path reconstruction to fix a bug where the next poly returned would actually be a poly close to the destination instead of being close to source polygon. This ensures AI follows right path and gets stuck less often.
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/branches/battleAI@14630 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2013-12-04 13:33:36 +00:00
nixt
1f6e23ead9 Implemented another debug feature: Debug spheres (red) that show where the AI kart is aiming. http://postimg.org/image/mwhbys39p/
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/branches/battleAI@14624 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2013-12-04 00:13:48 +00:00
nixt
fab8829cf8 Declared m_ai_debug at wrong location. fixed.
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/branches/battleAI@14623 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2013-12-04 00:07:09 +00:00
nixt
c6cbf487c9 A new unified function ThreeStrikesBattle::updateKartNodes() that localizes all karts (AI and player) on the polygon map.
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/branches/battleAI@14618 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2013-12-03 16:43:07 +00:00
nixt
41fa68f948 Applied a pending merge.
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/branches/battleAI@14617 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2013-12-03 16:28:57 +00:00
nixt
a31c314cb4 Major update to Battle AI. AI can localize itself on the navigation mesh. Battle graph is now stored as adjacency matrix instead of adjacency list.
Implemented pathfinding (Floyd-Warshall), AI can now find a path from one sector to another. As a proof of concept: AI can almost follow a player kart. Some code refactoring is in order before further development.

git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/branches/battleAI@14340 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2013-10-29 05:47:11 +00:00
nixt
1c75270912 merged updates from trunk to branch
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/branches/battleAI@14308 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2013-10-25 14:21:04 +00:00
nixt
a1ee115963 Split AIBaseController to AIBaseController and AIBaseLapController. Moved the functions independent of QuadGraph to AIBaseController. Added AIBaseController as friend of AIProperties. New class for BattleAI which inherits from AIBaseController. Its messy, need hiker.
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/branches/battleAI@14294 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2013-10-23 01:14:08 +00:00
nixt
3f9bf2ec47 Merged changes from trunk.
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/branches/battleAI@14293 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2013-10-23 01:09:18 +00:00
nixt
d3f92542df Split AIBaseController to AIBaseLapController and AIBaseController.
AIBaseLapController inherits from AIBaseController. 

git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/branches/battleAI@14223 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2013-10-09 07:26:55 +00:00
hikerstk
5b98a8bcf0 Fixed unnecessary type cast (since definition of IMeshSceneNode was
missing), fixed compiler warning.


git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/branches/battleAI@14185 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2013-10-02 04:15:42 +00:00
nixt
6cc28c01de Forgot to clean up debug mesh and navmesh. Also moved debug camera a bit closer to the kart.
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/branches/battleAI@14184 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2013-10-02 04:03:22 +00:00
hikerstk
442ceee836 Fixed compilation issues on linux.
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/branches/battleAI@14183 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2013-10-02 03:51:42 +00:00
hikerstk
c06e49e37e Updated cmake build script.
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/branches/battleAI@14182 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2013-10-02 03:34:33 +00:00
nixt
479464ede4 fixed minor error and removed a redundant function.
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/branches/battleAI@14177 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2013-10-01 22:11:31 +00:00
nixt
fa3846e169 Fixed coloring in debug mesh. Each polygon distinctly visible in funky colors.
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/branches/battleAI@14176 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2013-10-01 22:00:10 +00:00
nixt
e0994932bf Added preliminary class for holding the battle mode navigation graph. The navigation mesh can now be viewed in game for battleisland ( start with --track-debug --camera-debug ) , the colors are bit messed up though.
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/branches/battleAI@14175 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2013-10-01 21:30:58 +00:00
nixt
c5e1b1a182 minor update to last commit
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/branches/battleAI@14167 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2013-09-28 11:13:24 +00:00
nixt
f4fe56dd31 Two new classes for holding the navigation mesh for battle maps.
note: proper comments will be added soon

git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/branches/battleAI@14166 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2013-09-28 10:20:57 +00:00
nixt
5a85e11d70 Reverted previous commit that broke some things.
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/branches/battleAI@14144 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2013-09-24 00:11:40 +00:00
hikerstk
891df54f3a Fixed rewind (events had a time stamp after increasing world clock,
while states had a time stamp before world clock was updated).
Still all work in progress ;)


git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/branches/rewind@14138 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2013-09-23 06:57:32 +00:00
nixt
167f25734c git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/branches/battleAI@14137 178a84e3-b1eb-0310-8ba1-8eac791a3b58 2013-09-23 00:13:30 +00:00
hikerstk
3c503226d7 Created branch for nixt's work on a battle AI.
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/branches/battleAI@14136 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2013-09-23 00:00:51 +00:00
hikerstk
cb46fad124 1) Fixed time when state snapshots are taken (must be before the physics runs)
2) Added support for storing the exact time step sizes (probably only for
   debugging - since now we can try to have bitwise identical results when
   replaying).


git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/branches/rewind@13631 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2013-09-04 22:06:26 +00:00
hikerstk
c4d120e1b3 Stored the time stamp of the main simulation, so that during
a rewind the same time steps can be taken (that's mostly meant
for debugging).


git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/branches/rewind@13534 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2013-08-21 21:42:18 +00:00
hikerstk
0730359c3d Fixed bug in restoring kart controls. Added restoring
controls to kart controller.


git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/branches/rewind@13486 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2013-08-15 22:54:57 +00:00
hikerstk
f78cb2d1f2 Rewinding now can replay states and events, though there are
still (initially) minor differences (caused most likely by
the controls not set at the right time (i.e. one frame too
early or too late).


git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/branches/rewind@13484 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2013-08-15 06:23:08 +00:00
hikerstk
8ed8963c63 Documented the main loop of STK.
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/branches/rewind@13483 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2013-08-15 06:20:31 +00:00
hikerstk
999d2dd82c Add the control settings to the state, that solves
the problem of determining the control states when
rewinding.


git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/branches/rewind@13482 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2013-08-15 06:19:35 +00:00
hikerstk
47b170ffb3 Bug- and style-fixes - looks like I committed incorrect files.
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/branches/rewind@13471 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2013-08-13 00:02:51 +00:00
hikerstk
9fe8d0f259 Started to work on rewinding. ATM a single kart can be rewound
to a previous time (i.e. the race continuous from the previous
location). No memory handling is done, ... all work in progress :)


git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/branches/rewind@13468 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2013-08-12 23:29:21 +00:00
hikerstk
c787926e04 Created branch for rewinding.
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/branches/rewind@13467 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2013-08-12 13:08:23 +00:00
1760 changed files with 249039 additions and 202714 deletions

66
.appveyor.yml Normal file
View File

@@ -0,0 +1,66 @@
environment:
DEPS_DIR: c:\\projects\dependencies
DEPS_BRANCH: master
ASSETS_DIR: c:\\projects\stk-assets
APPVEYOR_CACHE_ENTRY_ZIP_ARGS: -t7z -m0=lzma2 -mx=9
IRC_NOTIFY_SCRIPT: c:\\projects\stk-code\tools\appveyor-irc-notify.py
os: Visual Studio 2015
clone_depth: 1
shallow_clone: true
platform:
# - x86
- x64
configuration:
- Debug
- Release
matrix:
fast_finish: true
#cache:
# - '%DEPS_DIR%'
#- '%ASSETS_DIR%'
install:
- ps: >-
If(!(Test-Path "$env:DEPS_DIR")) {
Write-Host "Downloading dependencies";
Start-Process -FilePath "git" -ArgumentList "clone --branch $env:DEPS_BRANCH --single-branch --depth 1 https://github.com/supertuxkart/dependencies.git $env:DEPS_DIR" -Wait;
}
Else {
Write-Host "Updating dependencies";
Start-Process -FilePath "git" -ArgumentList "fetch --depth 1" -WorkingDirectory "$env:DEPS_DIR" -Wait;
}
Get-ChildItem $env:DEPS_DIR | Measure-Object -property length -sum
#- ps: >-
#If(!(Test-Path "$env:ASSETS_DIR")) {
# Write-Host "Downloading assets";
# Start-Process -FilePath "svn" -ArgumentList "checkout https://svn.code.sf.net/p/supertuxkart/code/stk-assets $env:ASSETS_DIR" -Wait;
#}
#Else {
# Write-Host "Updating assets";
# Start-Process -FilePath "svn" -ArgumentList "update" -WorkingDirectory "$env:ASSETS_DIR" -Wait;
#}
#Get-ChildItem $env:ASSETS_DIR | Measure-Object -property length -sum
before_build:
- ps: Copy-Item "${env:DEPS_DIR}\windows_64bit\dependencies" c:\projects\stk-code\dependencies-64bit Recurse
- cmd: |
md build
cd build
if "%platform%"=="x64" set CMAKE_GENERATOR_NAME="Visual Studio 14 2015 Win64"
cmake -G %CMAKE_GENERATOR_NAME% -DCMAKE_BUILD_TYPE="%configuration%" .. -DCHECK_ASSETS=OFF
build:
parallel: true
project: build\ALL_BUILD.vcxproj
on_success:
- "python %IRC_NOTIFY_SCRIPT% supertuxkart [{author}:{branch}] {short_commit}: {message} {color_green}Succeeded,Details: {build_url},Commit: {commit_url}"
on_failure:
- "python %IRC_NOTIFY_SCRIPT% supertuxkart [{author}:{branch}] {short_commit}: {message} {color_red}Failed,Details: {build_url},Commit: {commit_url}"

25
.gitignore vendored
View File

@@ -1,14 +1,15 @@
bld*/
build*/
cmake_build/
cmake_build*/
dependencies/
dependencies*/
CMakeFiles/
stk-editor/
.vscode/
.config/
supertuxkart-64
make*.bat
__pycache__
data/editor
data/karts
@@ -51,3 +52,23 @@ packets_log.txt
history.dat
README.dependencies
xx
android/android-ndk*
android/android-sdk*
android/assets
android/bin
android/build
android/libs
android/obj
android/.gradle
android-*
*.apk
*.keystore
lib/curl
lib/freetype
lib/ifaddrs
lib/libogg
lib/libvorbis
lib/openal
lib/openssl

View File

@@ -1,52 +1,65 @@
# Travis-CI configuration file for SuperTuxKart
# Travis-CI configuration file for SuperTuxKart
#
# Configuration manual:
# http://docs.travis-ci.com/user/build-configuration/
#
sudo: false
language: cpp
compiler:
- gcc
# - clang
#branches:
# only:
# - master
before_install:
# Update repos
- sudo apt-get update -qq
# Install dependencies
- sudo apt-get install build-essential libogg-dev libvorbis-dev libopenal-dev libxxf86vm-dev libcurl4-openssl-dev libfribidi-dev libbluetooth-dev
# Install mesa from an other repo (a newer version is required). Quantal is not supported anymore, saucy is only supported till July 2014,
# so we try to use trusty (precise which is what traiv uses a too old mesa version which doesn't link)
- sudo apt-add-repository "deb http://archive.ubuntu.com/ubuntu trusty main restricted"
- sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 3B4FE6ACC0B21F32
- sudo apt-get update -qq
- sudo apt-get install libgl1-mesa-dev libglu1-mesa-dev libglew-dev cmake
- clang
matrix:
fast_finish: true
env:
matrix:
- BUILD_TYPE="Debug" SERVER_ONLY="OFF"
- BUILD_TYPE="Debug" SERVER_ONLY="ON"
- BUILD_TYPE="Release" SERVER_ONLY="OFF"
- BUILD_TYPE="Release" SERVER_ONLY="ON"
addons:
apt:
packages:
- build-essential
- cmake
- libbluetooth-dev
- libcurl4-gnutls-dev
- libfreetype6-dev
- libfribidi-dev
- libgl1-mesa-dev
- libjpeg-dev
- libogg-dev
- libopenal-dev
- libpng-dev
- libvorbis-dev
- libxrandr-dev
- mesa-common-dev
- pkg-config
- zlib1g-dev
before_script:
- export THREADS=`nproc`
# Unfortunately using all threads crashes g++: "g++: internal compiler error: Killed (program cc1plus)"
- export THREADS=4
# Use half of the available threads, gcc is memory hungry
- 'if [ ${CC} = "gcc" ]; then
export THREADS=$((`nproc` / 2));
else
export THREADS=$((`nproc` + 1));
fi'
- echo "THREADS = $THREADS"
- free -mt
script:
# First a debug build:
- mkdir build-debug
- cd build-debug
- cmake .. -DCMAKE_BUILD_TYPE=Debug -DCHECK_ASSETS=off
- make VERBOSE=1 -j $THREADS
# Then a release build:
- cd ..
- mkdir build-release
- cd build-release
- cmake .. -DCMAKE_BUILD_TYPE=Release -DCHECK_ASSETS=off
- mkdir "build"
- cd "build"
- cmake .. -DCMAKE_BUILD_TYPE=$BUILD_TYPE -DSERVER_ONLY=$SERVER_ONLY -DCHECK_ASSETS=off -DBUILD_RECORDER=off
- make VERBOSE=1 -j $THREADS
notifications:
irc:
channels:
- "irc.freenode.org#stk"
- "irc.freenode.org#supertuxkart"
skip_join: false
use_notice: true
template:

View File

@@ -1 +0,0 @@
See the file data/CREDITS .

View File

@@ -1,4 +1,36 @@
## SupertTuxKart 0.9.1
## SuperTuxKart 0.9.3
* Reduced RAM and VRAM usage, reducing load times by Auria and Benau
* New mesh format optimized for space and hardware skinning
* Code refactoring of both render pipeline by Benau and Elderme
* New kart Wilber and Hexley by Jymis
* New kart Kiki and updated Konqi by Benau
* New tracks Candela City, Cornfield Crossing and Las Dunas Arena by samuncle
* Physics improvements and various physics bugfixes by hiker
* Kart GFX improvements (exhaust and headlight)
* In-game screen recording powered by libopenglrecorder
* High quality mipmap generation by Stragus
* New smoother camera by Auria
* New grand prix win scene
* Gamepad configuration bugfixes
* 3 Strikes Battles : added spare tire karts
* Various improvements (wall driving fixes, parachutes, GP points, cannon fixes, colorization shader)
## SuperTuxKart 0.9.2
* Ghost replay races by Benau
* Battle mode AI by Benau
* Soccer mode AI by Benau
* New icy soccer field by samuncle and Benau
* New subsea track by samuncle
* New volcano track by Ponzino
* TTF font rendering by Benau
* Kart properties refactor by Flakebi
* Scripting work under the hood
* Work on the track editor by mhp
* Tweak to challenges
* New farm track song by 0zone0ne and Krobonil
* Bugfixes
## SuperTuxKart 0.9.1
* Many bug fixes
* Started to use scripting in tracks
* Significant audio performance improvements

View File

@@ -1,6 +1,6 @@
# root CMakeLists for the SuperTuxKart project
project(SuperTuxKart)
set(PROJECT_VERSION "0.8.1")
set(PROJECT_VERSION "0.9.3")
cmake_minimum_required(VERSION 2.8.4)
if(NOT (CMAKE_MAJOR_VERSION VERSION_LESS 3))
@@ -8,6 +8,14 @@ if(NOT (CMAKE_MAJOR_VERSION VERSION_LESS 3))
endif()
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${PROJECT_SOURCE_DIR}/cmake")
include(CMakeDependentOption)
set(DEPENDENCIES "dependencies")
# In case of 64-bit windows, use a different path for dependencies
# so that both dependencies can be installed next to each other
if ( WIN32 AND (CMAKE_SIZEOF_VOID_P EQUAL 8 ) )
set(DEPENDENCIES "dependencies-64bit")
endif()
include(BuildTypeSTKRelease)
if (NOT CMAKE_BUILD_TYPE)
@@ -15,11 +23,22 @@ if (NOT CMAKE_BUILD_TYPE)
set(CMAKE_BUILD_TYPE "STKRelease")
endif()
option(USE_WIIUSE "Support for wiimote input devices" ON)
option(SERVER_ONLY "Create a server only (i.e. no graphics or sound)" OFF)
option(USE_FRIBIDI "Support for right-to-left languages" ON)
option(CHECK_ASSETS "Check if assets are installed in ../stk-assets" ON)
option(USE_SYSTEM_ANGELSCRIPT "Use system angelscript instead of built-in angelscript. If you enable this option, make sure to use a compatible version." OFF)
option(ENABLE_NETWORK_MULTIPLAYER "Enable network multiplayer. This will replace the online profile GUI in the main menu with the network multiplayer GUI" OFF)
option(ENABLE_WAYLAND_DEVICE "Enable Wayland device for linux build" OFF)
CMAKE_DEPENDENT_OPTION(BUILD_RECORDER "Build opengl recorder" ON
"NOT SERVER_ONLY;NOT USE_GLES2;NOT APPLE" OFF)
if (UNIX AND NOT APPLE)
option(USE_GLES2 "Use OpenGL ES2 renderer" OFF)
endif()
if(UNIX OR MINGW)
option(DEBUG_SYMBOLS "Compile with debug symbols" OFF)
endif()
if(MSVC AND (MSVC_VERSION LESS 1900))
# Normally hide the option to build wiiuse on VS, since it depends
@@ -31,13 +50,15 @@ else()
set(WIIUSE_BUILD ON)
endif()
if(MINGW OR CYGWIN)
set(USE_WIIUSE OFF)
if(MINGW OR CYGWIN OR SERVER_ONLY)
option(USE_WIIUSE "Support for wiimote input devices" OFF)
else()
option(USE_WIIUSE "Support for wiimote input devices" ON)
endif()
if(UNIX AND NOT APPLE)
option(USE_XRANDR "Use xrandr instead of vidmode" ON)
option(USE_ASAN "Build with Leak/Address sanitizer" OFF)
option(USE_LIBBFD "Use libbfd for crash reporting and leak check" OFF)
endif()
set(STK_SOURCE_DIR "src")
@@ -52,10 +73,32 @@ set(STK_INSTALL_DATA_DIR "share/supertuxkart" CACHE
# These variables enable MSVC to find libraries located in "dependencies"
if(WIN32)
set(ENV{PATH} "$ENV{PATH};${PROJECT_SOURCE_DIR}/dependencies/include")
set(ENV{LIB} ${PROJECT_SOURCE_DIR}/dependencies/lib)
set(ENV{OPENALDIR} ${PROJECT_SOURCE_DIR}/dependencies)
set(ENV{PATH} "$ENV{PATH};${PROJECT_SOURCE_DIR}/${DEPENDENCIES}/include")
set(ENV{LIB} ${PROJECT_SOURCE_DIR}/${DEPENDENCIES}/lib)
set(ENV{OPENALDIR} ${PROJECT_SOURCE_DIR}/${DEPENDENCIES})
add_definitions(-D_IRR_STATIC_LIB_)
add_definitions(-DNO_IRR_COMPILE_WITH_X11_)
endif()
if(USE_GLES2)
add_definitions(-DUSE_GLES2)
add_definitions(-D_IRR_COMPILE_WITH_OGLES2_ -DNO_IRR_COMPILE_WITH_OPENGL_)
endif()
if(SERVER_ONLY)
add_definitions(-DSERVER_ONLY)
add_definitions(-DNO_IRR_COMPILE_WITH_X11_)
endif()
#if(DISABLE_VPX)
# add_definitions(-DNO_VPX)
#endif()
if(UNIX OR MINGW)
if(DEBUG_SYMBOLS)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g")
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -g")
endif()
endif()
# Build the Bullet physics library
@@ -67,10 +110,13 @@ add_subdirectory("${PROJECT_SOURCE_DIR}/lib/enet")
include_directories("${PROJECT_SOURCE_DIR}/lib/enet/include")
# Build glew library
add_subdirectory("${PROJECT_SOURCE_DIR}/lib/glew")
include_directories("${PROJECT_SOURCE_DIR}/lib/glew/include")
if(NOT USE_GLES2 AND NOT SERVER_ONLY)
add_definitions(-DGLEW_NO_GLU)
add_subdirectory("${PROJECT_SOURCE_DIR}/lib/glew")
include_directories("${PROJECT_SOURCE_DIR}/lib/glew/include")
endif()
if((WIN32 AND NOT MINGW) OR APPLE)
if(MSVC OR APPLE)
if (NOT APPLE)
# Build zlib library
add_subdirectory("${PROJECT_SOURCE_DIR}/lib/zlib")
@@ -81,22 +127,54 @@ if((WIN32 AND NOT MINGW) OR APPLE)
endif()
# Build png library
set (SKIP_INSTALL_ALL TRUE)
set (PNG_STATIC TRUE)
set (PNG_TESTS FALSE)
set (PNG_SHARED FALSE)
set(SKIP_INSTALL_ALL TRUE)
set(PNG_STATIC TRUE CACHE BOOL "Build static lib")
set(PNG_TESTS FALSE CACHE BOOL "Build libpng tests")
set(PNG_SHARED FALSE CACHE BOOL "Build shared lib")
add_subdirectory("${PROJECT_SOURCE_DIR}/lib/libpng")
include_directories("${PROJECT_SOURCE_DIR}/lib/libpng")
#build jpeg library
set(PNG_PNG_INCLUDE_DIR "${PROJECT_SOURCE_DIR}/lib/libpng/")
set(PNG_LIBRARY png_static)
endif()
# Add jpeg library
if (APPLE)
add_subdirectory("${PROJECT_SOURCE_DIR}/lib/jpeglib")
include_directories("${PROJECT_SOURCE_DIR}/lib/jpeglib")
set(PNG_PNG_INCLUDE_DIR "${PROJECT_SOURCE_DIR}/lib/libpng/")
set(PNG_LIBRARY png15_static)
set(JPEG_INCLUDE_DIR "${PROJECT_SOURCE_DIR}/lib/jpeglib/")
set(JPEG_LIBRARY jpeglib)
else()
find_package(JPEG REQUIRED)
include_directories(${JPEG_INCLUDE_DIR})
endif()
if (BUILD_RECORDER)
find_library(OPENGLRECORDER_LIBRARY NAMES openglrecorder libopenglrecorder PATHS "${PROJECT_SOURCE_DIR}/${DEPENDENCIES}/lib")
find_path(OPENGLRECORDER_INCLUDEDIR NAMES openglrecorder.h PATHS "${PROJECT_SOURCE_DIR}/${DEPENDENCIES}/include")
if (NOT OPENGLRECORDER_LIBRARY OR NOT OPENGLRECORDER_INCLUDEDIR)
if(PROJECT_VERSION STREQUAL "git")
message(WARNING "libopenglrecorder not found, disabling in-game recorder. "
"To use recorder, install libopenglrecorder.")
set(OPENGLRECORDER_LIBRARY CACHE INTERNAL "")
set(OPENGLRECORDER_INCLUDEDIR CACHE INTERNAL "")
set(BUILD_RECORDER OFF)
else()
message(FATAL_ERROR "libopenglrecorder not found. "
"Either install libopenglrecorder or disable in-game recorder with -DBUILD_RECORDER=0")
endif()
else()
include_directories(${OPENGLRECORDER_INCLUDEDIR})
mark_as_advanced(OPENGLRECORDER_LIBRARY OPENGLRECORDER_INCLUDEDIR)
add_definitions(-DENABLE_RECORDER)
endif()
endif()
if(NOT SERVER_ONLY AND NOT USE_GLES2)
add_subdirectory("${PROJECT_SOURCE_DIR}/lib/graphics_utils")
include_directories("${PROJECT_SOURCE_DIR}/lib/graphics_utils")
endif()
# Build the irrlicht library
add_subdirectory("${PROJECT_SOURCE_DIR}/lib/irrlicht")
include_directories("${PROJECT_SOURCE_DIR}/lib/irrlicht/include")
@@ -116,8 +194,8 @@ endif()
include_directories(${STK_SOURCE_DIR})
if(APPLE)
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -arch i386")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -arch i386 -F/Library/Frameworks")
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -arch x86_64")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -arch x86_64 -F/Library/Frameworks")
elseif(MSVC)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /MP") # Enable multi-processor compilation (faster)
endif()
@@ -185,47 +263,33 @@ if(USE_FRIBIDI)
endif()
endif()
# OpenMP
find_package(OpenMP)
if (OPENMP_FOUND)
set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${OpenMP_C_FLAGS}")
set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${OpenMP_CXX_FLAGS}")
# OpenGL
if(NOT USE_GLES2 AND NOT SERVER_ONLY)
find_package(OpenGL REQUIRED)
include_directories(${OPENGL_INCLUDE_DIR})
endif()
# OpenGL
find_package(OpenGL REQUIRED)
include_directories(${OPENGL_INCLUDE_DIR})
if(UNIX AND NOT APPLE)
find_package(X11 REQUIRED)
include_directories(${X11_INCLUDE_DIR})
if(USE_XRANDR)
find_package(Xrandr REQUIRED)
if(NOT XRANDR_FOUND)
message(FATAL_ERROR "XRANDR not found.")
endif()
if(USE_LIBBFD)
find_package(Libbfd)
if(LIBBFD_FOUND)
add_definitions(-DENABLE_LIBBFD)
include_directories(${LIBBFD_INCLUDE_DIRS})
else()
find_library(IRRLICHT_XF86VM_LIBRARY Xxf86vm)
mark_as_advanced(IRRLICHT_XF86VM_LIBRARY)
set(USE_LIBBFD OFF CACHE BOOL "Use libbfd for crash reporting and leak check" FORCE)
message(WARNING "Libbfd not found, disable integrated stack trace.")
endif()
endif()
# Set some compiler options
if(UNIX OR MINGW)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=gnu++0x")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -Wno-unused-function")
endif()
if(MINGW AND CMAKE_BUILD_TYPE MATCHES Release)
SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -Wl,--subsystem,windows")
endif()
# Netwowk Multiplayer
if(ENABLE_NETWORK_MULTIPLAYER)
add_definitions(-DENABLE_NETWORK_MULTIPLAYER_SCREEN)
endif()
if(WIN32)
# By default windows.h has macros defined for min and max that screw up everything
add_definitions(-DNOMINMAX)
@@ -257,7 +321,7 @@ endif()
add_definitions(-DHAVE_OGGVORBIS)
if(WIN32)
configure_file("${STK_SOURCE_DIR}/windows_installer/icon_rc.template" "${PROJECT_BINARY_DIR}/tmp/icon.rc")
configure_file("${STK_SOURCE_DIR}/../tools/windows_installer/icon_rc.template" "${PROJECT_BINARY_DIR}/tmp/icon.rc")
endif()
# Provides list of source and header files (STK_SOURCES and STK_HEADERS)
@@ -307,7 +371,7 @@ else()
elseif(MINGW)
set(PTHREAD_NAMES "winpthread-1" "libwinpthread-1" "pthreadGC2")
endif()
find_library(PTHREAD_LIBRARY NAMES pthread ${PTHREAD_NAMES} PATHS ${PROJECT_SOURCE_DIR}/dependencies/lib)
find_library(PTHREAD_LIBRARY NAMES pthread ${PTHREAD_NAMES} PATHS ${PROJECT_SOURCE_DIR}/${DEPENDENCIES}/lib)
mark_as_advanced(PTHREAD_LIBRARY)
# Set data dir (absolute or relative to CMAKE_INSTALL_PREFIX)
@@ -328,8 +392,10 @@ else()
endif()
# CURL
if(WIN32)
target_link_libraries(supertuxkart ${PROJECT_SOURCE_DIR}/dependencies/lib/libcurldll.a)
if(MSVC)
target_link_libraries(supertuxkart ${PROJECT_SOURCE_DIR}/${DEPENDENCIES}/lib/libcurl.lib)
elseif(MINGW)
target_link_libraries(supertuxkart ${PROJECT_SOURCE_DIR}/${DEPENDENCIES}/lib/libcurldll.a)
else()
find_package(CURL REQUIRED)
include_directories(${CURL_INCLUDE_DIRS})
@@ -341,22 +407,28 @@ target_link_libraries(supertuxkart
bulletcollision
bulletmath
enet
glew
stkirrlicht
${Angelscript_LIBRARIES}
${CURL_LIBRARIES}
${OGGVORBIS_LIBRARIES}
${OPENAL_LIBRARY}
${OPENGL_LIBRARIES}
${FREETYPE_LIBRARIES}
${JPEG_LIBRARIES}
${TURBOJPEG_LIBRARY}
#${VPX_LIBRARIES}
)
if(UNIX AND NOT APPLE)
target_link_libraries(supertuxkart ${X11_LIBRARIES})
if(USE_XRANDR)
target_link_libraries(supertuxkart ${XRANDR_LIBRARIES})
if(NOT SERVER_ONLY)
if(NOT USE_GLES2)
target_link_libraries(supertuxkart ${OPENGL_gl_LIBRARY} glew graphics_utils)
else()
target_link_libraries(supertuxkart ${IRRLICHT_XF86VM_LIBRARY})
target_link_libraries(supertuxkart GLESv2)
endif()
endif()
if(UNIX AND NOT APPLE)
if(USE_LIBBFD)
target_link_libraries(supertuxkart ${LIBBFD_LIBRARIES})
endif()
if(USE_ASAN)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fsanitize=address -fno-omit-frame-pointer")
@@ -364,12 +436,21 @@ if(UNIX AND NOT APPLE)
endif()
endif()
if(BUILD_RECORDER)
target_link_libraries(supertuxkart ${OPENGLRECORDER_LIBRARY})
endif()
# FreeBSD does not search in /usr/local/lib, but at least Freetype is installed there :(
if(${CMAKE_SYSTEM_NAME} MATCHES "FreeBSD")
SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -L/usr/local/lib")
endif()
if(APPLE)
# In theory it would be cleaner to let CMake detect the right dependencies. In practice, this means that if a OSX user has
# unix-style installs of Vorbis/Ogg/OpenAL/etc. they will be picked up over our frameworks. This is blocking when I make releases :
# the mac I use to make STK releases does have other installs of vorbis/ogg/etc. which aren't compatible with STK, so letting
# CMake pick the library it wants essentially means I can't build.
set_target_properties(supertuxkart PROPERTIES LINK_FLAGS "-arch i386 -F/Library/Frameworks -framework OpenAL -framework Ogg -framework Vorbis")
set_target_properties(supertuxkart PROPERTIES LINK_FLAGS "-arch x86_64 -F/Library/Frameworks -framework OpenAL -framework Ogg -framework Vorbis")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -I/Library/Frameworks/OpenAL.framework/Versions/A/Headers")
endif()
@@ -389,7 +470,7 @@ if(USE_WIIUSE)
if(WIIUSE_BUILD)
target_link_libraries(supertuxkart wiiuse)
else()
target_link_libraries(supertuxkart ${PROJECT_SOURCE_DIR}/dependencies/lib/wiiuse.lib)
target_link_libraries(supertuxkart ${PROJECT_SOURCE_DIR}/${DEPENDENCIES}/lib/wiiuse.lib)
endif()
else()
target_link_libraries(supertuxkart wiiuse bluetooth)
@@ -402,7 +483,7 @@ if(MSVC OR MINGW)
target_link_libraries(supertuxkart iphlpapi.lib)
add_custom_command(TARGET supertuxkart POST_BUILD
COMMAND ${CMAKE_COMMAND} -E copy_directory
"${PROJECT_SOURCE_DIR}/dependencies/dll"
"${PROJECT_SOURCE_DIR}/${DEPENDENCIES}/dll"
$<TARGET_FILE_DIR:supertuxkart>)
add_custom_target(stkshaders SOURCES ${STK_SHADERS})
endif()
@@ -416,10 +497,6 @@ if(MINGW)
if(LIBSTDCPP)
file(COPY ${LIBSTDCPP} DESTINATION ${CMAKE_BINARY_DIR}/bin/)
endif()
find_library(LIBOPENMP NAMES "libgomp-1.dll" PATHS ${CMAKE_FIND_ROOT_PATH})
if(LIBOPENMP)
file(COPY ${LIBOPENMP} DESTINATION ${CMAKE_BINARY_DIR}/bin/)
endif()
find_library(LIBPTHREAD NAMES "winpthread-1.dll" "libwinpthread-1.dll" "pthreadGC2.dll" PATHS ${CMAKE_FIND_ROOT_PATH})
if(LIBPTHREAD)
file(COPY ${LIBPTHREAD} DESTINATION ${CMAKE_BINARY_DIR}/bin/)
@@ -463,9 +540,9 @@ if(STK_ASSETS_DIR AND CHECK_ASSETS)
install(DIRECTORY ${STK_ASSETS_DIR} DESTINATION ${STK_INSTALL_DATA_DIR}/data PATTERN ".svn" EXCLUDE PATTERN ".git" EXCLUDE)
endif()
install(FILES ${STK_DATA_DIR}/supertuxkart.desktop DESTINATION share/applications)
install(FILES data/supertuxkart_32.png DESTINATION share/icons/hicolor/32x32/apps RENAME supertuxkart.png)
install(FILES data/supertuxkart_48.png DESTINATION share/icons/hicolor/48x48/apps RENAME supertuxkart.png)
install(FILES data/supertuxkart_128.png DESTINATION share/icons/hicolor/128x128/apps RENAME supertuxkart.png)
install(FILES data/supertuxkart_32.png data/supertuxkart_128.png DESTINATION share/pixmaps)
install(FILES data/supertuxkart_48.png DESTINATION share/pixmaps RENAME supertuxkart.png)
install(FILES data/supertuxkart.appdata.xml DESTINATION share/appdata)
if(MINGW)

View File

@@ -12,7 +12,7 @@ GNU GENERAL PUBLIC LICENSE
Version 3, 29 June 2007
Copyright © 2007 Free Software Foundation, Inc. <http://fsf.org/>
Copyright (c) 2007 Free Software Foundation, Inc. <http://fsf.org/>
Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed.

View File

@@ -1,78 +0,0 @@
# SuperTuxKart Installation Instructions
Note: If you obtained this source code from Github, you also need to download the game assets from Sourceforge using SVN.
`svn checkout https://svn.code.sf.net/p/supertuxkart/code/stk-assets stk-assets`
Place the `stk-assets` folder next to the source root `stk-code` folder.
See <http://supertuxkart.sourceforge.net/Source_control> for more information
## Building STK on Linux
First, make sure that you have the following packages installed:
* OpenGL (mesa)
* OpenAL (recommended: openal-soft-devel)
* Ogg (libogg-dev)
* Vorbis (libvorbis-dev)
* libcurl (libcurl-devel)
* libbluetooth (bluez-devel)
* libpng (libpng-devel)
* zlib (zlib-devel)
* jpeg (libjpeg-turbo-devel)
Ubuntu command:
```
sudo apt-get install autoconf automake build-essential cmake libogg-dev libvorbis-dev libopenal-dev libxxf86vm-dev \
libgl1-mesa-dev libglu1-mesa-dev libcurl4-openssl-dev libfribidi-dev libbluetooth-dev libxrandr-dev
```
Unpack the files from the tarball like this:
```
tar xzf supertuxkart-*.tar.gz
cd supertuxkart-*
```
where `*` is the version of SuperTuxkart you downloaded - eg `0.8.0`. Then:
Compile SuperTuxKart:
```
mkdir cmake_build
cd cmake_build
cmake ..
make VERBOSE=1 -j2
```
To create a debug version of STK, use:
```
cmake .. -DCMAKE_BUILD_TYPE=Debug
```
To test the compilation, supertuxkart can be run from the build
directory by ./bin/supertuxkart
To install the file, as root execute:
```
make install
```
The default install location is `/usr/local`, i.e. the data files will
be written to `/usr/local/share/games/supertuxkart`, the executable
will be copied to `/usr/local/bin`. To change the default installation
location, specify `CMAKE_INSTALL_PREFIX` when running cmake, e.g.:
`cmake .. -DCMAKE_INSTALL_PREFIX=/opt/stk`
## Building STK on OS X
See <http://supertuxkart.sourceforge.net/Building_and_packaging_on_OSX>
## Building STK on Windows
See <http://supertuxkart.sourceforge.net/How_to_build_the_Windows_version>

264
README.md
View File

@@ -1,67 +1,225 @@
# SuperTuxKart
[![Build Status](https://travis-ci.org/supertuxkart/stk-code.png?branch=master)](https://travis-ci.org/supertuxkart/stk-code)
[![Build Status](https://travis-ci.org/supertuxkart/stk-code.svg?branch=master)](https://travis-ci.org/supertuxkart/stk-code)
[![AppVeyor Build Status](https://ci.appveyor.com/api/projects/status/github/supertuxkart/stk-code?svg=true&branch=master)](https://ci.appveyor.com/project/supertuxkart/stk-code)
[![#supertuxkart on the freenode IRC network](https://img.shields.io/badge/freenode-%23supertuxkart-brightgreen.svg)](https://webchat.freenode.net/?channels=supertuxkart)
SuperTuxKart is a free kart racing game. It is focusing on fun and
not on realistic kart physics. Instruction can be found on the
in-game help page.
The SuperTuxKart homepage can be found at: <http://supertuxkart.sourceforge.net>
The official SuperTuxKart forum is at <http://supertuxkart.sourceforge.net/forum>. If you need support,
this would be the best place to start.
Hope you enjoy the game.
-- The SuperTuxKart development team.
SuperTuxKart is a free kart racing game. It focuses on fun and not on realistic kart physics. Instructions can be found on the in-game help page.
The SuperTuxKart homepage can be found at <https://supertuxkart.net/>. There is also our [FAQ](https://supertuxkart.net/FAQ) and information on how get in touch with the [community](https://supertuxkart.net/Community)
## Hardware Requirements
* You need a 3D graphics card. (NVIDIA GeForce 8xxx and higher, ATI Radeon HD 4xxx and higher or Intel HD 3000 and higher)
* You should have a CPU that's running at 1GHz or better.
To run SuperTuxKart, make sure that your computer's specifications are equal or higher than the following specifications:
* A graphics card capable of 3D rendering - NVIDIA GeForce 8 series and newer (GeForce 8100 or newer), AMD/ATI Radeon HD 4000 series and newer, Intel HD Graphics 3000 and newer. OpenGL >= 3.1
* You should have a CPU that's running at 1 GHz or faster.
* You'll need at least 512 MB of free VRAM (video memory).
* Disk space: 400MB
* Ideally, you want a joystick with at least 6 buttons.
## Compiling SuperTuxKart
### Windows
1. Install VS 2013 (or later). The free express versions work fine.
2. Download and install a source package - either a released package or from our [git/svn repositories](http://supertuxkart.sourceforge.net/Source_control)
3. Download the latest dependency package depdendencies_for_0.8.2.zip from [here](https://sourceforge.net/projects/supertuxkart/files/SuperTuxKart%20Dependencies/Windows/). Unzip it in the root directory, so that the dependencies directory is next to the src and data directory (if you are updating from a previous dependency package, you can delete the .dll files in the root directory, they are not needed anymore).
4. Download cmake and install it. Then start cmake-gui and select the STK root directory as 'Where is the source code', and a new directory in the root directory (next to src, data etc) as build directory (for now I assume that this directory is called bld).
5. Click on configure. You will be asked to create the directory (yes), then for your VS version. Make sure to select the right version (be aware of the easy to confuse version numbers: VS 2013 = version 12). Click on configure, then generate. This will create the directory 'bld', and a VS solution in that directory.
6. In Visual Studio open the project file generated in the 'bld' folder
7. Right click on the supertuxkart project in the solution explorer, and select "Set as StartUp Project".
8. Select Build->Build Solution (or press F7) to compile.
Compilation with cygwin is not officially supported, but
this has been done (check with the forum for details).
### Mac OS X
The latest information about compilation on Mac are on our wiki:
<http://supertuxkart.sourceforge.net/Building_and_packaging_on_OSX>
The Xcode project file is in `/src/ide/Xcode/`, but it still
requires that all dependencies are installed as explained on the wiki.
### UNIX
See [`INSTALL.md`](INSTALL.md) for details.
* Minimum disk space: 800 MB
* Ideally, you'll want a joystick with at least 6 buttons.
## License
This software is released under the GNU General Public License (GPL) which
can be found in the file [`COPYING`](/COPYING) in the same directory as this file.
Information about the licenses for artwork are contained in
`data/licenses`.
The software is released under the GNU General Public License (GPL) which can be found in the file [`COPYING`](/COPYING) in the same directory as this file. Information about the licenses for the artwork is contained in `data/licenses`.
## 3D coordinates
A reminder for those looking at the code and 3d models:
A reminder for those who are looking at the code and 3D models:
STK : X right, Y up, Z forwards
SuperTuxKart: X right, Y up, Z forwards
Blender: X right, Y forwards, Z up
The exporters perform the needed transform, so in Blender you just work
with XY plane as ground, and things will appear fine in STK (using XZ
as ground in the code, obviously).
The export utilities perform the needed transformation, so in Blender you just work with the XY plane as ground, and things will appear fine in STK (using XZ as ground in the code, obviously).
## Building from source
In order to build SuperTuxKart from source, you'll need both the code and the assets (See <https://supertuxkart.net/Source_control> for more information):
```bash
git clone https://github.com/supertuxkart/stk-code stk-code
svn co https://svn.code.sf.net/p/supertuxkart/code/stk-assets stk-assets
```
## Building SuperTuxKart on Linux
### Dependencies
To build SuperTuxKart from source, you'll need to install the following packages:
* OpenGL (mesa)
* OpenAL (recommended: openal-soft-devel)
* Ogg (libogg-dev)
* Vorbis (libvorbis-dev)
* Freetype (libfreetype6-dev)
* libcurl (libcurl-devel)
* libbluetooth (bluez-devel)
* libpng (libpng-devel)
* zlib (zlib-devel)
* jpeg (libjpeg-turbo-devel)
Ubuntu command:
```bash
sudo apt-get install build-essential cmake libbluetooth-dev \
libcurl4-gnutls-dev libfreetype6-dev libfribidi-dev libgl1-mesa-dev \
libjpeg-dev libogg-dev libopenal-dev libpng-dev libvorbis-dev libxrandr-dev \
mesa-common-dev pkg-config zlib1g-dev
```
### In-game recorder
In order to build the in-game recorder for STK, you have to install
libopenglrecorder from your distribution, or compile it yourself from [here](https://github.com/Benau/libopenglrecorder).
Compilation instruction is explained there. If you don't need this feature, pass `-DBUILD_RECORDER=off` to cmake.
### Compiling
Run the following commands inside `stk-code` directory to compile SuperTuxKart:
```bash
mkdir cmake_build
cd cmake_build
cmake ..
make -j4
```
STK can then be run from the build directory with `bin/supertuxkart`
### Further options
To create a debug version of STK, run:
```bash
cmake .. -DCMAKE_BUILD_TYPE=Debug
```
You can install your build system-wide:
```bash
sudo make install
```
The default install location is `/usr/local`, i.e. the data files will
be written to `/usr/local/share/games/supertuxkart`, the executable
will be copied to `/usr/local/bin`. To change the default installation
location, specify `CMAKE_INSTALL_PREFIX` when running cmake, e.g.:
`cmake .. -DCMAKE_INSTALL_PREFIX=/opt/stk`
## Building SuperTuxKart on Windows
To Build SuperTuxKart on Windows, follow these instructions:
1. Download and install Visual Studio from here: [Visual Studio - Download](https://www.visualstudio.com/downloads/). The free Visual Studio Community edition works fine.
2. Download the SuperTuxKart source package from either [SuperTuxKart download area - SourceForge.net](https://sourceforge.net/projects/supertuxkart/files/SuperTuxKart/0.9.2) or [SuperTuxKart.net - Source Control](https://supertuxkart.net/Source_control), and unpack it.
*Note: If you downloaded the source package from here: [SuperTuxKart.net - Source Control](https://supertuxkart.net/Source_control), then both `stk-code` and `stk-assets` **must** be in the same directory, otherwise the build can result in failure*
3. Download the Windows dependencies package from either [SuperTuxKart download area: Dependecies - SourceForge.net](https://sourceforge.net/projects/supertuxkart/files/SuperTuxKart%20Dependencies/Windows/)
or [SuperTuxKart on GitHub - Dependencies](https://github.com/supertuxkart/dependencies), and unpack it; then, copy the `dependencies` directory from either the `windows` or the `windows_64bit` directories into the `stk-code` directory, rename it to `dependencies-64bit` if you want to compile a 64bit build.
4. Download CMake from here: [CMake - download page](https://cmake.org/download/), install it; once CMake is installed, double click on the CMake icon on your desktop, and point it towards your `stk-code` directory in the 'Where is the source code' field, and point it to a directory called `build` or `bld` inside the stk-code directory.
5. Press 'Configure'; CMake will ask you if it is OK to create the aformentioned directory, press `Yes`. CMake will then ask you about your version of Visual Studio.
Confirm your selection; *Please look at the table below to avoid confusion between version numbers and releases of Visual Studio*;
CMake will begin creating the required files for the build in the directory.
6. Navigate to your build directory and open the `SuperTuxKart.sln` file; Visual Studio will now load the solution.
7. In the 'Solution Explorer', right click on the `supertuxkart` project and select "Set as StartUp project"
8. Open the 'Build' menu and select 'Build Solution'; or, press the default keyboard shortcut: `CTRL + SHIFT + B` to build the solution.
*Note: To avoid confusion between releases and versions, refer to this table:*
Visual Studio Release | Version
----------------------|------------
Visual Studio 2017| 15
Visual Studio 2015| 14
Visual Studio 2013| 13
## Building SuperTuxKart on Windows (from PowerShell/Command line)
1. Download and install Visual Studio from here: [Visual Studio - Download](https://www.visualstudio.com/downloads/), the free Visual Studio Community edition works fine.
2. Download a source package from either [SuperTuxKart 0.9.2 download area - SourceForge.net](https://sourceforge.net/projects/supertuxkart/files/SuperTuxKart/0.9.2) or [SuperTuxKart.net - Source Control](https://supertuxkart.net/Source_control)
NOTE: the `stk-code` and `stk-assets` directories **must** be in the same directory
3. Download the Windows dependencies package from either [SuperTuxKart download area - SourceForge.net](https://sourceforge.net/projects/supertuxkart/files/SuperTuxKart%20Dependencies/Windows/)
or [SuperTuxKart on GitHub - Dependencies](https://github.com/supertuxkart/dependencies)
and unpack the archive; once unpacked, copy the `dependencies` directory from either the `windows` or the `windows_64bit` directories into the `stk-code` directory
4. Download CMake from here: [CMake - download page](https://cmake.org/download/); and install it. Navigate to the `stk-code` directory; and create an directory called "build":
```cmd
mkdir build
cd build
```
5. Once inside the build directory; run CMake to start the compilation process:
```cmd
cmake ..
```
6. Now that CMake finished configuring and creating the necessary files for the build, run the build command in the same directory:
```cmd
msbuild.exe SuperTuxKart.sln
```
SuperTuxKart can now be run as `bin\Debug\supertuxkart.exe` or `bin\Release\supertuxkart.exe`
## Building SuperTuxKart on macOS
### Getting Started
Install the developer tools, either from the OS X Install DVD or from Apple's website.
If you have never built anything before, you have create `/usr/local/include/` first:
```bash
sudo mkdir -p /usr/local/include/
```
Symlink the `include`-folder of OpenGL framework to `/usr/local/include/GL` (Unix programs have an easier time finding it this way):
```bash
sudo ln -s /System/Library/Frameworks/OpenGL.framework/Versions/A/Headers/ /usr/local/include/GL
```
On OS X 10.9.5, you might need the following workaround:
```bash
sudo ln -s `xcrun --show-sdk-path`/usr/include/ /usr/include
sudo ln -s `xcrun --show-sdk-path`/System/Library/Frameworks/OpenGL.framework/Headers/ /usr/local/include/OpenGL
```
The first link is required in order to find libcurl, the second to find opengl.
Download pre-built dependencies from [here](https://sourceforge.net/projects/supertuxkart/files/SuperTuxKart%20Dependencies/OSX/) and put the frameworks in [hard disk root]/Library/Frameworks
### CMake
CMake is used to build STK. At this time CMake will not make a binary that is ready for distribution.
You'll have to run these commands inside your stk-code directory.
### Building
With clang:
```bash
mkdir cmake_build
cd cmake_build
cmake ..
make
```
With GCC:
```bash
mkdir cmake_build
cd cmake_build
cmake .. -DCMAKE_CXX_COMPILER=/usr/bin/g++ -DCMAKE_C_COMPILER=/usr/bin/gcc
make
```
Building on 10.10 with 10.9 compatibility:
```bash
cmake .. -DCMAKE_OSX_SYSROOT=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk -DCMAKE_OSX_DEPLOYMENT_TARGET=10.9
```
### Xcode
Place an additional copy of the dependencies into `Users/<YOUR_USERNAME>/Library/Frameworks`.
Then cd to your cloned stk-code directory and execute the following commands:
```bash
mkdir xcode_build && cd xcode_build
cmake .. -GXcode
```
Use Finder to navigate to your stk-code/xcode_build folder and open the newly generated Xcode project (`SuperTuxKart.xcodeproj`).
You can then build the project in Xcode using Product -> Build
Note: Xcode is much less well tested than makefiles, so there may be issues when trying to use Xcode.

View File

@@ -1,34 +0,0 @@
# Please, make sure your SVN client uses something that matches the
# following config. Specially the autoprops part, that way new files
# will be added with the right settings. Default config for command line
# svn is in ~/.subversion/config. If you use SVN for multiple projects
# simultaneously, remember you can use different configs, at least in
# cmd line (via --config-dir and for example ~/.subversion/supertuxkart/
# with a new config file inside).
[miscellany]
global-ignores = *.o *.lo *.la #*# .*.rej *.rej .*~ *~ .#* ._* .DS_Store *.blend1 *.blend2
enable-auto-props = yes
[auto-props]
*.c = svn:eol-style=native;svn:keywords=Author Date Id Revision
*.cpp = svn:eol-style=native;svn:keywords=Author Date Id Revision
*.h = svn:eol-style=native;svn:keywords=Author Date Id Revision
*.hpp = svn:eol-style=native;svn:keywords=Author Date Id Revision
*.dsp = svn:eol-style=CRLF
*.dsw = svn:eol-style=CRLF
*.sh = svn:eol-style=native;svn:executable;svn:keywords=Author Date Id Revision
*.txt = svn:eol-style=native
*.png = svn:mime-type=image/png
*.jpg = svn:mime-type=image/jpeg
Makefile = svn:eol-style=native;svn:keywords=Author Date Id Revision
*.jpeg = svn:mime-type=image/jpeg
*.gif = svn:mime-type=image/gif
*.svg = svn:mime-type=image/svg+xml
*.htm = svn:mime-type=text/html
*.html = svn:mime-type=text/html
*.css = svn:mime-type=text/css
*.pdf = svn:mime-type=application/pdf
SConstruct = svn:eol-style=native;svn:keywords=Author Date Id Revision
*.xml = svn:eol-style=LF;svn:mime-type=text/xml
*.py = svn:eol-style=native;svn:keywords=Author Date Id Revision

33
TODO.md
View File

@@ -1,33 +0,0 @@
##TODO
SuperTuxKart is looking for additional man power to make this
one of the best free linux games out there :) We need (in
no particular order):
1. Musicians/sound engineers
- Create additional background soundtrack
- Create sound effects
2. Artists and track designer
- Create additional tracks
- Create additional art work for tracks,
background images
3. Developers
- Check our bug and enhancement request tracker on
https://github.com/supertuxkart/stk-code/issues
- Extend the current web page, keep it up to date
4. Tester
- For just about everything
- Esp. different platforms and graphics cards
5. Writers
- Write documentation, ranging from man page, to
a description for the web, to a design document, ...
If you want to help the SuperTuxKart - Project, please
contact us on the email list: [supertuxkart-devel@lists.sourceforge.net](mailto:supertuxkart-devel@lists.sourceforge.net)
Thanks in advance!
-- The SuperTuxKart-Team
For details, see <http://supertuxkart.sourceforge.net/Get_involved>

174
android/Android.mk Normal file
View File

@@ -0,0 +1,174 @@
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
# OpenAL
LOCAL_MODULE := openal
LOCAL_SRC_FILES := obj/openal/libopenal.a
include $(PREBUILT_STATIC_LIBRARY)
include $(CLEAR_VARS)
# OGG
LOCAL_MODULE := ogg
LOCAL_SRC_FILES := obj/libogg/src/.libs/libogg.a
include $(PREBUILT_STATIC_LIBRARY)
include $(CLEAR_VARS)
# Vorbis
LOCAL_MODULE := vorbis
LOCAL_SRC_FILES := obj/libvorbis/lib/.libs/libvorbis.a
include $(PREBUILT_STATIC_LIBRARY)
include $(CLEAR_VARS)
# Vorbisfile
LOCAL_MODULE := vorbisfile
LOCAL_SRC_FILES := obj/libvorbis/lib/.libs/libvorbisfile.a
include $(PREBUILT_STATIC_LIBRARY)
include $(CLEAR_VARS)
# CURL
LOCAL_MODULE := curl
LOCAL_SRC_FILES := obj/curl/lib/.libs/libcurl.a
include $(PREBUILT_STATIC_LIBRARY)
include $(CLEAR_VARS)
# libcrypto
LOCAL_MODULE := libcrypto
LOCAL_SRC_FILES := obj/openssl/libcrypto.a
include $(PREBUILT_STATIC_LIBRARY)
include $(CLEAR_VARS)
# libssl
LOCAL_MODULE := libssl
LOCAL_SRC_FILES := obj/openssl/libssl.a
include $(PREBUILT_STATIC_LIBRARY)
include $(CLEAR_VARS)
# JPEG
LOCAL_MODULE := jpeglib
LOCAL_SRC_FILES := obj/jpeglib/libjpeglib.a
include $(PREBUILT_STATIC_LIBRARY)
include $(CLEAR_VARS)
# Freetype
LOCAL_MODULE := freetype
LOCAL_SRC_FILES := obj/freetype/objs/.libs/libfreetype.a
include $(PREBUILT_STATIC_LIBRARY)
include $(CLEAR_VARS)
# zlib
LOCAL_MODULE := zlib
LOCAL_SRC_FILES := obj/zlib/libz.a
include $(PREBUILT_STATIC_LIBRARY)
include $(CLEAR_VARS)
# PNG
LOCAL_MODULE := png
LOCAL_SRC_FILES := obj/libpng/libpng.a
include $(PREBUILT_STATIC_LIBRARY)
include $(CLEAR_VARS)
# ifaddrs
LOCAL_MODULE := ifaddrs
LOCAL_PATH := .
LOCAL_SRC_FILES := ../lib/ifaddrs/ifaddrs.c
LOCAL_CFLAGS := -I../lib/ifaddrs
include $(BUILD_STATIC_LIBRARY)
include $(CLEAR_VARS)
# AngelScript
LOCAL_MODULE := angelscript
LOCAL_PATH := .
LOCAL_CPP_FEATURES += rtti exceptions
LOCAL_SRC_FILES := $(wildcard ../lib/angelscript/source/*.S) \
$(wildcard ../lib/angelscript/source/*.cpp)
LOCAL_CFLAGS := -I../lib/angelscript/source/
include $(BUILD_STATIC_LIBRARY)
include $(CLEAR_VARS)
# ENET
LOCAL_MODULE := enet
LOCAL_PATH := .
LOCAL_CPP_FEATURES += rtti
LOCAL_SRC_FILES := $(wildcard ../lib/enet/*.c)
LOCAL_CFLAGS := -I../lib/enet/include/ -DHAS_SOCKLEN_T
include $(BUILD_STATIC_LIBRARY)
include $(CLEAR_VARS)
# Bullet
LOCAL_MODULE := bullet
LOCAL_PATH := .
LOCAL_CPP_FEATURES += rtti
LOCAL_SRC_FILES := $(wildcard ../lib/bullet/src/*/*.cpp) \
$(wildcard ../lib/bullet/src/*/*/*.cpp)
LOCAL_CFLAGS := -I../lib/bullet/src/
include $(BUILD_STATIC_LIBRARY)
include $(CLEAR_VARS)
# Irrlicht
LOCAL_MODULE := irrlicht
LOCAL_PATH := .
LOCAL_CPP_FEATURES += rtti
LOCAL_SRC_FILES := $(wildcard ../lib/irrlicht/source/Irrlicht/*.cpp) \
$(wildcard ../lib/irrlicht/source/Irrlicht/Android/*.cpp)
LOCAL_CFLAGS := -I../lib/irrlicht/source/Irrlicht/ \
-I../lib/irrlicht/include/ \
-Iobj/jpeglib/ \
-Iobj/libpng/ \
-Iobj/zlib/ \
-I$(call my-dir)/../../sources/android/native_app_glue
-std=gnu++0x
LOCAL_STATIC_LIBRARIES := jpeglib png zlib
include $(BUILD_STATIC_LIBRARY)
include $(CLEAR_VARS)
# STK
LOCAL_MODULE := main
LOCAL_PATH := .
LOCAL_CPP_FEATURES += rtti exceptions
LOCAL_SRC_FILES := $(wildcard ../src/*.cpp) \
$(wildcard ../src/*/*.cpp) \
$(wildcard ../src/*/*/*.cpp)
LOCAL_LDLIBS := -llog -landroid -lEGL -lGLESv3 -lOpenSLES
LOCAL_CFLAGS := -I../lib/angelscript/include \
-I../lib/bullet/src \
-I../lib/enet/include \
-I../lib/ifaddrs \
-I../lib/irrlicht/include \
-I../lib/irrlicht/source/Irrlicht \
-I../src \
-Iobj/curl/include \
-Iobj/freetype/include \
-Iobj/libogg/include \
-Iobj/libvorbis/include \
-Iobj/openal/include \
-I$(call my-dir)/../../sources/android/native_app_glue \
-DUSE_GLES2 \
-DHAVE_OGGVORBIS \
-DNDEBUG \
-std=gnu++0x
LOCAL_STATIC_LIBRARIES := irrlicht bullet enet freetype ifaddrs angelscript \
vorbisfile vorbis ogg openal curl libssl libcrypto \
gnustl_static android_native_app_glue
include $(BUILD_SHARED_LIBRARY)
include $(CLEAR_VARS)
$(call import-module,android/native_app_glue)

View File

@@ -0,0 +1,38 @@
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="org.supertuxkart.stk"
android:versionCode="1"
android:versionName="1.0"
android:installLocation="auto">
<!-- This .apk has no Java code itself, so set hasCode to false. -->
<application android:label="@string/app_name"
android:icon="@drawable/icon"
android:hasCode="false"
android:theme="@android:style/Theme.NoTitleBar.Fullscreen"
android:hardwareAccelerated="true">
<activity android:name="android.app.NativeActivity"
android:label="@string/app_name"
android:configChanges="fontScale|keyboard|keyboardHidden|layoutDirection|locale|mcc|mnc|navigation|orientation|screenLayout|screenSize|uiMode"
android:screenOrientation="sensorLandscape">
<!-- Tell NativeActivity the name of or .so -->
<meta-data android:name="android.app.lib_name"
android:value="main" />
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
<uses-sdk android:minSdkVersion="19" />
<uses-feature android:glEsVersion="0x00020000" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_MEDIA_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_MEDIA_STORAGE" />
<uses-permission android:name="android.permission.INTERNET" />
</manifest>

180
android/README.ANDROID Normal file
View File

@@ -0,0 +1,180 @@
================================================================================
SUPERTUXKART
================================================================================
--------------------------------------------------------------------------------
SYSTEM REQUIREMENTS
--------------------------------------------------------------------------------
To run SuperTuxKart on Android, you need a device that meets following
requirements:
- Android 4.4 or later
- Processor compatible with armv7 or x86
- GPU that supports OpenGL ES 3.0
- 1 GB RAM (STK uses ~150 MB in minimal configuration)
- 300 MB of free space on internal storage
- Touch screen or external keyboard
--------------------------------------------------------------------------------
COMPILATION
--------------------------------------------------------------------------------
The build scripts are designed to run under linux. They may work under cygwin
after some tweaks, but atm. only linux is supported.
Dependencies list (may be incomplete):
autoconf, automake, make, python, gradle, ant, imagemagick, cmake,
vorbis-tools
Additionally some dependencies for optimize_data script:
advancecomp, libjpeg-progs, optipng
Before compilation you must download the package with dependencies from:
https://github.com/supertuxkart/dependencies
and extract it to stk-code/lib. It contains sources of libraries that are used
in STK, but are not availiable in stk-code repository (curl, freetype, openal).
You need also Android SDK for android-19 platform (the API for Android 4.4) and
Android NDK. Note that NDK >= r15b is atm. not supported. Version r12b is
strongly recommended, because it's known that it works without issues.
You need to create proper "android-sdk" and "android-ndk" symlinks in the
directory with Android project, so that the compilation script will have access
to the SDK and NDK. These paths can be also set in SDK_PATH and NDK_PATH
environmental variables.
Before running the compilation, run the generate_assets script, so that
selected assets will be copied to "assets" directory, and then included in the
apk file.
You can select different karts and tracks by setting KARTS and TRACKS variables
in the generate_assets.sh script at the beginning of file.
When you are creating the assets directory manually, note that the
directories.txt file is urgently needed and it is used by the application for
extracting assets.
If the assets directory is already prepared, you can run "./make.sh" command to
build the project and create an apk file. Note that all arguments are passed to
the make command, so that you can run "./make.sh -j5" for multi-threaded build.
If you want to prepare a package for particular architecture, you can choose it
by setting the COMPILE_ARCH environmental variable. At this stage, supported
architectures are "armv7", "x86" and "aarch64". The default is "armv7".
You can choose build type by setting BUILD_TYPE environment variable to "debug"
or "release". The default is debug build. Note that if you choose release build,
you have to manually sign the apk with your key and run zipalign.
Additionally you can choose the build tool by setting BUILD_TOOL environment
variable to "gradle" or "ant". Note that ant has been already removed from
Android SDK, so you have to use SDK <= 25.2.5 for building with ant. By default
the BUILD_TOOL is set to "gradle".
You can override the SDK build-tools version by setting the BUILD_TOOLS_VER
environment variable.
Basically if all dependencies are installed in the system, it should be enough
to just run:
export SDK_PATH=/path/to/your/android/sdk
export NDK_PATH=/path/to/your/android/ndk
./generate_assets.sh
./make.sh -j5
--------------------------------------------------------------------------------
RELEASE BUILD
--------------------------------------------------------------------------------
Making a release build is similar to typical compilation, but there are few
additional things to do.
You have to change version numbers. This is important, because assets manager
in STK checks these numbers and detects if already extracted data files are
up to date. So that when you will install new STK version, this will force new
data extraction automatically.
So that you have to:
1. Change "data/supertuxkart.git" to "data/supertuxkart.VERSION_NUMBER"
2. Open "src/utils/constants.cpp" and change:
const char STK_VERSION[] = "git";
to
const char STK_VERSION[] = "VERSION_NUMBER";
where "VERSION_NUMBER" is for example "0.9.3" or "git20170409" or whatever.
3. You can also update these lines in "android/AndroidManifest.xml":
android:versionCode="1"
android:versionName="1.0"
Before compilation you have to set:
export BUILD_TYPE=release
and then you make standard compilation with:
./generate_assets.sh
./make.sh -j5
The compiled apk is unsigned, so you have to sign it with your key. To sign it,
you have to run:
jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore \
my-release-key.keystore SuperTuxKart-release-unsigned.apk alias_name
and then:
zipalign -v 4 SuperTuxKart-release-unsigned.apk SuperTuxKart-release.apk
--------------------------------------------------------------------------------
KNOWN ISSUES
--------------------------------------------------------------------------------
1. It's not possible to compile STK for Android < 4.4 due to missing GLES 3.0
functions. It is technically possible to do - check GLES context version,
load OpenGL functions dynamically using EGL, and if they are not loaded
properly, then fallback to GLES 2.0.
2. It never ocurred for me, but it's possible that EGL context is lost in some
cases. SuperTuxKart is not designed to re-create all textures at any moment,
so this is a "Wontfix", at least for now.
3. We use "exit(0)" at the end of main function. We shouldn't do it and we
should just return from the main function. But STK uses some global
variables and their values are remembered when the game is restarted. We
should properly clear them or re-initialize on startup. Using the "exit(0)"
is not-that-bad workaround, but it may cause a crash on exit sometimes.
It seems to affect only Android 5.0. More information about the crash:
https://code.google.com/p/android/issues/detail?id=160824
4. STK crashes on startup on some devices when aarch64 build is made using
Android r13 NDK. The r13 version has rather big modifications (it uses clang
instead of gcc by default). This is probably a bug in NDK/compiler/OS, but
for this reason using NDK r12 for 64-bit arm compilation is preferred.
5. Angelscript doesn't have full support for aarch64 builds, so that scripting
won't work on this platform.
6. Turning left/right using accelerometer is available, but at this stage the
default screen orientation is not automatically detected and user must
manually choose if he needs "phone" or "tablet" accelerometer.

31
android/build.gradle Normal file
View File

@@ -0,0 +1,31 @@
buildscript
{
repositories
{
jcenter()
}
dependencies
{
classpath 'com.android.tools.build:gradle:2.2.3'
}
}
apply plugin: 'com.android.application'
android
{
compileSdkVersion sdk_version.toInteger()
buildToolsVersion build_tools_ver
sourceSets
{
main
{
manifest.srcFile 'AndroidManifest.xml'
jniLibs.srcDirs = ['libs']
res.srcDirs = ['res']
assets.srcDirs = ['assets']
}
}
}

6
android/build.xml Normal file
View File

@@ -0,0 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<project name="SuperTuxKart" default="help">
<import file="${sdk.dir}/tools/ant/build.xml" />
</project>

598
android/generate_assets.sh Executable file
View File

@@ -0,0 +1,598 @@
#!/bin/sh
#
# (C) 2016-2017 Dawid Gan, under the GPLv3
#
# A script that generates data files for Android apk
# Below you can find some simple configuration variables.
# It's allowed to set "all" for KARTS and TRACKS if it's intended to create
# package with full data.
# The karts and tracks directories shouldn't exist in ASSETS_DIRS variable
# because they are handled separately.
# The TEXTURE_SIZE and SOUND_QUALITY take effect only if DECREASE_QUALITY has
# value greater than 0.
# The CONVERT_TO_JPG variable enables converting all images that are safe to
# convert and keeps other images untouched.
# The script needs imagemagick and ogg utils installed to use DECREASE_QUALITY
# feature
################################################################################
export KARTS="all"
export TRACKS="abyss battleisland cave cornfield_crossing endcutscene \
featunlocked fortmagma gplose gpwin hacienda icy_soccer_field \
introcutscene introcutscene2 lighthouse mines olivermath \
overworld sandtrack scotland snowmountain snowtuxpeak \
soccer_field stadium tutorial zengarden"
export ASSETS_PATHS="../data \
../../stk-assets \
../../supertuxkart-assets"
export ASSETS_DIRS="library models music sfx textures"
export TEXTURE_SIZE=256
export JPEG_QUALITY=85
export PNG_QUALITY=95
export SOUND_QUALITY=42
export SOUND_MONO=1
export SOUND_SAMPLE=32000
export RUN_OPTIMIZE_SCRIPT=0
export DECREASE_QUALITY=1
export CONVERT_TO_JPG=1
export CONVERT_TO_JPG_BLACKLIST="data/karts/hexley/hexley_kart_diffuse.png"
export BLACKLIST_FILES="data/music/cocoa_river_fast.ogg2"
################################################################################
export LANG=C
cd "`dirname "$0"`"
# Find assets path
for ASSETS_PATH in $ASSETS_PATHS; do
if [ -d $ASSETS_PATH ] && [ `ls $ASSETS_PATH | grep -c tracks` -gt 0 ]; then
echo "Assets found in $ASSETS_PATH"
ASSETS_PATH_FOUND=1
break
fi
done
if [ -z $ASSETS_PATH_FOUND ]; then
echo "Couldn't find assets path"
exit 1
fi
if [ ! -d "../data" ]; then
echo "Couldn't find data directory"
exit 1
fi
# Clear previous assets directory
echo "Clear previous assets directory"
rm -rf assets
# Copy all assets
echo "Copy all assets"
mkdir -p assets/data
for DIR in `ls $ASSETS_PATH`; do
CAN_BE_COPIED=0
for ASSETS_DIR in $ASSETS_DIRS; do
if [ $DIR = $ASSETS_DIR ]; then
CAN_BE_COPIED=1
break
fi
done;
# Don't copy karts and tracks. It will be handled later
BLACKLIST_ASSETS="karts tracks"
for ASSETS_DIR in $BLACKLIST_ASSETS; do
if [ $DIR = $ASSETS_DIR ]; then
CAN_BE_COPIED=0
break
fi
done;
if [ $CAN_BE_COPIED -gt 0 ]; then
cp -a "$ASSETS_PATH/$DIR" assets/data/
fi
done;
# Copy selected tracks
echo "Copy selected tracks"
mkdir -p assets/data/tracks
for DIR in `ls $ASSETS_PATH/tracks`; do
CAN_BE_COPIED=0
if [ "$TRACKS" != "all" ]; then
for TRACK in $TRACKS; do
if [ $DIR = $TRACK ]; then
CAN_BE_COPIED=1
break
fi
done;
else
CAN_BE_COPIED=1
fi
if [ $CAN_BE_COPIED -gt 0 ]; then
cp -a "$ASSETS_PATH/tracks/$DIR" assets/data/tracks/
fi
done
# Copy selected karts
echo "Copy selected karts"
mkdir -p assets/data/karts
for DIR in `ls $ASSETS_PATH/karts`; do
CAN_BE_COPIED=0
if [ "$KARTS" != "all" ]; then
for KART in $KARTS; do
if [ $DIR = $KART ]; then
CAN_BE_COPIED=1
break
fi
done;
else
CAN_BE_COPIED=1
fi
if [ $CAN_BE_COPIED -gt 0 ]; then
cp -a "$ASSETS_PATH/karts/$DIR" assets/data/karts/
fi
done
# Decrease assets quality in order to save some disk space and RAM
echo "Decrease assets quality"
convert_image()
{
FILE="$1"
FILE_TYPE="$2"
echo "Convert file: $FILE"
if [ ! -f "$FILE" ]; then
echo " File doesn't exist."
return
fi
W=`identify -format "%[fx:w]" "$FILE"`
H=`identify -format "%[fx:h]" "$FILE"`
if [ -z $W ] || [ -z $H ]; then
echo "Couldn't convert $FILE file"
return
fi
if [ $W -gt $TEXTURE_SIZE ] || [ $H -gt $TEXTURE_SIZE ]; then
if [ $W -gt $H ]; then
SCALED_W=$TEXTURE_SIZE
SCALED_H=$(($TEXTURE_SIZE * $H / $W))
else
SCALED_W=$(($TEXTURE_SIZE * $W / $H))
SCALED_H=$TEXTURE_SIZE
fi
SCALE_CMD="-scale ${SCALED_W}x${SCALED_H}"
fi
if [ "$FILE_TYPE" = "jpg" ]; then
QUALITY_CMD="-quality $JPEG_QUALITY"
elif [ "$FILE_TYPE" = "png" ]; then
QUALITY_CMD="-quality $PNG_QUALITY"
fi
convert $SCALE_CMD $QUALITY_CMD "$FILE" "tmp.$FILE_TYPE"
if [ -s "tmp.$FILE_TYPE" ]; then
SIZE_OLD=`du -k "$FILE" | cut -f1`
SIZE_NEW=`du -k "tmp.$FILE_TYPE" | cut -f1`
if [ $SIZE_NEW -lt $SIZE_OLD ]; then
mv "tmp.$FILE_TYPE" "$FILE"
fi
fi
rm -f "tmp.$FILE_TYPE"
}
convert_sound()
{
FILE="$1"
echo "Convert file: $FILE"
if [ ! -f "$FILE" ]; then
echo " File doesn't exist."
return
fi
oggdec "$FILE" -o tmp.wav
if [ -s tmp.wav ]; then
OGGENC_CMD=""
if [ "$SOUND_MONO" -gt 0 ]; then
OGGENC_CMD="$OGGENC_CMD --downmix"
fi
OGG_RATE=`ogginfo "$FILE" | grep "Rate: " | cut -f 2 -d " " \
| grep -o '[0-9]*'`
if [ ! -z "$OGG_RATE" ] && [ "$OGG_RATE" -gt "$SOUND_SAMPLE" ]; then
OGGENC_CMD="$OGGENC_CMD --resample $SOUND_SAMPLE"
fi
OGGENC_CMD="$OGGENC_CMD -b $SOUND_QUALITY"
oggenc $OGGENC_CMD tmp.wav -o tmp.ogg
fi
if [ -s tmp.ogg ]; then
SIZE_OLD=`du -k "$FILE" | cut -f1`
SIZE_NEW=`du -k "tmp.ogg" | cut -f1`
if [ $SIZE_NEW -lt $SIZE_OLD ]; then
mv tmp.ogg "$FILE"
fi
fi
rm -f tmp.wav tmp.ogg
}
convert_to_jpg()
{
FILE="$1"
echo "Convert file: $FILE"
if [ ! -f "$FILE" ]; then
echo " File doesn't exist."
return
fi
ALREADY_CONVERTED=0
if [ -s "./converted_textures" ]; then
while read -r CONVERTED_TEXTURE; do
if [ "$FILE" = "$CONVERTED_TEXTURE" ]; then
ALREADY_CONVERTED=1
break
fi
done < "./converted_textures"
fi
if [ $ALREADY_CONVERTED -eq 1 ]; then
return
fi
BLACKLISTED=0
for BLACKLIST_FILE in $CONVERT_TO_JPG_BLACKLIST; do
if [ "$FILE" = "assets/$BLACKLIST_FILE" ]; then
BLACKLISTED=1
break
fi
done
if [ $BLACKLISTED -eq 1 ]; then
#echo " File is blacklisted. Ignore..."
continue
fi
FILE_EXTENSION=`echo "$FILE" | tail -c 5`
if [ `echo "$FILE_EXTENSION" | head -c 1` != "." ]; then
#echo " Unsupported file extension. Ignore..."
continue
fi
FILE_FORMAT=`identify -format %m "$FILE"`
if [ "$FILE_FORMAT" = "JPEG" ]; then
#echo " File is already JPEG. Ignore..."
continue
fi
IS_OPAQUE=`identify -format '%[opaque]' "$FILE"`
#HAS_ALPHA=`identify -format '%A' "$FILE"`
if [ "$IS_OPAQUE" = "False" ] || [ "$IS_OPAQUE" = "false" ]; then
#echo " File has alpha channel. Ignore..."
continue
fi
DIRNAME="`dirname "$FILE"`"
BASENAME="`basename "$FILE"`"
IS_GLOSS_MAP=`find "$DIRNAME" -iname "*.xml" -exec cat {} \; \
| grep -c "gloss-map=\"$BASENAME\""`
if [ $IS_GLOSS_MAP -gt 0 ]; then
#echo " File is a gloss-map. Ignore..."
continue
fi
NEW_FILE="`echo $FILE | head -c -5`.jpg"
if [ -f "$NEW_FILE" ]; then
#echo " There is already a file with .jpg extension. Ignore..."
continue
fi
# We can check if new file is smaller
convert -quality $JPEG_QUALITY "$FILE" "$NEW_FILE"
rm -f "$FILE"
echo "$FILE" >> "./converted_textures"
}
convert_to_jpg_extract_b3dz()
{
FILE="$1"
echo "Convert file: $FILE"
if [ ! -f "$FILE" ]; then
echo " File doesn't exist."
return
fi
DIRNAME="`dirname "$FILE"`"
unzip "$FILE" -d "$DIRNAME"
rm -f "$FILE"
TEXNAME="`basename "$FILE"`"
NEWNAME="`echo $TEXNAME | head -c -6`.b3d"
sed -i "s/\"$TEXNAME\"/\"$NEWNAME\"/g" "$DIRNAME/kart.xml"
}
convert_to_jpg_update_b3d()
{
FILE="$1"
echo "Convert file: $FILE"
if [ ! -f "$1" ]; then
echo " File doesn't exist."
return
fi
HEX_FILE=`hexdump -ve '1/1 "%.2x"' "$FILE"`
TEXS_CHUNK="54455853"
TEXS_CHUNK_POS=24
FOUND_CHUNK=`echo $HEX_FILE | head -c $(($TEXS_CHUNK_POS + 8)) \
| tail -c +$(($TEXS_CHUNK_POS + 1))`
if [ -z "$FOUND_CHUNK" ] || [ "$FOUND_CHUNK" != "$TEXS_CHUNK" ]; then
echo " File has no textures."
return
fi
TEXS_SIZE=`echo $HEX_FILE | head -c $(($TEXS_CHUNK_POS + 16)) | tail -c 8`
TEXS_SIZE_CONVERTED=`echo $TEXS_SIZE | cut -c7-8`
TEXS_SIZE_CONVERTED=$TEXS_SIZE_CONVERTED`echo $TEXS_SIZE | cut -c5-6`
TEXS_SIZE_CONVERTED=$TEXS_SIZE_CONVERTED`echo $TEXS_SIZE | cut -c3-4`
TEXS_SIZE_CONVERTED=$TEXS_SIZE_CONVERTED`echo $TEXS_SIZE | cut -c1-2`
TEXS_SIZE_CONVERTED=`echo $((0x$TEXS_SIZE_CONVERTED))`
if [ $TEXS_SIZE_CONVERTED -le 0 ]; then
echo " Invalid TEXS size value."
return
fi
TEXS_BEGIN=$(($TEXS_CHUNK_POS + 16))
TEXS_END=$(($TEXS_BEGIN + $TEXS_SIZE_CONVERTED * 2))
HEX_TEXS=`echo $HEX_FILE | head -c $TEXS_END | tail -c +$(($TEXS_BEGIN+1))`
CURR_POS=0
while [ $CURR_POS -lt $TEXS_END ]; do
NULL_POS=`echo $HEX_TEXS | tail -c +$(($CURR_POS+1)) | grep -b -o "00" \
| head -n 1 | cut -f1 -d":"`
if [ -z $NULL_POS ]; then
#echo " Done."
break
fi
if [ $NULL_POS -lt 4 ]; then
echo " Something went wrong..."
break
fi
TEXNAME_BEGIN=$((($TEXS_BEGIN + $CURR_POS) / 2))
TEXNAME_END=$((($TEXS_BEGIN + $CURR_POS + $NULL_POS) / 2))
CURR_POS=$(($CURR_POS + $NULL_POS + 58))
TEXTURE_NAME=`dd if="$FILE" bs=1 skip=$TEXNAME_BEGIN \
count=$(($TEXNAME_END - $TEXNAME_BEGIN)) 2> /dev/null`
DIRNAME="`dirname "$FILE"`"
TEXTURE_PATH="$DIRNAME/$TEXTURE_NAME"
IS_CONVERTED=0
while read -r CONVERTED_TEXTURE; do
if [ "$TEXTURE_PATH" = "$CONVERTED_TEXTURE" ]; then
IS_CONVERTED=1
break
fi
done < "./converted_textures"
if [ $IS_CONVERTED -eq 1 ]; then
echo -n ".jpg" | dd of="$FILE" bs=1 seek=$(($TEXNAME_END - 4)) \
conv=notrunc 2> /dev/null
fi;
done
}
convert_to_jpg_update_spm()
{
FILE="$1"
echo "Convert file: $FILE"
if [ ! -f "$1" ]; then
echo " File doesn't exist."
return
fi
HEX_FILE=`hexdump -ve '1/1 "%.2x"' "$FILE"`
SP_HEADER="5350"
SP_FOUND=`echo $HEX_FILE | head -c 4`
if [ -z "$SP_FOUND" ] || [ "$SP_FOUND" != "$SP_HEADER" ]; then
echo " Unsupported format."
return
fi
TEXS_BEGIN=60
TEXS_COUNT=`echo $HEX_FILE | head -c $TEXS_BEGIN | tail -c 4`
TEXS_COUNT_CONVERTED=`echo $TEXS_COUNT | cut -c3-4`
TEXS_COUNT_CONVERTED=$TEXS_COUNT_CONVERTED`echo $TEXS_COUNT | cut -c1-2`
TEXS_COUNT_CONVERTED=`echo $((0x$TEXS_COUNT_CONVERTED))`
TEXS_COUNT_CONVERTED=$(($TEXS_COUNT_CONVERTED * 2))
if [ $TEXS_COUNT_CONVERTED -le 0 ]; then
echo " Invalid textures count value."
return
fi
CURR_POS=$(($TEXS_BEGIN + 2))
while [ $TEXS_COUNT_CONVERTED -gt 0 ]; do
TEXS_COUNT_CONVERTED=$(($TEXS_COUNT_CONVERTED - 1))
TEX_LEN=`echo $HEX_FILE | head -c $(($CURR_POS)) | tail -c 2`
TEX_LEN=`echo $((0x$TEX_LEN))`
TEXNAME_BEGIN=$(($CURR_POS / 2))
TEXNAME_END=$(($CURR_POS / 2 + $TEX_LEN))
CURR_POS=$(($CURR_POS + 2 + $TEX_LEN * 2))
if [ $TEX_LEN -eq 0 ]; then
#echo " Empty texture name, ignore..."
continue
fi
TEXTURE_NAME=`dd if="$FILE" bs=1 skip=$TEXNAME_BEGIN \
count=$(($TEXNAME_END - $TEXNAME_BEGIN)) 2> /dev/null`
DIRNAME="`dirname "$FILE"`"
TEXTURE_PATH="$DIRNAME/$TEXTURE_NAME"
IS_CONVERTED=0
while read -r CONVERTED_TEXTURE; do
if [ "$TEXTURE_PATH" = "$CONVERTED_TEXTURE" ]; then
IS_CONVERTED=1
break
fi
done < "./converted_textures"
if [ $IS_CONVERTED -eq 1 ]; then
echo -n ".jpg" | dd of="$FILE" bs=1 seek=$(($TEXNAME_END - 4)) \
conv=notrunc 2> /dev/null
fi
done
}
convert_to_jpg_update_xml()
{
FILE="$1"
echo "Convert file: $FILE"
if [ ! -f "$FILE" ]; then
echo " File doesn't exist."
return
fi
DIRNAME="`dirname "$FILE"`"
while read -r CONVERTED_TEXTURE; do
DIRNAME_TEX="`dirname "$CONVERTED_TEXTURE"`"
if [ "$DIRNAME_TEX" != "$DIRNAME" ]; then
continue;
fi
TEXNAME="`basename "$CONVERTED_TEXTURE" | head -c -5`"
sed -i "s/\"$TEXNAME.[pP][nN][gG]/\"$TEXNAME.jpg/g" "$FILE"
sed -i "s/ $TEXNAME.[pP][nN][gG]/ $TEXNAME.jpg/g" "$FILE"
done < "./converted_textures"
}
if [ $DECREASE_QUALITY -gt 0 ]; then
find assets/data -iname "*.png" | while read f; do convert_image "$f" "png"; done
find assets/data -iname "*.jpg" | while read f; do convert_image "$f" "jpg"; done
find assets/data -iname "*.ogg" | while read f; do convert_sound "$f"; done
fi
if [ $CONVERT_TO_JPG -gt 0 ]; then
rm -f "./converted_textures"
find assets/data -not -path "assets/data/textures/*" -iname "*.png" | while read f; do convert_to_jpg "$f"; done
find assets/data -iname "*.b3dz" | while read f; do convert_to_jpg_extract_b3dz "$f"; done
find assets/data -iname "*.b3d" | while read f; do convert_to_jpg_update_b3d "$f"; done
find assets/data -iname "*.spm" | while read f; do convert_to_jpg_update_spm "$f"; done
find assets/data -iname "*.xml" | while read f; do convert_to_jpg_update_xml "$f"; done
if [ -s "./converted_textures" ]; then
echo "Converted textures:"
cat "./converted_textures"
rm -f "./converted_textures"
fi
fi
# Copy data directory
echo "Copy data directory"
cp -a ../data/* assets/data/
# Remove unused files
for BLACKLIST_FILE in $BLACKLIST_FILES; do
rm -f "assets/$BLACKLIST_FILE"
done
# Run optimize_data.sh script
if [ $RUN_OPTIMIZE_SCRIPT -gt 0 ]; then
echo "Run optimize_data.sh script"
sh -c 'cd assets/data; ../../../data/optimize_data.sh'
fi
# Generate directories list
echo "Generate directories list"
find assets/* -type d > assets/directories.txt
sed -i s/'.\/assets\/'// assets/directories.txt
sed -i s/'assets\/'// assets/directories.txt
# It will be probably ignored by ant, but create it anyway...
touch assets/.nomedia
echo "Done."
exit 0

360
android/make.sh Executable file
View File

@@ -0,0 +1,360 @@
#!/bin/sh
#
# (C) 2016-2017 Dawid Gan, under the GPLv3
#
# A script that creates the apk build
export DIRNAME=$(realpath "$(dirname "$0")")
export NDK_PATH_DEFAULT="$DIRNAME/android-ndk"
export SDK_PATH_DEFAULT="$DIRNAME/android-sdk"
export NDK_TOOLCHAIN_PATH="$DIRNAME/obj/bin"
export NDK_BUILD_SCRIPT="$DIRNAME/Android.mk"
export PATH="$DIRNAME/obj/bin:$PATH"
export CROSS_SYSROOT="$DIRNAME/obj/sysroot"
#export NDK_CCACHE=ccache
export NDK_CPPFLAGS="-O3 -g"
export NDK_ABI_ARMV7=armeabi-v7a
export ARCH_ARMV7=arm
export HOST_ARMV7=arm-linux-androideabi
export NDK_PLATFORM_ARMV7=android-19
export SDK_VERSION_ARMV7=19
export NDK_ABI_X86=x86
export ARCH_X86=x86
export HOST_X86=i686-linux-android
export NDK_PLATFORM_X86=android-19
export SDK_VERSION_X86=19
export NDK_ABI_AARCH64=arm64-v8a
export ARCH_AARCH64=arm64
export HOST_AARCH64=aarch64-linux-android
export NDK_PLATFORM_AARCH64=android-21
export SDK_VERSION_AARCH64=21
# A helper function that checks if error ocurred
check_error()
{
if [ $? -gt 0 ]; then
echo "Error ocurred."
exit
fi
}
# Handle clean command
if [ ! -z "$1" ] && [ "$1" = "clean" ]; then
rm -rf bin
rm -rf build
rm -rf libs
rm -rf obj
rm -rf .gradle
exit
fi
# Check if compilation for different platform has been started before
if [ -f "$DIRNAME/obj/compile_arch" ]; then
PROJECT_ARCH=$(cat "$DIRNAME/obj/compile_arch")
if [ -z "$COMPILE_ARCH" ]; then
COMPILE_ARCH="$PROJECT_ARCH"
elif [ "$PROJECT_ARCH" != "$COMPILE_ARCH" ]; then
echo "Error: Compilation for different platform has been already made."
echo "Run './make.sh clean' first or set COMPILE_ARCH variable" \
"to '$PROJECT_ARCH.'"
exit
fi
fi
# Update variables for selected architecture
if [ -z "$COMPILE_ARCH" ]; then
COMPILE_ARCH="armv7"
fi
if [ "$COMPILE_ARCH" = "armv7" ]; then
export NDK_PLATFORM=$NDK_PLATFORM_ARMV7
export NDK_ABI=$NDK_ABI_ARMV7
export ARCH=$ARCH_ARMV7
export HOST=$HOST_ARMV7
export SDK_VERSION=$SDK_VERSION_ARMV7
elif [ "$COMPILE_ARCH" = "x86" ]; then
export NDK_PLATFORM=$NDK_PLATFORM_X86
export NDK_ABI=$NDK_ABI_X86
export ARCH=$ARCH_X86
export HOST=$HOST_X86
export SDK_VERSION=$SDK_VERSION_X86
elif [ "$COMPILE_ARCH" = "aarch64" ]; then
export NDK_PLATFORM=$NDK_PLATFORM_AARCH64
export NDK_ABI=$NDK_ABI_AARCH64
export ARCH=$ARCH_AARCH64
export HOST=$HOST_AARCH64
export SDK_VERSION=$SDK_VERSION_AARCH64
else
echo "Unknow COMPILE_ARCH: $COMPILE_ARCH. Possible values are: " \
"armv7, aarch64, x86"
exit
fi
# Update variables for selected build type
if [ -z "$BUILD_TYPE" ]; then
BUILD_TYPE="debug"
fi
if [ "$BUILD_TYPE" = "debug" ] || [ "$BUILD_TYPE" = "Debug" ]; then
export ANT_BUILD_TYPE="debug"
export GRADLE_BUILD_TYPE="assembleDebug"
export IS_DEBUG_BUILD=1
elif [ "$BUILD_TYPE" = "release" ] || [ "$BUILD_TYPE" = "Release" ]; then
export ANT_BUILD_TYPE="release"
export GRADLE_BUILD_TYPE="assembleRelease"
export IS_DEBUG_BUILD=0
else
echo "Unsupported BUILD_TYPE: $BUILD_TYPE. Possible values are: " \
"debug, release"
exit
fi
# Check selected build tool
if [ -z "$BUILD_TOOL" ]; then
BUILD_TOOL="gradle"
fi
if [ "$BUILD_TOOL" != "gradle" ] && [ "$BUILD_TOOL" != "ant" ]; then
echo "Unsupported BUILD_TOOL: $BUILD_TOOL. Possible values are: " \
"gradle, ant"
exit
fi
# Check if we have access to the Android NDK and SDK
if [ -z "$NDK_PATH" ]; then
export NDK_PATH="$NDK_PATH_DEFAULT"
fi
if [ -z "$SDK_PATH" ]; then
export SDK_PATH="$SDK_PATH_DEFAULT"
fi
NDK_PATH=$(realpath "$NDK_PATH")
SDK_PATH=$(realpath "$SDK_PATH")
if [ ! -d "$NDK_PATH" ]; then
echo "Error: Couldn't find $NDK_PATH directory. Please create a symlink" \
"to your Android NDK installation in the $NDK_PATH_DEFAULT or set" \
"proper path in the NDK_PATH variable"
exit
fi
if [ ! -d "$SDK_PATH" ]; then
echo "Error: Couldn't find $SDK_PATH directory. Please create a symlink" \
"to your Android SDK installation in the $SDK_PATH_DEFAULT or set" \
"proper path in the SDK_PATH variable"
exit
fi
# Find newest build-tools version
if [ -z "$BUILD_TOOLS_VER" ]; then
BUILD_TOOLS_DIRS=`ls -1 "$SDK_PATH/build-tools" | sort -V -r`
for DIR in $BUILD_TOOLS_DIRS; do
if [ "$DIR" = `echo $DIR | sed 's/[^0-9,.]//g'` ]; then
BUILD_TOOLS_VER="$DIR"
break
fi
done
fi
if [ -z "$BUILD_TOOLS_VER" ] || [ ! -d "$SDK_PATH/build-tools/$BUILD_TOOLS_VER" ]; then
echo "Error: Couldn't detect build-tools version."
exit
fi
# Standalone toolchain
if [ ! -f "$DIRNAME/obj/make_standalone_toolchain.stamp" ]; then
echo "Creating standalone toolchain"
rm -rf "$DIRNAME/obj"
${NDK_PATH}/build/tools/make-standalone-toolchain.sh \
--platform=$NDK_PLATFORM \
--install-dir="$DIRNAME/obj/" \
--arch=$ARCH
check_error
touch "$DIRNAME/obj/make_standalone_toolchain.stamp"
echo $COMPILE_ARCH > "$DIRNAME/obj/compile_arch"
fi
# Freetype
if [ ! -f "$DIRNAME/obj/freetype.stamp" ]; then
echo "Compiling freetype"
mkdir -p "$DIRNAME/obj/freetype"
cp -a -f "$DIRNAME/../lib/freetype/"* "$DIRNAME/obj/freetype"
cd "$DIRNAME/obj/freetype"
./configure --host=$HOST \
--without-zlib \
--without-png \
--without-harfbuzz &&
make $@
check_error
touch "$DIRNAME/obj/freetype.stamp"
fi
# Zlib
if [ ! -f "$DIRNAME/obj/zlib.stamp" ]; then
echo "Compiling zlib"
mkdir -p "$DIRNAME/obj/zlib"
cp -a -f "$DIRNAME/../lib/zlib/"* "$DIRNAME/obj/zlib"
cd "$DIRNAME/obj/zlib"
cmake . -DCMAKE_TOOLCHAIN_FILE=../../../cmake/Toolchain-android.cmake \
-DHOST=$HOST &&
make $@
check_error
touch "$DIRNAME/obj/zlib.stamp"
fi
# Libpng
if [ ! -f "$DIRNAME/obj/libpng.stamp" ]; then
echo "Compiling libpng"
mkdir -p "$DIRNAME/obj/libpng"
mkdir -p "$DIRNAME/obj/libpng/lib"
cp -a -f "$DIRNAME/../lib/libpng/"* "$DIRNAME/obj/libpng"
cd "$DIRNAME/obj/libpng"
cmake . -DCMAKE_TOOLCHAIN_FILE=../../../cmake/Toolchain-android.cmake \
-DHOST=$HOST \
-DZLIB_LIBRARY="$DIRNAME/obj/zlib/libz.a" \
-DZLIB_INCLUDE_DIR="$DIRNAME/obj/zlib/" \
-DPNG_TESTS=0 &&
make $@
check_error
touch "$DIRNAME/obj/libpng.stamp"
fi
# Openal
if [ ! -f "$DIRNAME/obj/openal.stamp" ]; then
echo "Compiling openal"
mkdir -p "$DIRNAME/obj/openal"
cp -a -f "$DIRNAME/../lib/openal/"* "$DIRNAME/obj/openal"
cd "$DIRNAME/obj/openal"
cmake . -DCMAKE_TOOLCHAIN_FILE=../../../cmake/Toolchain-android.cmake \
-DHOST=$HOST \
-DALSOFT_UTILS=0 \
-DALSOFT_EXAMPLES=0 \
-DALSOFT_TESTS=0 \
-DLIBTYPE=STATIC &&
make $@
check_error
touch "$DIRNAME/obj/openal.stamp"
fi
# OpenSSL
if [ ! -f "$DIRNAME/obj/openssl.stamp" ]; then
echo "Compiling openssl"
mkdir -p "$DIRNAME/obj/openssl"
cp -a -f "$DIRNAME/../lib/openssl/"* "$DIRNAME/obj/openssl"
cd "$DIRNAME/obj/openssl"
./Configure android --cross-compile-prefix="$HOST-"
make $@
check_error
touch "$DIRNAME/obj/openssl.stamp"
fi
# Curl
if [ ! -f "$DIRNAME/obj/curl.stamp" ]; then
echo "Compiling curl"
mkdir -p "$DIRNAME/obj/curl"
cp -a -f "$DIRNAME/../lib/curl/"* "$DIRNAME/obj/curl"
cd "$DIRNAME/obj/curl"
CPPFLAGS="-I$DIRNAME/obj/openssl/include $CPPFLAGS" \
LDFLAGS="-L$DIRNAME/obj/openssl/ $LDFLAGS" \
./configure --host=$HOST \
--with-ssl \
--disable-shared \
--enable-static \
--enable-threaded-resolver &&
make $@
check_error
touch "$DIRNAME/obj/curl.stamp"
fi
# Jpeglib
if [ ! -f "$DIRNAME/obj/jpeglib.stamp" ]; then
echo "Compiling jpeglib"
mkdir -p "$DIRNAME/obj/jpeglib"
cp -a -f "$DIRNAME/../lib/jpeglib/"* "$DIRNAME/obj/jpeglib"
cd "$DIRNAME/obj/jpeglib"
cmake . -DCMAKE_TOOLCHAIN_FILE=../../../cmake/Toolchain-android.cmake \
-DHOST=$HOST &&
make $@
check_error
touch "$DIRNAME/obj/jpeglib.stamp"
fi
# Libogg
if [ ! -f "$DIRNAME/obj/libogg.stamp" ]; then
echo "Compiling libogg"
mkdir -p "$DIRNAME/obj/libogg"
cp -a -f "$DIRNAME/../lib/libogg/"* "$DIRNAME/obj/libogg"
cd "$DIRNAME/obj/libogg"
./configure --host=$HOST &&
make $@
check_error
touch "$DIRNAME/obj/libogg.stamp"
fi
# Libvorbis
if [ ! -f "$DIRNAME/obj/libvorbis.stamp" ]; then
echo "Compiling libvorbis"
mkdir -p "$DIRNAME/obj/libvorbis"
cp -a -f "$DIRNAME/../lib/libvorbis/"* "$DIRNAME/obj/libvorbis"
cd "$DIRNAME/obj/libvorbis"
CPPFLAGS="-I$DIRNAME/obj/libogg/include $CPPFLAGS" \
LDFLAGS="-L$DIRNAME/obj/libogg/src/.libs $LDFLAGS" \
./configure --host=$HOST &&
make $@
check_error
touch "$DIRNAME/obj/libvorbis.stamp"
fi
# STK
echo "Compiling STK"
cd "$DIRNAME"
${NDK_PATH}/ndk-build $@ \
APP_BUILD_SCRIPT="$NDK_BUILD_SCRIPT" \
APP_ABI="$NDK_ABI" \
APP_PLATFORM="$NDK_PLATFORM" \
APP_CPPFLAGS="$NDK_CPPFLAGS" \
APP_STL=gnustl_static \
NDK_DEBUG=$IS_DEBUG_BUILD
check_error
# Build apk
echo "Building APK"
sed -i "s/minSdkVersion=\".*\"/minSdkVersion=\"$SDK_VERSION\"/g" \
"$DIRNAME/AndroidManifest.xml"
if [ "$BUILD_TOOL" = "gradle" ]; then
export ANDROID_HOME="$SDK_PATH"
gradle -Psdk_version=$SDK_VERSION \
-Pbuild_tools_ver="$BUILD_TOOLS_VER" \
$GRADLE_BUILD_TYPE
elif [ "$BUILD_TOOL" = "ant" ]; then
ant -Dsdk.dir="$SDK_PATH" \
-Dtarget=$NDK_PLATFORM \
$ANT_BUILD_TYPE
fi
check_error

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 37 KiB

View File

@@ -0,0 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name">SuperTuxKart</string>
</resources>

18
cmake/FindEGL.cmake Normal file
View File

@@ -0,0 +1,18 @@
# - Find EGL
# Find the EGL includes and libraries
#
# Following variables are provided:
# EGL_FOUND
# True if EGL has been found
# EGL_INCLUDE_DIR
# The include directory of EGL
# EGL_LIBRARY
# EGL library list
find_path(EGL_INCLUDE_DIR EGL/egl.h)
find_library(EGL_LIBRARY NAMES EGL)
include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(EGL DEFAULT_MSG EGL_LIBRARY EGL_INCLUDE_DIR)
mark_as_advanced(EGL_LIBRARY EGL_INCLUDE_DIR)

View File

@@ -10,8 +10,8 @@
# Freetype library list
if(WIN32)
find_path(FREETYPE_INCLUDE_DIRS NAMES freetype/freetype.h PATHS "${PROJECT_SOURCE_DIR}/dependencies/include")
find_library(FREETYPE_LIBRARY NAMES freetype PATHS "${PROJECT_SOURCE_DIR}/dependencies/lib")
find_path(FREETYPE_INCLUDE_DIRS NAMES freetype/freetype.h PATHS "${PROJECT_SOURCE_DIR}/${DEPENDENCIES}/include")
find_library(FREETYPE_LIBRARY NAMES freetype PATHS "${PROJECT_SOURCE_DIR}/${DEPENDENCIES}/lib")
set(FREETYPE_FOUND 1)
set(FREETYPE_LIBRARIES ${FREETYPE_LIBRARY})
elseif(APPLE)

View File

@@ -24,8 +24,8 @@ else()
endif()
if(NOT FRIBIDI_FOUND)
find_path(FRIBIDI_INCLUDE_DIR NAMES fribidi/fribidi.h PATHS /Library/Frameworks/fribidi.framework/Headers "${PROJECT_SOURCE_DIR}/dependencies/include")
find_library(FRIBIDI_LIBRARY NAMES fribidi PATHS /Library/Frameworks/fribidi.framework "${PROJECT_SOURCE_DIR}/dependencies/lib")
find_path(FRIBIDI_INCLUDE_DIR NAMES fribidi/fribidi.h PATHS /Library/Frameworks/fribidi.framework/Headers "${PROJECT_SOURCE_DIR}/${DEPENDENCIES}/include")
find_library(FRIBIDI_LIBRARY NAMES fribidi PATHS /Library/Frameworks/fribidi.framework "${PROJECT_SOURCE_DIR}/${DEPENDENCIES}/lib")
include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(Fribidi DEFAULT_MSG FRIBIDI_INCLUDE_DIR FRIBIDI_LIBRARY)

89
cmake/FindLibbfd.cmake Normal file
View File

@@ -0,0 +1,89 @@
# - Try to find libbfd
# Once done this will define
#
# LIBBFD_FOUND - system has libbfd
# LIBBFD_INCLUDE_DIRS - the libbfd include directory
# LIBBFD_LIBRARIES - Link these to use libbfd
# LIBBFD_DEFINITIONS - Compiler switches required for using libbfd
#
# Based on:
#
# Copyright (c) 2008 Bernhard Walle <bernhard.walle@gmx.de>
#
# Redistribution and use is allowed according to the terms of the New
# BSD license.
# For details see the accompanying COPYING-CMAKE-SCRIPTS file.
#
if (LIBBFD_LIBRARIES AND LIBBFD_INCLUDE_DIRS)
set (LIBBFD_FIND_QUIETLY TRUE)
endif ()
find_path (LIBBFD_INCLUDE_DIRS
NAMES
bfd.h
dis-asm.h
PATHS
/usr/include
/usr/local/include
/opt/local/include
/opt/include
ENV CPATH)
# Ugly, yes ugly...
find_library (LIBBFD_BFD_LIBRARY
NAMES
bfd
PATHS
/usr/lib
/usr/lib64
/usr/local/lib
/usr/local/lib64
/usr/include
/opt/local/lib
/opt/usr/lib64
ENV LIBRARY_PATH
ENV LD_LIBRARY_PATH)
#find_library (LIBBFD_IBERTY_LIBRARY
# NAMES
# iberty
# PATHS
# /usr/lib
# /usr/lib64
# /usr/local/lib
# /usr/local/lib64
# /usr/include
# /opt/local/lib
# /opt/usr/lib64
# ENV LIBRARY_PATH
# ENV LD_LIBRARY_PATH)
#find_library (LIBBFD_OPCODES_LIBRARY
# NAMES
# opcodes
# PATHS
# /usr/lib
# /usr/lib64
# /usr/local/lib
# /usr/local/lib64
# /usr/include
# /opt/local/lib
# /opt/usr/lib64
# ENV LIBRARY_PATH
# ENV LD_LIBRARY_PATH)
include (FindPackageHandleStandardArgs)
# handle the QUIETLY and REQUIRED arguments and set LIBBFD_FOUND to TRUE if all listed variables are TRUE
FIND_PACKAGE_HANDLE_STANDARD_ARGS(LIBBFD DEFAULT_MSG
LIBBFD_BFD_LIBRARY
# LIBBFD_IBERTY_LIBRARY
# LIBBFD_OPCODES_LIBRARY
LIBBFD_INCLUDE_DIRS)
set(LIBBFD_LIBRARIES "${LIBBFD_BFD_LIBRARY}")
mark_as_advanced(LIBBFD_INCLUDE_DIRS LIBBFD_LIBRARIES LIBBFD_BFD_LIBRARY)

View File

@@ -10,11 +10,12 @@
# OggVorbis library list
find_path(OGGVORBIS_OGG_INCLUDE_DIR NAMES ogg/ogg.h PATHS "${PROJECT_SOURCE_DIR}/dependencies/include")
find_path(OGGVORBIS_VORBIS_INCLUDE_DIR NAMES vorbis/vorbisfile.h PATHS "${PROJECT_SOURCE_DIR}/dependencies/include")
find_library(OGGVORBIS_OGG_LIBRARY NAMES ogg Ogg libogg PATHS "${PROJECT_SOURCE_DIR}/dependencies/lib")
find_library(OGGVORBIS_VORBIS_LIBRARY NAMES vorbis Vorbis libvorbis PATHS "${PROJECT_SOURCE_DIR}/dependencies/lib")
find_library(OGGVORBIS_VORBISFILE_LIBRARY NAMES vorbisfile libvorbisfile PATHS "${PROJECT_SOURCE_DIR}/dependencies/lib")
find_path(OGGVORBIS_OGG_INCLUDE_DIR NAMES ogg/ogg.h PATHS "${PROJECT_SOURCE_DIR}/${DEPENDENCIES}/include")
find_path(OGGVORBIS_VORBIS_INCLUDE_DIR NAMES vorbis/vorbisfile.h PATHS "${PROJECT_SOURCE_DIR}/${DEPENDENCIES}/include")
find_library(OGGVORBIS_OGG_LIBRARY NAMES ogg Ogg libogg PATHS "${PROJECT_SOURCE_DIR}/${DEPENDENCIES}/lib")
find_library(OGGVORBIS_VORBIS_LIBRARY NAMES vorbis Vorbis libvorbis PATHS "${PROJECT_SOURCE_DIR}/${DEPENDENCIES}/lib")
find_library(OGGVORBIS_VORBISFILE_LIBRARY NAMES vorbisfile libvorbisfile PATHS "${PROJECT_SOURCE_DIR}/${DEPENDENCIES}/lib")
find_library(OGGVORBIS_VORBISENC_LIBRARY NAMES vorbisenc libvorbisenc PATHS "${PROJECT_SOURCE_DIR}/${DEPENDENCIES}/lib")
if (APPLE)
set(OGGVORBIS_OGG_INCLUDE_DIR "/Library/Frameworks/Ogg.framework/Headers/")
@@ -26,6 +27,11 @@ if(APPLE AND NOT OGGVORBIS_VORBISFILE_LIBRARY)
set(OGGVORBIS_VORBISFILE_LIBRARY ${OGGVORBIS_VORBIS_LIBRARY})
endif()
if(APPLE AND NOT OGGVORBIS_VORBISENC_LIBRARY)
# Seems to be the same on Apple systems
set(OGGVORBIS_VORBISENC_LIBRARY ${OGGVORBIS_VORBIS_LIBRARY})
endif()
include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(OggVorbis DEFAULT_MSG
OGGVORBIS_OGG_INCLUDE_DIR OGGVORBIS_VORBIS_INCLUDE_DIR
@@ -33,8 +39,8 @@ find_package_handle_standard_args(OggVorbis DEFAULT_MSG
# Publish variables
set(OGGVORBIS_INCLUDE_DIRS ${OGGVORBIS_OGG_INCLUDE_DIR} ${OGGVORBIS_VORBIS_INCLUDE_DIR})
set(OGGVORBIS_LIBRARIES ${OGGVORBIS_OGG_LIBRARY} ${OGGVORBIS_VORBIS_LIBRARY} ${OGGVORBIS_VORBISFILE_LIBRARY})
set(OGGVORBIS_LIBRARIES ${OGGVORBIS_OGG_LIBRARY} ${OGGVORBIS_VORBIS_LIBRARY} ${OGGVORBIS_VORBISFILE_LIBRARY} ${OGGVORBIS_VORBISENC_LIBRARY})
list(REMOVE_DUPLICATES OGGVORBIS_INCLUDE_DIRS)
list(REMOVE_DUPLICATES OGGVORBIS_LIBRARIES)
mark_as_advanced(OGGVORBIS_OGG_INCLUDE_DIR OGGVORBIS_VORBIS_INCLUDE_DIR)
mark_as_advanced(OGGVORBIS_OGG_LIBRARY OGGVORBIS_VORBIS_LIBRARY OGGVORBIS_VORBISFILE_LIBRARY)
mark_as_advanced(OGGVORBIS_OGG_LIBRARY OGGVORBIS_VORBIS_LIBRARY OGGVORBIS_VORBISFILE_LIBRARY OGGVORBIS_VORBISENC_LIBRARY)

52
cmake/FindWayland.cmake Normal file
View File

@@ -0,0 +1,52 @@
# - Find Wayland
# Find the Wayland includes and libraries
#
# Following variables are provided:
# WAYLAND_FOUND
# True if Wayland has been found
# WAYLAND_INCLUDE_DIRS
# The include directories of Wayland
# WAYLAND_LIBRARIES
# Wayland library list
find_path(WAYLAND_CLIENT_INCLUDE_DIR wayland-client.h)
find_path(WAYLAND_CURSOR_INCLUDE_DIR wayland-cursor.h)
find_path(WAYLAND_EGL_INCLUDE_DIR wayland-egl.h)
find_path(XKBCOMMON_INCLUDE_DIR xkbcommon/xkbcommon.h)
find_library(WAYLAND_CLIENT_LIBRARY NAMES wayland-client)
find_library(WAYLAND_CURSOR_LIBRARY NAMES wayland-cursor)
find_library(WAYLAND_EGL_LIBRARY NAMES wayland-egl)
find_library(XKBCOMMON_LIBRARY NAMES xkbcommon)
include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(Wayland DEFAULT_MSG WAYLAND_CLIENT_LIBRARY
WAYLAND_CURSOR_LIBRARY
WAYLAND_EGL_LIBRARY
XKBCOMMON_LIBRARY
WAYLAND_CLIENT_INCLUDE_DIR
WAYLAND_CURSOR_INCLUDE_DIR
WAYLAND_EGL_INCLUDE_DIR
XKBCOMMON_INCLUDE_DIR)
set(WAYLAND_INCLUDE_DIRS ${WAYLAND_CLIENT_INCLUDE_DIR}
${WAYLAND_CURSOR_INCLUDE_DIR}
${WAYLAND_EGL_INCLUDE_DIR}
${XKBCOMMON_INCLUDE_DIR})
set(WAYLAND_LIBRARIES ${WAYLAND_CLIENT_LIBRARY}
${WAYLAND_CURSOR_LIBRARY}
${WAYLAND_EGL_LIBRARY}
${XKBCOMMON_LIBRARY})
list(REMOVE_DUPLICATES WAYLAND_INCLUDE_DIRS)
list(REMOVE_DUPLICATES WAYLAND_LIBRARIES)
mark_as_advanced(WAYLAND_CLIENT_LIBRARY
WAYLAND_CURSOR_LIBRARY
WAYLAND_EGL_LIBRARY
XKBCOMMON_LIBRARY
WAYLAND_CLIENT_INCLUDE_DIR
WAYLAND_CURSOR_INCLUDE_DIR
WAYLAND_EGL_INCLUDE_DIR
XKBCOMMON_INCLUDE_DIR)

View File

@@ -1,18 +0,0 @@
find_path(XRANDR_INCLUDE_DIR NAMES X11/extensions/Xrandr.h
PATH_SUFFIXES X11/extensions
DOC "The XRANDR include directory"
)
find_library(XRANDR_LIBRARY NAMES Xrandr
DOC "The XRANDR library"
)
include(FindPackageHandleStandardArgs)
FIND_PACKAGE_HANDLE_STANDARD_ARGS(XRANDR DEFAULT_MSG XRANDR_LIBRARY XRANDR_INCLUDE_DIR)
if(XRANDR_FOUND)
set( XRANDR_LIBRARIES ${XRANDR_LIBRARY} )
set( XRANDR_INCLUDE_DIRS ${XRANDR_INCLUDE_DIR} )
endif()
mark_as_advanced(XRANDR_INCLUDE_DIR XRANDR_LIBRARY)

View File

@@ -0,0 +1,32 @@
# Cross-compiling requires CMake 2.6 or newer. Example:
# cmake .. -DCMAKE_TOOLCHAIN_FILE=../XCompile-Android.txt -DHOST=arm-linux-androideabi
# Where 'arm-linux-androideabi' is the host prefix for the cross-compiler. If
# you already have a toolchain file setup, you may use that instead of this
# file. Make sure to set CMAKE_FIND_ROOT_PATH to where the NDK toolchain was
# installed (e.g. "$ENV{HOME}/toolchains/arm-linux-androideabi-r10c-21").
# the name of the target operating system
SET(CMAKE_SYSTEM_NAME Linux)
# which compilers to use for C and C++
SET(CMAKE_C_COMPILER "${HOST}-gcc")
SET(CMAKE_CXX_COMPILER "${HOST}-g++")
SET(CMAKE_RC_COMPILER "${HOST}-windres")
# here is the target environment located
SET(CMAKE_FIND_ROOT_PATH $ENV{NDK_TOOLCHAIN_PATH})
# here is where stuff gets installed to
SET(CMAKE_INSTALL_PREFIX "${CMAKE_FIND_ROOT_PATH}" CACHE STRING "Install path prefix, prepended onto install directories." FORCE)
# adjust the default behaviour of the FIND_XXX() commands:
# search headers and libraries in the target environment, search
# programs in the host environment
set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
# set env vars so that pkg-config will look in the appropriate directory for
# .pc files (as there seems to be no way to force using ${HOST}-pkg-config)
set(ENV{PKG_CONFIG_LIBDIR} "${CMAKE_INSTALL_PREFIX}/lib/pkgconfig")
set(ENV{PKG_CONFIG_PATH} "")

View File

@@ -9,8 +9,11 @@ SET(CMAKE_C_COMPILER x86_64-w64-mingw32-gcc-posix)
SET(CMAKE_CXX_COMPILER x86_64-w64-mingw32-g++-posix)
SET(CMAKE_RC_COMPILER x86_64-w64-mingw32-windres)
# figure out folder to look in
execute_process(COMMAND sh -c "ls /usr/lib/gcc/x86_64-w64-mingw32/ | grep posix | tr -d '\n'" OUTPUT_VARIABLE MINGW_DEPS_FOLDER)
# here is the target environment located
SET(CMAKE_FIND_ROOT_PATH /usr/x86_64-w64-mingw32 /usr/lib/gcc/x86_64-w64-mingw32/4.9-posix ${PROJECT_SOURCE_DIR}/dependencies)
SET(CMAKE_FIND_ROOT_PATH /usr/x86_64-w64-mingw32 /usr/lib/gcc/x86_64-w64-mingw32/${MINGW_DEPS_FOLDER}/ ${PROJECT_SOURCE_DIR}/dependencies-64bit)
# adjust the default behaviour of the FIND_XXX() commands:
# search headers and libraries in the target environment, search

View File

@@ -9,8 +9,11 @@ SET(CMAKE_C_COMPILER i686-w64-mingw32-gcc-posix)
SET(CMAKE_CXX_COMPILER i686-w64-mingw32-g++-posix)
SET(CMAKE_RC_COMPILER i686-w64-mingw32-windres)
# figure out folder to look in
execute_process(COMMAND sh -c "ls /usr/lib/gcc/i686-w64-mingw32/ | grep posix | tr -d '\n'" OUTPUT_VARIABLE MINGW_DEPS_FOLDER)
# here is the target environment located
SET(CMAKE_FIND_ROOT_PATH /usr/i686-w64-mingw32 /usr/lib/gcc/i686-w64-mingw32/4.9-posix ${PROJECT_SOURCE_DIR}/dependencies)
SET(CMAKE_FIND_ROOT_PATH /usr/i686-w64-mingw32 /usr/lib/gcc/i686-w64-mingw32/${MINGW_DEPS_FOLDER}/ ${PROJECT_SOURCE_DIR}/dependencies)
# adjust the default behaviour of the FIND_XXX() commands:
# search headers and libraries in the target environment, search

BIN
data/CREDITS Executable file → Normal file

Binary file not shown.

View File

@@ -17,11 +17,11 @@
<key>CFBundlePackageType</key>
<string>APPL</string>
<key>CFBundleShortVersionString</key>
<string>0.8.1</string>
<string>0.9.3</string>
<key>CFBundleSignature</key>
<string>SPTK</string>
<key>CFBundleVersion</key>
<string>0.8.1</string>
<string>0.9.3</string>
<key>CSResourcesFileMapped</key>
<true/>
<key>LSMinimumSystemVersion</key>

View File

@@ -2,9 +2,9 @@
<achievements>
<achievement id="1" check-type="all-at-least" reset-type="never"
name="Christoffel Columbus" description="Play every official track at least once." >
<city goal="1"/>
<candela_city goal="1"/>
<cocoa_temple goal="1"/>
<farm goal="1"/>
<cornfield_crossing goal="1"/>
<fortmagma goal="1"/>
<gran_paradiso_island goal="1"/>
<greenvalley goal="1"/>
@@ -19,9 +19,10 @@
<snowmountain goal="1"/>
<snowtuxpeak goal="1"/>
<stk_enterprise goal="1"/>
<subsea goal="1"/>
<abyss goal="1"/>
<xr591 goal="1"/>
<zengarden goal="1"/>
<volcano_island goal="1"/>
</achievement>
<achievement id="2" check-type="all-at-least" reset-type="never"
name="Strike!" description="Hit 10 karts with a bowling-ball.">

View File

@@ -1,19 +1,19 @@
<?xml version="1.0"?>
<challenge version="2">
<track id="farm" laps="3"/>
<track id="abyss" laps="3"/>
<mode major="single" minor="quickrace"/>
<requirements trophies="0"/>
<hard>
<karts number="5"/>
<requirements position="1" time="110"/>
<requirements position="1" time="160"/>
</hard>
<medium>
<karts number="4"/>
<requirements time="125"/>
<requirements time="197"/>
</medium>
<easy>
<karts number="4"/>
<requirements time="155"/>
<requirements time="270"/>
</easy>
</challenge>

View File

@@ -1,6 +1,6 @@
<?xml version="1.0"?>
<challenge version="2">
<track id="city" laps="3"/>
<track id="candela_city" laps="3"/>
<mode major="single" minor="quickrace"/>
<requirements trophies="70"/>
@@ -16,4 +16,6 @@
<karts number="3"/>
<requirements position="1"/>
</easy>
<unlock kart="sara_the_wizard"/>
</challenge>

View File

@@ -1,16 +1,16 @@
<?xml version="1.0"?>
<challenge version="2">
<track id="subsea" laps="2"/>
<track id="cornfield_crossing" laps="3"/>
<mode major="single" minor="quickrace"/>
<requirements trophies="0"/>
<hard>
<karts number="5"/>
<requirements position="1" time="205"/>
<requirements position="1" time="165"/>
</hard>
<medium>
<karts number="4"/>
<requirements time="225"/>
<requirements time="195"/>
</medium>
<easy>
<karts number="4"/>

View File

@@ -10,10 +10,10 @@
</hard>
<medium>
<karts number="4"/>
<requirements time="185"/>
<requirements time="187"/>
</medium>
<easy>
<karts number="4"/>
<requirements time="220"/>
<requirements time="260"/>
</easy>
</challenge>

View File

@@ -2,7 +2,7 @@
<challenge version="2">
<track id="cocoa_temple" laps="3"/>
<mode major="single" minor="quickrace"/>
<requirements trophies="15"/>
<requirements trophies="5"/>
<hard>
<karts number="5"/>

View File

@@ -14,7 +14,7 @@
</medium>
<easy>
<karts number="5"/>
<requirements position="1" time="105"/>
<requirements position="1" time="130"/>
</easy>
</challenge>

View File

@@ -0,0 +1,19 @@
<?xml version="1.0"?>
<challenge version="2">
<track id="volcano_island" laps="2"/>
<mode major="single" minor="quickrace"/>
<requirements trophies="15"/>
<hard>
<karts number="5"/>
<requirements position="1"/>
</hard>
<medium>
<karts number="4"/>
<requirements position="1"/>
</medium>
<easy>
<karts number="4"/>
<requirements position="1"/>
</easy>
</challenge>

View File

@@ -26,7 +26,4 @@
<color min="50 50 50"
max="100 100 100" />
<!-- How much time in milliseconds before the particle is fully faded out -->
<fadeout time="1000" />
</particles>

View File

@@ -25,11 +25,7 @@
<color min="40 40 255"
max="255 255 255" />
<!-- How much time in milliseconds before the particle is fully faded out -->
<fadeout time="100" />
<wind speed="0.16"
flips="Y" />
<wind flips="Y" />
</particles>

View File

@@ -25,11 +25,7 @@
<color min="40 40 255"
max="255 255 255" />
<!-- How much time in milliseconds before the particle is fully faded out -->
<fadeout time="100" />
<wind speed="0.16"
flips="Y" />
<wind flips="Y" />
</particles>

View File

@@ -26,7 +26,4 @@
<color min="255 255 255"
max="255 255 255" />
<fadeout time="3000" />
</particles>

View File

@@ -10,24 +10,21 @@
<material file="explode.png" />
<!-- Amount of particles emitted per second -->
<rate min="500"
max="800" />
<rate min="400"
max="600" />
<!-- Minimal and maximal lifetime of a particle, in milliseconds. -->
<lifetime min="1000"
max="1200" />
<!-- Size of the particles -->
<size min="0.65"
max="0.95"
<size min="0.60"
max="0.85"
x-increase-factor="0.6"
y-increase-factor="0.6"
/>
<color min="255 255 255"
max="255 255 255" />
<!-- How much time in milliseconds before the particle is fully faded out -->
<fadeout time="800" />
</particles>

View File

@@ -10,24 +10,21 @@
<material file="explode.png" />
<!-- Amount of particles emitted per second -->
<rate min="500"
max="800" />
<rate min="400"
max="600" />
<!-- Minimal and maximal lifetime of a particle, in milliseconds. -->
<lifetime min="1000"
max="1200" />
<!-- Size of the particles -->
<size min="0.65"
max="0.95"
<size min="0.60"
max="0.85"
x-increase-factor="0.6"
y-increase-factor="0.6"
/>
<color min="255 255 255"
max="255 255 255" />
<!-- How much time in milliseconds before the particle is fully faded out -->
<fadeout time="800" />
</particles>

View File

@@ -10,24 +10,21 @@
<material file="explode.png" />
<!-- Amount of particles emitted per second -->
<rate min="500"
max="800" />
<rate min="400"
max="600" />
<!-- Minimal and maximal lifetime of a particle, in milliseconds. -->
<lifetime min="1000"
max="1200" />
<!-- Size of the particles -->
<size min="0.65"
max="0.95"
<size min="0.60"
max="0.85"
x-increase-factor="0.6"
y-increase-factor="0.6"
/>
<color min="255 255 255"
max="255 255 255" />
<!-- How much time in milliseconds before the particle is fully faded out -->
<fadeout time="800" />
</particles>

View File

@@ -0,0 +1,30 @@
<?xml version="1.0"?>
<particles emitter="sphere" radius="0.1">
<spreading angle="180" />
<velocity x="0.000"
y="0.0035"
z="0.000" />
<material file="explode.png" />
<!-- Amount of particles emitted per second -->
<rate min="100"
max="150" />
<!-- Minimal and maximal lifetime of a particle, in milliseconds. -->
<lifetime min="700"
max="900" />
<!-- Size of the particles -->
<size min="0.8"
max="1.0"
x-increase-factor="0.6"
y-increase-factor="0.6"
/>
<color min="255 255 255"
max="255 255 255" />
</particles>

View File

@@ -18,12 +18,10 @@
max="500" />
<!-- Size of the particles -->
<size min="0.6"
max="0.8" />
<size min="0.55"
max="0.75" />
<color min="255 255 255"
max="255 255 255" />
<fadeout time="300" />
</particles>

View File

@@ -26,7 +26,4 @@
<color min="0 0 0"
max="255 255 255" />
<fadeout time="5000" />
</particles>

View File

@@ -26,7 +26,4 @@
<color min="0 0 0"
max="255 255 255" />
<fadeout time="2000" />
</particles>

View File

@@ -26,7 +26,4 @@
<color min="0 0 0"
max="255 255 255" />
<fadeout time="5000" />
</particles>

View File

@@ -25,11 +25,7 @@
<color min="40 40 255"
max="255 255 255" />
<!-- How much time in milliseconds before the particle is fully faded out -->
<fadeout time="100" />
<wind speed="0.16"
flips="Y" />
<wind flips="Y" />
</particles>

View File

@@ -26,8 +26,5 @@
<color min="255 255 255"
max="255 0 0" />
<!-- How much time in milliseconds before the particle is fully faded out -->
<fadeout time="50" />
</particles>

View File

@@ -26,8 +26,5 @@
<color min="255 255 255"
max="255 0 0" />
<!-- How much time in milliseconds before the particle is fully faded out -->
<fadeout time="50" />
</particles>

View File

@@ -27,9 +27,5 @@
<color min="40 40 255"
max="255 255 255" />
<!-- How much time in milliseconds before the particle is fully faded out -->
<fadeout time="100" />
</particles>

View File

@@ -25,11 +25,5 @@
<color min="40 40 255"
max="255 255 255" />
<!-- How much time in milliseconds before the particle is fully faded out -->
<fadeout time="100" />
<wind speed="0.16"
flips="Y" />
</particles>

View File

@@ -26,7 +26,4 @@
<color min="0 0 0"
max="255 255 255" />
<fadeout time="5000" />
</particles>

View File

@@ -26,7 +26,4 @@
<color min="0 0 0"
max="255 255 255" />
<fadeout time="5000" />
</particles>

View File

@@ -27,9 +27,5 @@
<color min="40 40 255"
max="255 255 255" />
<!-- How much time in milliseconds before the particle is fully faded out -->
<fadeout time="1000" />
</particles>

View File

@@ -26,7 +26,4 @@
<color min="0 0 0"
max="255 255 255" />
<fadeout time="500" />
</particles>

View File

@@ -26,7 +26,4 @@
<color min="255 255 255"
max="255 255 255" />
<fadeout time="3000" />
</particles>

View File

@@ -18,7 +18,7 @@
<!-- Minimal and maximal lifetime of a particle, in milliseconds. -->
<lifetime min="1000"
max="1500" />
<!-- Size of the particles -->
<size min="0.08"
max="0.15"
@@ -27,11 +27,5 @@
<color min="40 40 255"
max="255 255 255" />
<!-- How much time in milliseconds before the particle is fully faded out -->
<fadeout time="100" />
<wind speed="0.16"
flips="Y" />
</particles>

View File

@@ -25,11 +25,5 @@
<color min="40 40 255"
max="255 255 255" />
<!-- How much time in milliseconds before the particle is fully faded out -->
<fadeout time="100" />
<wind speed="0.16"
flips="Y" />
</particles>

View File

@@ -26,8 +26,5 @@
<color min="255 255 255"
max="255 255 255" />
<!-- How much time in milliseconds before the particle is fully faded out -->
<fadeout time="1000" />
</particles>

30
data/gfx/kart_exhaust.xml Normal file
View File

@@ -0,0 +1,30 @@
<?xml version="1.0"?>
<particles emitter="box" box_x="0.05" box_y="0.05" box_z="0.10">
<spreading angle="2" />
<velocity x="0.0"
y="0.005"
z="-0.01" />
<material file="smoke.png" />
<!-- Amount of particles emitted per second -->
<rate min="200"
max="300" />
<!-- Minimal and maximal lifetime of a particle, in milliseconds. -->
<lifetime min="10"
max="40" />
<!-- Size of the particles -->
<size min="0.05"
max="0.1"
x-increase-factor="5"
y-increase-factor="5"
/>
<color min="255 255 255"
max="0 0 0" />
</particles>

View File

@@ -23,8 +23,5 @@
<color min="255 255 255"
max="255 255 255" />
<!-- How much time in milliseconds before the particle is fully faded out -->
<fadeout time="75" />
</particles>

View File

@@ -26,8 +26,5 @@
<color min="255 255 255"
max="255 255 255" />
<!-- How much time in milliseconds before the particle is fully faded out -->
<fadeout time="50" />
</particles>

View File

@@ -32,9 +32,4 @@
<color min="255 255 255"
max="255 255 255" />
<!-- How much time in milliseconds before the particle is fully faded out -->
<fadeout time="750" />
<gravity strength="-0.01"
only-force-time="500" />
</particles>

View File

@@ -25,9 +25,5 @@
<color min="255 255 255"
max="255 255 255" />
<!-- How much time in milliseconds before the particle is fully faded out -->
<fadeout time="100" />
</particles>

View File

@@ -25,8 +25,5 @@
<color min="255 255 255"
max="255 255 255" />
<!-- How much time in milliseconds before the particle is fully faded out -->
<fadeout time="5" />
</particles>

View File

@@ -25,8 +25,5 @@
<color min="255 255 255"
max="255 255 255" />
<!-- How much time in milliseconds before the particle is fully faded out -->
<fadeout time="5" />
</particles>

View File

@@ -24,7 +24,4 @@
<color min="255 255 255"
max="255 255 255" />
<!-- How much time in milliseconds before the particle is fully faded out -->
<fadeout time="500" />
</particles>

View File

@@ -24,7 +24,4 @@
<color min="255 255 255"
max="255 255 255" />
<!-- How much time in milliseconds before the particle is fully faded out -->
<fadeout time="500" />
</particles>

View File

@@ -24,7 +24,4 @@
<color min="255 255 255"
max="255 255 255" />
<!-- How much time in milliseconds before the particle is fully faded out -->
<fadeout time="500" />
</particles>

View File

@@ -25,7 +25,4 @@
<color min="255 255 255"
max="255 255 255" />
<!-- How much time in milliseconds before the particle is fully faded out -->
<fadeout time="500" />
</particles>

View File

@@ -24,7 +24,4 @@
<color min="255 255 255"
max="255 255 255" />
<!-- How much time in milliseconds before the particle is fully faded out -->
<fadeout time="500" />
</particles>

View File

@@ -23,13 +23,9 @@
<size min="0.10"
max="0.30" />
<color min="40 40 255"
<color min="255 255 255"
max="255 255 255" />
<!-- How much time in milliseconds before the particle is fully faded out -->
<fadeout time="100" />
<wind speed="0.16"
flips="Y" />
<wind flips="Y" />
</particles>

View File

@@ -25,7 +25,4 @@
<color min="255 255 255"
max="255 255 255" />
<!-- How much time in milliseconds before the particle is fully faded out -->
<fadeout time="500" />
</particles>

View File

@@ -25,9 +25,4 @@
<color min="255 255 255"
max="255 255 255" />
<!-- How much time in milliseconds before the particle is fully faded out -->
<fadeout time="500" />
<gravity strength="-0.01"
only-force-time="1000" />
</particles>

View File

@@ -25,9 +25,4 @@
<color min="255 255 255"
max="255 255 255" />
<!-- How much time in milliseconds before the particle is fully faded out -->
<fadeout time="500" />
<gravity strength="-0.01"
only-force-time="1000" />
</particles>

View File

@@ -26,7 +26,4 @@
<color min="255 255 255"
max="255 255 255" />
<fadeout time="5000" />
</particles>

View File

@@ -24,8 +24,5 @@
<color min="255 255 255"
max="255 255 255" />
<!-- How much time in milliseconds before the particle is fully faded out -->
<fadeout time="100" />
</particles>

View File

@@ -1,10 +1,10 @@
<supertuxkart_grand_prix name="Penguin Playground">
<track id="sandtrack" laps="3" reverse="false" />
<track id="farm" laps="3" reverse="false" />
<track id="olivermath" laps="4" reverse="false" />
<track id="subsea" laps="2" reverse="false" />
<track id="scotland" laps="3" reverse="false" />
<track id="sandtrack" laps="3" reverse="false" />
<track id="cornfield_crossing" laps="3" reverse="false" />
<track id="olivermath" laps="4" reverse="false" />
<track id="abyss" laps="3" reverse="false" />
<track id="scotland" laps="3" reverse="false" />
</supertuxkart_grand_prix>

View File

@@ -5,7 +5,7 @@
<track id="greenvalley" laps="2" reverse="false" />
<track id="mansion" laps="3" reverse="false" />
<track id="stk_enterprise" laps="3" reverse="false" />
<track id="city" laps="2" reverse="false" />
<track id="volcano_island" laps="2" reverse="false" />
</supertuxkart_grand_prix>

View File

@@ -1,25 +1,42 @@
<?xml version="1.0"?>
<graphical-restrictions>
<card is="Intel(R) HD Graphics" os="windows" version="<9.0" disable="ForceLegacyDevice"/>
<card is="Intel(R) HD Graphics" os="windows" version="<9.0" disable="HighDefinitionTextures"/>
<card is="Intel(R) HD Graphics 2000" os="windows" disable="UniformBufferObject"/>
<card is="Intel(R) HD Graphics 2000" os="windows" disable="FramebufferSRGB"/>
<card is="Intel(R) HD Graphics 2000" os="windows" disable="HighDefinitionTextures"/>
<card is="Intel(R) HD Graphics 3000" os="windows" disable="UniformBufferObject"/>
<card is="Intel(R) HD Graphics 3000" os="windows" disable="AdvancedPipeline"/>
<card is="Intel(R) HD Graphics 3000" os="windows" disable="FramebufferSRGBWorking"/>
<card is="Intel(R) HD Graphics 3000" os="windows" disable="FramebufferSRGB"/>
<card is="Intel(R) HD Graphics 3000" os="windows" disable="HighDefinitionTextures"/>
<card is="Intel(R) HD Graphics 4600" os="windows" disable="ComputeShader"/>
<card contains="Intel" os="osx" disable="GI"/>
<card contains="Intel" disable="TextureCompressionS3TC"/>
<card contains="Intel" os="windows" disable="HighDefinitionTextures"/>
<card contains="Intel" os="linux" version="<11.2" disable="ComputeShader"/>
<card contains="Intel" os="linux" version="<11.2" disable="GeometryShader"/>
<card contains="Intel" os="linux" disable="FramebufferSRGBWorkaround2"/>
<card contains="Intel" os="linux" version="<11.2" disable="TextureCompressionS3TC"/>
<card contains="Intel" os="windows" disable="TextureCompressionS3TC"/>
<card contains="Intel" os="osx" disable="TextureCompressionS3TC"/>
<card contains="NVIDIA" os="windows" version="<344.65" disable="BufferStorage"/>
<card contains="NVIDIA" os="linux" version="<343.22" disable="BufferStorage"/>
<card contains="NVIDIA" disable="ShaderAtomicCounters"/>
<card contains="Mesa" os="linux" version="<10.3" disable="BufferStorage"/>
<card contains="Mesa" os="linux" version="<10.3" disable="DriverRecentEnough"/>
<card contains="Mesa" os="linux" version="<10.6" disable="GeometryShader4"/>
<card contains="Mesa" os="linux" disable="TextureCompressionS3TC"/>
<card contains="Mesa" os="linux" version="<11.2" disable="GeometryShader"/>
<card contains="Mesa" os="linux" version="<11.2" disable="TextureCompressionS3TC"/>
<card contains="Gallium" os="linux" version="<10.3" disable="BufferStorage"/>
<card contains="Gallium" os="linux" version="<10.3" disable="DriverRecentEnough"/>
<card contains="Gallium" os="linux" version="<10.6" disable="GeometryShader4"/>
<card contains="Gallium" os="linux" disable="TextureCompressionS3TC"/>
<card contains="Gallium" os="linux" version="<11.2" disable="GeometryShader"/>
<card contains="Gallium" os="linux" version="<11.2" disable="TextureCompressionS3TC"/>
<!-- On osx radeon appears to have different version numbers, e.g.
1.32.20 -->
<card contains="Radeon" os="linux" version="<14.300" disable="DriverRecentEnough"/>
<card contains="Radeon" os="windows" version="<14.300" disable="DriverRecentEnough"/>
<card contains="ATI" os="windows" version="<14.300" disable="DriverRecentEnough"/>
<card contains="ATI" os="windows" version="<=3.1.8787" disable="ForceLegacyDevice"/>
<card os="android" disable="TextureFormatBGRA8888"/>
<card os="android" disable="ColorBufferFloat"/>
<card contains="Adreno" os="android" version="<=19" disable="VertexIdWorking"/>
<card contains="Android Emulator" os="android" disable="ForceLegacyDevice"/>
<card os="android" disable="UniformBufferObject"/>
<card vendor="Broadcom" os="linux" disable="HighDefinitionTextures256"/>
</graphical-restrictions>

View File

@@ -12,6 +12,8 @@ mode_tt, released under Creative-Commons BY-SA 3, incorporatings artwork from ye
mode_easter, mode_ftl, mode_soccer, mode_normal, race_giveup: by Totoplus62, released under CC-BY-SA 3.0
soccer balls released under CC-BY-SA 3.0 by Néd J. Édoire
tutorial.png by Totoplus62, released under CC-BY-SA 3.0
Logo and Logo_slim : under CC-BY-SA 3.0+ by 'rastapax'
@@ -26,6 +28,10 @@ Gauge and bar by Totoplus62, released under CC-BY-SA 3
menu_story by tavariz91, released under CC-0
mass.png by Auria, released under CC-0
power.png by Auria, based on https://openclipart.org/detail/193925/check-engine and https://openclipart.org/detail/144799/power-icon, released under CC-0
====
Glass Skin by Auria, under CC-BY-SA 3+

View File

@@ -33,5 +33,8 @@
<box proportion="1" width="98%" align="center" layout="vertical-row" padding="6">
<list id="list_addons" x="0" y="0" width="100%" height="100%"/>
</box>
<bright width="97%" id="tips_label" text="" align="center"/>
</div>
</stkgui>

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 144 KiB

BIN
data/gui/android/drift.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 41 KiB

View File

@@ -0,0 +1,12 @@
# Licensing work
Icons firstly made for SuperTuxKart UI on Android.
Files: blur_bg_button ; blur_bg_button_focus ; directionnal_wheel ; drift ; nitro ; nitro_empty ; pause ; thunderbird_reset ; wing_mirror
- CC BY-SA 4.0 / author: Néd J. Édoire
# License information:
- Creative Commons Attribution-ShareAlike 4.0 International (CC BY-SA 4.0)
Visit the following link for detailed informations:
https://creativecommons.org/licenses/by-sa/4.0/

BIN
data/gui/android/nitro.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 27 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 21 KiB

BIN
data/gui/android/pause.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.8 KiB

Some files were not shown because too many files have changed in this diff Show More