背景
一般游戏里比如LOL有个小地图,有的软件还有一个像是俯视图的二维小地图,这里如何同步两边的transform呢?
第一种想法
3D是主场景,然后2D直接上方一个正交camera实时绘制
存在问题
- 这样绘制两次,不好
- 这样如果要操作2D视图,那怎么办
第二种想法
直接绘制一个2D场景 比如3D用了three 2D就拿个cocos?laya?pixi这些具备2D能力的库来单独构造一个2D场景
- 这样也绘制两次,但是2D场景一般来说就是sprite集,会比3D场景绘制两次好太多了
- 可以操作2D视图
如何合理同步两个视图
这里我的想法是,一个模型的3D数据保存在一个对象池里,2D的数据其实是子集,然后每次就操作这个池子里的数据,然后绘制的时候,2D就pool.get.2dproperty 3D就pool.get.3dpreperty拿到数据,数据指的是旋转缩放平移材质属性这些,两边进行绘制,就可以同步两个视图的情况了
threejs交流群511163089