Sam
997da21001
Particles for healing aura
2021-07-13 20:54:43 -05:00
Marcel Märtens
9b3b21f368
fix clippy warnings
2021-07-12 12:09:09 +02:00
Ben Wallis
b499cf2c58
Added egui debug UI - a 100% rust UI framework (similar to imgui) allowing for rapid development of debug interfaces to aid development. This is feature-gated behind the egui-ui
feature which is enabled by default but removed for airshipper builds.
...
Included in the initial implementation is an entity browser which lists all entities in the client ECS, an entity component viewer which shows select components belonging to the selected entity including character state information, and a simple frame time graph.
This MR also includes an extraction of the animation hot reloading code which has been reused for egui to allow for hot-reloading of the egui interface to allow rapid development of the UI with realtime feedback upon save as is the case with aninmations. This is feature-gated behind the `hot-egui` feature which is not enabled by default due to the extra startup time that it adds.
2021-07-04 09:47:18 +00:00
Snowram
aaf5f89076
Merge branch 'snowram/death-outcome' into 'master'
...
Adds an outcome to death with SFX and VFX
See merge request veloren/veloren!2519
2021-06-28 23:18:45 +00:00
Snowram
3ec5306ed0
Adds an outcome to death with SFX and VFX
2021-06-29 00:14:05 +02:00
Imbris
58f237eaf5
Ensure bind groups are ordered with the most frequently changed ones in later slots
2021-06-24 00:47:59 -04:00
João Capucho
9454c34cc2
Submit queue when maintaining and minimized
2021-06-16 20:22:33 +01:00
João Capucho
cb55676bb9
poll device to cleanup resources
2021-06-16 14:07:23 +01:00
Imbris
1483c2be74
Reset the slot 1 bind group to shadows when dropping the DebugDrawer
2021-06-16 03:24:10 -04:00
Imbris
2d7b82c2f4
Do some checks to make sure WGPU_TRACE_DIR is useable if set and exit early if it isn't to avoid the user not being aware that they are failing to collect a trace
2021-06-16 03:24:10 -04:00
Imbris
19f741b33f
Show the graphics backend in the hud debug info and include the adapter info when panicking in the wgpu error handler
2021-06-16 03:24:10 -04:00
Imbris
09a914aa84
Log format used for the swapchain
2021-06-16 03:24:10 -04:00
Imbris
3e79972061
Merge branch 'capucho/wgpu-format-fixes' into 'master'
...
Update wgpu and check for best swap chain format
See merge request veloren/veloren!2454
2021-06-16 01:24:05 +00:00
Snowram
8fde002189
Merge branch 'snowram/more-trolls' into 'master'
...
Add more trolls npcs, and roc npc with tornado attack
See merge request veloren/veloren!2384
2021-06-15 08:35:30 +00:00
Avi Weinstock
cb0566299a
Make tornado (and empty models in general) work on WGPU.
2021-06-15 09:49:13 +02:00
Snowram
97ce50e5d4
Add troll variants and roc npcs
2021-06-15 09:49:13 +02:00
Imbris
cbf0a6baf1
Fix trying to create a zero sized shadow texture when resizing window down to a small size
2021-06-15 01:53:00 -04:00
João Capucho
cc566abe5c
Update wgpu and check for best swap chain format
2021-06-09 21:15:37 +01:00
jshipsey
4deeb42155
cave adjustments
2021-06-07 11:02:34 +02:00
jshipsey
9034d0f25d
comment addressing, cave tweaks
2021-06-07 11:01:46 +02:00
Samuel Keiffer
85b8d4e7c0
Merge branch 'sam/yeti' into 'master'
...
Yeti Rework
See merge request veloren/veloren!2359
2021-06-05 23:15:20 +00: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
João Capucho
36c28af46d
Regenerate the swapchain if the frame is outdated
2021-06-04 20:37:39 +01: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
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
2b8eaae572
Update wgpu, cleanup a bit of commented shader code, improve sprite LOD selection code
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
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
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
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
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
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
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
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
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
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
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
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
Sam
5fa4358e74
Clay golem attacks done.
2021-05-10 18:53:01 -05:00
Sam
164fd0de04
Particles for frenzy buff and ground cleave.
2021-05-04 08:45:10 -04:00
Joshua Yanovski
1bdf3b13a8
Mesh sprites in the background.
...
This makes the delay afetr selecting a character before logging into the
game much shorter, in the common case. It still doesn't handle things
perfectly (it blocks creating Terrain::new if it's not finished, and it
could be faster due to working in the background), but it's still a lot
better than it was before.
To improve sprite meshing performance, we also apply the terrain
flat_get optimizations to sprites. Though I didn't initially know how
much of an impact it would have, it feels significantly faster to me,
though being able to parallelize it would be ideal.
2021-04-10 17:51:42 +02:00
Joshua Barretto
8f3233365d
Improved hit particles
2021-03-29 21:52:05 +01:00
Joshua Barretto
b0acbda236
Improved archery with feedback sfx and particles
2021-03-29 21:52:04 +01:00
Sam
0d3795112c
Added cursed flame attack to mindflayer
2021-03-27 21:05:03 -04:00
Marcel Märtens
6b23101fac
update toolchain to nightly-2021-03-22
2021-03-22 16:41:04 +01:00
Joshua Yanovski
866cc79d2e
Enable allocation of new textures on atlas allocation failure.
...
This solves the problem of not being able to set the view distance too
high, especially in pathological cases like giant trees. For
simplicity, we just freeze any atlas where allocation failed and start
allocating to a new texture and atlas, letting reference counting
destroy the old one when there are no more references to it. Because of
the spatial locality of chunk allocations, chunks allocated together
will virtually always have similar lifetimes, so the odds of this
causing significant fragmentation are very low, meaning this simple
solution should not do much worse than a much fancier one.
2021-03-20 16:21:41 +01:00
Joshua Barretto
f479231b15
Merge branch 'glowy-shiny-pretty' into 'master'
...
Glowy shiny pretty
See merge request veloren/veloren!1874
2021-03-11 17:37:33 +00:00
Joshua Barretto
6e0807f3f5
Cheaper and less broken material reflection/glow
2021-03-11 13:56:11 +00:00
Joshua Barretto
09e32cb952
Initial implementation of glow/shininess
2021-03-10 18:58:25 +00:00
Sam
c6a222340e
Particles for lifesteal beam. Changed how frontend recognized beams.
2021-03-09 17:59:39 -05:00
Marcel Märtens
4ebfbdde0f
Move Specs code to own common_ecs create, put tracy and macros into common_base
2021-03-09 00:54:01 +01:00
Marcel
e29964ead1
Merge branch 'sarrakitty/fireworks' into 'master'
...
added a white firework
See merge request veloren/veloren!1856
2021-03-07 18:37:35 +00:00
Joshua Barretto
427e0af73c
Reverted to repr_c vek
2021-03-07 14:25:02 +00:00
Joshua Barretto
100cafa91b
Directional baked lights for figures
2021-03-07 14:25:01 +00:00
Joshua Barretto
7d526da735
Experimental giant mother trees
2021-03-07 14:25:01 +00:00
Sarra
db3bc1b9bb
added a white firework
2021-03-07 03:48:50 -05:00
Sam
53b0ba286a
Ice particles for Wendigo
2021-02-27 01:42:46 -05:00
Sam
df70976ff5
Fixed particles.
2021-02-27 01:42:46 -05:00
Timo Kösters
a4513fe09d
Improve particles
2021-02-27 01:42:46 -05:00
Joshua Barretto
60c16e57b1
Added snow particles
2021-01-31 15:15:17 +00:00
Benoît du Garreau
7b4aa6d4cc
cargo fmt
2020-12-17 12:06:22 +01:00
Benoît du Garreau
d090eefb00
Move the asset module to a single file
2020-12-17 12:06:13 +01:00
Benoît du Garreau
0cf164f33a
Use assets_manager to load assets
2020-12-17 12:06:07 +01:00
Marcel Märtens
ccb01e1898
adjust fmt and clippy after toolchain upgrade
2020-12-10 14:53:01 +01:00
weldar
a2d98d31a7
Removed SSAA option to resolve issue #871 .
2020-12-01 09:43:06 -05:00