当前位置: 首页 > news >正文

温州市住房建设局网站wordpress源代码如何在本地编辑器

温州市住房建设局网站,wordpress源代码如何在本地编辑器,Wordpress 101,wordpress营销模板下载Baking 概念#xff1a; 把Editor中的GameObject数据转换成entities数据写入到Entity Scens里面,这个过程我们叫做BakingBaking是一种不可逆的操作#xff0c;把低效代价昂贵的但是灵活的GameObjects转换成性能高效的Entities与Components。 作用#xff1a; 在传统的模…Baking 概念 把Editor中的GameObject数据转换成entities数据写入到Entity Scens里面,这个过程我们叫做BakingBaking是一种不可逆的操作把低效代价昂贵的但是灵活的GameObjects转换成性能高效的Entities与Components。 作用 在传统的模式下开发者使用的GameObject机制进行创作然后运行也是基于它的. 通过baking能让用户在ecs模式下创作的时候使用还是使用GameObject机制来创作增加易用性。Unity通过Baking的方式把GameObject数据Authoring Data(创作数据)在编译时就转换为Runtime Data(运行数据)这样在运行的时候就可以直接使用运行数据 处理过程 在ECS模式下传统的GameObject称为Authoring GameObject, Authoring GameObject上的Component 称为: Authoring Component Authoring Scenes:传统的GameObject所在场景叫做authoring scene,用来将传统GameObject数据转换成ECS模式下的数据所在的场景(场所); Baking 转换发生的过程只会在编辑器的模式下在运行前先转好ecs数据然后运行的时候直接使用ecs数据; 无论什么时候只要我们Authoring Scene中的Authoring GameObject被改变了就会触发我们Baking; Authoring Scene必须要必须要作为subscene加载进来时创作Scene才会执行baking; 会baking 不会baking baking的两种模式 Full baking全baking: Unity整个Authoring Scene 全部bake成entities scene; 触发条件 1:在我们的disk上找不到转换好的entities scene的数据; 2:我们的Authoring Scene被修改了同时entity scene,已经过期了; 3:当修改了Baker代码的时候,BakingVersion,注解的时候会引发full baking; 4: A[BakingVersion] attribute注解的Baking代码被修改了会引发full baking. 5: Project Setting设置里面与Entities相关的设置被修改了会导致引发fullbaking; 6:如果你在subscene节点的属性检查器里面点击了reimport按钮那么这个时候会导致full baking; 7:如果你清理了Baking Cache,也会导致我们的full baking;Full Baking会把我们的输出数据存放到我们的磁盘disk上(一些文件文件),你编辑器或运行的时候需要使用就去加载 lncremental baking增量baking:只bake改变的数据; 当作为subscene来加载创作场景的同时我们也创建与初始化了Incremental baking;在创作编辑的时候可以在ECS的数据里面直接体现出实时编辑与修改的结果;增量Baking只会发生在我们的内存里面不会同步到我们的disk;当编辑场景数据的时候会把改变的baking到内存里面所以ECS就可以直接使用编辑好的数据。同时只baking改变的数据所以速度非常快; 注意 lncremental Baking 和Full baking输出是不同的就会导致entity的顺序不同内存大小不同chunk的排布可能也不同。所以为了避免一些可能的未知错误需要使用Reimport来强制进行full baking Baker运作机制 一个Baker就是Baking 的其中的一个执行者,负责把某个Authoring Data转成ecs data;要定义一个Baker,首先要定一个托管类:继承BakerT指的是要转换的Authoring Component的类型;当Baking的时候只要遇到这种类型的Authoring Component,就会找到这个Baker,然后调用这个Baker方法,并把要转的组件数据对象作为参数输入进来;代码示例 // IComponentData是一个空接口只是用来标记这个类是一个ComponentData // 这是unmanaged 类型不会被GC管理, 内部只能使用unmanaged的数据类型 struct ComponentData : IComponentData {public float rotSpeed; }public class ComponentAuthoring : MonoBehaviour {public float rotateSpeed 90f; }// 自定义一个Baker方便我们场景在Bake的时候来转这个组件数据 public class MyComponentBaker : BakerComponentAuthoring {// subscene bake时调用的方法 编译时就调用public override void Bake(ComponentAuthoring authoring){// 获取到对应的Entityvar entity GetEntity(TransformUsageFlags.Dynamic);// 这里只是数据传递并不是Entity中通过Archetype分配出来的内存var data new ComponentData(){// authoring是我们在场景中设置的值// ECS 中使用的数学库是Unity.MathematicsrotSpeed math.radians(authoring.rotateSpeed)};// 将数据添加到Entity中AddComponent(entity, data);} }对于其他Unity自带的Component(例如 Collider这些)Unity已经提供了写好了的Baker。Full Baking,Authoring Scene 里面所有组件的Baker都会被调用一次;lncremental Baking:那么只有修改的组件才会被Baker一次; 在baker中访问其他来源数据 为了保证lncremental Baking的正常工作,Unity会自动跟踪我们的Authoring Component中的数据成员,当数据成员改变了,就会调用Baker的bake方法,让他重新执行;但是Unity不会跟踪这个转换依赖的其它的数据资源, 所以需要在Baker方法里面添加依赖关系,系统才可以追踪依赖的变化。 代码示例 public class DependentDataAuthoring : MonoBehaviour{public GameObject Other;public Mesh Mesh;}public class GetComponentBaker : BakerDependentDataAuthoring{public override void Bake(DependentDataAuthoring authoring){// Before any early out, declare a dependency towards the external references.// Because even if those evaluate to null, they might still be a proper Unity// reference to a missing object. The dependency ensures that the baker will// be triggered when those objects are restored.DependsOn(authoring.Other);DependsOn(authoring.Mesh);if (authoring.Other null) return;if (authoring.Mesh null) return;var transform GetComponentTransform();var transformOther GetComponentTransform(authoring.Other);使用DependOn方法声明依赖项这样当Other或者Mesh变化时这个GameObject也会被Baking **注意**这里的GetComponent并不是原来意义上的GetComponent. 它在调用时内部也会注册依赖关系, 即使一开始对象上没有GetComponent获取的组件baking时返回为空 当重新获得这个组件的时候也会再一次触发这个Baker
http://www.pierceye.com/news/176165/

