5305 Commits

Author SHA1 Message Date
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
Moritz Zwerger
dc43b0c266
light tracing: create neighbour section if not exists 2025-03-25 19:44:07 +01:00
Moritz Zwerger
aeda72d4b4
section mesher: some cleanup 2025-03-21 21:56:33 +01:00
Moritz Zwerger
649895fe00
light: propagate from neighbours 2025-03-21 21:24:17 +01:00
Moritz Zwerger
3826f5d1aa
bump dependencies 2025-03-18 17:54:41 +01:00
Moritz Zwerger
79be571e11
bump gradle 2025-03-18 17:49:19 +01:00
Moritz Zwerger
4cfd312272
check light propagation directions 2025-03-13 23:34:59 +01:00
Moritz Zwerger
b7e4ec42cc
border light tracing 2025-03-13 00:01:11 +01:00
Moritz Zwerger
65799bb081
server light receiving
This feature is disabled anyways, because it might not be correct and minosofts light engine is fast enough.
2025-03-12 18:45:45 +01:00
Moritz Zwerger
fccc1e2782
light update firing
Events base there again, cleaner than before. Contains some cleanup too.
2025-03-12 18:40:40 +01:00
Moritz Zwerger
4a081056c5
basic light tracing 2025-03-11 20:17:45 +01:00
Moritz Zwerger
8b2640bb9a
some more light cleanup 2025-03-10 20:54:39 +01:00
Moritz Zwerger
939ee6f58e
split chunk and chunk packet util 2025-03-10 20:25:09 +01:00
Moritz Zwerger
81d6647074
occlusion tracer: only store path by axis
Its not possible that 2 different direction on the same axis are stored at the same position. Halves the temporary memory.
2025-03-10 15:49:22 +01:00
Moritz Zwerger
01ad5be5f8
remove old light engine 2025-03-10 01:01:18 +01:00
Moritz Zwerger
102887cdf7
entity color: multiply damage tint
Otherwise entities appear bright as the sun in the dark.
2025-03-10 00:51:22 +01:00
Moritz Zwerger
74e59142a1
ci: hopefully fix gradle cache path 2025-03-10 00:34:51 +01:00
Moritz Zwerger
25dc621806
disable verify
A lot faster
2025-03-10 00:34:33 +01:00
Moritz Zwerger
14a3257092
some shader improvements 2025-03-10 00:34:00 +01:00
Moritz Zwerger
fd0974055d
on chunk create: calculate heightmap
Otherwise chunk light is broken, it always thinks the light level is above the heightmap
2025-03-10 00:33:46 +01:00
Moritz Zwerger
9f324ba7ba
entity: synchronize ticking
Now we can not tick multiple times at the same time (this caused lag for the camera entity)
2025-03-09 22:53:49 +01:00
Moritz Zwerger
755bf8295d
render loop: get delta time correctly 2025-03-09 22:53:13 +01:00
Moritz Zwerger
6fca18a475
optimize render loop a bit 2025-03-09 22:45:51 +01:00
Moritz Zwerger
e37426f2a9
memory optimize aabb occlusion culling
no allocations anymore and probably faster.
2025-03-09 22:12:26 +01:00
Moritz Zwerger
17b5373501
occlusion culling: don't trace if already traced from same origin direction
This fixes the too agressive culling
2025-03-09 20:35:50 +01:00
Moritz Zwerger
165fe226d7
occlusion culling: only trace in one direction 2025-03-09 18:47:50 +01:00
Moritz Zwerger
611e250540
section occlusion: only add valid regions to sides 2025-03-09 15:38:51 +01:00
Moritz Zwerger
3d59cf4d0a
section occlusion: calculate side regions in same step as flood filling
No need to iterate over all sides again.
2025-03-09 15:34:30 +01:00
Moritz Zwerger
5160ad3160
section occlusion: check if side blocks are set
Otherwise skip flood filling and tracing.
2025-03-09 15:27:43 +01:00