![GetIntoGameDev](/img/default-banner.jpg)
- 634
- 991 459
GetIntoGameDev
Australia
Registrace 5. 01. 2021
Hi, my name's Andrew and I'm learning to make games. Join me as I learn, fail, and fail to learn.
Discord: discord.gg/vU2PKasZdn
Patreon: patreon.com/user?u=58955910
Discord: discord.gg/vU2PKasZdn
Patreon: patreon.com/user?u=58955910
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
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
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
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
very good tutorials 💙💙💙
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?
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.
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.
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.
Looks like a list for a tile map...
<3
Good timing for reviving the series, especially with the simd stuff. Hope this continues
Thank youu, i am doing some stuff with wgpu and never understood what was going on, but now i do :3
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.
More correct to use _mm256_store_epi32 instead of c like assignment
What about clearing the screen with memset?
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.
Really appreciate the series! Thank you all so much!
...tautology multithreaded?
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
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 ?
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.
Great video!
Congratulations!
Congrats! I'm currently in a similar life situation lol. Your channel is a great resource, thanks again!
Congrats!
Dude you are so cool!! Your C++ and OpenGL videos are helping me a lot, please keep doing what you do :)
Congratulations ! still in Thailand ?
Back in Australia now!
@@GetIntoGameDev wow... if I were you, I would have stayed in Thailand... I really wish I could immigrate to Thailand or Canada...
@@SkyFly19853 canada and thailand are like night and day
Congratulations on 10k subscribers 🎉
Always be an encouragement and support ,I love you💓
Thankyou, love you too! 💓
An entire part of my college course basically summed up in 10 minutes. Good job sir.
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.
You and me both, didn’t realize when I started down this path that I’d need to reverse engineer my graphics card 😬
making progress, are we?
It’s getting there!
@@GetIntoGameDev indeed !
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! 👍😁😅
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
Great explanations! But aren't semaphores purely for GPU and fences GPU/CPU synchronizations? At 14:45.
Correct!
would numba just silently ignore the block if it could not compile it?
It will print out a message along the lines of “nopython failed”
Looks like they've changed winit significantly. There's no WindowBuilder now
Yep, winit is a nightmare. Check out my glfw wgpu videos!
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.
you could consider creating courses for udemy, I would buy them.
hello, thanks for this content!
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.
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.
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.
Oh my, I thought your intro was realtime render by you
sick intro 🤙
I have an issue with building the wheel for PyOpengl_accelerate
I have an error , when I tried to install opengl_accelerate. It said that failed building wheel for pyopengl_accelerate
cant we just use alloc rather than doing char[1024]
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.
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?
The menu font is quite difficult to read. For Thai people, it just appears as random characters.
Thanks for the feedback! ☺️
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.
Can't believe that this doesn't have any more views! Such a good series.
Any more Metal renderer videos coming?
Within the next few weeks
That menu intro looks really good
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.
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.
@@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!
I hear you, macOS' lack of support for keyboard and mouse input has been criminal.
@@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