2016-11-09 2 views
0

Ich habe mich gefragt, wie man einen einfachen Lautstärkeregler in XNA macht. Brauche einen, um die Lautstärke in einem Spiel einzustellen, das ich mache, es ist mein erstes Spiel in C#.Wie kann ich einen Lautstärkeregler in XNA machen?

Ich habe mich umgesehen und kann keine einfache Methode finden, einen Schieberegler zu machen.

Wer weiß eine einfache Möglichkeit, dass jemand, der neu in C# (aber nicht zum Codieren) könnte einen machen?

Thanks :)

Antwort

0

sollten Sie in der Lage sein, es zu tun, um die MasterVolume Eigenschaft SoundEffect verwenden. (MSDN)

MasterVolume wirkt sich das Volumen der alle Ihre Sounds, die Lautstärke eines spezifischen Klangeffekt einstellen, dann würden Sie SoundEffectInstance.Volume (MSDN)

gehen beide die Eigenschaften verwenden, um von 0.0f (Schweigen) bis 1.0f (maximale Lautstärke).

Grundsätzlich sollten Sie nur Ihren Schieberegler zeichnen, den Schieberegler auf dem Schieberegler x ziehen (ausgehend von oben links), die Breite des Schiebereglers mal dem aktuellen Master-Volume und dann hinzufügen eine Möglichkeit, den Schieberegler zu steuern, sei es mit der Tastatur oder durch Klicken/Ziehen.

Klicken Sie darauf, sollte nur auf einen Klick warten und prüfen, ob es im Rechteck des Schiebers ist, und wenn ja, nehmen Sie x minus dem Schieberegler x (wieder Ursprung oben links), und teilen Sie das Wert durch die Breite des Schiebers, und das sollte Ihre neue MasterVolume sein.

+0

Können Sie erklären, wie Sie testen, ob Sie den Schieberegler mit der Maus zB in Bewegung sind if (slider.isClicked) {// Einige Logik zum Testen, ob die Maus bewegt hat nach links oder rechts // Einige Logik für Verschieben der Schieberegler X-Position soundEffectInstance.Volume = slider.X/100; } –

+0

Welchen Teil brauchst du, der slider.isClicked, oder was? – Koneke

+0

Die Logik, um zu überprüfen, wo sich die Maus bewegt (links oder rechts) und das X des Schiebereglers zu bewegen, je nachdem, wie die Maus bewegt wird –

Verwandte Themen