diff --git a/AssetEditor/Language_Cn.json b/AssetEditor/Language_Cn.json
index bd28f99bc..2c8364b02 100644
--- a/AssetEditor/Language_Cn.json
+++ b/AssetEditor/Language_Cn.json
@@ -12,7 +12,6 @@
"SettingsWindow.OnlyLoadLod0": "仅为参考 Mesh 加载 Lod0",
"SettingsWindow.GridSize": "网格大小",
"SettingsWindow.VertexSelectionColour": "顶点选择颜色",
- "SettingsWindow.AudioModding": "音频 Mod",
"SettingsWindow.SaveButton": "保存",
"UpdaterWindow.Title": "更新器",
@@ -101,8 +100,6 @@
"SettingsWindow.VertexSelectionColourTooltip": "选中顶点的十六进制颜色(例如 #FF7800)",
"SettingsWindow.GameFiles": "游戏文件",
"SettingsWindow.GameDataPathHint": "浏览游戏数据位置,例如 \"C:\\SteamLibrary\\steamapps\\common\\Total War WARHAMMER III\\data\"",
- "SettingsWindow.WwiseCLI": "Wwise CLI",
- "SettingsWindow.WwiseCliPathHint": "例如 \"C:\\Program Files (x86)\\Audiokinetic\\Wwise2019.2.15.7667\\Authoring\\x64\\Release\\bin\\WwiseCLI.exe\"",
"MenuBar.File": "_文件",
"MenuBar.File.NewPack": "新建 Pack",
@@ -749,6 +746,7 @@
"MetadataEditor.NewEntryWindow.Title": "创建元数据条目",
"WaveformVisualiser.Play": "播放",
+ "WaveformVisualiser.Pause": "暂停",
"AudioProjectExplorer.DialogueEventFilters": "对话事件筛选",
"AudioProjectExplorer.Watermark.DialogueEventTypeFilter": "选择对话事件类型筛选",
diff --git a/AssetEditor/Language_En.json b/AssetEditor/Language_En.json
index 368db562b..e87eaedc2 100644
--- a/AssetEditor/Language_En.json
+++ b/AssetEditor/Language_En.json
@@ -12,7 +12,6 @@
"SettingsWindow.OnlyLoadLod0": "Only load Lod0 for reference meshes",
"SettingsWindow.GridSize": "Grid Size",
"SettingsWindow.VertexSelectionColour": "Vertex Selection Colour",
- "SettingsWindow.AudioModding": "Audio Modding",
"SettingsWindow.SaveButton": "Save",
"UpdaterWindow.Title": "Updater",
@@ -101,8 +100,6 @@
"SettingsWindow.VertexSelectionColourTooltip": "Hex colour for selected vertices (e.g. #FF7800)",
"SettingsWindow.GameFiles": "Game Files",
"SettingsWindow.GameDataPathHint": "Browse for game data location e.g. \"C:\\SteamLibrary\\steamapps\\common\\Total War WARHAMMER III\\data\"",
- "SettingsWindow.WwiseCLI": "Wwise CLI",
- "SettingsWindow.WwiseCliPathHint": "e.g. \"C:\\Program Files (x86)\\Audiokinetic\\Wwise2019.2.15.7667\\Authoring\\x64\\Release\\bin\\WwiseCLI.exe\"",
"MenuBar.File": "_File",
"MenuBar.File.NewPack": "New Pack",
@@ -749,6 +746,7 @@
"MetadataEditor.NewEntryWindow.Title": "Create MetaData entry",
"WaveformVisualiser.Play": "Play",
+ "WaveformVisualiser.Pause": "Pause",
"AudioProjectExplorer.DialogueEventFilters": "Dialogue Event Filters",
"AudioProjectExplorer.Watermark.DialogueEventTypeFilter": "Select Dialogue Event Type Filter",
diff --git a/AssetEditor/Language_Fr.json b/AssetEditor/Language_Fr.json
index 23ccc7b60..0c4b6c1ee 100644
--- a/AssetEditor/Language_Fr.json
+++ b/AssetEditor/Language_Fr.json
@@ -11,7 +11,6 @@
"SettingsWindow.OnlyLoadLod0": "Charger uniquement le Lod0 pour les maillages de référence",
"SettingsWindow.GridSize": "Taille de la grille",
"SettingsWindow.VertexSelectionColour": "Couleur de sélection des sommets",
- "SettingsWindow.AudioModding": "Modding audio",
"SettingsWindow.SaveButton": "Enregistrer",
"UpdaterWindow.Title": "Mise à jour",
@@ -36,5 +35,8 @@
"PackFileCache.InvalidReason.Corrupted": "Cache for {0} is corrupted and will be rebuilt.",
"PackFileCache.BuildingCache": "Building pack file cache for {0}. This may take some time, please wait...",
"PackFileCache.BuildingCache.Title": "Building Cache",
- "PackFileCache.Description": "The cache allows faster startup times and reduces memory usage by storing pre-processed game file data on disk."
+ "PackFileCache.Description": "The cache allows faster startup times and reduces memory usage by storing pre-processed game file data on disk.",
+
+ "WaveformVisualiser.Play": "Lecture",
+ "WaveformVisualiser.Pause": "Pause"
}
\ No newline at end of file
diff --git a/AssetEditor/ViewModels/SettingsViewModel.cs b/AssetEditor/ViewModels/SettingsViewModel.cs
index 850b442c7..78786bdac 100644
--- a/AssetEditor/ViewModels/SettingsViewModel.cs
+++ b/AssetEditor/ViewModels/SettingsViewModel.cs
@@ -35,7 +35,6 @@ partial class SettingsViewModel : ObservableObject
[ObservableProperty] private GameTypeEnum _currentGame;
[ObservableProperty] private bool _loadCaPacksByDefault;
[ObservableProperty] private bool _showCAWemFiles;
- [ObservableProperty] private string _wwisePath;
[ObservableProperty] private bool _onlyLoadLod0ForReferenceMeshes;
[ObservableProperty] private CameraControlMode _selectedCameraMode;
@@ -73,7 +72,6 @@ public SettingsViewModel(ApplicationSettingsService settingsService, Localizatio
Path = _settingsService.CurrentSettings.GameDirectories.FirstOrDefault(x => x.Game == game.Type)?.Path
});
}
- WwisePath = _settingsService.CurrentSettings.WwisePath;
}
@@ -95,22 +93,11 @@ private void Save()
foreach (var item in GameDirectores)
_settingsService.CurrentSettings.GameDirectories.Add(new ApplicationSettings.GamePathPair(item.GameType, item.Path));
- _settingsService.CurrentSettings.WwisePath = WwisePath;
_localizationManager.LoadLanguage(SelectedLanguage);
_settingsService.Save();
MessageBox.Show("Please restart the tool after updating settings!");
}
-
- [RelayCommand]
- private void Browse()
- {
- var dialog = new OpenFileDialog();
- dialog.Filter = "Executable files (*.exe)|*.exe";
- dialog.Multiselect = false;
- if (dialog.ShowDialog() == DialogResult.OK)
- WwisePath = dialog.FileName;
- }
}
class GamePathItem : NotifyPropertyChangedImpl
diff --git a/AssetEditor/Views/Settings/SettingsView.xaml b/AssetEditor/Views/Settings/SettingsView.xaml
index 4d74aa71f..a976b36bd 100644
--- a/AssetEditor/Views/Settings/SettingsView.xaml
+++ b/AssetEditor/Views/Settings/SettingsView.xaml
@@ -30,8 +30,6 @@
-
-
@@ -166,26 +164,5 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/Editors/Audio/AudioEditor/Core/AudioEditorIntegrityService.cs b/Editors/Audio/AudioEditor/Core/AudioEditorIntegrityService.cs
index 20f9b4e78..714a34767 100644
--- a/Editors/Audio/AudioEditor/Core/AudioEditorIntegrityService.cs
+++ b/Editors/Audio/AudioEditor/Core/AudioEditorIntegrityService.cs
@@ -7,7 +7,7 @@
using Editors.Audio.Shared.AudioProject.Models;
using Editors.Audio.Shared.GameInformation.Warhammer3;
using Editors.Audio.Shared.Storage;
-using Editors.Audio.Shared.Wwise;
+using Shared.GameFormats.Wwise;
using Shared.Core.PackFiles;
using Shared.GameFormats.Wwise.Hirc;
diff --git a/Editors/Audio/AudioEditor/Presentation/AudioEditorView.xaml b/Editors/Audio/AudioEditor/Presentation/AudioEditorView.xaml
index ec23a43f7..8e22ee4c6 100644
--- a/Editors/Audio/AudioEditor/Presentation/AudioEditorView.xaml
+++ b/Editors/Audio/AudioEditor/Presentation/AudioEditorView.xaml
@@ -12,7 +12,7 @@
xmlns:AudioProjectEditor="clr-namespace:Editors.Audio.AudioEditor.Presentation.AudioProjectEditor"
xmlns:Settings="clr-namespace:Editors.Audio.AudioEditor.Presentation.Settings"
xmlns:AudioProjectViewer="clr-namespace:Editors.Audio.AudioEditor.Presentation.AudioProjectViewer"
- xmlns:WaveformVisualiser="clr-namespace:Editors.Audio.AudioEditor.Presentation.WaveformVisualiser"
+ xmlns:WaveformVisualiser="clr-namespace:Editors.Audio.WaveformVisualiser.Presentation"
xmlns:loc="clr-namespace:Shared.Ui.Common;assembly=Shared.Ui"
d:DataContext="{d:DesignInstance Type=Local:AudioEditorViewModel}"
mc:Ignorable="d"
diff --git a/Editors/Audio/AudioEditor/Presentation/AudioEditorView.xaml.cs b/Editors/Audio/AudioEditor/Presentation/AudioEditorView.xaml.cs
index b7c4c6fbb..cf6ceceb3 100644
--- a/Editors/Audio/AudioEditor/Presentation/AudioEditorView.xaml.cs
+++ b/Editors/Audio/AudioEditor/Presentation/AudioEditorView.xaml.cs
@@ -8,7 +8,7 @@
using Editors.Audio.AudioEditor.Presentation.AudioProjectExplorer;
using Editors.Audio.AudioEditor.Presentation.AudioProjectViewer;
using Editors.Audio.AudioEditor.Presentation.Settings;
-using Editors.Audio.AudioEditor.Presentation.WaveformVisualiser;
+using Editors.Audio.WaveformVisualiser.Presentation;
namespace Editors.Audio.AudioEditor.Presentation
{
diff --git a/Editors/Audio/AudioEditor/Presentation/AudioEditorViewModel.cs b/Editors/Audio/AudioEditor/Presentation/AudioEditorViewModel.cs
index 6dcdeecd2..74a2256af 100644
--- a/Editors/Audio/AudioEditor/Presentation/AudioEditorViewModel.cs
+++ b/Editors/Audio/AudioEditor/Presentation/AudioEditorViewModel.cs
@@ -10,7 +10,7 @@
using Editors.Audio.AudioEditor.Presentation.AudioProjectExplorer;
using Editors.Audio.AudioEditor.Presentation.AudioProjectViewer;
using Editors.Audio.AudioEditor.Presentation.Settings;
-using Editors.Audio.AudioEditor.Presentation.WaveformVisualiser;
+using Editors.Audio.WaveformVisualiser.Presentation;
using Editors.Audio.Shared.AudioProject.Compiler;
using Shared.Core.Events;
using Shared.Core.ToolCreation;
diff --git a/Editors/Audio/AudioEditor/Presentation/AudioFilesExplorer/AudioFilesExplorerViewModel.cs b/Editors/Audio/AudioEditor/Presentation/AudioFilesExplorer/AudioFilesExplorerViewModel.cs
index 3981ee314..e3ea52abc 100644
--- a/Editors/Audio/AudioEditor/Presentation/AudioFilesExplorer/AudioFilesExplorerViewModel.cs
+++ b/Editors/Audio/AudioEditor/Presentation/AudioFilesExplorer/AudioFilesExplorerViewModel.cs
@@ -12,7 +12,7 @@
using Editors.Audio.AudioEditor.Core;
using Editors.Audio.AudioEditor.Events.AudioFilesExplorer;
using Editors.Audio.AudioEditor.Events.AudioProjectExplorer;
-using Editors.Audio.AudioEditor.Events.WaveformVisualiser;
+using Editors.Audio.WaveformVisualiser.Events;
using Editors.Audio.AudioEditor.Presentation.Shared.Models;
using Shared.Core.Events;
using Shared.Core.Events.Global;
diff --git a/Editors/Audio/AudioEditor/Presentation/AudioProjectEditor/AudioProjectEditorViewModel.cs b/Editors/Audio/AudioEditor/Presentation/AudioProjectEditor/AudioProjectEditorViewModel.cs
index 1f12ea869..45b2b4643 100644
--- a/Editors/Audio/AudioEditor/Presentation/AudioProjectEditor/AudioProjectEditorViewModel.cs
+++ b/Editors/Audio/AudioEditor/Presentation/AudioProjectEditor/AudioProjectEditorViewModel.cs
@@ -21,6 +21,7 @@
using Editors.Audio.AudioEditor.Presentation.Shared.Models;
using Editors.Audio.AudioEditor.Presentation.Shared.Table;
using Editors.Audio.Shared.AudioProject.Models;
+using Editors.Audio.Shared.GameInformation.Warhammer3;
using Editors.Audio.Shared.Storage;
using Serilog;
using Shared.Core.ErrorHandling;
@@ -223,13 +224,8 @@ private void SetEventNameFromAudioFile(List audioFiles, bool addToExi
private void SetMovieFilePath(string movieFilePath)
{
- var relativePath = Path.GetRelativePath("movies", movieFilePath);
- var withoutExtension = Path.ChangeExtension(relativePath, null);
- var slashesToUnderscores = withoutExtension.Replace("\\", "_");
- var eventName = $"Play_Movie_{slashesToUnderscores}";
-
var row = Table.Rows[0];
- row[TableInformation.ActionEventColumnName] = eventName;
+ row[TableInformation.ActionEventColumnName] = Wh3ActionEventInformation.GetMovieActionEventName(movieFilePath);
}
public void OnEditorAddRowButtonEnablementUpdateRequested(EditorAddRowButtonEnablementUpdateRequestedEvent e) => SetAddRowButtonEnablement();
diff --git a/Editors/Audio/AudioEditor/Presentation/Settings/SettingsViewModel.cs b/Editors/Audio/AudioEditor/Presentation/Settings/SettingsViewModel.cs
index ef6558f78..6be0814fa 100644
--- a/Editors/Audio/AudioEditor/Presentation/Settings/SettingsViewModel.cs
+++ b/Editors/Audio/AudioEditor/Presentation/Settings/SettingsViewModel.cs
@@ -11,7 +11,7 @@
using Editors.Audio.AudioEditor.Events.AudioProjectExplorer;
using Editors.Audio.AudioEditor.Events.AudioProjectViewer.Table;
using Editors.Audio.AudioEditor.Events.Settings.Shortcuts;
-using Editors.Audio.AudioEditor.Events.WaveformVisualiser;
+using Editors.Audio.WaveformVisualiser.Events;
using Editors.Audio.AudioEditor.Presentation.Shared.Models;
using Editors.Audio.AudioEditor.Presentation.Shared.Table;
using Editors.Audio.Shared.AudioProject.Compiler;
diff --git a/Editors/Audio/AudioEditor/Presentation/WaveformVisualiser/WaveformVisualiserHelpers.cs b/Editors/Audio/AudioEditor/Presentation/WaveformVisualiser/WaveformVisualiserHelpers.cs
deleted file mode 100644
index f4fc28050..000000000
--- a/Editors/Audio/AudioEditor/Presentation/WaveformVisualiser/WaveformVisualiserHelpers.cs
+++ /dev/null
@@ -1,7 +0,0 @@
-namespace Editors.Audio.AudioEditor.Presentation.WaveformVisualiser
-{
- public class WaveformVisualiserHelpers
- {
-
- }
-}
diff --git a/Editors/Audio/AudioExplorer/AudioExplorerView.xaml b/Editors/Audio/AudioExplorer/AudioExplorerView.xaml
index 991069be3..6f1e4b44c 100644
--- a/Editors/Audio/AudioExplorer/AudioExplorerView.xaml
+++ b/Editors/Audio/AudioExplorer/AudioExplorerView.xaml
@@ -9,6 +9,7 @@
xmlns:Behaviors="clr-namespace:Shared.Ui.Common.Behaviors;assembly=Shared.Ui"
xmlns:ValueConverters="clr-namespace:Editors.Audio.Shared.UI.ValueConverters"
xmlns:AudioExplorer="clr-namespace:Editors.Audio.AudioExplorer"
+ xmlns:WaveformVisualiser="clr-namespace:Editors.Audio.WaveformVisualiser.Presentation"
xmlns:loc="clr-namespace:Shared.Ui.Common;assembly=Shared.Ui"
d:DataContext="{d:DesignInstance Type=AudioExplorer:AudioExplorerViewModel}"
mc:Ignorable="d"
@@ -56,10 +57,12 @@
Height="Auto"/>
+
+ Height="161"/>
-
-
+ VirtualizingPanel.IsVirtualizingWhenGrouping="True">