广告合作
  • 今日头条

    今日头条

  • 百度一下

    百度一下,你就知道

  • 新浪网

    新浪网 - 提供新闻线索,重大新闻爆料

  • 搜狐

    搜狐

  • 豆瓣

    豆瓣

  • 百度贴吧

    百度贴吧——全球领先的中文社区

  • 首页 尚未审核订阅工具 订阅

    Unity 实用教程之 三角形攻击范围的绘制

    来源:网络收集  点击:  时间:2024-08-07
    【导读】:
    Unity 实用教程之 三角形攻击范围的绘制。本节介绍,在Unity开发中,绘制三角形攻击范围的方法(绘制实体扇形范围攻击线可参考如下经验),具体如下工具/原料moreUnity + LineRenderer方法/步骤1/8分步阅读

    打开Unity,新建一个空工程,具体如下图

    2/8

    在场景中,添加几个物体,并且合理布局,具体如下图

    3/8

    在工程中,添加一个脚本,双击脚本或右键 Open C# Project 打开脚本,具体如下图

    4/8

    编辑脚本,其中脚本大概内容如下:首先获得 LineRenderer 组件,若没有该组件则添加该组件,然后通过计算点的位置,绘制出三角形区域,具体代码和代码内容如下图

    5/8

    脚本具体内容如下:

    using UnityEngine;

    public class DrawSector : MonoBehaviour {

    // Update is called once per frame

    void Update () {

    if (Input.GetKeyDown(KeyCode.A)) {

    ToDrawSector(transform, transform.localPosition, 60, 3);

    }

    }

    private static LineRenderer GetLineRenderer(Transform t)

    {

    LineRenderer lr = t.GetComponentLineRenderer();

    if (lr == null)

    {

    lr = t.gameObject.AddComponentLineRenderer();

    }

    lr.startWidth = 0.1f;

    lr.endWidth = 0.1f;

    return lr;

    }

    public static void DrawLine(Transform t, Vector3 start, Vector3 end)

    {

    LineRenderer lr = GetLineRenderer(t);

    lr.positionCount = 2;

    lr.SetPosition(0, start);

    lr.SetPosition(1, end);

    }

    //绘制空心三角形

    public static void ToDrawSector(Transform t, Vector3 center, float angle, float radius)

    {

    LineRenderer lr = GetLineRenderer(t);

    int pointAmount = 100;//点的数目,值越大曲线越平滑

    float eachAngle = angle / pointAmount;

    Vector3 forward = t.forward;

    lr.positionCount = pointAmount;

    lr.SetPosition(0, center);

    lr.SetPosition(pointAmount - 1, center);

    for (int i = 1; i pointAmount - 1; i++)

    {

    Vector3 pos = Quaternion.Euler(0f, -angle / 2 + eachAngle * (i - 1), 0f) * forward * radius + center;

    lr.SetPosition(i, pos);

    }

    }

    }

    6/8

    脚本编译正确后,回到Unity界面,把脚本挂载到物体 Cube 上,具体如下图

    7/8

    运行场景,按下 A 键,即可看到绘制出的三角形区域,具体如下图

    8/8

    到此,《Unity 实用教程之 三角形形范围的绘制》讲解结束,谢谢

    注意事项

    您的支持,是我们不断坚持知识分享的动力,若帮到您,还请帮忙投票有得;若有疑问,请留言

    三角形范围UNITY
    本文关键词:

    版权声明:

    1、本文系转载,版权归原作者所有,旨在传递信息,不代表看本站的观点和立场。

    2、本站仅提供信息发布平台,不承担相关法律责任。

    3、若侵犯您的版权或隐私,请联系本站管理员删除。

    4、文章链接:http://www.1haoku.cn/art_1081260.html

    相关资讯

    ©2019-2020 http://www.1haoku.cn/ 国ICP备20009186号05-06 13:07:46  耗时:0.023
    0.0231s