5185 Commits

Author SHA1 Message Date
Moritz Zwerger
36d43bc8fb
block property: cache hashCode
That makes checking if a block is waterlogged WAY faster
2023-12-08 20:59:51 +01:00
Moritz Zwerger
4619101de2
fix cloud rendering skipping 2023-12-08 20:56:54 +01:00
Moritz Zwerger
19f5c45c1f
network: fix unload chunk reading in < 1.20
It weirdly did unload a bunch of needed chunks, this fixes that. Not sure about the exact version though
2023-12-08 20:46:31 +01:00
Moritz Zwerger
d72a34683b
tinting: don't mix rgb and rgba
Fixes rendering of lava in nether
2023-12-08 20:42:33 +01:00
Moritz Zwerger
4d6f0c9a2c
voronoi: don't offset biome by position
its offset and then reverted. Fixes the pipeline
2023-12-08 20:18:55 +01:00
Moritz Zwerger
88b1a0f4f9
improve transparent alpha rendering 2023-12-08 20:12:17 +01:00
Moritz Zwerger
9c5d1f3802
note on broken biome noise 2023-12-08 20:05:21 +01:00
Moritz Zwerger
32263656bb
fluid renderer: cache face properties
Reduces memory allocations, dirty hack
2023-12-08 19:32:13 +01:00
Moritz Zwerger
79300a0df3
fix fluid top culling 2023-12-08 19:29:28 +01:00
Moritz Zwerger
2bf802c961
fluid renderer: only query biome and height when actually rendering
The biome cache is now much smaller now, because if a fluid block is surrounded it won't get calculated
2023-12-08 19:25:30 +01:00
Moritz Zwerger
5e1bdbff64
dirty hack for tinting block items 2023-12-08 19:03:59 +01:00
Moritz Zwerger
25a5becbbd
tab list: correctly read text as nbt + tests 2023-12-08 18:51:21 +01:00
Moritz Zwerger
a2971c3a0c
signed chat test: fix reading wrong version 2023-12-08 18:51:21 +01:00
Moritz Zwerger
2d19299796
packet reading test: check for buffer underflow and version mismatch 2023-12-08 18:51:21 +01:00
Moritz Zwerger
e5ec0b0d2a
fix fast noise accessor in 21w37a+ 2023-12-08 18:51:21 +01:00
Moritz Zwerger
1686a6695d
tint optimisations, refactor and abstract color maps 2023-12-08 18:51:21 +01:00
Moritz Zwerger
272df21f9e
WorldBiomes: fix test error 2023-12-08 10:45:51 +01:00
Moritz Zwerger
b43970f8ce
make chunk section variables final 2023-12-08 08:12:27 +01:00
Moritz Zwerger
8be55925d8
handle chunk biome packet 2023-12-08 08:12:10 +01:00
Moritz Zwerger
ceb2561d83
fluid tint: only query biome if needed
That should speed up lava rendering a lot, because the biome is on demand and needs to get calculated even though it is never needed.
2023-12-08 07:46:31 +01:00
Moritz Zwerger
0bc7a7bbf6
biome cache resetting 2023-12-08 07:41:07 +01:00
Moritz Zwerger
e6c9c73bb9
enable biome noise by default
Since it is on demand only, things got way faster and disabling it is kind of removing a feature by default
2023-12-08 07:39:19 +01:00
Moritz Zwerger
7f32520f6e
calculate biome cache on demand, refactor chunk section constructor
This makes things way faster and uses less memory. Biome is just needed for tinted blocks (and maybe sky color), most blocks don't require it. Calculating the biome is expensive (at least when joining).
2023-12-07 23:49:12 +01:00
Moritz Zwerger
c4cd6c4856
calculate section occlusion on demand
In headless mode occlusion does not matter and chunks that are invisible or occluded also don't matter
2023-12-07 23:01:46 +01:00
Moritz Zwerger
4f68567199
fix biome cache building
It took the world coordinates, not the chunk coordinates
2023-12-07 22:55:38 +01:00
Moritz Zwerger
ca59a7ce61
entity position: make biome lazy 2023-12-07 22:47:59 +01:00
Moritz Zwerger
0bbab0ca3c
network: 1.20.3-pre3..1.20.4
They fixed a bug in the explosion packet, and added the `DOWNLOADED` state in resourcepack
2023-12-07 21:37:57 +01:00
Moritz Zwerger
a9603201fb
bump dependencies 2023-12-07 20:23:02 +01:00
Moritz Zwerger
730cdf3e5f
bump gradle 2023-12-07 20:12:59 +01:00
Moritz Zwerger
a3d895d686
bump kutil
This adds some long needed (unsafe) updates for reflections
2023-12-07 20:11:13 +01:00
Moritz Zwerger
488c36f9da
micro improvements to VeronoiBiomeAccessor 2023-12-07 19:45:30 +01:00
Moritz Zwerger
255e14cd82
refactor and document more of the veronoi noise 2023-12-07 18:59:04 +01:00
Moritz Zwerger
1fab559a68
improve Voronoi biome accessor + test
It does not allocate memory now, removes a lot of the ambiguous chunk/block relative code and improves performance of querying biomes in general

!: It breaks the vanilla implementation, vanilla allows querying biomes hundreds of blocks away, now it is maximum 32 blocks.
2023-12-07 14:27:06 +01:00
Moritz Zwerger
cc5b2f8006
refactor noise biome accessor, tests 2023-12-06 16:08:54 +01:00
Moritz Zwerger
d4682fe0dc
improve opengl font compression, make it configurable 2023-12-06 14:00:50 +01:00
Moritz Zwerger
3fde8031c4
fix wrong test 2023-12-06 04:14:53 +01:00
Moritz Zwerger
76ba695487
fix skin manager tests, fix skin wide detection 2023-12-06 04:02:09 +01:00
Moritz Zwerger
00aa125ed1
fix test build 2023-12-06 00:04:55 +01:00
Moritz Zwerger
5067a38c24
skin reading test 2023-12-06 00:01:21 +01:00
Moritz Zwerger
901b2a029c
wide, small skin tests 2023-12-05 23:46:50 +01:00
Moritz Zwerger
acb3bd3b02
verify skin size 2023-12-05 23:37:49 +01:00
Moritz Zwerger
803cdcc552
option to disable compressed font textures
That can workaround issues on some gpus
2023-12-05 23:28:31 +01:00
Moritz Zwerger
dc575601a9
remove RenderSystem::nativeShaders
Should not be exposed publicly as it does not matter. Checking system quality is faster then set contains
2023-11-28 00:03:11 +01:00
Moritz Zwerger
c18515ff57
rename ResourceLocationCodec to IdentifierCodec
Yes, its a resource location but functions as an identifier in that context
2023-11-27 23:59:02 +01:00
Moritz Zwerger
4cc551d919
move time constant to WorldTime 2023-11-27 23:57:18 +01:00
Moritz Zwerger
45f26edd41
move some RenderConstants to correct class 2023-11-27 23:52:46 +01:00
Moritz Zwerger
c78f48b314
Rename OpenGLVendor::strict 2023-11-27 23:47:23 +01:00
Moritz Zwerger
4527fe9667
doc: how to support newer protocol versions 2023-11-27 23:16:03 +01:00
Moritz Zwerger
e29c466e8e
fix tests 2023-11-27 19:46:59 +01:00
Moritz Zwerger
354b647908
model loading: allow merged/split models, double stone slab renderer (<1.13) 2023-11-27 15:55:50 +01:00