diff --git a/StarterNG/MainWindow.axaml b/StarterNG/MainWindow.axaml index 7170af5..3cb8cc0 100644 --- a/StarterNG/MainWindow.axaml +++ b/StarterNG/MainWindow.axaml @@ -7,7 +7,7 @@ xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:svg="clr-namespace:Avalonia.Svg;assembly=Avalonia.Svg" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" - xmlns:views="clr-namespace:StarterNG.Views" + xmlns:views="clr-namespace:StarterNG.Views" BackgroundStyle="Bubble" Title="MaSzyna - Symulator pojazdów szynowych" Height="600" Width="800"> @@ -36,6 +36,16 @@ + + + + + + + + + + diff --git a/StarterNG/StarterNG.csproj b/StarterNG/StarterNG.csproj index 23f4227..e86cfd5 100644 --- a/StarterNG/StarterNG.csproj +++ b/StarterNG/StarterNG.csproj @@ -7,6 +7,12 @@ app.manifest true + + x64 + + + x64 + diff --git a/StarterNG/Views/Settings.axaml b/StarterNG/Views/Settings.axaml new file mode 100644 index 0000000..58586c5 --- /dev/null +++ b/StarterNG/Views/Settings.axaml @@ -0,0 +1,371 @@ + + + + + + + + Tryb pełnoekranowy + + Wstrzymaj symulację, gdy okno nie jest aktywne + + Pauza po uruchomieniu + + + + + + + + Inwersja myszy w poziomie + Inwersja myszy w pionie + + + + + + + Ignoruj sygnały z gamepada + + + + + Wyłączona + Caps: CA/SHP; ScrollLock: opory rozr. + Caps: CA; Scrollock: SHP + LPT + PoKeys55 + Serialport (COM) + + + + + + + + + + + + + + Wybierz automatycznie + eu07.exe + + + + Tryb testowy (debugmode) + + Wirtualny manewrowy + + + + + + + + + + + Pełny + Stary + Uproszczony shaderowy + Uproszczony + Wyłącz warstwę wizualną + Eksperymentalny + + + + + + 2560x1440 + + + + Rozdzielczość bufora: + + + + + + Maksymalna rozdzielczość tekstur: + + + + + + Maksymalna rozdzielczość tekstur kabiny: + + + + + + Jakość filtrowania tekstur + + + + + Multisampling + + + + + Zasięg renderowania + + + + VSync + + Wyświetlanie dymu + + + Mnożnik ilości cząsteczek dymu + + + + + Postprocessing + + Reinhard + ACES + + + + Aberracja chromatyczna + + Rozmycie podczas ruchu + + Dodatkowe efekty shaderów + + Odbicia jako cubemapa + + Renderowanie VBO + + Renderowanie cieni + + + Odświeżanie odbić + + + + + Rozdzielczość cieni + + + + + + Odświeżanie odbić + + + + + Zasięg źródeł cieni w kabinie + + + + + Wyświetlanie cieni + + Tylko ważne + Ograniczone + Wszystkie + + + + + Szczegółowość odbić + + Tylko geometria terenu + Geometria terenu i modele statyczne + Geometria terenu, modele statyczne i pojazdy + + + + + Zasięg źródeł cieni w kabinie + + + + Renderowanie ekranów komputerów pokładowych + Renderowanie ekranów w osobnym wątku + + + Częstotliwość odświeżania ekranów komputerów pokładowych + + + + + + + + + + + Jakość łuków torów + + + + Zwiększona dokładność fizyki + + Możliwość złamania pantografu + + Zasilanie tylko pod siecią trakcyjna + + Zapisuj taśmy z prędkościomierza + + Zapisuj log z symulacji + + Zachowuj poprzednie logi + + Wyświetlaj symulację + + Uszkodzenia przy zderzeniu + + + + + + + + Włącz dźwięk + + + Głośność + + + + + Głośność radiotelefonu + + + + + Głośność pojazdów + + + + + Głośność dżwięków pozycjonowanych + + + + + Głośność otoczenia + + + + + Głośność podczas pauzy + + + + + + + + + + Zamknij starter automatycznie + Duże miniaturki + Automatycznie rozwijanie drzewka scenerii + + + + + + + \ No newline at end of file diff --git a/StarterNG/Views/Settings.axaml.cs b/StarterNG/Views/Settings.axaml.cs new file mode 100644 index 0000000..c4fd91b --- /dev/null +++ b/StarterNG/Views/Settings.axaml.cs @@ -0,0 +1,48 @@ +using System; +using Avalonia; +using Avalonia.Controls; +using Avalonia.Controls.Primitives; +using Avalonia.Markup.Xaml; + +namespace StarterNG.Views; + +public partial class Settings : UserControl +{ + public Settings() + { + InitializeComponent(); + this.AttachedToVisualTree += (_, _) => + { + TextureResolutionSlider_OnValueChanged(null, null); + CabTextureResolutionSlider_OnValueChanged(null, null); + shaderResolutionSlider_OnValueChanged(null, null); + }; + } + + private void TextureResolutionSlider_OnValueChanged(object? sender, RangeBaseValueChangedEventArgs e) + { + if (texResolution is null || textureResolutionSlider is null) + return; + + int resolution = 1 << (int)textureResolutionSlider.Value; + texResolution.Text = $"{resolution} px"; + } + + private void CabTextureResolutionSlider_OnValueChanged(object? sender, RangeBaseValueChangedEventArgs e) + { + if (cabTexResolution is null || cabTextureResolutionSlider is null) + return; + + int resolution = 1 << (int)cabTextureResolutionSlider.Value; + cabTexResolution.Text = $"{resolution} px"; + } + + private void shaderResolutionSlider_OnValueChanged(object? sender, RangeBaseValueChangedEventArgs e) + { + if (shaderResolution is null || shaderResolutionSlider is null) + return; + + int resolution = 1 << (int)shaderResolutionSlider.Value; + shaderResolution.Text = $"{resolution} px"; + } +} \ No newline at end of file