844 Commits

Author SHA1 Message Date
IntegratedQuantum
b85681573b Fog with ARB_fragment_shader_interlock: quick and dirty prototype
a prototype of #817
2024-12-06 21:48:06 +01:00
IntegratedQuantum
c495e8406c Fix some problems with window closing and the delete world confirmation window.
Seems relevant for #809
2024-12-05 22:05:08 +01:00
IntegratedQuantum
fd478e2b99 Add a shrinkAndFree method to the Arena to reduce memory footprint of StructureMapFragments by ~20%
progress towards #813
2024-12-05 21:47:16 +01:00
IntegratedQuantum
bcae83313a Fix perlin noise for other allocators and switch it to the stackAllocator.
Also revisited some of the cache sizes.
2024-12-04 22:50:57 +01:00
IntegratedQuantum
1837fe7adf Don't print trailing commas in empty zon structs/tuples.
fixes #808 (after entering and leaving the world once)
2024-12-04 21:21:21 +01:00
IntegratedQuantum
0a8b9de3a9 Don't print any numbers and remove default localhost multiplayer IP address.
These were causing some problems.
2024-12-03 21:18:20 +01:00
IntegratedQuantum
518bc0bf1f Add flower patches
fixes #557
2024-12-03 21:11:05 +01:00
IntegratedQuantum
77b1fffa27 Reintroduce "natural standard" for rotation modes to allow generating flowers on the ground without much extra work. 2024-12-03 20:47:56 +01:00
IntegratedQuantum
4ca28668f1 Add a priority system for biome structures.
This solves a big part of the degradability problem and allows removing non_degradable_oak_leaves.
2024-12-02 21:13:56 +01:00
IntegratedQuantum
1455605387 Use a lower precision buffer for bloom calculation.
Slightly (~100 µs) improves performance of bloom, but might open up more detailed (→less jitter) bloom implementations.
2024-12-02 20:43:58 +01:00
Carrie
5f722274b1 Tweak ui textures/contrast 2024-12-02 20:11:00 +01:00
IntegratedQuantum
5f7ccd0504 Load the settings and gui_layout files from a global directory.
For linux and mac I just use "~/.cubyz"
For windows there seems to be no consensus on where game data should be located.
Out of the commonly used locations, "~/Saved Games/Cubyz" seemed the most sane option to me.

fixes #457
2024-12-01 11:48:31 +01:00
IntegratedQuantum
b06b4e7224 Use lossy compression on LOD chunks when sending them over the network.
The lossy compression just simply replaces all interior blocks. It should not make any difference visually.

This halves the amount of data that is sent when first joining.

This makes #748 less important
fixes #745
2024-11-30 20:51:36 +01:00
IntegratedQuantum
da25cbc19c Improve cache locality of updateAndGetRenderChunks by duplicating important variables into "fast" memory.
Also now using a MemoryPool for ChunkMeshes to reduce cache aliasing caused by poor behavior of the GPA.

fixes #722
2024-11-30 16:32:33 +01:00
IntegratedQuantum
7651ae6aee Change how visible meshes are determined and traversed.
I gave up on two restrictions:
1. low-to-high LOD borders are no longer prevented. This was only a problem for low render distance + fast movement, and the consequences of the fix were causing flickering in some cases, and to be honest I prefer small gaps in the terrain.
2. 2×2×2 chunks are grouped and rendered together. This makes the vertex shader a bit simpler and allows hierarchical traversal of chunks. However this means that the minimume render distance had to be increased again.

Overall this gave around a 30% reduction in CPU time for selecting the visible chunks. This also reduced jitter during loading.

makes #722 less severe
would make #745 more effective

