unity脚本教程(基于unity3d的毕业设计)

接下来的几天呢,大智作为探路者带你一块探索一下Unity2020.1里面有什么好玩的东西。这一次咱们来看看脚本编程方面的更新。主要包含以下几个方面:代码默认将是Release模式,提高编辑器性能支持泛型类型序列化CodeCoverage代码覆盖率(

接下来的几天呢,大智作为探路者带你一块探索一下Unity2020.1里面有什么好玩的东西。

这一次咱们来看看脚本编程方面的更新。主要包含以下几个方面:

  • 代码默认将是Release模式,提高编辑器性能
  • 支持泛型类型序列化
  • Code Coverage代码覆盖率(Preview)
  • 各个IDE集成支持移到了packages中

代码默认将是Release模式,提高编辑器性能

从Unity2020.1开始,Unity编辑器代码的编译模式默认是Release模式,可以提高性能,但是无法连接调试器(debugger),最主要是没办法断点调试。

那如何设置可以连接调试器,断点调试呢?

可以在Unity窗口的右下角进行切换到Debug模式,如下图:

unity脚本教程(基于unity3d的毕业设计)

切换到Debug模式后就可以连接调试器,进行断点调试了。

支持泛型类型序列化

之前,如果你想要一个泛型类型作为SerializeField,你需要定义一个非泛型的子类。

unity脚本教程(基于unity3d的毕业设计)

Unity2020.1移除了这个限制,你可以直接使用泛型类型作为SerializeField。

unity脚本教程(基于unity3d的毕业设计)

那泛型类型在Inspector上会如何显示呢?

答案是:会根据具体泛型类型显示在Inspector上。

如上面的代码中泛型实例类型是string,Inspector上也会显示string的输入框。

unity脚本教程(基于unity3d的毕业设计)

Code Coverage代码覆盖率(Preview)

Code Coverage这个预览包,可以在运行Test Runner的时候自动帮你统计代码覆盖率。

在Unity2020之后,启用预览包移到了菜单栏Edit > Project Settings > Package Manager中的Enable Preview Packages。如下图:

unity脚本教程(基于unity3d的毕业设计)

之后就可以在Package Manager中安装这个包了。

unity脚本教程(基于unity3d的毕业设计)

安装好以后可以在菜单栏Window > Generic > Code Coverage打开。

unity脚本教程(基于unity3d的毕业设计)

接着需要在Edit > Preferences > General中勾选Enable Code Coverage。启用后编辑器的开销会增加、性能会稍有降低,建议在不使用时禁用功能。勾选后包便能访问Mono暴露的覆盖数据的接口。接着,需要重启Unity。

单次测试完成时,包会生成一份HTML报告,其中展示了总代码行覆盖率和每个类单独的覆盖情况。

unity脚本教程(基于unity3d的毕业设计)

HTML报告中最为重要的数值是覆盖行数,表示了测试中所覆盖的代码量。比如,数值为75%表明有四分之一的代码行没有测试到。数值在计算时会考虑到哪些代码行可以被测试到。

Coverage History中的图表(截图中的红线)表明了每次项目测试时的覆盖率,覆盖率越高越好。如果有所下跌,可以编写更多的测试用例来提升覆盖率。

Code Coverage目前支持EditMode(编辑模式)和PlayMode(运行模式)测试,可以跟踪长期的覆盖量,可与Test Runner一同使用。如果没有任何测试用例,也可以使用Coverage Recording(覆盖记录)功能记录覆盖数据。

如果你想更深入了解Code Coverage这个包,可以在Package Manager中导入Samples,里面有示例和教程文档,安装入口如下图所示:

unity脚本教程(基于unity3d的毕业设计)

image.png

各个IDE集成支持移到了packages中

目前官方支持3个IDE,Visual Studio、Visual Studio Code和Rider。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,请发送邮件至 55@qq.com 举报,一经查实,本站将立刻删除。转转请注明出处:https://www.szhjjp.com/n/45010.html

(0)
nan
上一篇 2021-11-13
下一篇 2021-11-13

相关推荐

  • 「怎么删除百度网盟推广」网盟的过滤网站怎么删除

    怎么删除百度网盟推广,网盟的过滤网站怎么删除内容导航:如何删除百度联盟推广广告百度联盟如何删除怎么去除百度网盟推广百度网盟推广怎样关闭一、如何删除百度联盟推广广告百度联盟一般指的是百度网盟,想要删除它,直

    2022-05-10
    0
  • navicat如何导出查询出来的数据

    要导出查询出来的数据,可以按照以下步骤操作:在Navicat中执行您的查询,确保您已经获取了需要导出的数据。在查询结果的窗口中,点击上方的“Tools”菜单,选择“Export Wizard”。在弹出的“Export Wizard”对话框中,选择“Text File”或者其他您需要导出的文件格式。点击“Next”按钮,并选择导出的目标文件夹和文件名。在下一步中,选择您需要导出的字段和数据,以及其他

    2024-03-20
    0
  • Tomcat中如何设置JNDI数据源

    要在Tomcat中设置JNDI数据源,需要按照以下步骤操作:1、在Tomcat的conf目录下的context.xml文件中添加数据源配置,例如:<Resource name="jdbc/myDataSource" auth="Container" type="javax.sql.DataSource"maxActive="100" maxIdle="30" maxWait="10000"us

    2024-04-25
    0
  • 如何查询mysql数据库密码(mysql数据库密码怎么看)

    如何查询mysql数据库密码,mysql数据库密码怎么看内容导航:如何查看mysql数据库用户密码windowsmysql怎么查看密码如何在MYSQL数据库中设置密码重置MySQL数据库密码的实际操作流程是什么一、如何查看mysql数据库用户密码1,打开和所在的文件夹,复制路径地址;2,打开cmd命令提示符,进入上一步

    2022-04-28
    0
  • c#中var的用法是什么

    在C#中,var关键字用于声明隐式类型的变量。它可以自动推断变量的类型,根据变量初始化的值来确定。使用var关键字声明变量的语法如下:var variableName = initialValue;例如:var age = 25; // 变量age被推断为int类型var name = “John”; // 变量name被推断为string类型var关键字的使用可以简化代码,特别是当变

    2024-01-24
    0
  • android中actionbar的用法是什么

    在Android中,ActionBar是一个用来展示应用标题、操作按钮和导航按钮等元素的界面组件。它通常位于屏幕的顶部,并提供了一个方便的方式来查看和操作应用的功能。ActionBar可以包含以下元素:应用标题:通常显示在ActionBar的左侧,用来显示应用的名称。操作按钮:通常显示在ActionBar的右侧,用来触发应用的各种操作,如搜索、设置、分享等。导航按钮:通常显示在ActionB

    2024-03-13
    0

发表回复

登录后才能评论