Commit Graph

172 Commits

Author SHA1 Message Date
5f8957d8ef Globally allow the clippy lints {new_without_default, many_single_char_names, identity_op, type_complexity, too_many_arguments}. 2022-01-30 20:16:20 +01:00
c320604a36 Support multiple texture formats for screenshots 2022-01-25 00:36:08 -05:00
aca088388b Update assets_manager to 0.7 2021-12-12 22:11:47 +01:00
e36eef99c8 apply some clippy fixes that comes with the new toolchain version 2021-09-24 23:18:18 +02:00
34eb58cded Fix dir is empty check when setting WGPU_TRACE_DIR 2021-09-24 15:07:12 +01:00
5500435d2f Revert "Replace shaderc with naga"
This reverts commit 446d93dda0.
2021-09-04 11:59:18 -07:00
446d93dda0 Replace shaderc with naga 2021-08-31 22:53:10 +01:00
a5ec81844f Add WGPU adapter selection using WGPU_ADAPTER 2021-08-13 12:39:44 +00:00
bc821a46cd code cleanup 2021-08-11 09:42:29 +02:00
889a8d11f5 zest prefers this over await 2021-08-11 01:23:48 +02:00
32e58c4b17 remove futures_executor from renderer and rather pass tokio runtime to it properly. therefore the runtime is now created with Voxygen rather than with the Connect attempt 2021-08-11 00:38:03 +02:00
a1026c36f5 Make bloom intensity configurable, make whether less blurred layers are added in toggleable, hold onto copy of pipeline modes instead of returning it from pipeline creation 2021-08-01 18:50:39 -04:00
147e4f00f6 Enhance bloom::NUM_SIZES docs, add TODO, remove dbgs 2021-08-01 18:50:38 -04:00
6cabd74871 Make bloom optional with a config option that is not exposed in the UI (to give artists time to refine bloom before exposing the option) 2021-08-01 18:50:38 -04:00
29bfee26c0 Add bloom passes in character select screen, use proper source image for bloom after clouds are applied, add blurred and less blurred stages of bloom together (experimental could remove), add filtering downsample pass that is not yet used 2021-08-01 18:50:37 -04:00
2d83ef1c0e Initial bloom impl 2021-08-01 18:50:37 -04:00
9b3b21f368 fix clippy warnings 2021-07-12 12:09:09 +02:00
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
9454c34cc2 Submit queue when maintaining and minimized 2021-06-16 20:22:33 +01:00
cb55676bb9 poll device to cleanup resources 2021-06-16 14:07:23 +01:00
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
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
09a914aa84 Log format used for the swapchain 2021-06-16 03:24:10 -04:00
cc566abe5c Update wgpu and check for best swap chain format 2021-06-09 21:15:37 +01:00
b647cd35f1 Don't draw when window size is minimized 2021-06-04 23:37:33 +01:00
36c28af46d Regenerate the swapchain if the frame is outdated 2021-06-04 20:37:39 +01:00
6ffdad173d Switch to using block_on directly from futures-executor instead of the umbrella crate 2021-06-03 14:28:28 -04:00
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
01aa6af1fd Address various TODOs introduced in wgpu transition 2021-06-03 00:10:06 -04:00
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
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
2da58029b9 Make models require a non-zero amount of vertices 2021-06-03 00:10:06 -04:00
81939b4e4e Remove uneeded commented out gfx rendering code 2021-06-03 00:10:06 -04:00
1647c9d607 Update wgpu to latest version and improve error formating 2021-06-03 00:10:06 -04:00
d5f4a4443a Fix all clippy warnings 2021-06-03 00:10:05 -04:00
9be424de53 Remove unused waves texture 2021-06-03 00:10:05 -04:00
93ad05d237 Fix most of the cargo check warnings 2021-06-03 00:10:05 -04:00
972a6f3605 Replace default wgpu error handler with one that includes the error in the panic message 2021-06-03 00:10:05 -04:00
c381059e28 Require WGPU_TRACE_DIR to be set manually instead of having a default value 2021-06-03 00:10:05 -04:00
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
c2da81cf18 Move pipeline creation into the background, still needs Drawer modications and UI to display status 2021-06-02 23:59:51 -04:00
5b4c60c4ec Fix wrong intermediate target texture format 2021-06-02 23:59:51 -04:00
72cb3d0124 Clear textures that will be partially written to work around Dx12 bug on AMD 2021-06-02 23:59:50 -04:00
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
ceaa20c668 Update wgpu 2021-06-02 23:59:50 -04:00
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
577caa3047 Implement screenshots 2021-06-02 23:59:50 -04:00
89cb00907a Display gpu timing info in the HUD when enabled 2021-06-02 23:59:50 -04:00
64398f6c0a Try out using storage buffer for sprite vertices 2021-06-02 23:59:50 -04:00
8d63446300 Almost implement instance merging for sprites (validation error), rebase
fix
2021-06-02 23:59:50 -04:00