
3D Graphics OpenGL V3
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

Amogus sus ΰΆ
by Whiteandroid

γγ°
by ichig

paper minecraft
by 45Isaac2017

BEAT UP SCRATCH CAT ULTIMATE 10 ARENA
by Dylan71312

Kos3 world map update
by SpencerScratched

ADOFAI - Neo Cosmos T1EX
by munet

Spamton Neo fight Snowgrave
by tripoid

Get the ball
by MLouie18

VOIDCRAFT - Open World Space Survival V1.7
by JOSHUA_PRODUCTIONS

talking tom and ben news army but button by button
by megablocks04

Directdraw (3D editor 0.0.2)
by AttackingBro

Prime Number Generator
by Wes64

Mega Smesh Bros.
by JavierSoto1

Sonic Genesis Age 2 V0.55
by mewtube47

ι©ε½γͺγγ©γγγγ©γΌγγΌ new1
by 1296-cat

talking tom and ben news HD v3 (replica)
by Damian0718

MOONWALK
by Thebenjiball

ben bi age of history oynamΔ±ΕΔ±m
by patisscik

Lunar 3D Engine v2.1.1
by TheGoodGuy8000

Visual Novel Script Editor (WIP)
by XxDalmanskixX

γζ±ζΉγγγ―γγγ‘γ³γΏγΈγ’γγΉγ―γͺγγζΌε₯
by Cranberrytrap

γγ¦γ³γγ£γ©γγ·γ₯
by KD_game

Ongezellig Hit!
by zelligfanx

mope.io | recreation game
by Thepoter