Mingfei
Mingfei
原因: - System被添加的以后才会对component的变化进行收集,new Game 以后才会添加System。 - 另外在设计的时候还要考虑Observer是全局单例的这个问题。 目前a11y解决方案是,加入system的时候,遍历整个gameObjects,找到现有的A11yComponent,添加a11yDom,这种方案问题在于组件要单独去实现。 解决方案: addSystem的时候去遍历所有Component(new Game的时候另外统一遍历),对添加之前的组件进行一次收集,在下一次update中进行创建。
所有对能力都在Component上,GameObject没有属性,如果设置active是false的话,虽然可以防止GameObject被遍历,Component的生命周期不会被执行。但是目前渲染和运行时是两套,需要想办法把对应的渲染也取消掉。
原因: 目前渲染和游戏引擎运行时是隔离的,所以resource测无法感知渲染引擎是否使用了资源。 解决方案: resource侧可以提供引用计数的能力,在插件侧做好使用和销毁的处理。
_Originally posted by @fanmingfei in https://github.com/eva-engine/eva.js/issues/186#issuecomment-1060535830_
编辑器相关需求
### Expected Behavior 资源未加在完成之前移除组件,应该正常被移除 ### Current Behavior 目前都有一些问题 ### Possible Solution ### Steps to Reproduce ### Environment - **`Eva.js` version**: _e.g. 1.2.4 - **Browser & Version**: _e.g. Chrome 67_ -...
### Expected Behavior ### Current Behavior ### Possible Solution ### Steps to Reproduce ### Environment - **`Eva.js` version**: _e.g. 1.0.0_ - **Browser & Version**: _e.g. Chrome 67_ - **OS &...
```TypeScript class Player extends NetworkComponent { // 创建用户的血量 这是一个和服务端同步的属性 @networkVarible networkHP: NetworkVariable = new NetworkVariable(100) // 创建用户的位置 这是一个和服务端同步的属性 @networkVarible networkPosition: NetworkVariable = new NetworkVariable({ x: 0, y: 0 }); //...
### Expected Behavior ### Current Behavior ### Possible Solution ### Steps to Reproduce ### Environment - **`Eva.js` version**: _e.g. 1.0.0_ - **Browser & Version**: _e.g. Chrome 67_ - **OS &...