NGUI 多边形碰撞体自动调节

Babybus-u3d技术交流-NGUI 多边形碰撞体自动调节

在NGUI的控件中添加PolygonCollider2D啥也看不见,因为默认是按照缩放的大小生成的,所以点很小很密集基本看不见。如图所示

1.png
2.png
3.png

自动调节大小后就可以随性所欲编辑了。

4.png

ps:改为调试模式。

5.png
6.png

因为使用的是2d碰撞体,所以还需要对UICamera设置事件类型为2D 模式。

7.png

PolygonCollider2DContextMenu.cs

using UnityEngine;

using System.Collections;

using UnityEditor;

 
public class PolygonCollider2DContextMenu
{

    [MenuItem("CONTEXT/PolygonCollider2D/Auto Adjust To Match", true)]

    static bool AutoAdjustToMatchValidation(MenuCommand menuCommand)

    {

        return (menuCommand.context as PolygonCollider2D).GetComponent<UIWiget>() != null;

    }

 
    [MenuItem("CONTEXT/PolygonCollider2D/Auto Adjust To Match")]

    
static void AutoAdjustToMatch(MenuCommand menuCommand)

    {

        Undo.RecordObject(menuCommand.context, "AutoAdjustToMatch");

 
        var polygonCollider2D = menuCommand.context as PolygonCollider2D;
         var w = polygonCollider2D.GetComponent<UIWidget>();

 
        Vector2[] points = new Vector2[4];

        points[0] = new Vector2(-w.width/2, -w.height/2);

        points[1] = new Vector2(w.width/2, -w.height/2);

        points[2] = new Vector2(w.width/2, w.height/2);

        points[3] = new Vector2(-w.width/2, w.height/2);

 
        polygonCollider2D.points = points;

    }
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 原文地址 http://www.fx114.net/qa-75-172454.aspx 使用Profiler工具...
    IongX阅读 6,205评论 1 11
  • Unity技术面试题 一:什么是协同程序? 答:在主线程运行时同时开启另一段逻辑处理,来协助当前程序的执行。换句话...
    沐冉阅读 2,998评论 1 19
  • 这个是我刚刚整理出的Unity面试题,为了帮助大家面试,同时帮助大家更好地复习Unity知识点,如果大家发现有什么...
    编程小火鸡阅读 3,986评论 2 34
  • [Unity]技术学习路线图(长期更新) Unity技术面试题 一:什么是协同程序?答:在主线程运行时同时开启另一...
    肖浩呗阅读 23,822评论 15 244
  • This article is a record of my journey to learn Game Deve...
    蔡子聪阅读 4,050评论 0 9

友情链接更多精彩内容