Суббота, 20 Апреля 2024, 00:20

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

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
Форум игроделов » Движки для разработки игр и сложные системы разработки » Unity » Камера от 3 лица (Ищу аналог)
Камера от 3 лица
BassPiraT92Дата: Четверг, 08 Февраля 2018, 10:35 | Сообщение # 1
участник
Сейчас нет на сайте
Доброе время суток! Подскажите хороший ассет или урок по созданию камеры от 3 лица как в gta vc, т.е. при повороте мышки поворачивался сам персонаж(привязка мув и ротейшен к камере или наоборот). Чет мучаюсь ничего не получается. А надо просто банально сделать.
seamanДата: Четверг, 08 Февраля 2018, 11:12 | Сообщение # 2
старожил
Сейчас нет на сайте
https://vk.com/page-94697278_49632759
BassPiraT92Дата: Четверг, 08 Февраля 2018, 16:33 | Сообщение # 3
участник
Сейчас нет на сайте
seaman, нужен упрощенный вариант. 1 скрипт привязки камеры к объекту которым управляю. Блин простой вариант.
Объясняю: Жму "W" персонаж бежит, верчу мышкой при этом и бежит он туда где центр экрана

Вот скрипт:
Код
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class CameraRotateAround : MonoBehaviour {

    public Transform target;
    public Vector3 offset;
    public float sensitivity = 3; // чувствительность мышки
    public float limit = 80; // ограничение вращения по Y
    public float zoom = 0.25f; // чувствительность при увеличении, колесиком мышки
    public float zoomMax = 10; // макс. увеличение
    public float zoomMin = 3; // мин. увеличение
    private float X, Y;

    void Start ()
    {
  limit = Mathf.Abs(limit);
  if(limit > 90) limit = 90;
  offset = new Vector3(offset.x, offset.y, -Mathf.Abs(zoomMax)/2);
  transform.position = target.position + offset;
    }

    void Update ()
    {
  if(Input.GetAxis("Mouse ScrollWheel") > 0) offset.z += zoom;
  else if(Input.GetAxis("Mouse ScrollWheel") < 0) offset.z -= zoom;
  offset.z = Mathf.Clamp(offset.z, -Mathf.Abs(zoomMax), -Mathf.Abs(zoomMin));

  X = transform.localEulerAngles.y + Input.GetAxis("Mouse X") * sensitivity;
  Y += Input.GetAxis("Mouse Y") * sensitivity;
  Y = Mathf.Clamp (Y, -limit, limit);
  transform.localEulerAngles = new Vector3(-Y, X, 0);
  transform.position = transform.localRotation * offset + target.position;
    }
}

как привязать к нему персонажа? Куда смотрю - туда бегу


Сообщение отредактировал BassPiraT92 - Четверг, 08 Февраля 2018, 17:22
roma3fonДата: Четверг, 08 Февраля 2018, 17:28 | Сообщение # 4
участник
Сейчас нет на сайте
BassPiraT92, берешь направление камеры, и двигаешь туда персонажа(Разве что только игнорируешь ось Y).
BassPiraT92Дата: Четверг, 08 Февраля 2018, 17:31 | Сообщение # 5
участник
Сейчас нет на сайте
roma3fon, накатай примерчик пожалуйста crazy deal
roma3fonДата: Четверг, 08 Февраля 2018, 18:53 | Сообщение # 6
участник
Сейчас нет на сайте
BassPiraT92, хабр
Форум игроделов » Движки для разработки игр и сложные системы разработки » Unity » Камера от 3 лица (Ищу аналог)
  • Страница 1 из 1
  • 1
Поиск:

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