Skip to content

akattelu/dim

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

33 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Dim

Dim is a creative coding environment for modern terminals on macOS.

I wanted to make terminal environment similar to P5js or shadertoy, and also learn about how graphics workloads work on macOS. Shaders are written as compute shaders in Metal.

Dim uses Zig, Swift, and Metal. Zig interops with Swift+Metal code to dispatch compute shaders that draw 2D graphics to a framebuffer. Zig CPU code draws the framebuffer to terminal.

Usage

# Note: only works on macOS
zig build dim -- ./shaders/voro.metal # runs the voronoi noise example shader

Showcase

dim-ripple

dim_voro

dim_cube

dim_water

About

Dim is a creative coding environment for modern terminals on macOS.

Resources

Stars

Watchers

Forks

Contributors