Ejemplo n.º 1
0
  @SuppressWarnings("unchecked")
  public void bindMaterials(final Element bindMaterial) {
    if (bindMaterial == null || bindMaterial.getChildren().isEmpty()) {
      return;
    }

    for (final Element instance :
        (List<Element>)
            bindMaterial.getChild("technique_common").getChildren("instance_material")) {
      final Element matNode =
          _colladaDOMUtil.findTargetWithId(instance.getAttributeValue("target"));
      if (matNode != null && "material".equals(matNode.getName())) {
        _dataCache.bindMaterial(instance.getAttributeValue("symbol"), matNode);
      } else {
        logger.warning(
            "instance material target not found: " + instance.getAttributeValue("target"));
      }

      // TODO: need to store bound vert data as local data. (also unstore on unbind.)
    }
  }