Advanced Lighting With My Own Game Engine

  Рет қаралды 21,358

AngeTheGreat

AngeTheGreat

Күн бұрын

In this devlog, I add a modern lighting system to my game engine. This is part of a lifelong dream I've had of making an entire video game from scratch in C++.
Resources I used in this video:
SSAO:
- ogldev.org/www/tutorial45/tut...
- john-chapman-graphics.blogspot...
Dithering:
- en.wikipedia.org/wiki/Ordered...
Bloom:
- learnopengl.com/Advanced-Ligh...
VS Code Plugin for Creating Blender Addons:
- marketplace.visualstudio.com/...
This video looks at the following topics:
- SSAO (screen space ambient occlusion)
- Bloom shaders
- Dithering
- Game engine programming
- Game development with C++
As of the recording of this video, the game is under the working title of "Cereal Adventure." It's an indie game in which a sentient cereal box must navigate a dangerous 2.5D world in order to beat out his breakfast competitors.
More videos are planned and on the way! Subscribe so you don't miss out.
#gamedev #indiegamedev #gamedevelopment #devlog
Check out the source code for this game!
github.com/ange-yaghi/cereal-...
Check out my GitHub!
github.com/ange-yaghi
Join my Discord!
/ discord
Check out my game engine! [Still in development]
github.com/ange-yaghi/delta-s...
Follow me on Instagram!
/ ange.the.great
If you like my work and would like to support me, consider donating!
ko-fi.com/angethegreat
Thanks for watching!

