Making a Game With C++ and OpenGL

  Рет қаралды 45,295

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

Пікірлер: 99
@rileyhawksworth8362
@rileyhawksworth8362 4 ай бұрын
goose. nice choice. geese are nice.
@pyscrap
@pyscrap 4 ай бұрын
goose? geese? GEESES?
@shajden
@shajden 4 ай бұрын
i agree
@shadowlordalpha
@shadowlordalpha 4 ай бұрын
no they are not, they are very mean
@kjellbeats
@kjellbeats 4 ай бұрын
​@@shadowlordalphathey're nice to cool people
@shajden
@shajden 4 ай бұрын
@@shadowlordalpha too bad
@Rafael-yo6hd
@Rafael-yo6hd 4 ай бұрын
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!
@duduken20
@duduken20 4 ай бұрын
Zyger uploading, another treat for my weekend.
@borbzaby
@borbzaby 4 ай бұрын
Kinda looks like a Goodgis thumbnail but a completely different game. In a good way. It looks awesome
@swiftcreepa2096
@swiftcreepa2096 3 ай бұрын
Thats freaking awesome!
@itsyaboijoe6389
@itsyaboijoe6389 4 ай бұрын
ZYGER UPLOAD LETS GOOOO
@Diverse_Gaming_Zone
@Diverse_Gaming_Zone 3 ай бұрын
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🎉
@Claude-bg6ef
@Claude-bg6ef 3 ай бұрын
Listen, you're really smart, I admire you
@merc.5802
@merc.5802 Ай бұрын
this is the coolest thing I've ever seen
@tomasberzinskas8960
@tomasberzinskas8960 4 ай бұрын
Great game, I love the goose!
@Icie145
@Icie145 4 ай бұрын
Mmyes a banger
@Demonicbuilds8
@Demonicbuilds8 10 күн бұрын
I LOVE YOUR VIDEOS AND C++ ❤
@Uranerdbro
@Uranerdbro 4 ай бұрын
W goodgis thumbnail
@diwakar_tsn
@diwakar_tsn 4 ай бұрын
I used raylib for my c++ game pong semester project
@kwameopareasiedu
@kwameopareasiedu 3 ай бұрын
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... 😅
@guilhermerodrigues4853
@guilhermerodrigues4853 4 ай бұрын
Nice video! What resources did you use to implement 2d texture animation??
@zorymoon_yes_its_me
@zorymoon_yes_its_me 4 ай бұрын
The thumbnail almost got me
@timmygilbert4102
@timmygilbert4102 4 ай бұрын
Kween is back 🎉
@Tech_Code127-76
@Tech_Code127-76 4 ай бұрын
Nice
@baker_dev
@baker_dev 2 ай бұрын
nicee
@AdrienTD
@AdrienTD 4 ай бұрын
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 4 ай бұрын
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 4 ай бұрын
@@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.
@benpecto.benpecillton
@benpecto.benpecillton 3 ай бұрын
cool channel bro
@marsimplodation
@marsimplodation 4 ай бұрын
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 4 ай бұрын
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?
@niema4154
@niema4154 Ай бұрын
i leave a subscribe, i really enjoy ur content :3 I am waiting for more ;3
@RealCatDev
@RealCatDev 4 ай бұрын
C++ LETS GOOO
@Isaaclolwastaken
@Isaaclolwastaken Ай бұрын
The new Dani
@nkanyisoinnocentkhwane3752
@nkanyisoinnocentkhwane3752 4 ай бұрын
Is *Project Jude* still on your itinerary?
@assido_hd5214
@assido_hd5214 2 ай бұрын
What keyboard are you using😊
@WafflerSupreme
@WafflerSupreme 2 ай бұрын
Wouldn't A* or Dijkstra help with generating the level?
@Abdullah-ww8yn
@Abdullah-ww8yn 4 ай бұрын
Any updates on ur multiplayer fps???
@randomly2000
@randomly2000 3 ай бұрын
I love your Voice 😊
@lykoseleutherios
@lykoseleutherios 3 ай бұрын
What's the name of the theme that showed in the start of the video
@ItsOnlyTG
@ItsOnlyTG 4 ай бұрын
Amazing fucking video
@musashi542
@musashi542 4 ай бұрын
ever tried Clion ? whats your opinion on it ?
@JoinasTV
@JoinasTV 4 ай бұрын
As a goose and gamedesigner myself, I enjoyed your video very much!
@atiedebee1020
@atiedebee1020 3 ай бұрын
But where is the OpenGL part Ive been baited
@theonewhowill4903
@theonewhowill4903 4 ай бұрын
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 2 ай бұрын
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.
@TecnocraciaLTDA
@TecnocraciaLTDA 4 ай бұрын
Hellooooooo Zygerrr 🇧🇷 🇧🇷
@user-de4mr7uk8d
@user-de4mr7uk8d 4 ай бұрын
it's a goose. Geese is plural form like feet, teeth, meese
@osmanerenkose6692
@osmanerenkose6692 4 ай бұрын
🤓☝
@astrrochroma
@astrrochroma 4 ай бұрын
whats a meese ??
@dimitri0404
@dimitri0404 4 ай бұрын
​​@@astrrochromathe plural of a moose 🫎
@TKaYonYoutube
@TKaYonYoutube 3 ай бұрын
I do SDL2 to learn gameDev on C++
@IbytheGOAT
@IbytheGOAT Ай бұрын
what about a 3d game in C++ and OpenGL 👀
@TecnocraciaLTDA
@TecnocraciaLTDA 4 ай бұрын
Do a 3D game now with opengl, plss, can be simple
@mattanimations6997
@mattanimations6997 3 ай бұрын
I can’t wait for the second fps devlog (unless you cancelled it)
@ZygerGFX
@ZygerGFX 3 ай бұрын
No its coming soon promise. Lots of new stuff :))
@Nemesisardans
@Nemesisardans 3 ай бұрын
What do you major in university, why did u decided to go into programming?
@gruelingpine1857
@gruelingpine1857 4 ай бұрын
It's a goose. Geese is the plural word. Would you try making a game with SDL?
@Martyrir
@Martyrir 4 ай бұрын
SECOND....
@KJ7JHN
@KJ7JHN 2 ай бұрын
Diagon ally. Poof! Harry? What are you doing down here? 😊
@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
@foqsi_
@foqsi_ 3 ай бұрын
Did you know that a banana is a berry, and a strawberry is not a berry?
@ZygerGFX
@ZygerGFX 3 ай бұрын
Wait what... there's no way that's actually true
@S0ggyW3tW4t4r
@S0ggyW3tW4t4r 4 ай бұрын
Why is the goose/geese so horrify
@MunaAlaneme
@MunaAlaneme 4 ай бұрын
Bro created Pacman Maker
@ResistDemise
@ResistDemise 2 ай бұрын
More videos now
@christiankm8820
@christiankm8820 4 ай бұрын
singular: goose plural: geese
@TheFrostFyr
@TheFrostFyr 4 ай бұрын
Peck-Man
@IgorBlackHusbandElenaLitun8v0
@IgorBlackHusbandElenaLitun8v0 4 ай бұрын
good work seniorita. (kohedlo/Imperial Game Engine 2 developer)
@Zetoll
@Zetoll 3 ай бұрын
Do luau pls
@danielelskamp5527
@danielelskamp5527 3 ай бұрын
huh
@einfachnurbaum6732
@einfachnurbaum6732 4 ай бұрын
Oh girl, it's cool. But I would still using Godot Engine for game making. Psst How about a video about Godot Engine?
@emanuelprieto
@emanuelprieto 4 ай бұрын
Its a Duck
@PaulMetalhero
@PaulMetalhero 4 ай бұрын
Good project. But you should not use manual memory management in modern C++
@adrianhorn4962
@adrianhorn4962 3 ай бұрын
Why??
@PaulMetalhero
@PaulMetalhero 3 ай бұрын
Because it's not safe@@adrianhorn4962
@lpalaguachi2
@lpalaguachi2 25 күн бұрын
​@@adrianhorn4962Did you find out why
@sarmalevrajitoare
@sarmalevrajitoare 4 ай бұрын
like if u wanted to play the game =(
@JasonMortimer3
@JasonMortimer3 4 ай бұрын
learn Rust and make a game with it using Bevy 💖
@user-hl7lr8ld2i
@user-hl7lr8ld2i 3 ай бұрын
Love to bevy, great engine
@n3y
@n3y 3 ай бұрын
love to engine, great bevy
@that_guy1211
@that_guy1211 4 ай бұрын
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
@sharokhkeshawarz2122
@sharokhkeshawarz2122 4 ай бұрын
where is the opengl part XD
@QWERTIOX
@QWERTIOX 4 ай бұрын
I think custom library handles opengl
@yarpen26
@yarpen26 2 ай бұрын
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 Ай бұрын
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
@user-hl7lr8ld2i
@user-hl7lr8ld2i 3 ай бұрын
There was no opengl used here...
@BlessedDog
@BlessedDog 2 ай бұрын
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 Ай бұрын
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"
@VineToDay_
@VineToDay_ 4 ай бұрын
You look like female Dani.
@justaguynotamanyouwouldkno2207
@justaguynotamanyouwouldkno2207 4 ай бұрын
FIRST
@GuiZeroUm
@GuiZeroUm 4 ай бұрын
Whats your LinkedIn?
Learning C# In A Week... Otherwise I Fail University
9:04
Making PACMAN in C++ - SFML Gamedev - Devlog
7:16
Kofybrek
Рет қаралды 45 М.
🍟Best French Fries Homemade #cooking #shorts
00:42
BANKII
Рет қаралды 47 МЛН
когда достали одноклассники!
00:49
БРУНО
Рет қаралды 4,1 МЛН
В ДЕТСТВЕ СТРОИШЬ ДОМ ПОД СТОЛОМ
00:17
SIDELNIKOVVV
Рет қаралды 2,6 МЛН
10- Build Ads Section In Home Screen - Without Code By FluterFlow - (بالعربي)
17:15
Abdullah Khudher - عبدالله خضر
Рет қаралды 8
Optimizing my Game so it Runs on a Potato
19:02
Blargis
Рет қаралды 370 М.
3 Months of Game Programming in 20 Minutes
20:32
jdh
Рет қаралды 591 М.
A.I. Learns To PERFECT Flappy Bird
4:44
Tyler Mommsen
Рет қаралды 1 М.
7 Days of Working on my Story FPS Game - #Devlog 1
8:55
Making a Game With C++ and SDL2
5:34
Goodgis
Рет қаралды 579 М.
I Made Sorting Algorithms Race Each Other
8:24
Green Code
Рет қаралды 10 М.
how Google writes gorgeous C++
7:40
Low Level Learning
Рет қаралды 774 М.
Learning C++ and making a GAME WITHOUT A GAME ENGINE
9:40
Chadderbox
Рет қаралды 99 М.
Озвучка @patrickzeinali  Тюремная еда  Часть 2 @ChefRush
0:52
BigXep. Канал озвучки
Рет қаралды 921 М.
Ouch 😨 Use this tool to keep toothpicks safely
0:41
Cool Tool Shorts
Рет қаралды 24 МЛН