dust-engine / dust

A research project trying to push the boundaries of voxel geometry and interactivity. Experimental real-time global illumination renderer powered by Rust, Vulkan and Bevy.

Home Page:https://dust.rs

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Issues getting project running

trsh opened this issue · comments

commented

compile.sh command for missing shader glslc photon.rint

Error:

cargo run --release --example castle
error: failed to load manifest for workspace member `C:\Projects\Rust\dust\crates\render`

Caused by:
  failed to load manifest for dependency `rhyolite`

Caused by:
  failed to read `C:\Projects\Rust\rhyolite\core\Cargo.toml`

Caused by:
  The system cannot find the path specified. (os error 3)

You're going to have to clone https://github.com/dust-engine/rhyolite in that location

rhyolite is a dependency of dust-render. I'm considering to combine the two projects into the same repo but rhyolite might also be useful on its own.

commented

And what about photon.rint ?

commented

Also why its a .sh script and bot .bat, since the windows First approach? Inst sh script for Unix?

Please pull the dust repo again - I've moved most rhyolite files into this repo. Will archive https://github.com/dust-engine/rhyolite

Regarding shader compilers, I've updated the script so please try again. I use git bash instead of PowerShell, but I've also added the bat file if you prefer the windows batch.

@aka-deVOID is working on adding linux support.

commented
error[E0554]: `#![feature]` may not be used on the stable release channel
  --> crates\vdb\src\lib.rs:14:12
   |
14 | #![feature(portable_simd)]
   |            ^^^^^^^^^^^^^

Lots of these now. If we need nightly why don't add

[toolchain]
channel = "nightly"

?

commented

cargo +nightly run --release --example castle

error[E0635]: unknown feature `drain_filter`
 --> crates\rhyolite_macro\src\lib.rs:3:12
  |
3 | #![feature(drain_filter)]
  |            ^^^^^^^^^^^^

error[E0599]: no method named `drain_filter` found for struct `Vec<Attribute>` in the current scope
  --> crates\rhyolite_macro\src\push_constant.rs:36:39
   |
36 |         let Some(stage) = field.attrs.drain_filter(|a| a.meta.path().is_ident("stage")).next() else {
   |                                       ^^^^^^^^^^^^ method not found in `Vec<Attribute>`

warning: unused import: `Write`
 --> crates\rhyolite_macro\src\glsl.rs:2:18
  |
2 |     fmt::{Debug, Write},
  |                  ^^^^^
  |
  = note: `#[warn(unused_imports)]` on by default
commented

You probably need to update your nightly. Looks like that method has actually recently been removed. You need an older nightly to get it working.

commented

You probably need to update your nightly. Looks like that method has actually recently been removed. You need an older nightly to get it working.

More like an issue for Author to fix :)

@trsh Yep they've renamed the function just a few days ago.

Fixed. Try again and let me know if you have any additional problems.

commented

So we talked in Discord and left here: https://pastebin.com/TjZ8Lv59

And here without the assert

Scheduled 1310 BLAS builds
thread 'Compute Task Pool (7)' panicked at 'source slice length (64) does not match destination slice length (83840)', C:\Projects\Rust\dust\crates\rhyolite\src\resources\managed_buffer_vec.rs:498:18
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
Encountered a panic in system `<castle::RenderSystem as bevy_app::plugin::Plugin>::build::{{closure}}`!
Encountered a panic in system `bevy_app::main_schedule::Main::run_main`!
2023-06-20T12:14:29.324079Z  INFO rhyolite::surface: drop surface surface=0x28fbfc25630

Good luck!

@trsh Thanks for testing it out. I've fixed the two bugs that you reported. Please let me know if there are any additional problems!

commented

@trsh Thanks for testing it out. I've fixed the two bugs that you reported. Please let me know if there are any additional problems!

No errors, but I got black screen.

commented

Maybe because this?

