Commit Graph

3548 Commits

Author SHA1 Message Date
Sam
81f7e690fd Snowball attack. 2021-06-04 18:17:15 -05:00
Sam
a82984b925 Added base ability set 2021-06-04 18:17:14 -05:00
João Capucho
b647cd35f1
Don't draw when window size is minimized 2021-06-04 23:37:33 +01:00
Ben Wallis
059dfd2602 Merge branch 'hqurve/fix-lootscrller' into 'master'
Fixed loot scroller collisions and cleaned up previous changes

See merge request veloren/veloren!2358
2021-06-04 20:00:18 +00:00
João Capucho
36c28af46d
Regenerate the swapchain if the frame is outdated 2021-06-04 20:37:39 +01:00
Sam
f066f844b6 Fmt and clippy from toolchain rebase. 2021-06-03 21:39:18 -05:00
jshipsey
ca43a0058a some animation 2021-06-03 21:39:17 -05:00
Sam
35876411cd Fixed tests 2021-06-03 21:39:16 -05:00
Sam
5bf99eac11 Added totem ability, totem ai, totem ability set, particles for totem abilities, and totem voxel model. 2021-06-03 21:39:15 -05:00
Sam
c81e1534f7 First 3 abilities for tidal warrior functional. Added bubble particles. 2021-06-03 21:39:13 -05:00
Avi Weinstock
05c699878f Add Basilisk and Cyclops models by Gemu, and AirBalloon model by SarraKitty. 2021-06-03 19:24:34 -04:00
Yusuf Bera Ertan
05cbaff682
build(nix): add new dependencies to nix build and dev env for wgpu 2021-06-04 00:08:02 +03:00
Imbris
6ffdad173d Switch to using block_on directly from futures-executor instead of the umbrella crate 2021-06-03 14:28:28 -04:00
Imbris
be5ee8e205 Properly calculate the necessary length of the index buffers for checks that ensure they are large enough 2021-06-03 00:45:11 -04:00
Imbris
7fd952e139 Remove stabilized or_patterns feature 2021-06-03 00:10:07 -04:00
Imbris
538677263b Enable since naga currently has issues translating our SPIRV -> metal 2021-06-03 00:10:07 -04:00
Imbris
2b8eaae572 Update wgpu, cleanup a bit of commented shader code, improve sprite LOD selection code 2021-06-03 00:10:06 -04:00
Imbris
8db11cce37 Use expect to document potential panic when starting a new frame recording, fix clippy warning 2021-06-03 00:10:06 -04:00
Imbris
01aa6af1fd Address various TODOs introduced in wgpu transition 2021-06-03 00:10:06 -04:00
Imbris
8403e4c483 address/remove TODOs, fix comment typos, enable wgpu/trace feature by default (So no recompile is needed to collect an API trace) 2021-06-03 00:10:06 -04:00
Joshua Yanovski
38d2d46165 Fix shadows for wgpu.
In the process, we also fix our n_e / f_e calculation to actually
compute plane intersections properly.
2021-06-03 00:10:06 -04:00
Avi Weinstock
a1326d0734 Address MR 2253 review comments. 2021-06-03 00:10:06 -04:00
Avi Weinstock
cf6717ac90 Show hitbox cylinders based on actual ECS data, and add a settings toggle in voxygen for it. 2021-06-03 00:10:06 -04:00
Avi Weinstock
7b04599a3b Implement a Debug pipeline for hitboxes and pathfinding lines.
- Implements mesh generation for cylinders and lines.
    - Implements an Id-allocator so that clients can mutate positions efficiently.
    - Is split into pipeline and scene modules.
    - Contains simple shaders that just pass through a position and color.
