KidsCanCode
KidsCanCode
  • 211
  • 7 067 775
Godot 4: 3D Character Controller
In this series of videos, we look at how to import, setup, and use 3D models in Godot, whether you downloaded them or created them yourself.
You can download the art packs we're using from Kay Lousberg at itch.io:
kaylousberg.itch.io/
Text version and link to code:
kidscancode.org/godot_recipes/4.x/3d/assets/character_controller/
Want to learn Godot 4? Check out my new book, Godot 4 Game Development Projects.
Available now! amzn.to/3qcOZ4E
Support me on Patreon: www.patreon.com/kidscancode
Переглядів: 28 684

Відео

Godot 4: Importing 3D Models
Переглядів 34 тис.9 місяців тому
In this series of videos, we look at how to import, setup, and use 3D models in Godot, whether you downloaded them or created them yourself. You can download the art packs we're using from Kay Lousberg at itch.io: kaylousberg.itch.io/ Text version and link to code: kidscancode.org/godot_recipes/4.x/3d/assets/importing_assets/ Want to learn Godot 4? Check out my new book, Godot 4 Game Developmen...
Godot 4: Character Animation
Переглядів 23 тис.9 місяців тому
In this series of videos, we look at how to import, setup, and use 3D models in Godot, whether you downloaded them or created them yourself. Here, we're using AnimationTree to set up our character's animations. You can download the art packs we're using from Kay Lousberg at itch.io: kaylousberg.itch.io/ Text version and link to code: kidscancode.org/godot_recipes/4.x/3d/assets/character_animati...
Godot 4: Character to Rigid Body Interaction
Переглядів 30 тис.11 місяців тому
A common question: how to handle interaction between a character body and a rigid body. Works in 2D and 3D. Text version and link to code: kidscancode.org/godot_recipes/4.x/physics/character_vs_rigid Want to learn Godot 4? Check out my new book, Godot 4 Game Development Projects. Available now! amzn.to/3qcOZ4E Support me on Patreon: www.patreon.com/kidscancode
Godot Recipe: KinematicBody + Stopping on Slopes
Переглядів 14 тис.2 роки тому
Is your character sliding down slopes? Learn how to make your KinematicBody stick! Text version: godotrecipes.com/3.x/physics/kinematicbody_slopes Support me on Patreon: www.patreon.com/kidscancode
Godot Recipe: Align 3D movement with camera
Переглядів 20 тис.3 роки тому
Learn how to align your forward movement with the direction of the camera. Text version: godotrecipes.com/3d/move_with_camera/ Support me on Patreon: www.patreon.com/kidscancode
Godot Recipe: 3D Rolling Cube
Переглядів 7 тис.3 роки тому
How to make a rolling cube. Text version: godotrecipes.com/3.x/3d/rolling_cube/ Support me on Patreon: www.patreon.com/kidscancode
Godot Recipe: 8-way Movement & Animation
Переглядів 20 тис.3 роки тому
A quick one this time, that's been requested a lot: how to do 8 directional movement including animations. Text version: godotrecipes.com/3.x/2d/8_direction/ Mini-crusader animations: remos.itch.io/mini-crusader Support me on Patreon: www.patreon.com/kidscancode
Godot Recipe: Arcade-style 3D Spaceship
Переглядів 17 тис.3 роки тому
By popular request, a "Star Wars" style 3D space combat controller! Use this to make the dogfighting space game of your dreams. Text version and project download: godotrecipes.com/3.x/3d/spaceship Support me on Patreon: www.patreon.com/kidscancode
Godot Recipe: Simplified Airplane Controller
Переглядів 20 тис.3 роки тому
Another fun vehicle controller - this time in the air! "Simplified" because we're not doing any physics or aerodynamics. You'll be surprised how little code it takes to just jump in and fly! Text version and project download: godotrecipes.com/3.x/3d/simple_airplane/ Support me on Patreon: www.patreon.com/kidscancode
Godot Recipe: 3D Arcade-style Car (with a sphere)
Переглядів 41 тис.3 роки тому
This one's lots of fun. Inspired by a post from Kenney ( kenneynl/status/1107783904784715788?lang=en) , we make a drivable arcade-style car using a RigidBody sphere. Text version: godotrecipes.com/3.x/3d/3d_sphere_car/ Try the project: github.com/kidscancode/3d_car_sphere Support me on Patreon: www.patreon.com/kidscancode
Godot Recipe: AI - Context-based Steering
Переглядів 25 тис.3 роки тому
We get a lot of questions about AI. Here's a simplistic algorithm that produces great results. Text version & link to download the sample project: godotrecipes.com/3.x/ai/context_map/ Support me on Patreon: www.patreon.com/kidscancode
Godot Recipe: 3D Kinematic Car
Переглядів 44 тис.3 роки тому
We've gotten a lot of questions about how to make a 3D car game. Here we'll cover the basics of setting up a kinematic car. Text version & link to download the sample project: godotrecipes.com/3.x/3d/kinematic_car/car_base/ Support me on Patreon: www.patreon.com/kidscancode Art from Kenney: kenney.nl/assets/car-kit VehicleBody tutorial by Bastiaan Olij: ua-cam.com/video/B5vE-nNszxA/v-deo.html
Godot Recipe: Multitarget Camera2D
Переглядів 11 тис.3 роки тому
In this recipe, you'll learn how to make a dynamic camera that zooms/moves to ensure multiple targets stay on screen at the same time. Great for local multiplayer! Text version & link to download the sample project: godotrecipes.com/3.x/2d/multi_target_camera/ Support me on Patreon: www.patreon.com/kidscancode Art from Kenney: kenney.nl/assets/scribble-platformer
Godot Recipe: 3D KinematicBody: Align with terrain
Переглядів 16 тис.4 роки тому
Learn how to align a 3D object with a surface, such as terrain or platforms. Text version & link to download tank model: godotrecipes.com/3.x/3d/3d_align_surface/ Support me on Patreon: www.patreon.com/kidscancode
Godot Recipe: 3D KinematicBody Movement
Переглядів 25 тис.4 роки тому
Godot Recipe: 3D KinematicBody Movement
Godot Recipe: Touchscreen Camera Control
Переглядів 13 тис.4 роки тому
Godot Recipe: Touchscreen Camera Control
Godot Recipe: Minimap UI
Переглядів 30 тис.4 роки тому
Godot Recipe: Minimap UI
Godot Recipe: Drag-select Multiple Units
Переглядів 16 тис.4 роки тому
Godot Recipe: Drag-select Multiple Units
Godot Recipe: Adding healthbars in 3D
Переглядів 19 тис.4 роки тому
Godot Recipe: Adding healthbars in 3D
Godot 3.1: 3D Camera Gimbal
Переглядів 28 тис.4 роки тому
Godot 3.1: 3D Camera Gimbal
Godot 3: Kinematic to Rigid Body Interaction
Переглядів 40 тис.4 роки тому
Godot 3: Kinematic to Rigid Body Interaction
Godot Recipes: Homing Missiles
Переглядів 22 тис.4 роки тому
Godot Recipes: Homing Missiles
Circle Jump: A Godot Mobile Game (Part 14)
Переглядів 13 тис.5 років тому
Circle Jump: A Godot Mobile Game (Part 14)
Circle Jump: A Godot Mobile Game (Part 13)
Переглядів 5 тис.5 років тому
Circle Jump: A Godot Mobile Game (Part 13)
Circle Jump: A Godot Mobile Game (Part 12)
Переглядів 6 тис.5 років тому
Circle Jump: A Godot Mobile Game (Part 12)
Circle Jump: A Godot Mobile Game (Part 11)
Переглядів 18 тис.5 років тому
Circle Jump: A Godot Mobile Game (Part 11)
Circle Jump: A Godot Mobile Game (Part 10)
Переглядів 6 тис.5 років тому
Circle Jump: A Godot Mobile Game (Part 10)
Godot Recipes: Car Steering
Переглядів 46 тис.5 років тому
Godot Recipes: Car Steering
Circle Jump: A Godot Mobile Game (Part 9)
Переглядів 7 тис.5 років тому
Circle Jump: A Godot Mobile Game (Part 9)

