Unity之编辑器类将摄像机视图(targetTexture)绘制在窗口中

Unity之编辑器类将摄像机视图(targetTexture)绘制在窗口中


在菜单来创建按钮 “Camera Viewer



点击 “Camera Viewer”创建并显示一个窗口,将主摄像机视野内的视图,绘制在该窗口中





上方为摄像机视野,下方为重新创建一个窗口,然后重新画摄像机视野内的东西

 

Editor文件夹下创建脚本


using UnityEngine;
using System.Collections;
using UnityEditor;


public class CameraView : EditorWindow
{
    Camera myCamera = Camera.main;  //获取摄像机
    RenderTexture renderTexture;


    [MenuItem("Examples/Camera Viewer")]  //在菜单栏创建按钮
    static void Init()
    {
        EditorWindow editorWindows = GetWindow(typeof(CameraView));  //创建新窗口
        editorWindows.autoRepaintOnSceneChange = true;
        editorWindows.Show();
    }


    public void Awake()  //当跳出窗口时首先调用该方法
    {
        renderTexture = new RenderTexture((int)position.width,
           (int)position.height, 1);  //获取renderTexture
    }


    public void Update()  //跳出窗口后每帧调用该方法
    {
        if (myCamera != null)
        {
            myCamera.targetTexture = renderTexture;
        }
    }


    void OnGUI()
    {
        if (renderTexture != null)
        {
            GUI.DrawTexture(new Rect(0.0f, 0.0f, position.width, position.height), renderTexture, ScaleMode.ScaleAndCrop, true);
        }
    }
}


























  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值