(39) Rama's Extra Blueprint Nodes for You as a Plugin, No C++ Required!

Good to know thank you, I will investigate!

Do you have a specific question, what sort of manual did you have in mind?

:heart:

Rama

Hi, I have question regarding the SaveArrayToFile, is there an example of how to format it as row and column for csv file?

@Rama Looks like my UE5 release prediction was pretty spot on :smiley:

I’m trying to get a copy of our project working in UE5 Preview. So far I’ve gotten most of the levels to open fine, but if I try opening any blueprints (or even create a new blueprint > actor from scratch) I get this crash immediately:

Assertion failed: NewOperatorInputA [File:D:\build\++UE5\Sync\Engine\Source\Editor\BlueprintGraph\Private\K2Node_CommutativeAssociativeBinaryOperator.cpp] [Line: 281] (the line is: check(NewOperatorInputA);

I searched online for “K2Node_CommutativeAssociativeBinaryOperator.cpp” and saw a few references to the Victory plugin, hence why I’m posting it here (I realize it’s an engine file, but from my search results of other people having an error with this cpp file, they mentioned the victory plugin)

I know UE5 Preview literally JUST came out today, so I’m not expecting an immediate update, just thought I’d post this here in case it’s useful :slight_smile:

UPDATE: Fixed it!! It was the “Append Multiple” node that I found was added to one of our widgets that was causing the crash in the UE5 Preview project :slight_smile: (now replaced with the regular append node).

2 Likes

Hi. I started using the Victory plugin for getting RGB data from a texture.
I downloaded and installed the “Lemur_hotel” version, which is the only compiled version I could find, because www.ue4code.com is dead and github does not
I’m using UE4.27 on Win64
I tried the node GetPixelFromT2D to get pixels from a texture, but it returns only zero RGBA and the deprecation message “This function will not work until I figure out how to update it to 4.25, if you need it urgently, please post in my ue4 forum thread for this plugin”
Is there a fix for 4.27?

Chris

In fact all T2D functions either don’t work or crash ue4.27
I need to get the pixels coming from a video input texture, so loading from a file (the only thing that works) is not an option…

This is the crash report I get when calling VictoryGetPixelsArrayFromT2D blueprint with a 1024x1024 texture in VectorDisplacementMap mode
The plugin is installed in the project plugin folder, not in the engine plugins.

Unhandled Exception: EXCEPTION_ACCESS_VIOLATION reading address 0x0000000000000002

UE4Editor_VictoryBPLibrary!UVictoryBPFunctionLibrary::Victory_GetPixelsArrayFromT2D() [X:\Workspaces\V360_Services\Framework\Plugins\VictoryPlugin27\Source\VictoryBPLibrary\Private\VictoryBPFunctionLibrary.cpp:4622]
UE4Editor_VictoryBPLibrary!UVictoryBPFunctionLibrary::execVictory_GetPixelsArrayFromT2D() [X:\Workspaces\V360_Services\Framework\Plugins\VictoryPlugin27\Intermediate\Build\Win64\UE4Editor\Inc\VictoryBPLibrary\VictoryBPFunctionLibrary.gen.cpp:1270]

Hi there! @TheChrisVDB welcome to the UE4 Forums!

The solution to your issue is here:

Same logic applies to the UE4 version (you don’t have to upgrade to UE5, just set your T2Ds to no mip maps and use vectordisplacement, this results in no compression of your texture, so you have a 1 to 1 pixel ratio between your original file and the UE4 file, annnnnd, no crash :heart:

:heart:

Rama

Each array line = 1 row
Each comma = 1 column

so if your csv file looks like

Name, Favorite Flower, Favorite Color

Name,Favorite Flower,Favorite Color
You,Tulip,Yellow
Me,Rose,HotPink
Sjoerd,StrawberryFlower,Red

then each of your String array entries should have 2 commas, and each array entry represents 1 row, you should include Column labels as your array 0 entry.

Don’t add line terminators in your UE4 string array, I add the line terminator in the C++ for you!

FString FinalStr = "";
for(FString& Each : SaveText)
{
	FinalStr += Each;
	FinalStr += LINE_TERMINATOR;
}

:heart:

Rama

I try to use Victory create proc on UE4.7 but the input argument line is not written to the command line windows and the process hold the empty command line window
could anybody give me some instruction

image

Removing all victoryBP nodes from my project and disabling the plugin corrupts a bunch of my blueprint files…

Enabling the plugin again fixes it.

I can’t package my project because of an error with the plugin, that i’m not even using, which if disabled and removed, breaks my project…

Do I just need to start a new project and start over?

1 Like

Hey, first thanks for this, Amazing Plugin!, 2, i try to Load Textfiles, and looks like all, Ä,Ö,Ü are replaced by “?”, but on the node is " it supports Unicode characters" ?

I have been facing this issue to deploy on Quest.
I checked the adb log and it says : Failed to load ‘Apex Destruction plugin’.

I am confused with this part as there is a filter for APEX EXCLUSION in Build.cs:

if (Target.Platform != UnrealTargetPlatform.Android && Target.Platform != UnrealTargetPlatform.IOS)

But it still tries to load the ApexDestruction plugin.

I also set the flag for plugin to false in uplugin file. The app loads but it is stuck at loading screen.

Please help if someone can provide any pointers on this issue.

EDIT:

Here is the portion of the adb log:

03-22 23:51:57.468  1871  1943 D UE4     : LogInit: Display: Loading text-based GConfig....
03-22 23:51:57.537  1871  1943 D UE4     : LogPluginManager: Error: Unable to load plugin 'ApexDestruction'. Aborting.
03-22 23:51:57.581  1871  1943 D UE4     : Assertion failed: false [File:D:/Build/++UE4/Sync/Engine/Source/Runtime/Launch/Private/Android/LaunchAndroid.cpp] [Line: 479] 
03-22 23:51:57.581  1871  1943 D UE4     : Engine Preinit Failed
03-22 23:51:57.581  1871  1943 D UE4     : Assertion failed: false [File:D:/Build/++UE4/Sync/Engine/Source/Runtime/Launch/Private/Android/LaunchAndroid.cpp] [Line: 479] 
03-22 23:51:57.581  1871  1943 D UE4     : Engine Preinit Failed
03-22 23:51:57.581  1871  1943 D UE4     : LogAndroid: Error: === Critical error: ===
03-22 23:51:57.581  1871  1943 D UE4     : LogAndroid: Error: 
03-22 23:51:57.581  1871  1943 D UE4     : LogAndroid: Error: Assertion failed: false [File:D:/Build/++UE4/Sync/Engine/Source/Runtime/Launch/Private/Android/LaunchAndroid.cpp] [Line: 479] 
03-22 23:51:57.581  1871  1943 D UE4     : LogAndroid: Error: Engine Preinit Failed
03-22 23:51:57.581  1871  1943 D UE4     : LogAndroid: Error: [Callstack] 0x00000000C2DC6B74 libUE4.so(0x0000000005FC2B74)!AndroidMain(android_app*)  []
03-22 23:51:57.581  1871  1943 D UE4     : LogAndroid: Error: [Callstack] 0x00000000C2DDA35C libUE4.so(0x0000000005FD635C)!android_main()  []
03-22 23:51:57.581  1871  1943 D UE4     : LogAndroid: Error: [Callstack] 0x00000000C2E10910 libUE4.so(0x000000000600C910)![Unknown]()  []
03-22 23:51:57.581  1871  1943 D UE4     : LogAndroid: Error: [Callstack] 0x00000000F411C6D6 libc.so(0x000000000009A6D6)![Unknown]()  []
03-22 23:51:57.581  1871  1943 D UE4     : LogAndroid: Error: [Callstack] 0x00000000F40E1278 libc.so(0x000000000005F278)![Unknown]()  []

Did you check my version of the plugin I uploaded for Quest? Google Drive: Sign-in

1 Like

I have downloaded the plugin from the Drive link you have shared before for Android:

I am not sure about the one you have linked now: It say ‘You need access’.

It is the same one

Currently I am facing the above error: unable to load ‘ApexDestruction’ plugin.

I found an older post here which described that error occured since the plugin is placed in Project folder and not Engine folder.

I also tried enabling the ApexDestruction plugin (even though my project does not use it).
That error no longer occurs but I am struck at a loading screen.

I’m also facing the same above error regarding the ApexDestruction plugin. I’m not using it in my project at all, but I can’t disable it because VictoryPlugin apparently requires it.

Someone got this Plugin working for Unreal Engine 5.0.1?

anyone had this issue with 4.27 version? is this class deprecated/removed from this version?

How to Get Animated Vertex Positions(skeleton mesh) through blueprint are C++.

USkeletalMeshComponent* Mesh,
TArray& Locations,
bool PerformPawnVelocityCorrection
){
if(!Mesh || !Mesh->SkeletalMesh)
{
return false;
}

//~~~~~~~~~~~~~
Locations.Empty(); 
//~~~~~~~~~~~~~
 
Mesh->ComputeSkinnedPositions(Locations);

FTransform ToWorld = Mesh->GetComponentTransform();
FVector WorldLocation = ToWorld.GetLocation();

//Pawn Velocity Correction
UPawnMovementComponent* MovementComp = nullptr;
if(PerformPawnVelocityCorrection)
{
	APawn* Pawn = Cast<APawn>(Mesh->GetOwner());
	MovementComp = (Pawn) ? Pawn->GetMovementComponent() : NULL;
}
bool DoVelocityCorrection = PerformPawnVelocityCorrection && MovementComp;
//Pawn Velocity Correction
 
for(FVector& EachVertex : Locations)
{
	EachVertex = WorldLocation + ToWorld.TransformVector(EachVertex);
	if(DoVelocityCorrection)
	{
		EachVertex += MovementComp->Velocity * FApp::GetDeltaTime();
	} 
} 

return true;

}

With This, I am unable to create node giving some issues and Which part go to where like .H Are .Cpp

Any one can help on this if you have idea.

Regaridng APEX

I will make a non-APEX version soon!

:sparkling_heart: Victory Plugin for UE5 :sparkling_heart:

Here you go!

:heart:

Rama

1 Like