2

C# の WPF ワールドで魚をアニメーション化しようとしています。ヘリックスツールキットを使用してオブジェクトをインポートして表示しています。

作成するコードは次のとおりです。

public MainViewModel()
{
   var worldGroup = new Model3DGroup();
   var fishGroup = new Model3DGroup();

   Model3D world = ModelImporter.Load(@".\Models\1.obj");
   Model3D fish = ModelImporter.Load(@".\Models\2.obj");

   worldGroup.Children.Add(world);
   fishGroup.Children.Add(fish);

   WorldModel = worldGroup;
   FishModel = fishGroup;
}

しかし、アニメーション化する方法がわかりません。ポイントで定義されたカスタムパスで魚を泳がせたいです(または、可能であれば3ds maxからスプラインをインポートするだけです)

また、3dsmax のキーフレームを使用して、魚を泳がせたり、モデル自体にアニメーションを付けたりすることは可能ですか (アニメーション化されたボディなど)。

4

1 に答える 1

1

次の XAML で簡単にアニメーション化できました。

<Window x:Class="_3D.MainWindow"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:HelixToolkit="clr-namespace:HelixToolkit.Wpf;assembly=HelixToolkit.Wpf"
    Title="MainWindow" Height="350" Width="525">

<Grid>

    <HelixToolkit:HelixViewport3D ZoomExtentsWhenLoaded="True" Name="MyAnimatedObject">

        <HelixToolkit:SunLight />

        <ModelVisual3D Content="{Binding FishModel}">
            <ModelVisual3D.Transform>
                <TranslateTransform3D x:Name="MyTranslateTransform3D" OffsetX="0" OffsetY="0" OffsetZ="0" />
            </ModelVisual3D.Transform>
        </ModelVisual3D>
        <ModelVisual3D Content="{Binding WorldModel}" />

        <HelixToolkit:HelixViewport3D.Triggers>
            <EventTrigger RoutedEvent="HelixToolkit:HelixViewport3D.Loaded">
                <BeginStoryboard>
                    <Storyboard>
                        <DoubleAnimation
                            Storyboard.TargetName="MyTranslateTransform3D"
                            Storyboard.TargetProperty="OffsetX"
                            To="10"
                            AutoReverse="True" RepeatBehavior="Forever" />
                    </Storyboard>
                </BeginStoryboard>
            </EventTrigger>
        </HelixToolkit:HelixViewport3D.Triggers>
    </HelixToolkit:HelixViewport3D>
</Grid>

于 2013-07-24T15:04:08.210 に答える