So I Made My Own Game Engine...

  Рет қаралды 82,341

Chadderbox

Chadderbox

Күн бұрын

//Description:
I've always wanted to make my own game engine, so I did it.
This video has been in the works for about 9 months, I've just been a bit busy.
I do intend on updating the engine at some point in the future, it could be quite cool when that is done.
//Links:
Engine: github.com/Ceebox/cbEngine
LearnOpenGL: learnopengl.com/
Propulsion: bit.ly/PropulsionSteam
Discord Server: bit.ly/ChadderboxDiscord
//Other videos you might like:
• I Made My Own Game Engine
• Making a C++ Game with...
• C++ Developer Learns P...
//Timestamps:
0:00 Intro
1:29 Graphics
4:43 Improvements
7:00 Making it work
8:18 Input
8:49 Making a game
9:20 Outro
#chadderbox

Пікірлер: 259
@nofalldamage
@nofalldamage Жыл бұрын
Sets up OpenGL for communication with GPU, proceeds to do all pixel calculations on the CPU and use the GPU as a pass through. Jokes aside, nice work 👍 I think its really creative to use the texture buffer like this and given that its low rez the performance isn't really needed anyway.
@nofalldamage
@nofalldamage 6 ай бұрын
Normally, the GPU receives an input like triangles of a mesh and produce pixel colors from that. That is a lot of work depending on how complicated the mesh is. In this case the GPU is given a texture with all colors already set. The only thing the GPU has to do is pass it on to the screen. This is a whaste of the GPUs power but given the pixel nature of the engine I don't think that power is needed yet.
@TheExtremeCube
@TheExtremeCube Жыл бұрын
Just a little correction, OpenGL doesn't handle your input, that's GLFW, which is the framework that creates the OpenGL context and Window, OpenGL is just for rendering. Awesome stuff though
@Brahvim
@Brahvim Жыл бұрын
_I was looking for this comment._
@moosethegoose8581
@moosethegoose8581 Жыл бұрын
All i have to say: 🤓
@Brahvim
@Brahvim Жыл бұрын
@@moosethegoose8581 For some people, this doesn't matter. However, as somebody into game engines, I immediately, uhh, 😅 """felt offended""" when he stated that OpenGL does the windowing work 😂
@Chadderbox
@Chadderbox Жыл бұрын
To clarify, I did initially have a section discussing this in the video, but it was super boring so I cut it out.
@anon1963
@anon1963 Жыл бұрын
@@moosethegoose8581 nah
@m4rt_
@m4rt_ Жыл бұрын
there are lots of good reasons for making your own engine. - for fun - avoiding bloat - making it only have what you need - performance - having it support niece features you want - it is your own (you won't have to pay anyone else for using it, since it is your own) - getting better at programming (when you use something like unity you learn how to make something using unity, but when you make a game engine you begin to learn how to make a game by yourself, so you get better at programming, and in case unity ever goes away, you can continue making games without it) and more that I don't remember atm. A portion of a Jonathan Blow talk on this: kzfaq.info/get/bejne/ibWkq82AsdnYYp8.html Another portion of a Jonathan Blow talk: kzfaq.info/get/bejne/mbJmqc-mzcyvp2w.html
@danielllanes5298
@danielllanes5298 5 ай бұрын
i love niece features
@tapthelvete
@tapthelvete 4 ай бұрын
@@danielllanes5298 🤣
@yiit9914
@yiit9914 4 ай бұрын
you can actually sell it.
@pbthroggy
@pbthroggy 27 күн бұрын
My game engine only supports nephew features. Should I divert some time to adding niece ones too?
@Komanturne
@Komanturne Жыл бұрын
Dude, I don’t think I could ever do this. This is genuinely one of the better things I’ve seen.
@Chadderbox
@Chadderbox Жыл бұрын
Nah you could do this. Just a bit of Googling and a tiny bit of prior knowledge and you'll be on your way.
@scottcurrall
@scottcurrall Жыл бұрын
this was honestly one of the chadderbox videos of all time
@Chadderbox
@Chadderbox Жыл бұрын
Actually though
@jacobkidd
@jacobkidd Жыл бұрын
Couldn't agree more
@thisgamedev
@thisgamedev Жыл бұрын
Wow this is impressive. I have always wanted to do this, but never understood how to. Great video dude! Amazing job 😊
@Chadderbox
@Chadderbox Жыл бұрын
Do it
@KaidenBird
@KaidenBird Жыл бұрын
This was great! How much torture would it be to create bindings for something like Haskell or COBOL lmao
@Chadderbox
@Chadderbox Жыл бұрын
It might be possible, I've never used either so I've got no idea but it could be fun.
@rallokkcaz
@rallokkcaz Жыл бұрын
CHAD stack AAA game
@KaidenBird
@KaidenBird Жыл бұрын
@@rallokkcaz Hello fellow primeagen viewer lol
@thephoenixsystem6765
@thephoenixsystem6765 Жыл бұрын
@@KaidenBird Love these callouts haha
@origamitraveler7425
@origamitraveler7425 Жыл бұрын
comparing Haskell to COBOL should be a crime punishable by death
@Ozzymand
@Ozzymand Жыл бұрын
Insanely well timed video. I was thinking of making a game engine just to swap the engine of another game. Hopefully I can learn something from this!!
@samuelyigzaw
@samuelyigzaw Жыл бұрын
Whoaaa, this video has so many coincidences with me it's crazy. Everything from your thought process choosing learning OpenGL, the tutorial you used, the idea for a game engine that would run in the shader code instead of in the cpu code. All the same. My idea was inspired by Noita, trying to see if a game like it could be optimized further by runing it's pixel simulations on the gpu. It might be use a cellular automaton to define the physics too, and the double buffering in the rendering pipeline is also coincidentally necessary for the cellular automaton to be stable. It was so perfect. But I never got past the point where you ended, i.e. the texture page. I know that's probably all I need, but now I'm procrastinating haha. Maybe your project will give me the push I need.
@guitarman256
@guitarman256 6 ай бұрын
I genuinely laughed out loud when you mentioned pipelining. It had approximately 0 effect on the speed of that loop. That was 100% due to making a O(1) algorithm into a polynomial.
@RobLang
@RobLang Жыл бұрын
Superb video. I do think you're quite, quite mad for building your own but there were great lessons in there - especially about performance. I'd probably use Rust for low level. Tantan has had some good experience with wrappers for opengl.
@Chadderbox
@Chadderbox Жыл бұрын
Rust is an excellent shout, and I love Tantan videos. I've made a small project in Rust before but then forgot the interesting bits about how I made it before I made a video. I might have to give it another look. Thanks Rob 👍
@noxagonal
@noxagonal Жыл бұрын
This is neat, and a good learning experience for sure. I've been doodling with Vulkan for a few years now. It's really REALLY good, but it's also a ton of work. I've been building my own general purpose game engine for a year now. I'm still working on the basic core fundamentals of it. I wanted to make my own reflection system so I'm writing my own C++ parser... I'm still at it. It's been pretty fun so far though.
@Chadderbox
@Chadderbox Жыл бұрын
Very cool!
@Skeffles
@Skeffles 10 ай бұрын
Cool to see you take on your own framework! Great video
@Brianwiz
@Brianwiz Жыл бұрын
This is such a cool concept and you explained it in a way that was both interesting and understandable. Subscribed!
@Chadderbox
@Chadderbox Жыл бұрын
Awesome, thank you! Glad you liked it :)
@lilboiUK
@lilboiUK 11 ай бұрын
This is a fantastic video, nice work! I made a game engine using the opengl wrapper opentk so I could use c#. Trying to create a game engine gives you so much insight into how most game engines work and is great for learning new programming concepts.
@Stondonk
@Stondonk Жыл бұрын
finally the long 10 month wait is over, the only classic game dev youtuber to not die in the nuclear blast or something I mean they all just disappeared, in some cases that was for the better tho *cough *cough Barji, There is some kind of conspiracy I tell you.
@Chadderbox
@Chadderbox Жыл бұрын
What happens if I engineered the nuclear blast? I was actually off for 10 months to assassinate everyone.
@rosepark222
@rosepark222 8 ай бұрын
This is great, explained what the engine does without fancy frills.
@bl4ckk
@bl4ckk Жыл бұрын
NEW CHADDERBOX!!!
@deino4753
@deino4753 8 ай бұрын
I feel like there is another good reason now to make a game engine...
@agustinpatino8338
@agustinpatino8338 7 ай бұрын
For unity?
@randcoding
@randcoding Жыл бұрын
You finally came back!! (Cool video btw)
@Chadderbox
@Chadderbox Жыл бұрын
Thanks!
@marcoesbach1702
@marcoesbach1702 8 ай бұрын
I can think of a couple of reasons to make a game engine now.
@John223
@John223 Жыл бұрын
you could add lua bindings. You can already use lua code in C and viceversa, so it shouldn't be hard, and the pool of reserved keywords is quite small
@Chadderbox
@Chadderbox Жыл бұрын
I'm not a fan of Lua but this could be fun, I could finally make a game in Lua.
@tboireconciliation5610
@tboireconciliation5610 Жыл бұрын
@@Chadderbox May I ask why you don’t like lua? It’s fast, easy to learn, very readable, and has easy C/C++ integration built-in. It kinda just seems like the perfect tool for the job in this situation.
@Twingamerdudes
@Twingamerdudes Жыл бұрын
This is pretty cool! Much better than what I've done lol.
@Chadderbox
@Chadderbox Жыл бұрын
You've got to do something cooler and show me now!
@nickgennady
@nickgennady Жыл бұрын
Using function pointers for user to specify there start, update and finish is the correct way so good job. It allows user not to worry about going into your engine code. Only thing bad about your engine is there no audio.
@Chadderbox
@Chadderbox Жыл бұрын
I can't lie, I completely forgot to add audio. Coming soon? Maybe?
@nickgennady
@nickgennady Жыл бұрын
@@Chadderbox I don't got audio yet in my engine as well lol.
@smokedice
@smokedice 11 ай бұрын
This is pretty awesome! I feel like that this could be made pretty well with SDL2 instead of OpenGL, it’s really lightweight and handles everything, like windows, rendering, input, sound, you name it!
@Chadderbox
@Chadderbox 11 ай бұрын
Yeah SDL would be so much better, but part of the challenge was using OpenGL :)
@smokedice
@smokedice 11 ай бұрын
@@Chadderbox ooohhh Man, you really hate yourself, don’t you? 😂 Unless you used GLFW lol (You prob did, I just forgot)
@Chadderbox
@Chadderbox 11 ай бұрын
I used GLFW, so I don't hate myself too much.
@pvini07BR
@pvini07BR Жыл бұрын
1:51 correction: these are not graphics frameworks, these are graphics API's. graphics frameworks are the high level, abstracted stuff that you use to render stuff on screen, which then a graphics API is used for that job. also, did you ever check on the godot engine?
@Chadderbox
@Chadderbox Жыл бұрын
I'm not a fan of Godot's workflow :)
@pvini07BR
@pvini07BR Жыл бұрын
@@Chadderbox why?
@GamesBySaul
@GamesBySaul Жыл бұрын
Goodness your brain is big, unlike my smooth one. Some impressive stuff being done here mate! :D
@Chadderbox
@Chadderbox Жыл бұрын
I've played your multiplayer game, you are much smarter than me :)
@GamesBySaul
@GamesBySaul Жыл бұрын
@@Chadderbox disagree! Don't make me challenge you and prove that you're smarter
@torphedo6286
@torphedo6286 Жыл бұрын
I think since you're just rendering a texture to the window, you could probably drop OpenGL entirely and do software rendering with something like GLFW. I'm not sure how well that would work with scaling...but that would allow it to run entirely on the CPU
@Radgerayden-ist
@Radgerayden-ist Жыл бұрын
GLFW doesn't allow you to write to the window buffer without going through the GPU. SDL does have something like that, though.
@torphedo6286
@torphedo6286 Жыл бұрын
@@Radgerayden-ist ooh, interesting.
@m4rt_
@m4rt_ Жыл бұрын
0:20 if you want a bigger challenge, do it in C, or worse x86 assembly
@Chadderbox
@Chadderbox Жыл бұрын
I've been trying to make a game in Assembly for ages, it's super hard!
@jacobkidd
@jacobkidd Жыл бұрын
Trust the boxman to release a banger like this fr.
@Chadderbox
@Chadderbox Жыл бұрын
It only took the boxman 9 months :despair:
@notarandom7
@notarandom7 Жыл бұрын
Chadderbox is the perfect example to why you should learn about GLSL and Fragment Shaders!
@Chadderbox
@Chadderbox Жыл бұрын
This project has a tiny bit of GLSL in l, just to get basic rendering working.
@notarandom7
@notarandom7 Жыл бұрын
@@Chadderbox it would give it a huge performance boost tho
@unendlicherping318
@unendlicherping318 Жыл бұрын
@@Chadderbox If you would have read until the matrix multiplication part your engine would probably perform way better.
@valdemar_check4875
@valdemar_check4875 Жыл бұрын
By the way if you are using vscode what is your theme? I really love how
@Chadderbox
@Chadderbox Жыл бұрын
Monokai Vibrant Amped theme and Cascadia Code font. The font does the fancy text stuff. :)
@anon1963
@anon1963 Жыл бұрын
the
@samdavepollard
@samdavepollard Жыл бұрын
"if i went much lower level i'd be making my own graphics card" - LOL very nice work
@FileFN3
@FileFN3 Жыл бұрын
“What did you do over the weekend “ “I made a game engine”
@immortalroasterben7146
@immortalroasterben7146 8 ай бұрын
Dude really said programming using pointers in cpp makes life easier. I use pointers on daily basis I still don't understand them fully. What a Chad.
@ikerschroeder3336
@ikerschroeder3336 Жыл бұрын
"General Kenobi! You are a bold one." Shouldn't I answer this to the intro?
@SuuooberCuber
@SuuooberCuber Жыл бұрын
I’m really struggling to find an easy to install game library that works on VS code do you have a good library or a good ide for c++?
@Chadderbox
@Chadderbox Жыл бұрын
Raylib is a fun library for C++, not too hard to install and use with VSCode, look for a tutorial for it.
@SuuooberCuber
@SuuooberCuber Жыл бұрын
@@Chadderbox ok thanks
@stysner4580
@stysner4580 Ай бұрын
That double for loop with an if statement was not your problem. Compiling it with -O3 would've increased the performance of it insanely. Also, your renderer was one way. No need to get pixels back from opengl. Just use you cached array?!
@potarto-man
@potarto-man 19 күн бұрын
What editor theme are you using, it looks really nice :)
@Chadderbox
@Chadderbox 17 күн бұрын
Thanks! It is Monokai Vibrant Amped for VSCode - you might recognize the creator of the theme ;)
@JasonTubeOffical
@JasonTubeOffical Жыл бұрын
I'm making a basic 3d game using Modern OpenGL and its making me literally cry but it's rewarding.
@noxagonal
@noxagonal Жыл бұрын
Remember to enjoy and cherish your own accomplishments, it'll help you get through. :)
@masaltzero
@masaltzero Жыл бұрын
this is awesome
@Cakequester
@Cakequester Ай бұрын
It's not cheating, it's keeping your will to live
@gamingpcgamer459
@gamingpcgamer459 4 ай бұрын
Hey, I don’t know if you still respond to comments on this video but can you tell what app did you use to code. Did you use VS code or something else? And if you did, how’d you set it up?
@Chadderbox
@Chadderbox 4 ай бұрын
This was in VSCode, I followed a video to set it up but unfortunately that video is no longer available. I'm sure if you look it up on KZfaq then you'll find something. It is basically just setting up MinGW on windows and that is it.
@0xfadead
@0xfadead Жыл бұрын
Real programmers program their own OS to make games. :D
@Chadderbox
@Chadderbox Жыл бұрын
Is that a challenge? 😉
@0xfadead
@0xfadead Жыл бұрын
@@Chadderbox I mean JDH already did it, but unless you wanna torture yourself with x86 16bit asm and try to figure out ancient interrupts, I can't really recommend it.
@AugustCoder
@AugustCoder Жыл бұрын
Having done both. This is true. NO DON'T DO IT YOU'LL SPEND YEARS WRITING YOUR OS AND END UP WITH A MOUSE CURSOR ON A GREEN SCREEN THAT DOES NOTHING AND ESPECIALLY DOESN'T PLAY YOUR GAME EXCEPT FOR THAT ONE TEXT ADVENTURE GAME YOU WROTE FOR YOUR OS BUT SUBSEQUENTLY BROKE WHEN YOU ADDED IPC SUPPORT! I mean, it's fun.
@0xfadead
@0xfadead Жыл бұрын
@@AugustCoder Yeah, I'm currently trying to make 3d game in an os. It would maybe be less painful, if I didn't wanted to do it "the ol' way" and just used UEFI like a normal person.
@omiorahman6283
@omiorahman6283 7 ай бұрын
Temple os?
@slendi9623
@slendi9623 Жыл бұрын
Welcome back!
@slendi9623
@slendi9623 Жыл бұрын
Next up: directly writing to a framebuffer
@Chadderbox
@Chadderbox Жыл бұрын
Building my own processor to run my own programming language with my own game engine
@Stondonk
@Stondonk Жыл бұрын
@@Chadderbox sounding very How you say.... jdh like, if you will
@nathanrey
@nathanrey Жыл бұрын
actually something that has a lot of potential for schools
@nathanrey
@nathanrey Жыл бұрын
id like to take a look at it when it is finished for my IT classes
@moritz2046
@moritz2046 Жыл бұрын
3:40 but if ur just using a texutre then why dont just do it in unity?
@Will-Eves
@Will-Eves 11 ай бұрын
i definitely had to use learn opengl to make my game engine
@CodeDibertzStride
@CodeDibertzStride 7 ай бұрын
Great info. I just want to know how to create a Lumen system like UE5. The day when someone discovers it will be revolution, because is needed for the open source world.
@Chadderbox
@Chadderbox 7 ай бұрын
UE5 is open source?
@CodeDibertzStride
@CodeDibertzStride 7 ай бұрын
I don't know buddy.@@Chadderbox
@mostrealtutu
@mostrealtutu 7 ай бұрын
the speed myth is still a myth. opengl is not slower than the other two. and it saddens me that all sorts of people who started making engines believe that : (
@chrisxdeboy
@chrisxdeboy 6 ай бұрын
For a programming language, maybe Squirrel or forth or tinyscheme. Something tiny.
@pagwin5308
@pagwin5308 Жыл бұрын
7:40 gonna "umm actually" this and say that in the code you gave you're using references, not pointers, also in C++ you can use std::function instead of a reference or pointer to accept a function as an argument just so you know
@itsmenotjames
@itsmenotjames Жыл бұрын
u can make it so it only renders a pixel if it is different from the pixel at that xyz coord one frame ago!
@Chadderbox
@Chadderbox Жыл бұрын
That is a good idea, it is in the queue for when I get round to updating this stuff
@prestongarvey9324
@prestongarvey9324 Жыл бұрын
OH MY GOD NEW CHADDERBOX VIDEO!!!!!!!!!!!!!!!!!!!!!!!!!! I cant believe it. HOLY SHIT. NO WAY UOGHSBOUIDBVIPSBDVYUIBS!!!!???
@Chadderbox
@Chadderbox Жыл бұрын
JDIHDHOEHSHSHHDHSHRHJMMFNNFMMMMM
@orbyfied
@orbyfied Жыл бұрын
lit
@spacefishaviation276
@spacefishaviation276 Жыл бұрын
Been SO LONG omg
@Chadderbox
@Chadderbox Жыл бұрын
Yeah it's been a while
@samdcruez2286
@samdcruez2286 9 ай бұрын
are there any good tutorial for making a Game Engine?
@Chadderbox
@Chadderbox 9 ай бұрын
Don't do what I did. Check out The Cherno.
@dasheiligedonerhuhn
@dasheiligedonerhuhn Жыл бұрын
Please port this to arnoldc. ArnoldC doesnt support inputs pixel based rendering and libraries, but port it anyway.
@Chadderbox
@Chadderbox Жыл бұрын
IT'S SHOWTIME TALK TO THE HAND "Chadderbox says that doing that sounds difficult" YOU HAVE BEEN TERMINATED
@nangld
@nangld 2 ай бұрын
O(N) set_pixel routine wins you an award!
@profsnowleopard5326
@profsnowleopard5326 5 ай бұрын
Look at this internet micro-celebrity :0 This is mad stuff, I can barely use Godot for game making stuff, you're light years ahead mate lol
@Chadderbox
@Chadderbox 5 ай бұрын
Ayy, not heard from you in a while, are you doing good?
@profsnowleopard5326
@profsnowleopard5326 5 ай бұрын
@@Chadderbox yeah man I'm pretty well, (minus being an adult😮‍💨) how about you?
@Chadderbox
@Chadderbox 5 ай бұрын
@@profsnowleopard5326 Pretty good, working as a software developer. Adult stuff 😮‍💨. Good luck!
@profsnowleopard5326
@profsnowleopard5326 5 ай бұрын
@@Chadderbox yo that's pretty cool - you wanna chat sometime? about game dev or otherwise :)
@Chadderbox
@Chadderbox 5 ай бұрын
Sure, my discord is chadderboxdev
@tastyl2356
@tastyl2356 Жыл бұрын
i think creating bindings for intercal would fit the engine
@Chadderbox
@Chadderbox Жыл бұрын
Wow I've certainly never heard of that programing language, will have to look it up.
@pinkavyek
@pinkavyek 9 күн бұрын
i mean, still impressive tbh
@NickEnchev
@NickEnchev 9 ай бұрын
OpenGL definitely doesn't perform worse than DirectX, in fact you could even get VK or DX12 like performance out of it if you know what you're doing. These "frameworks" are actually graphics APIs that send commands to the GPU, period. The performance you get is almost entirely dependent on your engine design/subsystems, draw call optimizations, etc.
@thephoenixsystem6765
@thephoenixsystem6765 Жыл бұрын
Python. I was making a CLI chess implementation in Python yesterday, now you've inspired me to try to make a graphical board in 64*64 pixels. Hardest part might be designing readable sprites to fit within the checkboard lol
@Chadderbox
@Chadderbox Жыл бұрын
Yeah it might be hard to read like that. 256x256 would be lots easier.
@osq8118
@osq8118 Жыл бұрын
That pixelndex calculation is wrong and works only because you have square window. It should be: ((y * windowWidth) + x) * 3 also the bounds checking should not allow x or y to be the width or height respectively.
@Chadderbox
@Chadderbox Жыл бұрын
Oop, looks like I'm stupid (who would have guessed). Thanks!
@hilligans1
@hilligans1 Жыл бұрын
Vulkan time!
@bernardev3
@bernardev3 Жыл бұрын
What if you make a game using the Win32 API and C?
@Chadderbox
@Chadderbox Жыл бұрын
I was tempted, but I had already started with this after I realised I could.
@bernardev3
@bernardev3 Жыл бұрын
@@Chadderbox WTF!? THE MAN ITSELF REPLIED ME!? OMG
@EnriquePage91
@EnriquePage91 Жыл бұрын
OPEN GL: the true dog Direct X: Microsoft’s “implementation” of OGL, but it is NO LONGER A STATE MACHINE (open gl IS). Vukan: literally open GL 2023. At the end of the day, they all literally evolved from Open GL. 🙃
@shadamethyst1258
@shadamethyst1258 Жыл бұрын
I'm curious to know why you chose C++ of all the languages to make a game engine in
@Chadderbox
@Chadderbox Жыл бұрын
I just wanted to tbh. Most people using OpenGL use C++, generally speaking. I have seen bindings for other languages.
@unendlicherping318
@unendlicherping318 Жыл бұрын
C++ is very performant and has some useful abstractions over C or assembly like OOP which becomes very handy for Engine Development later on. But it's a memory unsafe language so you should use rust btw.
@matheusmarchetti628
@matheusmarchetti628 Жыл бұрын
​@@unendlicherping318 it's only unsafe if you do a bad job. C++ is designed to give the programmer almost full control of low level memory management
@nick15684
@nick15684 Жыл бұрын
Kind of a weird and loaded question to ask, considering most game engines are made in C++, literally every major game engine is written in C++ (Unity, Unreal, Godot, etc). What was he gonna write it in, Python? Sure, if you want very weak performance, by all means. But you're not gonna get hundreds or even thousands of frames per second like you can with C++. It's a compiled language and creates a native binary executable for the system it's on. Really the only logical option.
@shadamethyst1258
@shadamethyst1258 Жыл бұрын
@@nick15684 Rust nowadays is seen as a compelling alternative for C++, it has a lot of the features that C++ has, but without the fear of breaking things with manual memory management
@pointthink
@pointthink Жыл бұрын
If you're going to just manually put every pixel into a texture you should just use software rendering
@Chadderbox
@Chadderbox Жыл бұрын
That's basically what it is, since every pixel is basically managed by the CPU. I'm only using OpenGL to display.
@agusprayogi6040
@agusprayogi6040 4 ай бұрын
nice
@ego-lay_atman-bay
@ego-lay_atman-bay Жыл бұрын
You should port it to python, even though pygame is a much better library.
@Zharkan16
@Zharkan16 7 ай бұрын
You should take a hourly payment for using your game engine, where the cheapest option is 50$
@rizzisunbreakable
@rizzisunbreakable Жыл бұрын
He back
@Slink1
@Slink1 11 ай бұрын
Good, now write it in Nim.
@spenceabeen
@spenceabeen Жыл бұрын
Gonk :]
@Wojtek_1777
@Wojtek_1777 2 ай бұрын
POV better dani:
@ektorthebigbro
@ektorthebigbro Жыл бұрын
next time actually learn how to use shaders and how to use them to run stuff on the gpu because now it is like doing all the rendering using the cpu which is not good at all
@Chadderbox
@Chadderbox Жыл бұрын
Yep, I did say this method was bad :)
@airbus5717
@airbus5717 Жыл бұрын
try odin instead of C++ it is way simpler and has libs ready
@jvdashes322
@jvdashes322 Жыл бұрын
i think `Lua` can be a good langauge to use
@doce3609
@doce3609 Жыл бұрын
How about making bindings for Rust?!
@Chadderbox
@Chadderbox Жыл бұрын
Rust is super cool, it should be easier once I update the library.
@unendlicherping318
@unendlicherping318 Жыл бұрын
Why even bother with c++ if you can just rewrite the whole thing in rust?
@shadamethyst1258
@shadamethyst1258 Жыл бұрын
Yeah I didn't really understand the decision to make the game engine in C++
@unendlicherping318
@unendlicherping318 Жыл бұрын
@@shadamethyst1258 My brain can not comprehend how someone who knows rust is able to choose c++ for his projects.
@randospawn7495
@randospawn7495 9 ай бұрын
Assembly lol just cause (I am curious if it can do much)
@OkOkOkIMightKnowYou
@OkOkOkIMightKnowYou Жыл бұрын
bro called glfw opengl...
@Chadderbox
@Chadderbox Жыл бұрын
Bro used the most commonly used OpenGL api while trying to keep the video short and accessible 😁
@wijiler5834
@wijiler5834 Жыл бұрын
Glfw is the library/api to create windows and create OpenGL contexts in those windows ,by default glfw imports OpenGL(or Vulkan if #define GLFW_INCLUDE_VULKAN is written in the file) which means he did indeed have to use OpenGL, just because there isn't any shaders or anything doesn't mean he didn't use OpenGL,He. literally talked about an OpenGL FUNCTION he used. So why do you Mr. Zuckerberg feel the need to chime in on his work even though you most likely have never written a single c library in your life. What has he done to you to make you angry? Do something different than usual?
@OkOkOkIMightKnowYou
@OkOkOkIMightKnowYou Жыл бұрын
@@Chadderbox that comment was just nit-picking, I probably typed it cause I was bored. It was a good video. Is it ok to contribute to the repo?
@Chadderbox
@Chadderbox Жыл бұрын
I understand, I'd probably recommend forking the repo if you want to do anything since I'd rather do everything myself for this project as a learning experience.
@wijiler5834
@wijiler5834 Жыл бұрын
@@OkOkOkIMightKnowYoumy bad then mr zuck
@ziphy_6471
@ziphy_6471 10 күн бұрын
My stupidity outweighs yours
@PossiblyAxolotl
@PossiblyAxolotl Жыл бұрын
you should make it work with lisp
@Chadderbox
@Chadderbox Жыл бұрын
Oooh I've never used Lisp, might be cool :)
@PossiblyAxolotl
@PossiblyAxolotl Жыл бұрын
@@Chadderbox languages like lisp are really interesting, I’ve tried one for a framework called cel7 which was pretty fun but insanely confusing cause of the formatting lol
@zeropointzer0
@zeropointzer0 Жыл бұрын
(That(would(be an(awesome(idea)))))(!)
@krakulandia
@krakulandia Жыл бұрын
You could have just used SDL2 and you'd be drawing pixels in software in no time.
@witha1
@witha1 Жыл бұрын
sdl2 always got my back o7
@felipelopes3171
@felipelopes3171 9 ай бұрын
Well, your video is already quite old, so maybe you already figured these things out by yourself, but it looks like you don't quite understand the purpose of OpenGL. You're not supposed to send an array of pixels as a texture and have it render there. The whole point of OpenGL is that you send to it primitive shapes and then it figures out by itself how the pixels should be. It can do this much faster than CPU code, because it runs on the graphics card. If you already know how the pixels should be, then you did all the rendering in the CPU, and you don't need OpenGL. What you're doing is rendering everything in the CPU, sending all the stuff to the graphics card, which puts them on the screen without doing anything. It would be more straightforward, faster, and give you code with less dependencies if you just opened a pixmap to your OS display server and transfered the pixels there. In Linux Xlib does this, I don't know about Windows, but pretty much any GUI toolkit should have a way to open a pixmap.
@Chadderbox
@Chadderbox 9 ай бұрын
I always understood that you weren't supposed to do it like this. I just did it anyway because I could. ¯\_(ツ)_/¯
@thecompanioncube990
@thecompanioncube990 Жыл бұрын
You should make bindings for C#
@cheerwizard21
@cheerwizard21 Жыл бұрын
Why not just using other engine or game frameworks that already exists for making 2d pixelated games? Godot or Cocos2d for example? Well if your final goal is to enjoy tech development like graphics programming or making 2D physics engine from scratch - it's totally fine. But if your goal is to focus more on specific gameplay systems, story, characters, then it should be smarter to just use existing tech in order to improve your professional skills as an actual gamedev.
@Chadderbox
@Chadderbox Жыл бұрын
It was just to learn stuff, yeah.
@coffee-is-power
@coffee-is-power Жыл бұрын
make rust bindings
@bananacraft69
@bananacraft69 Жыл бұрын
Sound?
@Chadderbox
@Chadderbox Жыл бұрын
I forgor 💀
@TrentSterling
@TrentSterling Жыл бұрын
Wait.... what about audio?!
@Chadderbox
@Chadderbox Жыл бұрын
What did you say? I CAN'T HEAR YOU! In all seriousness, I completely forgot about audio.
@GoobNoob
@GoobNoob Жыл бұрын
20k views 4 days ago
@ROMERO2280
@ROMERO2280 Жыл бұрын
*Good afternoon. I'm from Donetsk. And so, he made a game engine in C ++, given that he fully learned to be a programmer WITHOUT PROBLEMS. I am very jealous and will immediately move to the UK. In order to learn my specialty, start a new life, and forget about this 10-year war in Ukraine.* *I am very sad. I was not destined to be in this country, where there has been a war in Ukraine for 9 years.*
@Chadderbox
@Chadderbox Жыл бұрын
I'm also very sad for you :( I was with some Ukranian kids at my school who had to move, I can't even imagine it. Hopefully things will be better soon.
@BumpDev
@BumpDev Жыл бұрын
Bread.
@Chadderbox
@Chadderbox Жыл бұрын
Bread is a good food
@BumpDev
@BumpDev Жыл бұрын
@@Chadderbox if you were to describe bread and how it has impacted the world, the climate, as well as the production of solar pannels in an essay, how would you do it?
@CC-1.
@CC-1. Жыл бұрын
I am making a 4D game engine do you Wana colab
@Chadderbox
@Chadderbox Жыл бұрын
I'd love to see it.
@CC-1.
@CC-1. Жыл бұрын
@@Chadderbox OK tell communication scr
@BobbeDev
@BobbeDev Жыл бұрын
Haha yeah I’m stupid too :)
@Chadderbox
@Chadderbox Жыл бұрын
Smart enough to admit it
@jager356
@jager356 5 ай бұрын
Is a unity easyer then a own engine yes Is it better no
@KJ7JHN
@KJ7JHN 2 ай бұрын
Less self doubt and bad criticism please.
@Chadderbox
@Chadderbox 2 ай бұрын
After a few months actually programming, the self doubt and criticism was deserved 🙏
@halfbakedproductions7887
@halfbakedproductions7887 9 ай бұрын
I'm also not very bright, but lots of people much smarter than me have all said Vulkan is basically horrible. And who am I to disagree with them. However, OpenGL is really just a graphics library whereas DirectX does a bit of everything. Oh and I think this engine needs ported to Brainfuck and also F#. As a stretch goal... VBA. Chop chop.
@Chadderbox
@Chadderbox 9 ай бұрын
I'm doing something in VB at the moment and I wouldn't wish it on anyone haha
So you want to make a Game Engine!? (WATCH THIS before you start)
14:39
Giant Sloth Games
Рет қаралды 244 М.
So I Made My Own Programming Language...
11:36
Chadderbox
Рет қаралды 78 М.
顔面水槽がブサイク過ぎるwwwww
00:58
はじめしゃちょー(hajime)
Рет қаралды 113 МЛН
YouTube's Biggest Mistake..
00:34
Stokes Twins
Рет қаралды 75 МЛН
Каха с волосами
01:00
К-Media
Рет қаралды 6 МЛН
Не пей газировку у мамы в машине
00:28
Даша Боровик
Рет қаралды 10 МЛН
I made a game with less than 100 pixels!
10:38
inDevelopment
Рет қаралды 10 М.
i got laid off... so i made a game...
24:08
bewky
Рет қаралды 590 М.
I made my own game engine
5:01
James Bland
Рет қаралды 2,4 М.
I Made My Own Game Engine
6:24
n8dev
Рет қаралды 242 М.
I made Games with Python for 10 Years...
28:52
DaFluffyPotato
Рет қаралды 222 М.
Giving Personality to Procedural Animations using Math
15:30
t3ssel8r
Рет қаралды 2,4 МЛН
When Your Game Is Bad But Your Optimisation Is Genius
8:52
Vercidium
Рет қаралды 1,3 МЛН
I Made A Rubik's Cube In Vanilla Minecraft
11:45
Purplers
Рет қаралды 202 М.
Making Minecraft from scratch in 48 hours (NO GAME ENGINE)
16:38
skibidi toilet 73 (full episode)
9:41
DaFuq!?Boom!
Рет қаралды 28 МЛН
Only sigmas do that! #shorts #minecraft #minecraftanimation
0:14
Krabster Dom
Рет қаралды 9 МЛН
Stu Mutation gone WRONG☠️ #brawlstars #shorts
0:14
HB Nico Zockt
Рет қаралды 4,6 МЛН
Frog Prince Rush With Herobrine and Entity
0:32
Realistic Craft
Рет қаралды 50 МЛН
ПОМОГИ ХЕРОБРИНУ ЧЕЛЛЕНДЖ #Shorts #Глент
0:39
LEGENDARY MUTATION EGG?! #brawlstars #legendary #starrdrop #mythic #viral
0:23