void USoundWave::PostEditChangeProperty(FPropertyChangedEvent& PropertyChangedEvent) { Super::PostEditChangeProperty(PropertyChangedEvent); static FName CompressionQualityFName = FName( TEXT( "CompressionQuality" ) ); static FName StreamingFName = GET_MEMBER_NAME_CHECKED(USoundWave, bStreaming); // Prevent constant re-compression of SoundWave while properties are being changed interactively if (PropertyChangedEvent.ChangeType != EPropertyChangeType::Interactive) { UProperty* PropertyThatChanged = PropertyChangedEvent.Property; // Regenerate on save any compressed sound formats if ( PropertyThatChanged && PropertyThatChanged->GetFName() == CompressionQualityFName ) { InvalidateCompressedData(); FreeResources(); UpdatePlatformData(); MarkPackageDirty(); } else if (PropertyThatChanged && PropertyThatChanged->GetFName() == StreamingFName) { FreeResources(); UpdatePlatformData(); MarkPackageDirty(); } } }
void USoundWave::PostInitProperties() { Super::PostInitProperties(); if(!IsTemplate()) { InvalidateCompressedData(); } }
void USoundWave::PostInitProperties() { Super::PostInitProperties(); if(!IsTemplate()) { InvalidateCompressedData(); } #if WITH_EDITORONLY_DATA if (!HasAnyFlags(RF_ClassDefaultObject)) { AssetImportData = NewObject<UAssetImportData>(this, TEXT("AssetImportData")); } #endif }