Commit Graph

12802 Commits

Author SHA1 Message Date
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
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
ceef7495d2 Enable culling for animated mesh
Use the first frame bounding box for it, don't update each frame
2016-12-11 11:01:02 +08:00
Benau
fcd1e2830e Use callback function to directly upload joints without copying 2016-12-10 16:16:40 +08:00
Benau
8ca0c54bdc Merge remote-tracking branch 'origin/master' into hardware_skinning 2016-12-10 10:09:30 +08:00
Benau
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
a3905a1e19 Allow tangent mesh to be converted 2016-12-07 08:07:01 +08:00
hiker
32daf4ce29 Removed unused functions. 2016-12-07 09:34:33 +11: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
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
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
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
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
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
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
690d36271d Try to fix LOD in legacy pipeline 2016-11-22 00:51:10 +08: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
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
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
5879933a23 Merge remote-tracking branch 'origin/master' into fix_2112 2016-11-13 10:42:47 +08: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
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
6b282acae2 Use bullet built-in function 2016-11-11 10:20:15 +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
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