Unity3D物体在UI界面的显示

        3D物体在UI界面的显示是个比较常遇到的需求,实现这个需求,首先要做的是创建一个专门拍摄模型的摄像机,和创建RenderTexture赋值给相机。这里具体的操作可以参照:https://www.cnblogs.com/chinarbolg/p/9601376.html 上面有相应的图文说明。

最后在模型的展示按钮上添加如下脚本:

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.EventSystems;
using UnityEngine.UI;
public class ModelButtonListener : MonoBehaviour, IPointerDownHandler, IPointerUpHandler
{
    private bool IsModelBtnDown;                 //模型按钮是否按下
    private GameObject TargetGo;                  //目标模型
    public float RotateSpeed = 100F;             //旋转速度
    public void OnPointerDown(PointerEventData eventData)
    {
        IsModelBtnDown = true;
    }
    public void OnPointerUp(PointerEventData eventData)
    {
        IsModelBtnDown = false;
    }
    void Start()
    {
        TargetGo = GameObject.Find("MachineGunRole").gameObject;
    }
    void Update()
    {
        float y = 0;
        y = Input.GetAxis("Mouse X") * RotateSpeed * Time.deltaTime;
        if (IsModelBtnDown)
        {
            TargetGo.transform.Rotate(new Vector3(0, -y, 0));
        }
    }
}

 

你可能感兴趣的:(项目笔记)