Commit Graph

3473 Commits

Author SHA1 Message Date
Imbris
843529c7bb Update to latest wgpu git (around 0.7), temporarily disable shader validation due to naga bug, rebase fixes!! 2021-06-02 23:59:49 -04:00
Imbris
c532f50e64 Remove wgpu patch/update wgpu, rebase fixes, remove use of deprecated
vek functions for left, right, up, down, forward_rh, forward_lh
2021-06-02 23:59:49 -04:00
Imbris
fc5e8cb18d Comment out secondary backends 2021-06-02 23:59:49 -04:00
Imbris
fce14fbaa9 Avoid extra set_pipeline calls 2021-06-02 23:59:48 -04:00
Imbris
7012e16706 Properly rebind shadow textures when they are changed 2021-06-02 23:59:48 -04:00
Joshua Yanovski
93568754a0 Inverse depth planes.
Also added a function that has extensive details about what the
projection options mean, and set our near plane much closer (0.25 to
0.0625) and far plane much farther (100000.25 to 524288.0625).  In the
future we may completely remove the far plane (opting for an infinite
one) and may possibly improve accuracy elsewhere using analysis of other
floating point values.
2021-06-02 23:59:48 -04:00
Joshua Yanovski
adf3f83b4b Fix point shadows. 2021-06-02 23:59:48 -04:00
Joshua Yanovski
363c55c521 Fix directed shadows, mostly. 2021-06-02 23:59:48 -04:00
Joshua Yanovski
868293a802 More frustration with shadows. 2021-06-02 23:59:48 -04:00
Joshua Yanovski
c97a42fdb7 Various fixes for shadows. 2021-06-02 23:59:48 -04:00
Capucho
23f1144fe2 Fix the shadow drawing code
Very poorly optimized
2021-06-02 23:59:48 -04:00
Capucho
7389f8893d Re enable the skybox rendering in char select 2021-06-02 23:59:48 -04:00
Capucho
672ac0dbf3 Fix the buffer slicing in the submodel
Fixes the void figures
2021-06-02 23:59:48 -04:00
Capucho
b6c37be299 Re enable sprite rendering 2021-06-02 23:59:48 -04:00
Capucho
c22dc6697c Reenable non-player figure drawing 2021-06-02 23:59:48 -04:00
Imbris
fe6cf0396f Draw water 2021-06-02 23:59:48 -04:00
Imbris
97bed5752b Fix clouds 2021-06-02 23:59:48 -04:00
Imbris
bae0310cc7 Somewhat fix lod, prevent particles spamming new buffers when disabled 2021-06-02 23:59:48 -04:00
Imbris
99d74147e5 No cube spam 2021-06-02 23:59:48 -04:00
Imbris
aa17132f9d Start lod, update wgpu to fix viewport count validation error 2021-06-02 23:59:48 -04:00
Imbris
553c1c18a9 Add skybox 2021-06-02 23:59:48 -04:00
Capucho
14f683d403 Fix wrong color format in col light 2021-06-02 23:59:48 -04:00
Capucho
1083d04c73 Reenable terrain rendering
Refractor col lights
2021-06-02 23:59:48 -04:00
Capucho
0db2a35955 Fix the orientation of the rendering
Reenable the rendering of the player
2021-06-02 23:59:47 -04:00
Capucho
b8d560a882 Pass format to particle pipeline 2021-06-02 23:59:47 -04:00
Capucho
1668e834f8 Renable the figure and terrain drawing code (not working yet) 2021-06-02 23:59:47 -04:00
Imbris
7e0fe83335 Fix culling of postprocess/cloud triangles 2021-06-02 23:59:47 -04:00
Imbris
b3ca2f6870 Particles compiles and runs (no visuals yet) 2021-06-02 23:59:47 -04:00
Capucho
4c83e19c83 Remove the depth buffer from the Third drawer 2021-06-02 23:59:47 -04:00
Capucho
2c7d49b69f Shader fixes 2021-06-02 23:59:47 -04:00
Capucho
a97ba961a4 Update dependencies 2021-06-02 23:59:47 -04:00
Imbris
da0423ab2a Almost make clouds/postproccess run 2021-06-02 23:59:47 -04:00
Imbris
1e2d956106 Render the UIs 2021-06-02 23:59:47 -04:00
Imbris
628d9391d3 Add generic Bound<T> type for grouping consts/other bindable things with bind groups 2021-06-02 23:59:47 -04:00
Imbris
124d69d7ad Render Ui 2021-06-02 23:59:45 -04:00
Imbris
f7efbd8bc7 Color! 2021-06-02 23:56:43 -04:00
Imbris
97ca278d89 fixed validation errors when creating pipelines 2021-06-02 23:56:43 -04:00
Imbris
760f21b4f3 No crash on startup 2021-06-02 23:56:43 -04:00
Imbris
f540366676 Made shaders compile by adding locations and bindings and splitting textures and samplers out into two things and adding guards for double including shaders 2021-06-02 23:56:43 -04:00
Imbris
6a84109ece Improve shader errors by showing shader file name, reduce repetitive shader construction code 2021-06-02 23:56:43 -04:00
Imbris
fd0c4c166a migrate cloud pipeline, migrate iced renderer, rebase fixes 2021-06-02 23:56:43 -04:00
Imbris
d9c523ba0d Make compile through various changes, update wgpu to latest git 2021-06-02 23:56:43 -04:00
Capucho
8c3995298b More fixes 2021-06-02 23:56:43 -04:00
Capucho
8c6e43572f Switched from zerocopy to bytemuck
Fixing errors
2021-06-02 23:56:40 -04:00
Capucho
89d09baab4 Made the layouts more compact 2021-06-02 23:55:59 -04:00
Capucho
9ee71d6369 Finished porting all pipelines 2021-06-02 23:55:59 -04:00
Capucho
c4bec2500f Began porting pipeline creation 2021-06-02 23:55:59 -04:00
Capucho
1b5ae9c926 ported all pipelines 2021-06-02 23:55:59 -04:00
Capucho
121f001b17 Ported most of the textures and models related methods 2021-06-02 23:55:59 -04:00
Capucho
806f240eb5 Started the report of wgpu 2021-06-02 23:55:59 -04:00
Marcel
f988584337 Merge branch 'revert-c6e200a3' into 'master'
Add a configuration Option to opt-in Quic backend

