16 Commits

49 changed files with 101 additions and 36 deletions
Split View
  1. +21
    -4
      Config/DefaultEngine.ini
  2. +4
    -3
      Config/DefaultGame.ini
  3. BIN
      Content/Blueprints/BPFL_editor.uasset
  4. BIN
      Content/Blueprints/BPSG_config.uasset
  5. BIN
      Content/Blueprints/BP_bookmark.uasset
  6. BIN
      Content/Blueprints/BP_controller.uasset
  7. BIN
      Content/Blueprints/BP_event.uasset
  8. BIN
      Content/Blueprints/BP_eventSelection.uasset
  9. BIN
      Content/Blueprints/BP_event_ghost.uasset
  10. BIN
      Content/Blueprints/BP_event_gradient.uasset
  11. BIN
      Content/Blueprints/BP_event_manager.uasset
  12. BIN
      Content/Blueprints/BP_lasers.uasset
  13. BIN
      Content/Blueprints/BP_note.uasset
  14. BIN
      Content/Blueprints/BP_wall.uasset
  15. BIN
      Content/Blueprints/VarTypes/StructDifficultyInfos.uasset
  16. BIN
      Content/Blueprints/VarTypes/StructSong.uasset
  17. BIN
      Content/Blueprints/VarTypes/structBeatMapSet.uasset
  18. BIN
      Content/Blueprints/WidgetEditorMenu.uasset
  19. BIN
      Content/Blueprints/WidgetExtraFields.uasset
  20. BIN
      Content/Blueprints/WidgetMapMenu.uasset
  21. BIN
      Content/Blueprints/WidgetSongInfos.uasset
  22. BIN
      Content/Levels/Level_Startup.umap
  23. BIN
      Content/Materials/Events/MI_light_RGB.uasset
  24. BIN
      Content/Materials/Events/MI_light_RGB_ghost.uasset
  25. BIN
      Content/Materials/Events/MI_light_off.uasset
  26. BIN
      Content/Materials/Events/MI_light_on_blue.uasset
  27. BIN
      Content/Materials/Events/MI_light_on_blue_fade.uasset
  28. BIN
      Content/Materials/Events/MI_light_on_blue_flash.uasset
  29. BIN
      Content/Materials/Events/MI_light_on_red.uasset
  30. BIN
      Content/Materials/Events/MI_light_on_red_fade.uasset
  31. BIN
      Content/Materials/Events/MI_light_on_red_flash.uasset
  32. BIN
      Content/Materials/Events/M_light_event.uasset
  33. BIN
      Content/Materials/Events/ghostbluefade.uasset
  34. BIN
      Content/Materials/Events/ghostblueflash.uasset
  35. BIN
      Content/Materials/Events/ghostblueon.uasset
  36. BIN
      Content/Materials/Events/ghostredfade.uasset
  37. BIN
      Content/Materials/Events/ghostredflash.uasset
  38. BIN
      Content/Materials/Events/ghostredon.uasset
  39. BIN
      Content/Materials/MI_boost.uasset
  40. BIN
      Content/Materials/M_CubeNote.uasset
  41. BIN
      Content/Materials/M_CubeNote_red.uasset
  42. BIN
      Content/Materials/M_bomb_ghost.uasset
  43. BIN
      Content/Meshes/Cube.uasset
  44. +28
    -24
      Plugins/eXiSoundVis/Source/eXiSoundVis/Private/AudioDecompressWorker.cpp
  45. +6
    -2
      Plugins/eXiSoundVis/Source/eXiSoundVis/Private/SoundVisComponent.cpp
  46. +3
    -1
      Plugins/eXiSoundVis/Source/eXiSoundVis/eXiSoundVis.Build.cs
  47. +31
    -0
      Source/MediocreMapAssistant2/BPFileIO.cpp
  48. +7
    -1
      Source/MediocreMapAssistant2/BPFileIO.h
  49. +1
    -1
      Source/MediocreMapAssistant2/RenderWaveform.cpp

+ 21
- 4
Config/DefaultEngine.ini View File

