3D Graphics OpenGL V3

3D Graphics OpenGL V3

by PianoApprentice

👁 6,937 ❤️ 383 ⭐ 342 🔄 3
Created: Aug 12, 2021 Last modified: Aug 27, 2021 Shared: Aug 12, 2021

Description

Been a while, eh? My goal for this project was to build a 3D graphics engine in scratch in the same way that it is done in OpenGL, a standard for 3D graphics. This meant doing things like matrix math, z-buffers, and 4D homogeneous coordinates - things that normally aren't used for 3D scratch projects. Most 3D scratch projects (https://scratch.mit.edu/projects/118602500/ for example) use the painter's algorithm to draw their scenes (see https://en.wikipedia.org/wiki/Painter%27s_algorithm), drawing polygons one at a time, from back to front. Because of it's speed, the painter's algorithm is the best way to do 3D for scratch, but there are limitations (see the wiki article). Because of that, real 3D graphics programs instead rasterize polygons into individual pixels, and draw the scene pixel by pixel. This allows for textures, smooth shading, intersections, and other features that are hard to do when drawing triangle by triangle. Unfortunately, pixel based drawing is very slow in scratch. Many computers use the GPU to speed up the whole process, hardware that scratch can't utilize. If you're interested, here's some more info on OpenGL and 3D computer graphics: https://www.scratchapixel.com/lessons/3d-basic-rendering/rasterization-practical-implementation/overview-rasterization-algorithm https://learnopengl.com https://www.khronos.org/opengl/wiki/Rendering_Pipeline_Overview Credits: https://opengameart.org/content/urban-skyboxes https://sketchfab.com/3d-models/pixel-low-poly-spaceship-eaad1ae4bf6a43fd9f3a80400dacbbfd

Instructions

- try turbowarp: https://turbowarp.org/560149534 - WASDQE to move & arrow keys to turn - Z to toggle skybox - C to toggle metallic material that reflects the skybox - X to switch between models. A number of comments noted how the monkey looks creepy (I agree), so I added a spaceship too. If you want to import your own 3D model, texture, or skybox, see the import sprite's costume. The current model is a lower-poly, textured version I made of Suzanne from Blender.

Project Details

Visibility
Visible
Comments
Enabled

More Cool Projects

Project thumbnail
View Project

baseball

by nagisa365

Project thumbnail
View Project

Beat Up Scratch Cat, My version remix blood 13+

by q3qwewqe

Project thumbnail
View Project

20th century Fox destroyed but ... Become Fox

by Jackjackbufton

Project thumbnail
View Project

too slow fnf test sonic exe vs pico

by bigmoneyman2013

Project thumbnail
View Project

fnf too slow remake

by tails_op

Project thumbnail
View Project

[LATE / REQUESTED] POV: Russia EAS Alarm

by Little_Cat2014

Project thumbnail
View Project

Universe Size Comparison just made by Fols351

by Alsie351

Project thumbnail
View Project

Seadtype V19.0

by stevenrobloxisback

Project thumbnail
View Project

My effects kit! remix

by ElGatoTheGaming123

Project thumbnail
View Project

Beat Up Vivi! (Version 0.5 / 8 Buttons)

by newmyles

Project thumbnail
View Project

Plants Vs. Zombies PE

by ZS_Games

Project thumbnail
View Project

omega flowey battle multiplayer

by ottid64

Project thumbnail
View Project

Rainbow Numbers 200001 to 400000 (Part 2 of Numbers 0 to 1000000) remix

by goodall4050

Project thumbnail
View Project

talking tom and ben news 9: muchos gracias @CatalinaMax2006 G

by Tyler-Time

Project thumbnail
View Project

meggie uvula Check are tongue.

by aristonnaki1

Project thumbnail
View Project

Everybody edits rainbow 64 blocks

by Quitin

Project thumbnail
View Project

Famished Fish v1.1

by griffpatch

Project thumbnail
View Project

Add a button to beat up Nano 2 [6[

by superizaaqgalaxy

Project thumbnail
View Project

FNF ⇒Accelerant⇐ [HARD]

by shadowmask1234

Project thumbnail
View Project

FNF: VS. Dave And Bambi Test - Bambi Test V2.9.5!

by BetterCharlieNetwork

Project thumbnail
View Project

beat up stickman 2! V3.0 (final update.)

by Jimmyknight

Project thumbnail
View Project

Blank - A Platformer ~ V1.3 | #All #Games

by AlmanIsTheBest

Project thumbnail
View Project

Dorkly Sonic Simulator (FNF)

by rayyaka

Project thumbnail
View Project

Mario Tennis: Rally Challenge

by MarioFan3629