See merge request veloren/veloren!2318
2021-06-02 14:27:13 +00:00
Avi Weinstock
42dc86788e Address further MR 2301 comments. 2021-06-02 00:39:58 -04:00
Avi Weinstock
9c4453508e Address many of Imbris's comments on MR 2301. 2021-06-02 00:39:58 -04:00
Avi Weinstock
5aa98d18e3 Depend on crossbeam-utils and crossbeam-channel instead of crossbeam in voxygen. 2021-06-02 00:39:58 -04:00
Avi Weinstock
8b21ed540c Use a single HashMap with the entry API and a KeyedJobTask enum for KeyedJobs. 2021-06-02 00:39:58 -04:00
Avi Weinstock
6d3dcc3835 Address MR 2301 review comments.
- Replace tabs with spaces in map-related i18n.
- Use `retain` in `remove_unloaded_chunks`.
2021-06-02 00:39:58 -04:00
Avi Weinstock
e509a4207b Make the minimap UI not exposed via checkbox yet (still configurable via settings.ron). 2021-06-02 00:39:58 -04:00
Avi Weinstock
9d60a7f533 Make the chunks above dungeons/caves default to black when the ceiling is below them. 2021-06-02 00:39:58 -04:00
Avi Weinstock
523bf2be58 Fix memory leak in KeyedJobs threadpool helper. 2021-06-02 00:39:58 -04:00
Avi Weinstock
7115b1c899 Performance and aesthetic improvements to the voxel minimap.
Performance:
- don't do anything when it's inactive
- only process chunks within minimap-VD
- remove chunks outside of VD
- higher thread pool fraction specified

