zoukankan      html  css  js  c++  java
  • 【转】Unity Scene场景自定义坐标轴

    来自:https://blog.csdn.net/cheng624/article/details/70859054

    多看看别人的代码是没有坏处的,即使学不了人家的大框架,偶尔拾起一些小东西也是可以的。

    最近扒了一下DoTween(声明一下源码是自己反编译的,只为学习),看见了如何在Scene场景中添加标注和坐标轴,具体做法是,在你的脚本Editor中,比如你重定义某个mono脚本的Inspector显示中,加入OnSceneGUI函数,使用Handles进行操作。

     1 void OnSceneGUI()
     2     {
     3         if (_target.nodes.Count > 0)
     4         {
     5             //allow path adjustment undo:
     6             Undo.RecordObject(_target, "Adjust Path");
     7  
     8             //path begin and end labels:
     9             Handles.Label(_target.nodes[0], "'" + _target.name + "' Begin");
    10             Handles.Label(_target.nodes[_target.nodes.Count - 1], "'" + _target.name + "' End");
    11  
    12             //node handle display:
    13             for (int i = 0; i < _target.nodes.Count; i++)
    14             {
    15                 _target.nodes[i] = Handles.PositionHandle(_target.nodes[i], Quaternion.identity);
    16                 if (i != 0 || i != _target.nodes.Count - 1)
    17                     Handles.Label(_target.nodes[i], i.ToString());
    18             }
    19             if (GUI.changed)
    20             {
    21                 EditorUtility.SetDirty(_target);
    22             }
    23         }
    24         
    25     }

    代码很简单,只是记录方法而已,具体的效果:

    给开始和结束点添加了一个label, 每个节点添加了一个坐标轴和一个序号。其中蓝色的线使用Gizmos画的,可自行度娘。

  • 相关阅读:
    Luogu-P1404 平均数
    树的直径与重心
    卡常技巧
    背包问题总结
    Codevs-1521 华丽的吊灯
    区间dp与环形dp
    Luogu-P1308 神经网络
    拓扑排序
    01分数规划
    Python学习 4day__基础知识
  • 原文地址:https://www.cnblogs.com/timeObjserver/p/9428669.html
Copyright © 2011-2022 走看看