Skip to content

Speykious/opengl-playground

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

52 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

OpenGL playground

This is my personal playground to learn and experiment with low-level graphics programming stuff in OpenGL.

It runs with OpenGL >=3.3 on Windows, Linux and MacOS.

You can just run it with cargo run.

Scenes

F1 Round Quads

Round rects Round quads scene

 

Tons of randomly styled rounded rectangles, spinning faster the closer they are to the mouse.

F2 Blurring

Blurring scene Gaussian blur with kernel 5, radius 2 and 4 downsampling layers (no color dithering)

 

An image of Gawr Gura being blurred. The blur technique used is sampled Gaussian blur, with recursive downsampling and color dithering.

Relevant articles:

Keybinds:

  • / - Toggle diagonally sampled blur
  • D - Toggle dithering
  • - Increment blur kernel size
  • - Decrement blur kernel size
  • - Increase blur radius
  • - Decrease blur radius
  • L - Increase blur layers count
  • ⇧L - Decrease blur layers count

F3 Kawase Blur

Kawase Blur scene Kawase-derived Dual-filter blur with radius 2 and 4 downsampling layers (no color dithering)

 

An image of Gawr Gura being blurred. The blur technique used is Dual Filtering, derived from the Kawase blur, with recursive downsampling and color dithering.

Relevant articles:

Keybinds:

  • D - Toggle dithering
  • - Increase kawase distance
  • - Decrease kawase distance
  • L - Increase blur layers count
  • ⇧L - Decrease blur layers count