1.创建一个Raw Image用来在UI界面进行显示模型
2.将图片在界面调整到合适位置,根据自己的需要进行调整
3.在Assets文件夹下创建“渲染器纹理”
后面如果觉得显示不够清晰可以选择调“渲染器纹理”整这里的大小
4.导入模型
5.创建一个摄像机
(我这里用的是原神“莹”,如有侵权请私信,看到后立即删除)
记得删除相机创建上的组件“Audio Listener”
6.将创建好的相机对准好模型,调整好你需要的角度
7.选择创建好的相机,将之前的创建好的“渲染器纹理”拖入
8.选择“Raw image”将关联好的“渲染器纹理”添加到“纹理”中
9.让模型人物旋转
9.1创建一个空对象
9.2让空对象Transform与模型的数据一样
9.3让模型成为空对象的子物体
9.4创建一个脚本,将脚本挂载到空对象上
代码如下
public GameObject obj;
bool iswork;//判断鼠标是否工作
Vector3 startPoint, startAngle;//保存开始鼠标在屏幕上的数据//保存物体模型Angles的数据
public float rotateScale = 1f;//控制旋转速度
// Update is called once per frame
void Update()
{
if (Input.GetMouseButtonDown(0)&&!iswork)
{
iswork = true;
startPoint=Input.mousePosition;
startAngle = obj.transform.eulerAngles;
}
if (Input.GetMouseButtonUp(0))
{
iswork=false;
}
if (iswork)
{
var x = startPoint.x - Input.mousePosition.x;///
obj.transform.eulerAngles=startAngle+new Vector3(0,x*rotateScale,0);
}
}
接着将空对象关联即可
----------------------------------------附加内容------------------------------------
对于直接旋转模型其实可能存在一些问题,导致对角色控制方向、导航等产生影响
所以多数旋转还是采用镜头旋转展示,在展示完然后归位
如何做?
让相机绕模型坐标使用transform.RotateAround
进行旋转展示