Making a Game With C++ and OpenGL

  Рет қаралды 42,335

Zyger

Zyger

Күн бұрын

I Made a Pacman Clone Game with C++ and OpenGL
Recently I have been working on improving my C++ skills and therefore I decided to create my very first C++ game. I have used C++ before to create engines and other projects but never a game. Therefore, in this video I challenged myself to create the classic Pacman game using C++ and OpenGL. The project uses a custom framework that uses OpenGL, OpenAL and FreeGLUT. Can I successfully create a Pacman clone game or will I fail?
The video goes over a level editor/creator, player movement, Different types of AI, Collectibles, Highscore, Game Loop and more!
My Links:
Discord: / discord
Instagram: / gabzxd
Twitch: / officialzyger
Twitter: / zygerdesigns
Patreon: / zyger
Inspiration:
@Goodgis
@PolyMars
@AIAdev
@Pontypants
@barj
Music:
All my music is provided via Epidemic Sounds. Under a license.
#C++ #zyger #gamedev #programming #csharp #cplusplus

Пікірлер: 98
@rileyhawksworth8362
@rileyhawksworth8362 3 ай бұрын
goose. nice choice. geese are nice.
@pyscrap
@pyscrap 3 ай бұрын
goose? geese? GEESES?
@shajden
@shajden 3 ай бұрын
i agree
@shadowlordalpha
@shadowlordalpha 3 ай бұрын
no they are not, they are very mean
@kjellbeats
@kjellbeats 3 ай бұрын
​@@shadowlordalphathey're nice to cool people
@shajden
@shajden 3 ай бұрын
@@shadowlordalpha too bad
@Rafael-yo6hd
@Rafael-yo6hd 3 ай бұрын
Nice work! Loved the goose pixel art. One thing I would modify is the level creator, instead of using a txt file, I would use a image file and read the color of the pixels. For the long run and customization, would save time and be faster to iterate the level designs. But still, great job and keep it up!
@borbzaby
@borbzaby 3 ай бұрын
Kinda looks like a Goodgis thumbnail but a completely different game. In a good way. It looks awesome
@duduken20
@duduken20 3 ай бұрын
Zyger uploading, another treat for my weekend.
@swiftcreepa2096
@swiftcreepa2096 2 ай бұрын
Thats freaking awesome!
@diwakar_tsn
@diwakar_tsn 3 ай бұрын
I used raylib for my c++ game pong semester project
@itsyaboijoe6389
@itsyaboijoe6389 3 ай бұрын
ZYGER UPLOAD LETS GOOOO
@Diverse_Gaming_Zone
@Diverse_Gaming_Zone 2 ай бұрын
I love your video I’m 11 years old and learning to code a game but it has been super boring and your making it entertaining🎉
@merc.5802
@merc.5802 Ай бұрын
this is the coolest thing I've ever seen
@Claude-bg6ef
@Claude-bg6ef 2 ай бұрын
Listen, you're really smart, I admire you
@kwameopareasiedu
@kwameopareasiedu 2 ай бұрын
Nice one. Currently creating a pacman game in C and ncurses. Just finished a level generator using wave function collapse algorithm. Took 2 weeks and multiple attempts to get just that working... 😅
@tomasberzinskas8960
@tomasberzinskas8960 3 ай бұрын
Great game, I love the goose!
@zorymoon_yes_its_me
@zorymoon_yes_its_me 3 ай бұрын
The thumbnail almost got me
@Icie145
@Icie145 3 ай бұрын
Mmyes a banger
@Uranerdbro
@Uranerdbro 3 ай бұрын
W goodgis thumbnail
@AdrienTD
@AdrienTD 3 ай бұрын
As someone who wrote C++ for a decent time, I have one tip: AVOID using new/delete if possible. For example in your struct Player you define the position as a pointer to a Vector2 (Vector2* position;) instead of a Vector2 directly (Vector2 position;). With the latter the Vector2 is always constructed/destroyed with the Player struct and you won't need to use new/delete manually. I guess if you come from C#/Java using the new keyword might seem normal, but in C++ it's usually considered bad practice.
@halfbakedproductions7887
@halfbakedproductions7887 3 ай бұрын
Unreal Engine expects most things to be done in that way, but it has its own garbage collection going on. But yes, what's being used here is susceptible to memory leaks if you forget to free the pointer when the struct falls out of scope. You could use a smart pointer, something like std::unique and std::make_unique I guess.
@AdrienTD
@AdrienTD 3 ай бұрын
@@halfbakedproductions7887 Yes, with large classes nothing wrong with allocating them separately (best with smart pointers), but with small trivial structs like Vector2 it just makes more sense to make the Vector2 part of the struct (composition). Allocating each Vector2 individually on the heap can also cause some issues like memory fragmentation and waste.
@MirrorsEdgeGamer01
@MirrorsEdgeGamer01 3 ай бұрын
I always try to allocate on the stack whenever possible.
@Tech_Code127-76
@Tech_Code127-76 3 ай бұрын
Nice
@timmygilbert4102
@timmygilbert4102 3 ай бұрын
Kween is back 🎉
@baker_dev
@baker_dev Ай бұрын
nicee
@guilhermerodrigues4853
@guilhermerodrigues4853 3 ай бұрын
Nice video! What resources did you use to implement 2d texture animation??
@niema4154
@niema4154 13 күн бұрын
i leave a subscribe, i really enjoy ur content :3 I am waiting for more ;3
@marsimplodation
@marsimplodation 3 ай бұрын
finally some c++ love. Is the source code available? Would love trying out some proper fsm for the enemies, as they seem a bit dull
@HuntShootRepeat
@HuntShootRepeat 3 ай бұрын
question. I have a multiplayer game that I'll be releasing on steam. I can't find a clear answer anywhere. Does steam provide us with the use of their servers? Or do I have to pay for 3rd party servers and implement it to be used in steam?
@RealCatDev
@RealCatDev 3 ай бұрын
C++ LETS GOOO
@Isaaclolwastaken
@Isaaclolwastaken 28 күн бұрын
The new Dani
@Abdullah-ww8yn
@Abdullah-ww8yn 3 ай бұрын
Any updates on ur multiplayer fps???
@benpecto.benpecillton
@benpecto.benpecillton 3 ай бұрын
cool channel bro
@atiedebee1020
@atiedebee1020 2 ай бұрын
But where is the OpenGL part Ive been baited
@assido_hd5214
@assido_hd5214 Ай бұрын
What keyboard are you using😊
@JoinasTV
@JoinasTV 3 ай бұрын
As a goose and gamedesigner myself, I enjoyed your video very much!
@nkanyisoinnocentkhwane3752
@nkanyisoinnocentkhwane3752 3 ай бұрын
Is *Project Jude* still on your itinerary?
@WafflerSupreme
@WafflerSupreme Ай бұрын
Wouldn't A* or Dijkstra help with generating the level?
@ItsOnlyTG
@ItsOnlyTG 3 ай бұрын
Amazing fucking video
@musashi542
@musashi542 3 ай бұрын
ever tried Clion ? whats your opinion on it ?
@lykoseleutherios
@lykoseleutherios 2 ай бұрын
What's the name of the theme that showed in the start of the video
@TKaYonYoutube
@TKaYonYoutube 2 ай бұрын
I do SDL2 to learn gameDev on C++
@user-de4mr7uk8d
@user-de4mr7uk8d 3 ай бұрын
it's a goose. Geese is plural form like feet, teeth, meese
@osmanerenkose6692
@osmanerenkose6692 3 ай бұрын
🤓☝
@astrrochroma
@astrrochroma 3 ай бұрын
whats a meese ??
@dimitri0404
@dimitri0404 3 ай бұрын
​​@@astrrochromathe plural of a moose 🫎
@randomly2000
@randomly2000 3 ай бұрын
I love your Voice 😊
@IbytheGOAT
@IbytheGOAT 19 күн бұрын
what about a 3d game in C++ and OpenGL 👀
@TecnocraciaLTDA
@TecnocraciaLTDA 3 ай бұрын
Do a 3D game now with opengl, plss, can be simple
@TecnocraciaLTDA
@TecnocraciaLTDA 3 ай бұрын
Hellooooooo Zygerrr 🇧🇷 🇧🇷
@theonewhowill4903
@theonewhowill4903 3 ай бұрын
C++ game devlopment with no engine is a mark of a great programmer
@user-hl7lr8ld2i
@user-hl7lr8ld2i 3 ай бұрын
S2d (what she is using) is pretty much an engine)
@yarpen26
@yarpen26 Ай бұрын
The video title's misleading af as it makes it seem like she's going at it raw, Carmack style, even so far as tackling the actual rendering pipeline. S2D is in fact only slightly below Godot when it comes to accessibility and solely because there's no GUI (at least I think there's none, it's hard to say, there's almost nothing about it on the net anymore) so you have to code directly, but other than that, the whole library is ready, not surprising since it's just SFML coupled with Box2D. Needless to say, SFML takes care of all the OpenGL-to-Windows linkage crap, you only need to activate it in code. Also, what a weird choice of engine... this thing has been dead in the water since it was released back in 2015, the original Github built was moved once to a different repo which has never since been pushed to again. The website's offline, there is zero community around this... why would anybody play around with it if so many better and well supported options are available? It really looks like she just gave a blind shot at whatever the first page of the Google search yielded that required not too much reading into before jumping in.
@thecookieman568
@thecookieman568 3 ай бұрын
Hi! Im trying to become a game dev, if you can, can you please link the background music and sound effects because im having trouble finding good ones.
@ZygerGFX
@ZygerGFX 3 ай бұрын
Best of luck. And music and sound effects are from epidemic sounds
@mattanimations6997
@mattanimations6997 2 ай бұрын
I can’t wait for the second fps devlog (unless you cancelled it)
@ZygerGFX
@ZygerGFX 2 ай бұрын
No its coming soon promise. Lots of new stuff :))
@Nemesisardans
@Nemesisardans 2 ай бұрын
What do you major in university, why did u decided to go into programming?
@TheFrostFyr
@TheFrostFyr 3 ай бұрын
Peck-Man
@ResistDemise
@ResistDemise 2 ай бұрын
More videos now
@MunaAlaneme
@MunaAlaneme 3 ай бұрын
Bro created Pacman Maker
@christiankm8820
@christiankm8820 3 ай бұрын
singular: goose plural: geese
@S0ggyW3tW4t4r
@S0ggyW3tW4t4r 3 ай бұрын
Why is the goose/geese so horrify
@KJ7JHN
@KJ7JHN Ай бұрын
Diagon ally. Poof! Harry? What are you doing down here? 😊
@IgorBlackHusbandElenaLitun8v0
@IgorBlackHusbandElenaLitun8v0 3 ай бұрын
good work seniorita. (kohedlo/Imperial Game Engine 2 developer)
@gruelingpine1857
@gruelingpine1857 3 ай бұрын
It's a goose. Geese is the plural word. Would you try making a game with SDL?
@Martyrir
@Martyrir 3 ай бұрын
SECOND....
@Zetoll
@Zetoll 2 ай бұрын
Do luau pls
@foqsi_
@foqsi_ 2 ай бұрын
Did you know that a banana is a berry, and a strawberry is not a berry?
@ZygerGFX
@ZygerGFX 2 ай бұрын
Wait what... there's no way that's actually true
@PaulMetalhero
@PaulMetalhero 3 ай бұрын
Good project. But you should not use manual memory management in modern C++
@adrianhorn4962
@adrianhorn4962 2 ай бұрын
Why??
@PaulMetalhero
@PaulMetalhero 2 ай бұрын
Because it's not safe@@adrianhorn4962
@lpalaguachi2
@lpalaguachi2 Күн бұрын
​@@adrianhorn4962Did you find out why
@danielelskamp5527
@danielelskamp5527 2 ай бұрын
huh
@emanuelprieto
@emanuelprieto 3 ай бұрын
Its a Duck
@JasonMortimer3
@JasonMortimer3 3 ай бұрын
learn Rust and make a game with it using Bevy 💖
@user-hl7lr8ld2i
@user-hl7lr8ld2i 3 ай бұрын
Love to bevy, great engine
@n3y
@n3y 2 ай бұрын
love to engine, great bevy
@einfachnurbaum6732
@einfachnurbaum6732 3 ай бұрын
Oh girl, it's cool. But I would still using Godot Engine for game making. Psst How about a video about Godot Engine?
@sharokhkeshawarz2122
@sharokhkeshawarz2122 3 ай бұрын
where is the opengl part XD
@QWERTIOX
@QWERTIOX 3 ай бұрын
I think custom library handles opengl
@yarpen26
@yarpen26 Ай бұрын
This engine is a Frankenstein of SFML and Box2D, they cover all OpenGL stuff. She isn't "making a game with OpenGL" any more than I am "igniting the fuel in the tank by turning the key".
@PinkeySuavo
@PinkeySuavo 21 күн бұрын
I was curious too, I wanted to learn OpenGL last time and it had like 70 lines of code to show a triangle and she shows ducks in 2 lines of code
@that_guy1211
@that_guy1211 3 ай бұрын
welp, although i've been learning c++ i think my worst fear is to actually have to use c++ to anything ,., i'd much rather use a safer and easier language
@user-hl7lr8ld2i
@user-hl7lr8ld2i 3 ай бұрын
There was no opengl used here...
@BlessedDog
@BlessedDog Ай бұрын
Yeah, the only OpenGL code I saw was at around 0:17 But that was just opening the window and creating the context IIRC. Might've been some GLM stuff as well
@PinkeySuavo
@PinkeySuavo 21 күн бұрын
ye I was curious too cause I tried to learn openGL some time ago and it was like 70 lines to show a fucking triangle, and when she showed a duck with 2 lines i was like "wait a second"
@sarmalevrajitoare
@sarmalevrajitoare 3 ай бұрын
like if u wanted to play the game =(
@justaguynotamanyouwouldkno2207
@justaguynotamanyouwouldkno2207 3 ай бұрын
FIRST
@VineToDay_
@VineToDay_ 3 ай бұрын
You look like female Dani.
@GuiZeroUm
@GuiZeroUm 3 ай бұрын
Whats your LinkedIn?
How I Became a Sea of Thieves Developer
8:05
Zyger
Рет қаралды 119 М.
Learning C# In A Week... Otherwise I Fail University
9:04
Normal vs Smokers !! 😱😱😱
00:12
Tibo InShape
Рет қаралды 30 МЛН
Balloon Pop Racing Is INTENSE!!!
01:00
A4
Рет қаралды 15 МЛН
Useful Gadget for Smart Parents 🌟
00:29
Meow-some! Reacts
Рет қаралды 10 МЛН
Making a Game With C++ and SDL2
5:34
Goodgis
Рет қаралды 563 М.
I made Games with Python for 10 Years...
28:52
DaFluffyPotato
Рет қаралды 211 М.
I Made an MMO in 9 Days
6:39
Descon Games
Рет қаралды 3,7 М.
I Made a Graphics Engine (again)
8:27
Zyger
Рет қаралды 154 М.
Learning C++ by making a Game... in 1 Week?!
10:14
Floky
Рет қаралды 307 М.
I Remade Minecraft But It is Optimized!
9:39
Low Level Game Dev
Рет қаралды 87 М.
One year of my C++ SFML journey
5:39
Snapi
Рет қаралды 339 М.
When Your Game Is Bad But Your Optimisation Is Genius
8:52
Vercidium
Рет қаралды 1,3 МЛН
So I Made My Own Game Engine...
10:19
Chadderbox
Рет қаралды 81 М.
🤣
0:37
Dragon Нургелды 🐉
Рет қаралды 1,2 МЛН
Притворилась БЕРЕМЕННОЙ 😱 #shorts
1:00
Лаборатория Разрушителя
Рет қаралды 2,1 МЛН
To the end 😱
0:37
Pir Ovezov
Рет қаралды 11 МЛН