Aesthetics:
- different water color
- wood and leaves no longer count as ceilings
2021-06-02 00:39:58 -04:00
Avi Weinstock
cbe7521259 Add toggle for minimap, fix scaling formula, reduce minimap VD for better performance, and add changelog entry. 2021-06-02 00:39:04 -04:00
Avi Weinstock
1214715c21 Use a threadpool to speed up minimap chunk rendering. Also fix ceiling height calculations and color water blue. 2021-06-02 00:39:04 -04:00
Avi Weinstock
59e93d23c1 Improve ceiling detection for the voxel minimap. 2021-06-02 00:39:04 -04:00
Avi Weinstock
d878a2050a Composite the layers on chunk load, and try to add an overhead mode. 2021-06-02 00:39:04 -04:00
Avi Weinstock
6df2e96d25 Improve the efficiency of the voxel minimap by only updating it when crossing a chunk boundary or changing z-level. Allows making the 9 chunks nearest to the player fancier by compositing multiple z levels. 2021-06-02 00:39:04 -04:00
Avi Weinstock
937815d8c3 Make all the offsets for voxel minimap work properly for arbitrary sizes, and fix the memory leak. 2021-06-02 00:39:04 -04:00
Avi Weinstock
7980230b7f Add a minimap overlay based on voxel data. 2021-06-02 00:39:04 -04:00
Imbris
23eca4c3f6 Re-disable incremental just for common-systems, small fix in plugin
crate, more new clippy fixes
2021-05-31 20:44:57 -04:00
Imbris
48ebb10d50 Update toolchain 2021-05-31 20:44:57 -04:00
hqurve
cd13db3f5f Fixed loot scroller collisions and moved/cleaned up previous changes 2021-05-31 15:29:35 -04:00
Adam Whitehurst
e06bd0eaa3 feat: BuffKind::Frozen 2021-05-30 08:51:47 -07:00
Adam Whitehurst
9eefa89f90 feat: add frozen debuff icon, en strings 2021-05-30 08:49:32 -07:00
Avi Weinstock
d6442dbd3b Change the ChargedRanged zoom distance from 0.0 to 2.0, and add a delay after the mouse click before the zoom starts (i.e. hold to zoom, spam click will not zoom). 2021-05-26 11:51:29 -04:00
Avi Weinstock
7a97fbb5cf Add zoom scaling as well as FOV scaling to ChargedRanged, and restore the old zoom afterwards. 2021-05-26 09:34:08 -04:00
Avi Weinstock
4d7828ec94 Make the camera zoom as the bow (or any ChargedRanged attack) is charging. 2021-05-26 09:34:07 -04:00
Justin Shipsey
d7c7f6bf5d Merge branch 'sam/rework-bow' into 'master'
Bow Rework

See merge request veloren/veloren!2310
2021-05-26 04:44:09 +00:00
jshipsey
ae43102a5b anim 2021-05-26 00:04:15 -04:00
hqurve
854930bc1a Item pickups are shown in separate window and "inventory-full" messages are shown above the item attempted to be picked up 2021-05-22 20:47:08 +00:00
Sam
1014ac45bf Made new skills for reworked bow.
Created migration to reset bow skills.
2021-05-22 12:33:21 -05:00
Sam
3f16d15bbb Reworked bow 2021-05-22 12:33:20 -05:00
Samuel Keiffer
a0599ac046 Merge branch 'sam/extra-equip-slots' into 'master'
Added Extra Loadout Slots

See merge request veloren/veloren!2295
2021-05-21 20:28:53 +00:00
Marcel
ee93803f4a Merge branch 'lboklin/auto-glide' into 'master'
Implement auto-glide

