判断是否摄像机可以看到
2015-12-10 10:46
204 查看
/// <summary> /// 判断一个物体是否可见 /// </summary> /// <returns><c>true</c> if this instance is visible the specified go; otherwise, <c>false</c>.</returns> /// <param name="go">如果不可见返回0,可见=1.</param> int IsVisible(GameObject go) { int ret = -1; if(go!=null && Camera.main!=null) { Vector3 pos = Camera.main.WorldToViewportPoint(go.transform.position); bool isVisible = ( Camera.main.orthographic || pos.z > 0f) && ( (pos.x > 0f && pos.x < 1f && pos.y > 0f && pos.y < 1f)); ret = isVisible==true ?1:0; return ret; } return ret; } //这个是通过render来判断,但是感觉没上面那个好用 bool ReaderIsVisible(GameObject gameObjcet) { bool isVisbel = false; MeshRenderer[] renders = gameObject.GetComponentsInChildren<MeshRenderer> (); foreach(MeshRenderer render in renders) { if( render.isVisible ==true) { isVisbel =true; } } return isVisbel; }
相关文章推荐
- 华为OJ之N皇后问题(C++代码)
- Jenkins-Slave节点配置&Job关联
- jquery 操作input
- IOS 开发中[IOS9更新后...网络?第三方库?报错?]
- 特征描述子匹配公用接口
- ZOJ 3645 (高斯消元)
- HDU 2077 汉诺塔IV【递推】
- JSON序列化与反序列化一个集合
- Installation failed with message INSTALL_FAILED_UID_CHANGED.--APK安装失败解决方法
- n个人围一圈报数问题
- MapReduce:详解Shuffle过程
- iDaily的诞生
- 【springmvc+mybatis项目实战】杰信商贸-13.购销合同列表
- 我始终相信努力奋斗的意义
- js日期处理:LongToDate(long型转换成日期格式)
- ARM7ldr指令与ldr伪指令
- Linux上Python的安装升级
- IOS开发中的CGFloat、CGPoint、CGSize和CGRect
- linux内存占用问题
- Python第三方库使用 —— PIL