Skip to content

HLSL to GLSL language translator based on ATI's HLSL2GLSL. Used in Unity and bitsquid.

License

Notifications You must be signed in to change notification settings

jims/hlsl2glslfork

This branch is 5 commits ahead of, 467 commits behind aras-p/hlsl2glslfork:master.

Folders and files

NameName
Last commit message
Last commit date

Latest commit

892060c · Jul 9, 2013
Mar 30, 2012
Sep 24, 2012
Jun 12, 2013
Jan 30, 2013
Sep 24, 2012
Feb 23, 2010
Aug 16, 2011
Aug 16, 2011
Oct 12, 2010
Aug 14, 2012
Jul 28, 2010
Aug 10, 2012
Jul 9, 2013
Jul 9, 2013
Apr 25, 2012
Jun 18, 2013
Jun 18, 2013
Jul 9, 2013

Repository files navigation

HLSL to GLSL shader language translator

This is a fork of Aras Pranckevičius's fork of ATI's HLSL2GLSL for use in the bitsquid engine.

Changes from Unity's hlsl2glsl

  • Added support for emission of const initializers (including struct and array initializers using GLSL 1.20 array syntax).
  • Removed all constant folding functionality as it was completely broken.
  • A myriad of smaller bug fixes.
  • Support DX10 SV_VertexID, SV_PrimitiveID and SV_InstanceID semantics.
  • Support for shadow sampler types (samplerRECTShadow/sampler2DShadow etc.) which generate appropriate shadow2DRect/shadow2D etc. calls.
  • Fixed unaligned swizzled matrix access & assignments (view._m01_m02_m33 = value)

Status

The library is used in the bitsquid engine and seems to work well for our current purposes. Support for DX11 feautres will probably not be added due to the bad condition the original code is in (very obscure and inefficient), instead we will publish our own cross compiler when it's ready.

About

HLSL to GLSL language translator based on ATI's HLSL2GLSL. Used in Unity and bitsquid.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++ 79.6%
  • C 18.5%
  • Ruby 1.9%