-
-
Notifications
You must be signed in to change notification settings - Fork 21.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
texture_create: Format 'R8_Uint' does not support usage as storage image. #67430
Comments
After a little investigation, this appears to be related to the VRS texture as it is the only texture using the R8uint type. @BastiaanOlij Looks like we need to make a shader version that excludes VRS entirely from the GI shader instead of using a specialization constant and then when VRS is not supported, we can disable creating the default VRS texture entirely. |
@clayjohn the scene shader doesn't specifically do anything here, it's all handled by how the VRS texture is bound to the frame buffer. The only shader I think where this is specifically included is the vrs shader itself but in that it's no more then Our problem may be stemming from the code creating our default VRS texture (in |
(the only other place where we use |
Just re-tested on beta4 and report new logs --------- beginning of system Here is full logs |
Re-tested on Beta5 --------- beginning of main Here is full logs |
Can confirm I've tested my code on 4.0 beta 6, same error message as noted previously. |
Re-tested on Beta7 --------- beginning of system full logs |
Hello, I think my problem is being addressed here. If not, please correct me. In my case I get the error "E 0:00:00:0381 texture_create: Format 'R8_Uint' does not support usage as storage image. <C++ Error> Method/function failed. Returning: RID() <C++ Source> drivers/vulkan /rendering_device_vulkan.cpp:1829 @ texture_create()", when I try to use one_click_deploy. It happens to me in Godot 4.0 beta7 in any of the two project creation options (forward and mobile). My mobile android is a Redmi Note 4. the android version is 7.0 NRD90M (I don't know if the android version could be the problem, but it is no longer updated). The project stops on the PC and on the mobile screen only a gray screen of the default background color of the 2d world appears. |
Just checked #70122, issue still exists, and also reports: Format 'A2B10G10R10_Unorm_Pack32' does not support usage as storage image. this time crash app not dead loop. please re-open this issue ... full logs |
@norrath-hero-cn Can you post the logs you get when running Godot with the @m4gr3d Do you know how to enable verbose output on an Android APK? |
There's a project setting for verbose stdout. |
the logs here |
Thank you! Looking through the logs I can see the VRS is not supported on this device and the error messages are different than the ones in the OP, but are related:
and
|
Thanks for dive deeper on this issue! It's an relative old device, but it's powerful enough to run Pascal's Wager smoothly, so I always use it as primary test device, and I also set it as a goal to reach the performance for mid to low end device |
Looks like none of these formats are well supported as storage images. The R8_UNORM issue is easy to fix, we just won't pass the SAMPLED image flag when VRS is not supported. But the A2B10G10R10_Unorm_Pack32 issue will be a bit more challenging as it the format used by the mobile render buffers. Will need more investigation |
re-tested to check #71939 still crashes, this time not a single 'R8_Uint' appears in the logs, but there is still 'A2B10G10R10_Unorm_Pack32'. Feeling one step closer to removing the barrier to Android altogether 01-25 22:44:20.381 32270 32302 E godot : USER ERROR: Format 'A2B10G10R10_Unorm_Pack32' does not support usage as storage image. full logs with "verbose stdout" enabled: |
@norrath-hero-cn What features are you using in the project that reproduces this? I fixed all the cases of using And to confirm, you are using the mobile renderer right? |
Yes, mobile renderer, just checked #72068 Still crashing, but this time not a single R8_Uint' or 'A2B10G10R10_Unorm_Pack32' presents, I think the storage image problem is handled, remaining problem is some detail processing. Should I open a new issue to track the crashes? @clayjohn full logs with "verbose stdout" enabled: |
Yes please. The error message in this issue was not the source of the crash, it was just an indicator that we were utilizing resource types that aren't supported by your GPU |
OK, I will try to build a debug android-template then re-test it to see if we can get symbols for the stacktrace in crash log |
Godot version
Godot Engine v4.0.beta3.official.01ae26d31
System information
VIVO Z3, Android 9, Snapdragon 710AIE, Vulkan API 1.1.0 - Using Vulkan Device #0: Qualcomm - Adreno (TM) 616
Issue description
Just re-tested #67146 on beta3 this time reveal a new issue, still black screen
Steps to reproduce
please use the reproduction project
Minimal reproduction project
demo.zip
The text was updated successfully, but these errors were encountered: