【Unity】Entities 1.0 学习(二):调试工具

这篇具有很好参考价值的文章主要介绍了【Unity】Entities 1.0 学习(二):调试工具。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

        在 Entites 1.0 ,Unity修改了之前的调试面板,以及在场景下构建 Ecs World 的流程,较之前的版本差别还是蛮大的。

        之前的学习大多集中在代码和语法,很多是对之前成熟的代码做升级改造,所以没有用到新的调试工具。但是最近在看 Unity 的新的 GameObject Convert 方法(Baking),就必须要用到新的调试和构建工具了。

        这里做个简单介绍吧,先介绍一些基础的,以后有用到新的再补充。

1、关于URP

        道理上来讲,是不是URP工程,ECS都是可以直接跑的。但是在官方的 ECS 示例流程中,建议的是使用 URP,但是没有说为什么。

        我自己测试下来,URP可以直接安装 com.unity.entities.graphics 这个包(就是以前的Hybird V2),但是标准工程中安装不了。

【Unity】Entities 1.0 学习(二):调试工具

 可以看到URP工程中能正常安装com.unity.entities.graphics

        但是其他的非URP工程是不能安装上这个包的,也许这个包只能在URP上使用吧。显然,安不上这个包,自动转换成Entity的GameObject就会丢失渲染属性,不过不太影响这一章之后要讲的东西。

2、在编辑器下构建 ECS World

        之前的流程是在 GameObject 挂上一个 Convert To Entity 的组件,就能转换成 Entity。不过新的流程修改了,这个组件被移除了,新的流程如下:

        在 Hierarchy 窗口下右键,选择 New Subscene > Empty Scene,创建一个新的 SubScene。

        现在只要在这个SubScene里面的东西,都会自动转换成实体(Entity)。我们在 SubScene 里面新建2个Cube,并给上2个材质球,一个红色一个黄色,如下图所示:

【Unity】Entities 1.0 学习(二):调试工具

         这样构建就算能完成了, 直接点Play,Unity就会自动将这两个Cube转换成实体。


        建议在窗口 Edit > Preferences > Entities > Baking > Scene View Mode 中选择 RuntimeData,这样不用 Play 也能看到运行时的情况了。

        实际上,如果在 URP 工程里,你会感觉没啥区别。但是如果在非URP工程里,将这两个Cube从主Scene拖到SubScene的一瞬间,就消失(转换成了实体,但是没有渲染组件)了。


        

3、查看Entity的属性

        之前这一块是在 EntityDebugger 里面的,相信大家已经发现了,在Entities 1.0 中,已经没有这个 EntityDebugger 了。

        查看 Entity 的方法如下:

        直接 Play,然后在 Hierarchy 中选择对应的 Cube(已经转成实体):

【Unity】Entities 1.0 学习(二):调试工具

         看到右上角那个小圆圈没有,点两下,给他点成黄色圆圈,里面你就能看到Entity的属性了。

【Unity】Entities 1.0 学习(二):调试工具

         不得不说,新的数据概览窗口比起以前的界面看起来好多了,这个改动我还是很喜欢的。

         可以看到这里加了很多Data,除了LTW相关的就是渲染相关的,东西还是非常多的。不过这里我们都完全不需要管它,只要知道这里能看各个Data的数据就OK了。

4、Entities Hierarchy

        那么肯定就有同学会问了,如果是我自己创建的Entity,该怎么看到呢?

        这里我写了一个简单地创建Entity的例子:

public void CreateEntity()
{
    var manager = World.DefaultGameObjectInjectionWorld.EntityManager;
    var entity = manager.CreateEntity();
    manager.AddComponentData(entity, new ASampleData_ID(999));
}

        这时候就要用到 Entities Hierarchy 了:Window > Entities > Hierarchy ,点击之后能看到多了一个层级窗口:

【Unity】Entities 1.0 学习(二):调试工具

         看起来和正常的 Hierarchy 是一样的。我们点击 Play,可以看到多了很多新东西,我们自己创建的 Entity 也能看到了:

【Unity】Entities 1.0 学习(二):调试工具

         你可以发现 Entities Hierarchy 右上角也有个小圆圈,一共有三种形态:

  • 空心:不显示 Entities 相关(约等于普通Hierarchy )

  • 圆点:实体和GameObject都显示;

  • 实心圆:只显示 Entities 实体。

        圆点和实心圆的模式只在SubScene里面能看出差别,你可以看到在SubScene里的单位是以GameObject的形式显示还是以Entity的形式显示。

5、其他的几个调试窗口

         通过上一个步骤,你也看到了,在 Window > Entities 还有几个别的窗口:

【Unity】Entities 1.0 学习(二):调试工具

         

        这里就不做详细介绍了,就简单地说下这几个窗口的功能:

  • Hierarchy : 显示当前场景中的实体信息

  • Components :显示所有 ComponentData 的结构体信息。

  • Systems:显示当前运行的所有 System 信息,能看到其使用了哪些实体。

  • Archetypes:显示原型信息。

  • Journaling:日志记录,可以显示用了哪些方法,有哪些实体、ComponentData之类,应该是可以用来分析性能,但我还没有仔细研究。

        目前这些都还没有用到过,等后面用到了再继续补充。文章来源地址https://www.toymoban.com/news/detail-446102.html

到了这里,关于【Unity】Entities 1.0 学习(二):调试工具的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Unity和Visual studio开发调试环境配置-工具插件安装和配置

    在Unity开发中,常用C#脚本进行功能开发,需要用到Visual Studio进行开发和调试,需要分别在Unity3d和Visual Studio中安装插件和工具才能更好的进行开发和调试。 visual studio中“工具”→“获取工具和功能”,打开visual studio安装程序 安装Unity开发相关的内容,如下选择,主要就是“

    2024年02月04日
    浏览(43)
  • 【学习笔记】Rider调试unity【 联调、断点调试等】(决定弃用vscode了)

    转载请注明出处:🔗https://blog.csdn.net/weixin_44013533/article/details/130518705 小伙伴应该都尝试过vscode的unity调试插件了吧 插件不再维护不说,压根用不了,网上一堆抱怨,各种方法层出不穷,尝试了很多方法,正如这位网友所说的那样 插件官方也在github做出了回应 简单来说开发者

    2024年02月09日
    浏览(28)
  • 【Unity编辑器扩展】字库裁剪工具, 优化字体文件大小,批量修改文本组件字体

    原理: 1. 扫描项目中用到的字符集; 2. 把字体文件裁剪掉没用到的字符,仅保留项目中用到的字符; 3. 生成裁剪后的字体文件; 工具功能设计: 1. 支持通过拖拽字体文件或文件夹批量选择需要裁剪的字体文件。 2. 扫描工程中使用到的字符集:主要是获取prefab中Text、TextM

    2024年02月15日
    浏览(34)
  • 【Unity-学习-024】 动态修改天空盒

    Unity动态加载天空盒并更新环境反射信息。 准备工作: 1.天空盒一个 叫 Skybox_Cloud 2.烘焙好的与天空盒对应的HDR环境图一个(可以用反射探针烘焙生成)叫 Skybox_Cloud 代码: 在某个时机调用就好了。

    2024年02月16日
    浏览(29)
  • C语言再学习 -- Linux常用网络调试工具

    参看:Linux常用网络调试工具 linux常用指令,之前我也总结了不少了。 参看:C语言再学习 – Linux 中常用基本命令 参看:Hi3516A开发–环境搭建工具 下面看看网络调试相关的工具: ifconfig 命令用于检查或设置机器上的网卡。 ping 命令是最常用的命令之一,用于检查两个设备之

    2024年01月21日
    浏览(33)
  • Unity | YooAssetV2.1.0 + HybridCLR热更新

    目录 一、项目更改 二、使用YooAsset热更 1.资源配置 2.资源构建 3.将两个文件夹下的资源上传CDN服务器 4.修改代码 5.运行效果         本文记录利用YooAsset+HybridCLR来进行资源和dll的更新。YooAsset使用的是新版V2.1.0。相比于旧版,dll(原生文件)和资源要建两个package分别来进行bu

    2024年02月19日
    浏览(28)
  • Linux常用命令本地查询工具:LinuxStudy 1.0

    最近在学习Linux,上千的命令整理了一下,随用随查,也分享给需要的小伙伴。 语言平台为C# framework 4.7.1,旧系统可能需要更新平台。程序开源 ,可关注 https://gitee.com/windtrace/linux-study 新版本。 目前收集了 www.linuxcool.com https://github.com/jaywcjlove/linux-command 两个网站的命令,整理

    2024年02月08日
    浏览(30)
  • 【Unity 工具,简单学习】DoTween,脚本控制动画工具

    连接 什么是Tween Engine —— 作者的blog(英文) 它能做什么? 简单来说,就是 用简单的代码可以控制任何动画表现,诸如移动、旋转、颜色、各种其他UI元素 。 导入包后,提示需要导入新版本的DOTween 然后点击 set up 再 apply 然后再打开一下面板点击 Get Started 查看该教程 编写测

    2024年02月12日
    浏览(30)
  • Docker部署Superset v2.1.0 +修改环境+汉化+匿名访问+创建自定义图表(二次开发)+集成echarts+echarts百度地图

    目录 前言 :为什么要写这篇文章? 一、superset是什么? 二、建议软件 三、安装步骤 1.安装docker 2.拉取源码 3.修改源码的dockerfile 4.创建superset容器 5.修改容器内的账号密码 6.修改Superset仪表盘(Dashboard)可以匿名访问(免登录) 7.发布dashboard并自定义url 四、二次开发(自定义

    2024年02月07日
    浏览(28)
  • 【学习笔记】Unity基础(十)【Unity界面之Scene窗口工具栏】

    转载请注明出处:🔗https://blog.csdn.net/weixin_44013533/article/details/131707918 主要参考: 官方手册 Scene视图 注:本文使用的unity版本是2021.3.25f Scene 视图是正在创建的世界的交互式视图。Scene 视图可用于选择和定位景物、角色、摄像机、光源和所有其他类型的游戏对象。 本节将详细

    2024年02月06日
    浏览(36)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包