[Unity 3d] Unity Runtime SceneGizmo - GitHub

如何在运行时做出一个像 UnityEdior Scene视窗的右上角表示方位的那个 Gizmo 呢?看这里!

GitHub 上的工程多如繁星,有些好的仓库,但凡不经意间错过了就很难找回,故稍作采撷,希望能帮助到有心人。
本文集以一个小的功能点为单位行文,也便于拾取罢!

简介:

笔者今天推荐的仓库叫 UnityRuntimeSceneGizmo - 运行时 场景方位Gizmo。
如其名,他就是为了在运行时整出一个像编辑器 Scene 视窗右上角那样的 Gizmo 功能的。

[Unity 3d] Unity Runtime SceneGizmo - GitHub_第1张图片

功能:

  1. 跟随场景中相机的旋转
  2. 点击 Gizmo 轴 ,产生对应事件,示例中为驱动MainCamera
  3. 点击 Gizmo 中心,切换相机平视/透视模式(ISO/Persp)

使用:

一个脚本都不需要写,参考 Demo 开袋即食,非常简单!

演示:

RuntimeGizmo

链接:

yasirkula/UnityRuntimeSceneGizmo: Interactable runtime scene gizmo for uGUI

结语:

  • 功能是个小功能,但是用心看了演示的同学肯定会有所斩获:

    1. 譬如它的相机的透视/平视模式是怎么平滑过渡的,为什么我切换就很生硬?
    2. 他这个是不是 小地图原理?笔者给出的答案是:“YES”,那他又是怎么完成点击交互的哪?
  • 如果看了源码呢,你还会有收获:

    1. 譬如下图展示的使用 for 遍历的 Index 转枚举结合上下文代码真的不要太巧妙的:


      [Unity 3d] Unity Runtime SceneGizmo - GitHub_第2张图片
    2. 当然还有句矩阵运算啦,射线检测啦,位运算啦,等等
    3. 当然笔者还瞅见了一个不常用但很好的用法,那就是为游戏对象运行时动态指定不存在于编辑器预设的 Layer 值,简直就是灵魂手法 。
  • 感兴趣的同学可以拿下源码瞅瞅。。。

扩展阅读:

Available on Asset Store: https://www.assetstore.unity3d.com/en/#!/content/123040
Forum Thread: https://forum.unity.com/threads/runtime-scene-gizmo-for-ugui-open-source.540011/

本文集持续更新ing,喜欢记得点赞关注哦!

你可能感兴趣的:([Unity 3d] Unity Runtime SceneGizmo - GitHub)