Discuss Scratch
- Discussion Forums
- » Advanced Topics
- » 3D on scratch, And how it's professionally accomplished
- retro2D
-
Scratcher
29 posts
3D on scratch, And how it's professionally accomplished
Okay, I think I am going to get started again today. Wish me luck!You can use voxelbears YouTube tutorial to do it, it’s super easy and real 3d, just go to his 2nd video to make a game if you don’t know howI tried that one before, but I didn't fully understand it. Maybe this time I will learnHow should I get started on making 3D games?find equations, and other stuff, but for basic 3D projection, no camera movement, but really easy to ADD camera movement, create a custom block called “render object at (x) (y) (z)” make it run without screen refresh
add a forever loopwhen green flag clicked
set [focal length v] to [300]
forever
render obj at (0) (0) (300)
end
define render obj at (x) (y) (z)
go to x: (((x) / (z)) * (focal length)) y: (((y) / (z)) * (focal length))
// the following is UNNECESARY!!!
when green flag clicked
sigma amount (999999999)
define sigma amount (%)
set [sigma v] to (%)
this is a very low addon- 3D engine, so check out @CodingBio 's 3D tutorial series: https://scratch.mit.edu/studios/32152322

- Feelinfresh26
-
New Scratcher
9 posts
3D on scratch, And how it's professionally accomplished
I’ve used it before, it works. It’s literally in one of my projects. It’s in my laser leap project.Look, no offense, but with that pfp and a “new scratcher” tag under your name, I don't think your use case is a 3D rendering engine with extensive math and rendering going on the background. as I said, you might have made a frame “stabilizer ”, which is due to adding a millisecond of delay between each frame, making the frames less and adding the illusion of more stability. this however, is horrible for anything that is more complicated than an apple catching game. the scratch community have been optimizing and building new techniques for years, and a simple ms delay between frames isn't the next breakthrough.
Ok, ok, I get what you mean, but I can do some basic JavaScript.
- ultracat31
-
Scratcher
13 posts
3D on scratch, And how it's professionally accomplished
I’ve used it before, it works. It’s literally in one of my projects. It’s in my laser leap project.Look, no offense, but with that pfp and a “new scratcher” tag under your name, I don't think your use case is a 3D rendering engine with extensive math and rendering going on the background. as I said, you might have made a frame “stabilizer ”, which is due to adding a millisecond of delay between each frame, making the frames less and adding the illusion of more stability. this however, is horrible for anything that is more complicated than an apple catching game. the scratch community have been optimizing and building new techniques for years, and a simple ms delay between frames isn't the next breakthrough.
Ok, ok, I get what you mean, but I can do some basic JavaScript.
How basic though?
- Feelinfresh26
-
New Scratcher
9 posts
3D on scratch, And how it's professionally accomplished
I’ve used it before, it works. It’s literally in one of my projects. It’s in my laser leap project.Look, no offense, but with that pfp and a “new scratcher” tag under your name, I don't think your use case is a 3D rendering engine with extensive math and rendering going on the background. as I said, you might have made a frame “stabilizer ”, which is due to adding a millisecond of delay between each frame, making the frames less and adding the illusion of more stability. this however, is horrible for anything that is more complicated than an apple catching game. the scratch community have been optimizing and building new techniques for years, and a simple ms delay between frames isn't the next breakthrough.
Ok, ok, I get what you mean, but I can do some basic JavaScript.
How basic though?
Uh… I can make an ASCII animation with it.
- Feelinfresh26
-
New Scratcher
9 posts
3D on scratch, And how it's professionally accomplished
I’ve used it before, it works. It’s literally in one of my projects. It’s in my laser leap project.Look, no offense, but with that pfp and a “new scratcher” tag under your name, I don't think your use case is a 3D rendering engine with extensive math and rendering going on the background. as I said, you might have made a frame “stabilizer ”, which is due to adding a millisecond of delay between each frame, making the frames less and adding the illusion of more stability. this however, is horrible for anything that is more complicated than an apple catching game. the scratch community have been optimizing and building new techniques for years, and a simple ms delay between frames isn't the next breakthrough.
Ok, ok, I get what you mean, but I can do some basic JavaScript.
How basic though?
Here, I made a video of myself doing it: https://www.youtube.com/watch?v=oHg5SJYRHA0I’ve used it before, it works. It’s literally in one of my projects. It’s in my laser leap project.Look, no offense, but with that pfp and a “new scratcher” tag under your name, I don't think your use case is a 3D rendering engine with extensive math and rendering going on the background. as I said, you might have made a frame “stabilizer ”, which is due to adding a millisecond of delay between each frame, making the frames less and adding the illusion of more stability. this however, is horrible for anything that is more complicated than an apple catching game. the scratch community have been optimizing and building new techniques for years, and a simple ms delay between frames isn't the next breakthrough.
Ok, ok, I get what you mean, but I can do some basic JavaScript.
How basic though?
Uh… I can make an ASCII animation with it.
- ultracat31
-
Scratcher
13 posts
3D on scratch, And how it's professionally accomplished
I’ve used it before, it works. It’s literally in one of my projects. It’s in my laser leap project.Look, no offense, but with that pfp and a “new scratcher” tag under your name, I don't think your use case is a 3D rendering engine with extensive math and rendering going on the background. as I said, you might have made a frame “stabilizer ”, which is due to adding a millisecond of delay between each frame, making the frames less and adding the illusion of more stability. this however, is horrible for anything that is more complicated than an apple catching game. the scratch community have been optimizing and building new techniques for years, and a simple ms delay between frames isn't the next breakthrough.
Ok, ok, I get what you mean, but I can do some basic JavaScript.
How basic though?
Uh… I can make an ASCII animation with it.
Yeah, I have to say, if you intend to be creating advanced things like 3D engines, and haven't been on scratch long enough for a transition to take time, I would recommend just learning a written code language. I would argue that certain high level languages such as Python, C#, and JavaScript are easier than scratch at the beginner level.
- br-0
-
Scratcher
5 posts
3D on scratch, And how it's professionally accomplished
but JS and Python aren't really high level though, it's basically English with some added twistsI’ve used it before, it works. It’s literally in one of my projects. It’s in my laser leap project.Look, no offense, but with that pfp and a “new scratcher” tag under your name, I don't think your use case is a 3D rendering engine with extensive math and rendering going on the background. as I said, you might have made a frame “stabilizer ”, which is due to adding a millisecond of delay between each frame, making the frames less and adding the illusion of more stability. this however, is horrible for anything that is more complicated than an apple catching game. the scratch community have been optimizing and building new techniques for years, and a simple ms delay between frames isn't the next breakthrough.
Ok, ok, I get what you mean, but I can do some basic JavaScript.
How basic though?
Uh… I can make an ASCII animation with it.
Yeah, I have to say, if you intend to be creating advanced things like 3D engines, and haven't been on scratch long enough for a transition to take time, I would recommend just learning a written code language. I would argue that certain high level languages such as Python, C#, and JavaScript are easier than scratch at the beginner level.
- Penthusiast
-
Scratcher
44 posts
3D on scratch, And how it's professionally accomplished
but JS and Python aren't really high level though, it's basically English with some added twistsI’ve used it before, it works. It’s literally in one of my projects. It’s in my laser leap project.Look, no offense, but with that pfp and a “new scratcher” tag under your name, I don't think your use case is a 3D rendering engine with extensive math and rendering going on the background. as I said, you might have made a frame “stabilizer ”, which is due to adding a millisecond of delay between each frame, making the frames less and adding the illusion of more stability. this however, is horrible for anything that is more complicated than an apple catching game. the scratch community have been optimizing and building new techniques for years, and a simple ms delay between frames isn't the next breakthrough.
Ok, ok, I get what you mean, but I can do some basic JavaScript.
How basic though?
Uh… I can make an ASCII animation with it.
Yeah, I have to say, if you intend to be creating advanced things like 3D engines, and haven't been on scratch long enough for a transition to take time, I would recommend just learning a written code language. I would argue that certain high level languages such as Python, C#, and JavaScript are easier than scratch at the beginner level.
Javascript and Python aren't high level in terms of syntax, but like anything, the complexity comes from what you develop in it. Also, it might look easy when you start out, but real experience is only going to come if you write a lot of things in them.

