Wayback Machinekoobas.hobune.stream
May JUN Jul
Previous capture 13 Next capture
2021 2022 2023
1 capture
13 Jun 22 - 13 Jun 22
sparklines
Close Help
  • Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
  • Asset Store
  • Get Unity

UNITY ACCOUNT

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account
  • Blog
  • Forums
  • Answers
  • Evangelists
  • User Groups
  • Beta Program
  • Advisory Panel

Navigation

  • Home
  • Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
    • Blog
    • Forums
    • Answers
    • Evangelists
    • User Groups
    • Beta Program
    • Advisory Panel

Unity account

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account

Language

  • Chinese
  • Spanish
  • Japanese
  • Korean
  • Portuguese
  • Ask a question
  • Spaces
    • Default
    • Help Room
    • META
    • Moderators
    • Topics
    • Questions
    • Users
    • Badges
  • Home /
avatar image
0
Question by Zopher · Jan 17, 2015 at 05:53 PM · fpsjumping

FPS velocity question

Hi yeah, beginners question here, Im working on a movement script and cannot figure out how to add velocity from jumping, what i mean is when i jump with the character, if i release the forward button he will stop mid air and fall directly down. I've searched everywhere on the net and the closest I've come is for a rigid body, as you can see here its for a Character controller. i came across addReletiveForce function but don't know hoe to implement it. script guide doesnt help. :P anybody got any ideas, i need them to continue in the trajectory he is fall even if the button is release, like real life. thanks for any help :D!!!

 using UnityEngine;
 using System.Collections;
 using UnityEngine;
 using System.Collections;
 
 [RequireComponent (typeof(CharacterController))]
 
 public class StandardMovement : MonoBehaviour {
     
     public float mouseSensitivity = 5.0f;
     public float jumpSpeed = 20.0f;
     public float upDownRange = 60.0f;
     public float walkSpeed = 5.0f;
     public float sprintSpeed = 10.0f;
     
     float verticalVelocity = 0;
     float verticalRotation = 0;
     float actualSpeed;
     
     public GameObject playerCamera;
     
     CharacterController characterController;
     
     
     // Use this for initialization
     void Start () {
         
         Screen.lockCursor = true; // Hides the cursor on playing
         characterController = GetComponent<CharacterController> (); //Retrieves CC 
         
     }
     
     // Update is called once per frame
     void Update () {
         
         
         // ** Movement of Player **
         
         actualSpeed = walkSpeed;
         
         verticalVelocity += Physics.gravity.y * Time.deltaTime; //Applies acceleration p/s of Gravity when falling
         
         // Restricts player from jumping twice in mid-air                                                                                                                                                               ir until player hits ground
         
         if ( characterController.isGrounded && Input.GetButtonDown ("Jump")) {
             verticalVelocity = jumpSpeed;        
         }
         
         // Camera
         float rotLeftRight = Input.GetAxis ("Mouse X") * mouseSensitivity;
         transform.Rotate (0, rotLeftRight, 0);
         
         verticalRotation -= Input.GetAxis ("Mouse Y") * mouseSensitivity;
         verticalRotation = Mathf.Clamp (verticalRotation, -upDownRange, upDownRange);
         playerCamera.transform.localRotation = Quaternion.Euler (verticalRotation, 0, 0);
         
         //Allows sprinting
         
         if (characterController.isGrounded && Input.GetKey(KeyCode.LeftShift)) {
             actualSpeed = sprintSpeed;
         }
         if (characterController.isGrounded && Input.GetKeyUp(KeyCode.LeftShift)) {
             actualSpeed = walkSpeed;
         }
         float forwardSpeed = Input.GetAxis ("Vertical") * actualSpeed; //Movement speed of player - forward movement
         float sideSpeed = Input.GetAxis ("Horizontal") * actualSpeed / 2; //Movement speed of player - side movement
 
         Vector3 speed = new Vector3 ( sideSpeed, verticalVelocity, forwardSpeed ); //Vector for movement of the player
         
         speed = transform.rotation * speed; // ?
         
         
         characterController.Move ( speed * Time.deltaTime ); //Applies speed of player p/frame
         
     }
     
 }
Comment
Add comment
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users

0 Replies

· Add your reply
  • Sort: 

Your answer

Hint: You can notify a user about this post by typing @username

Up to 2 attachments (including images) can be used with a maximum of 524.3 kB each and 1.0 MB total.

Follow this Question

Answers Answers and Comments

2 People are following this question.

avatar image avatar image

Related Questions

How can I stop the fps controller jumping up slopes? 1 Answer

Patching glitches 1 Answer

unity FPS controller besy JUMPING setting ? 1 Answer

How to Jump, Sprint and Sneak 0 Answers

Gravity Lift/Jump Pad for FPS game 1 Answer


Enterprise
Social Q&A

Social
Subscribe on YouTube social-youtube Follow on LinkedIn social-linkedin Follow on Twitter social-twitter Follow on Facebook social-facebook Follow on Instagram social-instagram

Footer

  • Purchase
    • Products
    • Subscription
    • Asset Store
    • Unity Gear
    • Resellers
  • Education
    • Students
    • Educators
    • Certification
    • Learn
    • Center of Excellence
  • Download
    • Unity
    • Beta Program
  • Unity Labs
    • Labs
    • Publications
  • Resources
    • Learn platform
    • Community
    • Documentation
    • Unity QA
    • FAQ
    • Services Status
    • Connect
  • About Unity
    • About Us
    • Blog
    • Events
    • Careers
    • Contact
    • Press
    • Partners
    • Affiliates
    • Security
Copyright © 2020 Unity Technologies
  • Legal
  • Privacy Policy
  • Cookies
  • Do Not Sell My Personal Information
  • Cookies Settings
"Unity", Unity logos, and other Unity trademarks are trademarks or registered trademarks of Unity Technologies or its affiliates in the U.S. and elsewhere (more info here). Other names or brands are trademarks of their respective owners.
  • Anonymous
  • Sign in
  • Create
  • Ask a question
  • Spaces
  • Default
  • Help Room
  • META
  • Moderators
  • Explore
  • Topics
  • Questions
  • Users
  • Badges