I Made a Graphics Engine

Поділитися
Вставка
  • Опубліковано 3 лют 2023
  • Graphics Engine. Since you guys loved the video about me making a physics engine I made this. I try out a bunch of awesome stuff like rendering 2D, & 3D shapes, object loading, textures, materials, shaders, terrain generation and much more!
    Me Making a Physics Engine: • I Made A Physics Engine
    ➤My Links:
    Discord: / discord
    Instagram: / gabzxd
    Twitch: / officialzyger
    Twitter: / zygerdesigns
    Patreon: / zyger
    ➤Similar Videos:
    jdh - Making my web game engine - • Making my web game engine
    Guilherme Teres - I Made a GAME ENGINE in 30 HOURS! (from Scratch) - • I Made a GAME ENGINE i...
    n8dev - I Made My Own Game Engine - • I Made My Own Game Engine
    ➤Ignore:
    I created my own graphics engine engine. I tried implementing as many features as I could. I began by rendering 2D shapes onto the screen and realized how much work it is to calculate all eh vertices and indices hand. I then moved onto 3D shapes which was even harder. I created materials and textures which I would apply onto the objects. Then I moved onto implementing shaders such as transparency, fog, water, displacement, sin waves and more. I also took a quick break to add a skybox. As a final feature I added terrain generation based on a height and noise map. This was really difficult and it took a while to get it working but wow is it beautiful.
    Finally I added some camera controls, optimizations and the engine was finished.
    #gamedev #zyger #gameengine
  • Розваги

