All Projects → aras-p → Hlsl2glslfork

aras-p / Hlsl2glslfork

Licence: other
HLSL to GLSL language translator based on ATI's HLSL2GLSL. Used in Unity.

Projects that are alternatives of or similar to Hlsl2glslfork

Reshade
A generic post-processing injector for games and video software.
Stars: ✭ 2,285 (+368.24%)
Mutual labels:  glsl, shaders, hlsl
Slang
Making it easier to work with shaders
Stars: ✭ 627 (+28.48%)
Mutual labels:  glsl, shaders, hlsl
Glsl Optimizer
GLSL optimizer based on Mesa's GLSL compiler. Used to be used in Unity for mobile shader optimization.
Stars: ✭ 1,506 (+208.61%)
Mutual labels:  cross-compiler, glsl, shaders
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 (+2297.13%)
Mutual labels:  glsl, shaders, hlsl
Spirv Vm
Virtual machine for executing SPIR-V
Stars: ✭ 173 (-64.55%)
Mutual labels:  glsl, shaders, hlsl
Shadered
Lightweight, cross-platform & full-featured shader IDE
Stars: ✭ 3,247 (+565.37%)
Mutual labels:  glsl, shaders, hlsl
Shadergen
Proof-of-concept library for generating HLSL, GLSL, and Metal shader code from C#,
Stars: ✭ 395 (-19.06%)
Mutual labels:  glsl, shaders, hlsl
WebGL-Distance-Fields
⭐ Realtime Euclidean distance field generation and rendering
Stars: ✭ 50 (-89.75%)
Mutual labels:  shaders, glsl
SdfFontDesigner
Offline font tuning/bitmap generation via shaders
Stars: ✭ 56 (-88.52%)
Mutual labels:  shaders, glsl
Pmtech
Lightweight, multi-platform, data-oriented game engine.
Stars: ✭ 478 (-2.05%)
Mutual labels:  glsl, hlsl
MoravaEngine
2D/3D graphics engine written in C++ language. It currently supports the following graphics APIs: OpenGL 3.3+, Vulkan 1.2, DirectX 11. Its current purpose is to experiment with various CG concepts and techniques.
Stars: ✭ 129 (-73.57%)
Mutual labels:  shaders, glsl
YOLOv4-Tiny-in-UnityCG-HLSL
A modern object detector inside fragment shaders
Stars: ✭ 38 (-92.21%)
Mutual labels:  shaders, hlsl
YALCT
Yet Another Live Coding Tool - Powered by Veldrid and elbow grease
Stars: ✭ 25 (-94.88%)
Mutual labels:  shaders, glsl
Holoshield
Highly customizable sci-fi shield / force field shader for Unity3D. Allows you to set edge power & color, inner texture scrolling, waviness, scale pulsation and procedural intensity noise. Implements tessellation for low-poly base meshes.
Stars: ✭ 401 (-17.83%)
Mutual labels:  glsl, shaders
30-days-of-shade
30 days of shaders in GLSL using GLSLCanvas
Stars: ✭ 134 (-72.54%)
Mutual labels:  shaders, glsl
CPP-Programming
Various C/C++ examples. DirectX, OpenGL, CUDA, Vulkan, OpenCL.
Stars: ✭ 30 (-93.85%)
Mutual labels:  glsl, hlsl
inline-spirv-rs
Compile GLSL/HLSL/WGSL and inline SPIR-V right inside your crate.
Stars: ✭ 21 (-95.7%)
Mutual labels:  glsl, hlsl
TD-PostEffectShader
PostEffect Shaders(GLSL) for TouchDesigner
Stars: ✭ 12 (-97.54%)
Mutual labels:  shaders, glsl
Webgl Fundamentals
WebGL lessons that start with the basics
Stars: ✭ 3,315 (+579.3%)
Mutual labels:  glsl, shaders
Xshadercompiler
Shader cross compiler to translate HLSL (Shader Model 4 and 5) to GLSL
Stars: ✭ 327 (-32.99%)
Mutual labels:  glsl, hlsl

HLSL to GLSL shader language translator

⚠️ As of mid-2016, the project is unlikely to have any significant developments. At Unity we are moving to a different shader compilation pipeline. So from my side there won't be significant work done on it. You might want to look into HLSLParser, HLSLcc or glslang instead. ⚠️

DX9 style HLSL in, GLSL / GLSL ES out.

A continued development from ATI's HLSL2GLSL, with preprocessor code based on mojoshader. I'm changing it to make it work for Unity's use cases; might totally not work for yours!

For an opposite tool (GLSL ES to HLSL translator), look at Google's ANGLE.

See badly maintained change log.

Notes

  • Only Direct3D 9 style HLSL is supported. No Direct3D 10/11 "template like" syntax, no geometry/tesselation/compute shaders, no abstract interfaces.
  • Platform support:
    • Windows via Visual Studio 2010 (hlslang.sln).
    • Mac via Xcode 5 (hlslang.xcodeproj).
    • Other platforms may or might not work. Some people have contributed CMake build scripts, but I am not maintaining them.
  • On Windows, the library is built with _HAS_ITERATOR_DEBUGGING=0,_SECURE_SCL=0 defines, which affect MSVC's STL behavior. If this does not match defines in your application, totally strange things can start to happen!
  • The library is not currently thread-safe.

Status

Used in Unity and bitsquid engines, and some other studios -- seems to work quite ok.

Support for DX11 features might or might not get added due to the bad condition the original code is in (very obscure and inefficient), instead maybe a new cross-compiler will be made. Someday. Maybe.

No optimizations are performed on the generated GLSL, so it is expected that your platform will have a decent GLSL compiler. Or, use GLSL Optimizer, at Unity we use it to optimize shaders produced by HLSL2GLSL; gives a substantial performance boost on mobile platforms.

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].