- Home /
Question by
davtonell · Sep 04, 2019 at 07:59 PM ·
beginnerterraindata
Can you Help me with this code for Camera Height to the terrain?
I don't understand why the piece of code between "Code Here!!!" is not working. I have done the reference to the terrain in the editor.
using System.Collections; using System.Collections.Generic; using UnityEngine;
public class PointMover : MonoBehaviour
{
public float PanSpeed = 200f;
public Terrain Terrain;
void Update()
{
//Camera Muvement
Vector3 CameraPosition = transform.position;
if (Input.GetKey("w"))
{
CameraPosition.z += PanSpeed * Time.deltaTime;
}
if (Input.GetKey("s"))
{
CameraPosition.z -= PanSpeed * Time.deltaTime;
}
if (Input.GetKey("a"))
{
CameraPosition.x -= PanSpeed * Time.deltaTime;
}
if (Input.GetKey("d"))
{
CameraPosition.x += PanSpeed * Time.deltaTime;
}
Quaternion CameraRotation = transform.rotation;
if (Input.GetKey("q"))
{
CameraRotation.y -= 1 * Time.deltaTime;
}
if (Input.GetKey("e"))
{
CameraRotation.y += 1 * Time.deltaTime;
}
//Code Here!!!
float TerrainHeight = Terrain.terrainData.GetHeight((int)transform.position.x,(int) transform.position.y);
CameraPosition.y = TerrainHeight;
Debug.Log(TerrainHeight);
//Code Here!!!
//do
transform.rotation = CameraRotation;
transform.position = CameraPosition;
}
}
Comment