StarArawn / bevy_ecs_tilemap

A tilemap rendering crate for bevy which is more ECS friendly.
MIT License
944 stars 198 forks source link

Does not render anything on my machine #531

Open blechdavier opened 6 months ago

blechdavier commented 6 months ago

Description: Nothing is rendered on my Windows machine when I run any example in the bevy_ecs_tilemap repo. image A screenshot of the basic example. This is the same for all other examples I tried.

Logs:

cargo run --example basic
    Blocking waiting for file lock on package cache
    Finished dev [unoptimized + debuginfo] target(s) in 0.31s
     Running `target\debug\examples\basic.exe`
2024-05-06T17:54:11.516070Z  INFO bevy_winit::system: Creating new window "Basic Example - Press Space to change Texture and H to show/hide tilemap." (0v1)
2024-05-06T17:54:11.658201Z  INFO bevy_render::renderer: AdapterInfo { name: "Intel(R) UHD Graphics 770", vendor: 32902, device: 18048, device_type: IntegratedGpu, driver: "Intel Corporation", driver_info: "Intel driver", backend: Vulkan }
2024-05-06T17:54:11.837229Z  INFO bevy_diagnostic::system_information_diagnostics_plugin::internal: SystemInfo { os: "Windows 10 Pro", kernel: "19045", cpu: "12th Gen Intel(R) Core(TM) i5-12600K", core_count: "10", memory: "15.7 GiB" }

Cloning the bevy repo and running the sprite example works. image

Info: Windows 10 22H2 Build 19045.4291 Graphics Driver 31.0.101.5186

blechdavier commented 6 months ago

I'm new to issues so this was probably very poorly written, lmk how I can make it better

jhg commented 5 months ago

Maybe it's same than #521

brianjosephwalters commented 4 months ago

I had a similar issue. To diagnose my issue, I configured the LogPlugin on DefaultPlugins to display warn-level logs for wgpu_core and wgp_hal

.set(LogPlugin {
    filter: "warn,wgpu_core=warn,wgpu_hal=warn".into(),
    ..default()
})

This gave me these warnings:

WARN wgpu_hal::vulkan::instance: InstanceFlags::VALIDATION requested, but unable to find layer: VK_LAYER_KHRONOS_validation   
WARN wgpu_hal::vulkan::instance: GENERAL [Loader Message (0x0)]
        windows_read_data_files_in_registry: Registry lookup failed to get layer manifest files.
WARN wgpu_hal::vulkan::instance:   objects: (type: INSTANCE, hndl: 0x1de421cdd00, name: ?)
WARN wgpu_hal::dx12::shader_compilation::dxc: Failed to load dxil.dll. Defaulting to FXC instead: Failed to load library "dxil.dll": LoadLibraryExW { source: Os { code: 126, kind: Uncategorized, message: "The specified module could not be found." } }

I'm really not sure what all of this means, but it pointed me in the direction of trying a different backend. When I set WGPU_BACKEND=dx12, it seems to have fixed the issue.