Rama, did you maybe considered creating custom UK2Node classes for all those TMaps and TPairs nodes? it would allow you to make all those nodes more type universal
Announcement
Collapse
No announcement yet.
(39) Rama's Extra Blueprint Nodes for You as a Plugin, No C++ Required!
Collapse
X
-
Three New Nodes From Kris!
Save Image To Disk From Capture Component 2D
Save Image To Disk From Capture Actor
Load Image By Extension
~~~
Note on Using the Save Image Nodes
For the Save Capture Component 2D Image to Disk node, make sure to specify the image format you want by including the appropriate extension, such such as .bmp, .jpg, .png
If you are having trouble getting the image to save, try a different extension
~~~
Save Thumbnails / Snapshots from Capture Components!
Quoting Kris:
"You can see the result in the following picture.
Each of the thumnails are generated via a custom scene capture component, saved and loaded as required:
(Picture is from Kris's project called Ground Branch, http://www.groundbranch.com/ )
I'm passing them into a material to remove the background (green screening) and then using set brush material.
Should save people some time."
~~~
Thanks for the new nodes Kris!
Being able to save screenshots from a CaptureComponent2D in Blueprints is so very useful!
UE4 Wiki, Plugin Download Page
https://wiki.unrealengine.com/File:VictoryPlugin.zip
♥
RamaLast edited by Rama; 02-20-2015, 08:03 PM.UE4 Marketplace: Melee Weapon Plugin & Compressed Binary Save System Plugin | Rama's C++ AI Jumping Videos | Vertex Snap Editor Plugin
♥ Rama
Comment
-
Improved Get Vertex Locations of Static Mesh
Now works in Packaged Games
My C++ Code For You
See my PhysX wiki for the basic build.cs setup:
https://wiki.unrealengine.com/PhysX,...o_Your_Project
Here is the code I wrote to get all of the transformed vertex positions using the Body Instance and PhysX code!
I am doing many safety checks to ensure the Body Instance data is valid before utilizing it, and the result is that now you can get accurate vertex locations in packaged games!
Code://~~~ PhysX ~~~ #include "PhysXIncludes.h" #include "PhysicsPublic.h" //For the ptou conversions //~~~~~~~~~~~ //Get Transformed Vertex positions of any static mesh! -Rama bool UVictoryBPFunctionLibrary::GetStaticMeshVertexLocations(UStaticMeshComponent* Comp, TArray<FVector>& VertexPositions) { if(!Comp || !Comp->IsValidLowLevel()) { return false; } //~~~~~~~~~~~~~~~~~~~~~~~ //Component Transform FTransform RV_Transform = Comp->GetComponentTransform(); //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; } //~~~~~~~~~~~~~~~~ //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; }
UE4 Wiki, Plugin Download Page
https://wiki.unrealengine.com/File:VictoryPlugin.zip
Enjoy!
RamaLast edited by Rama; 02-22-2015, 04:59 PM.UE4 Marketplace: Melee Weapon Plugin & Compressed Binary Save System Plugin | Rama's C++ AI Jumping Videos | Vertex Snap Editor Plugin
♥ Rama
Comment
-
Hey Rama,
thanks for this awesome work. I just downloaded your plugin.
But somehow is the BP GetRenderedActors not working. I thought I could use that one to detect all the actors my player can see. But even if the objects are clearly out of the players field of view, they are still listed as visible.
Am I missunderstanding something here?
Cheers Pascal
Comment
-
Get Rendered Actors
Get Not Rendered Actors!
Originally posted by meiwen View PostHey Rama,
thanks for this awesome work. I just downloaded your plugin.
But somehow is the BP GetRenderedActors not working. I thought I could use that one to detect all the actors my player can see. But even if the objects are clearly out of the players field of view, they are still listed as visible.
Cheers Pascal
Get my latest download and enjoy!
I've tested these node as now working correctly.
They will indeed tell you when actors are not being rendered by the engine, such as when you are facing the other way while in-game
You can use my Get Rendered Actors node to find out the entire set of actors that have components that are currently being rendered by the engine!
~~~
MinRecentTime
You can use MinRecentTime to adjust what qualifies as "Recent enough"
So if you use MinRecentTime = 2, my nodes will return all actors that were rendered within the past 2 seconds.
The default is really small because you generally just want to know which actors are currently being rendered, with no margin for "relatively recent."
~~~
Download (6.5mb)
UE4 Wiki, Plugin Download Page
https://wiki.unrealengine.com/File:VictoryPlugin.zip
Enjoy!
RamaLast edited by Rama; 02-23-2015, 11:45 PM.UE4 Marketplace: Melee Weapon Plugin & Compressed Binary Save System Plugin | Rama's C++ AI Jumping Videos | Vertex Snap Editor Plugin
♥ Rama
Comment
-
Rama,
I have a simple mind. What is the proper way to use Get Rendered Actors or Get Not Renders Actors to cause an event on Character dropping from the screen. Should I use the ForEachLoop into a Contains Item to do boolean logic off my Character being found in Get Not Rendered? Do I need the ForEachLoop?
I'll play around with it tonight, just doing some reading now.
Thanks!
Comment
-
Heyy awaiting release for 4.7Easy to use UMG Mini Map on the UE4 Marketplace.
Forum thread: https://forums.unrealengine.com/show...-Plug-and-Play
Comment
-
Originally posted by John Alcatraz View PostHeyy awaiting release for 4.7
RamaUE4 Marketplace: Melee Weapon Plugin & Compressed Binary Save System Plugin | Rama's C++ AI Jumping Videos | Vertex Snap Editor Plugin
♥ Rama
Comment
-
Victory BP Library is Upgraded to 4.7
Dear Community,
My Victory BP Library plugin is now upgraded to 4.7!
The only substantial change I had to make was for my sound volume node.
Here's the old and the new code.
Code:bool UVictoryBPFunctionLibrary::VictorySoundVolumeChange(USoundClass* SoundClassObject, float NewVolume) { if(!SoundClassObject) { return false; } SoundClassObject->Properties.Volume = NewVolume; return true; /* FAudioDevice* Device = GEngine->GetAudioDevice(); if (!Device || !SoundClassObject) { return false; } bool bFound = Device->SoundClasses.Contains(SoundClassObject); if(bFound) { Device->SetClassVolume(SoundClassObject, NewVolume); return true; } return false; */ /* bool SetBaseSoundMix( class USoundMix* SoundMix ); */ }
Known Issue
Undo/Redo in my Vertex Snap Editor feature is not working correctly in 4.7, if someone investigates this and fixes it let me know!
I will get to it as soon as I can. Rest of Vertex Snap Editor works great in 4.7 !
Rama
PS:
Originally posted by KitatusStudios View PostWoo! Let us know what you get from the store :P
Last edited by Rama; 02-24-2015, 09:07 PM.UE4 Marketplace: Melee Weapon Plugin & Compressed Binary Save System Plugin | Rama's C++ AI Jumping Videos | Vertex Snap Editor Plugin
♥ Rama
Comment
-
Rama, I just installed 4.7 and created your Get Rendered Actors/Not Rendered Actors exactly and I am not seeing any strings being printed to the screen.
Can you double check on your machine that these work on 4.7?
Edit: Nevermind, I reloaded UE4 a second time and now it's working.Last edited by Sanborn; 02-24-2015, 11:22 PM.
Comment
-
Rama, when I try build my project with your plugin for Android I received below error during compilation Rama's Plugin:
Code:[1/3] clang++.exe VictoryBPFunctionLibrary.cpp [armv7-es2] LogPlayLevel: UnrealBuildTool: In file included from E:/Biblioteka/Dokumenty/Unreal Projects/gameDNAstudio/ChasingRobbers/Plugins/VictoryPlugin/Source/VictoryBPLibrary/Private/VictoryBPFunctionLibrary.cpp:12: LogPlayLevel: UnrealBuildTool: In file included from Runtime/Engine/Public\PhysXIncludes.h:19: LogPlayLevel: UnrealBuildTool: In file included from ThirdParty/PhysX/PhysX-3.3/include\PxPhysicsAPI.h:49: LogPlayLevel: UnrealBuildTool: In file included from ThirdParty/PhysX/PhysX-3.3/include/foundation/PxBounds3.h:38: LogPlayLevel: UnrealBuildTool: In file included from ThirdParty/PhysX/PhysX-3.3/include\foundation/PxTransform.h:37: LogPlayLevel: UnrealBuildTool: In file included from ThirdParty/PhysX/PhysX-3.3/include\foundation/PxQuat.h:39: LogPlayLevel: UnrealBuildTool: In file included from ThirdParty/PhysX/PhysX-3.3/include\foundation/PxVec3.h:38: LogPlayLevel: UnrealBuildTool: In file included from ThirdParty/PhysX/PhysX-3.3/include\foundation/PxMath.h:50: LogPlayLevel: UnrealBuildTool: In file included from ThirdParty/PhysX/PhysX-3.3/include\foundation/PxIntrinsics.h:42: LogPlayLevel: UnrealBuildTool: D:\Epic Games\4.7\Engine\Source\ThirdParty\PhysX\PhysX-3.3\include\foundation\unix\PxUnixIntrinsics.h(92,9) : error: use of undeclared identifier 'isfinite'; did you mean 'isFinite'? LogPlayLevel: UnrealBuildTool: return isfinite(a); LogPlayLevel: UnrealBuildTool: ^~~~~~~~ LogPlayLevel: UnrealBuildTool: isFinite LogPlayLevel: UnrealBuildTool: D:\Epic Games\4.7\Engine\Source\ThirdParty\PhysX\PhysX-3.3\include\foundation\unix\PxUnixIntrinsics.h(90,22) : note: 'isFinite' declared here LogPlayLevel: UnrealBuildTool: PX_FORCE_INLINE bool isFinite(float a) LogPlayLevel: UnrealBuildTool: ^ LogPlayLevel: UnrealBuildTool: D:\Epic Games\4.7\Engine\Source\ThirdParty\PhysX\PhysX-3.3\include\foundation\unix\PxUnixIntrinsics.h(98,9) : error: use of undeclared identifier 'isfinite'; did you mean 'isFinite'? LogPlayLevel: UnrealBuildTool: return isfinite(a); LogPlayLevel: UnrealBuildTool: ^~~~~~~~ LogPlayLevel: UnrealBuildTool: isFinite LogPlayLevel: UnrealBuildTool: D:\Epic Games\4.7\Engine\Source\ThirdParty\PhysX\PhysX-3.3\include\foundation\unix\PxUnixIntrinsics.h(90,22) : note: 'isFinite' declared here LogPlayLevel: UnrealBuildTool: PX_FORCE_INLINE bool isFinite(float a) LogPlayLevel: UnrealBuildTool: ^ LogPlayLevel: UnrealBuildTool: 2 errors generated. LogPlayLevel: UnrealBuildTool: -------- End Detailed Actions Stats -----------------------------------------------------------
Comment
-
Originally posted by Rama View PostVictory BP Library is Upgraded to 4.7
Dear Community,
My Victory BP Library plugin is now upgraded to 4.7!
The only substantial change I had to make was for my sound volume node.
Here's the old and the new code.
Code:bool UVictoryBPFunctionLibrary::VictorySoundVolumeChange(USoundClass* SoundClassObject, float NewVolume) { if(!SoundClassObject) { return false; } SoundClassObject->Properties.Volume = NewVolume; return true; /* FAudioDevice* Device = GEngine->GetAudioDevice(); if (!Device || !SoundClassObject) { return false; } bool bFound = Device->SoundClasses.Contains(SoundClassObject); if(bFound) { Device->SetClassVolume(SoundClassObject, NewVolume); return true; } return false; */ /* bool SetBaseSoundMix( class USoundMix* SoundMix ); */ }
Known Issue
Undo/Redo in my Vertex Snap Editor feature is not working correctly in 4.7, if someone investigates this and fixes it let me know!
I will get to it as soon as I can. Rest of Vertex Snap Editor works great in 4.7 !
Rama
PS:
It was too cold out, so I did the 4.7 upgrade instead !
Thanks for your hard work on the plugin Rama! I really enjoy it.
For some reason the plugin does not work on my project in a 4.6.1 to 4.7 upgrade.
It says could not be compiled from source. When I remove the plugin it works without issues. I tried the last three versions of the plugin. Any ideas?
Edit: I'm checking Visual Studio right now.
'SetClassVolume' : is not a member of 'FAudioDevice'
'ULocalPlayer::ControllerId' : cannot access private member declared in class 'ULocalPlayer'
'IgnoreActors' : is not a member of 'FCollisionQueryParams'
error C2228: left of '.Empty' must have class/struct/union
Is the new version on the https://wiki.unrealengine.com/File:VictoryPlugin.zip page?
Thanks!Last edited by Parvan; 02-25-2015, 08:06 PM.
Comment
-
Originally posted by kodmistrz View PostRama, when I try build my project with your plugin for Android I received below error during compilation Rama's Plugin:
Code:[1/3] clang++.exe VictoryBPFunctionLibrary.cpp [armv7-es2] LogPlayLevel: UnrealBuildTool: In file included from E:/Biblioteka/Dokumenty/Unreal Projects/gameDNAstudio/ChasingRobbers/Plugins/VictoryPlugin/Source/VictoryBPLibrary/Private/VictoryBPFunctionLibrary.cpp:12: LogPlayLevel: UnrealBuildTool: In file included from Runtime/Engine/Public\PhysXIncludes.h:19: LogPlayLevel: UnrealBuildTool: In file included from ThirdParty/PhysX/PhysX-3.3/include\PxPhysicsAPI.h:49: LogPlayLevel: UnrealBuildTool: In file included from ThirdParty/PhysX/PhysX-3.3/include/foundation/PxBounds3.h:38: LogPlayLevel: UnrealBuildTool: In file included from ThirdParty/PhysX/PhysX-3.3/include\foundation/PxTransform.h:37: LogPlayLevel: UnrealBuildTool: In file included from ThirdParty/PhysX/PhysX-3.3/include\foundation/PxQuat.h:39: LogPlayLevel: UnrealBuildTool: In file included from ThirdParty/PhysX/PhysX-3.3/include\foundation/PxVec3.h:38: LogPlayLevel: UnrealBuildTool: In file included from ThirdParty/PhysX/PhysX-3.3/include\foundation/PxMath.h:50: LogPlayLevel: UnrealBuildTool: In file included from ThirdParty/PhysX/PhysX-3.3/include\foundation/PxIntrinsics.h:42: LogPlayLevel: UnrealBuildTool: D:\Epic Games\4.7\Engine\Source\ThirdParty\PhysX\PhysX-3.3\include\foundation\unix\PxUnixIntrinsics.h(92,9) : error: use of undeclared identifier 'isfinite'; did you mean 'isFinite'? LogPlayLevel: UnrealBuildTool: return isfinite(a); LogPlayLevel: UnrealBuildTool: ^~~~~~~~ LogPlayLevel: UnrealBuildTool: isFinite LogPlayLevel: UnrealBuildTool: D:\Epic Games\4.7\Engine\Source\ThirdParty\PhysX\PhysX-3.3\include\foundation\unix\PxUnixIntrinsics.h(90,22) : note: 'isFinite' declared here LogPlayLevel: UnrealBuildTool: PX_FORCE_INLINE bool isFinite(float a) LogPlayLevel: UnrealBuildTool: ^ LogPlayLevel: UnrealBuildTool: D:\Epic Games\4.7\Engine\Source\ThirdParty\PhysX\PhysX-3.3\include\foundation\unix\PxUnixIntrinsics.h(98,9) : error: use of undeclared identifier 'isfinite'; did you mean 'isFinite'? LogPlayLevel: UnrealBuildTool: return isfinite(a); LogPlayLevel: UnrealBuildTool: ^~~~~~~~ LogPlayLevel: UnrealBuildTool: isFinite LogPlayLevel: UnrealBuildTool: D:\Epic Games\4.7\Engine\Source\ThirdParty\PhysX\PhysX-3.3\include\foundation\unix\PxUnixIntrinsics.h(90,22) : note: 'isFinite' declared here LogPlayLevel: UnrealBuildTool: PX_FORCE_INLINE bool isFinite(float a) LogPlayLevel: UnrealBuildTool: ^ LogPlayLevel: UnrealBuildTool: 2 errors generated. LogPlayLevel: UnrealBuildTool: -------- End Detailed Actions Stats -----------------------------------------------------------
Here is that quote
Originally posted by Eduard Gotwig View PostYou simply dont ship the binaries (dll) for Android, or iOS, or linux or mac ;P
So i had to rebuild the solution, and compile to the targets (android, ios, etc.) in shipping mode.
Now it works.
Thanks.
Greetings, EdUE4 Marketplace: Melee Weapon Plugin & Compressed Binary Save System Plugin | Rama's C++ AI Jumping Videos | Vertex Snap Editor Plugin
♥ Rama
Comment
Comment