The OpenGL Software Ecosystem

Поділитися
Вставка
  • Опубліковано 17 лис 2024

КОМЕНТАРІ • 77

  • @OGLDEV
    @OGLDEV  5 місяців тому +23

    Errata: turns out that OpenAL is actually not governed by Khronos. This Open* prefix can be confusing...

    • @AlbertRyanstein
      @AlbertRyanstein 5 місяців тому +3

      Today is a good day brother. TY for a good video also

    • @OGLDEV
      @OGLDEV  5 місяців тому +1

      @AlbertRyanstein Thanks buddy!

  • @Daniel-Murphy951
    @Daniel-Murphy951 3 місяці тому +2

    This video was amazing! Back in college I took a graphics class where we learned openGL, but I never really knew why we needed stuff like GLFW, GLAD, GLEW, etc. This explained everything about it! I especially loved the history section about how OpenGL started.

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

      Glad you liked it!

  • @maxthomarino
    @maxthomarino 19 днів тому

    I love the structure that you employ in the videos
    each builds of the last, assuming no prior knowledge unless you've talked about it
    makes it very enjoyable to watch and aligns with my personal philosophy so I appreaciate this series you've made
    will definitely check out your website
    wish you all the best,
    Max

    • @OGLDEV
      @OGLDEV  19 днів тому

      Thank you so much!

  • @sealsharp
    @sealsharp 5 місяців тому +9

    My first contact with OpenGL was with the MiniGL driver, a "propriatary incomplete implementation"(yeah, that's a term) of openGL by 3Dfx which allowed OpenGL games ( mostly quake ) to run on 3Dfx Vodoo cards.
    John Carmack didn't care to implement 3fdx Glide for Quake, so 3dfx implemented what Carmack used and then other devs tried to use OpenGL in a way that it works with MiniGL which, as mentioned, was closed source and incomplete and since ID never released a list of OpenGL functions they used and 3Dfx never released a list of OpenGL functions they reimplemented, there was some guessing involved during a time when OpenGL was not fully supported by GPU drivers, Direct3D was considered crappy.

    • @OGLDEV
      @OGLDEV  5 місяців тому +3

      Those were the days...

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

      ID literally released the entire source.. but it was a tad too late for 3dfx.

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

      @@todorsamardzhiev144 Yeah. But in the 90ies, graphical progress happened so very fast. Between the Vodoo1 and the Vodoo3 are just 3 years. They built a whole new chip factory in Mexico during that time. And one more year later, 3dfx was a bunch of patents in nVidias desks.
      The RTX3090 is older than 3 years.
      Well, 1996's 350nm chip production and the current 4nm chip production are like physically different worlds, so of course making a new chip and building a new factory isn't a thing you can do in a year any more.

  • @valtovar
    @valtovar 5 місяців тому +6

    Nice video! I'd like to see some of the OpenGL and/or Vulkan videos running on SDL2/3, at least the initial setup. I have observed that many engines prefer this library.

    • @OGLDEV
      @OGLDEV  5 місяців тому +1

      I can take a look at SDL in the future but for now I have to focus on the core of OpenGL and Vulkan. I have seen many tutorials on SDL that actually show you how to create a complete game with it so I guess it's a much more extensive library than GLFW.

  • @eliasmartinezsanchez9009
    @eliasmartinezsanchez9009 5 місяців тому +2

    Wow, such a great explanation, congratulations.
    All the information you talked about should be included in the getting started section of any OpenGL tutorial.

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

      Thanks!

  • @dressyfiddle3946
    @dressyfiddle3946 5 місяців тому +9

    Exceptional explanation! 😄

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

      Thanks! 😃

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

    nice explanation now I finally understand why they are so important and keep me away from that compatibility hell

    • @OGLDEV
      @OGLDEV  3 місяці тому +1

      Thanks!

  • @TheDev-ht9zv
    @TheDev-ht9zv 5 місяців тому +3

    Awesome content!

    • @OGLDEV
      @OGLDEV  5 місяців тому +1

      Appreciate it!

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

    Nice overview. But OpenGL is definitely still available on the mac. Apple calls it deprecated to try and scare people into using metal, but baring terminal insanity (which is always possible for apple), OpenGL support will probably never go away.

    • @vvgr409
      @vvgr409 5 місяців тому +1

      I wouldn't be so sure about it. Apple is not afraid of removing old things and breaking backwards compatibility. They made it pretty clear when they removed 32 bit application support. Nothing stops them from removing OpenGL as well since most modern macOS apps are using Metal anyway.

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

      @@vvgr409 You might be right, we'll see. The fact remains however that OpenGL is currently still supported on macos.

    • @OGLDEV
      @OGLDEV  5 місяців тому +1

      Thanks! I've seen messages by Unity that they are also going to remove OpenGL support on Mac following Apple's deprecation statement so I would be very hesitant to continue developing in OpenGL there.

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

    Simply fantastico! Thank you Sir for all the help - compliments!

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

      You're very welcome!

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

    This is great!! It is good to know what things are the way they are.

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

      Thanks!

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

    this is exactly what i needed, thanks man!

    • @OGLDEV
      @OGLDEV  4 місяці тому +1

      Glad I could help!

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

    With new OpenGL core context some old GL functions were deprecated and removed, but including glew header those function names still exists and you can use them by mistake. GLAD will generate headers without those pesky function :).

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

      True, and using core profile in GLFW also helps avoiding deprecated stuff.

  • @syntaxed2
    @syntaxed2 5 місяців тому +4

    What are your thoughts on WebGPU and its abstractions over vulkan/dx/metal? - A decent replacement for opengl?

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

      I have to admit that I'm not familiar with WebGPU. Not sure if I would put it head to head with OpenGL since it's intended for the browser. I guess the best comparison is WebGL. Will be interesting to see where it goes.

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

      @@OGLDEV WebGPU has become a native solution now tho :D

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

      What do you mean by 'native'?

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

      @@OGLDEV I would highly suggest you look into WEBGPU. Native means it runs on desktop with bare C++ or rust. Bevy, the rust game engine uses WebGPU. The only downside is that it is new and lack documentation, but WebGPU is probably the only truly cross platform API, afaik. Thanks for all your work!.

    • @OGLDEV
      @OGLDEV  5 місяців тому +1

      @hakeemadam955 I hope to find the time for it...

  • @jasonwhitworth117
    @jasonwhitworth117 5 місяців тому +1

    This was awesome!

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

      Thanks!

  • @fab_81
    @fab_81 5 місяців тому +3

    the GTA SA poster was also rendered with openGL

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

      Ofcourse ;-)

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

    Still it is a fun history lesson

    • @OGLDEV
      @OGLDEV  3 місяці тому +1

      Thanks!

  • @notdeus3834
    @notdeus3834 5 місяців тому +2

    GTA SA? My brother🤙🤙🤙

    • @OGLDEV
      @OGLDEV  5 місяців тому +1

      That's what I'm telling ya, Sweet.

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

    I have used GLFW and GLAD, now I'm loading the function pointers myself and opening the window with the Win32 API for no pragmatic reason, and contrary to common sense, since I plan, at least for now, to also release the game on Linux.

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

      Cool, as long as you enjoy it ;-)

  • @KarimHamdallah-gc2el
    @KarimHamdallah-gc2el 5 місяців тому

    Any resources to handle CCD or FABRIK IK with Assimp

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

      Not exactly Assimp but you may be able to find some relevant info here: guillaumeblanc.github.io/ozz-animation/samples/

  • @Test-iv4pm
    @Test-iv4pm 5 місяців тому

    When you make a game, what objects do you start making first?

    • @OGLDEV
      @OGLDEV  5 місяців тому +1

      I have to admit that I'm not experienced with actual game development but my guess is that the answer depends on the type of game that you are developing. Is it outdoor or indoor? Do you need an animation system? Do you need to render terrain? Is it a 3D platformer? You should probably start with the largest objects and drill down to the smaller details. Just my 2cents...

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

    Hello. Do you assist if someone is stuck and needs your help? I am learning OpenGL and I tried to follow your tutorial on Object picking but I fail to follow, I need help with picking and would really appreciate your help.

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

      Sorry, but I work full time so I don't have time for such help. If you send me specific questions I'll try my best to answer.

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

    I configured open GL lib in windows but I cant compile in Dev ++

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

      What error are you getting?

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

      @@OGLDEV i cant compile anything

    • @OGLDEV
      @OGLDEV  5 місяців тому +1

      Sorry, I have never used Dev++. I only have time to support a single environment so I chose Visual Studio which is very popular and free (community edition).

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

      I have problems with lib configurations in wind like sfml open GL ray lib the setup seems correct but I cant compile or execute any file what to do ?

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

      What sort of problem is there with the lib config? What do you mean you can't compile or execute?

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

    It’s not just the opengl, but when you develop stuff till you need sound like FMOD and Physx of Nvidia and other libraries, they literally does not exist to Linux, but all works on windows 32 or 64 versions, that’s the reality, game development only works on windows

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

      Isn't Physx NVIDIA specific? You have Linux alternative for sound and physics such as OpenAL and Bullet physics. Many games on Steam are available for Linux as well. I agree that in general Windows seems like an easier platform to develop for but die hard Linux fans will claim the opposite. The real question is the size of the target market. If most of the PCs are running Windows then this is where most of the money is.

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

    OpenGL still works on all apple computers btw. It's "deprecated" but likely not going anywhere.

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

      True, but I doubt that anyone will start a new project using OpenGL on the Mac. Maintenance of existing code at the most.

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

      @@OGLDEV Raylib and Monogame both still use OpenGL on mac, but that might change at some point

    • @OGLDEV
      @OGLDEV  5 місяців тому +1

      I suspect they won't be writing a lot of new OpenGL code on the mac.

  • @Test-iv4pm
    @Test-iv4pm 5 місяців тому

    OpenGL and Modern OpenGL.... We need a SUPER Modern OpenGL. 3.3 and 4.5 (DSA) are pretty different.

    • @OGLDEV
      @OGLDEV  5 місяців тому +1

      DSA is considered modern OpenGL, but right now it doesn't look like they are going to create a super modern OpenGL...

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

    Are you reading from wiki!!!

    • @OGLDEV
      @OGLDEV  3 місяці тому +1

      I'm not reading from wiki but I did use it for the background research.

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

      @@OGLDEV Thank you for the reply

    • @OGLDEV
      @OGLDEV  3 місяці тому +1

      np :-)