Unity 3D'de üçüncü kişi denetleyicileri yapmaya çalışıyorum. Ben yeni bir başlangıç yapıyorum ve denetleyicimi nasıl işlevsel hale getireceğimi tamamen şaşırtdım. Saatlerce araştırma yaptım, ancak bulabileceğim hiçbir konu sorumu yanıtlamıyor. İki betik, bir CameraController ve bir CharacterController var. Kodum aşağıda.Unity3D C#. İki nesne arasındaki mesafeyi sabit tutarken transform.RotateAround() işlevini kullanarak
CameraController:
using UnityEngine;
using System.Collections;
public class CameraController : MonoBehaviour {
public GameObject target;
public float rotationSpeed;
Vector3 offset;
Vector3 CameraDestination;
// Use this for initialization
void Start() {
offset = transform.position - target.transform.position;
CameraDestination = offset + transform.position;
rotationSpeed = 50f;
transform.position = CameraDestination;
}
// Update is called once per frame
void Update() {
transform.LookAt (target.transform.position);
float h = Input.GetAxisRaw ("Horizontal");
transform.RotateAround (target.transform.position, Vector3.up, Time.deltaTime * h * rotationSpeed);
target.transform.Rotate (0f, Time.deltaTime * h * rotationSpeed, 0f);
}
}
CharacterController:
sol veya sağ ok tuşu ya basıldığındausing UnityEngine;
using System.Collections;
public class CharController : MonoBehaviour {
public float playerSpeed = 10f;
// Use this for initialization
void Start() {
}
// Update is called once per frame
void Update() {
float Vertical = Input.GetAxis("Vertical");
transform.position += transform.forward * Time.deltaTime * playerSpeed * Vertical;
}
}
, oyuncu ve kamera döner hem. Fotoğraf makinesini oynatıcıya bir çocuk olarak takmaya çalışırsam, kameranın dönüşü berbat olur, ancak kamerayı oynatıcıya bağlamayınca, kamera oynatıcıyı takip etmeyi durdurur. Fotoğraf makinesini müzikçalara göre belirli bir konuma ayarlamaya çalışırsam, oynatıcının yapmak istediği gibi etrafında dönmeyi durdurur. Ben sadece çalışır bir yöntemle gelemiyorum. Sorularıma cevap verdiğiniz için şimdiden teşekkür ederiz!
Yardımlarınız için çok teşekkür ederim! –
@AaronGe Çalıştı mı? – Zze
Evet, teşekkürler! –