All Projects → MaikKlein → Rlsl

MaikKlein / Rlsl

Licence: other
Rust to SPIR-V compiler

Programming Languages

rust
11053 projects

Projects that are alternatives of or similar to Rlsl

SPIR-V-Blast
Converting the C-like language to binary or human readable SPIR-V
Stars: ✭ 17 (-96.89%)
Mutual labels:  vulkan, shader, spir-v
Spear
SPEAR is a integrated domain specific language translating C++17 to SPIR-V at host runtime
Stars: ✭ 45 (-91.76%)
Mutual labels:  spir-v, vulkan, shader
3d Game Shaders For Beginners
🎮 A step-by-step guide to implementing SSAO, depth of field, lighting, normal mapping, and more for your 3D game.
Stars: ✭ 11,698 (+2042.49%)
Mutual labels:  gamedev, vulkan, shader
Magnum
Lightweight and modular C++11 graphics middleware for games and data visualization
Stars: ✭ 3,728 (+582.78%)
Mutual labels:  spir-v, gamedev, vulkan
Echo
A New Cross-Platform 2D 3D Game Engine
Stars: ✭ 520 (-4.76%)
Mutual labels:  spir-v, vulkan, shader
Shaderconductor
ShaderConductor is a tool designed for cross-compiling HLSL to other shading languages
Stars: ✭ 1,146 (+109.89%)
Mutual labels:  spir-v, vulkan, shader
xshade
"cross shade" meta shading language and compiler
Stars: ✭ 37 (-93.22%)
Mutual labels:  vulkan, spir-v
spirv cross
Safe Rust wrapper around SPIRV-Cross
Stars: ✭ 75 (-86.26%)
Mutual labels:  vulkan, spir-v
Texturepanner
This repository hosts a shader for Unity3D whose main goal is to facilitate the creation of neon-like signs, conveyor belts and basically whatever based on scrolling textures
Stars: ✭ 528 (-3.3%)
Mutual labels:  gamedev, shader
framework
The exomia/framework is used for building 2D and 3D games and more inspired by the XNA/Mono framework.
Stars: ✭ 21 (-96.15%)
Mutual labels:  gamedev, vulkan
Kazan
Mirror; Work-in-progress software-rendering Vulkan implementation
Stars: ✭ 226 (-58.61%)
Mutual labels:  spir-v, vulkan
sph vulkan
SPH simulation in Vulkan compute shader.
Stars: ✭ 29 (-94.69%)
Mutual labels:  vulkan, spir-v
Vortex2D
Real-time fluid simulation engine running on GPU with Vulkan
Stars: ✭ 91 (-83.33%)
Mutual labels:  gamedev, vulkan
Vulkano
Safe and rich Rust wrapper around the Vulkan API
Stars: ✭ 2,950 (+440.29%)
Mutual labels:  spir-v, vulkan
talvos
Talvos is a dynamic-analysis framework and debugger for Vulkan/SPIR-V programs.
Stars: ✭ 67 (-87.73%)
Mutual labels:  vulkan, spir-v
Smol V
SMOL-V: like Vulkan/Khronos SPIR-V, but smaller.
Stars: ✭ 230 (-57.88%)
Mutual labels:  spir-v, vulkan
Nabla
OpenGL/OpenGL ES/Vulkan/CUDA/OptiX Modular Rendering Framework for PC/Linux/Android
Stars: ✭ 235 (-56.96%)
Mutual labels:  vulkan, spir-v
Bansheeengine
Modern C++14 game engine with Vulkan support, fully featured editor and C# scripting
Stars: ✭ 2,906 (+432.23%)
Mutual labels:  gamedev, vulkan
Stride
Stride Game Engine (formerly Xenko)
Stars: ✭ 3,524 (+545.42%)
Mutual labels:  gamedev, vulkan
Floor
A C++ Compute/Graphics Library and Toolchain enabling same-source CUDA/Host/Metal/OpenCL/Vulkan C++ programming and execution.
Stars: ✭ 166 (-69.6%)
Mutual labels:  spir-v, vulkan

Rlsl - Rust Like Shading Language

Deprecated in favor of rust-gpu

Join the chat at https://gitter.im/MaikKlein/rlsl

What is Rlsl?

Rlsl can compile a subset of Rust to SPIR-V. You can read more about the limitations here.

Rlsl targets the logical addressing model of SPIR-V.

The Logical addressing model means pointers are abstract, having no physical size or numeric value. In this mode, pointers can only be created from existing objects, and they cannot be stored into an object, unless additional capabilities, e.g., VariablePointers, are declared to add such functionality.

Features

  • Supports cargo
  • Multiple entry points can be defined in the same SPIR-V module
  • Currently supports Vertex, Fragment and Compute shaders
  • Shader code can run on the CPU because rlsl is a subset of Rust
  • Reflection TODO
  • Support library for interop between Rust and rlsl for uniforms (std140, std420) TODO

Installation

TODO

How?

RUSTC=rlsl cargo build

compile

How to install rlsl

Not ready to be used. Anything might happen

git clone https://github.com/MaikKlein/rlsl.git

Make sure you have both rustup and xargo installed.

cargo install-rlsl

Run tests

cd rlsl-test
cargo +rlsl test

Blog

  1. What is RLSL
  2. Milestone 1

Want to help?

Contribute

The project currently does not accept any contributions yet.

  • Rlsl can not be easily built by anyone
  • There is no documentation
  • Debugging tools are almost non existent
  • There is no infrastructure for testing
  • No guide level explanation for contributions

Rlsl will start to accept contributions after those issues are properly addressed.

Community

Want to chat? Join us on gitter.

Feel free to open an issue at any time.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].