Download

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

Wow Thanks Rama. This is really great. I am trying to export various strings to a file, for example the players x,y,z coordinates every second. I would like to save these to the same file however for each time point for a coordinate to be on a separate line or separate by a character e.g. “;”. Do you know of a simple way to implement this with your SaveStringToFile Node?

I am trying to export this data to statistical software for analysis (for a psychology experiment that I hope to do within the Unreal engine).

Thanks, Eric

Thanks

Rama I figured out how to create an array of all the coordinates and then just save that array to a text file at the end of the play. See the Blueprints below as well as the player path graph that I created in R.

adc6f4e3bbdd90aea4f522147231d2772b2b17d1.jpeg

Hi,
what about plugin support for 4.8?

Hi,

Rama has said (multiple times) that preview builds are not supported.
It’s kinda pointless to update the plugin for every preview release (previews are for testing purposes anyway) :stuck_out_tongue: just wait for the final 4.8 release and I’m sure the plugin will be updated :slight_smile:

Woohoo!

Wow this is really neat grizfb75!

Thanks for sharing your research and BP development with us!

Thanks for the pics!

:heart:

Rama

Packaged Build Upload For You

Dear Community,

I’ve released a 4.7.6 version of my plugin that contains the static lib that is needed for packaged games!

If you’ve had any issues packaging my plugin please try the May 29th 2015 build, which is 7.8mb


**More Info**

For more info, you can see this Answerhub post and my solutiion, as confirmed by the original poster.

**Anserhub**
https://answers.unrealengine.com/questions/234322/project-still-not-packaging-with-plugins-after-add.html#answer-235265

Download Link (7.8mb)

UE4 Wiki, Plugin Download Page

:slight_smile:

Rama

Stupid question, does this plugin auto update through UE4?

Hello Rama, I’m wondering whether or not the Victory Plugin needs these nodes?:

•Round vector to nearest multiple of wildcard, for example: round the x, y, and z’s to nearest multiple of 50.
•Round float to wildcard decimal places.

Maybe once marketplace plugins are released that can happen!

:slight_smile:

Great to hear from you Jamendxman3!

Round vector as you are saying was added by TK-Master! It’s called Grid Snap:

Internal Thread Link to Grid Snap


Being able to round a float to an arbitrary number of decimal places would indeed be useful!

I will work on that node soon as I can :)

Great suggestion!

Rama

Get Static Mesh Vertex Locations Using PhysX

560b4f2b24fb116ffc5c2ddfd4f04754501ad6c2.jpeg


**Works in Packaged Games by using PhysX coding!**

**C++ Source Code For You! ♥ Rama**



```


bool UVictoryBPFunctionLibrary::GetStaticMeshVertexLocations(UStaticMeshComponent* Comp, TArray<FVector>& VertexPositions)
{
	VertexPositions.Empty();
	 
	if(!Comp || !Comp->IsValidLowLevel()) 
	{
		return false;
	}
	
	//Body Setup valid?
	UBodySetup* BodySetup = Comp->GetBodySetup();
	
	if(!BodySetup || !BodySetup->IsValidLowLevel())
	{
		return false;
	}  
	
	//Get the Px Mesh!
	PxTriangleMesh* TriMesh = BodySetup->TriMesh;
	 
	if(!TriMesh) 
	{
		return false;
	}
	//~~~~~~~~~~~~~~~~
	
	//Component Transform
	FTransform RV_Transform = Comp->GetComponentTransform(); 
	
	//Number of vertices
	PxU32 VertexCount 		= TriMesh->getNbVertices();
	
	//Vertex array
	const PxVec3* Vertices 	= TriMesh->getVertices();
	
	//For each vertex, transform the position to match the component Transform 
	for(PxU32 v = 0; v < VertexCount; v++)
	{ 
		VertexPositions.Add(RV_Transform.TransformPosition(P2UVector(Vertices[v])));
	}
	
	return true;
} 


```


Download Link (7.8mb)

UE4 Wiki, Plugin Download Page

:slight_smile:

Rama

Alright, well to save you the trouble, I’ll write you a short piece of code for rounding decimal places so you have to think less:


float FloatForRound = 3.14159265
int DecimalsToKeep = 5

FloatForRound = (int)(FloatForRound * 10^DecimalsToKeep) / 10^DecimalsToKeep

Obviously this doesn’t round to nearest at the end, but you get the point in case you didn’t automatically know what to do.

Made a minimap with your Save Pixels node:

On the Save Pixels node, can you add an output for a texture2d object?

Also, the way your node pulls data from the array does not line up with my data structure. I basically need to be able to rotate it 90 degrees and then flip it horizontally. Would it be possible to add some orientation manipulation capabilities to the node or another node? Basically need the simple rotate options that MS Paint has: Rotate 90 Counter, Rotate 90 Clockwise, Flip Horizontal, and Flip Vertical.

The same options would be useful for your Load Texture nodes as well.

Oh dont worry, I already have the code I need, just have to write the node and update my plugin :slight_smile:

Thanks though!

:slight_smile:

Rama

Oooh nice! Thanks for sharing!

Yes a “rotate image pixels” node sounds like fun, gonna take me a bit of time to do it, but it’s a great idea!

:slight_smile:

Rama

100+ Extra BP Nodes For You!

No c++ required!

No compile required!

Download and plug in!

**Latest plugin download is here: (about 8 mb) **

:slight_smile:

Rama

Rama I call on your superpowers for blueprint nodes to ask for a node I think would be very useful (I’ve been trying to do it myself but I’m just not good enough with c++ yet) Download image from url to either save to file or output Texture2D (or both) It would help me very much in a project.
And btw thank you for your awesome plugin I’ve been using it a lot ^^

wow that’s quite the request! I’m gonna process some of my other node requests and get to that one soon as I can :slight_smile:

Rama

Get Float As String With Precision Using Epic’s FText Helpers

8972b9ac2a0bda258dccf2e561750858aa4c6454.jpeg

Dear Community,

I’ve updated my Get Float As String With Precision node to

  1. Be pure (no exec chain)

  2. Utilize Epic’s FText C++ code to leverage all of their hard work on float decimal precision.

  3. Add bool to make the leading 0 optional, so 0.5 could be shown as 0.5 or .5 depending on your preferences!

Yay!


**My C++ Code For You!**

Here's how it works in C++ !



```


void UVictoryBPFunctionLibrary::StringConversion__GetFloatAsStringWithPrecision(float TheFloat, FString & FloatString, uint8 Precision, bool IncludeLeadingZero)
{ 
	FNumberFormattingOptions NumberFormat;					//Text.h
	NumberFormat.MinimumIntegralDigits = **(IncludeLeadingZero) ? 1 : 0;**
	NumberFormat.MaximumIntegralDigits = 10000;
	NumberFormat.MinimumFractionalDigits = **Precision;**
	NumberFormat.MaximumFractionalDigits = **Precision; **
	FloatString = FText::AsNumber(**TheFloat**, &NumberFormat).ToString();
}


```



**Latest plugin download is here: (about 8 mb) **

Enjoy!

:slight_smile:

Rama

Hi Rama,

Thanks a lot for your Lib. It’s great.
I have an issue with Capture 2D Save Image. I have an access violation in msvcr120.dll
I tried to stop capture every frame, add a boolean to prevent multiple save, but no way. Sometimes, it’s work but no always.

f04a75f1d55ac3c3cb06b7b3004ac5c359d63a46.png

This will save me some effort and BP space, thanks!