C and C++ aren't complex in terms of syntax either actually, Javascript follows a bit of C-style syntax.
- Feelinfresh26
-
New Scratcher
9 posts
3D on scratch, And how it's professionally accomplished
Creating an ASCII animation is much harder than you think. You need to somehow make the animation repeat, and annoyingly type a lot of functions.
- _-ValX-_
-
Scratcher
500+ posts
3D on scratch, And how it's professionally accomplished
#529 Creating an ASCII animation is much harder than you think.You just basically convert every frame of the animation in ASCII, and to convert an imagine in ASCII, turn every pixel into a black or white pixel (average the RGB channels then change the value of each channel by it) and then use that color value to decide what character to use (0 = full black, 255 = full white).
Anyways, this is pretty much off topic so lets get back to 3D

- _-ValX-_
-
Scratcher
500+ posts
3D on scratch, And how it's professionally accomplished
#519I've never thought of this before ! Well, I'll use the second option next time lol
quite right! however, the days since 2000s block doesn't work with pausing, so it can be a big problem if the project froze or a turbowarp user paused. however, it can be perfect for other use cases that synchronize the timer between them!
when green flag clicked
forever
set [last timer v] to (timer)
wait (0) secs
set [fps v] to ((1) / ((timer) - (last timer)))
end
- akosswan4
-
Scratcher
22 posts
3D on scratch, And how it's professionally accomplished
:_____________________(
- Deelapie
-
Scratcher
11 posts
3D on scratch, And how it's professionally accomplished
I think we would hahaFun fact: I imagined a scratch-like engine named 5.1Script, I'm working on the engine, I made even a part 1 tutorial on YouTube! (See channel on my “What I'm working on” page). My scratch version has only possible text engine and all scratch blocks but they are text based, my imagination version is an app called 5.1 PowerZ1 (PWZ1 for short). It lets you use 2D/3D assets or you can make your own or generate in your game, you also have cool extensions!Hmm I wonder which programming language it usesThe project was developed on Scratch and the scripts used inside of the engine are Scratch and text-based programming that looks pretty much like usual scratch
Here are the extensions i imagined:
• Music extension (basically the scratch extension but with more instruments)
• Pen extension (same thing as scratch version but supports hex too)
• Text engine extension (the scratch Lab text extension but with more fonts and custom fonts)
• MIDI extension (Allowing you to connect your piano or something to your device, it also works with converters, you can play midi songs and games in it, just use .mid if your piano supports .mid or .midi if your piano supports .midi. You can also send desired sound output to your piano with it)
• 3D engine extension (letting you draw real 3D cubes)
• MX Servers extensions (now scratch please don't ban me because the link in gonna enter isn't real, it's just something part of my imagined programming language. So MX Servers is an extension to access stuff outside 5.1Script where you can download it in my imagined link called mx.5.1.com/mx_extensions/elements/b1b2b3b4txtbx1img1fldwnld1/file/mxservers.mx and upload it with the “⬇️” download icon)
That's all of the extensions!
You can also make your own extension by pressing the + icon to make a new extension with 5.1Script and tons of other programming languages.
Oh and I forgot to mention lol, you can also use other programming languages in 5.1Power Z1.
My imagined version of my scratch programming language may not be real but it's at least real in my heart
imagine if we got a game engine inside a game engine before GTA 6
honestly at this point if you release it then im gonna try to learn it and make GTA 6 in it
- playerPl47
-
Scratcher
5 posts
3D on scratch, And how it's professionally accomplished
Hello, I'm GL00B, and in this short explanation I'll provide you with one of the BEST explanations of 3D, in our beloved scratch. Read on!
INTRODUCTION
3D on scratch, or in general, has always been a controversial topic. we need to exactly define what “3D” we thrive to explain in this tutorial. Many projects tend to call themselves “3D”, But Are they? You see, if you dive deeper into this topic, EVERY 3D you see on your “2D” screen is just an illusion. even modern games, they are all 2D illusions that our brain is tricked into thinking that they're 3D. We are so used to 3D objects in real life that we just feel the depth in those 2D shapes that appear on the screen, making us feel like we indeed are looking at real 3D objects.
(long unnecessary quote removed by moderator - please don't spam)
That's all my friends, would hugely appreciate if you followed me and shared your opinions on the topic below, if you have any questions, I'll make sure to answer them, peace!
GL00B i bet very much, even with a PACKAGED turbowarp project, itll still be a little laggy for other non-powerful devices! so you should add occlusion culling! it will definetely optimize your engine! thanks for reading!
Last edited by cosmosaura (Today 03:09:24)
- _-ValX-_
-
Scratcher
500+ posts
3D on scratch, And how it's professionally accomplished
#534Please don't make big quotes like that, it uses a lot of space that is not needed
GL00B i bet very much, even with a PACKAGED turbowarp project, itll still be a little laggy for other non-powerful devices! so you should add occlusion culling! it will definetely optimize your engine! thanks for reading!
It's a really good suggestion tho ! I don't know if he already uses it in his 3D projects, but if not, he should definitely work on adding this

#536Today 09:09:17
- GL00B
-
Scratcher
87 posts
3D on scratch, And how it's professionally accomplished
It's actually better off without that delay, what works the best is:#519I've never thought of this before ! Well, I'll use the second option next time lol
quite right! however, the days since 2000s block doesn't work with pausing, so it can be a big problem if the project froze or a turbowarp user paused. however, it can be perfect for other use cases that synchronize the timer between them!when green flag clicked
forever
set [last timer v] to (timer)
wait (0) secs
set [fps v] to ((1) / ((timer) - (last timer)))
end
when green flag clicked
forever
broadcast [tick v]
end
when I receive [tick v]^ put your same code here without the delay, and that would work very well with a universal tick message
#537Today 11:49:57
- vengeanceforsylvania
-
Scratcher
4 posts
3D on scratch, And how it's professionally accomplished
can i use glue 3d for my yt channelwhat do you mean
- Discussion Forums
- » Advanced Topics
-
» 3D on scratch, And how it's professionally accomplished