@ -114,9 +114,6 @@ SmoothedFrameRateRange=(LowerBound=(Type=Inclusive,Value=22.000000),UpperBound=(
+ActiveGameNameRedirects=(OldGameName="MediocreMapper",NewGameName="MediocreMapAssistant2")
bSmoothFrameRate=True
[/Script/WindowsTargetPlatform.WindowsTargetSettings]
Compiler=VisualStudio2017
[/Script/Engine.CollisionProfile]
-Profiles=(Name="NoCollision",CollisionEnabled=NoCollision,ObjectTypeName="WorldStatic",CustomResponses=((Channel="Visibility",Response=ECR_Ignore),(Channel="Camera",Response=ECR_Ignore)),HelpMessage="No collision",bCanModify=False)
-Profiles=(Name="BlockAll",CollisionEnabled=QueryAndPhysics,ObjectTypeName="WorldStatic",CustomResponses=,HelpMessage="WorldStatic object that blocks all actors by default. All new custom channels will use its own default response. ",bCanModify=False)
@ -188,9 +185,29 @@ Compiler=VisualStudio2017
bGenerateCrashReportSymbols=True
[CrashReportClient]
CrashReportClientVersion=1.0
CrashReportClientVersion=4.7.1
DataRouterUrl="https://o462013.ingest.sentry.io/api/5464708/unreal/40d9818b9fee4b72be61bcd0cc2c5e3b/"
[/Script/WindowsTargetPlatform.WindowsTargetSettings]
Compiler=VisualStudio2017
-TargetedRHIs=PCD3D_SM5
-TargetedRHIs=PCD3D_SM4
+TargetedRHIs=PCD3D_SM5
+TargetedRHIs=PCD3D_SM4
MinimumOSVersion=MSOS_Vista
AudioDevice=
AudioSampleRate=48000
AudioCallbackBufferFrameSize=1024
AudioNumBuffersToEnqueue=1
AudioMaxChannels=0
AudioNumSourceWorkers=4
SpatializationPlugin=
ReverbPlugin=
OcclusionPlugin=
[/Script/Engine.EndUserSettings]
bSendAnonymousUsageDataToEpic=False
[/Script/Engine.PhysicsSettings]
DefaultGravityZ=-980.000000
DefaultTerminalVelocity=4000.000000


+ 4
- 3
Config/DefaultGame.ini View File

@ -3,7 +3,7 @@ ProjectID=F5529D354BF9DDA5B4BC06BB62D10933
bShouldWindowPreserveAspectRatio=False
ProjectName=MediocreMapAssistant2
ProjectDisplayedTitle=NSLOCTEXT("[/Script/EngineSettings]", "A4F171D24A09E6B0C435A39031D526F5", "Mediocre Map Assistant 2")
ProjectVersion=4.6.0
ProjectVersion=4.8.4
[/Script/UnrealEd.ProjectPackagingSettings]
Build=IfProjectHasCode
@ -11,7 +11,7 @@ BuildConfiguration=PPBC_Shipping
StagingDirectory=(Path="E:\\Documents\\Unreal Projects\\MediocreMapper")
FullRebuild=False
ForDistribution=True
IncludeDebugFiles=True
IncludeDebugFiles=False
BlueprintNativizationMethod=Disabled
bIncludeNativizedAssetsInProjectGeneration=False
UsePakFile=True
@ -26,7 +26,7 @@ IncludeAppLocalPrerequisites=False
bShareMaterialShaderCode=False
bSharedMaterialNativeLibraries=False
ApplocalPrerequisitesDirectory=(Path="")
IncludeCrashReporter=True
IncludeCrashReporter=False
InternationalizationPreset=English
-CulturesToStage=en
+CulturesToStage=en
@ -39,3 +39,4 @@ bSkipEditorContent=True
+MapsToCook=(FilePath="/Game/Levels/Level_Startup")
bNativizeBlueprintAssets=False
bNativizeOnlySelectedBlueprints=False

BIN
Content/Blueprints/BPFL_editor.uasset View File


BIN
Content/Blueprints/BPSG_config.uasset View File


BIN
Content/Blueprints/BP_bookmark.uasset View File


BIN
Content/Blueprints/BP_controller.uasset View File


BIN
Content/Blueprints/BP_event.uasset View File


BIN
Content/Blueprints/BP_eventSelection.uasset View File


BIN
Content/Blueprints/BP_event_ghost.uasset View File


BIN
Content/Blueprints/BP_event_gradient.uasset View File


BIN
Content/Blueprints/BP_event_manager.uasset View File


BIN
Content/Blueprints/BP_lasers.uasset View File


BIN
Content/Blueprints/BP_note.uasset View File


BIN
Content/Blueprints/BP_wall.uasset View File


BIN
Content/Blueprints/VarTypes/StructDifficultyInfos.uasset View File


BIN
Content/Blueprints/VarTypes/StructSong.uasset View File


BIN
Content/Blueprints/VarTypes/structBeatMapSet.uasset View File


BIN
Content/Blueprints/WidgetEditorMenu.uasset View File


BIN
Content/Blueprints/WidgetExtraFields.uasset View File


BIN
Content/Blueprints/WidgetMapMenu.uasset View File


BIN
Content/Blueprints/WidgetSongInfos.uasset View File


BIN
Content/Levels/Level_Startup.umap View File


BIN
Content/Materials/Events/MI_light_RGB.uasset View File


BIN
Content/Materials/Events/MI_light_RGB_ghost.uasset View File


BIN
Content/Materials/Events/MI_light_off.uasset View File


BIN
Content/Materials/Events/MI_light_on_blue.uasset View File


BIN
Content/Materials/Events/MI_light_on_blue_fade.uasset View File


BIN
Content/Materials/Events/MI_light_on_blue_flash.uasset View File


BIN
Content/Materials/Events/MI_light_on_red.uasset View File


BIN
Content/Materials/Events/MI_light_on_red_fade.uasset View File


BIN
Content/Materials/Events/MI_light_on_red_flash.uasset View File


BIN
Content/Materials/Events/M_light_event.uasset View File


BIN
Content/Materials/Events/ghostbluefade.uasset View File


BIN
Content/Materials/Events/ghostblueflash.uasset View File


BIN
Content/Materials/Events/ghostblueon.uasset View File


BIN
Content/Materials/Events/ghostredfade.uasset View File


BIN
Content/Materials/Events/ghostredflash.uasset View File


BIN
Content/Materials/Events/ghostredon.uasset View File


BIN
Content/Materials/MI_boost.uasset View File


BIN
Content/Materials/M_CubeNote.uasset View File


BIN
Content/Materials/M_CubeNote_red.uasset View File


BIN
Content/Materials/M_bomb_ghost.uasset View File


BIN
Content/Meshes/Cube.uasset View File


+ 28
- 24
Plugins/eXiSoundVis/Source/eXiSoundVis/Private/AudioDecompressWorker.cpp View File

@ -67,37 +67,41 @@ uint32 FAudioDecompressWorker::Run()
if (AudioInfo != NULL)
{
FSoundQualityInfo QualityInfo = { 0 };
try {
FSoundQualityInfo QualityInfo = { 0 };
// Parse the audio header for the relevant information
if (!(SoundWaveRef->ResourceData))
{
return 0;
}
// Parse the audio header for the relevant information
if (!(SoundWaveRef->ResourceData))
{
return 0;
}
if (AudioInfo->ReadCompressedInfo(SoundWaveRef->ResourceData, SoundWaveRef->ResourceSize, &QualityInfo))
{
FScopeCycleCounterUObject WaveObject(SoundWaveRef);
if (AudioInfo->ReadCompressedInfo(SoundWaveRef->ResourceData, SoundWaveRef->ResourceSize, &QualityInfo))
{
FScopeCycleCounterUObject WaveObject(SoundWaveRef);
// Extract the data
SoundWaveRef->SampleRate = QualityInfo.SampleRate;
SoundWaveRef->NumChannels = QualityInfo.NumChannels;
// Extract the data
SoundWaveRef->SampleRate = QualityInfo.SampleRate;
SoundWaveRef->NumChannels = QualityInfo.NumChannels;
if (QualityInfo.Duration > 0.0f)
{
SoundWaveRef->Duration = QualityInfo.Duration;
}
if (QualityInfo.Duration > 0.0f)
{
SoundWaveRef->Duration = QualityInfo.Duration;
}
const uint32 PCMBufferSize = SoundWaveRef->Duration * SoundWaveRef->SampleRate * SoundWaveRef->NumChannels;
const uint32 PCMBufferSize = SoundWaveRef->Duration * SoundWaveRef->SampleRate * SoundWaveRef->NumChannels;
SoundWaveRef->CachedRealtimeFirstBuffer = new uint8[PCMBufferSize * 2];
SoundWaveRef->CachedRealtimeFirstBuffer = new uint8[PCMBufferSize * 2];
AudioInfo->SeekToTime(0.0f);
AudioInfo->ReadCompressedData(SoundWaveRef->CachedRealtimeFirstBuffer, false, PCMBufferSize * 2);
}
else if (SoundWaveRef->DecompressionType == DTYPE_RealTime || SoundWaveRef->DecompressionType == DTYPE_Native)
{
SoundWaveRef->RemoveAudioResource();
AudioInfo->SeekToTime(0.0f);
AudioInfo->ReadCompressedData(SoundWaveRef->CachedRealtimeFirstBuffer, false, PCMBufferSize * 2);
}
else if (SoundWaveRef->DecompressionType == DTYPE_RealTime || SoundWaveRef->DecompressionType == DTYPE_Native)
{
SoundWaveRef->RemoveAudioResource();
}
} catch (const std::exception&) {
// Yo, bad things happened
}
delete AudioInfo;


+ 6
- 2
Plugins/eXiSoundVis/Source/eXiSoundVis/Private/SoundVisComponent.cpp View File

@ -351,8 +351,12 @@ void USoundVisComponent::Notify_SoundDecompressed()
// ..clear the timer and..
GetWorld()->GetTimerManager().ClearTimer(AudioDecompressTimer);
//..broadcast the result to the Blueprint
OnFileLoadCompleted.Broadcast(FAudioDecompressWorker::Runnable->GetSoundWaveRef());
try {
//..broadcast the result to the Blueprint
OnFileLoadCompleted.Broadcast(FAudioDecompressWorker::Runnable->GetSoundWaveRef());
} catch (const std::exception&) {
// Yo, bad things happened
}
PrintLog(TEXT("Worker finished!"));
}


+ 3
- 1
Plugins/eXiSoundVis/Source/eXiSoundVis/eXiSoundVis.Build.cs View File

@ -5,7 +5,9 @@ public class eXiSoundVis : ModuleRules
{
public eXiSoundVis(ReadOnlyTargetRules Target) : base(Target)
{
PrivateIncludePaths.AddRange(new string[] { "eXiSoundVis/Private" });
this.bEnableExceptions = true;
PrivateIncludePaths.AddRange(new string[] { "eXiSoundVis/Private" });
PublicIncludePaths.AddRange(new string[] { "eXiSoundVis/Public" });
PublicDependencyModuleNames.AddRange(new string[] { "Engine", "Core", "CoreUObject", "InputCore", "RHI", "Kiss_FFT" });


+ 31
- 0
Source/MediocreMapAssistant2/BPFileIO.cpp View File

@ -336,4 +336,35 @@ int UBPFileIO::getFileSize(const FString & File)
int UBPFileIO::getTimestamp(const FString & File)
{
return FPlatformFileManager::Get().GetPlatformFile().GetTimeStamp(*File).ToUnixTimestamp();
}
bool UBPFileIO::SaveStringTextToFile(
FString SaveDirectory,
FString JoyfulFileName,
FString SaveText,
bool AllowOverWriting
) {
if (!FPlatformFileManager::Get().GetPlatformFile().CreateDirectoryTree(*SaveDirectory))
{
//Could not make the specified directory
return false;
//~~~~~~~~~~~~~~~~~~~~~~
}
//get complete file path
SaveDirectory += "\\";
SaveDirectory += JoyfulFileName;
//No over-writing?
if (!AllowOverWriting)
{
//Check if file exists already
if (FPlatformFileManager::Get().GetPlatformFile().FileExists(*SaveDirectory))
{
//no overwriting
return false;
}
}
return FFileHelper::SaveStringToFile(SaveText, *SaveDirectory, FFileHelper::EEncodingOptions::ForceUTF8WithoutBOM);
}

+ 7
- 1
Source/MediocreMapAssistant2/BPFileIO.h View File

@ -55,5 +55,11 @@ class MEDIOCREMAPASSISTANT2_API UBPFileIO : public UBlueprintFunctionLibrary
UFUNCTION(BlueprintCallable, Category = "File IO")
static int getTimestamp(const FString& File);
UFUNCTION(BlueprintCallable, Category = "File IO")
static bool SaveStringTextToFile(
FString SaveDirectory,
FString JoyfulFileName,
FString SaveText,
bool AllowOverWriting);
};

+ 1
- 1
Source/MediocreMapAssistant2/RenderWaveform.cpp View File

@ -220,7 +220,7 @@ void URenderWaveform::BP_RenderWaveform(USoundWave* InSoundWaveRef, UProceduralM
for (size_t j = 0; j < 64; ++j){
float height;
if (valid) height = results[j * 8.f] / 50000.f;
if (valid && results.Num() > (j * 8.f)) height = results[j * 8.f] / 50000.f;
else height = 0;
Vertices[To1D(i, j, SizeX)] = FVector(i, j, height);


Loading…
Cancel
Save