michalzalobny / webgl-3d-engine

WebGL2 3D Engine built from scratch.

Home Page:https://tranquil-pixie-7ecd9c.netlify.app/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

WebGL2 3D Engine built from scratch

The goal is to build a custom 3D engine without any libraries - just using WebGL2 API and what I have learnt while creating a 3D renderer in C. Guided by WebGL2 Fundamentals.

I'm using here Right-Handed Coordinate System (positive Z axis points out of the screen). I'm also using column-major matrices layout - so I will be using post-multiplication -> M * v to transform a vector v by a matrix M.

Lighthouse Performance

  • Application without any WebGL2 context scores 4x 100% on lighthouse, with 0ms of Total Blocking Time, 0.8s First and Largest Contentful Paint. Speed index is 0.8s.
  • After adding the WebGL2 context, the Total Blocking Time increases to 40ms.
  • After adding 4 textures to load into GPU and a model to parse, the Total Blocking Time increases to 60ms. The rest of the metrics are the same.

About

WebGL2 3D Engine built from scratch.

https://tranquil-pixie-7ecd9c.netlify.app/


Languages

Language:TypeScript 65.6%Language:GLSL 11.7%Language:SCSS 10.2%Language:Nunjucks 8.6%Language:JavaScript 3.9%