GetIntoGameDev
GetIntoGameDev
  • 634
  • 991 459
Linear Algebra for Game Development 3: Vector Projection
#gamedev #gamedevelopment #programming
Code: github.com/amengede/linear-algebra-for-beginners
Playlist: czcams.com/play/PLn3eTxaOtL2MxUFi19FEtvizSuG5AGaUb.html
Patreon: www.patreon.com/user/membership?u=58955910
Discord: discord.gg/vU2PKasZdn
zhlédnutí: 36

Video

Concurrent Programming: Compute Shaders
zhlédnutí 343Před 18 hodinami
#gamedev #gamedevelopment #programming Lodev's Tutorial: lodev.org/cgtutor/raycasting.html code: github.com/amengede/concurrent_raycasting Playlist: czcams.com/play/PLn3eTxaOtL2MUCn4yK6-Vieg3Q0LRWQnI.html Discord: discord.gg/vU2PKasZdn Patreon: patreon.com/user?u=58955910 X: @blindspotsoft
Linear Algebra for Game Development 2: Vector Dot Product
zhlédnutí 252Před 18 hodinami
#gamedev #gamedevelopment #programming Code: github.com/amengede/linear-algebra-for-beginners Playlist: czcams.com/play/PLn3eTxaOtL2MxUFi19FEtvizSuG5AGaUb.html Patreon: www.patreon.com/user/membership?u=58955910 Discord: discord.gg/vU2PKasZdn
Concurrent Programming: Taskflow
zhlédnutí 221Před 20 hodinami
#gamedev #gamedevelopment #programming Lodev's Tutorial: lodev.org/cgtutor/raycasting.html Taskflow: github.com/taskflow/taskflow code: github.com/amengede/concurrent_raycasting Playlist: czcams.com/play/PLn3eTxaOtL2MUCn4yK6-Vieg3Q0LRWQnI.html Discord: discord.gg/vU2PKasZdn Patreon: patreon.com/user?u=58955910 X: @blindspotsoft
Concurrent Programming: SIMD
zhlédnutí 344Před 20 hodinami
#gamedev #gamedevelopment #programming Lodev's Tutorial: lodev.org/cgtutor/raycasting.html SIMD Tutorial: fabiensanglard.net/revisiting_the_pathtracer/SIMD_Tutorial.pdf code: github.com/amengede/concurrent_raycasting Playlist: czcams.com/play/PLn3eTxaOtL2MUCn4yK6-Vieg3Q0LRWQnI.html Discord: discord.gg/vU2PKasZdn Patreon: patreon.com/user?u=58955910 X: @blindspotsoft
Concurrent Programming: Series Introduction
zhlédnutí 284Před 23 hodinami
#gamedev #gamedevelopment #programming Lodev's Tutorial: lodev.org/cgtutor/raycasting.html code: github.com/amengede/concurrent_raycasting Playlist: czcams.com/play/PLn3eTxaOtL2MUCn4yK6-Vieg3Q0LRWQnI.html Discord: discord.gg/vU2PKasZdn Patreon: patreon.com/user?u=58955910 X: @blindspotsoft
Vulkan with C++, Stage 13: Multithreaded Rendering
zhlédnutí 586Před dnem
#gamedev #gamedevelopment #programming code: github.com/amengede/getIntoGameDev/tree/main/vulkan playlist: czcams.com/play/PLn3eTxaOtL2Nr89hYzKPib7tvce-ZO4yB.html Discord: discord.gg/vU2PKasZdn Patreon: patreon.com/user?u=58955910 X: @blindspotsoft
10k Subscriber Special
zhlédnutí 379Před dnem
Cringe alert!
Vulkan with C++, Stage 12: Synchronization
zhlédnutí 175Před dnem
#gamedev #gamedevelopment #programming code: github.com/amengede/getIntoGameDev/tree/main/vulkan playlist: czcams.com/play/PLn3eTxaOtL2Nr89hYzKPib7tvce-ZO4yB.html Discord: discord.gg/vU2PKasZdn Patreon: patreon.com/user?u=58955910 X: @blindspotsoft
Vulkan with C++, Stage 11: Runtime Shader Compilation
zhlédnutí 585Před dnem
#gamedev #gamedevelopment #programming code: github.com/amengede/getIntoGameDev/tree/main/vulkan playlist: czcams.com/play/PLn3eTxaOtL2Nr89hYzKPib7tvce-ZO4yB.html Discord: discord.gg/vU2PKasZdn Patreon: patreon.com/user?u=58955910 X: @blindspotsoft
Nak's Quest Devlog: Menu is looking good.
zhlédnutí 925Před 14 dny
#gamedev #gamedevelopment #programming Discord: discord.gg/vU2PKasZdn Patreon: patreon.com/user?u=58955910 X: @blindspotsoft
Game Development in PyGame: Finite State Machines
zhlédnutí 794Před 21 dnem
#gamedev #gamedevelopment #programming playlist: czcams.com/play/PLn3eTxaOtL2P11PhMB60gL2xyxkBom6Pd.html code: github.com/amengede/getIntoGameDev/tree/main/legacy pyopengl/stage14 Discord: discord.gg/vU2PKasZdn Patreon: patreon.com/user?u=58955910 X: @blindspotsoft
Game Engine Architecture in PyGame: Dynamic Optimisations
zhlédnutí 321Před 21 dnem
#gamedev #gamedevelopment #programming playlist: czcams.com/play/PLn3eTxaOtL2P11PhMB60gL2xyxkBom6Pd.html code: github.com/amengede/getIntoGameDev/tree/main/legacy pyopengl/stage13 Discord: discord.gg/vU2PKasZdn Patreon: patreon.com/user?u=58955910 X: @blindspotsoft
Game Engine Architecture in PyGame: Static Optimisations
zhlédnutí 469Před 21 dnem
#gamedev #gamedevelopment #programming playlist: czcams.com/play/PLn3eTxaOtL2P11PhMB60gL2xyxkBom6Pd.html code: github.com/amengede/getIntoGameDev/tree/main/legacy pyopengl/stage12 Discord: discord.gg/vU2PKasZdn Patreon: patreon.com/user?u=58955910 X: @blindspotsoft
WGPU for beginners 3: Shaders
zhlédnutí 422Před 28 dny
#gamedev #gamedevelopment #programming Discord: discord.gg/vU2PKasZdn Patreon: patreon.com/user?u=58955910 Code: github.com/amengede/wgpu Playlist: czcams.com/play/PLn3eTxaOtL2PNbW4ou-APMV9W9m6nppYl.html X: @blindspotsoft
Game development in PyGame: making a basic map
zhlédnutí 1,2KPřed 28 dny
Game development in PyGame: making a basic map
Game Development in Rust: Calling Assembly Code
zhlédnutí 596Před měsícem
Game Development in Rust: Calling Assembly Code
WGPU for beginners 2: making a blank screen (glfw)
zhlédnutí 362Před měsícem
WGPU for beginners 2: making a blank screen (glfw)
WGPU for beginners 1: window and event loop (glfw)
zhlédnutí 877Před měsícem
WGPU for beginners 1: window and event loop (glfw)
Vulkan with C++, Stage 10: Dynamic Rendering
zhlédnutí 704Před měsícem
Vulkan with C , Stage 10: Dynamic Rendering
Vulkan with C++, Stage 9: Shader Objects
zhlédnutí 362Před měsícem
Vulkan with C , Stage 9: Shader Objects
Vulkan with C++, Stage 8: Image Views
zhlédnutí 158Před měsícem
Vulkan with C , Stage 8: Image Views
Vulkan with C++, Stage 7: Swapchain
zhlédnutí 298Před měsícem
Vulkan with C , Stage 7: Swapchain
Game Engine architecture in PyGame: (somewhat) decoupling data from systems
zhlédnutí 160Před měsícem
Game Engine architecture in PyGame: (somewhat) decoupling data from systems
Game Engine architecture in PyGame: Multiple source files
zhlédnutí 97Před měsícem
Game Engine architecture in PyGame: Multiple source files
Pygame with Legacy OpenGL. Stage 8: Lighting
zhlédnutí 65Před měsícem
Pygame with Legacy OpenGL. Stage 8: Lighting
Pygame with Legacy OpenGL. Stage 7: Textures
zhlédnutí 47Před měsícem
Pygame with Legacy OpenGL. Stage 7: Textures
Pygame with Legacy OpenGL. Stage 6: First Person Camera
zhlédnutí 131Před měsícem
Pygame with Legacy OpenGL. Stage 6: First Person Camera
Pygame with Legacy OpenGL. Stage 5: Vertical mouselook
zhlédnutí 42Před měsícem
Pygame with Legacy OpenGL. Stage 5: Vertical mouselook
Pygame with Legacy OpenGL. Stage 4: Horizontal mouselook
zhlédnutí 59Před měsícem
Pygame with Legacy OpenGL. Stage 4: Horizontal mouselook

