Страница 1 из 1
Камера при приселаниях
Добавлено:
18 окт 2018, 16:25
NeProUser
У меня есть скрипт для пресидания персонажа(с ним проблем нет) в котором я реализуются приседания путём изменения компонента высота в charactr controller. Всё бы ничего но комера во время приседания находится слишком высоко и я не знаю как это исправить. Подскажите , есть ли способ?
Re: Камера при приселаниях
Добавлено:
18 окт 2018, 18:37
Saltant
Да, есть легкий способ, используй Cinemachine камеру.
https://unity3d.com/ru/learn/tutorials/ ... ng-started
Re: Камера при приселаниях
Добавлено:
20 окт 2018, 11:07
NeProUser
спасибо за ответ. технология довольно таки полезная , но есть одна проблема - я не использую unity выше 5.6.3 (похоже эт нужно был писать сразу).
Re: Камера при приселаниях
Добавлено:
20 окт 2018, 11:16
NeProUser
нашлось довольно таки простое решение:
скрипт для камеры:
Используется csharp
public GameObject cam;
public GameObject campos;
public GameObject camposST;
// Use this for initialization
void Start () {
}
// Update is called once per frame
void Update () {
if (gameObject.GetComponent<PRISIDANIE> ().presed == true) {
cam.transform.position = campos.transform.position;
} else {
cam.transform.position = camposST.transform.position;
}
}
скрипт для приседаний:
Используется csharp
public float zn;
public float zn1;
public int camzn;
public bool presed;
// Use this for initialization
void Start () {
}
// Update is called once per frame
void Update () {
if (Input.GetKey (KeyCode.LeftControl)) {
presed = true;
}else{
presed = false;
}
if (presed == true) {
gameObject.GetComponent <CharacterController> ().height = zn;
} else {
if (Physics.Raycast (transform.position + transform.up, transform.up, 1f)) {
} else {
gameObject.GetComponent <CharacterController> ().height = zn1;
}
}
}
Re: Камера при приселаниях
Добавлено:
20 окт 2018, 14:15
Saltant
Советую тебе никогда не называть переменные вида "PRISIDANIE" "presed" "zn1" т.п, это как минимум дурной тон в дальнейшем твоем развитии это может принести кучу проблем. Называй переменные английскими словами, да так чтоб всем был твой код понятен. Приседание можешь назвать "Duck".