Пікірлер: 71
@danieleccleston7928
@danieleccleston7928 3 жыл бұрын
I'd like to make something like this, but people keep saying that if you want to make a game just use a pre existing engine, but I want to both make a game and an engine like what you have, what do you think or do you have any advice? I am interested in higher resolution / modern rendering that you mentioned but not triple AAA, more like stylised low - medium poly models.
@AngeTheGreat
@AngeTheGreat 3 жыл бұрын
Excellent question! The following is of course just my opinion but this is what I think. People make WAY too much of a big deal about this, to a point that I really don't understand. I've seen entire videos on KZfaq advising people to not attempt making their own engine. I've also seen many people exaggerate how difficult it is. The reality is that writing a rendering engine from scratch is well-documented and relatively easy to learn for those that have a strong C++ background. Yes, it will take some time to get running initially and there is a lot to learn but if it's something that you enjoy (and I would say that it is very enjoyable and an excellent learning experience) then it's worth it. So my advice is simple: if you enjoy lower level programming and like the idea of making a game engine, you should do it and forget about what these people say! Hope that helps :)
@danieleccleston7928
@danieleccleston7928 3 жыл бұрын
@@AngeTheGreat Yes it really does thank you, I really like C/C++ and low level programming as long as I can find some solid resources to learn from.
@007LvB
@007LvB 2 жыл бұрын
​@@AngeTheGreat May I comment further on this? I think the concept of an "engine" is pretty overblown at this point. People expect a lot of GUI tools, drag'n drop, visual scripting, shader/material blueprints, and a lot more stuff. But a game engine can be as small as a header file to load shader programs, a header file to create a window, a header file to load textures, and perhaps a few other things. For what you are doing here, it isn't even necessary to create a rendering engine imo.. And your point about "enjoying" the process is spot on!
@Aurich88
@Aurich88 2 жыл бұрын
The argument against creating your own game engine is based on the assumption that the only thing that REALLY matters is fun gameplay, and if you don't have a fun gameplay loop you don't have anything. From that perspective, getting hung up on Unity vs. Unreal, let alone making your own engine, is putting the cart before the horse. I think this advice comes from the question "How do I become a *professional* game developer?", because it focusses on productivity and completely discounts the idea of game development as a hobby/learning experience. If you enjoy coding and learning and you think that's a worthy objective in itself, then disregard that advice. If you want to actually release games that people enjoy playing and might be willing to pay for, then it's worth considering.
@AngeTheGreat
@AngeTheGreat 2 жыл бұрын
Absolutely right! It all depends on what someone's goals are
@AngeTheGreat
@AngeTheGreat 3 жыл бұрын
Thanks for watching! Let me know what you guys think of my new lighting engine and don't be afraid to share criticism, I can handle it! Appreciate your support 🙏
@t3v727
@t3v727 3 жыл бұрын
It really flexes me to see it. Well done :)
@AngeTheGreat
@AngeTheGreat 3 жыл бұрын
💪💪💪
@kingbubbles4509
@kingbubbles4509 3 жыл бұрын
I'm starting a CS degree this year and one of my main modules is C++. I don't get 99% of what youre doing here but I'm enjoying trying to. Thanks for the motivation!
@AngeTheGreat
@AngeTheGreat 3 жыл бұрын
That's great! I'm glad you like the content and good luck with your degree. Always nice to see people getting into C/C++ 👑
@Norman_Fleming
@Norman_Fleming Жыл бұрын
I am going to keep commenting until I get to the end, or give up for the day. Loving the co-development of the game and the tech. Each one pushing the other to be better than you were originally intending.
@EONorlander
@EONorlander Жыл бұрын
Hey, new subscriber here, great stuff, I love it. I especially like the technical bits of your videos were you describe the architecture and/or when you desribe how some of these low level stuff works
@luisriveragonzalez9052
@luisriveragonzalez9052 3 жыл бұрын
Your videos motivate me a lot. I'm a CS student and hope to be at your level one day!
@AngeTheGreat
@AngeTheGreat 3 жыл бұрын
That's my goal! It just takes time and practice and pretty much anyone can do it, thanks for watching 🙏
@talkashie
@talkashie Жыл бұрын
I hope to see some updates on this in the future! Looks really nice
@t3v727
@t3v727 3 жыл бұрын
I really enjoyed your video as usual. It's a really great thing to learn new things and get a grasp on more advanced stuff while watching your videos. So even if you are more documenting what you are doing, it's definitely very educational. And hopefully your game will become what you want it to be. With good lighting of course ;)
@AngeTheGreat
@AngeTheGreat 3 жыл бұрын
Thank you! I know what you mean, I like watching other people work and seeing their process. Tutorials are useful too but sometimes getting a higher level picture is good which is what I (try) to have in my videos. Thanks for watching! 💪
@m1nordragon26
@m1nordragon26 3 жыл бұрын
Your videos are so good! I've found your channel yesterday and have been stalking your videos since 😅. I watched all of your videos in 2 days 😁. Keep up the great work!
@AngeTheGreat
@AngeTheGreat 3 жыл бұрын
Thank you! Glad you enjoy my videos and welcome to channel :) Feel free to stalk my videos as much as you want haha
@PinkeySuavo
@PinkeySuavo Жыл бұрын
It looks so realistic and pixelated(?) at once. I love the result.
@fruitygranulizer540
@fruitygranulizer540 2 ай бұрын
in the past, games were pixelated because of the limitations of hardware. and we didn't have the advanced shading techniques that we know about today. hell, some older games didn't even have shadowmaps. just blinn-phong esque shading and that's it. maybe hardcoded shadows, but rarely actual shadowmaps rendered from a light source. this feels realistic and pixelated at the same time because it is using modern shading techniques while PURPOSELY making the final output pixelated. its such a cool look.
@Skeffles
@Skeffles 3 жыл бұрын
Fantastic video! I love how you broken down the rendering passes to show how you created everything.
@AngeTheGreat
@AngeTheGreat 3 жыл бұрын
Thank you! Glad you liked it :)
@thehambone1454
@thehambone1454 11 ай бұрын
Looks great!
@fernasim
@fernasim 3 жыл бұрын
Another great video! 💖
@AngeTheGreat
@AngeTheGreat 3 жыл бұрын
Thank you! 🙏
@UnidayStudio
@UnidayStudio 3 жыл бұрын
Looking good!
@AngeTheGreat
@AngeTheGreat 3 жыл бұрын
Thank you!
@nullptr6650
@nullptr6650 3 жыл бұрын
The lighting looks goooood :)
@AngeTheGreat
@AngeTheGreat 3 жыл бұрын
Thanks! Hope you enjoyed the video :)
@Inevitablerizzler
@Inevitablerizzler 2 жыл бұрын
It actually looks really nice
@AngeTheGreat
@AngeTheGreat 2 жыл бұрын
Thank you!
@jeancarlofalabella1195
@jeancarlofalabella1195 3 жыл бұрын
These videos are very well made.
@AngeTheGreat
@AngeTheGreat 3 жыл бұрын
Thank you!
@noahhradek5426
@noahhradek5426 Жыл бұрын
Looks cool
@aleksandarstanisic1848
@aleksandarstanisic1848 Жыл бұрын
I like it man
@LoggyDev
@LoggyDev 3 жыл бұрын
Ooh, very nice.
@AngeTheGreat
@AngeTheGreat 3 жыл бұрын
Thanks 😎
@astatic117
@astatic117 3 жыл бұрын
Your vids are gold
@AngeTheGreat
@AngeTheGreat 3 жыл бұрын
Thanks 😎
@Theironlefty
@Theironlefty Жыл бұрын
I know this is an old video but, for Bloom its better to mip the unclamped render down to smaller sizes and blur that instead of blurring the full resolution. most modern games/engines do bloom this way, you could also technically make this into DOF too. also also SSAO is very outdated in 2023, the better way to do ambient shading is GTAO(either intels or nvidias), as for GI pass or something like that you could do Voxels since you're going for low res look.
@saturn7_dev
@saturn7_dev 9 ай бұрын
Very impressive programming skills - you should maybe make your own publicly available game engine or add cool stuff to an existing one....
@actuallydaneel
@actuallydaneel 3 жыл бұрын
love it
@AngeTheGreat
@AngeTheGreat 3 жыл бұрын
🙏
@allNicksAlreadyTaken
@allNicksAlreadyTaken 2 жыл бұрын
How do you render multiple lights? Do you use forward or deferred rendering? If you use forward rendering, do you use a single pass for all lights or a pass for each light? How do you find the lights that should affect an object?
@Gamezmodz444
@Gamezmodz444 Жыл бұрын
This is complete wizardry
@007LvB
@007LvB 2 жыл бұрын
Hi, (I also commented on your bloom FFT video) - might I advice you to use non-thresholded bloom instead? I can provide a couple of reasons for why it's better :) If you are interested, I would be happy to email you a pdf showcasing the technique. Great video btw, I really enjoy your content and the way you explain things!
@AngeTheGreat
@AngeTheGreat 2 жыл бұрын
Oh I didn't see your comment there for some reason (KZfaq is weird with comments sometimes). I'd consider using something other than the threshold style bloom. I found that it worked fine for my purposes and I don't really intend to make heavy use of it but I'm always interested to learn. Feel free to e-mail me a PDF or join my discord (link in the description) and post it there. Glad you liked the video and thanks for the suggestion!
@007LvB
@007LvB 2 жыл бұрын
@@AngeTheGreat Could you write your email here? The article isn't published yet, so I would prefer to do it that way :) (you can delete the comment afterwards if you want the email to stay hidden - I just couldn't find it anywhere)
@PikaDevs
@PikaDevs Жыл бұрын
@@007LvB late response, but in future, most big channels have their emails in their "about" section on their channel page
@computercodelearning
@computercodelearning 4 ай бұрын
what kind of graphics API did it use?
@glowiever
@glowiever Жыл бұрын
is it deferred shading?
@hosannaamane6031
@hosannaamane6031 Жыл бұрын
We need an update
@marshmellominiapple
@marshmellominiapple Жыл бұрын
QHD cereal man scary
@m1nordragon26
@m1nordragon26 3 жыл бұрын
Could you make a discord server? I'd really like to talk to other viewers and possibly learn more!
@AngeTheGreat
@AngeTheGreat 3 жыл бұрын
I'm actually working on one as we speak!
@ElonMuskIsSerbian
@ElonMuskIsSerbian 6 күн бұрын
Personally, I think the examples you gave would be more obvious if you didn't show it in fucking black on black in complete fucking darkness, but other than that it's really fascinating. Great work!
@cate01a
@cate01a Жыл бұрын
neat, I think the blocky pixelated screen looks worse than proper high quality, though perhaps you can still have the retro aesthetic by having blocky textures and perhaps other retro features, like jagged low poly models but please I urge you to complete the game! so many youtuber devs never publish anything which I think is a massive missed opportunity and plants a skyscraper-tall brick wall infront of their ability to improve as a developer. perfection is impossible so don't be upset when you weren't able to do 100% of what you wanted
@jtbgames6440
@jtbgames6440 2 жыл бұрын
What happened to this project?
@AngeTheGreat
@AngeTheGreat 2 жыл бұрын
It still exists! I found that I wasn't getting a lot of positive feedback about the game via comments/channel viewership so I've been focusing more heavily on other topics. That being said, I am continuing to work on this game for fun will release a devlog soon-ish. Thanks for watching!
@jtbgames6440
@jtbgames6440 2 жыл бұрын
@@AngeTheGreat lets go new devlog
@angelosorte5464
@angelosorte5464 Жыл бұрын
@@AngeTheGreat Hoping to see it!
So I Made My Own Game Engine...
10:19
Chadderbox
Рет қаралды 89 М.
Simulating a Steam Engine with C++ (with sound)
18:41
AngeTheGreat
Рет қаралды 361 М.
УГАДАЙ ГДЕ ПРАВИЛЬНЫЙ ЦВЕТ?😱
00:14
МЯТНАЯ ФАНТА
Рет қаралды 4,1 МЛН
НЫСАНА КОНЦЕРТ 2024
2:26:34
Нысана театры
Рет қаралды 738 М.
Useful gadget for styling hair 🤩💖 #gadgets #hairstyle
00:20
FLIP FLOP Hacks
Рет қаралды 5 МЛН
Самый Молодой Актёр Без Оскара 😂
00:13
Глеб Рандалайнен
Рет қаралды 11 МЛН
The Engine Editor - Engine Simulator Devlog 1
13:16
AngeTheGreat
Рет қаралды 231 М.
Simulating a Chainsaw (Attempt 1) - Engine Simulator Devlog 5
15:35
AngeTheGreat
Рет қаралды 147 М.
I Made the Same Game for 5 Consoles
15:12
PolyMars
Рет қаралды 1,4 МЛН
"Make a Game not an Engine" (Just use Unity/Unreal/Godot bro)
7:46
Dylan Falconer
Рет қаралды 19 М.
I Made a Graphics Engine (again)
8:27
Zyger
Рет қаралды 163 М.
When Your Game Is Bad But Your Optimisation Is Genius
8:52
Vercidium
Рет қаралды 1,4 МЛН
Making my own Cave Update in Minecraft
12:03
Mumbo Jumbo
Рет қаралды 2,6 МЛН
The Strange Graphics Of LETHAL COMPANY
15:59
Acerola
Рет қаралды 777 М.
My Dumb Steam Game Got 90,000 Downloads in 30 Days
14:14
AngeTheGreat
Рет қаралды 706 М.
Making a Terrible Racing Game with Great Audio (Engine Simulator)
14:00
Крокодил получил по-заслугам! 😱
0:32
КиноСклад
Рет қаралды 3,5 МЛН
MISS CIRCLE STUDENTS BULLY ME!
0:12
Andreas Eskander
Рет қаралды 15 МЛН
Secret Experiment Toothpaste Pt.4 😱 #shorts
0:35
Mr DegrEE
Рет қаралды 8 МЛН
Best Toilet Gadgets and #Hacks you must try!!💩💩
0:49
Poly Holy Yow
Рет қаралды 7 МЛН
La emociones de Bluey #歌ってみた #bluey #burrikiki
0:13
Bluey y BurriKiKi
Рет қаралды 31 МЛН