(Feat) Add Animation Fps Charater
This commit is contained in:
@@ -0,0 +1,111 @@
|
||||
// Fill out your copyright notice in the Description page of Project Settings.
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "CoreMinimal.h"
|
||||
#include "SettingsTabWidget.h"
|
||||
#include "SettingsGraphicsWidget.generated.h"
|
||||
|
||||
class USettingRowWidget;
|
||||
class USurvivalUserSettings;
|
||||
|
||||
/**
|
||||
* L'onglet "Graphismes" : les dix curseurs de scalability du moteur, plus une
|
||||
* qualite globale qui les pousse tous.
|
||||
*
|
||||
* Zero logique metier ici : chaque ligne appelle un Set...Quality(0-3) de
|
||||
* UGameUserSettings, le moteur fait le reste. C'est l'onglet qui rapporte le
|
||||
* plus pour le moins d'effort.
|
||||
*
|
||||
* Vegetation et Distance d'affichage sont places EN HAUT et non dans l'ordre du
|
||||
* moteur : avec SoStylized, ce sont les deux seuls qui decident vraiment si le
|
||||
* jeu tourne sur une machine moyenne.
|
||||
*
|
||||
* Classe Abstract : on cree un WBP_SettingsGraphics qui en herite.
|
||||
*/
|
||||
UCLASS(Abstract)
|
||||
class EMBERWILD_API USettingsGraphicsWidget : public USettingsTabWidget
|
||||
{
|
||||
GENERATED_BODY()
|
||||
|
||||
public:
|
||||
virtual void NativeConstruct() override;
|
||||
|
||||
virtual void RefreshFromSettings() override;
|
||||
virtual void ResetToDefaults() override;
|
||||
|
||||
protected:
|
||||
/** Bas / Moyen / Élevé / Épique, plus "Personnalisé" que le joueur ne peut pas choisir. */
|
||||
UPROPERTY(meta = (BindWidget))
|
||||
TObjectPtr<USettingRowWidget> OverallQualityRow;
|
||||
|
||||
UPROPERTY(meta = (BindWidget))
|
||||
TObjectPtr<USettingRowWidget> ViewDistanceRow;
|
||||
|
||||
UPROPERTY(meta = (BindWidget))
|
||||
TObjectPtr<USettingRowWidget> FoliageRow;
|
||||
|
||||
UPROPERTY(meta = (BindWidget))
|
||||
TObjectPtr<USettingRowWidget> ShadowRow;
|
||||
|
||||
UPROPERTY(meta = (BindWidget))
|
||||
TObjectPtr<USettingRowWidget> TextureRow;
|
||||
|
||||
UPROPERTY(meta = (BindWidget))
|
||||
TObjectPtr<USettingRowWidget> VisualEffectRow;
|
||||
|
||||
UPROPERTY(meta = (BindWidget))
|
||||
TObjectPtr<USettingRowWidget> PostProcessRow;
|
||||
|
||||
UPROPERTY(meta = (BindWidget))
|
||||
TObjectPtr<USettingRowWidget> AntiAliasingRow;
|
||||
|
||||
UPROPERTY(meta = (BindWidget))
|
||||
TObjectPtr<USettingRowWidget> ReflectionRow;
|
||||
|
||||
UPROPERTY(meta = (BindWidget))
|
||||
TObjectPtr<USettingRowWidget> GlobalIlluminationRow;
|
||||
|
||||
UPROPERTY(meta = (BindWidget))
|
||||
TObjectPtr<USettingRowWidget> ShadingRow;
|
||||
|
||||
private:
|
||||
UFUNCTION()
|
||||
void HandleOverallQualityChanged(int32 NewIndex);
|
||||
|
||||
UFUNCTION()
|
||||
void HandleViewDistanceChanged(int32 NewIndex);
|
||||
|
||||
UFUNCTION()
|
||||
void HandleFoliageChanged(int32 NewIndex);
|
||||
|
||||
UFUNCTION()
|
||||
void HandleShadowChanged(int32 NewIndex);
|
||||
|
||||
UFUNCTION()
|
||||
void HandleTextureChanged(int32 NewIndex);
|
||||
|
||||
UFUNCTION()
|
||||
void HandleVisualEffectChanged(int32 NewIndex);
|
||||
|
||||
UFUNCTION()
|
||||
void HandlePostProcessChanged(int32 NewIndex);
|
||||
|
||||
UFUNCTION()
|
||||
void HandleAntiAliasingChanged(int32 NewIndex);
|
||||
|
||||
UFUNCTION()
|
||||
void HandleReflectionChanged(int32 NewIndex);
|
||||
|
||||
UFUNCTION()
|
||||
void HandleGlobalIlluminationChanged(int32 NewIndex);
|
||||
|
||||
UFUNCTION()
|
||||
void HandleShadingChanged(int32 NewIndex);
|
||||
|
||||
/** Prepare une ligne de qualite : memes quatre libelles partout. */
|
||||
void SetupQualityRow(USettingRowWidget* Row, const FText& Label);
|
||||
|
||||
/** Pousse la scalability et rafraichit la ligne de qualite globale. */
|
||||
void ApplyAndRefreshOverall();
|
||||
};
|
||||
Reference in New Issue
Block a user