Skip to content

Releases: BarthPaleologue/BabylonJS-Shading-Language

1.4.0 - New functions

Choose a tag to compare

@BarthPaleologue BarthPaleologue released this 09 Aug 17:22
6a7da98

BSL gets more powerful with new NME wrappers for common GLSL operations:

  • normalize
  • distance
  • mod
  • acos
  • floor
  • ceil
  • uniformMat4
  • texture2dArraySample

1.3.0 New functions

Choose a tag to compare

@BarthPaleologue BarthPaleologue released this 05 Mar 16:56
1.3.0
d8acf7c

Here are some useful new functions:

  • div (divides stuff)
  • smoothstep
  • add
  • min
  • max

1.2.0

Choose a tag to compare

@BarthPaleologue BarthPaleologue released this 25 Feb 14:15
1.2.0
4aadc6a

Online documentation

The documentaion is now online at https://barthpaleologue.github.io/BabylonJS-Shading-Language/

Plenty of new functions

  • add f shorthand for float
  • add trig as a general purpose trigonometry function
  • add atan2
  • add length for all vectors
  • add remap
  • add withX, withY, withZ, withW to make an edited copy of a vector
  • add step, very useful for branchless conditions
  • add abs
  • add mix
  • add sub

1.1.0

Choose a tag to compare

@BarthPaleologue BarthPaleologue released this 23 Feb 17:21
1.1.0
6aea84e

Although it is not a major release, this one has some breaking changes to fix some initial design errors.

I think it is okay since realistically no one had the time to download or even use the 1.0.0 version that came out yesterday!

Beyond this release I will not make breaking changes in non-major releases.

Breaking changes

  • better defaults for shader targets (neutral for eveything except texture samples and pbr that are in fragment)
  • All additional options are passed through an optional partial instead of separate parameters, this will allow adding options without any breaking change in the future.
  • renamed sampleTexture to textureSample to match WGSL syntax
  • remove xy as split can be used directly
  • unify multiplication by a scalar and multiplication between vectors => mulVec has been removed, use mul instead.
  • unify vector splitting: the dimension is now inferred from the input => splitVec2 and splitVec3 have been removed, use split instead

Other changes

  • vertex attribute input safety
  • xz now works for vec3 and vec4

1.0.0

Choose a tag to compare

@BarthPaleologue BarthPaleologue released this 22 Feb 21:51
1.0.0
e70db7f