See merge request veloren/veloren!2321
2021-05-21 09:02:59 +00:00
Marcel Märtens
cf3188b412 remove Protocol from Quic, cleanup code, fix some log spam 2021-05-21 10:41:19 +02:00
Marcel
99304ffddd Revert "Merge branch 'sharp/revert-quinn' into 'master'"
This reverts merge request !2315
2021-05-21 10:41:16 +02:00
Ludvig Böklin
eacc49a961 Prevent auto-glide from pitching too high up 2021-05-20 17:20:49 +02:00
Ludvig Böklin
270f89db6b Disable glider input until keys are pressed again after deploy 2021-05-20 12:13:59 +02:00
Ludvig Böklin
fe186fb44d Code quality 2021-05-20 10:46:39 +02:00
Ludvig Böklin
8da59bb8e8 Implement auto-glide 2021-05-20 09:27:41 +02:00
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
Joshua Yanovski
978b7232db Make meshing work properly for rapid changes.
The previous fix accidentally caused meshing to not perform an update if
a chunk was already actively meshing; this change fixes this behavior to
go back to the old behavior.  It also fixes a subtle bug where sprites
would be using old lighting if a chunk was being actively meshed on the
same tick that a sprite change happened (this should only affect things
in a handful of circumstances and could be avoided if, e.g., only color
was changing, but this can be addressed better at another time).
2021-05-18 12:43:38 -07:00
hqurve
6974ab9199 Added swap_equipped_weapons icon and resized inactive weapons 2021-05-17 15:35:27 -04:00
Joshua Yanovski
3679cb75bc Revert "Merge branch 'xMAC94x/quic_enablement' into 'master'"
This reverts commit 04d8ddf25e, reversing
changes made to 9dcf7a9d26.
2021-05-17 08:32:12 -07:00
Marcel
04d8ddf25e Merge branch 'xMAC94x/quic_enablement' into 'master'
Add a configuration Option to opt-in Quic backend

See merge request veloren/veloren!2268
2021-05-17 12:02:55 +00:00
Sam
93b5e674f6 Fixed comments and some functionality. 2021-05-16 21:35:17 -05:00
Ben Wallis
fcf4ab7619 main/offhand weapon swap check refactor 2021-05-16 21:07:36 -05:00
hqurve
a4384b81c7 Add offhand weapons to bag ui 2021-05-16 20:43:19 -04:00
Sam
6b153bcf47 Enforced certain invariants in how an item was equipped into the loadout:
- a 2h weapon can only be equipped in a mainhand slot if the offhand slot is empty
 - a 1h weapon can only be equipped in an offhand slot if the mainhand slot has a 1h weapon
 - 2h weapons can never be equipped in an offhand slot

Fixed some tests
2021-05-15 15:16:38 -05:00
Sam
9173dca03f Added equip slots for other weapons. 2021-05-15 15:16:37 -05:00
Marcel
7d5ca0e7bf Revert "Merge branch 'snowram/hacky-mount' into 'master'"
This reverts merge request !2219
2021-05-14 13:43:20 +00:00
Marcel
7fe0db2261 Merge branch 'snowram/hacky-mount' into 'master'
Allow for collars to make QuadMed npcs mountable

See merge request veloren/veloren!2219
2021-05-14 12:27:19 +00:00
hqurve
95a6e35a3a Added chat tabs 2021-05-14 12:27:15 +00:00
Snowram
8745fb803a Use Body to determine mountee offsets 2021-05-14 00:11:54 +02:00
Snowram
b063ec5a8f Clean unused mount offset 2021-05-14 00:11:46 +02:00
Snowram
486fbf940e Anims export a transform for mounts 2021-05-14 00:11:37 +02:00
Snowram
026ba616ff Expose the mounting bone to the mounter anims 2021-05-14 00:11:28 +02:00
Snowram
e4f3064b8a Collar can make QuadMeds mountable, state + offsets 2021-05-14 00:11:15 +02:00
Joshua Yanovski
3869cdf1d2 Don't remesh chunk vertex data on sprite update.
This results in an extremely visually noticeable improvement in latency
when adding or removing sprite data and makes the game feel more
responsive.

