Unity获取SceneView尺寸

获取SceneView尺寸

在这里插入图片描述

var sceneView = SceneView.lastActiveSceneView;
var size = new Vector2(sceneView.position.width,sceneView.position.height);
### UnityScene 视图摄像机的使用方法与设置 在 Unity 的开发环境中,Scene 视图中的摄像机是一个非常重要的工具,它帮助开发者观察和调整场景内的对象。尽管这个摄像机仅用于编辑模式下的场景查看,不会影响实际的游戏运行效果[^2],但它提供了丰富的功能和可配置选项。 #### 1. 基本控制 通过鼠标和键盘组合,可以实现对 Scene 视图摄像机的基本操控。这些操作类似于常见的三维建模软件: - **平移 (Pan)**:按住中间滚轮并拖动鼠标即可移动视图位置。 - **旋转 (Rotate)**:右键点击并拖动鼠标以改变视角方向。 - **缩放 (Zoom)**:滚动鼠标滚轮或者按住 `Alt` 键加左键拖动来放大或缩小视野范围[^1]。 #### 2. 高级设置 除了基本的操作外,还可以进一步自定义 Scene 视图的行为及其内部使用的虚拟摄像机参数。这可以通过修改特定属性完成: - 打开菜单栏上的 `Window -> General -> Preferences` 进入偏好设置窗口,在这里能够找到关于 gizmos 显示大小以及网格单位长度等全局设定项。 - 如果希望更精确地管理当前活动场景中所应用的具体渲染样式,则可以在顶部工具条里切换不同的显示模式(如 Shaded、Wireframe 或 Solo Render Texture),从而更好地满足不同阶段的需求。 #### 3. 脚本扩展支持 对于某些特殊需求来说,可能需要借助脚本来增强默认的功能集。例如下面给出了一段简单的 C# 示例代码片段展示如何动态更改 scene view camera 的 field of view(FOV): ```csharp using UnityEditor; public class CustomSceneView : EditorWindow { private Camera _sceneCamera; void OnEnable() { var views = SceneView.sceneViews; // 获取所有的场景视图实例列表 foreach(SceneView v in views){ if(v.camera != null){ this._sceneCamera = v.camera as Camera;// 将第一个非空camera赋给成员变量 break; } } if(this._sceneCamera !=null ){ Debug.Log("Current FOV:"+this._sceneCamera.fieldOfView); this._sceneCamera.fieldOfView=70f; // 修改field Of View为70度角 }else{ Debug.LogError("No valid scene cam found!"); } } } ``` 上述例子展示了怎样访问到当前激活的那个sceneview对应的cameracomponent,并对其 fov 属性进行了重新指定。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

牙膏上的小苏打2333

哟,哟,切克闹,煎饼果子来一套

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值