查看: 1508|回复: 0
打印 上一主题 下一主题

Unity中快速给Object在屏幕上定位

[复制链接]

5552

主题

2

听众

8万

积分

首席设计师

Rank: 8Rank: 8

纳金币
-1
精华
11

最佳新人 活跃会员 热心会员 灌水之王 突出贡献

跳转到指定楼层
楼主
发表于 2012-5-2 14:39:30 |只看该作者 |倒序浏览
让你的UI元素很轻松的固定在用户屏幕的九个位置:左上,中上,右上等等,同时能自匹配屏幕尺寸,方便多个设备间的移植.这个超级简单的C#扩展脚本,提供了一个叫"ScreenPlacement"的方法.


将脚本添加倒项目中后,利用ScreenPlacement就可以很容易的来把你的内容放置到屏幕的九个位置之一.




程序代码 //放置一个Object在屏幕的右下角:

transform.ScreenPlacement(ScreenPosition.LowerRight);

//放置一个Object到屏幕的右下角,且距离屏幕右侧60像素,距离底部20像素:

transform.ScreenPlacement(ScreenPosition.LowerRight, new Vector2(60,20));


如果你要切换一个相机来协助显示一些内容的话,你需要将ScreenPosition传递给你的那个相机,以确保可以准确计算该相机中的内容显示.
程序代码 //放置一个Object在屏幕的右下角,以MyInterfaceCamera为显示参考:

transform.ScreenPlacement(ScreenPosition.LowerRight, MyInterfaceCamera);

//放置一个Object到屏幕的右下角,且距离屏幕右侧60像素,距离底部20像素,以MyInterfaceCamera为显示参考:

transform.ScreenPlacement(ScreenPosition.LowerRight, new Vector2(60,20), MyInterfaceCamera);
原文:http://pixelplacement.com/2011/05/13/simplifying-screen-positioning-in-unity/
分享到: QQ好友和群QQ好友和群 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
转播转播0 分享淘帖0 收藏收藏0 支持支持0 反对反对0
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

手机版|纳金网 ( 闽ICP备2021016425号-2/3

GMT+8, 2025-6-17 19:28 , Processed in 0.057630 second(s), 28 queries .

Powered by Discuz!-创意设计 X2.5

© 2008-2019 Narkii Inc.

回顶部