2021-06-03 00:10:06 -04:00
Imbris
99998b9870 Use profling to get spans from wgpu, update wpgu & its deps for various
fixes
2021-06-03 00:10:06 -04:00
Imbris
ffdf7012bc Update wgpu to fix dx11 issue 2021-06-03 00:10:06 -04:00
Imbris
2da58029b9 Make models require a non-zero amount of vertices 2021-06-03 00:10:06 -04:00
Imbris
5749983868 Make shadow vert shaders always contain their content but ensure they are never used when shadow maps are disabled, remove uneeded shadow frag shader 2021-06-03 00:10:06 -04:00
Imbris
9ec4fd5b4b Remove commented out sprite code, including the code for getting verts for sprites with a texture rather than a storage buffer 2021-06-03 00:10:06 -04:00
Imbris
81939b4e4e Remove uneeded commented out gfx rendering code 2021-06-03 00:10:06 -04:00
Imbris
1647c9d607 Update wgpu to latest version and improve error formating 2021-06-03 00:10:06 -04:00
Imbris
d5f4a4443a Fix all clippy warnings 2021-06-03 00:10:05 -04:00
Imbris
9be424de53 Remove unused waves texture 2021-06-03 00:10:05 -04:00
Imbris
93ad05d237 Fix most of the cargo check warnings 2021-06-03 00:10:05 -04:00
Imbris
972a6f3605 Replace default wgpu error handler with one that includes the error in the panic message 2021-06-03 00:10:05 -04:00
Imbris
7f9ba17dee Remove unused shadow bind group from the cloud pipeline 2021-06-03 00:10:05 -04:00
Imbris
c381059e28 Require WGPU_TRACE_DIR to be set manually instead of having a default value 2021-06-03 00:10:05 -04:00
Imbris
30f02af6a4 Wait for ingame pipelines to build before entering char select, show pipeline rebuilding status text in the graphics settings tab 2021-06-03 00:10:04 -04:00
Imbris
9c3e3ea638 wgpu rebase fix: crossbeam -> crossbeam_channel 2021-06-03 00:09:55 -04:00
Imbris
f2fed72785 Fix bug in sprite pipeline creation & misc other pipeline creation fixes 2021-06-02 23:59:51 -04:00
Imbris
1830a591f6 Make Drawer work with background pipeline creation 2021-06-02 23:59:51 -04:00
Imbris
c2da81cf18 Move pipeline creation into the background, still needs Drawer modications and UI to display status 2021-06-02 23:59:51 -04:00
Imbris
5b4c60c4ec Fix wrong intermediate target texture format 2021-06-02 23:59:51 -04:00
Imbris
77689d1420 Comment out lod depth tweaks not designed for reverse depth, convert waves image to rgba before constructing a texture, misc fix after rebase 2021-06-02 23:59:50 -04:00
Imbris
72cb3d0124 Clear textures that will be partially written to work around Dx12 bug on AMD 2021-06-02 23:59:50 -04:00
Imbris
76c7161364 Update wgpu to get gfx-hal update that fixes the dx12 depth cube view construction issue 2021-06-02 23:59:50 -04:00
Imbris
aa2c7721fe Add env vars to set wgpu backend and wgpu api trace save dir (api trace still needs feature to be set ofc) 2021-06-02 23:59:50 -04:00
Imbris
ceaa20c668 Update wgpu 2021-06-02 23:59:50 -04:00
João Capucho
aaa397a52a Fix panic on zero sized scissor 2021-06-02 23:59:50 -04:00
João Capucho
04eff56523 Fix resizing using the wrong value 2021-06-02 23:59:50 -04:00
Imbris
390048263a Allow setting env var to only use the vulkan backend, deactivate profiling if the feature is not available 2021-06-02 23:59:50 -04:00
Imbris
577caa3047 Implement screenshots 2021-06-02 23:59:50 -04:00
Imbris
7723ce265e Update wgpu-profiler, smol rebase fix 2021-06-02 23:59:50 -04:00
Imbris
0e0c8fbfc8 wgpu branch rebase fixes 2021-06-02 23:59:50 -04:00
Imbris
89cb00907a Display gpu timing info in the HUD when enabled 2021-06-02 23:59:50 -04:00
Imbris
64398f6c0a Try out using storage buffer for sprite vertices 2021-06-02 23:59:50 -04:00
Imbris
b9931588e4 Fix bugs with sprite rendering 2021-06-02 23:59:50 -04:00
Imbris
a90373604e Fix sprite vertex lookup, normalize sprite
normals in vert shader
2021-06-02 23:59:50 -04:00
Imbris
8d63446300 Almost implement instance merging for sprites (validation error), rebase
fix
2021-06-02 23:59:50 -04:00
Imbris
0f1c4080c4 Start sprite refactor 2021-06-02 23:59:49 -04:00
João Capucho
d96f5a07e2 Fix winit returning wrong window size
It seems like waiting for wgpu to create a instance is enough to make
winit return the correct window size
2021-06-02 23:59:49 -04:00
João Capucho
e04970addd Fix scissor panic
Removes the Scale::physical_resolution method as it could become
desynced from the renderer resolution causing the panic
2021-06-02 23:59:49 -04:00
João Capucho
f5dc871c59 Update to the most recent wgpu 2021-06-02 23:59:49 -04:00
Imbris
a8851b6561 Switch to index rendering for most quad-like things 2021-06-02 23:59:49 -04:00
Imbris
e204a58be2 Small fixes to gpu profiling 2021-06-02 23:59:49 -04:00
Imbris
22d67d4cc1 Update to the latest wgpu git 2021-06-02 23:59:49 -04:00
Imbris
7a67ce87e7 Implement toggleable gpu profiling that saves the timings from a recent frame with the screenshot key, rebase fixes 2021-06-02 23:59:49 -04:00
Imbris
8c21023500 WIP gpu timer thing (not for squashing!) 2021-06-02 23:59:49 -04:00
Imbris
0a60fb2d72 Update wgpu to fix segfault 2021-06-02 23:59:49 -04:00
Imbris
f01d59c1df Fix char select shadows by clearing shadow textures 2021-06-02 23:59:49 -04:00
Imbris
e1af485e5f Add setting for the PresentMode 2021-06-02 23:59:49 -04:00
Imbris
2f69c41b00 fix nametag depth culling as well as a tweak to maybe make the main menu not flicker on intel iGPU 2021-06-02 23:59:49 -04:00
Imbris
261fd24dfd Fix lod alt texture filtering 2021-06-02 23:59:49 -04:00
Imbris
6f6167cd90 Resolve validation errors with trying to use unsupported filtering modes 2021-06-02 23:59:49 -04:00
Joshua Barretto
ae6c5a5c54 Corrected shadow cull mode 2021-06-02 23:59:49 -04:00
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