# ValveSoftware/ToGL

Direct3D to OpenGL abstraction layer

Repository: https://github.com/ValveSoftware/ToGL
Canonical: https://ross.abutalabs.com/products/togl
Language: C++
License: NOASSERTION
License Family: other
Last push: 2015-09-01T05:05:05+00:00

## Health v2 (maintenance only)
Score: 32/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 0, release rhythm 35, longevity 100
- inputs: {"age_days": 4559, "days_push": 4019, "days_rel": null, "gap_med": null, "n_releases_24m": 0}
- flags: no_releases, no_license
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 2082, forks 191 (observed 2026-08-28T04:06:11.687519+00:00)

## What it is
ToGL is Valve's Direct3D 9 to OpenGL translation layer, extracted from the DOTA2/Source Engine codebase. It includes a bytecode-level HLSL-to-GLSL translator and supports a limited subset of Direct3D 9.0c with some SM3 features.

## Use cases
- port a Direct3D 9 game to OpenGL platforms
- translate HLSL shaders to GLSL
- study how Valve ported Source Engine to Mac/Linux
- reference implementation of a D3D-to-OpenGL abstraction layer

## When to choose
- you need a reference for D3D9-to-OpenGL translation or HLSL-to-GLSL shader conversion
- you are researching Source Engine's cross-platform rendering approach

## When to avoid
- you need a maintained, supported translation layer (project is unsupported and last released in 2015)
- you need full Direct3D 9+ feature coverage or modern APIs like Vulkan
- you expect it to build out of the box

## Facets
- artifact type: library
- maturity: abandoned
- function: graphics, compiler
- domain: graphics, cross-platform
- platform: cpp, windows
- tags: direct3d, opengl, hlsl, glsl, translation-layer, source-engine, game-development, linux, macos

## Member repositories
- ValveSoftware/ToGL (main) score 32

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:06:11.687519+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T02:55:55.062499+00:00, confidence not recorded.
  - readme: https://github.com/ValveSoftware/ToGL (fetched 2026-08-28T04:06:11.687519+00:00, sha 1cfeda1b75ad)
- Data as of 2026-08-30T08:39:29.467469+00:00.
