Did you try hierarchical static mesh instancing for this?
https://docs.unrealengine.com/latest/INT/Videos/PLZlv_N0_O1ga0aV9jVqJgog0VWz1cLL5f/bOjYP-c4qhA/
I possibly went on a bit of a wild goose chase there following your comment on HISMās - but iām right in thinking it only replicates a single mesh right, the same as a regular ISM? I have about 200 different meshes for my ascii character set. Iām still thinking of using actors instead of SM components so I can use your pool system.
You can attach one ISM Component for each letter mesh then instantiate them as needed.
Iām not sure if nowadays they force you to instantiate only the one main static mesh component of an Actor, but back then when I tested it I was able to use different mesh components per ISM Components inside the Blueprint Actor and instantiate them through Blueprint Nodes separately.
After removing character pool component from ālevel placedā-blueprint (it holds all pools to be spawned with the node), editor wont load the project/level anymore. Until I renamed the blueprint.
Was getting this error in log:
[2017.10.20-22.57.55:326] 0]LogWindows: Error: Fatal error: [File:D:\Build++UE4+Release-4.17+Compile\Sync\Engine\Source\Runtime\CoreUObject\Private\UObject\LinkerLoad.cpp] [Line: 2277]
[2017.10.20-22.57.55:326] 0]LogWindows: Error: Failed import: ArmPoolNewComp_C ArmPoolNewComp_C /Game/AAObjectPools/UnitPoolStorageBP.UnitPoolStorageBP_C:ArmPoolNewComp_GEN_VARIABLE (file B:/WarProject17/Content/AAObjectPools/UnitPoolStorageBP.uasset)
When delete any asset in level, replace references then clean redirectors.
This isnāt just for pool actors, its safety procedure for anything you delete which is referred by other actors.
Never click the āForce Deleteā button unless youāre pretty sure about it.
Latest version updated to UE4.18 and submitted to Marketplace team for review.
Was there any change in code?
Launcher says update is available for 4.18, but couldnāt download it (because of Launcher bug). So I just bumped up the engine version and compiled it with the rest of stuff.
Should I download an update later? Anything changed in 4.18 version?
I usually program with old versions and github āliveā versions of the engine in mind, so if you can recompile binaries yourself, most of the time, the plugin just works unless theyāve made a major engine change.
In the case of 4.16, 4.17 and 4.18, the plugin is pretty much the same code. You can compile binaries from 4.17 to use on 4.18, no problems there.
Hi . Loving the performance gains with your plugin but am encountering a very annoying and possibly detrimental bug.
I essentially canāt delete your āspawn actor from pool nodeā from my weapon blueprint class (4.17)
Whenever I try and unplug the pool reference, it crashes unreal every time, so I basically canāt remove the node and just have to unplug it and put it aside in my blueprint and duplicate a new one. Picture attached.
Also, I couldnāt figure out how to set many child classes for the node, so I just made a separate pool component with each child projectile template - Is this the correct workflow, or is there some way to avoid doing this? Finally, is there a way to set the velocity for when it bounces? Before I was dividing velocity by 5 but that isnāt an exposed option for the pooled projectile parent class.
Thanks!
-DSP
Sorry to double post - but Iāve confirmed that I simply canāt delete or plug into your node at all for some reason - Instant crash every time. Iām thinking to revert the blueprint and try again fresh, but Iām not too thrilled at the possibility of this being a recurring problem. Any ideas?
Can you send me a copy of the Blueprint uasset file?
Try delete the pool component and recompile the Blueprint then delete the node.
Edit:
I have never experienced this problem, but apparently this is a common (often reported) issue for Blueprint developers:
Today Iāve added support for āHoming Projectileā on Pooled Projectile Component, as requested. (for UE4.18+ Engine)
You can either set an Actor as target and its Root Component is used by the plugin, or you can as usual set the Homing Component manually on your Blueprints:
I ended up loading a backup and redoing it - worked fine without further problems. I did however have to give up using this after several hours of trying to get attachments to work properly.
With my projectiles, I just use the āattach actor to actorā node and it would āstickā no problem using a regular projectile component, but with your pooled projectile component it would stop in X and Y but fall downwards on the Z axis through the map.
I tried changing the update component, different attachment methods, stopping movement, deactivating various things to no avail.
I did confirm they were technically being attached successfully because when I destroy the hit actor the code that sends attached projectiles back to the pool works no problem.
Itās the main thing keeping me from implementing this fully - am I missing something obvious?
-DSP
Are you using gravity enabled on projectiles?
Did you try to disable gravity on them?
It seems the āOnProjectileBounceā and āOnProjectileStopā events are unavailable when using the PooledProjectile vs Epicās default ProjectileMovement.
Also the āVelocityā parameter seems to be missing as well. I use a system where bullets can ricochet but these options donāt seem to be available, can I
just pool the bullets using epicās ProjectileMovement instead?
The default projectile component only work on spawn. That means you canāt reuse them, youāre forced to instantiate new bullet actors every time gun shoot so they just canāt be pooled.
I will add Blueprint node to get in runtime the generated (default) bullet component so you can use the events not available in pool component.
āāāāā
Velocity is ādirectionā vector.
Youāll be able to subscribe to the stop and bounce events of a Pooled Projectile Component without getting the generated base projectile in runtime; Iāve added this to the 1.4.0 version for UE4.18.
Once Marketplace team decides to apply the updates pending then itās going to be there:
Thank you kind sir, I am not as familiar as I should be with the engine source, it would have taken me a good while to implement that myself. I figured pooling bullet projectiles is a must if the server is handling 10+ players. I will try to post a tutorial for everyone about using this plugin with ballistics replication when I have time,
I have a question for anyone who has used this component and can help.
Is it possible to use the pooledprojectilemovement and tie into regular projectilemovement functions?
I noticed a node āGet projectile movementā which seems to be possible but spawning fails for some reason.
Was the system meant to be used this way as in the pic? Sorry if a noobish question lolā¦
I am also trying to spawn pooledobject from within another component so that might be the issue instead?
Thanks,
If you call āReturn to Poolā on the projectileās owner it does what youāre trying to do there.
Unless you need to stop the projectile and leave it in the scene, then not sure what you want in this case.