Introducing RealityServer

MetaSL Shaders

This section describes the Meta Shading Language (MetaSL®), which is the shading language used for RealityServer:

  • What is MetaSL?
  • The MetaSL shaders shipped with RealityServer
  • Writing your own MetaSL shaders
  • Shader commands

For a detailed description about MetaSL see the Design Specification for MetaSL 1.2 which you can access from the More Resources menu.

What is MetaSL?

Shaders are programs that you use to customize the parts of the graphics pipeline that affect:

  • Surfaces
  • Lights
  • Environment
  • Volume
  • Displacement
  • Lens

This customization of the graphics pipeline enables you to control the final look of a rendered image.

The Meta Shading Language (MetaSL) is a domain-specific language for writing these programmable components. In particular, MetaSL is a shader language dedicated to providing an abstract shader description. The abstraction protects the shader description from the details of the implementation, enabling the same MetaSL shader to:

  • Be used on different platforms
  • Be used in different contexts
  • Utilize different rendering algorithms

The shader description is protected from the always-changing hardware and software which provide the implementation. This is a very valuable benefit: a MetaSL shader does not need to be rewritten as the graphics technology underlying RealityServer and other products evolves.

MetaSL Shaders Shipped with RealityServer

The shaders shipped with RealityServer are stored in the ../shaders directory.

Writing Your Own Shaders

If you plan to write your own MetaSL shaders, refer to the MetaSL Design Specification in the More Resources menu.