Komentáře

  • @astra-dev
    @astra-dev Před 17 hodinami

    very good tutorials 💙💙💙

  • @mikelevels1
    @mikelevels1 Před 22 hodinami

    Loving this content! Will compute shaders be added to the C++ Vulkan tutorial? Additionally, is it possible to pass the result from a compute pass straight into a vertex shader? I mean without transferring the memory back to the host?

    • @GetIntoGameDev
      @GetIntoGameDev Před 20 hodinami

      1: Yes! I'll probably use them for visibility tests. 2: Yes! In OpenGL this is actually the default behaviour. In this code I bind the storage buffer once at creation, the compute shader writes to it and the geometry shader (but could be any shader module at all) reads from it, no host involvement beyond synchronisation of shaders.

  • @okanguclu4567
    @okanguclu4567 Před dnem

    Why are you uploading the colours buffer to the gpu. Couldn't you just define constants in the shader for it? Would be faster, since you don't need to transfer it from CPU to GPU anymore.

    • @GetIntoGameDev
      @GetIntoGameDev Před 23 hodinami

      Fair point! Defining as a shader constant may speed things up further, not on the memory bus since I’m only transferring once at program creation, but by reducing the number of memory reads.

  • @SkyFly19853
    @SkyFly19853 Před dnem

    Looks like a list for a tile map...

  • @mouradouchane
    @mouradouchane Před dnem

    <3

  • @UhGoomba
    @UhGoomba Před 2 dny

    Good timing for reviving the series, especially with the simd stuff. Hope this continues

  • @Babakinha
    @Babakinha Před 2 dny

    Thank youu, i am doing some stuff with wgpu and never understood what was going on, but now i do :3

  • @chatterjeeabhishek
    @chatterjeeabhishek Před 2 dny

    I am a mac user but I skipped the mac portion because i already saw the windows version (since it was earlier in the video) and hence skipped the mac version, and not because of preference.

  • @loject
    @loject Před 3 dny

    More correct to use _mm256_store_epi32 instead of c like assignment

  • @AE4i1
    @AE4i1 Před 3 dny

    What about clearing the screen with memset?

    • @GetIntoGameDev
      @GetIntoGameDev Před 3 dny

      It works but it’s a little slower than simd (1800 fps vs 2300 in debug mode, 2300 vs 3000 fps in release), and because memset converts the int to a byte it only works for grayscale colors.

  • @mikelevels1
    @mikelevels1 Před 3 dny

    Really appreciate the series! Thank you all so much!

  • @colonthree
    @colonthree Před 3 dny

    ...tautology multithreaded?

  • @franklynotyourbussiness9401

    I'm gonna wait for the taskflow, I remember that being outlines as hugely effective and very simple to use way for multithreading in game engine architecture book

  • @MarcAntoine29_YT
    @MarcAntoine29_YT Před 5 dny

    i am getting the error "numpy.dtype size changed, may indicate binary incompatibility. Expected 96 from C header, got 88 from PyObject" an i dont know how to fix it can you help ?

    • @GetIntoGameDev
      @GetIntoGameDev Před 4 dny

      Not sure on your specifics but I used to see this a lot with people using anaconda/pycharm. Those ides tend to use a different version of numpy.

  • @0xVBMatrix
    @0xVBMatrix Před 5 dny

    Great video!

  • @tinkerboi
    @tinkerboi Před 5 dny

    Congratulations!

  • @azaias
    @azaias Před 5 dny

    Congrats! I'm currently in a similar life situation lol. Your channel is a great resource, thanks again!

  • @kubiz198
    @kubiz198 Před 6 dny

    Congrats!

  • @Julian-mj7hy
    @Julian-mj7hy Před 6 dny

    Dude you are so cool!! Your C++ and OpenGL videos are helping me a lot, please keep doing what you do :)

  • @SkyFly19853
    @SkyFly19853 Před 6 dny

    Congratulations ! still in Thailand ?

    • @GetIntoGameDev
      @GetIntoGameDev Před 5 dny

      Back in Australia now!

    • @SkyFly19853
      @SkyFly19853 Před 5 dny

      @@GetIntoGameDev wow... if I were you, I would have stayed in Thailand... I really wish I could immigrate to Thailand or Canada...

    • @spamchamp628
      @spamchamp628 Před 5 dny

      @@SkyFly19853 canada and thailand are like night and day

  • @CoolestPossibleName

    Congratulations on 10k subscribers 🎉

  • @natchadanisaisue1594

    Always be an encouragement and support ,I love you💓

  • @moistness482
    @moistness482 Před 6 dny

    An entire part of my college course basically summed up in 10 minutes. Good job sir.

  • @DaminGamerMC
    @DaminGamerMC Před 6 dny

    what i dont get is why this is needed to be done by us. Its not like we are ever going to no use syncronization. I think it is good that vulkan gives us more control but some things are just not needed imo.

    • @GetIntoGameDev
      @GetIntoGameDev Před 6 dny

      You and me both, didn’t realize when I started down this path that I’d need to reverse engineer my graphics card 😬

  • @SkyFly19853
    @SkyFly19853 Před 6 dny

    making progress, are we?

  • @mattstroker3742
    @mattstroker3742 Před 6 dny

    You are a God. Thank you for teaching us. I've been wanting to create things like I saw in demos like future crew's second reality and panic ever since I was a kid. Now I have the time and soon the knowledge. In part thanks to you. So thank you very much! 👍😁😅

  • @adreto2978
    @adreto2978 Před 7 dny

    Nice mate. Like you I was stuck on this for a couple days as im just learning OpenGL. knew how to use VAO and VBO but didnt 100% grasp the why until I watched this

  • @user-ry2nq7ng5e
    @user-ry2nq7ng5e Před 7 dny

    Great explanations! But aren't semaphores purely for GPU and fences GPU/CPU synchronizations? At 14:45.

  • @gedtoon6451
    @gedtoon6451 Před 7 dny

    would numba just silently ignore the block if it could not compile it?

    • @GetIntoGameDev
      @GetIntoGameDev Před 7 dny

      It will print out a message along the lines of “nopython failed”

  • @rozt107
    @rozt107 Před 7 dny

    Looks like they've changed winit significantly. There's no WindowBuilder now

    • @GetIntoGameDev
      @GetIntoGameDev Před 7 dny

      Yep, winit is a nightmare. Check out my glfw wgpu videos!

  • @user-qj7gw1kj3u
    @user-qj7gw1kj3u Před 7 dny

    Your videos here are really a great resource for learning WebGPU. I really appreciate your effort. This part contains a lot of steps from making the shader to actually drawing it to the canvas, and I don't understand why many of the steps are necessary. I would struggle to recreate it on my own. I'll continue to the next videos, but I'd like to ask you if this is just something where I should continue and hang on, and at some point, it will make sense? Or if you think it would be more beneficial to read some theory to really grasp what encoders, pipelines, buffers etc. are? I know what these things are, but I struggle to remember and understand why all these data have to go through so many steps in the API.

  • @TheDev-ht9zv
    @TheDev-ht9zv Před 8 dny

    you could consider creating courses for udemy, I would buy them.

  • @TheDev-ht9zv
    @TheDev-ht9zv Před 8 dny

    hello, thanks for this content!

  • @davidmartin5351
    @davidmartin5351 Před 8 dny

    If you get into the habit of using your batch file to execute the program (analogous to "make run"), you can have your batch file check if the GLSL source file is newer than the SPIR-V file, and then recompile as necessary. This covers the similar error of updating your C++ source code and forgetting to recompile with a single common mechanism.

  • @user-qj7gw1kj3u
    @user-qj7gw1kj3u Před 8 dny

    When I add "@webgpu/types" to types in tsconfig, I get an error on the file: "Cannot find type definition file for '@webgpu/types'. The file is in the program because: Entry point of type library '@webgpu/types' specified in compilerOptionsts". I do have @webgpu/types v 0.1.43 installed though.

    • @user-qj7gw1kj3u
      @user-qj7gw1kj3u Před 8 dny

      I figured out a solution by reading the readme of @webgpu/types a bit more closely. Today, it says to use _either_ types _or_ typeRoots in tsconfig, not both of them.

  • @SIRIUSNJ
    @SIRIUSNJ Před 8 dny

    Oh my, I thought your intro was realtime render by you

  • @CoolestPossibleName

    sick intro 🤙

  • @Jovenel-v7s
    @Jovenel-v7s Před 8 dny

    I have an issue with building the wheel for PyOpengl_accelerate

  • @Jovenel-v7s
    @Jovenel-v7s Před 8 dny

    I have an error , when I tried to install opengl_accelerate. It said that failed building wheel for pyopengl_accelerate

  • @rushikeshbhavsar1564

    cant we just use alloc rather than doing char[1024]

  • @Mustlight
    @Mustlight Před 9 dny

    I like the way you present and explain the stuff, keep up the good work man. It's great to see someone is explaining stuff entertaining and clear at the same time.

  • @meanmole3212
    @meanmole3212 Před 9 dny

    Do you have a video on Rust + SDL2 when it comes to compiling executables for both Windows and Linux that the user can just run without any hassle? Is it possible to produce such binaries for both platforms directly from Linux only with cross-compiling?

  • @momodem2072
    @momodem2072 Před 13 dny

    The menu font is quite difficult to read. For Thai people, it just appears as random characters.

  • @Hector-bj3ls
    @Hector-bj3ls Před 14 dny

    The matrix library could be used like this: const projection = mat4.perspective(mat4.create(), ...); The reason to accept an "out" as the first parameter is for performance reasons. It allows you to avoid creating temp objects. You can just pre allocate a bunch of matrices and then reuse them over and over. Helps avoid GC pauses.

  • @cappuch__
    @cappuch__ Před 14 dny

    Can't believe that this doesn't have any more views! Such a good series.

  • @luthecoder
    @luthecoder Před 14 dny

    Any more Metal renderer videos coming?

  • @oyalesalami
    @oyalesalami Před 15 dny

    That menu intro looks really good

  • @LoveAustinVideos
    @LoveAustinVideos Před 15 dny

    Thanks for the videos! Question for you on c++ and Metal, how can we handle keyboard and trackpad/mouse input on macOS? I’ve tried sfml and sdl2 with no luck on my Mac M3. Interested in making a game engine but need the controller input aspect.

    • @GetIntoGameDev
      @GetIntoGameDev Před 15 dny

      I’m surprised SDL2 isn’t working, its event system should be cross platform. I’ll take a look at it when I get around to making a video on input.

    • @LoveAustinVideos
      @LoveAustinVideos Před 15 dny

      @@GetIntoGameDev thanks a lot! Both libraries let me include the .framework in binary libraries but it gives me an “abort with payload” error when running, I thought it must have been my version of Xcode. I will try sdl2 again. I also considered adding keyboard input into the Appkit.h framework for c++, but it didn’t work when I tried adding it, because it seems the original AppKit had input/output features. I looked through coregraphics as well as quartzcore but they all seem to be missing the c++ for keyboards when the original obj c could have had a method. Whoever finds out a good way to do it will be helping macOS c++ majorly can’t imagine it’s Apple hardware and they just disregard an entire language keyboard access!

    • @GetIntoGameDev
      @GetIntoGameDev Před 15 dny

      I hear you, macOS' lack of support for keyboard and mouse input has been criminal.

    • @LoveAustinVideos
      @LoveAustinVideos Před 15 dny

      @@GetIntoGameDev another option is objective c++, where the keyboard is controlled with a .mm but it’s a little bit confusing combining languages, but I know it’s relatively simple in obj c