Пятница, 19 Апреля 2024, 22:54

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
Форум игроделов » Движки для разработки игр и сложные системы разработки » Unity » Управление шариком
Управление шариком
AlucardДата: Воскресенье, 24 Марта 2013, 15:36 | Сообщение # 1
частый гость
Сейчас нет на сайте
Всем привет! Очень нужен пример скрипта, в котором реализовано движение вращающегося шарика и его прыжок посредством ригидбоди. Пробовал делать через стандартный платформ инпут контроллер, но сфера сама по себе не вращается. И ещё, какие условия нужно соблюсти чтобы шарик отталкивался от стенок при столкновении. Подскажите в каком направлении копать по этим вопросам?

Сообщение отредактировал Alucard - Воскресенье, 24 Марта 2013, 15:37
true_abrakadabraДата: Воскресенье, 24 Марта 2013, 20:52 | Сообщение # 2
Unity3d - ван лав
Сейчас нет на сайте
Копай тут: http://docs.unity3d.com/Documentation/ScriptReference/Rigidbody.AddForce.html

Добавлено (24.03.2013, 20:52)
---------------------------------------------
И тут:3 http://docs.unity3d.com/Documentation/ScriptReference/Input.html


Ниндзя
AlucardДата: Понедельник, 25 Марта 2013, 16:25 | Сообщение # 3
частый гость
Сейчас нет на сайте
true_abrakadabra,
Буду изучать. Если что то не получится, отпишусь здесь.
P.S.: Для реализации прыжка посредством rigidbody важно определённое расположение осей вектора(чтобы Y был вверху)?

Добавлено (25.03.2013, 16:25)
---------------------------------------------

Код
using UnityEngine;
using System.Collections;

public class Sphera_Controller : MonoBehaviour {
  public Vector3 Sphera;

  // Use this for initialization
  void Start () {
   
  }
   
  // Update is called once per frame
  void FixedUpdate () {
  if(Input.GetAxis("Horizontal"))
    rigidbody.AddForce(Vector3.up * 10);
   
}
}

Assets/Scripts/Sphera_Controller.cs(14,9): error CS0029: Cannot implicitly convert type `float' to `bool' - в чём может быть загвоздка?


Сообщение отредактировал Alucard - Понедельник, 25 Марта 2013, 16:18
error111Дата: Понедельник, 25 Марта 2013, 16:35 | Сообщение # 4
заслуженный участник
Сейчас нет на сайте
Цитата (Alucard)
Для реализации прыжка посредством rigidbody важно определённое расположение осей вектора(чтобы Y был вверху)?


Зачем? ЭддФорс ты применяешь по средствам вектора3. То есть по любой нужной тебе оси. А гравитацию движка можно назначить на любые оси через Edit > ProjectSettings > Physics. Можно в принципе и вовсе отключить.

Добавлено (25.03.2013, 16:35)
---------------------------------------------

Цитата (error111)
Cannot implicitly convert type `float' to `bool' - в чём может быть загвоздка?


Там же написано - не может преобразовать тип переменной флоат к булину.
if(Input.GetAxis("Horizontal")) твое ему не нравиться. Поставь лучше Input.GetKey("z") или что-нибудь типа этого.


[Shmup/RPG] Fantasy Shmup!
AlucardДата: Понедельник, 25 Марта 2013, 19:52 | Сообщение # 5
частый гость
Сейчас нет на сайте
error111,
Спасибо! C гравитацией и вектором всё стало понятно. По поводу управления, хотел сделать так, чтобы сфера двигалась с помощью рычажков на джойстике(Если подставить трансформ заместо вектора - horizontal будет работать?). Кстати, что нужно сделать чтобы сфера откатывалась от бортиков, если врезается в них на скорости и подскакивала чуть чуть от земли после прыжка.

Добавлено (25.03.2013, 18:48)
---------------------------------------------
Код
using UnityEngine;

public class PlayerController : MonoBehaviour
{
       public int acceleration;
    public Transform Player;
       void Update()
       {
           var direction = new Vector3(Input.GetAxis("Horizontal"), Input.GetAxis("Vertical"), 0);
           rigidbody.AddForce(direction * acceleration);
     if(Input.GetButton("Jump"))
           rigidbody.AddForce(transform.forward * 10);    
       }
}

прыжок почему то не срабатывает... Пробовал ещё так "rigidbody.AddForce(0, 0, 10);" - тоже не работает.

Добавлено (25.03.2013, 19:52)
---------------------------------------------
С прыжком разобрался. Подскажите, пожалуйста, как сделать управляемый прыжок, чтобы сферу можно было контролировать в воздухе.

Сообщение отредактировал Alucard - Понедельник, 25 Марта 2013, 18:53
Форум игроделов » Движки для разработки игр и сложные системы разработки » Unity » Управление шариком
  • Страница 1 из 1
  • 1
Поиск:

Все права сохранены. GcUp.ru © 2008-2024 Рейтинг