Open format · Alpha profile

.hexshader

An open format for procedural shaders and animation.

Package shader source, creative controls, named looks and supporting assets in one portable file. Create in 360 Hextile. Build support into your own app, including a commercial one.

The specification and original tutorial examples are CC0 1.0. No Hextile purchase, format fee, permission request or attribution is required to implement it. Individual shader packages and resources can have their own licenses.

Share the working shader

A .hexshader is a validated ZIP package, carrying the source and the values that made the look. Current exports use bundle schema 4.

scene.hexshader
├── bundle.json       inventory + snapshot
├── source.glsl       native GLSL
├── manifest.json     controls + ABI
├── values.json       chosen values
├── provenance.json   content origin
├── modules/…         declared helpers
├── looks/…           named looks
└── resources/…       optional PNG inputs

Keep motion with the look

A host supplies content time, frame and frame rate. Packages can declare timelines, parameter expressions, modulation and ordered image sequences. A compatible host evaluates each required capability or refuses the package.

vec4 hxMain(in HxFrag hx) {
    float pulse = 0.5 + 0.5 * sin(hx.time);
    return vec4(vec3(pulse), 1.0);
}

See the complete first shader and timed tutorial.

Use it in your own software

The format reference defines inventory, hashes, the native shader ABI and capability negotiation. It is for independent implementers. The 360 Hextile Shader Workshop is Alpha, and format adoption does not make the desktop app open source or guarantee identical output on every GPU.

We use cookies for analytics to understand how visitors use our site. Privacy Policy