Announcement

Collapse
No announcement yet.

Plugin Object Pool Component

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • replied
    Excellent, thank you. How to enable the animation update tick after getting character from pool? I cant seem to find the right setting. Characters are listen in AB debug, but there is no tick. Using UE4.15.

    Edit: Nevermind, now found it. Needed to activate mesh. Used toggle activation and that was wrong.
    Last edited by SaOk; 02-27-2017, 06:52 PM.

    Leave a comment:


  • replied
    1.1 with support for Characters and Pawns (with or without Skeletal Meshes) is now live on Marketplace.

    Leave a comment:


  • replied
    Originally posted by Galeon View Post
    Hi Bruno Xavier

    Your plugin should be usefull for open world maps.
    Does it works with any characters BP, for example i have BP AI controlled characters including Behaviour Trees, does your plugin works also in that case ?
    Yes, any blueprint child of ACharacter class can be pooled (when I submit the 1.1 update).
    All you have to do is, like in the guides above in OP, reparent the base Blueprint Asset of your Character class to APooledCharacter instead of being a child of plain ACharacter;
    That will not change anything in your code and everything will keep on working as usual in your Character like it was a direct child of plain ACharacter, but now with automatic pooling support.

    Leave a comment:


  • replied
    Originally posted by BrUnO XaVIeR View Post
    1: Right now it will not pool AWheeledVehicle class, but since it is a sub-class of Pawn, would take a few minutes to add now that Pawns are already supported.


    2: Whatever you need to pool, at the moment must be a child of APooledXX classes; so if you have a blueprint that is child of any built-in in-engine class that cannot be pooled because it inherits the engine directly.
    Right now anything child of AActor, APawn, ACharacter, they can be pooled fine: but if you have an engine class in the middle (such as AWheeledVehicle) the engine breaks the class inheritance; so best way to avoid problems for now is converting base AActor, APawn or ACharacter blueprints which can be converted to APooled one without breaking the game.


    3: The pooling mechanism is not replicated for now; developers have to replicate it manually on multiplayer games, but I may change this in the near future once the core functionality is stabilished.
    Hi Bruno Xavier

    Your plugin should be usefull for open world maps.
    Does it works with any characters BP, for example i have BP AI controlled characters including Behaviour Trees, does your plugin works also in that case ?

    Leave a comment:


  • replied
    Originally posted by HeadClot View Post
    Hey got a few questions -
    But first some background of the project.

    I am currently working on a RTS that has a fair few amount of Skeletal Meshes and actors on screen at once.
    Roughly 100 to 250 skeletal meshes max per player with up to 5 Players per side with up to 2 sides. I plan on making heavy use of this plugin.

    Now here goes my questions -

    1. Does this work with the built in BP based vehicle class?
    2. I want to pool of various stats (Health, Armor, Morale, etc.) for of groups infantry and Vehicles. Is there any particular recommended way to handle this?
    3. Does this work with multiplayer?
    1: Right now it will not pool AWheeledVehicle class, but since it is a sub-class of Pawn, would take a few minutes to add now that Pawns are already supported.


    2: Whatever you need to pool, at the moment must be a child of APooledXX classes; so if you have a blueprint that is child of any built-in in-engine class that cannot be pooled because it inherits the engine directly.
    Right now anything child of AActor, APawn, ACharacter, they can be pooled fine: but if you have an engine class in the middle (such as AWheeledVehicle) the engine breaks the class inheritance; so best way to avoid problems for now is converting base AActor, APawn or ACharacter blueprints which can be converted to APooled one without breaking the game.


    3: The pooling mechanism is not replicated for now; developers have to replicate it manually on multiplayer games, but I may change this in the near future once the core functionality is stabilished.
    Last edited by BrUnO XaVIeR; 02-21-2017, 08:16 AM.

    Leave a comment:


  • replied
    Originally posted by btengelh View Post
    Does it work with particle effects?
    Yes, you just have to manually activate/deactivate the particle emitter on your Actor's "On Pool Begin Play" and "On Pool End Play" events.

    Leave a comment:


  • replied
    Does it work with particle effects?

    Leave a comment:


  • replied
    Hey got a few questions -
    But first some background of the project.

    I am currently working on a RTS that has a fair few amount of Skeletal Meshes and actors on screen at once.
    Roughly 100 to 250 skeletal meshes max per player with up to 5 Players per side with up to 2 sides. I plan on making heavy use of this plugin.

    Now here goes my questions -

    1. Does this work with the built in BP based vehicle class?
    2. I want to pool of various stats (Health, Armor, Morale, etc.) for of groups infantry and Vehicles. Is there any particular recommended way to handle this?
    3. Does this work with multiplayer?
    Last edited by HeadClot; 02-21-2017, 01:00 AM.

    Leave a comment:


  • replied
    Originally posted by motorsep View Post
    This is on my to-buy list

    I wonder why not to make it multithreaded. It could boost performance even further.
    UObject cannot be threaded.

    Leave a comment:


  • replied
    This is on my to-buy list

    I wonder why not to make it multithreaded. It could boost performance even further.

    Leave a comment:


  • replied
    I have re-worked and optimized today the "Instantiate on Demand" function of the Pool;
    And have added support for Pawn and skeletal Character classes to be pooled, this needs more testing. After more stability and stress tests I send 1.1 version over to Epic for an update somewhere at the end of this next week.



    Edit:

    Looks like they are ready (reds are pawns and cyan are skeletal characters);
    Just some more tweaking and more testing to go

    Leave a comment:


  • replied
    Great to hear that character support is also in plans. Have used own system for that, but this plugin makes it much more simple and manageable.

    Leave a comment:


  • replied
    1.0.1 for UE 4.15 have been submitted to Epic Marketplace Team.

    Leave a comment:


  • replied
    Thanks Bruno, I was just wondering if you implemented something for this case.
    I wondered because I can not tell if a pool of e.g. 1k is enough for projectiles in all cases. Players would be upset if their headshot is projectile #1001 and won't get spawned because the pool is full That's why I asked.
    Last edited by Ben_Cykyria; 02-13-2017, 12:55 PM. Reason: there/their -.-

    Leave a comment:


  • replied
    Originally posted by btengelh View Post
    What happens if I have to spawn more actors then the pool size? will the pool size increase dynamically?
    Doing that will defeat the concept of object pool.
    There's an option in Project Settings to enable this, but doing so you will fire SpawnActor<>() function and break the "pooling" cycle; for this reason I have not invested too much on this functionality, depending on what you do it will not work as expected.

    This second option, it's left disabled by default:

    Leave a comment:

Working...
X