All OpenGL Effects!

แชร์
ฝัง
  • เผยแพร่เมื่อ 16 พ.ย. 2023
  • In this video, I will show you all of the graphical effects you can do in OpenGL, Vulkan, or DirectX that I know of. There are of course many more but this compilation will definitely have new things for you to learn 💪!
    All resources are on my Discord!
    / discord
    Wishlist Midnight Arrow:
    store.steampowered.com/app/23...
    Join this channel if you want to support me 😻:
    / @lowlevelgamedev9330
    Chapters:
    *GEOMETRY*:
    1:10 Waves Simulations
    1:42 World Curvature
    1:53 Skeletal Animations
    2:23 Decals
    2:43 Volumetric Rendering I (Clouds)
    3:05 Geometry Culling (Frustum Culling)
    3:53 Level of Detail (LOD)
    4:16 Tesselation Shaders
    4:34 Displacement Mapping
    4:39 Geometry Shaders
    5:18 Geometry Buffer
    5:45 Quaternions
    5:56 Realistic Clothes/Hair
    6:18 Wind Simulations
    *LIGHTING*:
    6:46 Normal Mapping
    7:13 Light Maps
    7:25 Lens Flare
    7:51 Sky Box (Atmospheric Scattering)
    8:02 Fog
    8:11 Chromatic Aberration
    8:30 Physically Based Rendering (PBR)
    8:58 Image-Based Lighting (IBL)
    9:22 Multiple Scattering Microfacet Model for IBL
    9:47 Global Illumination
    10:12 Spherical Harmonics
    10:36 Light Probes
    10:52 Screen Space Global Illumination (SSGI)
    11:07 Ray Tracing
    11:28 Subsurface Scattering
    11:44 Skin Rendering
    11:51 Volumetric Rendering II (God Rays)
    12:06 Parallax Mapping
    12:32 Reflections
    12:55 Screen Space Reflections
    13:15 Refraction
    13:50 Defraction
    14:06 Screen Space Ambient Occlusion (SSAO)
    14:28 Horizon Based Ambient Occlusion (HBAO)
    14:36 Screen Space Directional Occlusion (SSDO)
    15:12 Bloom
    15:50 High Dynamic Range (HDR)
    16:50 HDR With Auto Exposure (the one used for bloom)
    17:07 ACES Tonemapping HDR
    17:29 Depth of Field (Bokeh)
    17:49 Color Grading
    *SHADOWS*:
    18:33 Shadows
    18:46 Percentage Close Filtering (PCF)
    19:10 Static Geometry Caching
    19:28 PCF Optimizations
    20:11 Variance Shadow Mapping (VSM)
    20:29 Rectilinear Texture Wrapping for Adaptive Shadow Mapping
    20:53 Cascaded Shadow Mapping / Parallel Split Shadow Maps
    *SPECIAL EFFECTS*:
    21:34 Transparency
    22:26 Order Independent Transparency
    22:42 Depth Peel
    23:09 Weighted Blending
    23:21 Fragment Level Sorting
    23:33 Rendering Many Textures (Mega Texture & Bindless Textures)
    24:31 Anti-Aliasing (SSAA, MSAA & TAA)
    26:00 DLSS
    26:35 Adaptive Resolution
    27:05 Lens Dirt
    27:27 Motion Blur
    27:41 Post-Process Warp
    28:08 Deferred Rendering
    29:29 Tiled Deferred Shading
    29:29 Clustered Deferred Shading
    29:42 Z Pre-Pass
    30:01 Forward+ (Clustered Forward Shading)
    Music: Evan King - Booty Shake Robot
    Evan King - Everything is Okay
    Evan King - Pocket Universe
    Evan King - Spicy Boom
    Evan King - Invisible Walls
    / contextsensitive
    contextsensitive.bandcamp.com/
    Minecraft soundtrack: C418 - Danny
    Minecraft soundtrack: C418 - Minecraft
    Minecraft soundtrack: C418 - Haggstrom
    Spooky Scary Skeletons
    Song by Andrew Gold

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

  • @Nerthexx
    @Nerthexx 5 หลายเดือนก่อน +59

    Cool video, sadly I know all of this already, although - a nice reminder that some of these things exist.
    So, I've decided to give you some ideas:
    1 - VSM light leeking and overall quality can be improved. There is an alternative to VSM, called Exponent Shadow Mapping, which uses different moments and calculations. Combination of two - EVSM, has been a standard for many years. If we generate a mip-pyramid, we can also use it for soft shadows.
    2 - In CSM, some games have, say, 5 cascades, but don't render them real-time. Last cascade is precalculated or updated very slowly. Others are more dynamic, but still use 5-10 fps to save frames, and are rendered in between different frames.
    3 - Water, so, there are subsurface scattering approximations, making it look green in certain areas.
    4 - Alexandr Sannikov basically solved GI, both diffuse and specular, with his research, which is implemented in PoE 2 (check their latest livestream). Best use case is screenspace, topdown games.
    5 - Bent normals. Alexandr Sannikov also mentioned it, but the technique is 2 decades old. Basically you just bend your normal vector in the cone direction derived from AO, improving local shadows (if done in texture-space). Can be also precalculated for model-space and baked into vertex buffers. Good not only for diffuse occlusion, but for specular occlussion too (which is not seen very often in games).
    6 - Trees (in Horizon Zero Dawn I think - might be wrong) use similar approach, but use proxy geometry to bend normals in the direction of a tree volume, granting a more realistic lighting.
    7 - SSDO is cool, but there is also GTAO (HBAO with multibounce and color).
    8 - Virtual textures are cool for close-up details.
    9 - Animations with textures instead of skeletal. Basically bake animations in the texture and sample in a vertex shader. Cool for small things like book page flipping and birds flying.
    10 - Impostors with precomputed lighting. Cool for clouds, distance trees. Basic idea is that you bake your object from many directions into an atlas texture, and sample 2-3 times from different corresponding views and grab the one with the closest depth. Usually done with octahedral mapping (which is also used for normal texture compression, 2d to 3d spherical projection if making planets, etc.)
    11 - Outlines is a cool technique too. Best approaches are screenspace ones, which combine normal and depth, processed separately with sobel filter (edge filter), usually 3x3, but scaled up (it will skip, but it's okay) to desired radius. Radius is scaled by distance to the camera. There are other techniques, stencil based, mesh based, wireframe based, SDF based (voxel sdf).
    12 - SDF, of course. The one and only. Cool for UI rendering, text rendering, decal rendering. Vector graphics, basically, without vectors. MSDF can fix the lack of high frequencies.
    13 - Cheap global AO can be achieved with rendering the whole scene, like with shadow mapping, top down, from top to bottom basically, looking down (sky visibility term). EVSM should be good here. Use is with SSAO/texture space AO, choosing min() one. In combination with probes (multiscattering approximation), can be quite good (Ghost of Tsushima).
    14 - Triplanar shading. In general a good way to apply textures without UVs. In practice, can be used to project snow/dust/dirt/sand/moss layer to all geometry, masked by some topdown designer/procedurally authored mask.
    15 - Heightblending. Blending textures using height, basically. Good for splatmaps, decals.
    16 - Roughness could be appxorimated as variance (like in VSM) from high-resolution normal-map. Can be precalculated before runtime. Can be good for realistic water rendering since this approach gives you anisotropic roughness (anisortopy can be it's own separate detail, but I'm feeling lazy).
    17 - Cloth rendering. There are several physically based models for that too. Shadertoy has examples.
    18 - Histogram-preserving blending. Better than alpha blending, good for terrain, when trying to mix textures with different levels of resolution. Basic idea is that you grab low frequencies (sampled from max. lod texture) from highest resolution and subtract them from lower-resolution texture before adding two together. Can be repeated indefinitely amount of times, but usually 3 times. World of tanks uses it iirc.
    19 - Local tonemapping is a thing. Ghost of Tsushima.
    20 - Instancing for large amount of grass. Ghost of Tsushima.
    21 - Motion vectors can be used for better flip-book animations (PoE 2, many other games).
    22 - Dither can be useful for transparency (Witcher 3) and quantization (Rendering of INSIDE). Noise, created by dithering, can be fixed with bilateral blur.
    23 - Directional light is usually a dot, not a circle. So, it's incorrect to use it for sunlight. It also fights with IBL, some games usually remove sun from IBL maps manually. There are some games that fix the dot issue and give you the ability to control the radius. Don't remember the sources, but can be done with analytical area lights.
    24 - Specular lights usually have aliasing due to how they are calculated, there are some approximations to fix them without AA. Final Fantasy 14.
    That's it. Could have written more, but this, I think, is plenty enough. Enjoy :)

    • @lowlevelgamedev9330
      @lowlevelgamedev9330  5 หลายเดือนก่อน +11

      Damn you already gave me the content for part 2 🤣😂 thanks a lot I can't wait to take a look into all of them

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

      @@lowlevelgamedev9330 There is going to be part 2!? ))))

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

      @Nerthexx Can you show us your work then? :)

  • @user-qm4ev6jb7d
    @user-qm4ev6jb7d 5 หลายเดือนก่อน +49

    The "color grading" part made me laugh out loud. It's so genius yet so simple. After fine-tuning your colors in a separate app, you just say to your shader: "Here's a lookup table, just follow *that* and you're done!" No complicated color correction equations at runtime.

  • @masterD4250
    @masterD4250 5 หลายเดือนก่อน +44

    1:06 Geometry
    1:09 waves simulations
    1:42 world curvature
    1:52 skeletal animations
    2:24 decals
    2:43 volumetric rendering 1(clouds)
    3:05 geometry culing
    3:23 geometry culling(frustum culling)
    3:45 Level of Detail (LOD)
    4:15 tessolation shaders
    4:31 displacement mapping
    4:39 geometry shaders
    5:14 geometry buffer
    5:37 quaternions
    5:56 realistic clothes/hair
    6:18 wind simulations
    6:40 Lighting
    6:46 normal mapping
    7:14 light maps
    7:24 lens flare
    7:51 sky box
    7:55 sky box (atmopheric scattering)
    8:02 fog
    8:12 chromatic aberation
    8:30 phisically based rendering (PBR)
    8:58 image based lighting (IBL)
    9:22 multiple-scattering microfacet model for IBL
    9:47 global illumination
    10:12 spherical harmonics
    10:35 light probes
    10:51 screen space global illumination (SSGI)
    11:06 ray tracing
    11:25 subsurface scattering
    11:44 skin rendering
    11:50 volumetric rendering 2(god rays)
    12:06 parallax mapping
    12:33 reflections
    12:54 screen space reflections
    13:16 refraction
    13:49 defraction
    14:07 ambient occlusion
    14:17 screen space ambient occlusion (SSAO)
    14:28 horizon based ambient occlusion (HBAO)
    14:37 screen space directional occlusion (SSDO)
    15:13 bloom
    15:50 high dinamic range (HDR)
    16:50 HDR with auto exposure
    17:07 ACES tonemapping HDR
    17:28 depth of field
    17:42 depth of field (bokeh)
    17:49 color grading
    18:20 shadows
    18:33 basic shadows
    18:45 percentage close filtering (PCF)
    19:10 static geometry caching
    19:28 PCF Optimizations
    20:11 Variance Shadow Mapping (VSM)
    20:29 rectilinear texture wraping for adaptive shadow mapping
    20:47 cascaded shadow mapping/parallel-split shadow maps
    21:09 many more shadows effetcs
    21:16 special effetcs
    21:34 transparency
    22:26 order independent transparency
    22:41 depth peel
    23:09 weighted blending
    23:20 fragment level sorting
    23:32 rendering many textures
    23:43 rendering many textures ( mega texture)
    24:04 rendering many textures (bindless textures)
    24:30 anti aliasing
    24:38 super sample anti aliasing (SSAA)
    24:55 multi sample anti aliasing (MSAA)
    25:17 fast approximate anti aliasing (FXAA)
    25:29 temporal anti aliasing (TAA)
    23:02 deep learning super sampling (DLSS)
    26:34 adaptive resolution
    27:05 lens dirt
    27:27 motion blur
    27:42 port process warp
    28:08 deferred rendering
    29:29 tiled deferred shading
    29:29 clustered deferred shading
    29:46 z freepass
    30:02 forward+ (clustered forward shading)

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

      nice

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

      hero

  • @joshuacox4071
    @joshuacox4071 5 หลายเดือนก่อน +15

    there is so much to learn…. ive only done the basics with opengl , and have dabbled in webgl. none of this is trivial . i will be back to this video frequently

  • @UliTroyo
    @UliTroyo 5 หลายเดือนก่อน +21

    Great video! I went through and got all the timestamps; you can copy/paste them into the description :)
    *GEOMETRY*:
    1:10 Waves Simulations
    1:42 World Curvature
    1:53 Skeletal Animations
    2:23 Decals
    2:43 Volumetric Rendering I (Clouds)
    3:05 Geometry Culling (Frustum Culling)
    3:53 Level of Detail (LOD)
    4:16 Tesselation Shaders
    4:34 Displacement Mapping
    4:39 Geometry Shaders
    5:18 Geometry Buffer
    5:45 Quaternions
    5:56 Realistic Clothes/Hair
    6:18 Wind Simulations
    *LIGHTING*:
    6:46 Normal Mapping
    7:13 Light Maps
    7:25 Lens Flare
    7:51 Sky Box (Atmospheric Scattering)
    8:02 Fog
    8:11 Chromatic Aberration
    8:30 Physically Based Rendering (PBR)
    8:58 Image Based Lighting (IBL)
    9:22 Multiple Scattering Microfacet Model for IBL
    9:47 Global Illumination
    10:12 Spherical Harmonics
    10:36 Light Probes
    10:52 Screen Space Global Illumination (SSGI)
    11:07 Ray Tracing
    11:28 Subsurface Scattering
    11:44 Skin Rendering
    11:51 Volumetric Rendering II (God Rays)
    12:06 Parallax Mapping
    12:32 Reflections
    12:55 Screen Space Reflections
    13:15 Refraction
    13:50 Defraction
    14:06 Screen Space Ambient Occlusion (SSAO)
    14:28 Horizon Based Ambient Occlusion (HBAO)
    14:36 Screen Space Directional Occlusion (SSDO)
    15:12 Bloom
    15:50 High Dynamic Range (HDR)
    16:50 HDR With Auto Exposure (the one used for bloom)
    17:07 ACES Tonemapping HDR
    17:29 Depth of Field (Bokeh)
    17:49 Color Grading
    *SHADOWS*:
    18:33 Shadows
    18:46 Percentage Close Filtering (PCF)
    19:10 Static Geometry Caching
    19:28 PCF Optimizations
    20:11 Variance Shadow Mapping (VSM)
    20:29 Rectilinear Textre Wrapping for Adaptive Shadow Mapping
    20:53 Cascaded Shadow Mapping / Parallel Split Shadow Maps
    *SPECIAL EFFECTS*:
    21:34 Transparency
    22:26 Order Independent Transparency
    22:42 Depth Peel
    23:09 Weighted Blending
    23:21 Fragment Level Sorting
    23:33 Rendering Many Textures (Mega Texture & Bindless Textures)
    24:31 Anti-Aliasing (SSAA, MSAA & TAA)
    26:00 DLSS
    26:35 Adaptive Resolution
    27:05 Lens Dirt
    27:27 Motion Blur
    27:41 Post Process Warp
    28:08 Deferred Rendering
    29:29 Tiled Deferred Shading
    29:29 Clustered Deferred Shading
    29:42 Z Pre-Pass
    30:01 Forward+ (Clustered Forward Shading)

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

      Didn't expect for people to help me with this 😆thanks I will use it

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

      @@lowlevelgamedev9330 you should also use a 0:00 timestamp, for chapters to work in video player

  • @furkanunsal5814
    @furkanunsal5814 5 หลายเดือนก่อน +8

    you have just blazed through everything that I was working on last 2 years. seeing my "adventures" in front of me as the video carries through was amazing.

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

      😂😂 glad you found it nice, also if you have tried all of those stuffs you must be advanced 💪

  • @rmt3589
    @rmt3589 5 หลายเดือนก่อน +4

    This is an amazing video, and makes me excited!
    I'll for sure go through this once I actually have OpenGL set up. Still setting up git for my engine.

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

    Amazing video as always, thank you! Was really engaging and interesting.

  • @Finding_Fortune
    @Finding_Fortune 5 หลายเดือนก่อน +5

    Very nice! I definitely have to try out that curvature shader later. Im really interested in the refraction in the water, along with god rays and lens flares. The refraction will go well with your water caustics video hah

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

      Ah can't forget SSR either

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

    Чувак с именем Влад с акцентом чувака из Индии рассказывает какие есть приколы в OpenGL
    Мощно, лайк

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

      Чувака из Румынии*

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

      @@mhdtadeveloper я не писал из какой он страны, имя Влад в множестве славянских странах имеется

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

    This is gold, thank you!

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

    Amazing video my friend!

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

    Thanks a lot for this Video!

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

    Knew all of them, still watched the whole video, fantastic compilation.

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

    human is facinating. there have been decades of research and absolute geniuses worked on clever solutions just to play some games

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

      when you think about it it's reminecent of car manufacturers throwing their best engineers and millions of dollars just to win some race

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

      or try to get the coin out of the slot again on a string. genius. surely all the universal genii are stunned, and want to squeeze our rotund gonads when we procreate to assist because thank you so much for the american nazi party hey free west papua?

  • @GGodis
    @GGodis 5 หลายเดือนก่อน +5

    A more in-depth tutorial about the Forward+ rendering would be amazing.

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

    nice vid pahjeet!

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

    Cool! I wish you showed more of that world curvature formula!
    Edit: Nevermind I figured it out super fast, everyone, just have a uniform for your cameraposition in your vertex shader, and move gl_Position.y down based on distance to the camera, but on an exponential basis for a round-y shape. Hell yeah!

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

      yes nice job 💪 Also didn't find it online so I just asked chat gpt for help 😂🤫

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

    Very interesting!

  • @Josh-hl8jl
    @Josh-hl8jl 5 หลายเดือนก่อน +2

    this is a god tier video. cheers mate

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

    Esse canal é muito bom!

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

    This is cool as someone who makes a game engine by myself.

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

    Love your channel, do you work in the industry or just indie?

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

    The one thing I wished this coverd, binary space partitioning, ive had a lot of people tell me its outdated but im working on an engine that allows for open world spaces, but can also transition into using bsp tress to optimise indoor spaces. My next project is making the bsp trees physics objects and editable in real time because how cool would it be to make a giant base in game, then have it remain as optimised as it was outdoors, and on top of that it chaning in real time would make it fully destructible (ok with A LOT of work) but I think bsp still has massive potensial in modern day and its just ignored

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

      hm I guess nowadays people use quad trees and things like that. I haven't touched bsp yet

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

      @@lowlevelgamedev9330 quadtrees are better outside buildings, bsp better inside them. Bsp is cheap but a pain to code as you not only need to sort through the tree, but generate it somehow

  • @Iridium.
    @Iridium. 4 หลายเดือนก่อน

    Foarte tare . Și eu am început nu de mult sa îmi adâncesc cunoștințele de tip Shaders .

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

      imi place ca nici nu ma mai intreaba lumea daca sunt roman pentru ca isi dau seama instant cu totii 🤣🇷🇴 also very nice tine-o tot asa 💪

    • @Iridium.
      @Iridium. 4 หลายเดือนก่อน

      @@lowlevelgamedev9330da te inteleg la faza cu a fi roman :) .

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

    damn i love how he has that "top finco/honorable mention accent" and he does funny jokes at once

  • @user-pl4lo1lm2j
    @user-pl4lo1lm2j 5 หลายเดือนก่อน

    Bro is way too underrated

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

    what's the point of the depth pre-pass? Doesn't GPU do a early depth test automatically?

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

      so if you render 2 objects and one is in front of another, if you draw the fartjest one first, the gpu can't possibly know that it will be occluded in the future, so it has to color that object. With z pre pass you guarantee that you only run the fragment shader for each pixel only once

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

      @@lowlevelgamedev9330 Well yes, but the OpenGL Wiki says "Early Fragment Test is a feature supported by many GPUs that allow the certain Per-Sample Processing tests that discard fragments to proceed before fragment processing", it also says "The depth test can take place before the Fragment Shader executes." so my question is what's the point of implementing it yourself if a GPU is already doing it

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

    I hope one day your game engine will evolve into something, i hooe im gonna use your game engine to make my mobile games, eventhough i dont know how to code : )

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

    Hi,what you recommend to learn: OpenGL or Vulkan?

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

      OpenGL, Vulkan is just too difficult to learn as a beginner and takes a ton so I think it is better to learn opengl to get started and do some advanced stuff with it 💪

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

      big thanks@@lowlevelgamedev9330

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

    I've never seen a good tutorial on "eye adaptation effect". It is also called "auto exposure". Perhaps this can be discussed in the next part🍤

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

      It's pretty easy to do. You just have a baseline (target) exposure, create a mip-pyramid of your render, which allows you to quickly calculate average color of the scene, grab it's luminance value (convert RGB to HSB or YCbCr or whatever and use "luminance" or "brightness" parameter) and check if it's below or above your target (which differs with each tonemapping algorithm, so just choose one by trail and error), and converge, basically minimize the difference, taking small steps towards your target. To do this, you'd just calculate your exposure like this:
      float exposure = mix(average, target, EXPOSURE_SPEED) * EXPOSURE_STRENGTH

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

    It is said that Opengl is not good to start Graphics Programming with, DirectX is suggested instead, but that's only Windows/Xbox compatible.
    Vulkan is the alternative but it's supposedly very hard, I wanted to ask your opinion on that? Awesome video by the way.

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

      hm Opengl is the easiest api to learn. If you learn directx you won't need to learn opengl anymore so I woul say to start with opengl. They probsbly sugest directx because it is more modern but at that point you have to learn the new directx api and that is clearly harder than opengl

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

    5:56 lol right after you mention rotations being tricky its a game that has rotation bug. If you spin the camera 1000s of times in one direction in Witcher 3 it starts to break.

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

    in prima secunda mi-am dat seama ca esti roman :))))) cheers

  • @user-rn8ni2gl4f
    @user-rn8ni2gl4f 5 หลายเดือนก่อน +1

    Hey, I want to make a game engine, but I don't know where to start and how can I do that I didn't make any desktop app with using high-level programming language,
    I'm a Unity game developer and I know about C++, C# programming language, and some concepts like OPP
    I want to make a basic engine just for showcase and getting high paid job, I know how to make games but when it's comes to getting high paid job game engine can be good portfolio
    please suggest something , where I should start which thing I should learn and other thing which can be useful

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

      I have some videos that will help you. They will actually point to other videos and resources 😂 because thare are a lot of things to be learned but don't worry you can do it. The most difficult thing is learning opengl for the graphics part but after that it is not that difficult. Also before making an engine try to make a very simple game using my framework to understand how things work.
      Good luck 💪
      th-cam.com/video/tK7yugR3qDU/w-d-xo.htmlsi=UCQ2hRY3_ervV3Wc
      th-cam.com/video/A735Y4kMIPM/w-d-xo.htmlsi=XbsAiE_taIujKZxm
      th-cam.com/video/21BNxCLTGWY/w-d-xo.htmlsi=C-lka3RCRq7BNqHp
      th-cam.com/video/zJoXMfCI9LM/w-d-xo.htmlsi=tz34Fm_aAdmPUVit
      th-cam.com/video/HPBXr6Zdm4w/w-d-xo.htmlsi=mscuUWxwbXSf8jPc

    • @user-rn8ni2gl4f
      @user-rn8ni2gl4f 5 หลายเดือนก่อน

      Thanks @@lowlevelgamedev9330 😀I'll Work on that

  • @user-tk1re2hd2y
    @user-tk1re2hd2y 5 หลายเดือนก่อน

    I love you ❤

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

    You mentioned like 60% if GameDev TH-camrs that I watch

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

    even though OpenGL is now outdated, but it stil the best for potato gpu trying to make shading

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

      not exactly, more modern graphic apis can get more you more optimized. Also opengl is not that outdated since for web for example web gl is the only option

  • @AntonioNoack
    @AntonioNoack 5 หลายเดือนก่อน +4

    Generating motion vectors doesn't seem fun? It's one of the easiest advanced things to do 😊.
    Instructions:
    calculate gl_Position, just with the data of the previous frame;
    pass that, and gl_Position into the fragment shader.
    Divide both vec4s there by their w component. Subtract them. Done 🤩

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

      Also, just downsampling SSAO to get rid of noise is incorrect and causes edge bleeding. Use lateral filtering instead (only blend pixels that have similar depth/normal values).

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

      Oh ok I didn't know that, so you basically say that I just subtract the old position from the new one?

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

      @@lowlevelgamedev9330 Exactly, the position of the pixel in screen space, new one minus old one :), and that's all there is to it 😊

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

    15:21, no, bloom just is light that gets reflected by air molecules. Every object has it, but with brighter ones, you just notice it more.

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

      Yep, when looking through a thick atmospheric/volumetric effect, like smoke, it should appear larger due to scattering. But bloom also often confused with flares, which create similar effect/halos/glowing due to how light bends inside the camera lense (lenses), our eyes have that too. WIth astigmatism (I have one), it's even more present.

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

    @65 ooh, that offends me. That you cannot do use MSAA on deferred rendering isn't a fact, it's a mere myth.
    Ofc you can, just light calculations may be a little excessively expensive, as they should use done on multisampled targets, too.
    Source: my game engine does it 😄, and yes, ofc it was a little work to get everything working with multi-sampled buffers, but besides that it's easy.

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

      oh ok didn't know that either :)) thanks

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

    last one is the most powerful and genial

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

    Romaaaaniaaaa mentioned, let's goooooo! Hello from Ukraine 🥃

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

    Every time I try low-level programming I screw everything up. I envy anyone who can do it properly

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

    what about an ECS system

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

      well that's not really related to graphics stuff

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

      @@lowlevelgamedev9330 i know i was juste asking if your engine has it

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

    Этот мексиканский акцент прекрасен)))

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

    Instead of ACES Tonemapping better use AgX Tonemapping, it is the successor of ACES basically and I think from the same guy.

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

      U didn't know that thanks a lot can't wait to try it out 💪💪

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

    Can you need to make a new TH-cam channel called high level game dev using python

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

    I thought that I was rather knowledgeable in graphics programming. Now I realize that I didn't know jack shit.

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

    17th to comment

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

    hallo your computer has virus

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

    Bro please use ai to read the script instead, it will sound more human and legible

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

    lmao the accent is ridiculous

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

    dont bother making voiceover, just use robot voice. impossible to understand without subs.

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

    Man please at least try with the English accent

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

      sorry about that I'm trying my best 🥺😅