zoukankan      html  css  js  c++  java
  • 新年第一篇 之 (摄像机可视区域)

    有一段时间没上博客了,今天说下 摄像机 可视区域,一般用这个的,都是为了 固定范围,或者让不可视地方 删除,提高性能。

    之前雨凇有一篇 perspective 可视区域的代码。

    我再补充一个 Orthographic 可视区域的。

    先看 动态效果图

    开头是 雨凇的  之后是  我的。慢慢看

    然后就是 上代码

    using UnityEngine;
    using System.Collections;
    
    public class Cameras : MonoBehaviour
    { 
        public GameObject mainCamera;
        float frustumHeight;
        float frustumWidth;
        void Start()
        {
        }
        void Update()
        {
            frustumHeight = mainCamera.GetComponent<Camera>().orthographicSize * 2;
            frustumWidth = frustumHeight * mainCamera.GetComponent<Camera>().aspect;
    
            Vector3 camerass = mainCamera.transform.position;
            Vector3 leftup = new Vector3(camerass.x - frustumWidth / 2.0f, camerass.y + frustumHeight / 2.0f, 100);
    
            Vector3 rigthup = new Vector3(camerass.x + frustumWidth / 2.0f, camerass.y + frustumHeight / 2.0f, 100);
    
            Vector3 leftdown = new Vector3(camerass.x - frustumWidth / 2.0f, camerass.y - frustumHeight / 2.0f, 100);
            Vector3 rigthdown = new Vector3(camerass.x + frustumWidth / 2.0f, camerass.y - frustumHeight / 2.0f, 100);
    
            Debug.DrawLine(leftup, rigthup, Color.yellow); // UpperLeft -> UpperRight
            Debug.DrawLine(rigthup, rigthdown, Color.yellow);
            Debug.DrawLine(rigthdown, leftdown, Color.yellow);
            Debug.DrawLine(leftdown, leftup, Color.yellow);
        }
    }
    

      

  • 相关阅读:
    机器学习知识体系
    重新指派usb转串口模块在linux系统中的设备调用名称
    ROS 进阶学习笔记(13)
    121. 买卖股票的最佳时机
    SpringBoot | 集成Java Mail
    SpringBoot | 遇坑总结 | JPA
    测试 | 单元测试工具 | JUnit | 参数化
    测试 | 单元测试工具 | JUnit
    JSP | 基础 | 连接数据库
    Mysql | 总结 | 常用的查询语句(单表查询)
  • 原文地址:https://www.cnblogs.com/big-zhou/p/6273188.html
Copyright © 2011-2022 走看看