Moritz Zwerger
c6892e4bd3
chunk section: only keep track if section has fluids and not how many, improvements
...
A lot faster now and the count is not really needed, it will change rarely.
2025-02-06 21:37:15 +01:00
Moritz Zwerger
d2d83d85dc
MobSpawnerBlockEntity::isPlayerInRange: don't wait forever
...
This workarounds a deadlock.
2025-02-06 21:06:29 +01:00
Moritz Zwerger
be5dffcc0a
some more freeze dump improvements
2025-02-06 18:57:26 +01:00
Moritz Zwerger
e077192eb2
freeze dump: print lock details
...
This way it is clear who is holding the lock and probably causing the thread lock by not unlocking/releasing it again
2025-02-06 18:43:29 +01:00
Moritz Zwerger
c1bcfbe982
fix kutil version
...
my bad, called the local build version 1.27.0
2025-02-06 13:49:54 +01:00
Moritz Zwerger
c2b7890b2f
optimize entity attribute calculation
...
Armor stands (living entities) need that to weather it is possible to target them. Reduces memory usage (enum map, only on demand, skip empty map).
2025-02-06 13:44:35 +01:00
Moritz Zwerger
9555ff19ea
render prepare: run Renderer::postPrepareDraw as soon as async is possible
...
Now it is not waiting for the previous stage (async prepare) anymore and can start with tasks asap. This reduces the frame time, because it does not need to waiting blocked most times.
2025-02-06 12:51:24 +01:00
Moritz Zwerger
13037f4e0a
renderer manager: enqueue async preparing directly after sync preparing and wait after all were enqueued.
...
Async renderers can now already complete their preparing when others are still preparing in their sync phase. This should reduce the frame time a bit. It can even be enhanced with some feedback/task scheduler (track what time it takes avg and queue that one first next frame or so).
2025-02-06 10:00:29 +01:00
Moritz Zwerger
88df92ce84
chunk renderer: work on meshing queue async
...
Then it does not block the render preparing pipeline anymore. Same for sky renderer.
2025-02-06 09:58:03 +01:00
Moritz Zwerger
995e4be2eb
fix building with java 11
...
Those functions are not available there and should be imported.
2025-02-06 09:56:35 +01:00
Moritz Zwerger
52c3f7372e
local chunk manager: only update when position changed
2025-02-05 14:36:38 +01:00
Moritz Zwerger
ba8353d1f0
fragmented array list: fix bad return
2025-02-04 22:06:04 +01:00
Moritz Zwerger
20f4733771
benchmark solid section mesher
2025-02-04 21:56:48 +01:00
Moritz Zwerger
c21e1cb852
WeightedBlockRender: unpack if total weight < 20
...
This makes it a bit faster to lookup the model. It can even be more enhanced by unpacking the whole section once (every model) and then running culling and stuff afterwards. In the future...
2025-02-04 21:47:49 +01:00
Moritz Zwerger
a6cf950e29
FragmentedArrayFloatList: optimize
...
Just for adding 7 floats, that method is used during chunk meshing. The case that the first incomplete list has more than 7 floats available is probably in 99% of cases the case and not trying to push the buffer every time improves performance (it is way faster, meshing a random chunk is now twice as fast)
2025-02-04 20:24:27 +01:00
Moritz Zwerger
c11d64f2d7
meshes/float lists: make size a power of 2
...
This way it is way more likely to be page aligned and memory access should be faster
2025-02-04 20:21:20 +01:00
Moritz Zwerger
7229f9c06e
render stats: reduce avg
...
Otherwise fps are building up when joining?
2025-02-03 22:21:27 +01:00
Moritz Zwerger
8dca129517
bump dependencies
2025-02-03 22:20:33 +01:00
Moritz Zwerger
b2480980e9
port to kutil 1.27
...
This update has some qol updates and a lot of juicy performance updates. Locking now uses javas integrated ReentrantLock which is 10 times faster than the synchronized lock (benchmarked it). Due to minosofts async nature, a lot of locking is needed (especially for time critical parts like in rendering). Locking is already reduced to a minimum, but it should still give a small performance boost.
(more ports in there)
2025-02-03 22:12:37 +01:00
Moritz Zwerger
6659a0fef9
exclude dnsjava service
...
This is pretty bad, but it breaks minosoft for java18+ atm.
https://github.com/Bixilon/Minosoft/issues/33
2024-12-22 17:31:00 +01:00
Moritz Zwerger
6f9c83d3e5
bump gradle: 8.11.1
2024-12-16 14:00:07 +01:00
Moritz Zwerger
dcaa5eea4d
bump dependencies
2024-12-16 13:59:33 +01:00
Moritz Zwerger
3a608abe2d
bump kutil: 1.26.4
2024-10-29 23:53:15 +01:00
Moritz Zwerger
45a184a1b5
downgrade lwjgl/glfw
2024-10-29 23:36:49 +01:00
Moritz Zwerger
de1d3541a6
rendering: properly close window
...
This still makes the window freeze on wayland, not sure if I should blame the glfw update to kde.
2024-10-29 23:33:04 +01:00
Moritz Zwerger
8cfa0eb0f1
fix connecting to hostname in play instead of pinged address
...
This breaks SRV resolving
2024-10-29 23:27:52 +01:00
Moritz Zwerger
ad72c013df
fix plank tests
2024-10-29 23:12:07 +01:00
Moritz Zwerger
5011828949
prepare for kutil 1.26.3
2024-10-29 22:04:12 +01:00
Moritz Zwerger
3c93f7cc45
update: wrap release notes in scroll panel, show if update unavailable for downloading
...
Fixes GH-31
2024-10-29 22:02:38 +01:00
Moritz Zwerger
c9795c4451
bump dependencies
2024-10-29 21:39:26 +01:00
Moritz Zwerger
88f090464a
bump gradle
2024-10-29 21:34:36 +01:00
Moritz Zwerger
270617d084
readme: education branch
2024-08-11 12:36:43 +02:00
Moritz Zwerger
c473b43154
DummyVendor::toString
2024-08-10 16:00:08 +02:00
Moritz Zwerger
3b391b14a8
local connection: add player to tab list
2024-08-09 22:23:20 +02:00
Moritz Zwerger
eb9c261d15
option to disable profile saving
2024-08-09 22:23:17 +02:00
Moritz Zwerger
2fec0f1df7
add dirt, planks
2024-08-09 12:33:09 +02:00
Moritz Zwerger
716cdf6cf2
properties loader: just append version name
...
This makes it easily possible to change the edition name (like education)
2024-08-09 12:11:41 +02:00
Moritz Zwerger
2f338f8241
local connection: send game joined message
2024-08-09 12:08:09 +02:00
Moritz Zwerger
dddd0ebde4
legacy chat component reading: remove quotes around text + test
2024-08-06 23:05:33 +02:00
Moritz Zwerger
84e9c897aa
fix render test loader test
2024-08-06 23:04:57 +02:00
Moritz Zwerger
3727368135
fix auto connecting
...
Some debug code stayed in there for singleplayer...
2024-08-06 22:58:27 +02:00
Moritz Zwerger
2569df18c4
fix some debug generation
2024-08-06 14:44:40 +02:00
Moritz Zwerger
a8f775484b
fix some dangling open file handlers
2024-08-03 14:28:20 +02:00
Moritz Zwerger
d3a7e0473d
opengl: fix screenshot taking if driver is strict (like intel arc gpus)
2024-08-02 20:24:33 +02:00
Moritz Zwerger
9f5caffd82
generator, storage, ...
2024-08-02 20:13:38 +02:00
Moritz Zwerger
e1f5cca87e
create some sort of debug world
2024-08-02 17:12:32 +02:00
Moritz Zwerger
ee02f8bb5c
wip debug world
2024-08-02 14:40:55 +02:00
Moritz Zwerger
aaa195cdc6
port PlaySession to NetworkConnection
2024-08-01 19:48:58 +02:00
Moritz Zwerger
9c5d1cbf7a
server list: fix freeze
2024-08-01 18:18:34 +02:00
Moritz Zwerger
d42f9eb214
abstract server connection more
...
Server connection is now stateless and is atm always a network connection. It might something else in the future
2024-08-01 18:13:34 +02:00