(Feat) Add Animation
This commit is contained in:
@@ -74,6 +74,23 @@ namespace SurvivalSettingsRange
|
||||
*/
|
||||
constexpr float LookMultiplierAtMin = 0.05f;
|
||||
constexpr float LookMultiplierAtMax = 1.2f;
|
||||
|
||||
/** Les quatre volumes partagent la meme echelle : 0 a 100 %. */
|
||||
constexpr float VolumeMin = 0.f;
|
||||
constexpr float VolumeMax = 100.f;
|
||||
constexpr float VolumeStep = 1.f;
|
||||
constexpr float VolumeArrowStep = 10.f;
|
||||
|
||||
/**
|
||||
* Exposant applique au pourcentage avant d'en faire une amplitude.
|
||||
*
|
||||
* L'oreille repond au logarithme de l'amplitude, pas a l'amplitude : un
|
||||
* curseur envoye tel quel donne un reglage inutilisable, ou tout se joue dans
|
||||
* les vingt derniers pourcents et ou la moitie basse ne s'entend deja plus.
|
||||
* Elever au carre est l'approximation habituelle -- 50 % rendent 0,25 en
|
||||
* amplitude, soit environ la moitie du volume PERCU. 0 reste le silence exact.
|
||||
*/
|
||||
constexpr float VolumeCurveExponent = 2.f;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -128,10 +145,25 @@ public:
|
||||
UFUNCTION(BlueprintCallable, Category = "Reglages")
|
||||
void ApplySurvivalSettings();
|
||||
|
||||
/**
|
||||
* Pousse les volumes sur le peripherique audio.
|
||||
*
|
||||
* Volontairement SEPAREE d'ApplySurvivalSettings : cinq commandes vers le
|
||||
* thread audio a chaque clic de fleche sur le champ de vision seraient du
|
||||
* bruit pur. Les deux sont appelees ensemble par ApplyNonResolutionSettings,
|
||||
* donc le chemin de demarrage n'en oublie aucune.
|
||||
*/
|
||||
UFUNCTION(BlueprintCallable, Category = "Reglages|Audio")
|
||||
void ApplyAudioSettings();
|
||||
|
||||
/** Remet les seuls reglages de jeu a leur valeur d'usine. */
|
||||
UFUNCTION(BlueprintCallable, Category = "Reglages")
|
||||
void SetSurvivalGameplayToDefaults();
|
||||
|
||||
/** Remet a l'usine les seuls reglages de l'onglet Audio. */
|
||||
UFUNCTION(BlueprintCallable, Category = "Reglages|Audio")
|
||||
void SetSurvivalAudioToDefaults();
|
||||
|
||||
virtual void SetToDefaults() override;
|
||||
virtual void ApplyNonResolutionSettings() override;
|
||||
|
||||
@@ -215,6 +247,45 @@ public:
|
||||
UFUNCTION(BlueprintCallable, Category = "Reglages|Affichage")
|
||||
void SetSurvivalDisplayToDefaults();
|
||||
|
||||
// ------------------------------------------------------------------
|
||||
// Audio
|
||||
//
|
||||
// Les quatre volumes sont des POURCENTAGES, comme le bouge de camera : c'est
|
||||
// ce que la ligne de reglage affiche, et la conversion en amplitude (courbe
|
||||
// comprise) n'appartient qu'a ApplyAudioSettings.
|
||||
// ------------------------------------------------------------------
|
||||
|
||||
UFUNCTION(BlueprintPure, Category = "Reglages|Audio")
|
||||
float GetMasterVolume() const { return MasterVolume; }
|
||||
|
||||
UFUNCTION(BlueprintCallable, Category = "Reglages|Audio")
|
||||
void SetMasterVolume(float Value);
|
||||
|
||||
UFUNCTION(BlueprintPure, Category = "Reglages|Audio")
|
||||
float GetMusicVolume() const { return MusicVolume; }
|
||||
|
||||
UFUNCTION(BlueprintCallable, Category = "Reglages|Audio")
|
||||
void SetMusicVolume(float Value);
|
||||
|
||||
UFUNCTION(BlueprintPure, Category = "Reglages|Audio")
|
||||
float GetEffectsVolume() const { return EffectsVolume; }
|
||||
|
||||
UFUNCTION(BlueprintCallable, Category = "Reglages|Audio")
|
||||
void SetEffectsVolume(float Value);
|
||||
|
||||
UFUNCTION(BlueprintPure, Category = "Reglages|Audio")
|
||||
float GetUiVolume() const { return UiVolume; }
|
||||
|
||||
UFUNCTION(BlueprintCallable, Category = "Reglages|Audio")
|
||||
void SetUiVolume(float Value);
|
||||
|
||||
UFUNCTION(BlueprintPure, Category = "Reglages|Audio")
|
||||
bool GetPlayInBackground() const { return bPlayInBackground; }
|
||||
|
||||
/** Vrai = le jeu continue de s'entendre quand la fenetre n'a plus le focus. */
|
||||
UFUNCTION(BlueprintCallable, Category = "Reglages|Audio")
|
||||
void SetPlayInBackground(bool bValue);
|
||||
|
||||
private:
|
||||
/** Echelle lisible (5 a 100), convertie a la lecture. Jamais brute. */
|
||||
UPROPERTY(config)
|
||||
@@ -245,4 +316,24 @@ private:
|
||||
/** Pourcentage, converti en gamma a l'application. */
|
||||
UPROPERTY(config)
|
||||
float Brightness;
|
||||
|
||||
/** Pourcentages. Le maitre multiplie les trois autres via la hierarchie des SoundClass. */
|
||||
UPROPERTY(config)
|
||||
float MasterVolume;
|
||||
|
||||
UPROPERTY(config)
|
||||
float MusicVolume;
|
||||
|
||||
UPROPERTY(config)
|
||||
float EffectsVolume;
|
||||
|
||||
UPROPERTY(config)
|
||||
float UiVolume;
|
||||
|
||||
/**
|
||||
* Le moteur coupe le son des qu'il perd le focus, et c'est son defaut d'usine.
|
||||
* En coop c'est justement le mauvais defaut pour qui bascule sur Discord.
|
||||
*/
|
||||
UPROPERTY(config)
|
||||
bool bPlayInBackground;
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user