SkillAgentSearch skills...

Vml

C++17 GLSL-like vector and matrix math lib

Install / Use

/learn @valentingalea/Vml
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

= VML

C++17 GLSL vector and matrix math library. Tweaked for best debug code gen.

== Quick Usage

.Introduce the GLSL types [source, cpp] using vec3 = vml::vector<float, 0, 1, 2>; using mat3 = vml::matrix<float, vml::vector, vml::indices_pack<0, 1, 2>, vml::indices_pack<0, 1, 2>>;

.Compile shader code as C++ [source, cpp]

void mainImage( out vec4 fragColor, in vec2 fragCoord ) { // Normalized pixel coordinates (from 0 to 1) vec2 uv = fragCoord/iResolution.xy;

// Time varying pixel color
vec3 col = 0.5 + 0.5*cos(iTime+uv.xyx+vec3(0,2,4));

// Output to screen
fragColor = vec4(col,1.0);

}

Debug!

image::https://i.imgur.com/NH3qB2e.png[debug]

== About

Inspired by and borrowed major ideas from https://github.com/gwiazdorrr/CxxSwizzle[CxxSwizzle] but mine is engineered for best possible debug code gen.

It includes a SDL based sample app that runs GLSL shaders in a software rasterizer. It can get decent framerates for simple/medium complexity shaders.

Related Skills

View on GitHub
GitHub Stars190
CategoryDevelopment
Updated8d ago
Forks5

Languages

C++

Security Score

95/100

Audited on Mar 30, 2026

No findings