这几天研究了下,基于以太坊的去中心化游戏开发可行性。
决定把类率土战三的游戏做城去中心化的游戏
以太坊的做游戏的核心理念:
QQ图片20240420105312.png

这两点应该是游戏玩家的痛点。如果能做到,解决痛点,能否脱颖而出呢?

言归正传,要实现以上两点就需要关键后端逻辑使用智能合约,而在以太网主网运行智能合约不现实,执行一次智能合约的成本太大(执行效率低,执行一次需要Gas成本)。所以pass。
通过预言机来调用外部逻辑,结果在放到主网?pass(gas成本会低一些,单和主网一样效率低)。
状态通道,执行效率倒是比较高。但是需要用户预存类似保证金,这个对用户门槛太高了。
一顿考察之后,决定选择基于二层网络的Skale方案,特点是不收取用户Gas,执行效率评估也OK,但是费用不低,一个月$3600

    function balanceOf(address account) external returns (uint256) {

    uint tt = 0;
    for ( uint i = 0; i < 10000; i++ ){
        tt = tt.mul( 1 );
        tt = tt.add(1);

        if ( randMod(10000) < 3000 ){
            tt = tt.add(1);
        }
    }
    return balances[account];
}

执行加上网络同步的耗时1000ms,基本满足类率土游戏的计算需求

真相是UnityArmatureComponent中的自动合并模型被默认打开了。设置_closeCombineMeshs为true即可

public class UnityArmatureComponent : DragonBoneEventDispatcher, IArmatureProxy
{
     .....
     protected bool _closeCombineMeshs = true;
     .....
}

----------------2024年2月21日---------------------------

所有需要在Unity中显示的子节点,在骨架装配中设置为隐藏即可。

------------------2024年2月20日更新----------------------

2024-02-20T07:12:10.png

如果要在导出的龙骨动画中显示出子节点需要在编辑器中设置隐藏
2024-02-20T07:14:00.png
需要在骨骼装配中,需要显示的骨骼挂件添加一个插槽然后设置隐藏,然后在动画编辑中设置为显示,至于为什么会这样,估计是工具的内部优化吧。