C:\Projects\Rust\dust>git lfs fetch --all
fetch: 23 object(s) found, done.
fetch: Fetching all references...
[e064832e37f56bd7effcfba73a25428750887b79c9da09259397899d76062217] Object does not exist on the server: [404] Object does not exist on the server
[a146c203934317ee9b3081be5ffb2d3ecc8e6b5cbf3995dfc76bd1966e2854b0] Object does not exist on the server: [404] Object does not exist on the server
[7cad4b1141cd6b726ca4f4eb640134074c8cbc0716bc2cc28f748821513f00d5] Object does not exist on the server: [404] Object does not exist on the server
[1ca74466d4981fba1eaac3303eedc75827c6ed73de7cf819eb32c73d5a024f46] Object does not exist on the server: [404] Object does not exist on the server
[6518cb6b8414c07980bcf4b889af5a77e977db2e9a60d6cc7e6436772f7d9f4d] Object does not exist on the server: [404] Object does not exist on the server
[e7c420e83fc7c58c5750125265fbf9f553edba041a04b71e83d08c64031284d5] Object does not exist on the server: [404] Object does not exist on the server
[2d0e3b5c36099ab30a8365bc1e743d85f2cc50cb7ea40e439e2663416735fbed] Object does not exist on the server: [404] Object does not exist on the server
[bfd3c4b911c2ccfc87e6e568238c3bc705791b5990bf44291bed77fd9b9032e4] Object does not exist on the server: [404] Object does not exist on the server
[85dd5972be3961e8b312e5cd7b57383bcf290aeca6a2502ed7a3a2c4d5db71d6] Object does not exist on the server: [404] Object does not exist on the server
error: failed to fetch some objects from 'https://github.com/dust-engine/dust.git/info/lfs'
commented

Some run logs

    Finished release [optimized] target(s) in 0.60s
     Running `target\release\examples\castle.exe`
2023-06-21T18:31:38.636592Z  INFO bevy_winit::system: Creating new window "Dust Renderer: Castle" (0v0)
2023-06-21T18:31:38.705680Z  INFO rhyolite_bevy: Using DISCRETE_GPU "NVIDIA GeForce RTX 3060" with memory model Bar
2023-06-21T18:31:38.705997Z  INFO rhyolite::physical_device: Creating device with DeviceCreateInfo { s_type: DEVICE_CREATE_INFO, p_next: 0x241c68d7880, flags: , queue_create_info_count: 3, p_queue_create_infos: 0x241c4002f30, enabled_layer_count: 0, pp_enabled_layer_names: 0x7ff69a5b4298, enabled_extension_count: 6, pp_enabled_extension_names: 0x241c68d5230, p_enabled_features: 0x0 }
2023-06-21T18:31:38.708148Z  INFO rhyolite::debug: "Loader Message" id=0 detail="Inserted device layer \"VK_LAYER_OBS_HOOK\" (C:\\ProgramData\\obs-studio-hook\\.\\graphics-hook64.dll)"
2023-06-21T18:31:38.708326Z  INFO rhyolite::debug: "Loader Message" id=0 detail="Inserted device layer \"VK_LAYER_NV_optimus\" (C:\\Windows\\System32\\DriverStore\\FileRepository\\nv_dispi.inf_amd64_e34a87a86b660c23\\.\\nvoglv64.dll)"
2023-06-21T18:31:38.708998Z  INFO rhyolite::debug: "Loader Message" id=0 detail="       Using \"NVIDIA GeForce RTX 3060\" with driver: \"C:\\Windows\\System32\\DriverStore\\FileRepository\\nv_dispi.inf_amd64_e34a87a86b660c23\\.\\nvoglv64.dll\"\n"
2023-06-21T18:31:39.225913Z  INFO bevy_diagnostic::system_information_diagnostics_plugin::internal: SystemInfo { os: "Windows 11 Pro", kernel: "22000", cpu: "12th Gen Intel(R) Core(TM) i7-12700K", core_count: "12", memory: "31.7 GiB" }
2023-06-21T18:31:39.261095Z  INFO rhyolite::swapchain: Creating swapchain format=R16G16B16A16_SFLOAT color_space=EXTENDED_SRGB_LINEAR_EXT usage=TRANSFER_DST | STORAGE
2023-06-21T18:31:41.556336Z  INFO bevy diagnostic: frame_count                     : 1.000000
2023-06-21T18:31:41.557779Z  INFO bevy diagnostic: fps                             :    0.537727   (avg 0.537727)
2023-06-21T18:31:41.566859Z  INFO bevy diagnostic: frame_time                      : 1859.678500ms (avg 1859.678500ms)
2023-06-21T18:31:41.594298Z  INFO bevy diagnostic: frame_count                     : 2.000000
2023-06-21T18:31:41.595204Z  INFO bevy diagnostic: fps                             :    2.170449   (avg 1.354088)
2023-06-21T18:31:41.610894Z  INFO bevy diagnostic: frame_time                      :  460.734100ms (avg 1160.206300ms)

