Java 如何从特定模型(libgdx)获取所有节点

Java 如何从特定模型(libgdx)获取所有节点,java,arrays,3d,libgdx,Java,Arrays,3d,Libgdx,我试图从我创建的球体中获取所有节点,并使用以下代码 private Array<Node> nodes; ModelBuilder modelBuilder = new ModelBuilder(); Model model = modelBuilder.createSphere(10, 10, 10, 20, 20, new Material(ColorAttribute.createDiffuse(Color.RED)), Usage.Position | Us

我试图从我创建的球体中获取所有节点,并使用以下代码

private Array<Node> nodes;

    ModelBuilder modelBuilder = new ModelBuilder();
    Model model = modelBuilder.createSphere(10, 10, 10, 20, 20, new Material(ColorAttribute.createDiffuse(Color.RED)), Usage.Position | Usage.Normal);
    nodes = model.nodes;

    for (Iterator<Node> iterator = nodes.iterator(); iterator.hasNext();)
    {
        Node node = (Node) iterator.next();
        nodes.add(node);
    }
私有数组节点;
ModelBuilder ModelBuilder=新的ModelBuilder();
Model Model=modelBuilder.createSphere(10,10,10,20,20,新材质(ColorAttribute.createDiffuse(Color.RED)),Usage.Position | Usage.Normal);
节点=model.nodes;
for(Iterator Iterator=nodes.Iterator();Iterator.hasNext();)
{
Node=(Node)迭代器.next();
nodes.add(node);
}
我认为这应该返回所有节点。

事实上,
节点。大小
是“1”,与球体大小无关。

没错,
模型#节点
提供对根节点(
数组
的直接访问
ModelBuilder
只创建根节点,因此在您的情况下,它将是模型的所有节点。
createSphere
方法总是创建一个节点,而不管球体的大小(尺寸)(尽管我不知道为什么您会认为这会相关?)

如果愿意,请深入解释模型结构