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
Mashupbox V2 - Crossover (Amazingly Recreated)
by memorfan10
Meet The Numberblocks 1-2900
by jayden2015paul
Paper Minecraft Mobile thick of it
by bullbasurmasterj
Beat Up Stepshape [19]
by newmyles
Paper Minecraft 1.21 harper16 skin
by BARU_SQUID
Typing Endless Russian (My Version) remix
by xrapadura
zzzzzzzzzzz zzzzz z z z z z z z z z z z z z z z z z z zz z z zzzzzzzzzzzzzzzzzzzzzz
by sohel_samit
Beat Up Talking Tom Cat 3: Good Ol' Classics
by RGYBProductions
Roblox Obby remix
by WBrise12
Bop it commands
by KendrickUCNCH
Scratch 2.0 Simulator
by CoolGuyBug
Schindler 7000 with Miconic 10 Destination Dispatch
by kptnplt001
diep.io ☁
by jfan-deanza
bzzz
by Pszczolka_Erina
BEAT UP ROCKY remix
by Dylan71312
Beat up mateo Edited Update
by mateothebb
|+Warrior Cat Theme Song Pt 2+|
by ScorchedForest
Super Smash Bros. for Scratch - DEMO UPDATE but G&W
by TarrisCool1234
Undertale Last Breath remake Final version by MR257
by MR257
BFB Contestant Generating Game In NIAR's Style (FINISHED)
by Waiwai2023First
AY in Conveyor Runners! [ Remix 17 | 43 Players ]
by qwaq222
PBS Kids Space Bumper
by _RedBird_
Beat up Mario 1
by ptv_23
Vyond Effects The Game 1.4
by lateone1