我目前正在尝试编写一个让玩家聚焦的相机脚本,可以移动到与玩家自己的动作无关。 您可以使用正确的xBox控制器控制相机。 相机应该在X轴上在播放器周围的轨道上正常移动,但是如果你将相机向上或向下移动(比如20°向上),它应该是0°,如果你放开了它,它应该再次聚焦玩家操纵杆和这两个角度之间的插值。
在我的脚本中,相机可以向上和向下查看(但程度尚未锁定,因此您可以将其在Y轴上移动360°+),但它会重置为0°。另外,x轴不像我想要的那样表现,因为它能够围绕播放器旋转但只有180°然后停止,如果你让控制器走了它也会设置它的值(我不想要对于x轴)。
相机是空游戏对象的子对象。该脚本附加到空游戏对象。
我试图解决这个问题〜3天以后我会非常感激任何小建议。 在此先感谢&这是我的剧本:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class CameraFollowPlayer : MonoBehaviour
{
public GameObject target;
public GameObject cameraRig;
public float rotateSpeedX = 90.0f;
public float rotateSpeedY = 5f;
float cameraAngle;
float startCameraAngle;
Vector3 offset;
Vector3 currentOffset;
public float minRotationY;
public float maxRotationY;
bool isCameraMoving;
void Start()
{
offset = transform.position - target.transform.position;
cameraAngle = transform.localEulerAngles.z;
startCameraAngle = cameraAngle;
currentOffset = offset;
}
void Update()
{
transform.position = target.transform.position + currentOffset; // Folgt dem Spieler
float hor = Input.GetAxis("RightJoystickX") * rotateSpeedX; // Input rechter Joystick
float ver = Input.GetAxis("RightJoystickY") * rotateSpeedY;
if (!Mathf.Approximately (hor, 0)) {
transform.RotateAround (target.transform.position, Vector3.up, hor);
currentOffset = transform.position - target.transform.position;
}
if (!Mathf.Approximately (ver, 0)) {
cameraAngle += 110f * Time.deltaTime;
transform.RotateAround (target.transform.position, Vector3.up, hor);
currentOffset = transform.position - target.transform.position;
print(ver);
}
else if (ver <= 0.8f) {
//cameraAngle = Mathf.Lerp(cameraAngle, startCameraAngle, 1f - 0.1f * Time.deltaTime);
cameraAngle = startCameraAngle;
}
transform.localEulerAngles = new Vector3(0, hor, cameraAngle);
}
}
答案 0 :(得分:0)
如果sb用Google搜索了这个并发现我的问题,这对我有用:
max_execution_time - 10240
log_errors_max_len - 1024
max_file_uploads - 500
max_input_nesting_level - 64
max_input_time - 60
max_input_vars - 1000
memory_limit - 4096M
post_max_size - 1000M
sql.safe_mode - Off
upload_max_filesize - 1000M
ldap.max_links - Unlimited
mysqli.max_links - Unlimited
mysqli.max_persistent - Unlimited
odbc.max_links - Unlimited
odbc.max_persistent - Unlimited
pcre.backtrack_limit - 1000000
pcre.recursion_limit - 100000
session.cache_limiter - no value
session.gc_maxlifetime - 7200
wincache.maxfilesize - 2048
wincache.ttlmax - 1200