Commit Graph

161 Commits

Author SHA1 Message Date
Delyth Williams
b73da5507e added new flora 2020-06-15 16:39:21 +00:00
Ben Wallis
4d6c553b1b Fixed suppressed clippy warnings for #587 - redundant_closure 2020-06-12 20:47:22 +01:00
Marcel Märtens
0e59ee901e dependency reduction:
- authc no longer uses reqwest
 - image only supports PNG
 - replace routille with tiny_http
 - several other dependencies
 - cargo upgrade
 - following improvement was measured on R7 1700X:
   before:
    - cargo build: 3076.73s user / 4:45 total / 589 dependencies
    - cargo test: 6118.38s user / 7:30 total / 959 dependencies
   after:
    - cargo build: 2680.54s user / 4:05 total / 480 dependencies
    - cargo test: 5351.81s user / 7:04 total / 791 dependencies
 - added xMAC94x to CODEOWNERS for Cargo.toml, he will protect them from now on and hit people with evil looks ;)
2020-06-11 20:55:34 +02:00
Ben Wallis
950c62efc6 Suppressed all existing clippy warnings in preparation for fixes as part of #587 2020-06-10 22:01:42 +01:00
Monty Marz
c792cc05a9 Villagers and Cultists 2020-04-30 20:43:24 +00:00
Joshua Barretto
90de779559 Better LoD variable names 2020-04-25 21:44:23 +01:00
Joshua Barretto
93105105e0 Added extra LoD level to terrain sprites 2020-04-25 21:44:23 +01:00
Joshua Barretto
c05f4fe009 Added configurable sprite view distance, minor bug fixes 2020-04-25 21:44:23 +01:00
Joshua Barretto
8bf5709ddf Implemented Treeco's z-only LoD suggestion 2020-04-25 21:44:23 +01:00
Joshua Barretto
3e62f7edc3 Better LoD distance scaling 2020-04-25 21:44:23 +01:00
Joshua Barretto
b2c8dc0806 Added terrain sprite LoD 2020-04-25 21:44:23 +01:00
Joshua Barretto
1a4c7f46f4 Fixed second render chunk counting issue 2020-04-23 18:19:42 +01:00
Joshua Barretto
0c491bb558 Fixed incorrect chunk render counter 2020-04-23 18:19:42 +01:00
Joshua Barretto
1983fd8ec1 Cleanup, fixed clouds, removed 45-degree terrain sprites 2020-04-23 18:19:41 +01:00
Joshua Barretto
60bf396e4f Added doors to houses 2020-04-23 18:19:41 +01:00
Monty Marz
44c5002db3 Pfau/crops 2020-04-23 18:19:41 +01:00
Joshua Barretto
431b2ae07b Fixed window mask layering, fmt 2020-04-23 18:19:41 +01:00
Joshua Barretto
77d0292e91 Added windows to buildings and scarecrows 2020-04-23 18:19:41 +01:00
Pfauenauge90
db5311189d scarecrow 2020-04-23 18:19:41 +01:00
Pfauenauge90
98704a4753 turnip and window blocks 2020-04-23 18:19:41 +01:00
Monty Marz
0fb3a115da Add more crops 2020-04-23 18:19:41 +01:00
Joshua Barretto
f999edffaa Fixed crop crash issues 2020-04-23 18:19:41 +01:00
Pfauenauge90
d57ca371e2 fix panic 2020-04-23 18:19:41 +01:00
Pfauenauge90
4b72a07e22 sprites 2020-04-23 18:19:41 +01:00
Pfauenauge90
fd3ffdf28b pizza sprite 2020-04-23 18:19:40 +01:00
Pfauenauge
67f27ef970 ember sprite 2020-04-23 18:19:40 +01:00
Joshua Barretto
5f2d0021a3 Reversed water draw order 2020-04-23 18:19:40 +01:00
Joshua Barretto
0021bd6452 Added new settlement generation to world, basic rendering 2020-04-23 18:19:40 +01:00
Joshua Barretto
944a37b848 Initial settlement generation work 2020-04-23 18:19:40 +01:00
Imbris
4a0c474be1 Remove Client dependency from Scene types and audio managers, add an
example for using voxygen as a library to renderer images of characters
2020-03-05 23:12:51 -05:00
Marcel Märtens
dae31ae5b6 apply new rustfmt - touching alot of files 2020-02-01 21:39:39 +01:00
Joshua Barretto
2d9aa21eef Added test world, friendly NPC pathfinding 2020-01-26 12:52:07 +00:00
Monty Marz
b583f60326 35 new ground sprites, UI fixes 2020-01-25 11:14:02 +00:00
Joshua Yanovski
e91578ffdb Cargo fmt most things (except erosion.rs). 2020-01-23 18:18:12 +01:00
Joshua Yanovski
2b38927345 Fixes for nonstandard chunk and map sizes.
Also fixes a longstanding map rendering issue.
2020-01-23 18:18:11 +01:00
Imbris
b3cdde3ce9 fix: panic in terrain meshing 2020-01-19 16:03:27 -05:00
Yusuf Bera Ertan
4a0a2d5229 Cargo fmt 2020-01-08 20:09:54 +03:00
Yusuf Bera Ertan
24013f1a32 Use treeculler crate 2020-01-07 19:40:06 +03:00
Yusuf Bera Ertan
c19c222a90 Use temporal coherence for chunk frustum culling 2020-01-07 18:46:09 +03:00
Yusuf Bera Ertan
e32153e980 Improve frustum culling by using AABBs, add related debug information 2020-01-07 18:44:33 +03:00
Imbris
ec3e075020 fix(player list): Show players not in range on the player list
fix(overflow): Stops including block updates that fail (since chunks
don't exist on the client) in `TerrainUpdates` (which would trigger
meshing of those nonexistent chunks). Furthermore, removes
remeshing of chunks with block updates if those chunks don't have all their
neighbours (since those wouldn't be meshed in the first place).
2019-12-29 20:51:05 -05:00
Joshua Barretto
28e625635f Split terrain rendering to avoid redrawing skybox 2019-11-19 19:09:22 +00:00
Joshua Barretto
aa111d34e5 Added clouds 2019-11-19 19:09:22 +00:00
Joshua Barretto
671313a523 Overhauled water shaders 2019-11-05 15:45:01 +00:00
Monty Marz
a0a8011d7e Updated: Help Window, Map, Item Descriptions 2019-10-27 22:22:40 +00:00
Monty Marz
fdfab6a807 refactor: create_projectile doesn't take a light
It returns a builder so the caller can just do it
2019-10-17 20:59:36 +00:00
Joshua Barretto
04c64dc122 Better (and faster) water shaders 2019-10-17 17:11:55 +01:00
Joshua Barretto
c01e19fc05 Don't render water that isn't there, improved chunk render order 2019-10-16 12:40:18 +01:00
Monty Marz
d82ec6715a Item icons, chests and more 2019-10-09 19:28:05 +00:00
Monty Marz
4c1eba1f3e Assets update, aesthetics, minor fixes 2019-10-04 18:27:12 +00:00
Justin Shipsey
27f3bebe40 Char overhaul and asset update 2019-10-02 10:05:17 +00:00
Joshua Barretto
e22fe81a2f Added velorite 2019-09-26 00:15:07 +01:00
Joshua Barretto
499344ccab Added entity shadows 2019-09-26 00:15:07 +01:00
Joshua Barretto
46fdc87014 Animated chunk loading 2019-09-26 00:15:07 +01:00
Joshua Barretto
8bcb3c44f7 Reminder about remesh for lighting updates 2019-09-26 00:15:07 +01:00
haslersn
d99bef6803 voxygen: Make the Terrain struct generic 2019-09-06 15:43:31 +02:00
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
Monty Marz
943495c0c5 Pixel art for axe and flying rod, shadow for zone names and death message 2019-09-05 17:28:33 +00:00
Monty Marz
f53904b534 More sprites, ui fixes, lianas 2019-09-01 19:04:03 +00:00
Joshua Barretto
cc214982bf Fixed warnings 2019-08-31 11:44:52 +01:00
Joshua Barretto
17a61e0b7c Fixed terrain sprite transparency issue 2019-08-31 11:44:52 +01:00
Joshua Barretto
27c208d1a5 Fixed terrain sprite transparency layering 2019-08-31 11:44:52 +01:00
Monty Marz
fade04d44e Pfauenauge/plants grass 2019-08-21 17:22:05 +00:00
Joshua Barretto
0fcb3a174d Random terrain sprite orientations 2019-08-21 16:22:49 +01:00
Joshua Barretto
75e1ee3cd7 Added per-instance transformation matrix, variable wind swaying 2019-08-21 13:47:29 +01:00
Joshua Barretto
590ce1a987 Fixed sprite mesh offsets 2019-08-20 16:54:12 +01:00
Joshua Barretto
4ed21a2e59 Sprite render distance tweaks and optimisations 2019-08-20 11:05:01 +01:00
Joshua Barretto
5f09ab3a4f Added multiple sprite block kind support 2019-08-20 00:31:11 +01:00
Joshua Barretto
7960e6ea6d Sprite distance fading, grass 2019-08-19 22:54:16 +01:00
Joshua Barretto
b31cca4bb3 Added wheat and sprite rendering 2019-08-19 21:09:35 +01:00
Joshua Barretto
42237a84e4 Added translucent meshing pass, water reflections 2019-08-18 10:33:18 +01:00
Acrimon
fda47fc322 [Voxygen] Switch mutexes to parking_lot and channels to crossbeam. 2019-08-16 00:07:09 +02:00
Acrimon
0bbef0d851 Use hashbrown in voxygen instead of a billion different shitty maps. 2019-08-11 21:52:23 +02:00
Joshua Barretto
b34d22565e Added point lights 2019-07-21 19:22:49 +01:00
Joshua Barretto
ce327445a7 Send block diffs instead of entire chunks on block change 2019-07-20 16:41:03 +01:00
Acrimon
20ac81a986 Fixed some misses. 2019-07-12 20:51:22 +02:00
Joshua Barretto
d2ccbafe59 Made mesh scheduling fairer 2019-07-06 20:00:17 +01:00
Joshua Barretto
0c9843999b fmt 2019-07-06 20:00:17 +01:00
Joshua Barretto
51ad1f1995 Improved remeshing performance 2019-07-06 20:00:17 +01:00
Joshua Barretto
ef973faadf Throttled mesh scheduling to improve remesh performance 2019-07-06 20:00:17 +01:00
Joshua Barretto
6fc2096dae Reenabled towns, lighter days 2019-07-06 20:00:17 +01:00
Joshua Barretto
1641c4f788 Added mesh worker queue limit to prevent throttling of meshing queue 2019-07-06 20:00:17 +01:00
Joshua Barretto
489f5f6b2a fmt 2019-07-01 14:38:45 +01:00
Joshua Barretto
586b62ea28 Fixed remesh data race 2019-07-01 14:38:38 +01:00
Joshua Barretto
90566243ca Removed debug printing 2019-07-01 14:37:32 +01:00
Joshua Barretto
c8a2e4722c Fixed chonk memory usage bug, added block manipulation 2019-07-01 14:36:45 +01:00
Joshua Barretto
581c4d0e3b Fixed frustum culling efficiency bug 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
8da46b48ac Added frustum culling for chunks 2019-06-06 10:04:37 +01:00
Joshua Barretto
66cd8de0e1 Only draw chunks outside of fog boundary, reduce fog strength 2019-06-06 08:13:58 +01:00
Joshua Barretto
9a8552d5fb Added rocks 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
fc25dc8c7f fmt
Former-commit-id: 1f7bec8da117091b3f2e8f58ce45b9caf1b6c89d
2019-05-21 23:31:38 +01:00
Joshua Barretto
5b2da36fd0 Added mega worldgen
Former-commit-id: f7c88a1d387c282b78ab834dd63e64432b371552
2019-05-21 22:51:41 +01:00
Cody
6b09fd7c53 Pedantic comment and language fixes.
Former-commit-id: eb49765c911aaa97a9c8ed351216a7a6f8411213
2019-05-17 18:32:07 -04: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
Joshua Barretto
8af606e348 Fixed singleplayer logout crash due to orphaned mesh worker
Former-commit-id: 2b8c5aa0c906223ac043db8137ad95a0e29407c5
2019-05-15 13:26:14 +01:00
Joshua Barretto
67241fec31 Massively increased efficiency of terrain meshing, chunks generate from centre
Former-commit-id: 66217b9974a791044e4b1f3d4580761bd066113a
2019-05-13 13:08:17 +01:00
sxv20_
592477752e move sample() to returning VolMap, incomplete VolMap meshing code
Former-commit-id: 77d3db6c3bf28364089647802f83d2d00f3a152d
2019-05-13 11:03:47 +01:00