КОМЕНТАРІ

  • @m0nsterchief
    @m0nsterchief 4 дні тому

    Thank you for sharing

  • @Grayham14
    @Grayham14 5 днів тому

    Will there be a new one for godot 4 / will anything here have to be changed for godot 4?

  • @Darkest_matter
    @Darkest_matter 8 днів тому

    'unexpected identifier' :-( makes me wanna switch to unreal.

  • @Factos-Daily.
    @Factos-Daily. 10 днів тому

    nooooo bro this is out dated?? :( I wanted to make this so bad

  • @moothankpew
    @moothankpew 11 днів тому

    does anybody have the complete scene file for the knight? for some reason mine isnt working, and i cant figure out where the problem is.

  • @parkerstroh6586
    @parkerstroh6586 12 днів тому

    He says he talked about click-to-move in another recipe but I can't find it anywhere! Does anyone know which video he is talking about?

  • @Taylorabruce
    @Taylorabruce 12 днів тому

    Hey! Thanks so much for the great tutorial. I noticed that when you combined the roll to the yaw, and used that stick, the ship was also pitching, hence why it was moving down and away from the camera. Is there a way to fix this?

  • @anzhel3268
    @anzhel3268 13 днів тому

    eeewwww

  • @Raw_9
    @Raw_9 14 днів тому

    Thanks for the video lesson, is there a sequel on UA-cam or somewhere else, or is this lesson frozen?

  • @jordan4longshaw
    @jordan4longshaw 14 днів тому

    Getting an error. The error is "Invalid get index 'transform' (on base: 'null instance')." It has a problem with a line of code under the function "func get_move_input(delta):" it doesn't like the line "var vl = velocity * model.transform.basis". Any ideas why?

  • @James-pr5kt
    @James-pr5kt 15 днів тому

    Is there any clean way to set the animation speed on a per animation basis in the animation tree? It seems once the animation tree is controlling the animation player, the speed_scale property for animation player has no effect at runtime (plus it's global for all animations in the player). I've been struggling to figure out how to do this for over an hour, even broke down to asking chatGPT which generated some useless imaginary nonsense to waste my time. For tinkering with animation speed I can't be hand editing each animation's keyframing to speed it up or slow it down, that would take forever.

  • @James-pr5kt
    @James-pr5kt 16 днів тому

    Very nice. I love videos that cover these kinds of nuances & the different options & blends between them. Most 'tutorial' content is just a crash course straight-shot showing one path to the goal of your code without exploring any of the options or tradeoffs. Sure it's useful for quickly getting something working, but it's a thin and brittle understanding that snaps when you try to build too high with it. You need a very dense and wide base to provide the stability to climb high.

  • @vast3394
    @vast3394 16 днів тому

    thanks all the other videos i tried to watch on this made the whole process really complicated, when i just needed to make area2s a child of the sprite. i really appreciate this vide.

  • @ThisDudesTutsAndGaming_0
    @ThisDudesTutsAndGaming_0 17 днів тому

    ok now how about tiles.

  • @REJister2009
    @REJister2009 18 днів тому

    linear_interpolate() was changed to lerp() for any Godot4 users

  • @kiliandrilltzsch8272
    @kiliandrilltzsch8272 19 днів тому

    i tried to modify it a bit and added basically full control to my aircraft. thanks for making such a easy to understand tutorial

  • @user-ez5go1lz6d
    @user-ez5go1lz6d 19 днів тому

    thank you

  • @gabrielsiemon4237
    @gabrielsiemon4237 19 днів тому

    This is a great tutorial however if you give a tutorial on how to convert the files into a .exe to send to friends would be great.

  • @bioman1hazard607
    @bioman1hazard607 22 дні тому

    So I've found an updated version of this tutorial but when I try to add my own vehicle model, the game breaks, is there any way you can update this tutorial to 4 and make it modifiable

  • @celsladroma8048
    @celsladroma8048 23 дні тому

    6 years still this video can help me alot.. Thanks you for help my game can survive, otherwise my game would end up in garbage..

  • @littlebitsworld5038
    @littlebitsworld5038 25 днів тому

    Everything is working except sometimes I have to click the left mouse button a couple of times before it performs the attack animation. How would I fix that?

  • @SummV81
    @SummV81 28 днів тому

    Legendary.thank you

  • @stone_pilot
    @stone_pilot Місяць тому

    Thank you, I couldn't find the answer to this anywhere

  • @littlebitsworld5038
    @littlebitsworld5038 Місяць тому

    thanks

  • @retrorimos5841
    @retrorimos5841 Місяць тому

    Totally outdated for Godot 4.

    • @Kidscancode
      @Kidscancode Місяць тому

      Only minor changes required. You can see an updated script and explanation here: kidscancode.org/godot_recipes/4.x/3d/simple_airplane/

    • @retrorimos5841
      @retrorimos5841 28 днів тому

      @@Kidscancode Thank you !

  • @CitrusThings
    @CitrusThings Місяць тому

    This is great! Someone got fed up with me not understanding why another guide resulted in no collision, told me I should learn from the internet before asking questions on an open discord. Felt bad. But it worked! I just gotta figure out how to make it return to reset rotation when buttons aren't being pressed

  • @_mlktea
    @_mlktea Місяць тому

    Thank you so much!! For some reason my Godot wasn't able to reliably grab the default gravity variable, so I added 9.8 to fall back on: var gravity = ProjectSettings.get_setting("physics/3D/default_gravity", 9.8) I have a lot to learn, your videos are really helpful!

  • @drduck-mv8lp
    @drduck-mv8lp Місяць тому

    underrated channel

  • @inigodot
    @inigodot Місяць тому

    Thanks for the tutorial it was awesome! I have one question, wouldn't it be easier to use Input.get_axis() to get the Inputs? Thanks!

  • @abubakrkhodzhaev8618
    @abubakrkhodzhaev8618 Місяць тому

    Make a tutorial for a star wars game

  • @abubakrkhodzhaev8618
    @abubakrkhodzhaev8618 Місяць тому

    Can you make a new version the new godot does not have kineticbody 3d

    • @Kidscancode
      @Kidscancode Місяць тому

      kidscancode.org/godot_recipes/4.x/3d/spaceship/

  • @mortysio4435
    @mortysio4435 Місяць тому

    Thanks you saved me

  • @peeli2
    @peeli2 Місяць тому

    incase anybody else is having trouble with adding hills, i did it by storing the players x position as a global variable doing this: func _process(delta): if terrain[-1].x < Global.position + screensize.x: add_hills() im sure theres a better way, but this is what got it working for me. good luck!

  • @drduck-mv8lp
    @drduck-mv8lp Місяць тому

    worked a charm thanks just cant get it to work with my sprite all controls are from the side

    • @Kidscancode
      @Kidscancode Місяць тому

      What does "from the side" mean?

    • @drduck-mv8lp
      @drduck-mv8lp Місяць тому

      @@Kidscancode no worries it was a problem with my sprite fixed it thanks for the reply anyway

  • @bxxxxxxxxxxxx
    @bxxxxxxxxxxxx Місяць тому

    Why not use a RigidBody as a Player instead?

    • @Kidscancode
      @Kidscancode Місяць тому

      Sure that's an option, but it introduces a whole different set of challenges. Character body is the most often used for controllable characters, so it's useful to know how it interacts with rigids.

  • @littlebitsworld5038
    @littlebitsworld5038 Місяць тому

    thank you

  • @THEGIGOLO05
    @THEGIGOLO05 Місяць тому

    Thaks men

  • @Pekoteko
    @Pekoteko Місяць тому

    Hey! I loved your video :) I know I am a bit late to ask questions (3 years from posting it) but... I was wondering of adding simple physics and what could would happen if you add gravity here? Could setting up a "gliding" statys = to gravity* some delta to reduce it, and applying whenever you're not speeding up / throtling? Thanks a lot for the video :) very clear. I am kind of new to godot and I am getting to know fliying mechanics, but there are not a lot for 3D flying out there.

  • @R5Rich
    @R5Rich Місяць тому

    has anyone been able to get this to work on Godot4? the getcellv and set_cell functions no longer exist and for the life of me I cannot work out how to do it

  • @GrahamBessellieu
    @GrahamBessellieu Місяць тому

    For 4.2 learners, after reimporting you have to right click the Crate and click "New Inherited Scene" else it will return to previous window.

  • @GrahamBessellieu
    @GrahamBessellieu Місяць тому

    This was helpful for 4.2 as well! One notable difference though was the "play scene" resulted in a grey world and dark grey box. Update: when I added the Directional Light in the next lesson this was fixed.

  • @lutiyoffnik8661
    @lutiyoffnik8661 Місяць тому

    needed in version 4 godot

  • @brendanyoon5745
    @brendanyoon5745 Місяць тому

    Everything works great except my bullet doesnt move when its instanced. Any thoughts on why this would happen? I can post code if needed. Thanks!

  • @THEDEVBOIS
    @THEDEVBOIS Місяць тому

    im having a small problem and i dont know what it is the system wants on the if velocity.lenght() > 1.0: if i have 1 indent on the if statement and 2 indents on the next code with “model” i get this error: cannot find property “lenght” on base “Vector3” when i have 1 indent on the if statement and 1 indent on the model code i get an error saying i need an indent??? even though i already have one💀 but when i have no indent on the if statement and 1 indent on the model code i get 3 errors 1. unexpected if statement in class body 2.unexpected indent in class body 3. expected end of file like bru i already tried 15 hundred ways and idk what it wants any help

    • @redelixir9384
      @redelixir9384 20 днів тому

      Hi there, hope this helps. It's a spelling error of the word 'lenght' . I know this because I made the same error :') It's spelled 'length' , the 'th' like you'd say 'the sixth' for example. Good luck! :)

    • @THEDEVBOIS
      @THEDEVBOIS 20 днів тому

      @@redelixir9384 i figured it out awhile back now uh days im trying to figure out how a shooting mechanism works and for some reason its actually hard😂😂 its harder than figuring out how to make my player crouch.

    • @redelixir9384
      @redelixir9384 20 днів тому

      @@THEDEVBOIS Oh shoot, came in late. Oops! Maybe it will help others in the future xD Oh. Man.... I haven't even started on the shooting part... Oh well. One step at a day! Good luck to you though. I'm dreading that part now :') *sigh* more programming :(((((

    • @redelixir9384
      @redelixir9384 20 днів тому

      @@THEDEVBOIS Btw, did you happen to have a problem with the animations not triggering, more specifically the 'Jump_Idle' one? I mean, the jumping animation works at about 10% of the time..

    • @THEDEVBOIS
      @THEDEVBOIS 20 днів тому

      ⁠​⁠@@redelixir9384lmao ur all good😂 and the jumping was working for me perfectly if your having issues with the jumping double check the arrows that go into the next animation. because i faced an issue where i jumped once and it worked but when i jumped again it was in a constant jump loop. i fixed it by double checking the arrows that go into the next animations and i also looped the jump animations which i shouldnt have. the only thing that should be looped is the jump idle.

  • @mleitejunior
    @mleitejunior Місяць тому

    I know the focus of the video it is the AnimationTree (an Animation State Machine), but would not be perfect to align it with a player state machine, instead of all ifs in process? Something like a node/script and subnodes/subscripts to handle all the logic and attributes of the player in each state. You can par it with the animation state machine and everything would be organized and easy to grow with no big problems.

  • @diegoh473
    @diegoh473 Місяць тому

    thanks this is what I was looking for!

  • @SovereignVis
    @SovereignVis Місяць тому

    And what if we want to make a space game with realistic Newtonian physics? 😅

  • @MicahT
    @MicahT Місяць тому

    This is by far the best explanation of RigidBody2D I've found. Makes so much more sense now. I'm hoping enough of this translates to Godot 4. Thanks!

    • @Kidscancode
      @Kidscancode Місяць тому

      There are some minor changes in the syntax, but the concepts remain the same.

  • @FatDevGames
    @FatDevGames Місяць тому

    I am following this in godot 4, have been able to convert most of this but I am having a problem at 4:13 I am getting the error “Error at (32,31): Too many arguments for “move_and_slide()” call. Expected at most 0 but received 2.” Just wondering if anyone had any idea of how to fix this

    • @Kidscancode
      @Kidscancode Місяць тому

      move_and_slide() is used differently in Godot 4. See docs.godotengine.org/en/stable/tutorials/physics/using_character_body_2d.html

  • @creadordejuegounity
    @creadordejuegounity Місяць тому

    Thanks for the tutorial it help alot !!