none
perspective camera steuern RRS feed

  • Frage

  • Hallo,

    ich würde gerne die perspective camer mit hilfe der tastatur steurn sprich "W,A,S,D" zum vor zurück und seitlichen beewgen und die Pfeiltasten zum umsehen.

    das ist ja recht simpel:

    private void OnButtonKeyDown(object sender, KeyEventArgs e)
            {
                Button source = e.Source as Button;
                
                    //Direction
                    if (e.Key == Key.Up)
                    {
                        dirZ = dirZ - .001;
                    }
                                
                    if (e.Key == Key.Down)
                    {
                        dirZ = dirZ + .001;
                    }
                    if (e.Key == Key.Left)
                    {
                    }
                    if (e.Key == Key.Right)
                    {
                    }
                    //Position
                    if (e.Key == Key.W)
                    {
                        posX = posX + .001;
                    }
                    if (e.Key == Key.A)
                    {
                        posY = posY + .001;
                    }
                    if (e.Key == Key.S)
                    {
                        posX = posX - .001;
                    }
                    if (e.Key == Key.D)
                    {
                        posY = posY - .001;
                    }
                    if (e.Key == Key.R)
                    {
                        posZ = posZ + .001;
                    }
                    if (e.Key == Key.F)
                    {
                        posZ = posZ - .001;
                    }
            
            }

    allerdings habe ich das binding nicht wirklich gut verstanden :S (eigentlich gar nicht ;) )

    ich habe bisher nur verstanden, dass ich in meiner XAML diese zeile brauche:

    DataContext="{Binding RelativeSource={RelativeSource Self}}">

    und mein objekt hiermit binden kann:

    PerspectiveCamera x:Name="camMain" Position="{Binding ElementName=pPos, Path=SelectedItem.Content, Mode=OneWay}" 
                                               LookDirection="{Binding ElementName=dDirection, Path=SelectedItem.Content, Mode=OneWay}"
                                               
                                               FarPlaneDistance="250" FieldOfView="60">

    nun weiss ich aber nicht weiter wie ich dem C# code auf die Position und die Direction  zugreifen kann: wäre toll wenn ihr mir weiterhelfen könntet und mir sagt was ich nun unter meinen if anbfragen tun muss um den wert zu übergeben, bzw ob das in der XAML so überhaupt richtig ist :S

    danke schon mal und viele Grüße !

    Dienstag, 3. Juli 2012 13:04

Antworten

Alle Antworten