《Unity开发实战》——2.2节创建画中画效果

本节书摘来自华章社区《Unity开发实战》一书中的第2章,第2.2节创建画中画效果,作者 (爱尔兰)Matt Smith (巴西)Chico Queiroz,更多章节内容可以访问云栖社区“华章社区”公众号查看

2.2 创建画中画效果
在很多情况下,用多个视角显示是很有用的。比如,想显示不同地点同时发生的事件,或者多人对战(hot-seat multiplayer)游戏中为每个玩家显示单独的窗口,虽然也可以手动调整摄像机的Normalized Viewport Rect(标准化视口矩形)参数。本节包含一系列附加的首选项设置,使之独立于用户的显示器配置。

2.2.1 准备工作
示例代码的0423_02_01_02的文件夹中有一个名为 basicLevel 的包是专为本节准备的,包中有一个场景。

2.2.2 操作步骤
请按照下面的步骤创建画中画显示效果:
1)把basicLevel包导入到Unity中。
2)在Project视图中,打开02_01_02文件夹中的basicScene场景,这是一个基本场景,有一个方向光、一个摄像机和一些几何对象。
3)通过Hierarchy视图顶部的Create下拉菜单添加Camera选项到场景中,如下图所示:


a8c4af927b68478c36c7cd2b0e4ec29c72de7bb7

5)在Project视图中,创建一个C# Script(C#脚本),重命名为“PictureInPicture”。
6)打开脚本并替换成下面的代码:


1a23184c34603c495ff6f322a56ac82362c09a8b


9e7430d790ec8974112b77de9d637fd3e3144b63

也许你还没注意到:这里没有用数字除以100去实现百分比,而是把数字乘以0.01。原因是计算机处理乘法的效率比除法更高。
7)保存脚本,并将其附加到刚才新创建的摄像机上。
8)取消选择此摄像机的Audio Listener(音频监听器)组件,修改PictureInPicture的部分参数:把Horizontal Alignment(横向对齐)改成right(右对齐),Vertical Alignment(纵向对齐)改成top(顶对齐),Dimensions In(单位)改成pixels(像素),XOffset(X轴偏移量)和YOffset(Y轴偏移量)设成0,Width(宽度)改成400,Height(高度)改成200,如下图所示:


7554f9b5dc5c5c0c0fe29bfe072f598cf54246d1

2.2.3 实现原理
脚本修改了摄像机的Normalized Viewport Rect参数,从而按照用户偏好修改视口的尺寸和位置。

2.2.4 更多内容
下面是“画中画”可以改进的方面。

  1. 让画中画自适应屏幕尺寸
    如果想把Dimensions In(单位)选项修改成screen_percentage(屏幕百分比),视口的尺寸将会基于屏幕的实际大小,而不是pixel(像素)。
  2. 修改画中画的位置
    Vertical Alignment(纵向对齐)和Horizontal Alignment(横向对齐)可以用来修改视口的初始位置。用它们把视口放在期望的位置。
  3. 阻止画中画每帧更新
    如果不想在运行模式下改变视口的位置,可以取消选择Update(更新)选项。最好在测试的时候选中,然后在位置设置好以后再取消选择一次。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值