CLI tool to generate C++ / SPIR-V enumerations and tables for SpvGenTwo

CLI tool to generate C++ / SPIR-V enumerations and tables for spirv

rustspvgen

CLI tool to generate C++ / SPIR-V enumerations and tables for SpvGenTwo

Consumes SPIR-V machine-readable JSON grammars:

  • spirv.core.grammar.json
  • extinst.opencl.std.100.grammar.json
  • extinst.glsl.std.450.grammar.json

I was to lazy to write the generated text to the file direclty, so the tool just prints it to stdout and you have to pipe it into a file.

  • --defs generates a header like spirv.hpp11 but with some extras
  • --header generates Grammar.h
  • --cpp generates Grammar.cpp (the main lookup table for SpvGenTwo)

Example usage:

rustspvgen.exe spirv.core.grammar.json --defs > C:\Users\Fabian\Projects\Proto\SpvGenTwo\lib\include\spvgentwo\Spv.h
rustspvgen.exe spirv.core.grammar.json --header > C:\Users\Fabian\Projects\Proto\SpvGenTwo\lib\include\spvgentwo\Grammar.h
rustspvgen.exe spirv.core.grammar.json extinst.glsl.std.450.grammar.json extinst.opencl.std.100.grammar.json --cpp > C:\Users\Fabian\Projects\Proto\SpvGenTwo\lib\source\Grammar.cpp
rustspvgen.exe extinst.glsl.std.450.grammar.json --defs > C:\Users\Fabian\Projects\Proto\SpvGenTwo\lib\include\spvgentwo\Glsl.h
rustspvgen.exe extinst.opencl.std.100.grammar.json --defs > C:\Users\Fabian\Projects\Proto\SpvGenTwo\lib\include\spvgentwo\OpenCl.h

Generated files can be found here: https://github.com/rAzoR8/SpvGenTwo/blob/feature/grammar/lib/include/spvgentwo/Spv.h https://github.com/rAzoR8/SpvGenTwo/blob/feature/grammar/lib/include/spvgentwo/Glsl.h https://github.com/rAzoR8/SpvGenTwo/blob/feature/grammar/lib/include/spvgentwo/OpenCl.h

Information - Updated Sep 13, 2021

Stars: 0
Forks: 1
Issues: 0

Repositories & Extras

Rust bindings for the C++ api of PyTorch

LIghtweight wrapper for pytorch eg libtorch in rust

Rust bindings for the C++ api of PyTorch

Vulkan tutorials written in Rust using Ash

tutorials written in Rust using extended branch contains a few more

Vulkan tutorials written in Rust using Ash

A mid-level 2D graphics library for rust

rgx is a 2D graphics library built on top of Vulkan/

A mid-level 2D graphics library for rust

vulkan-tutorial-rs

Goal: Rust port with code structure as similar as possible to the original C++, so the original tutorial can easily be followed (similar to explanatory...

vulkan-tutorial-rs

Reflection API in rust for SPIR-V shader byte code, intended for Vulkan applications

This crate provides an FFI layer and idiomatic rust wrappers for the excellent Documentation

Reflection API in rust for SPIR-V shader byte code, intended for Vulkan applications

Rust Vulkan Samples

A collection of cross-platform Vulkan samples written using the Rust programming language

Rust Vulkan Samples

Vulkano Vulkan Graphics API for Rust

Vulkano is a Rust wrapper around Wgpu-rs or the Vulkan graphics GPU API

Vulkano Vulkan Graphics API for Rust

Simplified Vulkan synchronization logic, written in rust

In an effort to make Vulkan synchronization more accessible, this library provides an efficient simplification of core synchronization mechanisms such as pipeline barriers and events

Simplified Vulkan synchronization logic, written in rust

A voxel-based sandbox game using Vulkan, SDL2 and Rust

Make sure to have the latest Rust (stable) and graphics drivers

A voxel-based sandbox game using Vulkan, SDL2 and Rust

rust vulkan tests (with ash)

============================

rust vulkan tests (with ash)

vk-parse is a Rust crate which parses the Vulkan API registry XML and converts it...

vk-parse is a Rust crate which parses the Vulkan API registry XML and converts it to a Rust representation

vk-parse is a Rust crate which parses the Vulkan API registry XML and converts it...
Facebook Instagram Twitter GitHub Dribbble
Privacy