Moritz Zwerger
39717c3144
don't use File::slashpath, fix some date formatting
2025-06-24 23:39:25 +02:00
Moritz Zwerger
841fd3c77e
Path::div for resolving subfile
...
Ported over from kutil, seems way more nicer, the division symbol (`/`) is the same as the the file separator on *nix. Feels way more natural
2025-06-24 23:32:46 +02:00
Moritz Zwerger
36262bd53b
use io pool at some places
...
This should reduce lagging, because the default thread pool is not bombed with io tasks that can take a long time to complete. They might sleep a while and block the whole pool otherwise.
2025-06-20 16:35:01 +02:00
Moritz Zwerger
b726a76d5b
ThreadPool.Priorities.XX
...
Priorities will not be a companion object anymore in kutil 1.27.2
2025-06-20 14:37:38 +02:00
Moritz Zwerger
22ae1b3434
KeyHandler: fix queuing tick
...
There will no be RepeatedTask::skip in kutil 1.27.2
2025-06-20 14:36:54 +02:00
Moritz Zwerger
c51e0cdaee
KeyHandler: Don't queue first tick twice
...
The RepeatedTask instantly executed in kutil 1.27 (additionally with the onTick call).
2025-06-05 19:35:06 +02:00
Moritz Zwerger
5bab0bf394
key action filter: fix test
...
No clue why this ever passed, but the kotlin duration refactor somehow broke it.
2025-06-05 19:18:31 +02:00
Moritz Zwerger
2a5849fc9d
jackson: serialize kotlin instant
2025-05-25 21:44:19 +02:00
Moritz Zwerger
f18ffb8bee
use time marks and duration
...
This makes handling time way less ambiguous. Lots of changes in the code, but step in the right direction.
2025-05-25 21:22:09 +02:00
Moritz Zwerger
1a553bf6e6
ChunkSize, begin porting to ticks and kotlin duration
...
Now the duration has a unit, and not just millis or nanos
2025-05-23 15:47:16 +02:00
Moritz Zwerger
8e7410d44e
bump dependencies
...
Includes all adaptions for kutil 1.27
2025-05-22 18:04:36 +02:00
Moritz Zwerger
7599296aff
bump gradle
2025-05-22 18:04:03 +02:00
Moritz Zwerger
9a574ea75d
wawla: fix front color
2025-04-13 20:45:11 +02:00
Moritz Zwerger
776d26aef6
reduce physics memory allocations even more
2025-04-13 20:41:31 +02:00
Moritz Zwerger
7e95ac3b52
fix building on windows x86
2025-04-13 20:17:20 +02:00
Moritz Zwerger
ed07b152d4
pyhsics: use cached entity id
...
This finally fixes the deadlock caused by movement packets. Not sure why we need to send our own entity id, but I guess the answer is minecraft.
2025-04-13 20:16:31 +02:00
Moritz Zwerger
32f1b1fbfc
fixes, some performance improvements
2025-04-13 20:02:08 +02:00
Moritz Zwerger
f0dedabc46
some rending and physics allocation improvements
2025-04-13 19:36:07 +02:00
Moritz Zwerger
abd04a293e
improve some shape comparison, fix shape tests
2025-04-13 10:36:39 +02:00
Moritz Zwerger
f13699f457
fix packet decryption
...
This is a recent regression from reducing allocation rate.
2025-04-13 10:35:01 +02:00
Moritz Zwerger
e09ee08cc2
refactor shapes, abstract aabb to shape, null shape, combined shape
2025-04-13 00:01:19 +02:00
Moritz Zwerger
ca7020a698
sky light handle block breaks, some border light fixes
2025-04-11 15:52:13 +02:00
Moritz Zwerger
7ac796f8cf
light: handle block break with increase + tests
2025-04-11 15:10:13 +02:00
Moritz Zwerger
941b8c9f9c
prevent crash when entity position is out of bounds (of block position)
...
This is not done well, clamping the position will introduce weird bugs in full height dimensions, because minosoft assumes that the position is still in the world.
2025-04-11 14:42:04 +02:00
Moritz Zwerger
f96047dbfe
world iterator: don't use abstract iterator
...
Iterator<BlockPosition> allocates a boxed int (BlockPosition). This removes the whole benefit of the inlined datatype, allocates useless temporary memory and is potentially a lot slower.
2025-04-11 14:10:14 +02:00
Moritz Zwerger
728ca1ce2f
physics: reduce memory allocations a lot
...
This should improve performance of physics when exploding millions of tnt. Memory is being reused with the temporary allocator. Shapes are extracted initially, which is still bad, because most of them are empty.
2025-04-11 14:01:28 +02:00
Moritz Zwerger
2340fc1a3d
aabb iteration order
...
physics must use natural order (x->y->z) because the float precision matters and the bubble column tests fail because of that. Everything else can use the cpu cache optimized version (x->z->y).
2025-04-11 12:00:08 +02:00
Moritz Zwerger
bb9e6346a8
some sky light fixes
2025-04-04 20:32:21 +02:00
Moritz Zwerger
a07b62857f
tests: physics: check correct submersion state
2025-04-04 19:56:14 +02:00
Moritz Zwerger
a4e0d5a023
optimize and improve sky light tracing
2025-04-04 19:55:45 +02:00
Moritz Zwerger
34a28bf156
network pipeline: reduce temporary allocations even more
2025-03-31 20:06:58 +02:00
Moritz Zwerger
f9617eecdf
play session: always log fatal exception
2025-03-31 19:43:18 +02:00
Moritz Zwerger
1799d4908b
network: reuse byte arrays
...
This reduces unneeded memory allocation, those objects are short living. It could be optimized further, because networking just runs single threaded.
2025-03-31 19:39:48 +02:00
Moritz Zwerger
a17f75c201
some more color tests and fixes
2025-03-31 19:33:03 +02:00
Moritz Zwerger
83c3337f38
jackson: fix color serializing
...
Not perfect, but pretty much the only way
2025-03-31 15:23:45 +02:00
Moritz Zwerger
a21b1ea4c9
aabb iterator: don't use IntRange, reduce more allocations
2025-03-31 15:11:44 +02:00
Moritz Zwerger
d711e077b7
position datatypes: fix overflow when adding from -1
2025-03-31 15:10:36 +02:00
Moritz Zwerger
76f39bd426
wip sky light tracing
2025-03-31 15:10:36 +02:00
Moritz Zwerger
e753b8e447
float list: optimize FragmentedArrayFloatList::add(HeapArrayFloatList)
2025-03-31 15:10:35 +02:00
Moritz Zwerger
c0bf5efe7b
fluid physics: reduce allocations
2025-03-31 15:10:35 +02:00
Moritz Zwerger
6fd062d19d
color tests, some fixes
2025-03-31 13:06:33 +02:00
Moritz Zwerger
59ddd7fe5e
inline rgb and rgba colr types
...
Makes the code cleaner and reduces memory allocations on the heap.
2025-03-30 11:32:57 +02:00
Moritz Zwerger
b85c9e475f
lightmap: reduce memory allocations
2025-03-26 23:37:50 +01:00
Moritz Zwerger
9cb58126c7
hud: reduce text memory allocations
2025-03-26 23:37:19 +01:00
Moritz Zwerger
44a7601f48
some block light fixes
2025-03-26 16:48:29 +01:00
Moritz Zwerger
25e8fbbde8
shaders: add lowp or mediump when possible
...
This allows the gpu to use less bits for the floats when it is not needed at all, thus using less resources.
2025-03-26 16:47:18 +01:00
Moritz Zwerger
866a03728e
entity ticking: lock or skip ticking
...
This avoids deadlocking
2025-03-25 20:39:44 +01:00
Moritz Zwerger
89c8e43e65
skeletal transform packing: don't copy every single float from mat4
...
Its batched now, the byte buffer can optimize this call.
2025-03-25 20:26:09 +01:00
Moritz Zwerger
1d742f4dff
solid mesher: fix heightmap sky light setting
2025-03-25 20:20:51 +01:00
Moritz Zwerger
d2d45008b0
heightmap: use section height
...
index is prune to errors and not very natural
2025-03-25 20:19:22 +01:00