Go to file
Joshua Yanovski d87225d908 Various improvements to chunk load latency.
Firstly, most importantly, improves the heuristic used for deciding
which chunks to mesh (which matters more even at low view distances
with meshing being so expensive now, but has an even more obvious
improvement at large view distances).  Essentially, instead of always
prioritizing whatever chunk was fetched earliest from the server,
instead we prioritize chunks *closest* to the player first, then chunk
order.

This greatly improves the apparent latency for things like
picking up a sprite, as well as cases where the player moves out of the
loaded range but (due to slow loading from the server or a large VD
range) there are many remaining chunks left to be meshed still within
the VD but nowhere near the player.  By properly priotizing chunks near
the player, we minimize the time / likelihood of a player being on or
very near an unmeshed chunk, and make high VDs and faster travel
speeds more viable.

We make a few other minor improvements as well:

Avoid duplicate meshing of neighbors when first inserting chunks, if
they are already in the todo list and the chunk being inserted was not
directly modified.

Also avoid remeshing neighbors if only a solid block's color changed,
which could sometimes be useful for non-sprite modifications (for
example flame-induced changes to non-destructible terrain color).
2021-05-18 17:10:29 -07:00
.cargo Fixed cargo test-server. Removed -Z package-features from .cargo/config as it is no longer required 2021-04-15 19:07:46 +01:00
.github/workflows Remove git filter repo 2021-02-19 08:55:10 -05:00
.gitlab Extract voxygen/src/i18n.rs into own crate 2021-05-09 13:12:26 +03:00
assets Update pt br 20210517 2021-05-17 18:12:20 +00:00
client Revert "Merge branch 'xMAC94x/quic_enablement' into 'master'" 2021-05-17 08:32:12 -07:00
common Revert "Merge branch 'xMAC94x/quic_enablement' into 'master'" 2021-05-17 08:32:12 -07:00
network Added non-admin moderators and timed bans. 2021-05-09 21:19:16 -07:00
nix build(nix): switch to crate2nix 2021-04-27 05:18:12 +03:00
plugin Reduced unsafe 2021-03-02 17:41:28 +01:00
server Small cockatrice AI fixes 2021-05-17 22:46:50 +00:00
server-cli use split_inclusive instead 2021-05-12 18:40:12 +02:00
voxygen Various improvements to chunk load latency. 2021-05-18 17:10:29 -07:00
world Added haniwa sentries to level 3 dungeons. 2021-05-10 18:53:50 -05:00
.dockerignore - Load characters after login. 2020-05-09 15:41:25 +00:00
.gitattributes Added .tar to LFS extensions 2020-12-13 17:15:33 +00:00
.gitignore Ignore local neovim rc 2021-04-29 20:49:35 +03:00
.gitlab-ci.yml dont run CI on master on mirror 2021-05-11 08:54:10 +02:00
.mailmap Added a .mailmap file to unify my name in commits made with my email address 2021-01-15 00:19:47 +01:00
.rustfmt.toml update toolchain to nightly-2021-03-22 2021-03-22 16:41:04 +01:00
.tokeignore Added tokeignore for Cargo.nix 2020-07-02 12:14:01 -04:00
Cargo.lock Revert "Merge branch 'xMAC94x/quic_enablement' into 'master'" 2021-05-17 08:32:12 -07:00
Cargo.toml Extract common/src/assets.rs to own crate 2021-05-09 13:12:26 +03:00
CHANGELOG.md Make NPCs Aware of Sound - See Issue #913 2021-05-15 19:36:27 +00:00
CONTRIBUTING.md Add CONTRIBUTING 2019-05-17 01:34:07 +00:00
flake.lock chore(deps): update nix flake deps 2021-05-04 11:57:14 +03:00
flake.nix chore(deps): update nix flake deps 2021-05-04 11:57:14 +03:00
LICENSE Update Veloren license year 2020-05-22 08:05:10 -04:00
README.md DO no longer sponsors us in 2021 2021-05-10 23:29:13 +02:00
rust-toolchain update toolchain to nightly-2021-03-22 2021-03-22 16:41:04 +01:00

Veloren logo on a screenshot

pipeline status coverage report license discord lines of code contributor count

Welcome To Veloren!

Veloren is a multiplayer voxel RPG written in Rust. Veloren takes inspiration from games such as Cube World, Minecraft and Dwarf Fortress. The game is currently under heavy development, but is playable.

Development

Currently the communication of contributors happens mainly on our official Discord server. You can join it to keep up with the development, talk to us or contribute something yourself. Anyone who shows genuine effort to help is welcome in our team. You don't have to know how to program to contribute!

Sign Up - Here you can create an online account for Veloren. This will be needed to play on auth-enabled servers, including the official server.

The Book - A collection of all important information relating to Veloren. It includes information on how to compile Veloren and how to contribute.

Future Plans - Go here for information about Veloren's development roadmap and what we're currently working on.

Official social media and websites

Get Veloren

We provide 64-bit builds for Linux, Mac, and Windows, which can be downloaded on the official website: https://www.veloren.net

Due to rapid development stable versions become outdated fast and might be incompatible with the public server.

If you want to compile Veloren yourself, follow the instructions in our Book.

F.A.Q.

Q: How is this game licensed?

A: It's free to play, modify and distribute. Forever. Since it is a community project, we decided to license it under the GNU GPL 3.0 license which means it will always stay free and open source.

Q: What platforms are supported?

A: Veloren can run on Windows, Linux and Mac OS on all architectures (although x86_64 is our main focus). It's probably possible to compile Veloren on/for BSD, Fuchsia and others as well.

Q: Do you accept donations?

A: You can support the project on our OpenCollective Page.

Credit

Many thanks to everyone that has contributed to Veloren's development, provided ideas, crafted art, composed music, hunted bugs, created tools and supported the project.