拥有 2D 精灵脸 3d 相机
Have 2D sprite face 3d camera
我正在 Unity 5 中创建 3D 游戏,但想对某些部分使用 2D 精灵。我对 Unity 很陌生,所以我可能会遗漏一些明显的东西。我的相机的 Y 轴增加了,X 轴旋转了 90 度,因此它正 'down' 看着地图。当我将精灵拖到编辑器中时,我必须手动旋转它的 X 轴,使其面向相机。然后所有的物理代码都必须稍微改变,因为轴不对应于相机的 X、Y、Z(而是根据世界)。
我必须为每个 sprite 执行此操作,这让我觉得我正在以错误的方式进行此过程。有没有办法让所有精灵在创建时自动面对相机,或者我是否以错误的方式接近这个自上而下的 3D 世界方面?我可以根据相机定义世界的 X、Y、Z 轴吗?
谢谢
这叫做布告牌(语言是 c#):
public class LookAtCamera : MonoBehaviour
{
public Camera cameraToLookAt;
void Update()
{
transform.LookAt(cameraToLookAt.transform);
}
}
这将使任何游戏对象朝向相机。做你想做的另一种方法是为具有正确方向的精灵创建一个 prefab/s,然后简单地将它们拖到场景中。
我正在 Unity 5 中创建 3D 游戏,但想对某些部分使用 2D 精灵。我对 Unity 很陌生,所以我可能会遗漏一些明显的东西。我的相机的 Y 轴增加了,X 轴旋转了 90 度,因此它正 'down' 看着地图。当我将精灵拖到编辑器中时,我必须手动旋转它的 X 轴,使其面向相机。然后所有的物理代码都必须稍微改变,因为轴不对应于相机的 X、Y、Z(而是根据世界)。
我必须为每个 sprite 执行此操作,这让我觉得我正在以错误的方式进行此过程。有没有办法让所有精灵在创建时自动面对相机,或者我是否以错误的方式接近这个自上而下的 3D 世界方面?我可以根据相机定义世界的 X、Y、Z 轴吗?
谢谢
这叫做布告牌(语言是 c#):
public class LookAtCamera : MonoBehaviour
{
public Camera cameraToLookAt;
void Update()
{
transform.LookAt(cameraToLookAt.transform);
}
}
这将使任何游戏对象朝向相机。做你想做的另一种方法是为具有正确方向的精灵创建一个 prefab/s,然后简单地将它们拖到场景中。