1278 Commits

Author SHA1 Message Date
Quentin Bazin
d5f5082bb0 Added -Wconversion and fixed warnings.
This mostly forces the casts to be explicit.
2021-06-09 04:36:26 +02:00
Quentin Bazin
7d3d231d3f [game.v.glsl] Tweaked AO values. 2021-06-06 23:05:40 +02:00
Quentin Bazin
b7c9658ac3 [ChunkMeshBuilder] Small optimisation for getBlockState. 2021-06-05 17:23:13 +02:00
Quentin Bazin
5ff8f9b78b Fixed lighting issues. 2021-06-05 17:23:13 +02:00
Quentin Bazin
2bdc999294 [ClientWorld] Removing neighbour creation seems to improve performance. 2021-06-05 17:23:13 +02:00
Quentin Bazin
f30f2ca727 Small optimizations. 2021-06-05 17:23:13 +02:00
Quentin Bazin
a9657751ed [external/sol2] Updated. 2021-06-05 17:23:13 +02:00
Quentin Bazin
10b5235a42 [ClientWorld] Small improvement. 2021-06-05 17:23:13 +02:00
Quentin Bazin
d73cb5e274 Small optimizations. 2021-06-05 17:23:13 +02:00
Quentin Bazin
9c4199bcb7 Chunk meshing is no longer limited by framerate. 2021-06-05 17:23:13 +02:00
Quentin Bazin
33847538ba [ChunkBuilder] Removed. 2021-06-05 17:23:13 +02:00
Quentin Bazin
39bb2c949a [ChunkMeshBuilder] Comment added. 2021-06-05 17:23:13 +02:00
Quentin Bazin
7b6ea921f8 [TextureAtlas] Some functions are private now. 2021-06-05 17:23:13 +02:00
Quentin Bazin
4bef97c3cf [ChunkMeshBuilder] Changed method, fixed lighting bugs. 2021-06-05 17:23:13 +02:00
Quentin Bazin
c76f944132 [ChunkMeshBuilder] Direct surrounding chunks are now handled. 2021-06-05 17:23:13 +02:00
Quentin Bazin
2496f2e9ee Mesh building is now asynchronous.
- Added ChunkMeshBuilder to replace ChunkBuilder
- Added ThreadPool

Note: Surrounding chunks are not handled yet.
2021-06-05 17:23:13 +02:00
Quentin Bazin
b41739146e Fixed server crash when two players tried to connect with same name. 2021-05-23 02:43:18 +02:00
Quentin Bazin
d738e0cb7a [DebugOverlay] Use Shift+F3 to show OpenGL-related info. 2021-05-23 02:24:41 +02:00
Quentin Bazin
127d20009e [EngineConfig] Changed to 0.0.10. 2021-05-22 21:16:05 +02:00
Quentin Bazin
451fc714ed [BlockCursor] Fixed right-click holding. 2021-05-22 20:23:12 +02:00
Quentin Bazin
ebe9887ecf [ChunkLightmap] Removed useless lines.
It doesn't seem the engine needs to revert addSunlight anymore, but it may be subject to change, so I removed it as long as I don't see another problem.
2021-05-22 16:14:47 +02:00
Quentin Bazin
e15dbcc6e5 Cleaned useless commented code. 2021-05-22 16:14:47 +02:00
Quentin Bazin
8d728a6ce5 [ClientChunk] Cleaned useless code. 2021-05-22 16:14:47 +02:00
Quentin Bazin
2ff5490efd [Minimap] Now allows switching mode with 'M' key. 2021-05-22 16:14:47 +02:00
Quentin Bazin
46d1c4a3aa [ClientProfiler] Added.
[external/gamekit] Updated.
2021-05-22 16:14:47 +02:00
Quentin Bazin
95a804d9fc [World] Performance fix (for MinGW). 2021-05-22 16:14:47 +02:00
Quentin Bazin
758813a35d [EngineConfig] Bump VERSION_SUFFIX to 'pre8'. 2021-05-22 16:14:47 +02:00
Quentin Bazin
03a932c2c4 [ServerWorld] Added a timeout to chunk request queue loop.
Also added a 10 sec timeout on individual chunk requests.
2021-05-22 16:14:47 +02:00
Quentin Bazin
a43c24b3de [ClientWorld] Removed debug message.
When placing a block, this message was sent everytime since local and remote chunk match.
2021-05-22 16:14:47 +02:00
Quentin Bazin
e763330597 Fixed sunlight update. 2021-05-22 16:14:47 +02:00
Quentin Bazin
bf7c21887d Fixed InventoryCube display. 2021-05-22 16:14:47 +02:00
Quentin Bazin
fa194fd9e2 Fixed dimension change. 2021-05-22 16:14:47 +02:00
Quentin Bazin
8ecd91715e No longer using string to represent vertex attr. 2021-05-22 16:14:47 +02:00
Quentin Bazin
bfc78434f5 [ClientChunk] Only start meshing if all neighbours are initialized. 2021-05-22 16:14:47 +02:00
Quentin Bazin
d6d5717a43 [ServerWorld] Chunk send requests seems to be working. 2021-05-22 16:14:47 +02:00
Quentin Bazin
199be908ae [ServerWorld] Tried to improve chunk sending. 2021-05-22 16:14:47 +02:00
Quentin Bazin
0144b928b3 [ServerChunk] Only update light with all neighbours.
Also wait for m_readyToSend to be true.
2021-05-22 16:14:47 +02:00
Quentin Bazin
1ea2c350e4 [ClientWorld] Now removes far uninitialized chunks. 2021-05-22 16:14:47 +02:00
Quentin Bazin
e84cf25fdb [DebugLightmapViewer] Added. 2021-05-22 16:14:47 +02:00
Quentin Bazin
b6cf7bd4ad ChunkLightmap::updateLights() no longer returns a boolean.
Updating lights will already enable hasChanged flag of the correct chunks if needed.
2021-05-22 16:14:47 +02:00
Quentin Bazin
4aa92eb337 [external/backtrace] Added backtrace printer tool. 2021-05-22 16:14:47 +02:00
Quentin Bazin
eaae61f01b Attempting to remove the big loops in ClientWorld and ServerWorld. 2021-05-22 16:14:47 +02:00
Quentin Bazin
bc5e9bc2c7 Improved server-side player chunk management.
- [ServerCommandHandler] Now handling PlayerChunkPosUpdate.
- [ServerChunk] sendChunkData moved from ServerWorld.
- [ServerWorld] Now using PlayerChunkPosUpdate instead of the old loop.
2021-05-22 16:14:47 +02:00
Quentin Bazin
5bdacba397 [ClientPlayer] Now sending PlayerChunkPosUpdate. 2021-05-22 16:14:47 +02:00
Quentin Bazin
6f97f53416 [ServerWorld] Fixed holes in the world. 2021-05-22 16:14:47 +02:00
Quentin Bazin
dd9b56f66d [ServerWorld] Now sending ChunkUnload when needed. 2021-05-22 16:14:47 +02:00
Quentin Bazin
25569da358 [ClientWorld] Client still needs to remove empty chunks it creates. 2021-05-22 16:14:47 +02:00
Quentin Bazin
ee03d64254 [PlayerList] Now clearing player loaded chunks when disconnecting. 2021-05-22 16:14:47 +02:00
Quentin Bazin
0f993e9dbf [ClientWorld] Client is no longer in charge of removing chunks. 2021-05-22 16:14:47 +02:00
Quentin Bazin
22ef44e12c Moved ChunkUnload sending from client to server. 2021-05-22 16:14:47 +02:00