Making a Game With C++ and OpenGL

แชร์
ฝัง
  • เผยแพร่เมื่อ 9 พ.ค. 2024
  • 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
  • บันเทิง

ความคิดเห็น • 97

  • @rileyhawksworth8362
    @rileyhawksworth8362 3 หลายเดือนก่อน +66

    goose. nice choice. geese are nice.

    • @pyscrap
      @pyscrap 3 หลายเดือนก่อน +1

      goose? geese? GEESES?

    • @shajden
      @shajden 3 หลายเดือนก่อน +1

      i agree

    • @shadowlordalpha
      @shadowlordalpha 3 หลายเดือนก่อน +2

      no they are not, they are very mean

    • @kjellbeats
      @kjellbeats 3 หลายเดือนก่อน +2

      ​@@shadowlordalphathey're nice to cool people

    • @shajden
      @shajden 3 หลายเดือนก่อน +1

      @@shadowlordalpha too bad

  • @Rafael-yo6hd
    @Rafael-yo6hd 3 หลายเดือนก่อน +19

    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 หลายเดือนก่อน +15

    Kinda looks like a Goodgis thumbnail but a completely different game. In a good way. It looks awesome

  • @duduken20
    @duduken20 3 หลายเดือนก่อน +1

    Zyger uploading, another treat for my weekend.

  • @swiftcreepa2096
    @swiftcreepa2096 2 หลายเดือนก่อน

    Thats freaking awesome!

  • @itsyaboijoe6389
    @itsyaboijoe6389 3 หลายเดือนก่อน +2

    ZYGER UPLOAD LETS GOOOO

  • @Diverse_Gaming_Zone
    @Diverse_Gaming_Zone 2 หลายเดือนก่อน +7

    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🎉

  • @diwakar_tsn
    @diwakar_tsn 3 หลายเดือนก่อน +8

    I used raylib for my c++ game pong
    semester project

  • @guilhermerodrigues4853
    @guilhermerodrigues4853 3 หลายเดือนก่อน

    Nice video! What resources did you use to implement 2d texture animation??

  • @Claude-bg6ef
    @Claude-bg6ef 2 หลายเดือนก่อน +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... 😅

  • @merc.5802
    @merc.5802 26 วันที่ผ่านมา

    this is the coolest thing I've ever seen

  • @tomasberzinskas8960
    @tomasberzinskas8960 3 หลายเดือนก่อน

    Great game, I love the goose!

  • @Icie145
    @Icie145 3 หลายเดือนก่อน +3

    Mmyes a banger

  • @zorymoon_yes_its_me
    @zorymoon_yes_its_me 3 หลายเดือนก่อน

    The thumbnail almost got me

  • @marsimplodation
    @marsimplodation 3 หลายเดือนก่อน +1

    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

  • @Uranerdbro
    @Uranerdbro 3 หลายเดือนก่อน +1

    W goodgis thumbnail

  • @nkanyisoinnocentkhwane3752
    @nkanyisoinnocentkhwane3752 3 หลายเดือนก่อน +4

    Is *Project Jude* still on your itinerary?

  • @Tech_Code127-76
    @Tech_Code127-76 3 หลายเดือนก่อน

    Nice

  • @AdrienTD
    @AdrienTD 3 หลายเดือนก่อน +2

    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 หลายเดือนก่อน +1

      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 หลายเดือนก่อน +1

      @@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 2 หลายเดือนก่อน +1

      I always try to allocate on the stack whenever possible.

  • @niema4154
    @niema4154 7 วันที่ผ่านมา

    i leave a subscribe, i really enjoy ur content :3 I am waiting for more ;3

  • @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?

  • @timmygilbert4102
    @timmygilbert4102 3 หลายเดือนก่อน

    Kween is back 🎉

  • @atiedebee1020
    @atiedebee1020 2 หลายเดือนก่อน +2

    But where is the OpenGL part
    Ive been baited

  • @RealCatDev
    @RealCatDev 3 หลายเดือนก่อน

    C++ LETS GOOO

  • @Abdullah-ww8yn
    @Abdullah-ww8yn 3 หลายเดือนก่อน

    Any updates on ur multiplayer fps???

  • @baker_dev
    @baker_dev หลายเดือนก่อน

    nicee

  • @Isaaclolwastaken
    @Isaaclolwastaken 23 วันที่ผ่านมา

    The new Dani

  • @assido_hd5214
    @assido_hd5214 หลายเดือนก่อน

    What keyboard are you using😊

  • @benpecto.benpecillton
    @benpecto.benpecillton 2 หลายเดือนก่อน

    cool channel bro

  • @musashi542
    @musashi542 3 หลายเดือนก่อน

    ever tried Clion ? whats your opinion on it ?

  • @WafflerSupreme
    @WafflerSupreme หลายเดือนก่อน

    Wouldn't A* or Dijkstra help with generating the level?

  • @TKaYonYoutube
    @TKaYonYoutube 2 หลายเดือนก่อน

    I do SDL2 to learn gameDev on C++

  • @lykoseleutherios
    @lykoseleutherios 2 หลายเดือนก่อน

    What's the name of the theme that showed in the start of the video

  • @TecnocraciaLTDA
    @TecnocraciaLTDA 3 หลายเดือนก่อน +1

    Do a 3D game now with opengl, plss, can be simple

  • @ItsOnlyTG
    @ItsOnlyTG 3 หลายเดือนก่อน

    Amazing fucking video

  • @user-de4mr7uk8d
    @user-de4mr7uk8d 3 หลายเดือนก่อน +6

    it's a goose. Geese is plural form like feet, teeth, meese

    • @osmanerenkose6692
      @osmanerenkose6692 3 หลายเดือนก่อน +1

      🤓☝

    • @astrrochroma
      @astrrochroma 3 หลายเดือนก่อน +1

      whats a meese ??

    • @dimitri0404
      @dimitri0404 3 หลายเดือนก่อน +1

      ​​@@astrrochromathe plural of a moose 🫎

  • @IbytheGOAT
    @IbytheGOAT 14 วันที่ผ่านมา

    what about a 3d game in C++ and OpenGL 👀

  • @theonewhowill4903
    @theonewhowill4903 3 หลายเดือนก่อน +1

    C++ game devlopment with no engine is a mark of a great programmer

    • @user-hl7lr8ld2i
      @user-hl7lr8ld2i 2 หลายเดือนก่อน

      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.

  • @randomly2000
    @randomly2000 2 หลายเดือนก่อน

    I love your Voice 😊

  • @Nemesisardans
    @Nemesisardans 2 หลายเดือนก่อน

    What do you major in university, why did u decided to go into programming?

  • @TecnocraciaLTDA
    @TecnocraciaLTDA 3 หลายเดือนก่อน

    Hellooooooo Zygerrr 🇧🇷 🇧🇷

  • @JoinasTV
    @JoinasTV 3 หลายเดือนก่อน +1

    As a goose and gamedesigner myself, I enjoyed your video very much!

  • @MunaAlaneme
    @MunaAlaneme 3 หลายเดือนก่อน

    Bro created Pacman Maker

  • @thecookieman568
    @thecookieman568 2 หลายเดือนก่อน

    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  2 หลายเดือนก่อน

      Best of luck. And music and sound effects are from epidemic sounds

  • @TheFrostFyr
    @TheFrostFyr 3 หลายเดือนก่อน

    Peck-Man

  • @KJ7JHN
    @KJ7JHN หลายเดือนก่อน

    Diagon ally. Poof! Harry? What are you doing down here? 😊

  • @ResistDemise
    @ResistDemise หลายเดือนก่อน

    More videos now

  • @christiankm8820
    @christiankm8820 3 หลายเดือนก่อน

    singular: goose
    plural: geese

  • @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 :))

  • @S0ggyW3tW4t4r
    @S0ggyW3tW4t4r 3 หลายเดือนก่อน

    Why is the goose/geese so horrify

  • @Martyrir
    @Martyrir 3 หลายเดือนก่อน +2

    SECOND....

  • @Zetoll
    @Zetoll 2 หลายเดือนก่อน +1

    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

  • @gruelingpine1857
    @gruelingpine1857 3 หลายเดือนก่อน

    It's a goose. Geese is the plural word. Would you try making a game with SDL?

  • @danielelskamp5527
    @danielelskamp5527 2 หลายเดือนก่อน

    huh

  • @IgorBlackHusbandElenaLitun8v0
    @IgorBlackHusbandElenaLitun8v0 3 หลายเดือนก่อน

    good work seniorita. (kohedlo/Imperial Game Engine 2 developer)

  • @PaulMetalhero
    @PaulMetalhero 3 หลายเดือนก่อน +1

    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

  • @emanuelprieto
    @emanuelprieto 3 หลายเดือนก่อน

    Its a Duck

  • @JasonMortimer3
    @JasonMortimer3 3 หลายเดือนก่อน

    learn Rust and make a game with it using Bevy 💖

    • @user-hl7lr8ld2i
      @user-hl7lr8ld2i 2 หลายเดือนก่อน

      Love to bevy, great engine

    • @n3y
      @n3y 2 หลายเดือนก่อน

      love to engine, great bevy

  • @that_guy1211
    @that_guy1211 3 หลายเดือนก่อน +1

    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 3 หลายเดือนก่อน +2

    where is the opengl part XD

    • @QWERTIOX
      @QWERTIOX 3 หลายเดือนก่อน

      I think custom library handles opengl

    • @yarpen26
      @yarpen26 หลายเดือนก่อน +1

      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 16 วันที่ผ่านมา

      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

  • @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?

  • @sarmalevrajitoare
    @sarmalevrajitoare 3 หลายเดือนก่อน

    like if u wanted to play the game =(

  • @user-hl7lr8ld2i
    @user-hl7lr8ld2i 2 หลายเดือนก่อน +2

    There was no opengl used here...

    • @BlessedDog
      @BlessedDog หลายเดือนก่อน +1

      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 16 วันที่ผ่านมา +1

      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"

  • @justaguynotamanyouwouldkno2207
    @justaguynotamanyouwouldkno2207 3 หลายเดือนก่อน +2

    FIRST

  • @VineToDay_
    @VineToDay_ 3 หลายเดือนก่อน

    You look like female Dani.

  • @GuiZeroUm
    @GuiZeroUm 3 หลายเดือนก่อน

    Whats your LinkedIn?