相关文章:

  • 做网站挣钱么云市场 wordpress
  • 网站域名管理规范seo专员是什么
  • 网站制作+资讯网站特色栏目重要性
  • 网站qq 微信分享怎么做的随州市住房和城乡建设部网站
  • 资源网站建设多少钱手机网站页面文字做多大
  • 烟台专业做网站宜昌教育云网站建设
  • 慕课联盟网站开发实战wordpress怎样修改域名
  • 什么电脑做网站前段用旅游网站建设的利益
  • 做 暧视频在线观看网站花都网站建设设计
  • 黄石企业网站设计服务外包有哪些
  • 团队合作网站网站制作的报价大约是多少
  • 网站在线留言系统能挣钱的平台 正规的
  • 冀州网站制作泉州握旗公司网站建设
  • 免费php企业网站苏州网站建设多少钱
  • 重庆网站制作设计抚州网站建设
  • 国外psd网页模板网站免费学校网站管理系统
  • 网站开发合作合同范本电子商务营销渠道有哪些
  • 云南网站建设哪个好沈阳视频制作公司
  • 可以做公众号的一些网站企业级网站开发需求分析
  • 建设网站收费标准品牌网络推广公司排名
  • 网站怎么做动态背景图片营销型网站建设的优势有哪些
  • 专业网站制作软件网页设计五个页面
  • 个人网站的成本球形网架结构厂家
  • 顺德网站制作案例价位php做视频网站源码
  • 网站优化 无需定金公明网站制作
  • 安徽龙山建设网站wordpress 禁止twitter
  • 中卫市网站开发制作网页设计html代码大全颜色
  • 深圳网站建设伪静态 报价 jsp 语言新网站如何推广
  • 南京建设局网站首页wordpress 要求ftp
  • 百度站长 添加网站哪些网站可以上传自己做的视频