Unity Playmaker Tutorial - FPS Character Controller - Movement

Поділитися
Вставка
  • Опубліковано 19 лис 2024

КОМЕНТАРІ • 89

  • @FictitiousCtrlGames
    @FictitiousCtrlGames 3 роки тому +7

    For Referencing Later
    Get Axis: 9:15
    Controller Move: 11:30
    Set Vector XYZ: 12:42
    Gravity: 15:29

    • @OneMonthStudio
      @OneMonthStudio  3 роки тому +1

      Nice work!

    • @FictitiousCtrlGames
      @FictitiousCtrlGames 3 роки тому +2

      @@OneMonthStudio Thank you. :) It was more for myself, than anything. I watched your tutorial and made the controller, but after deleting it and trying to remake it for practice, I totally forgot. lol But I think I got the gist of it now.
      Now I have to figure out how to make a gun shoot. Whats the best method for that?
      Raycasting or something less expensive on cpu?

    • @OneMonthStudio
      @OneMonthStudio  3 роки тому +1

      @@FictitiousCtrlGames Hmmm, I might make a tutorial on that soon.
      I have a few methods of doing shooter mechanics, both with bullets and raycasting.
      So be on the lookout for that very soon.

    • @FictitiousCtrlGames
      @FictitiousCtrlGames 3 роки тому

      @@OneMonthStudio Awesome! I'm excite!

  • @_____J______
    @_____J______ 2 роки тому +1

    Finally. After one day waste of following out of date or not working tutorials this is gold

  • @lraxious
    @lraxious 3 роки тому +1

    Thanks for the tutorial, I learned a lot as a beginner!
    Also, to fix the camera when looking directly straight up or down just:
    Set the "minimum Y and maximum Y" of the Mouse Look - Camera to -90 and 90 respectively.

  • @DenOvsyannikov
    @DenOvsyannikov 5 років тому +12

    Very nice and helpful tutorial, thank you!

  • @virusocyrus
    @virusocyrus 4 роки тому +1

    is there anything on looping a sound (footsteps) on button down? im having problems..

  • @xxxx-eh1vu
    @xxxx-eh1vu 3 роки тому +1

    Thanks for great tutorial. But I have a question.
    How do I make stop moving if I press the A key after I press the D key? (Also in the opposite case)

  • @everjn17
    @everjn17 4 роки тому +1

    On 25:05, why do you assign the X and Z value to None ? I suppose it should have assigned axisHorizontal to X and axisVertical to Z doesn't? i am not really sure what i didn't grasp here

    • @OneMonthStudio
      @OneMonthStudio  4 роки тому

      Good question.
      We assign the axisHorizontal and axisVertical to the axisVertical vector3 as we did above, otherwise we won't be able to clamp it's magnitude. Because if we only do it once within our movementVector, even gravity will be clamped and that's what we're trying to avoid.
      So you need to assign the axis floats to a separat vector3 and clamp it, to then assign that clamped vector3 to a different vector3 by using 'Set Vector3 XYZ', and assign gravity to our new vector3's Y component.
      All to avoid clamping gravity to 1.

  • @HungNguyen-rx4gh
    @HungNguyen-rx4gh 4 роки тому +1

    The tutorials are awesome! Thank you so much! Can you make a 3rd person controller tutorial? I'd buy that in a heartbeat.

  • @davidpreston1155
    @davidpreston1155 3 роки тому +1

    Super tutorial , a big Thank you ,, :)

  • @jaanekborodajev5654
    @jaanekborodajev5654 3 роки тому

    Can you do tutorial about Animations please. wana know how animations work with FPS examples.

  • @ShadeCOD
    @ShadeCOD 4 роки тому

    Im able to move and turn my camera but when I walk and turn my camera the direction Im walking doesnt change. What can I do to fix that?

    • @OneMonthStudio
      @OneMonthStudio  4 роки тому

      Remember to set the mouselook that pans the camera horizontally to only affect the playercharacter and not the camera. Since we've got the camera as a child of the player, when the player turns, the camera will turn with the player.

  • @weisean3370
    @weisean3370 2 роки тому +1

    thanks!! its useful!!

  • @RomboRosso
    @RomboRosso 4 роки тому +1

    Thank you very much for this tutorial!

  • @garywilkerson6395
    @garywilkerson6395 4 роки тому +1

    This is a great tutorial, thank you. Any tips on applying the mouselook to extend to a gamepad?

  • @kurioman
    @kurioman 3 роки тому +1

    Get Axis didn't worked for me, i pressed all my keyboard&mouse, The character didn't wanna move..

    • @kurioman
      @kurioman 3 роки тому +1

      Okay so i had to install the new input system (Available in Package manager for free, like Probuilder)
      But i had the vjoy error. so i just have to update it to the latest version available atm (1.2.0)
      Now everything work like a charm, thanks for the tutorial !

  • @PabloYaos
    @PabloYaos 4 роки тому +1

    Great tutorial thanks for the help!
    related question : how would I go about having the character controller move slower when going backward ?

  • @magkunch4763
    @magkunch4763 4 роки тому +1

    Thanks you very much for tutorial😘😘😘😘

  • @shushischannel3826
    @shushischannel3826 5 років тому +1

    I can not find hardshell in unity 2019 version. Please advise. Thanks.

    • @OneMonthStudio
      @OneMonthStudio  5 років тому +2

      I said I was using a thirdparty input manager, yours would be just the regular input actions like 'get axis'.

  • @PowerUpT
    @PowerUpT 4 роки тому

    I am trying to use your tutorial with Unity 2019, and I installed the input manager and Playmaker. However, the actions for Playmaker don't seem to come with the input manager, and I can't find anything about this anywhere. First, should I use the version of Unity that you're using if it's broken in newer versions, and is there somewhere that I should be looking for a plugin for Playmaker that makes the input manager work with it?

    • @sneakerninja
      @sneakerninja 4 роки тому

      try hitting reset on the input manager, go to Edit, then project setttings, look for the cog icon in the top right, click it and hit reset

    • @OneMonthStudio
      @OneMonthStudio  4 роки тому

      Just use the built-in input manager, and use the standard input actions in playmaker.
      The input manager that I use is broken in newer version of unity, so I'd just use built-in input manager.

  • @Z18-i3n
    @Z18-i3n 4 роки тому

    Can i use get axis vector instead of get axis with set vector?

  • @sneakerninja
    @sneakerninja 4 роки тому +3

    Gravity at 15:29 to 20:58

  • @NabilMajid
    @NabilMajid 5 років тому +2

    how can i attach to a virtual joystick?

    • @OneMonthStudio
      @OneMonthStudio  5 років тому +1

      Not sure, you'd probably have to get something off the assetstore for that.

  • @westingtyler1
    @westingtyler1 5 років тому +2

    nice, but you should explain WHY dragging an object into the fsm window is bad, rather than just saying it's bad.

    • @OneMonthStudio
      @OneMonthStudio  5 років тому +4

      Hi, sure can.
      It's a bad habit because then it relies on the object being in the scene in the first place, this plays badly with prefabs.
      If we tell our script to look for a specific object, we can use it during create object or object pooling (spawning object for later use).
      We tell the script what to look for within the scene based on a name and a tag, and thus we don't have to rely on it being the same object every time. We can change the object, without having to keep dragging it into the action.
      Hope that clears things up.

    • @westingtyler1
      @westingtyler1 5 років тому +1

      @@OneMonthStudio cool. on a similar note, is it better to use "find object" to gather game objects upon scene start, or is it better to assign them to a variable in the fsm? when you say, "dragging onto the fsm window" are you referring to what you showed, or also dragging it into the variables tab to create a new named variable, then using that? I heard that using the Find Object is really expensive, so I've been dragging them into the VARIABLE WINDOW to create the variables ahead of time that way, rather than using Find Object.

    • @OneMonthStudio
      @OneMonthStudio  5 років тому +1

      @@westingtyler1
      Yes using 'Find Object' is expensive, and that is why we only do it once every now and then. Best used at the start of the scene, or sparingly. Same goes for creating objects that aren't pooled, that will cause a frame stutter as the information is written to ram from harddrive.
      By "dragging into the fsm window" I mean any variable that relies on a specific object, because in most cases you want it to be dynamic. So yes, both what I showed and into the variable window.
      But because 'Find Object' is kinda expensive, we only use it sparingly, and for things that are dynamically changing.
      It's just a bad habit to rely on some objects to be within the scene. If you wanted to create an object later, you'd need to look for it or set up an elaborate maze of a script to send the created object to whatever needs it.

  • @andrewcondon3027
    @andrewcondon3027 5 років тому +1

    Learned a lot! Thank you!

  • @viva-la-baz1458
    @viva-la-baz1458 4 роки тому +1

    Great tutorials, any advice going for a head bob with the camera?

    • @kurioman
      @kurioman 3 роки тому

      add a simple script : when player move -> move the camera (value=they way u want to);

    • @kurioman
      @kurioman 3 роки тому

      Dont forget to loop it + Force finish animation/the loop before to listen if the player is moving and start a new loop

  • @timothygottlieb2013
    @timothygottlieb2013 5 років тому

    so I followed your tutorial which btw is great. but i ran into a snag.
    my y camera movement was inverses(when mouse was moved up camera went down and vice versa) when i put the positive 2 where you had it for the camera look.
    the obvious fix was inverting the value to get the desired effect.
    but i was wondering if that was a bug just for me or do you use inverse y axis for most games you play.

    • @OneMonthStudio
      @OneMonthStudio  5 років тому +1

      Might be a bug with one of the actions, try one of the other mouse look action/s, I think Playmaker comes with 2 different ones.

  • @androidemulation5952
    @androidemulation5952 4 роки тому

    excuse me, could you help me here? I did something similar to what did and everything worked fine except for one. when I rotate the mouse the player doesn't rotate. so when I move the camera to the right and press (W) the player move to the left.
    I didn't use a rigidbody to freeze the axis and I can't think of any other reason it didn't work. any help is much appreciated.

    • @androidemulation5952
      @androidemulation5952 4 роки тому

      it seems like that the player is rotating, But the movement vector is not related to the direction the character is facing

    • @androidemulation5952
      @androidemulation5952 4 роки тому +3

      oh, it seems that the problem was caused by the character controller component. Space had to be (self) for the movement vector to be relative to the player, not the world

    • @ivehadenough3030
      @ivehadenough3030 4 роки тому +1

      @@androidemulation5952 Thanks I had this problem to and that fixed it.

    • @androidemulation5952
      @androidemulation5952 4 роки тому

      @@ivehadenough3030 Glad it helped

  • @zap54312
    @zap54312 3 роки тому

    out of curiosity, Where did you find that Complete Control thing? I can't find it anywhere.

    • @OneMonthStudio
      @OneMonthStudio  3 роки тому

      It's an addon called Input Manager CC. It requires a little bit of tweaking to get it to work, but it's a handy input manager addon.

  • @GerwaldJensRadsma
    @GerwaldJensRadsma 5 років тому +1

    Thank you so very very much!

  • @ziyedhamrouni886
    @ziyedhamrouni886 5 років тому +4

    please make a third person controller

  • @edcosine
    @edcosine 5 років тому

    OMG I followed everything, but somewhere I must have missed something because, I'm able to move the camera left and right with the mouse, but it won't go Up and Down. Any suggestions?
    I keep rewatching the video and just can't seem to pin-point where I messed up at.

    • @edcosine
      @edcosine 5 років тому

      Ok, it looks like for some reason, under the "Mouse Look - Player" when I make adjustments to the sensitivity of the "Mouse X," it changes the sensitivity of the Y axis. I clearly have the X set to a value and the Y to zero, but it seems to be reacting to the Y Axis for some reason.

    • @edcosine
      @edcosine 5 років тому +1

      I figured it out!!!!! LOL
      Under the "Get Child" action, I had the "Child" name wrong. when I corrected it, everything worked correctly!

    • @OneMonthStudio
      @OneMonthStudio  5 років тому +1

      @@edcosine 👍

    • @edcosine
      @edcosine 5 років тому

      @@OneMonthStudio Ok, I'm heading over to the second video. So excited !!!

    • @Bara_Games05
      @Bara_Games05 2 місяці тому

      @@edcosine u so lucky man im having your issue to bro i cant look up and down. the child name for me isnt wrong :(

  • @bluebird5738
    @bluebird5738 4 роки тому

    thanks for this tutorial ,but scripting is easer and faster , can be done within 8 lines of simple codes to do all of that actions ..

  • @38procentkrytyk
    @38procentkrytyk 3 роки тому

    The child didn't work for me... however the big "nono" actually did... so I guess I'm a sinner.

    • @OneMonthStudio
      @OneMonthStudio  3 роки тому +1

      Setting variables isn't so much of a "nono", but less flexible if you want the variable to be set dynamically.
      Say if you're building a game out of chunks, where you load parts separately, then you can't rely on setting the variable beforehand, you'd have to look for what to fill that variable with at runtime.
      Remember to get a child that has the right tag and name, otherwise you're not going to find the child you're looking for.

    • @38procentkrytyk
      @38procentkrytyk 3 роки тому

      @@OneMonthStudio Thank you sir. Everything now works because now I understand how this system works. I thoughts the opposite was true. The name was the new name for the object we look for as a child.
      Some name changing so it would get less confusing and it works.

  • @gustas.pikturna631
    @gustas.pikturna631 4 роки тому

    mine is not moving
    i followed every step but no good but the tutorial is understandable

    • @notchedbandit
      @notchedbandit 3 роки тому

      Did you ever manage to fix this problem? I'm having the same problem and I tried everything.

  • @jaanekborodajev5654
    @jaanekborodajev5654 3 роки тому

    You not use Magnitude, for make Animations for Player.

  • @bobdawkins7473
    @bobdawkins7473 5 років тому

    What is hardshell ??

    • @OneMonthStudio
      @OneMonthStudio  5 років тому

      It's an input manager, a useful tool if you don't want to use the built-in Unity input manager.

  • @ZeroRaxo
    @ZeroRaxo 5 років тому +1

    Gravity doesn't work for me

    • @OneMonthStudio
      @OneMonthStudio  5 років тому +1

      It should if you did it as I did.

    • @KimCucnailshopduncanville
      @KimCucnailshopduncanville 5 років тому +1

      @@OneMonthStudio Which keywords to move forward. I only can move left (A letter), Move right (D). Backward and forward can not.

    • @OneMonthStudio
      @OneMonthStudio  5 років тому +1

      @@KimCucnailshopduncanville Forward and backwards is 'Vertical', while sideways is 'Horizontal'.

  • @DeadChannelLol
    @DeadChannelLol 4 роки тому +1

    10,000th

  • @Sparclen
    @Sparclen 4 роки тому +2

    THanks for the effort, but PLEASE write yourself a script first next time. 75% of the time you're just rambling, unsure about what to say next. It's quite excruciating.

  • @caroleancolonel7119
    @caroleancolonel7119 4 роки тому +1

    Stop abusing ur Mose

  • @hahas507
    @hahas507 4 роки тому

    말 진짜 ㅈㄴ 느리네