今天,LayaAir再次迎来一个大版本的更新,本次2.7.0beta版本的核心在于物理引擎的升级完善,以及考虑到当前有开发者对于物理引擎包体缩减的需求,我们还新增支持了cannon.js物理引擎库。另外,本次更新还进一步增强了3D光影的渲染效果,强化了LayaAir的Unity 3D资源导出插件的功能。关于小游戏平台的加载效率方面,LayaAirIDE中新增了vivo平台的LayaAir引擎共享插件支持。更多本次版本的详细说明,我们在下面的篇幅中,会逐个详细进行介绍。
3D物理功能增强
在LayaAir 3D物理中,本次的2.7版本,增加了固定关节组件Fixed Joint和可配置关节组件Configurable Joint的支持。开发者可以直接将Unity中的Fixed Joint以及Configurable Joint这两个物理关节组件,通过LayaAir的Unity导出插件,一键导出后直接在LayaAir引擎中使用。
Unity的固定关节组件Fixed Joint在LayaAir引擎中为FixedConstraint(固定约束),用于约束一个游戏对象对另一个游戏对象的运动,将两个物体永远以相对的位置固定在一起,即使发生物理改变,它们之间的相对位置也将不变。
Unity的可配置关节组件Configurable Joint在LayaAir引擎中为ConfigurableConstraint(可配置约束),这是一种自定义的约束类型,开发者可根据自身需求来设置六个自由度,此约束可以实现所有的约束类型功能。
我们还提供了断开力breakForce和断开扭矩breakTorque属性,用来设置约束的强度极限,同时在Script3D类中提供了物理的生命周期方法onJointBreak(),当约束力超过强度极限时,会打破约束,并调用该方法。
在易用性方面,本次版本还为刚体提供了约束查询的属性constaintRigidbodyA和constaintRigidbodyB,可方便查询与自己相关的两个约束的刚体名称。
constaintRigidbodyA查询获得的属性值是接入的约束名(与自己连接的刚体名称)。
constaintRigidbodyB查询获得的属性值是接出约束名(自己与其连接的刚体名称)。
LayaAir的Unity导出插件增强
本次的版本对于LayaAir的Unity导出插件也有所增强。更新如下:
增加导出 Cast Shadow / Receive Shadows 属性,Cast Shadow支持开关(On/ Off)控制。
light相关灯光设置暂不支持导出,需要在引擎内单独设置。
增加iOS纹理压缩的等级设置(高质量图片的导出会非常消耗时间)