@trsh More likely than not the project is already running. Scroll down a bit with your scroll wheel on the mouse and that'll bring up the sun. Or simply git pull again - I've set the time to be noon by default now.

commented

@trsh More likely than not the project is already running. Scroll down a bit with your scroll wheel on the mouse and that'll bring up the sun. Or simply git pull again - I've set the time to be noon by default now.

Seems like not there yet. This with latest pull.

Finished release [optimized] target(s) in 4.61s
     Running `target\release\examples\castle.exe`
2023-06-22T17:30:01.008049Z  INFO bevy_winit::system: Creating new window "Dust Renderer: Castle" (0v0)
2023-06-22T17:30:01.065264Z  INFO rhyolite_bevy: Using DISCRETE_GPU "NVIDIA GeForce RTX 3060" with memory model Bar
2023-06-22T17:30:01.065465Z  INFO rhyolite::physical_device: Creating device with DeviceCreateInfo { s_type: DEVICE_CREATE_INFO, p_next: 0x2d1c95ed7a0, flags: , queue_create_info_count: 3, p_queue_create_infos: 0x2d1c8e1c1b0, enabled_layer_count: 0, pp_enabled_layer_names: 0x7ff61fe133f8, enabled_extension_count: 6, pp_enabled_extension_names: 0x2d1c95ec620, p_enabled_features: 0x0 }
2023-06-22T17:30:01.066854Z  INFO rhyolite::debug: "Loader Message" id=0 detail="Inserted device layer \"VK_LAYER_OBS_HOOK\" (C:\\ProgramData\\obs-studio-hook\\.\\graphics-hook64.dll)"
2023-06-22T17:30:01.066961Z  INFO rhyolite::debug: "Loader Message" id=0 detail="Inserted device layer \"VK_LAYER_NV_optimus\" (C:\\Windows\\System32\\DriverStore\\FileRepository\\nv_dispi.inf_amd64_e34a87a86b660c23\\.\\nvoglv64.dll)"
2023-06-22T17:30:01.067297Z  INFO rhyolite::debug: "Loader Message" id=0 detail="       Using \"NVIDIA GeForce RTX 3060\" with driver: \"C:\\Windows\\System32\\DriverStore\\FileRepository\\nv_dispi.inf_amd64_e34a87a86b660c23\\.\\nvoglv64.dll\"\n"
2023-06-22T17:30:01.681377Z  INFO bevy_diagnostic::system_information_diagnostics_plugin::internal: SystemInfo { os: "Windows 11 Pro", kernel: "22000", cpu: "12th Gen Intel(R) Core(TM) i7-12700K", core_count: "12", memory: "31.7 GiB" }
2023-06-22T17:30:01.687418Z  INFO rhyolite::swapchain: Creating swapchain format=B8G8R8A8_UNORM color_space=SRGB_NONLINEAR usage=TRANSFER_DST | STORAGE
Scheduled 1 BLAS builds
2023-06-22T17:30:02.743746Z  INFO bevy diagnostic: frame_count                     : 18.000000
2023-06-22T17:30:02.765239Z  INFO bevy diagnostic: fps                             :   16.133284   (avg 36.676399)
2023-06-22T17:30:02.771059Z  INFO bevy diagnostic: frame_time                      :   74.492217ms (avg 57.873878ms)
thread 'Compute Task Pool (8)' panicked at 'called `Result::unwrap()` on an `Err` value: ERROR_DEVICE_LOST', C:\Projects\Rust\dust\crates\rhyolite\src\queue\exec.rs:294:26
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
Encountered a panic in system `<castle::RenderSystem as bevy_app::plugin::Plugin>::build::{{closure}}`!
Encountered a panic in system `bevy_app::main_schedule::Main::run_main`!
2023-06-22T17:30:03.422593Z  INFO rhyolite::surface: drop surface surface=0x2d1e9f63bd0
error: process didn't exit successfully: `target\release\examples\castle.exe` (exit code: 101)
commented

After latest pull it works! Tnx! Needs a denoiser :)

Thanks for testing it out! It was most likely some synchronization issue that I have fixed.