Further optimizations might be possible.
2024-11-30 15:23:40 +01:00
careeoki
04810c573a
Daisies & Ivy (#799)
* Add plane model, daisies, and ivy

* Add item textures

* Tweak ivy

* Finalize ivy textures

* Remove numerical noise from plane.obj

---------

Co-authored-by: IntegratedQuantum <jahe788@gmail.com>
2024-11-29 22:48:01 +01:00
Carrie
f465b08835 Make creative menu 10 slots wide 2024-11-27 16:49:51 +01:00
IntegratedQuantum
154dc76c4a Place carpets in parallel to selected carpet where possible.
fixes #786
fixes #789
2024-11-26 21:39:51 +01:00
IntegratedQuantum
994d2c93ea Allow breaking single torches and carpets from a given block, instead of breaking all at once.
fixes #798
2024-11-25 17:52:49 +01:00
IntegratedQuantum
0d50346fad Unhardcode how chiselling is handled, given the opportunity for other rotation modes to do similar things.
Preparing for #798
2024-11-25 17:42:44 +01:00
IntegratedQuantum
1fffecb870 Only display the selection box of the currently selected submodel of torch and carpet rotation modes.
fixes #784
2024-11-25 17:00:55 +01:00
IntegratedQuantum
72f5a6b0fd Fix time and biome not being sent to the client.
This bug was introduced in b271a416bcc67189bb0bb429c1e803efcc7b017e by overwriting the timestamp.

fixes #794
2024-11-25 16:22:59 +01:00
IntegratedQuantum
d58da7fe15 Revert z-fighting fix for glass.
`glPolygonOffset` behaves weirdly on some hardware, culling faces near the camera. This results in flickering when going through transparent blocks like fog.

fixes #765
reopens #696
2024-11-23 21:52:32 +01:00
IntegratedQuantum
7bf63927fb small carpet fixes
fixes #787
fixes #785
2024-11-23 21:45:48 +01:00
IntegratedQuantum
b920cea020 Fix uv coordinates of non-full blocks.
fixes #791
2024-11-23 21:23:18 +01:00
careeoki
066ad6e4d1
Add cloth (#783)
* Add cloth zons, carpet model, textures for white cloth.

* Add cloth block textures, fix blue cloth zon

* Add all cloth item textures

* Tweak chalk palettes, tweak cloth texture

* Remove mtl references from carpet.obj

* Make cloth nonsolid
2024-11-23 10:48:13 +01:00
IntegratedQuantum
25bd05e0c3 Add a make-shift player model (it's a snail xD)
fixes #780
2024-11-22 21:57:36 +01:00
IntegratedQuantum
b271a416bc Collect item drops
fixes #644
2024-11-17 21:25:37 +01:00
IntegratedQuantum
25a8e2959a Add /clear to clear the inventory.
fixes #781
2024-11-17 13:40:28 +01:00
IntegratedQuantum
ee63168add Fix problem when closing, then reopening a shared inventory.
This happened because it was reusing the "freed" inventory because it still had the same Source value.

fixes #782
2024-11-17 01:08:05 +01:00
IntegratedQuantum
5044fa89d0 Ensure pointers are updated after swapRemove from the entities list.
should fix #400
2024-11-16 16:21:45 +01:00
IntegratedQuantum
f453173228 Properly center the name above the player's position. 2024-11-15 23:15:59 +01:00
IntegratedQuantum
62fc63bdd9 Limit how far away (in z) a ground patch can generate from it's origin point.
fixes #547
2024-11-15 22:50:51 +01:00
IntegratedQuantum
8c35f9f736 Store the biome hash even if there are no chunks loaded yet.
This avoids needless LOD regeneration on second join and removes some useless debug spam.
fixes #650
2024-11-15 22:37:49 +01:00
IntegratedQuantum
f4133c3ab0 Make the name prompt that appears on first launch unclosable.
fixes #708
2024-11-15 22:22:56 +01:00
IntegratedQuantum
f0c57d6c13 Fix side-effects of user name color and other formatting hints on other rendered strings.
Introduces § as a formatting specifier to disable all previous specifiers. fixes #729
Also fixed another problem in the advanced network debug menu.
2024-11-15 22:17:15 +01:00
IntegratedQuantum
8f15690b85 Call the onCloseFn when toggling a window.
fixes #749
2024-11-15 22:03:23 +01:00
IntegratedQuantum
f53811ae95 Add a carpet rotation mode for placing carpets on walls and ceiling.
fixes #775
2024-11-15 21:37:55 +01:00
careeoki
30669f5284
New water animation (#774)
* New water animation

* Update water animamiton
2024-11-15 19:44:41 +01:00
IntegratedQuantum
c53dd26da7 Change control characters for underlining and strikethrough to __ and ~~
fixes #773
2024-11-13 21:37:55 +01:00
IntegratedQuantum
d9da715e6b Fix use after free of ItemSlots.
fixes #768 and some rarer related issues.
2024-11-13 21:17:45 +01:00
IntegratedQuantum
60b91bfdb8 Prevent the game from opening multiple instances of region files.
Also made the ThreadPool task count more accurate.

fixes #770
2024-11-12 22:23:54 +01:00
careeoki
e6db1ed81b
Make planks tool materials (#772)
* Make planks tool materials, update cobble palette

* Fix formatting
2024-11-11 16:13:29 +01:00
IntegratedQuantum
28b0a51f77 Fix use after free when dropping tools.
should fix #771
2024-11-10 13:15:39 +01:00
IntegratedQuantum
f8a09ae89f Fix crash when right clicking the workbench output slot.
fixes #769
also added some more locking and assertions which might help detect other issues.
2024-11-10 12:49:21 +01:00
IntegratedQuantum
584214119b Remove leftover debug print when receiving an inventory sync operation. 2024-11-10 12:31:32 +01:00
IntegratedQuantum
99a3d66bf1 Convert recipe files to zon.
fixes #767
2024-11-08 21:27:04 +01:00
IntegratedQuantum
f36ad5215f Add a volcano biome. 2024-11-07 20:57:41 +01:00
IntegratedQuantum
116d7b5e99 Remove zero chance biomes before constructing the biome properties tree.
fixes #766
2024-11-07 16:57:36 +01:00
IntegratedQuantum
7b4461ad00 Improve biome interpolation on biome changes.
Now it uses a 1d noise, to offset the biome positions and the height interpolation.

This should also fix #633 and helps reduce the impact of #766
2024-11-05 23:30:27 +01:00