granite node test

这段代码创建了一个复杂的节点树结构,使用scene_loader从场景中创建节点,并通过add_child方法建立父子关系。节点的名称从n0到n12。之后,通过invalidate_cached_transform方法标记节点的变换缓存为无效,以便在后续调用中更新变换树。最后,获取n10和n7的脏变换深度,并再次更新变换树。
	NodeHandle n0 = scene_loader.get_scene().create_node();
	n0->name = "n0";

    NodeHandle n1 = scene_loader.get_scene().create_node();
    n1->name = "n1";

    NodeHandle n2 = scene_loader.get_scene().create_node();
    n2->name = "n2";

    NodeHandle n3 = scene_loader.get_scene().create_node();
    n3->name = "n3";

    NodeHandle n4 = scene_loader.get_scene().create_node();
    n4->name = "n4";

    NodeHandle n5 = scene_loader.get_scene().create_node();
    n5->name = "n5";

    NodeHandle n6 = scene_loader.get_scene().create_node();
    n6->name = "n6";

    NodeHandle n7 = scene_loader.get_scene().create_node();
    n7->name = "n7";

    NodeHandle n8 = scene_loader.get_scene().create_node();
    n8->name = "n8";

    NodeHandle n9 = scene_loader.get_scene().create_node();
    n9->name = "n9";

    NodeHandle n10 = scene_loader.get_scene().create_node();
    n10->name = "n10";

    NodeHandle n11 = scene_loader.get_scene().create_node();
    n11->name = "n11";

    NodeHandle n12 = scene_loader.get_scene().create_node();
    n12->name = "n12";

    scene_loader.get_scene().set_root_node(n0);
    n0->invalidate_cached_transform();
    n0->add_child(n1);
    n0->add_child(n2);
    n0->add_child(n3);

    n1->add_child(n4);
    n1->add_child(n5);

    n2->add_child(n6);
    n2->add_child(n7);
    n2->add_child(n8);

    n3->add_child(n9);

    n4->add_child(n12);

    n6->add_child(n10);
    n6->add_child(n11);
    
    n0->invalidate_cached_transform();
    n1->invalidate_cached_transform();
    n2->invalidate_cached_transform();
    n3->invalidate_cached_transform();
    n4->invalidate_cached_transform();
    n5->invalidate_cached_transform();
    n6->invalidate_cached_transform();
    n7->invalidate_cached_transform();
    n8->invalidate_cached_transform();
    n9->invalidate_cached_transform();
    n10->invalidate_cached_transform();
    n11->invalidate_cached_transform();
    n12->invalidate_cached_transform();
    scene_loader.get_scene().update_transform_tree();

    n2->invalidate_cached_transform();
    scene_loader.get_scene().update_transform_tree();

    n2->invalidate_cached_transform();
    n10->invalidate_cached_transform();
    //n0->invalidate_cached_transform();
    int a = n10->get_dirty_transform_depth();
    int b = n7->get_dirty_transform_depth();
    
    scene_loader.get_scene().update_transform_tree();
    
    LOGI("");
}
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值