【发布时间】:2020-04-08 07:14:08
【问题描述】:
我刚开始编程,正在学习如何统一制作游戏的教程 所以我做了一切就像视频说的但我仍然收到这个错误 谁能解释一下我做错了什么?
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Player : MonoBehaviour
{
public float playerSpeed = 500;
public float directionalSpeed = 20;
void Start()
{
// Start is called before the first frame update
}
// Update is called once per frame
void Update() {
#if UNITY_EDITOR || UNITY_STANDALONE || UNITY_WEBPLAYER
.transform.position.y, gameObject.transform.position.z), directionalSpeed * Time.deltaTime);
#endif
float moveHorizontal = Input.GetAxis("Horizontal");
transform.position = Vector3.Lerp(gameObject.transform.position, new Vector3(Mathf.Clamp(gameObject.transform.position.x + moveHorizontal, -2.5f, 2.5f), gameObject
GetComponent<Rigidbody>().velocity = Vector3.forward * playerSpeed * Time.deltaTime;
//Mobile Controls
Vector2 touch = Camera.main.ScreenToWorldPoint(Input.mousePosition + new Vector3(0, 0, 10f));
if (Input.touchCount > 0)
{
transform.position + new Vector3(touch.x, transform.position.y, transform.position.z);
}
}
}
【问题讨论】:
-
请注意,这个
transform.position + ...也绝对没有任何作用......它会返回一个新的Vector3,但结果没有存储在任何地方......您可能想将其设为+=或仅=而不是实际移动对象?