1

Colladaモデルをビデオストリームの上に表示し、そのアルファ値を動的に調整したいと思います。現在、PaperVisionで部分的に機能していますが、モデルのアルファをまったく設定できないようです。私はグーグルからいくつかのことを試しました。非Colladaモデルの場合、以下は正常に機能します。

var layer:ViewportLayer = viewport.getChildLayer(myModel, true);
layer.alpha = 0.5;

私が試したすべてのColladaモデルには、UVWマップされたテクスチャがあります。結局、私はモデルアルファがいくつかの外部イベントに基づいて継続的に調整されることを望んでいます。私は広範囲にグーグルで検索しましたが、運がほとんどありませんでした。

どんな助けでもいただければ幸いです!

更新/解決済み

したがって、以下に示すように、私がする必要があるのは、適切な子を見つけて直接操作することだけでした。私のコードは次のようになります。

currentModel = new DAE(true, "Model");
currentModel.load("./model/Model.dae");
baseNode.addChild(currentModel);
currentModel.addEventListener(FileLoadEvent.LOAD_COMPLETE, function():void {
    // Assume first child is what we want
    for (var key:String in currentModel.children) {
        currentModelContainer = currentModel.getChildByName(key)
        currentModelContainer.useOwnContainer = true;
        currentModelContainer.alpha = 0.0;
        break;
    }
});

さて、後で私がすることは、Tweenerを使用してcurrentModelContainerのalpha属性を調整することだけです。

4

1 に答える 1

1

1つの方法は、モデルの子ノードを独自のコンテナー内に配置することです。

var target:DisplayObject3D = model.getChildByName("someNode", true);
target.useOwnContainer = true;
target.alpha = 0.5;
于 2009-10-08T04:55:15.623 に答える