This happens, for instance, when picking up a sprite like an apple or
flower from the environment.  We check to make sure that for items
with lighting (like Velorite) or changes that otherwise affect meshing
(like changing from fluid to nonfluid) this doesn't trigger.
2021-05-11 12:58:15 -07:00
James Melkonian
f76b61ac17 Make merchants /tell instead of /say 2021-05-11 17:26:22 +00:00
jshipsey
770d07ac90 anims 2021-05-10 18:54:03 -05:00
Sam
0d53e790fd Made golem laser spawn based off of orientation rather than look_dir. Additional balance tweaks. 2021-05-10 18:54:00 -05:00
Snowram
47a2bf7de8 Adds haniwa sentry object 2021-05-10 18:53:48 -05:00
Sam
5fa4358e74 Clay golem attacks done. 2021-05-10 18:53:01 -05:00
Illia Denysenko
f626d27955 Refactor i18n analysis code and improve UX of testing binary 2021-05-10 22:13:00 +00:00
Joshua Barretto
1478daecbc Prevented low FPS from limiting chunk loading performance 2021-05-10 14:23:37 +01:00
Marcel Märtens
9e357dfa0c remove ViewDistance from Client::new() and fix tests 2021-05-10 12:59:49 +02:00
Marcel Märtens
2ea5fd876b cleanup error codes 2021-05-10 12:59:44 +02:00
Marcel Märtens
b443e4dd31 Add Quin support, as this is not yet very much tested it needs to be activated in the settings of SERVER and CLIENT.
Server:
 provide a certificate file and key file via the settings. When provided it will then listen on TCP and QUIC, if not provided it will be TCP only.
 The certificate must be known by the client, so you might get problems with self-signed certificates.
 ```ron
 quic_files: Some((
     cert: "/home/user/veloren_cert.pem",
     key: "/home/user/veloren_key.key",
 )),
 ```

Client:
 activate the voxygen settin `use_quic: true` to try to connect to the quic backend of a server.
2021-05-10 12:59:13 +02:00
Joshua Yanovski
0cf0f59fa7 Merge branch 'sharp/modtools' into 'master'
Added non-admin moderators and timed bans.

See merge request veloren/veloren!2276
2021-05-10 04:54:06 +00:00
Joshua Yanovski
e7587c4d9d Added non-admin moderators and timed bans.
The security model has been updated to reflect this change (for example,
moderators cannot revert a ban by an administrator).  Ban history is
also now recorded in the ban file, and much more information about the
ban is stored (whitelists and administrators also have extra
information).

To support the new information without losing important information,
this commit also introduces a new migration path for editable settings
(both from legacy to the new format, and between versions).  Examples
of how to do this correctly, and migrate to new versions of a settings
file, are in the settings/ subdirectory.

As part of this effort, editable settings have been revamped to
guarantee atomic saves (due to the increased amount of information in
each file), some latent bugs in networking were fixed, and server-cli
has been updated to go through StructOpt for both calls through TUI
and argv, greatly simplifying parsing logic.
2021-05-09 21:19:16 -07:00
Samuel Keiffer
a86c3af42b Merge branch 'aweinstock/mindflayerfixes-202105' into 'master'
Mindflayer AI improvments

