Skip to content
 
 

Repository files navigation

Ecma TC57 - The HLSL Standard Committee

Documentation Build Status

SWAG progress estimate:

This repository documents and tracks the specification and evolution process for the HLSL programming language under Ecma Technical Committee 57 (TC57). This repository is made public to provide visibility into the feature development process and solicit feedback from the wider community.

To understand the processes used by the Technical Committee please review our process documentation.

The draft HLSL specification is available in HTML and PDF.

Building the Specification

The text for the HLSL specification is under the spec directory. It is written in LaTeX. Building the spec requires a TeX environment and some additional tools each described below.

  • The recommended LaTeX environment can be satisfied by installing TeX Live.
  • Inkscape is required for rendering SVG into PDF.
  • The HTML version of the specification is generated with Pandoc.
  • CMake is used to generate makefiles or other build scripts.

After installing the dependencies you can build the specification with the following commands:

mkdir build
cmake -G "Unix Makefiles" ../spec
make

The build has 3 targets to build the specification in different ways:

  • html-chunked - one HTML file per clause and an index.
  • html - one giant HTML file.
  • pdf

MacOS using Homebrew

brew install --cask mactex
brew install inkscape
brew install pandoc
brew install cmake

Ubuntu

sudo apt install texlive
sudo apt install texlive-latex-extra
sudo apt install inkscape
sudo apt install pandoc
sudo apt install cmake

Website build

See the full documentation on building the website with Docker.

About

Main documentation and specification repository for Ecma TC 57

Resources

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages