- 24
- 39 295
tareqgamedev
Jordan
เข้าร่วมเมื่อ 4 พ.ค. 2024
Are you interested in learning about game development? Writing code for gameplay, AI, and more? Well, you've come to the right place!
Hi, My name is Tareq, and I'm a computer engineering graduate who fell in love with game development. I love C++ and use both Unreal Engine and Unity to create games.
I create tutorials on various topics related to game development, such as 🎮gameplay, 🔢math and physics, 🧑💻programming,💡AI, and more. I do my best to explain everything in detail, especially when it comes to math since it's a crucial skill for all game developers.
🔥If you love 2D platformer games like I do, then check out The 2D Gameplay Mechanics Pack by following the link below. It's a comprehensive tool that contains a wide range of gameplay mechanics, and you can learn a lot by examining each mechanic in the pack. tareqmalkawi.itch.io/2d-gameplay-mechanics-pack
Subscribe to the channel and press the bell 🔔 for the latest updates!
Hi, My name is Tareq, and I'm a computer engineering graduate who fell in love with game development. I love C++ and use both Unreal Engine and Unity to create games.
I create tutorials on various topics related to game development, such as 🎮gameplay, 🔢math and physics, 🧑💻programming,💡AI, and more. I do my best to explain everything in detail, especially when it comes to math since it's a crucial skill for all game developers.
🔥If you love 2D platformer games like I do, then check out The 2D Gameplay Mechanics Pack by following the link below. It's a comprehensive tool that contains a wide range of gameplay mechanics, and you can learn a lot by examining each mechanic in the pack. tareqmalkawi.itch.io/2d-gameplay-mechanics-pack
Subscribe to the channel and press the bell 🔔 for the latest updates!
UE5 Aiming System Tutorial: Core Mechanics Setup (Part 1)
Hello everyone! In today’s tutorial, we’ll focus on implementing the core mechanics of an aiming system. We’ll also prepare all the necessary animations, which will set the stage for the next video. In that follow-up, we’ll set up the aiming state machine and incorporate aim offset assets.
❤️ Subscribe to My Channel: th-cam.com/channels/-_Ca9zwwTwzYzgNXs4qzQQ.html
💡 Resources:
Unreal Engine 5.4 Paragon Hero Bug Fix - MaterialParameterCollection: th-cam.com/video/9-QPWrxrReQ/w-d-xo.html
Advanced Locomotion Series in UE5 and C++: th-cam.com/video/v8kO32DG5WE/w-d-xo.html
-----------------------------------------------------------------------------------------------------
Time Stamps:
0:00 Intro
0:24 Key Notes
1:18 Aiming Implementation Approaches
2:08 Intro to Aim Offset Assets
3:03 Aim Offset Animations
8:22 Planning the Core Aiming Mechanic
8:44 Creating and Binding Aim Input
10:50 Modifying the Camera's Field of View (FOV)
14:02 Tweaking Camera Boom Properties
16:20 Modifying Mouse Sensitivity
19:23 Optimizing the Camera’s FOV Adjustments
#unrealengine #ue5 #gamedev
❤️ Subscribe to My Channel: th-cam.com/channels/-_Ca9zwwTwzYzgNXs4qzQQ.html
💡 Resources:
Unreal Engine 5.4 Paragon Hero Bug Fix - MaterialParameterCollection: th-cam.com/video/9-QPWrxrReQ/w-d-xo.html
Advanced Locomotion Series in UE5 and C++: th-cam.com/video/v8kO32DG5WE/w-d-xo.html
-----------------------------------------------------------------------------------------------------
Time Stamps:
0:00 Intro
0:24 Key Notes
1:18 Aiming Implementation Approaches
2:08 Intro to Aim Offset Assets
3:03 Aim Offset Animations
8:22 Planning the Core Aiming Mechanic
8:44 Creating and Binding Aim Input
10:50 Modifying the Camera's Field of View (FOV)
14:02 Tweaking Camera Boom Properties
16:20 Modifying Mouse Sensitivity
19:23 Optimizing the Camera’s FOV Adjustments
#unrealengine #ue5 #gamedev
มุมมอง: 123
วีดีโอ
How to Create Dash Mechanic in 2D and 3D Games | Unity Beginner Tutorial
มุมมอง 216หลายเดือนก่อน
In this beginner-friendly guide, we’ll create dash mechanics for both 2D and 3D games, breaking down every step in detail. 🌟 What You'll Learn: ✅ 2D Dash Mechanics: Build horizontal and directional dashes, including mid-air dashing. ✅ After-Image Effect: Add a stylish after-image using object pooling for optimizing performance. ✅ 3D Dash Mechanics: Adapt dashing to 3D with unique considerations...
Unity 2D Shooting Tutorial: Aiming, Custom Projectiles & Object Pooling for Beginners
มุมมอง 302หลายเดือนก่อน
Learn about 2D shooting mechanics in Unity. We’ll cover how to fire projectiles and explore different projectile types to give you versatile options for various games and weapons. We’ll also add an aiming system, including how to limit the aiming angle, which is common in many platformer games. Along the way, we’ll briefly discuss object pooling and demonstrate its use in efficiently handling p...
How to Create a Directional Dodge & Evade System in UE5 with C++ (Step-by-Step Tutorial)
มุมมอง 5722 หลายเดือนก่อน
Today, we'll be exploring how to implement a directional evade or dodge system in Unreal Engine 5 using C , similar to those found in AAA games like God of War. We'll be utilizing root motion and animation montages to play the correct animation. This system will be created as a separate component, making it easy to incorporate into any of your projects. ❤️ Subscribe to My Channel: th-cam.com/ch...
Unity Vaulting Tutorial: How to Create a Realistic Vaulting System
มุมมอง 5K2 หลายเดือนก่อน
Hi everyone! Today, we'll learn how to implement vaulting parkour action. We'll utilize ray casts to detect vaulting obstacles and use scriptable objects to store essential data for executing the vaulting moves. We'll also incorporate multiple vaulting animations and set them up to play dynamically based on the player's position during the vault. Lastly, we'll explore the technique of Target Ma...
Vector Reflection Tutorial | Learn Game Math to Build a Brick Smasher Game in Unity
มุมมอง 3843 หลายเดือนก่อน
In this episode of the Game Math series, we dive into vector reflection, exploring both the theory behind it and practical examples. We’ll walk through some math problems and apply this knowledge in Unity by creating a brick smasher game. As the ball collides with surfaces like walls or bricks, we'll calculate its reflection vector to set its new direction. This topic builds on earlier concepts...
Advanced Locomotion Series in UE5 and C++ | Animation Notifies & Diagonal Movement
มุมมอง 7443 หลายเดือนก่อน
In previous episodes, we've encountered issues with leg blending when moving forward and strafing left or right, as well as when moving backward diagonally. Today, we will tackle this common issue in locomotion systems by adjusting the character's hips during movement. Additionally, we will explore the use of Animation Notifies in Unreal Engine to address the foot sliding issue when the charact...
Unity Animation & IK Tutorial | Practical Examples & Root Motion | Part 02
มุมมอง 8864 หลายเดือนก่อน
In part two of the "Mastering Unity Animation System and IK" series, we will continue discussing additional examples with new constraints and different ideas. We will also cover advanced techniques such as handling root motion from a script. ❤️ Subscribe to My Channel: th-cam.com/channels/-_Ca9zwwTwzYzgNXs4qzQQ.html 🔥Grab my physics pack on the Unity Asset Store "Hot Air Balloon Physics | Blimp...
Realistic Hot Air Balloon & Blimp Physics | Unity Asset Tool Showcase
มุมมอง 1994 หลายเดือนก่อน
In this quick video, I’ll be showcasing an incredible physics tool that I’ve been developing over the past few months. I recently released the first version on the Unity Asset Store. The tool is called "Hot Air Balloon Physics | Blimp Physics." It features two types of aerostatic machines-hot air balloons and blimps-both designed and implemented with real-world physics. The pack provides realis...
Advanced Locomotion Series in UE5 and C++ | Movement Improvements & Leaning Animations
มุมมอง 9504 หลายเดือนก่อน
In this episode, we'll begin by fixing a few issues to make the character's movement more responsive and fluid. For instance, even a slight movement input currently triggers the start-to-run animations, which doesn’t look good since the character hasn’t actually moved. We'll also address some problems with the turn-in-place functionality. Last time, we didn't cover any backward movement animati...
Unity Animation and IK Tutorial | Learn with Practical Examples | Part 01
มุมมอง 7K4 หลายเดือนก่อน
Welcome to this small tutorial series focused on mastering Unity's animation system and its powerful Animation Rigging package. In this series, we'll dive deep into creating and using Animator Controllers, working with animation clips, handling Animation Events, and setting up advanced rigging constraints. By the end of this series, you'll gain a solid understanding of how to use Unity's animat...
Advanced Locomotion Series in UE5 and C++ | Turn-in Place - Sprinting - Foot IK
มุมมอง 1.1K4 หลายเดือนก่อน
In today's episode of the Advanced Locomotion series, we will cover several interesting topics. First, we will discuss "turn-in-place" and implement it together. Then, we will move on to implementing sprinting using chorded actions, and I'll also demonstrate how to create custom triggers in C . In the last episode, we discussed what chorded actions are, and today we'll use them for sprinting. F...
Game Math Series: Vector Projection | Learn Game Math in Unity3D | Unity Tutorial
มุมมอง 6255 หลายเดือนก่อน
In today's episode of the Game Math series, we will discuss vector projection. We'll begin with an exploration of scalar projection and then move on to vector projection. Finally, we'll discuss how to use vector projection to determine a force, showcasing one of the most well-known applications of the dot product. We'll cover both the theory and practical examples, including a couple of example...
Advanced Locomotion Series in UE5 and C++ | Enhanced Input & Animation System
มุมมอง 2K5 หลายเดือนก่อน
In the second episode of the Advanced Locomotion Series, we'll begin by exploring the core concepts of the enhanced input system and some of its key features. Next, we'll implement the system together in C and create all the necessary assets. After that, we'll dive into working on the animation system, in this episode you learn about a lot of stuff, we will create the animation instance class i...
Game Math Series: Dot Product | Learn Game Math in Unity3D | Unity Tutorial
มุมมอง 1.5K6 หลายเดือนก่อน
In the first episode of the Game Math Series in Unity, we will learn about the dot product, which is one of the most important math topics for all game developers. We will explore both definitions of the dot product: the algebraic definition and the geometric definition. Additionally, we will cover vector normalization, learn how to interpret the dot product result and explore various examples....
Advanced Locomotion Series in UE5 and C++ | Project Setup & Basic Movement
มุมมอง 1K6 หลายเดือนก่อน
Advanced Locomotion Series in UE5 and C | Project Setup & Basic Movement
Beam Walking Mechanic in Unity3D | Unity Tutorial
มุมมอง 2.3K6 หลายเดือนก่อน
Beam Walking Mechanic in Unity3D | Unity Tutorial
Flexible 2D Moving Platform System | Unity Tutorial | Unity 2D
มุมมอง 1336 หลายเดือนก่อน
Flexible 2D Moving Platform System | Unity Tutorial | Unity 2D
Weapons Equipment System using IK | Unity Animation Rigging | Unity Tutorial
มุมมอง 11K7 หลายเดือนก่อน
Weapons Equipment System using IK | Unity Animation Rigging | Unity Tutorial
How to Create a Third Person Camera - Unity Tutorial
มุมมอง 9317 หลายเดือนก่อน
How to Create a Third Person Camera - Unity Tutorial
how to remove the red dot?
Hello! Very cool video!🎉 Waiting inventory system tutorial!!!
Coming soon!
This AI does not know how to pronounce bow. BAU BAU BAU BAU
Why "private Weapon currentWeapon;" gives an error saying "Weapon" have no reference
Wooow it's really amazing Literally great ❤❤
why not use motion matching?
I’ll definitely cover motion matching in future videos. For now, this series focuses on ALS because it’s a great starting point for understanding advanced character animation systems in UE5. Stay tuned for the motion-matching videos!
@tareqgamedev ohh ok, I shall look forward to it. Thanks for your hardwork. GGs
You videos are just amazing! The explanation, the code, the editing. Not to mention the topics are a very good mix between beginner, intermediate to advanced, and are very interesting! Keep up the good work, Looking forward for more of this! Good luck.
Thank you so much! I’m happy to hear that you enjoy the videos and find them useful. Stay tuned for upcoming tutorials!
Why are you using HideInInspector attribute on a private variable and on a property? Also, there’s no need to constantly update those input flag variables in Update. Just make a static pass-through property, use singleton if needed. You can even make this class ScriptableObject, place in Resources and access its singleton Instance from anywhere without creating game object in a scene. Also, Unity already has object pooling system. It’s good, no need to reinvent the wheel and no need to introduce tags into the system.
Thank you for your feedback. The firing mechanics shown in this video are part of my free 2D gameplay mechanics pack, which includes editor scripting for quick and intuitive configuration. This system allows users to configure mechanics directly in the inspector without worrying about any complexities. For this video, I copied some variables from the pack and changed their access specifiers to private but forgot to remove the HideInInspector attributes. You’re absolutely right; those attributes are unnecessary in this case, and they can be removed. Regarding the input system, I completely agree that there are more efficient approaches. However, as I mentioned in the video, the focus of this tutorial is not on the new input system but on teaching the core firing mechanics. This video is aimed at beginners, and my aim is always to introduce fundamental concepts in an accessible way while implementing them whenever possible. For topics like object pooling, although Unity has a built-in system, I believe demonstrating a simple custom implementation can help learners grasp the basics. With this foundation, they can later explore and develop more advanced solutions if needed. I appreciate you pointing out these areas for improvement, and I’ll definitely consider integrating some of these practices into future tutorials. Thanks again for your feedback!
Amazing and clean as always man 🙏🏻🙏🏻 Would you also explore more complex movement mechanics? (i.e. wall jumping, wall running, climbing, gliding, etc)
Sure! There will be more videos about different gameplay mechanics soon.
I have a question about turn in place. If I implement it all and turn the screen around so that the angle is not 90 degrees or -90 degrees while looking at the floor, the character is not fixed on the floor and feels like something is sliding and shaking, is there a solution?
I'm not quite following the issue you're experiencing. Could you please send a video that demonstrates the problem? I’ve checked and tried rotating while looking at the floor, and the character seems to turn in place as expected.
"in order to use the animation rigging package you need an actual human skeleton" -- yeah good luck with that. lmao. wtf?
😂 Haha, yes, "actual human skeleton" might sound a bit dramatic! Unity just needs a digital human rigged skeleton (the virtual bones and joints) to work with the Animation Rigging package.
Such a good video!! Thanks !
im doing my own c++ animation system but your tutorials helped set up some variables and convert blueprints to c++ easier. Thank you and good explations
Underrated video and channel
If I repeat this code, will it work for multiplayer? and what will be the FPS results? Better or worse?
Unfortunately, I don't have much experience in multiplayer programming. However, it really depends on your game. If you are creating a game with hundreds of players in the same room or level, managing this locomotion system for each character could impact performance. Such systems are usually better suited for single-player games. If you have experience in multiplayer programming, feel free to give it a try, and please keep me updated. I would love to see the results.
At 1:02:30 it seems strafing/jogging to the left does not work as expected, and the setup so far gives me the same result I see on your screen.
If you followed every step I did in the video, the strafing to both left and right should work as expected. If not, that means you missed something. Make sure to watch the video again and check that the values are correct by debugging them. Additionally, I mentioned in this video that this is not the final result. When you complete the whole playlist, you will see the final result. Although there are multiple features we can add to make the whole system look much more refined, such as pivoting, which I may do a video about soon.
@@tareqgamedev Thank you for your reply. My issue is that my result looks exactly as yours. Even in your video, I cannot see your character jogging leftwards. Is that a misunderstanding from my side? When your Wraith character moves to the left, he jogs backwards, even in your video. Is it supposed to be like that?
No, he doesn't jog backward. This is the left strafe animation clip. Please review the animation yourself before running the game. I am sure you will understand. The issue with jogging backward while strafing or jogging forward while strafing is because, as I mentioned in the video, we have not yet handled diagonal movement at this point. Watch the entire playlist for when we implement leaning and diagonal movement. This issue won't happen again because the blending between jogging and strafing will be handled differently.
At 48:42, you said the jump land animation is quite slow, and therefore you change its speed from 1.0 to 0.2 to speed it up. Speeding it up would be values above 1. So, you're slowing it down. Anyways, slowing down works well because 1.0 is too fast for the landing.
Yep! It's just a verbal mistake.
I can't get the negative scale for the move forward and right axes mappings to work. The values I receive are always positive.
Make sure to set the scale values for both "MoveForward" and "MoveRight" correctly as we did in the video at 20:50.
@@tareqgamedev I did, that's why I couldn't comprehend what's going on. In the end I found it, I did `AddMovementInput(ForwardDirection)` instead of `AddMovementInput(ForwardDirection, Value)`. I guess my eyes need a break.
hey man u said we can improve the animation buy using raycast to check depth of object and using a jump animation can u make a tutorial on it thanks
Hey. It's not too difficult to achieve. You need to shoot a third ray starting from the hit point of the height ray and moving forward along the depth of the obstacle direction. Then you can simply check if the distance is larger than 1 meter, for example. You can then play a jump animation similar to how we played the vaulting animation. Otherwise, you play the vaulting animations.
Thanks man, the code could be similar to the height check raycast but in the horizontal direction
amazing
I would love an inventory system since you asked! @2:10 Your tutorials are excellent, very well done, thanks.
hey man thanks for making videos on Unreal engine with C++, I've taken a C++ course a while back and been trying to implement what I know and learn more but while making games doing it. I hope to see more videos of you doing C++, very much appreciate it.
Sure, more videos on Unreal Engine and C++ are coming!
Fire
2 * (normal . ray direction) * normal of the surface this the simple vector reflection formula
Great Vid
Egyptian detected
I have a question: can I use an animation as soon as I take the weapon in my hand and I also have a rig layer applied (with two bone ik constraints for the hands)?
Bro i needed this like 1month ago 😭 Great video man
Glad you enjoyed it.
Great video ❤ looking for more.
Великолепно! Но может лучше использовать систему событий для точек в анимации, что бы можно было подключать разные движения.
thank you very much
your channel is a hidden gem, honestly
@TH-camrUser002 Unity is a great engine. Many AAA games are made using Unity. However, I also use Unreal Engine and C++ to create games and cinematics (you can check out my channel videos). A great developer should be able to learn any engine quickly. The most important thing is to know how to code efficiently and have excellent problem-solving and math skills.
crazy man...subed
Super bro...
29:09 With multiple weapons, what do i need to add to make it work? Add new "equip" and "aim pos" for another weapon and put "Right Hand Pos" and "Left Hand Pos" Under the new weapon as well?
Yes, that's correct! Someone asked the same question in the comments section before, and I answered it as follows. You can use the code snippet below as a starting point. When the ray hits the collider of the weapon, we acquire the current weapon. You can identify the current weapon by its name in the Equip function (make sure to rename all your weapons appropriately in the hierarchy so you can easily identify them in the code). Then, you should store the positions for both the right and left hands and use them as needed. You can use the provided code as a starting point. The list weaponsIKHandsPos will contain references to both hands' positions for each weapon you have. In the Equip function, after identifying the picked weapon, you can store the positions of both hands in the transforms IKRightHandPos and IKLeftHandPos, which hold the current weapon's hand positions. [System.Serializable] public struct WeaponsIKHandsPos { public string name; public Transform IKRightHandPos; public Transform IKLeftHandPos; } [SerializeField] private List<WeaponsIKHandsPos> weaponsIKHandsPos; private Transform IKRightHandPos; private Transform IKLeftHandPos;
I’m a Ph.D student and really this video helps me a lot! Excellent work!
Thank you! I'm really glad the video was helpful to you. Best of luck with your Ph.D. journey!
if left hand pos ik has each on every item how can the script detect?
Hey, @harharrr9810! It's pretty straightforward. When the ray hits the collider of the weapon, we acquire the current weapon. Right? You can identify the current weapon by its name in the Equip function (make sure to rename all your weapons appropriately in the hierarchy so you can easily identify them in the code). Then, you should store the positions for both the right and left hands and use them as needed. You can use the provided code as a starting point. The list weaponsIKHandsPos will contain references to both hands' positions for each weapon you have. In the Equip function, after identifying the picked weapon, you can store the positions of both hands in the transforms IKRightHandPos and IKLeftHandPos, which hold the current weapon's hand positions. [System.Serializable] public struct WeaponsIKHandsPos { public string name; public Transform IKRightHandPos; public Transform IKLeftHandPos; } [SerializeField] private List<WeaponsIKHandsPos> weaponsIKHandsPos; private Transform IKRightHandPos; private Transform IKLeftHandPos;
Thanku
Thanku❤
Unity switching to UE right now!
How did it go?
@@SaschaRobitzki My 1650ti can't bear UE5.At least 5 min to compile
@@LostAngel175 Yeah, UE5 is definitely more demanding than Unity 6.
@@SaschaRobitzki
Thank you so much. Awesome math class!
Can you make some video about parry system like elden ring, I'm really looking forward to this tutorial
Yep! That's a great system. Right now, I have a couple of tutorials planned that I have been studying and working on. I will consider creating a tutorial about parry mechanics as soon as possible.
Animation Teacher :)
I appreciate your work ❤
Thank you.
@@tareqgamedev is this project on github?
Thankyou soooo much... Really helpful.. can you share GitHub link to explore this project
I tried follow, I didn't see how you setup the IKRig into the Control Rig BP. Did I miss anything? Thank you
The IK Rig asset is designed to set up the IK chain using "FullBodyIK," which means we don't have to reference the IK Rig inside the control rig blueprint asset. In the control rig blueprint asset, we import the rig hierarchy that contains the IK bones. Have you followed all the steps as explained in the video?
@@tareqgamedev Thanks for replying. I pretty much follow your video. The foot rotation work well, however, The pelvis turn too much sideway instead of blend more on legs. Your model works ok, but mine looks weird when blending too much on body. I tried modified on IKRig, but it didn't get improvement. If you don't mind, please make a video to fix this problem in feature. Thank you. Love your videos as always.
Apologies for the delay. If you're using one of the Paragon assets, you shouldn't encounter any issues because they all have similar skeletons. However, make sure to adjust the rotation and position stiffness of the pelvis in the IK Rig asset. Also, check the "ZOffsetPelvis" variable inside the control rig asset. This variable is set based on whether the left foot or the right foot is less, so ensure it is set correctly. Additionally, in the modify transform node, make sure to set the mode to "Additive Global". If you're using a Mixamo character, you might encounter some issues. I may create a video in the future explaining how to set up this locomotion system with a character from Mixamo.
Keep Going Man!😄
Thanks!
Can you please make a blueprint ?
We will only use C++ for this series, although we incorporate some blueprints for animations and foot IK. By following and understanding the C++ code, it should not be difficult to replicate the same functionality in blueprints. In the future, there will be blueprint tutorials for various topics.
@@tareqgamedev thanks i did.
At 5:57 how can I make the bow string stretch?
The bow I used in the video is impeded inside the character model. If you want the bow's string to stretch, you can find a separate bow on the Unity Asset Store and a separate animation for stretching the string while aiming. The bow needs to be rigged and animated. You can find a paid bow asset on the Unity Store where the bow's string is rigged and ready to be stretched. This is an example: assetstore.unity.com/packages/3d/animations/bow-arrow-animation-set-210131
I need help with all of this I’m trying to make a horror game any one good with unity let’s collaborate 🎉😂
I'd love to collaborate but I'm currently short on free time. For your horror game in Unity, you can start with a simple third-person controller instead of an advanced locomotion system. Best of luck on your project!