See merge request veloren/veloren!2285
2021-05-10 02:54:21 +00:00
Avi Weinstock
1dfcdce1c0 Add a purple fireball to mindflayer and have it shoot it a few times before teleporting, and fix mindflayer AI's husk summons. 2021-05-09 18:09:31 -04:00
juliancoffee
93b3d12478 remove ssh feature from git2 2021-05-10 00:49:45 +03:00
juliancoffee
5e598964b1 Downgrade git2 to compile on windows 2021-05-10 00:09:33 +03:00
juliancoffee
2035c041f9 add authors 2021-05-09 13:12:26 +03:00
juliancoffee
279d57658d Fix paths and adding tests 2021-05-09 13:12:26 +03:00
juliancoffee
0a63b10f4c rename i18n/src/i18n.rs to i18n/src/data.rs 2021-05-09 13:12:26 +03:00
juliancoffee
735e8ab4ec Extract common/src/assets.rs to own crate
This gives us ability to use assets-related code in i18n without
depending on whole veloren-common
2021-05-09 13:12:26 +03:00
juliancoffee
0784c2a76a Make fields more private 2021-05-09 13:12:26 +03:00
juliancoffee
c511028290 remove unneeded imports 2021-05-09 13:12:26 +03:00
juliancoffee
911bf974f3 Use hashbrown 2021-05-09 13:12:26 +03:00
juliancoffee
89b6111064 Remove unused dependencies 2021-05-09 13:12:26 +03:00
juliancoffee
5573fc33b9 Extract voxygen/src/i18n.rs into own crate
- New crate (i18n), currently under voxygen directory
- Updated CI to run localization test from i18n, not from voxygen
2021-05-09 13:12:26 +03:00
juliancoffee
50e992ed0d use hashbrown instead of std::collections 2021-05-09 13:12:26 +03:00
juliancoffee
622101d3b1 Update instuction for using binary 2021-05-09 13:12:26 +03:00
juliancoffee
fd387bda7c Add comments 2021-05-09 13:12:25 +03:00
juliancoffee
5f32b37768 Integrate verification from i18n_check 2021-05-09 13:12:25 +03:00
juliancoffee
f42e8aa147 Integrate changes and improving code style
- Integrate voxygen/i18n-check to voxygnen/src/i18n.rs
- Make `cargo clippy` happy
2021-05-09 13:12:25 +03:00
juliancoffee
57cddb3ee3 Extract localization test to binary
- Implement `--all` option
- Implement `--lang <code>` option
- Implement `--verify` command
2021-05-09 13:12:25 +03:00
Monty Marz
9f0ca486f7 Merge branch 'aweinstock/small-fixes' into 'master'
Distinguish NAMETAG_MERCHANT_RANGE from NAMETAG_GROUP_RANGE.

See merge request veloren/veloren!2277
2021-05-09 09:58:44 +00:00
Monty Marz
a17bb0ad73 Better inactive/active audio slider logic 2021-05-09 09:51:41 +00:00
Avi Weinstock
0f424ec95a Distinguish NAMETAG_MERCHANT_RANGE from NAMETAG_GROUP_RANGE. 2021-05-08 17:49:51 -04:00
Avi Weinstock
76da18da3c Add red-orange pulsing "Nothing!" to the second phase of an a 0-quantity trade, and improve the distance merchants are visible at. 2021-05-07 15:24:55 -04:00
Avi Weinstock
e4cda4309e Add DamageKind, and make piercing damage partially ignore damage resistence.
- Tweak bow/staff M1 stats.
2021-05-06 17:39:06 -04:00
Marcel Märtens
4cfdbdd069 use a constant for recommended_threads 2021-05-05 14:35:06 +02:00
Marcel Märtens
0142cf37f0 limit tokio threads to 1/4 of num_cpus
make sure that rayon has at least 2 threads even on 1cpu systems to increase stability
2021-05-04 21:06:11 +02:00
Marcel Märtens
6e3a74b476 rayon::join creates a global threadpool, which is only used in /world
instead just use the same threadpool for everything
helps with debugging problems with GDB
using threadpool.install() to also be used when `into_par_iter()` is called
2021-05-04 21:06:07 +02:00
Sam
5521c886c0 Removed useless clippy allow, added todo. 2021-05-04 11:27:17 -04:00
Sam
062c290e49 Made buff commands exhaustive 2021-05-04 09:54:28 -04:00
Sam
d99623b298 Buff icons 2021-05-04 08:45:14 -04:00
Sam
5c241850f1 Added sfx. Addressed comments. 2021-05-04 08:45:12 -04:00