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 BTStone · Oct 21, 2012 at 10:20 PM · rigidbodycharactercontrollerstuck

Character stucks always (Rigidbody/Character)

Hello there,

i am working on a 2D-Platformer-Game and i am struggling with the Physics of the game.

So, we built the level with the cool "Uni2D"-PlugIn and gave the plattforms convex physics with the PlugIn-Feature, and set the "Edge Simplicity" to 1, so the collider is kind of "pixel-by-pixel".

The Problem is the Main Character. I really tried to, but i didn't manage to work it out with Character Controllers or Rigidbodys, here is the thing ( i made some poorly drawn pics):

alt text

Think of it as the first plattform, and think that the whole plattform is a collider.

alt text

So, here is the character, and i managed to move him quite well around on the ground. BUT:

alt text

When i jump, the Character is stuck at the Cliff/Corner, then, i have to jump again, and sometimes, i just press to the right and he kind of flies away. This is the behaviour with an Character Controller.

I also tried to do it with a Rigidbody + BoxCollider/SphereCollider/CapsuleCollider. Nearly same results, but the BoxCollider is the worst, it just goes THROUGH the ground.

Here is the script i used (for the CharController-Version):

 using UnityEngine;
 using System.Collections;
  
  
 public class charControllerMovement : MonoBehaviour {
  
     public float speed = 10.0f;
     public float jumpForce = 10.0f;
     public float gravityForce = 20.0f;
     public CharacterController controller;
     //the direction we are going to move
     private Vector3 dir;
  
     void Start()
     {
         //load a reference to our character controller component
         controller = GetComponent<CharacterController>();
     }
  
     void FixedUpdate () {
  
         //is the user pressing left or right on the keyboard?
         dir = new Vector3(Input.GetAxis("Horizontal"), 0, Input.GetAxis("Vertical"));
  
         //transform direction to local space
         dir = transform.TransformDirection(dir) * speed;
  
         //apply gravity
         dir.y = controller.velocity.y - gravityForce * Time.deltaTime;
  
         //are we jumping?
         if (Input.GetKey("space"))
         {
             dir.y = jumpForce * gravityForce * Time.deltaTime;      
         }
  
  
         //move our character
         controller.Move(dir * Time.deltaTime);
  
  
     }
  
  
 }

I really don't know how to handle this behavior, and would be really really grateful if someone could give at least a hint how i could manage that.

Comment
Add comment · Show 1
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
avatar image prototype7 · Nov 10, 2012 at 06:15 AM 0
Share

Did you try to use slope and step offset ? for example i use 90 degree for slopelimit you can change this by experiment controller.slopeLimit = 90; controller.stepOffset = 0.7;

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

10 People are following this question.

avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image

Related Questions

2D rigidbody movement & walls 2 Answers

Making character dash forward 0 Answers

C# Need Help converting from Rigidbody to Character Controller 0 Answers

A node in a childnode? 1 Answer

if CharacterController hit a rigidbody 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