我有一个 ModelRenderable 附加到一个节点并在 ArFragment 中呈现。
我想以突出的颜色向用户突出显示该元素 0.5 秒。
我试图改变材料,但没有成功。渲染冻结而不会引发错误。这是我尝试过的:
private void addHighlightToNode(Node node) {
CompletableFuture<Material> materialCompletableFuture =
MaterialFactory.makeOpaqueWithColor(this, new Color(0, 255, 244));
ModelRenderable highlightedRenderable = (ModelRenderable) node.getRenderable();
highlightedRenderable = highlightedRenderable.makeCopy();
try {
highlightedRenderable.setMaterial(materialCompletableFuture.get());
} catch (InterruptedException e) {
e.printStackTrace();
} catch (ExecutionException e) {
e.printStackTrace();
}
node.setRenderable(highlightedRenderable);
}
我设法在运行时将节点的灯光设置为不同的颜色,但效果并不接近我需要的效果。
node.setLight(Light.builder(Light.Type.POINT).setColor(new Color(0,255,244)).build());
我怎样才能改变颜色?