The OpenGL Software Ecosystem

แชร์
ฝัง
  • เผยแพร่เมื่อ 24 ก.ย. 2024

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

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

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

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

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

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

      @AlbertRyanstein Thanks buddy!

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

      Those were the days...

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

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

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

      @@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.

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

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

      Glad you liked it!

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

    Exceptional explanation! 😄

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

      Thanks! 😃

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

      Thanks!

  • @TheDev-ht9zv
    @TheDev-ht9zv 3 หลายเดือนก่อน +3

    Awesome content!

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

      Appreciate it!

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

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

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

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

    This was awesome!

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

      Thanks!

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

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

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

      Thanks!

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

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

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

      You're very welcome!

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

    this is exactly what i needed, thanks man!

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

      Glad I could help!

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

    the GTA SA poster was also rendered with openGL

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

      Ofcourse ;-)

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

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

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

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

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

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

      What do you mean by 'native'?

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

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

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

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

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

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

      Thanks!

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

    GTA SA? My brother🤙🤙🤙

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

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

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

    Still it is a fun history lesson

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

      Thanks!

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

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

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

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

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

      Cool, as long as you enjoy it ;-)

  • @Test-iv4pm
    @Test-iv4pm 3 หลายเดือนก่อน

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

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

  • @Test-iv4pm
    @Test-iv4pm 3 หลายเดือนก่อน

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

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

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

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

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

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

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

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

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

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

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

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

      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.

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

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

      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.

  • @KarimHamdallah-gc2el
    @KarimHamdallah-gc2el 3 หลายเดือนก่อน

    Any resources to handle CCD or FABRIK IK with Assimp

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

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

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

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

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

      What error are you getting?

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

      @@OGLDEV i cant compile anything

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

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

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

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

    Are you reading from wiki!!!

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

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

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

      @@OGLDEV Thank you for the reply

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

      np :-)