Looking for a Vulkan alternative for this; In OpenGL is there a way to get a list of all uniforms & attribs used by a shader program?
Vulkan; Get list of uniforms & attribs from SPIR-V shader
727 Views Asked by Foxie At
1
There are 1 best solutions below
Related Questions in C++
- C++ using std::vector across boundaries
- Linked list without struct
- Connecting Signal QML to C++ (Qt5)
- how to get the reference of struct soap inherited in C++ Proxy/Service class
- Why we can't assign value to pointer
- Conversion of objects in c++
- shared_ptr: "is not a type" error
- C++ template using pointer and non pointer arguments in a QVector
- C++ SFML 2.2 vectors
- Lifetime of temporary objects
- I want to be able to use 4 different variables in a select statement in c ++
- segmentation fault: 11, extracting data in vector
- How to catch delay-import dll errors (missing dll or symbol) in MinGW(-w64)?
- How can I print all the values in this linked list inside a hash table?
- Configured TTL for A record(s) backing CNAME records
Related Questions in SHADER
- Water rendering in opengl
- Draw a sphere on a billboard with world normal from a pointlist
- DirectX - Pixel Shader 3.0 doesn't work
- Should Meshes with and without Skeleton use different Shaders?
- unity custom shader not receiving Shadow
- Constant buffer is empty when passed HLSL C++
- Unity | 'gameobject.renderer.material.color' in version 5.x
- Shader programming with ShaderLab and CG in unity
- How to use a huge array in HLSL (error X4505)
- mat4 type in attribute shader
- Reading a shader from a .txt file using a structure
- Rendering a circle with a Vertex shader in DirectX
- Blur the camera at a particular point Unity2D
- Render multiple models in OpenGL with a single draw call
- Why passing parameter is OK between Vertex and Fragment shader
Related Questions in VULKAN
- Vulkan renders only one out of two meshes
- Ubuntu, g++, and Vulkan lib
- Vulkan Limitations / GPU Needed vs opengl
- Size of compressed textures in vulkan
- Greyscale texture format in vulkan
- Unexpected crashes in Vulkan geometry shader
- Wat does the "vkCreateSwapchainKHR:internal drawable creation failed." means
- Are extensions in Vulkan allowed to add new functionality?
- Dynamically uniform expressions with nested for loops in GLSL
- vkAcquireNextImageKHR: Application has already acquired the maximum number of images
- Can I install a Vulkan driver on my 3rd gen Intel Ivy Bridge integrated GPU on Ubuntu 16.04?
- Modifying a HLSL shader to work in Vulkan, do I have to separate textures/samplers?
- Descriptor Set and automatic layout transition
- Vulkan - instance creation fails when loading extensions
- Vulkan - Uniform Buffers Not Sent To Shader
Related Questions in SPIR-V
- Modifying a HLSL shader to work in Vulkan, do I have to separate textures/samplers?
- SPIR-V require locations on user in/out in Vulkan 1.0.51.1 +
- glslc - Missing entry point even with -fentry-point
- Using Vulkan + OpenXR, getting strange transparency results on quest (not present in PCVR)
- How to read a SPIR-V file?
- How to convert uint64_t to sampler2D?
- Generating OpVectorShuffle instead of OpCompositeConstruct
- Validation warning about SPIR-V Capability
- What are The SPIR-V Capability (Geometry) Requirements
- _pdep_u32 in GLSL / HLSL / SPIR-V
- How to compile OpenCL Kernels to SPIR-V using Clang
- Determine if input attachment is valid within shader
- Instanced GLSL shaders in Vulkan?
- Vulkan; Get list of uniforms & attribs from SPIR-V shader
- Generated SPIR-V with -fvk-use-scalar-layout flag using DirectxShaderCompiler causes validation layer error
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
Vulkan, as a general rule, does not have querying APIs for any information you have provided to the API. If you give something to the API, and you need to know something about that data, then you're expected to remember what it was.
SPIR-V contains all of the definitions of the various resources and interfaces used by a shader. And SPIR-V is a pretty well-specified format. Since you gave the SPIR-V to Vulkan, you therefore have ample opportunity to know what all of the "uniforms & attribs" in that shader are. So Vulkan has no shader querying API.
There are several tools for introspecting into SPIR-V binaries to extract this kind of information. But Vulkan itself isn't one of them.