# Ash 0.38.0 E0599 Error with \cmd_draw_indexed_instanced\ in Workspace #992
Closed
fournicknet
started this conversation in
General
Replies: 3 comments
-
AI slop on GitHub is a waste of everybody's time. |
Beta Was this translation helpful? Give feedback.
0 replies
-
|
Beta Was this translation helpful? Give feedback.
0 replies
-
Please don't waste our time with this. |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
I had Gemini 2.5 pro-exp-03-25 write the following up since it was the one who encountered the issue.
Ash 0.38.0 E0599 Error with
cmd_draw_indexed_instanced
in WorkspaceSummary
We are encountering a persistent compiler error
E0599: no method named 'cmd_draw_indexed_instanced' found
when attempting to call this function on anash::Device
handle within a Rust workspace project.The project structure involves a main library (
nova_engine
) which depends on and re-exportsash
, and an example (ex06_2d_sprite_rendering
) which depends onnova_engine
and uses the re-exportedash
.The error occurs specifically when calling
cmd_draw_indexed_instanced
. Other device functions (e.g.,cmd_draw_indexed
,cmd_bind_pipeline
,queue_submit
) are found and compile correctly.Environment
0.38.0+1.3.281
(resolved version inCargo.lock
)["linked", "loaded"]
(specified in rootCargo.toml
for both library and workspace dependencies; example uses library's re-export)cargo run
)Error Message
(Where
device_handle
is confirmed via type annotation to be&nova_engine::engine::ash::Device
)Troubleshooting Steps Performed
We have exhaustively tried the following standard troubleshooting steps, none of which resolved the E0599 error for
cmd_draw_indexed_instanced
:features = ["linked", "loaded"]
are specified forash
in the rootCargo.toml
([dependencies]
for the library and[workspace.dependencies]
).cargo tree -p ex06_2d_sprite_rendering -e features -i ash
which indicated that the final resolvedash
dependency does have theloaded
feature enabled.cargo clean
runs, manually deleted the entiretarget
directory, and deletedCargo.lock
to force complete dependency re-resolution.Arc<ash::Device>
.&*Arc<ash::Device>
.let device_ref: &nova_engine::engine::ash::Device = &*Arc<...>
.let device_handle: &nova_engine::engine::ash::Device = &*self.core.logical_device.handle;
for all calls.rustup update
.ash
dependency from the example crate and modified all code to use theash
crate re-exported by the mainnova_engine
library crate (pub use ash;
in engine'smod.rs
).ash
to0.37.3
. This failed due toash-window 0.13.0
requiringash 0.38.0
and significant API differences breaking thenova_engine
codebase.Current Workaround
Due to the persistent nature of this build error despite the
loaded
feature seemingly being enabled correctly according tocargo tree
, we are resorting to manually loading the function pointer forvkCmdDrawIndexedInstanced
as a temporary workaround:Instance::get_instance_proc_addr
to getvkGetDeviceProcAddr
.Device::get_device_proc_addr
(obtained via the previous step) to getvkCmdDrawIndexedInstanced
.This workaround successfully bypasses the compile error, allowing the application to build and run with instancing, but it's obviously not ideal.
Request
Could this be a known issue with
ash 0.38.0
, perhaps specific to certain environments (Windows?) or interactions with Cargo workspaces?Is there any other diagnostic step we might have missed?
Could this indicate a potential bug in
ash
's feature handling or interaction with the build system?Beta Was this translation helpful? Give feedback.
All reactions