What does a Game Engine actually do?
ฝัง
- เผยแพร่เมื่อ 5 มิ.ย. 2024
- If you're interested in the math behind the first-person rendering algorithm, this tutorial was incredibly helpful: lodev.org/cgtutor/raycasting....
00:00 - Intro
00:46 - Basic Game
04:27 - More Mazes, Bigger Mazes
06:26 - Map List
07:56 - Non-linear Map List
11:10 - Colors
12:40 - Renderer
15:17 - Final Game - เกม
"YOU ARE PLAYING A POWERPOINT PRESENTATION"
"No, Excel actually."
Me quietly making a python game with no shell whatsoever, literally just making a dwarf fortress clone in the text engine not even to prove a point, just to ease myself into python
Frankly, the way they’re doing it here reminds me of the game, except instead of . I use #.
And they're excelling at it.
psh. we were making powerpoint games 20 years ago. excel is the NEW technology these days.
dat frame rate tho
Next video, Forcing Unreal Engine to be a Microsoft Excel Engine
I would be VERY surprised if that wasn't possible or even that difficult if you understand how to use URE
Starcel
@@anthonybice3531
Apparently that translates to "old man" from... (squints) Slo-ven-ian...
That would be very easy.
Analysing business finances using unreal engine
Now recreate DOOM in Excel.
Funny because this first person rendering is moreless how the original Doom works.
It's surprisingly close already
They've basically already (re)-created Wolfenstein 3D. DOOM runs fairly similar under the hood, just with the level upgraded from a tilemap to defined polygonal "rooms".
LOL 😂🎉
Aiit bet
i paused the video and did the maze 😔
It was hard until you got to a certain point.
BLASPHEMY!!
i didnt pause and did the maze 😎
I did the maze in 1 minute
Only took a few seconds, you just work backwards from your goal, which is why fog of war mazes are the way to go.
I was in the Army at 2005, we had variety of games purely made of Microsoft Excel.
I liked a turn based strategy game most.
thats amazing
Damn turns? thats nice. Also godamn impressive withthe sheer difference in tools excel had back then
@@frandurrieu6477
Excel was always the best office software in the microsoft library, no wonder every office around the globe uses it from beginner white coller to CEOs. Amazing
@@frandurrieu6477my uncle said they coded 2d tanks LAN pvp game in excel
What I was ready for: Making a basic maze game in Microsoft Excel
What I got: Making a basic maze game with RAYCASTING in Microsoft Excel
My Wolfenstein 3D loving heart was completely hooked.
At the point you start talking about rendering a 3D world I just kept going "Yes, now you're getting it" as you delved deeper and deeper into how the hell games are 3D, and why that's actually much harder to do than people think.
Next Step: Explaining a Graphics API...lol
it's hard but it's fun....kinda like opengl
finally someone who gets it (unironically i have two entire management sims, one for F1 and one for airlines, that I run through Google Sheets)
I'm curious how it looks like and how it works now lol
Could you give us any way of playing it? I would love to try it out
I'm curious too
Send the excel link 😍
WE WANT A VIDEO 😍
Render into a cache, then copy all cells once completed.
You'll skip the jarring background redraw and because you've done all of your calculations on the first pass, it'll make the draw faster.
Double buffering
i think you can switch between sheets with vba so you don't even need to copy the cells, you can just render to a different sheet then switch when it's done, then do that with the previous sheet and so on (which is funny given that's what almost all graphical software does)
Isn't that the same thing all other video game engines technically do
Technically not all as seen in this example 🤣. But I’d hazard a guess that it’s pretty common.
@@narrativeless404 not exactly, usually the "copy to the other buffer" bit doesn't happen - let's say we have two buffers, A and B
you start by displaying the contents of buffer B while you write the next frame to buffer A, and when you're done you start displaying the contents of buffer A while you write the next frame to buffer B
every time you swap, you're essentially displaying a new frame to the screen
I was content to call it a video game when you just had 1 simple maze done, but then you just kept going, absolute madness. I love it.
The slightly desperate tone of your voice throughout the video is just perfect lol
I could feel the descent into madness as the video progresses, incredible voiceover, instant subscribe
They are just trans and trying to do a more Fem voice
@@billykindell1695 her pronouns are she/her and you're degendering her.
0:07 [cries in Godot]
Frrrr
TRUEEEE 😭 People be sleeping on Godot
Roblox studio:
@@purplevanilla that isnt realy a game engine?
@@sminnty agreed
As a coder for 30 years, this is brilliant.
my favorite part of thsi video is that it doesn't even approach answering the question. 10/10, great work
Read the chapter marks again, and really note down what the video teaches you in terms of game engine functionality, and tell me it doesn't answer what a game engine is / does
@@dsdy1205yeah, definitely doesn’t help much
if you wanted to make it so you can't see the maze being drawn, you could draw it on another spreadsheet and copy it over once it has finished drawing
You just figured out how to implement vsync.
@@AaronMorrisTheSteamFoxmore like double buffering
@@moimoi9995i have no idea what those 2 are
I feel so sorry that you had spent THAT amount of time in VBA... But luckily, the TH-cam algorithm is going to reward you
yes lmao
But… my entire job is VBA? 🫢
wait, so it's bad that I wanna learn VBA?
@@VOgaming51official why do you hate yourself 😭
@@sohigh7433 I don't know...I also wanna learn assembly so...
seems to me like VBA is the game engine and excel is only the render pipeline. I would have expected huge sets of self referencing formulas to create a game loop that gets updated when pressing F9...
It's a similar relationship to that of C# and Unity. The main job of a game engine is rendering and a programming language is much better equipped for game logic.
Sadly VBA is going away soon in Excel, according to Microsoft.
honestly, the madness settled in by the time we got .
but i gasped when i realized you did a 3d render IN EXCEL . amazing work
Honestly, this is what they should be teaching to people, who seriously want to start programming games. Forget programming languages, before that, let's learn the concept by trying some stuff in Excel, software every programming enthusiast has come into contact with! This "fundamental flaw in the initial concept", as you put it, should be the core drive, motivation and passion for programmers. Forget the limitations we're under: Let's do the best we can with what we've been given! I applaud you for this masterpiece of a lecture!
This is an absolutely amazing video. REALLY didn't expect it to go to the direction of ray-casting, but it's always nice to see, as it's one of the coolest core principiles of game creation. It's insane how I, a person with zero coding or computational knowledge, understood ABSOLUTELY everything in this video. The script was extremely fun and engaging to follow too. Great job.
Bro won the youtube algorithm lottery.
And you deserved it with this cool project!
This brings back memories. Ages ago I took Intro to Programming and started to learn my first language, C++. By the end of the class, I had made several games using a library I found called n-curses. My best one was snake. Along with a survival mode, it had a campaign with 40 something levels. I had a map builder in excel to make adding levels a breeze.
We used n-curses to make Conway's Game of Life in my Systems Programming course using C
so that's what libncurses is
this video is phenomenal, i love the constant "... that was too easy, lets go deeper"
reminds me heavily of Ronnie-Onnie Edwards' style.
That was pretty cool ngl. not really into game developing, but i was thoroughly engaged. This needs more views
16:05 I don't see that as a problem since it now makes it look like a Spiritual Successor to "3D Monster Maze" since that game also allows playes to see each frame as it renders
But does it run doom?
That's basically what this is, lol. Just need guns and enemies
i was fully expecting the doom HUD to just be rendered on top of the maze as a static image lol
Technically wolfenstien renderer not doom since it’s tile based instead of bsp based
visual basic
Theoretically yes
This is absolutely brilliant, I don't think I've audibly gasped as loudly at a TH-cam video as I did when you projected the map into 3D. Subbed, can't wait to see your other stuff, you deserve all the recognition omg
What I love about this video is that it teaches
1. the very basic fundamentals of game design and
2. The power of using math and text in Excel.
This has a lot of potential for enhancing the functionality of AI tools, as SQL databases are extremely expensive.
However this video is proof that Microsoft Excel is free but robust enough to function as substittue for taking AI tools to the next level.
and that Math can be fun!
This video was fascinating and delightful.
There was something off about the "fundamental flaw with the initial concept" that made me think if it would be possible to optimize performance (through a reduction of horizontal or vertical resolution) using vector graphics, drawing features, or image insertion (like sprite based videogames), and that led me down a rabbit hole that led to a place called excelunusual that has blog posts about 2D and 3D graphics and animation!
So if you ever want to make a sequel to this wonderful video, that's probably a good place to do the research necessary to make this run well enough that you would be able to combine your raycasting mechanic to create a setup in which it would be possible to make pretty much anything that doesn't require a player to look up and down.
Personally I'd love to see that. This was delightful to watch😁
As a game dev I grinned the entire way through. Great stuff here.
i remember learning about the hidden dev 3d first person "game" easter egg in certain versions of excel
This is eldritch and fantastic and insanely impressive.
It's also incredibly well described in accessible language (mostly), this horrendous experiment is a *perfect* video. Well done, you should be proud.
i adore this video. this may be one of my favorites on the entire site. ive studied gamedevelopment mostly to get into the nitty gritty of the technology behind games, to see how they function in the basics. your explanation is spot on and your incredulousness during the entire process is amazing to hear. and then the implicit realisation all that modern games are, is actually just more complex and bigger versions of this excel thing. i love it so much.
that was a~maze~ing! very nicely done! looking forward to more :D
your narrative style is absolutely captivating!
This video is absolutely incredible writing.
I put this on intending to play a game to fill my hands but you held my attention the entire way through!
Thank you very much, I've seen other videos talk about it and I went in with an intuition of: "A game engine is a piece of software that can simulate and render a space, enabling the user to attach logic to that space and entities in it" but the writing, the music, the presentation and the preempting of my questions as you went through was perfect!
Thank you Ellie, and thank you Tatyana for the work that went into making such a tightly written video!
Excel game engine is crazy, GG ngl good job
And here I thought I was brilliant when I created a basic battleship spreadsheet, sent a copy to my coworker, and the two of us played through the company chat client throughout the day while we worked. Extremely well done; I audibly gasped when I saw the 3d render!
This is such a creative video. I love how you just went step by step to craft a game. That’s super cool
I instantly wondered how deep into this madness will you go.
You did not disappoint.
Love the organ music! Kinda fits the decent into madness.
You excelled my expectations
I see what u did there
I have seen people make many different games in Excel but I have never seen someone make such a complex game in it. The way you explained the whole process step-by-step really helped me understand the concept instead of getting bored. Great video! 👏
this video inspired me to pick back up working on my in-progress game engine in lua! thanks ellie
the third example should probably be godot...
Definition of a game engine a system in which you can use tools to create a game and then run the game on
Excel
This video is brilliant - looking forward to watching this channel grow
The comedic timing in this video is sooo good! Love it :D
Where can I download this?
A really good video
I just love your thought process. This makes helped me. Understand how to build a videogame much better than any masterclass
who else solved the hard maze without pausing the video?
I think a game engine is just a library that is useful for making games. This video does not directly answer the title but this is still a really cool video and really cool idea. Excel and Google sheets are epic.
Another question is if you think it needs to have an editor to be an engine. Because there's also those libraries for making games like XNA/FNA. They are kinda game engines but I like differentiating them by calling them game frameworks.
@@nooshstuff I was going to say the thing he'/s talking about is framework, actually framework is something we can load into a game engine to expand it, right?!?!?!?
Fantastic! Exciting to see what's next!
This is one of the best videos I've seen in a while. Really cool project but also really funny! Subscribed!
maybe it is just me being stoopid, but I think it would have been a good idea to show some code at the start, kind of just show how you make excel move the player cell and such. I think it is a vital part of the process and would make people understand better what you have actually done. Basically I think it would be better to show more of the process. But great video nonetheless, interested to see more of your projects.
Cool.
Now put an Dinosaur searching the player inside the Mazes and You just made an Horror game
Excellent video! Funny, good production value, great quality animations, and an interesting concept
This is the coolest thing ive seen this year. Genuinly
Okay, I understand that programmers may give non-helpful answers, but Google gives the exact same answer?!? XD
Dude. I’ve been wanting to do this for so long. I saw a video one day of someone building Doom in excel. I’m now one step closer. Thank you. Please. Please tell us how you coded this? I’m desperate.
I hope everyone understands just what this all represents in game development and how amazingly well it was presented. Thank you.
This is the most mad genius project I've seen unfold, thank you.
well it just means you didnt see much
Code Bullet recently made a video doing a similar thing with Microsoft Paint, and even the Windows File explorer. strange timing, but i’m not complaining. more game engines for me.
the thing is, code bullet used python scripts for the actual game, while ms paint and file explorer were essentially just the display. this video is different because it makes the actual entire game within excel
Me, who's already written snake in an excel spreadsheet:
"Damn, can't believe he's really using Excel as a game engine. What a Chad."
This is crazy, crazy I tell you, what a madlad. Subbed
This was incredibly impressive.
And informative too!
"Luckily, we can kill two birds with one more spreadsheet!"
Truer words have never been spoken.
I'm not a programmer or anything, (Though I have played around with python, C++, and excel quite a bit), so maybe take what I'm going to say with a pinch of salt but...
I would change it so you could only turn at full 90 degree angles, or maybe 45 degree angles, then I'd also make it so you can only move a full block at a time since it makes little sense to be able to walk less than that. Since you are only really getting like a little more than 1 frame per second it can get very disorienting/annoying being able to turn less than that. Would definitely make it more playable. Also with those ideas in mind it might be possible to optimize the rendering speed a bit more since with only like 1 or 2 actual angles you can look at and 1 set distance the blocks can be from the player, there's a much more limited amount of possible combinations that the blocks can show up as in the render. So you could probably pre-render all the possible angles and store those so excel only needs to look-up the values for the given combination. Reducing the amount of pixels would definitely help as well, since everything is just large blocks anyway. There might be better ways to improve it but this is what I can come up with.
Also yes I did solve the maze, took me like 15-20 seconds.
Making a map editor was actually such a genius approach. I was gonna say just ask chatgpt to generate you a vba script that makes a maze with a set width and height. I remember having to program a maze generator in C for learning recursions (this was over 2 years ago now so I have no idea how I did it, somehow I passed that class)
This was great. I taught myself VBA to make a program for my boss to render accurate models for his clients instead of drafting engineering diagrams that aren't as intuitive for laymen to read. It took a while, but since I got it working I've continued to add onto it and now we do most of our product planning from a spreadsheet.
Rather than just backfilling cells, I hide and unhide custom objects and move them around based on the cells and given dimensions. Each cell represents a quarter inch, so I just use basic multiplication to quadruple all the dimensions we're given.
I know there are better alternatives and that my code isn't efficient, but since it was all I had access to with no knowledge of writing code, I am still impressed by how capable Excel truly is. I was disappointed in your efforts to showcase that in this video UNTIL you began rendering 3D first person POV shots. Very well done!
Mfw you making autocad in excel
This can be considered also a product data management application
the voice.. oh god
Why is his voice so annoying
well, she's not a guy so that might be part of it. she just sounds like a regular gal to me.
This is brilliant. And enjoyably presented, too. Thank you!
The ray casting explanation is great
Why does your voice sound weird?
Your voice is too distracting.
Damn you got me with that pause thing. We're too predictable. Also, I expected this video and your channel to have way more views/subs. I suspect that it's only a matter of time if you're content continues to be this fucking good dude. I'm excited to see your next video!
This is a brilliant breakdown.
Why do you kinda talk like filthy frank
This became insanely more incredible than I thought it would be
what an absolute ride. my life has been changed.
I did a snake simulation in Excel about 20 years ago. Very simple at first. Move randomly forward. If there was food (an f and a F), the snake would grow. Was OK. Then I added "sight" and "smell". And the thing went like a seeker. Smell was just what seemed to be ahead in the 3 forward quadrants, and further than sight, which was the immediate cells ahead (centre, left and right). Been meaning to redo it ever since to add "learning". Started with it back then, but never completed it. Learning would be something along the lines of "last time I had to choose form 2 same results, moving (e.g.) left was best. It is amazing what you can do with Excel.
this is hands down one of the greatest fucking vidoes i have ever watched. masterclass in so many different aspects of designing and developing practically any software.
I don't mind seeing the frames render one at a time. I am annoyed that it draws top to bottom then left to right though. This was dope as hell.
This is such a good video, thank you for making it :D
Procedurally generated maps would be a nice touch
Definitely! Wouldn't be terribly difficult with a bit of ingenuity.
This is interesting from the perspective of someone who is old enough to remember Prodigy as one of the earliest consumer versions of the internet (which included pictures being displayed in layers when graphics were needed) and the original Doom as one of the first games to really handle 3D rendering in real time. Effectively, you recreated how they solved those problems. This is very cool simply because that is clearly the most effective and efficient way to handle things given the limitations.
This is also a perfect example of what game designers have to deal with in any game engine: knowing its the limitations and figuring out how to use its strengths to work around those limitations.
When I saw the "forcing Excel to be a game engine" I laughed at the absurdity of it. I am impressed by how well this worked. I am... concerned for Excel and I hope it can recover its fried braincells anytime soon. All-in-all, funny video, job well done, would wanna try for myself.
This was super cool! When you talked about doing a first person view I thought you might be doing an "Eye of the Beholder" style psudo 3D sort of thing but you really went all out.
14:44 A slightly more in depth explanation: The distance to the wall determines how tall the wall is drawn in that column with closer walls drawn taller and further walls drawn shorter. The color is determined by the direction the wall faces with north/south walls drawn with light green and east/west walls drawn in dark green.
Does whether light or dark green is used for a particular face also depend on player orientation?
As someone who uses Excel on a daily basis, i applaud both your dedication and your bravery
This is absolutely beautiful! Oh my lord I want to make roguelikes in excel now!
dude. that was literally amazing
Brilliant. This is such goofy fun and imaginative use of a seemingly inappropriate technology, that it sparks actual joy. Amazing.
back in 2007 there was an excel sheet that could play sonic 1&2, doom and Wolfenstein that we played in comp lab. What a time to be alive.
Loved this video. Thank you!
I knew what you were going for because I saw how Ray casting worked, I'm just floored that Excel can do it. I just fricken LOVE Excel.
love the music, great job
Incredible madness. Two thumbs up :D