This package browser is in early development. Mind the rough edges.

mojoshader

Work with Direct3D shaders on alternate 3D APIs

MojoShader is a library to work with Direct3D shaders on alternate 3D APIs and non-Windows platforms. The primary motivation is moving shaders to OpenGL languages on the fly. The developer deals with "profiles" that represent various target languages, such as GLSL or ARB_*_program.

This allows a developer to manage one set of shaders, presumably written in Direct3D HLSL, and use them across multiple rendering backends. This also means that the developer only has to worry about one (offline) compiler to manage program complexity, while MojoShader itself deals with the reduced complexity of the bytecode at runtime.

MojoShader provides both a simple API to convert bytecode to various profiles, and (optionally) basic glue to rendering APIs to abstract the management of the shaders at runtime.

Installation

Install the latest version of mojoshader as follows:

guix install mojoshader

Or install a particular version:

guix install mojoshader@20190825-5887634ea695

You can also install packages in augmented, pure or containerized environments for development or simply to try them out without polluting your user profile. See the guix shell documentation for more information.

Badge code

You can use the following badge to inform users of mojoshader about the latest version available in Guix.

Example HTML:

<a href='https://packages.guix.gnu.org/packages/mojoshader'><img src='https://packages.guix.gnu.org/packages/mojoshader/badges/latest-version.svg' alt='Version in GNU Guix'></a>

Example Markdown:

[![Version in GNU Guix](https://packages.guix.gnu.org/packages/mojoshader/badges/latest-version.svg)](https://packages.guix.gnu.org/packages/mojoshader)

Example Org:

[[https://packages.guix.gnu.org/packages/mojoshader][https://packages.guix.gnu.org/packages/mojoshader/badges/latest-version.svg]]