【问题标题】:How to get all Nodes from a specific Model (libgdx)如何从特定模型(libgdx)中获取所有节点
【发布时间】:2015-12-19 12:23:26
【问题描述】:

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

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);
    }

在我看来,这应该返回所有节点。
事实上,nodes.size 是“1”,与球体大小无关。

【问题讨论】:

    标签: java arrays 3d libgdx


    【解决方案1】:

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

    如果您愿意,this tutorial 会深入解释模型结构。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-06-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多