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 adamspiniello · Jan 30, 2015 at 05:35 PM · collisioncolliderscollision detectioncollisions

Flying Controls Collision Issues

Hi

I am a student working on a new project using unity. I am quite new to it and am having a slight issue with collision when using a flying control script I have obtained. I have tried almost every possibility of using Rigidbodies/controllers/colliders on the character/game object but having absolutely no joy. I have also tried calling various functions - void OnTriggerEnter( Collider col ).

The closest I have came to the collision working is the character colliding with a game object but then bouncing off and floating about.

Below is the code for the flying controller script.

Any help/fix/advice would be much appreciated, I desperately need a solution! I have the unity scene files that I can email to anyone if necessary.

Kind Regards Adam

 **#pragma strict**
    
     var mainSpeed : float = 100.0; //regular speed
     var shiftAdd : float = 250.0; //multiplied by how long shift is held.  Basically running
     var maxShift : float = 1000.0; //Maximum speed when holdin gshift
     var camSens : float = 0.25; //How sensitive it with mouse
     private var lastMouse = Vector3(255, 255, 255); //kind of in the middle of the screen, rather than at the top (play)
     private var totalRun : float  = 1.0;
      
     function Update () {
         lastMouse = Input.mousePosition - lastMouse ;
         lastMouse = Vector3(-lastMouse.y * camSens, lastMouse.x * camSens, 0 );
         lastMouse = Vector3(transform.eulerAngles.x + lastMouse.x , transform.eulerAngles.y + lastMouse.y, 0);
         transform.eulerAngles = lastMouse;
         lastMouse =  Input.mousePosition;
         //Mouse & camera angle done.  
        
         //Keyboard commands
         var f : float = 0.0;
         var p = GetBaseInput();
         if (Input.GetKey (KeyCode.LeftShift)){
             totalRun += Time.deltaTime;
             p  = p * totalRun * shiftAdd;
             p.x = Mathf.Clamp(p.x, -maxShift, maxShift);
             p.y = Mathf.Clamp(p.y, -maxShift, maxShift);
             p.z = Mathf.Clamp(p.z, -maxShift, maxShift);
         }
         else{
             totalRun = Mathf.Clamp(totalRun * 0.5, 1, 1000);
             p = p * mainSpeed;
         }
        
         p = p * Time.deltaTime;
         if (Input.GetKey(KeyCode.Space)){ //If player wants to move on X and Z axis only
             f = transform.position.y;
             transform.Translate(p);
             transform.position.y = f;
         }
         else{
             transform.Translate( p);
         }
        
     }
      
     private function GetBaseInput() : Vector3 { //returns the basic values, if it's 0 than it's not active.
         var p_Velocity : Vector3;
         if (Input.GetKey (KeyCode.W)){
             p_Velocity += Vector3(0, 0 , 1);
         }
         if (Input.GetKey (KeyCode.S)){
             p_Velocity += Vector3(0, 0 , -1);
         }
         if (Input.GetKey (KeyCode.A)){
             p_Velocity += Vector3(-1, 0 , 0);
         }
         if (Input.GetKey (KeyCode.D)){
             p_Velocity += Vector3(1, 0 , 0);
         }
         return p_Velocity;
     }
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

Why there is no Collider.IsTouching(...) ? 2 Answers

Player registering collisions where there are none 0 Answers

How to make a certain function if an object collides with another object? Been searching it up for 2 months. 1 Answer

How do I stop incorrect collision detections? 1 Answer

How do I use colliders and/or triggers to end the 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