КОМЕНТАРІ • 356

  • @predopogdois
    @predopogdois Рік тому +534

    I love the "My game suddenly disappears in front of my eyes" feature, it adds so much to the aesthetic.

    • @cuppa_joe935
      @cuppa_joe935 Рік тому +11

      I especially loved the “it’s 3 AM and I’m staring at a wall of code it burns my eyes so much“ feature, it really gives a sense of realism.

    • @halfbakedproductions7887
      @halfbakedproductions7887 Рік тому +2

      You get that in Unity when you have the wrong Z-coordinate or the camera isn't set up properly.

  • @Chamerli
    @Chamerli Рік тому +723

    Be prepared Unity and Unreal, cuz we have a new challanger

    • @macaaris1018
      @macaaris1018 Рік тому +8

      😎

    • @somebody_2837
      @somebody_2837 Рік тому +14

      It looks cool and all, and I get the joke, but to be realistic, Unity and Unreal have better graphics and UI.

    • @JustJory
      @JustJory Рік тому +54

      @@somebody_2837 u ruined it

    • @somebody_2837
      @somebody_2837 Рік тому +8

      @@JustJory Guess you didn't read it properly

    • @bu3778
      @bu3778 Рік тому +7

      @@somebody_2837 😐💀

  • @microdavid7098
    @microdavid7098 Рік тому +169

    I like devlogs like these. Doing things that people are scared of and actually making them is something I respect

  • @HeroBabaa
    @HeroBabaa Рік тому +60

    3:26 I love how it says "Mom I programmed this all by myself" as the title of the window.

  • @sakamocat
    @sakamocat Рік тому +238

    directx is a good option for performance on windows but honestly i think opengl/vulkan is better since it runs on almost everything
    great job!

    • @ZygerGFX
      @ZygerGFX  Рік тому +71

      ooh I've never tried vulkan maybe I should then

    • @SylvanFeanturi
      @SylvanFeanturi Рік тому +118

      @@ZygerGFX Just remember who told you to "try Vulkan" so you can ban them from your channel later ]:->

    • @MatheusKlSch
      @MatheusKlSch Рік тому +27

      Just remember: it takes around 1k lines of code just to clear the screen in Vulkan, meanwhile OpenGL, despite being older (but not deprecated yet, at least on non-apple platforms) you can do the same with around 200 lines
      Good luck

    • @DFPercush
      @DFPercush Рік тому +30

      Vulkan is a much lower level API. It more closely represents what GPU hardware is doing than OpenGL, so it's more explicit and introduces some new concepts like pipelines and attachments. Consequently it can be much faster than OpenGL. But there is a learning curve. It takes a thousand lines to set it up, but about 3 lines to actually draw stuff. The pain is all at the beginning. ;)

    • @salbertus2578
      @salbertus2578 Рік тому +16

      @@ZygerGFX listen to the masses. Avoid Vulkan for your mental health

  • @cyborgryno6038
    @cyborgryno6038 Рік тому +247

    Man, this would of been revolutionary in 1992!

    • @neix.2298
      @neix.2298 Рік тому +15

      god damn! are we going to have tetris in real life?!?!

    • @moya_mama
      @moya_mama Рік тому +1

      ehh, then I wonder what century unity3d users live in....

    • @ryonagana
      @ryonagana Рік тому +5

      there's no DX in 1992

    • @DAOXINNo15
      @DAOXINNo15 Рік тому

      Bruh, you didn't have to massacre my girl like that. She is not my girl but still, bruh. Lol (I know you didn't mean it in a spiteful way)

  • @gabitheancient7664
    @gabitheancient7664 Рік тому +35

    I love how it all looks like 2000s game graphics and general vibes

  • @chesspaws
    @chesspaws Рік тому +15

    Programming, gaming, and Vivaldi. There is _hope_ for humanity. Thanks for sharing.

  • @temz7460
    @temz7460 Рік тому +11

    That's impressive work ! Great job imprementing all that !

  • @aminrezaie976
    @aminrezaie976 Рік тому +16

    i just really like that this video ended with "no" and nothing else XD

  • @noel1522
    @noel1522 Рік тому +4

    I stumbled upon your video in my feed and I wasn't expecting to be this entertained. You are a great coder with great comedic timing. This one liked and subscribed. Keep it up!

  • @runrajrun
    @runrajrun Рік тому +1

    Happy to find your channel! Really enjoyed the video 🔥

  • @darkzeroprojects4245
    @darkzeroprojects4245 Рік тому +4

    Congrats on that.
    I am trying to make couple of my own for my first few game projects when I reach to a beta stage.

  • @novadea1643
    @novadea1643 Рік тому +7

    Great work and I hope the best of luck in discovering more about game engines through writing your own, it's usually a futile endeavor since making a game engine != making a game, but I'm the kind of person that was mostly interested in the former and in that case I think it's absolutely one of the best ways to learn about game engines and why they're designed the way they're etc.

  • @ughughboi
    @ughughboi Рік тому +11

    I ONCE AGAIN LOVE VEHICULAR MANSLAUGHTER

  • @Bonnie20402
    @Bonnie20402 Рік тому

    Amazing video that popped up in my recommended tab a few days ago. Nice UA-cam algorithm, subscribed.

  • @JonathanSteadman2003
    @JonathanSteadman2003 Рік тому

    That is pretty awesome! Well done. 😀

  • @Terandium
    @Terandium Рік тому

    Love the sound effects

  • @gorilaoz6514
    @gorilaoz6514 Рік тому +12

    Every step that u take is worth if u learned something. keep the great work +1sub

  • @henrikd.8818
    @henrikd.8818 Рік тому +1

    nice work. Love it!

  • @That_0ne_Dev
    @That_0ne_Dev Рік тому +4

    This reminds me of one of my modules I did at uni where we was using cpp and dx11 to render terrain... although I made mine infinite and wrote my own obj model because I didn't wanna use ASSIMP lol anyway nice work. I know this kind of thing is a nightmare

  • @tanama84
    @tanama84 7 місяців тому

    OMG!! that was awesome, I can only slap png image to screen with SDL and make the moving. I will learn how to render 3D later ... great job!!

  • @sceplecture2382
    @sceplecture2382 Рік тому +2

    1:19 that sound is from maplestory! Memories...

  • @Ddotsun
    @Ddotsun 4 місяці тому

    The more projects you make the more ideas you can come up with
    I’m learning patience andnetwork powerful

  • @kanpekiken2481
    @kanpekiken2481 Рік тому +2

    Love to see this sort of content :)
    I was hoping you did Vulcan not directX since no one uses it anymore lol

  • @MenkoDany
    @MenkoDany Рік тому

    I think you sea of STOLE my HEART I mean good job

  • @Sammysapphira
    @Sammysapphira Рік тому

    I love your maplestory slime/mushroom death sounds

  • @scooterboom4157
    @scooterboom4157 6 місяців тому

    what the hell!?!? this is better then any tutorial on c++ 3d engine I could find!

  • @thephoenixsystem6765
    @thephoenixsystem6765 Рік тому +1

    That was awesome, just started learning OpenGL yesterday
    So I chase now

  • @GingerNingerish
    @GingerNingerish Рік тому +7

    Nice, that looks like it would give me a headache trying to figure out. Maybe one day.

    • @mr_confuse
      @mr_confuse Рік тому +1

      It is, but wait till you learn about Vulcan, boi are you in for a treat :)

  • @LHInstrumentals
    @LHInstrumentals Рік тому +2

    "Was it worth it? No" 😂

  • @landueled
    @landueled Рік тому +2

    Way to go, you're gonna be a new Tim Sweeney!

  • @piyushsingh8361
    @piyushsingh8361 Рік тому +1

    i liked the video even tho i got sick of the graphics but couldnt deny the fact that im also building my mind for c++

  • @datcanard4
    @datcanard4 Рік тому +1

    Great artistitic value to our world, thx

  • @korypeters2059
    @korypeters2059 Рік тому

    im blown away by how smart people are!!!

  • @unraveledultimatefate
    @unraveledultimatefate Рік тому +2

    That's what i like about acquiring knowledge, you can also use SDK of other engines and modify them to support for instance all CPU Cores, and the latest computer hardware in optimized way, but more speculatively. For example, i'd like to see Crysis make potential of all 10 CPU Cores to preserve power for the GPU, etc, I doubt the Remastered uses more than the original Crysis.

  • @kairu_b
    @kairu_b Рік тому

    Awesome work

  • @preludelight
    @preludelight Рік тому

    your window titles absolutely slay me

  • @BEN-ys6gu
    @BEN-ys6gu Рік тому +1

    Nice to see a girl in this community. the voice took me by surprise. Also this is a pretty good channel wth, you must be about to blow up to at least 300K subs

  • @ElaBaasel
    @ElaBaasel Рік тому +2

    Amazing work! You understand the basic functionality of an renderer, planes, shapes, textures, camera and object matrix, scenes, controls and a lot more. I'am impressed. Not everyone understands such these thing.

  • @apIthletIcc
    @apIthletIcc Рік тому

    subbed cuz I can tell from this video already i'm around like minds lol
    you explained alot of this in a way that my adhd brain sees a clear process it would take. I'm currently trying to learn some modeling and stuff related to building physics based vehicles for a vehicular combat sim/ extraction shooter set in a dark gritty cyberpunk 1930's california but with accurate soft body physics like beam ng and looter/shooter style dungeons underground.

  • @KoruxTV
    @KoruxTV 10 місяців тому

    What is used for water effect is called a tesselation shader or a geometry shader and it adds vertices to the triangles you send to it and displaces it using various displacement functions (sin waves would not give a convincing water effect)

    • @ZygerGFX
      @ZygerGFX  10 місяців тому

      Yes that is very true sin waves don't look good. And this is definitely something I want to try at one point.

  • @NoobSvCy
    @NoobSvCy Рік тому

    That exit music tho :3

  • @beo1863
    @beo1863 8 днів тому

    thank you , so cool !

  • @LunarcomplexMain
    @LunarcomplexMain Рік тому +2

    I remember doing stuff like this in JS via the canvas, tons of fun, but man, when you start having to worry about performance and create strategies for loading and unloading objects, that's gonna be loads of fun, gl

  • @dsnahogaragames
    @dsnahogaragames Рік тому +3

    I just started the other day with Vulkan and wanted to die inside! heheh, fantastic video

    • @thinkingspace3438
      @thinkingspace3438 Рік тому

      @@h..h yes, opengl can work on a lot of platforms and can be used with other multiplatform framework like sdl, so if you want to make an engine for a game from scratch that's the only think you can use nowadays imo. raw directx will only work on windows, and you don't want to make the compat layer yourself... maybe we'll get some stuff to work with vulkan easily but for now just go with opengl, even if its not the most modern thing

    • @wrmusic8736
      @wrmusic8736 Рік тому

      @@h..h OpenGL is easy to learn and use, but it won't provide you with parallelism like Vulkan would. One really cool thing in Vulkan is that you can create an asynchronous compute pipeline and offload a lot of stuff to it (like post processing / physics calculations) which will be calculated by the GPU while you are gathering data for the frame instead of waiting on compute shader to be done like it would be in case of OpenGL.
      Vulkan isn't hard to learn per se, it's just hard to track. I mean try to remember which descriptor set for which descriptor layout with which bindings did you create and did you assign them to pipeline? Oh boy.

  • @sohaib_t
    @sohaib_t Рік тому +1

    There is smth soothing abt the accent (assuming it's like British or Australian) it makes me feel like I understand what you are saying when I don't lok
    av never dabled in custom "engines" seems interesting tho

  • @JoshtynDotTV
    @JoshtynDotTV Рік тому

    i heard a very handsome whistle in that background music!

  • @dietrichdietrich7763
    @dietrichdietrich7763 8 місяців тому

    4:07 is important to me because I learned from you that a Sine Wave creates Wave Effects

  • @Humble_Electronic_Musician
    @Humble_Electronic_Musician Рік тому +1

    Impressive!

  • @kazutozoro9245
    @kazutozoro9245 Рік тому

    amazing :0

  • @fourlionnn
    @fourlionnn Рік тому

    I like the name "I AM LOSING MY MIND" as a name of the engine.

  • @itstommymate
    @itstommymate Рік тому

    This is cool :D Now make a PBR shader with Global illumination, ambient occlusion. Screen Space Reflections, Bloom and HDR. Don't worry, I belive you on this one 😎😎😎

  • @tomasdougan1419
    @tomasdougan1419 Рік тому

    Sick

  • @KiewieGames
    @KiewieGames Рік тому +2

    Me when terraria Music 2:53 💃🕺💃🕺💃🕺

  • @augnix888
    @augnix888 Рік тому

    Very nice

  • @alexclaz
    @alexclaz Рік тому

    Nice! you created the next Cyberpunk

  • @frosty7674
    @frosty7674 Рік тому

    I see so zyger is becoming the "I made my own" stuff user

  • @Kartik-dp4jf
    @Kartik-dp4jf Рік тому +2

    Hey, I was trying to implement something similar a while ago but got stuck in.. clipping. Can anyone explain or site any sources I can study to understand the implementation. It will be very helpful

  • @ThatGamePerson
    @ThatGamePerson Рік тому +4

    Zyger, why do you do this to me?
    You make a video showing something cool and then, my smooth brain is like "Better yeet all my projects and do something similar but more different" So now here I go to do some Vulkan stuffs. Thanks.

  • @gametram6139
    @gametram6139 Рік тому +5

    Cool Video!
    now make ambient occlusion, depth of feild, motion blur, emmision, baked global illumintation, and post process shaders.

    • @ZygerGFX
      @ZygerGFX  Рік тому +2

      thanks to be fair I have made post processing shades,and lighting stuff before . Haven't tried depth of feild, emission or motion blur, so need to give that a go. good idea :)

    • @vitogeist
      @vitogeist Рік тому +3

      bro got a list of demands lol 💀

    • @Itsme-wt2gu
      @Itsme-wt2gu Рік тому +1

      Try unreal and you will have a great idea , also implement lods system for mesh

  • @Itsme-wt2gu
    @Itsme-wt2gu Рік тому +1

    Learning is that don't mess just use the pre-existing for sake of simplicity

  • @kensclark
    @kensclark 5 місяців тому

    I dare you to use Vulkan. One thousand lines of code just to render a triangle. I love it though.

  • @Dynamic155
    @Dynamic155 Рік тому

    Wow, I can barely make a PowerPoint presentation, and this person just made a graphics engine. I think I need to reconsider my career choices.

  • @StormyYay
    @StormyYay 3 місяці тому

    The terraria music in the background is amazing

  • @Rogueixpresents
    @Rogueixpresents 6 місяців тому

    Mad respect!

  • @krishnanspace
    @krishnanspace Рік тому +1

    Crazy!! Can you point me to some good resources to get started into graphics programming?

  • @marcinsolecki1732
    @marcinsolecki1732 Рік тому

    0:07 Snail dying xD

  • @beau101023
    @beau101023 Рік тому

    Relatable dev content

  • @penguin7323
    @penguin7323 Рік тому

    cold video g! ! !

  • @AlbertRyanstein
    @AlbertRyanstein Рік тому

    Good stuff! How long u been learning dx?

  • @ChezFrog
    @ChezFrog 4 місяці тому

    wasn't expecting a skylanders reference

  • @emoneydev8684
    @emoneydev8684 Рік тому +4

    Did this a few years ago and almost killed my self

  • @TheBusinessDude
    @TheBusinessDude Рік тому

    Pretty cool🙂👍

  • @kipchickensout
    @kipchickensout Рік тому

    i thought the same like yesterday or so xD "yo how did i land on wikipedia mobile page"
    *looks into URL* "wait I'm not wtf"
    i hope that at least it has dark mode now :D

  • @trxlly
    @trxlly Рік тому +1

    sheeeeeeeeeeesh

  • @NeoShameMan
    @NeoShameMan Рік тому

    You are not dead!

  • @humdrum5408
    @humdrum5408 Рік тому +1

    I challenge you to make a game in it!

  • @Axelvad
    @Axelvad Рік тому +1

    "Was it worth it.. no!" 😁 Thinks the same everytime i close godot. At least its fun kind of.

  • @airman122469
    @airman122469 3 місяці тому

    “I made a graphics engine… by importing a bunch of libraries that implement much of the hard stuff”

  • @jasimwani
    @jasimwani Рік тому +1

    After the great titan war ended, Gabi moved to the woods of Marley and decided to make games for rest of her life😀

  • @erik9817
    @erik9817 Рік тому +1

    Nice! Which DirectX version are you using?

  • @_loss_
    @_loss_ Рік тому

    The aesthetics are nice at least

  • @philltheotherguy1868
    @philltheotherguy1868 Рік тому +2

    We all know what comes next: custom game engine.

  • @TheStickCollector
    @TheStickCollector Рік тому

    I want to make one eventually

  • @larsmaas07
    @larsmaas07 Рік тому

    Amazin

  • @snwfre
    @snwfre Рік тому

    Nice.

  • @maximuscupp1272
    @maximuscupp1272 Рік тому

    did u try a square or a 1 polygon skybox it might work for better performance idk

  • @LivingInLowLevel
    @LivingInLowLevel Рік тому

    Great 😃😃😃

  • @-Engineering01-
    @-Engineering01- Рік тому +1

    i don't know in which way should i describe my thoughts but here is: literally %99 of UA-camrs who s do make these gaming or graphics related videos but none of them is actually working in the game industry, they're just UA-camrs, except Freya Holmer.

    • @JoeJabby
      @JoeJabby Рік тому

      Zyger works for rare.inc

  • @RitterderRedlichkeit
    @RitterderRedlichkeit 8 місяців тому

    You should try vulkan -
    soooooo good

  • @APD-cv2wk
    @APD-cv2wk Рік тому

    gj m8

  • @wiktorwiktor12
    @wiktorwiktor12 Рік тому

    game of the year

  • @swrcPATCH
    @swrcPATCH Рік тому

    2:20 "I made is spin :)"

  • @user-tv3xd4sz3l
    @user-tv3xd4sz3l Рік тому

    cool

  • @danielelaprova4119
    @danielelaprova4119 Рік тому

    Great job! Now do it like a real man in ANSI C

  • @bitmasked
    @bitmasked Рік тому

    Ah yes, a story after my own heart: Approximate British Engineering. 🇬🇧

  • @huge_aubergine
    @huge_aubergine Рік тому

    It was worth it, believe me

  • @azul2856
    @azul2856 Рік тому

    can you please answer what's the name of the background musics?

  • @Javnfit
    @Javnfit Рік тому

    Nice video