Skip to content

WebGL Ray Marching Distance Extimation intersection between MandelBulb and MengerSponge cube

Notifications You must be signed in to change notification settings

BrutPitt/wglMengerBulb

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

wglMengerBulb

WebGL Ray Marching Distance Extimation intersection between MandelBulb and MengerSponge cube

Live wglMengerBulb example

Features

  • light (blinn-phong) and shadows with full settings
  • ambient occlusion with settings
  • subpixel subdivision
  • level of details (epsilon)
  • auto-progressive step of accuracy.
  • settings MengerSponge parameters: iterations / rotation / increment / scale / offset
  • settings MandelBulb parameters: iterations / power
  • 10 color palette with offset setting

Tips

Shadow Deep and Density parameters start with a low value (for slow GPU): increment values to get a better render (Deep) or for smooth shadows (Density)

Commands

  • LeftMouseButton -> Rotate object
  • RightMouseButton -> Rotate light
  • MouseWheel -> Zoom in/out
  • shift + LeftMouseButton -> Pan

Description

This is pure HTML/JS/WebGL2 experiment, without 3th party WebGL tools/library.

It uses only gl-matrix js library for mat/vec/quat, and other self-made tools in the jsLib directory

Warnings

For standalone usage, on local computer, is necessary use an http server to load external glsl shader file (e.g. launch python -m http.server from repository directory and in your browser digit localhost:8000/nameFile.html)