haslersn
1796c09ca1
common: Rework volume API
...
See the doc comments in `common/src/vol.rs` for more information on
the API itself.
The changes include:
* Consistent `Err`/`Error` naming.
* Types are named `...Error`.
* `enum` variants are named `...Err`.
* Rename `VolMap{2d, 3d}` -> `VolGrid{2d, 3d}`. This is in preparation
to an upcoming change where a “map” in the game related sense will
be added.
* Add volume iterators. There are two types of them:
* _Position_ iterators obtained from the trait `IntoPosIterator`
using the method
`fn pos_iter(self, lower_bound: Vec3<i32>, upper_bound: Vec3<i32>) -> ...`
which returns an iterator over `Vec3<i32>`.
* _Volume_ iterators obtained from the trait `IntoVolIterator`
using the method
`fn vol_iter(self, lower_bound: Vec3<i32>, upper_bound: Vec3<i32>) -> ...`
which returns an iterator over `(Vec3<i32>, &Self::Vox)`.
Those traits will usually be implemented by references to volume
types (i.e. `impl IntoVolIterator<'a> for &'a T` where `T` is some
type which usually implements several volume traits, such as `Chunk`).
* _Position_ iterators iterate over the positions valid for that
volume.
* _Volume_ iterators do the same but return not only the position
but also the voxel at that position, in each iteration.
* Introduce trait `RectSizedVol` for the use case which we have with
`Chonk`: A `Chonk` is sized only in x and y direction.
* Introduce traits `RasterableVol`, `RectRasterableVol`
* `RasterableVol` represents a volume that is compile-time sized and has
its lower bound at `(0, 0, 0)`. The name `RasterableVol` was chosen
because such a volume can be used with `VolGrid3d`.
* `RectRasterableVol` represents a volume that is compile-time sized at
least in x and y direction and has its lower bound at `(0, 0, z)`.
There's no requirement on he lower bound or size in z direction.
The name `RectRasterableVol` was chosen because such a volume can be
used with `VolGrid2d`.
2019-09-06 15:43:31 +02:00
haslersn
886d554f52
common: prepend/append multiple SubChunks in a batch
2019-09-06 15:33:36 +02:00
haslersn
963c5a7785
common: Calculate magic number in Chonk
2019-09-06 15:33:36 +02:00
haslersn
8451a06804
common: Set TerrainChunk::SIZE.z = std::i32::MAX
2019-09-06 15:33:36 +02:00
haslersn
57354fb062
common: For trait ReadVol
remove get_unchecked()
2019-09-06 15:33:36 +02:00
Imbris
52d84248ec
Remove all warnings
2019-09-04 19:03:49 -04:00
Monty Marz
f53904b534
More sprites, ui fixes, lianas
2019-09-01 19:04:03 +00:00
Monty Marz
fade04d44e
Pfauenauge/plants grass
2019-08-21 17:22:05 +00:00
Joshua Barretto
5f09ab3a4f
Added multiple sprite block kind support
2019-08-20 00:31:11 +01:00
Joshua Barretto
b31cca4bb3
Added wheat and sprite rendering
2019-08-19 21:09:35 +01:00
Acrimon
d0f10115f4
Eliminated unsafe.
2019-08-19 14:33:31 +02:00
Joshua Barretto
49426565dc
Renamed normal StructureBlock variant
2019-08-18 15:33:16 +01:00
Joshua Barretto
e535537106
Added default block kind to structure loading
2019-08-18 10:33:18 +01:00
Joshua Barretto
825d8bb632
Fixed water in caves, made water reflection vary with lighting
2019-08-18 10:33:18 +01:00
Vechro
b5b3b980fe
Add green sludge special index
2019-08-18 10:33:18 +01:00
Vechro
944067fd43
Add water special index
2019-08-18 10:33:18 +01:00
Joshua Barretto
42237a84e4
Added translucent meshing pass, water reflections
2019-08-18 10:33:18 +01:00
Acrimon
b4a46f3e6e
Finished switch to hashbrown.
2019-08-11 22:38:28 +02:00
timokoesters
1227596406
Implement specifier syntax and cleanup
2019-08-06 08:31:48 +02:00
Joshua Barretto
8b9a92b30e
Added dungeons
2019-08-03 22:15:23 +01:00
Joshua Barretto
e7dd151833
Added fruit trees
2019-07-09 17:08:43 +01:00
Joshua Barretto
879789ecc4
Fixed acacia colours
2019-07-08 20:28:48 +01:00
Joshua Barretto
c2a11ed6b2
Improved worldgen performance with more precise z bound checks
2019-07-08 15:51:38 +01:00
Imbris
d2f8c47361
Pass BufReader to Asset::load()
2019-07-03 05:02:01 -04:00
Songtronix
0c3d693561
clean warnings from voxygen/hud
2019-07-02 21:25:07 +00:00
timokoesters
f5da167ce5
Fix warnings and clippy recommendations in common
2019-07-02 15:48:25 +02:00
Joshua Barretto
489f5f6b2a
fmt
2019-07-01 14:38:45 +01:00
Joshua Barretto
c8a2e4722c
Fixed chonk memory usage bug, added block manipulation
2019-07-01 14:36:45 +01:00
Joshua Barretto
46fce696a2
Better path noise, better shadows
2019-06-26 19:14:12 +01:00
Joshua Barretto
b987bda9ce
Stronger shadows, fewer cliffs in oceans
2019-06-26 19:14:12 +01:00
Joshua Barretto
d0b38e9875
Worldgen performance improvements, better sun
2019-06-26 19:14:12 +01:00
Joshua Barretto
a9d30bbfb6
Adjusted tree colour variation
2019-06-15 11:36:26 +01:00
Joshua Barretto
30b668d0cc
Added dynamic tree colours
2019-06-13 11:59:05 +01:00
Joshua Barretto
9fed2c1534
Merged stumps, adjusted scale code
2019-06-13 11:59:05 +01:00
Joshua Barretto
cf193a97c4
Set default case for block type opacity
2019-06-13 11:59:05 +01:00
Cody
14ac5babd4
Removes most unused imports; changes some unused variables to underscores or provides a leading underscore; removes some unnecessary variables and mutable declarations; and performs other miscellaneous warning fixes.
2019-06-06 14:48:41 +00:00
Joshua Barretto
afd983f6f8
Lighting fix
2019-06-06 12:25:06 +01:00
Joshua Barretto
9da2d82197
Added proper VD fog
2019-06-05 20:52:51 +01:00
Joshua Barretto
9a8552d5fb
Added rocks
2019-06-05 20:52:51 +01:00
Joshua Barretto
06201c7353
fmt
2019-06-05 20:52:51 +01:00
Joshua Barretto
92f2d36b0c
Optimised sub-terrain chonk storage, fixed hash chunk bug, altered terrain base
2019-06-05 20:52:51 +01:00
Joshua Barretto
e2182b1a68
Added basic light
2019-06-03 22:50:47 +01:00
Joshua Barretto
92391883a9
fmt
...
Former-commit-id: 689464ed1009ebfd74769fa113fc7b433ea62bbd
2019-05-25 06:54:47 +01:00
Joshua Barretto
c8ba5d9f89
Basic pine tree spawning
...
Former-commit-id: e58374724f6c9cb4a54ae96abd3420b02207fd30
2019-05-25 05:51:45 +01:00
Joshua Barretto
4d73f38e6d
Refactored worldgen sampling, added cache layer
...
Former-commit-id: 3ad5277ed0c871d6678a42629145cb722d4c76c5
2019-05-25 05:51:45 +01:00
Joshua Barretto
86bb277116
Added snow to mountains, fixed hash sub-chunk allocation failure
...
Former-commit-id: 45bb3063172b980f7cd7aa5bd2b50a1a53480120
2019-05-25 05:51:45 +01:00
Joshua Barretto
cafbb45e52
Small worldgen fixes and hash chunk optimisation
...
Former-commit-id: f1cb9a010f5d0882d4bc21ede1f405a8a7fa867c
2019-05-25 05:51:45 +01:00
Joshua Barretto
fc25dc8c7f
fmt
...
Former-commit-id: 1f7bec8da117091b3f2e8f58ce45b9caf1b6c89d
2019-05-21 23:31:38 +01:00
Joshua Barretto
0c78264ebc
Added spawn point
...
Former-commit-id: 04ea38df61d3610d679368166de220243ef1bfba
2019-05-21 23:04:39 +01:00
Joshua Barretto
feece604be
Restarted worldgen
...
Former-commit-id: e1526ec5f865904f11ab6a1507ecdc1a52acb28d
2019-05-21 22:51:41 +01:00
Joshua Barretto
a0dfa3fddc
Added basic mountain/valley worldgen
...
Former-commit-id: 5a45f18fcdf523841ee8433ba2ff0b8765eadf3a
2019-05-21 22:51:41 +01:00
Joshua Barretto
5b2da36fd0
Added mega worldgen
...
Former-commit-id: f7c88a1d387c282b78ab834dd63e64432b371552
2019-05-21 22:51:41 +01:00
Joshua Barretto
5a2c7a7813
Removed accidental println
...
Former-commit-id: a203e8105cd42463b9a72245e1623dde68874571
2019-05-17 22:55:50 +01:00
Joshua Barretto
7174830279
fmt
...
Former-commit-id: 71912bdd2b8f40020153c5696cd5cc1af3f154cc
2019-05-17 18:54:56 +01:00
Joshua Barretto
91184356e7
Added chonks
...
Former-commit-id: a62fb321dbfb7541feaa9de4e641db9887b061fd
2019-05-17 18:44:30 +01:00
Forest Anderson
993388e56a
Ran fmt on codebase
...
Former-commit-id: 7fecffa1dc66fffba4f07d45fb80960dc5178f4f
2019-04-29 20:37:19 +00:00
timokoesters
06693136b6
Fixed names, debug and notify
...
Former-commit-id: f58dedf7c4eb9b284982588fc6b19bbe3edb0391
2019-04-22 23:00:24 +02:00
Joshua Barretto
3d9f8105e6
Started work on server-side chunks
...
Former-commit-id: 84a6bd7358f67a77043c4b11c787538f073c8d28
2019-04-14 14:23:43 +01:00
Joshua Barretto
248577bdef
Added test terrain loading and meshing
2019-01-23 20:01:58 +00:00
Joshua Barretto
41b6672743
Added Terrain type to scene
2019-01-15 15:13:11 +00:00
Joshua Barretto
ae4f1ae2ea
Added vox trait
2019-01-14 18:49:53 +00:00
Joshua Barretto
8184bc6fc0
Added figures, segments, test .vox files, basic animation test
2019-01-13 20:53:55 +00:00
Joshua Barretto
523db9f054
Started work on adding terrain
2019-01-02 19:22:01 +00:00