Announcement

Collapse
No announcement yet.

Plugin Object Pool Component

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

    BrUnO XaVIeR any plans to make this plugin network replicated ?

    Comment


      Networked pooling is not a good idea.
      Maybe on a v2, making use of replication graph, but replicating each pool component is terrible.

      Replication graph didn't exist back then, I have to make tests using it, but this year I am out of any free time to do it.
      | Savior | USQLite | FSM | Object Pool | Sound Occlusion | Property Transfer | Magic Nodes | MORE |

      Comment


        BrUnO XaVIeR
        Questions:

        1. If my AI is network replicated and I spawn them using your pool system. My AI should appear in multiplayer. Which part of the system won't work in multiplayer?

        2. In the screenshot below, I have a master AI character pool class and it has 4 child characters. How can I do this with one pool component (Master Zombie AI) added to BP_Spawner without creating individual pool component for all 4 children.

        Click image for larger version  Name:	Capture.PNG Views:	0 Size:	252.4 KB ID:	1777536

        Comment


          The Spawn from Pool --> Return to Pool mechanism is not networked. You would have to RPC every time your pawn is set active by the pool in Server.

          Also the pool component doesn't control networked traffic.
          For example if you have a pool of 100 pooled projectiles, that's 100 actors replicating in your network traffic and that's horrible.

          Networked pooling should disable all traffic for actors in pool that is not active.
          | Savior | USQLite | FSM | Object Pool | Sound Occlusion | Property Transfer | Magic Nodes | MORE |

          Comment


            Originally posted by BrUnO XaVIeR View Post
            Networked pooling is not a good idea.
            How do people work with projectiles in multiplayer shooters? They have to be pooled somehow..

            Comment


              projectiles spawn and are destroyed on collision.. if it's hitscan bullet then there's no projectile, just a hit message to clients.
              | Savior | USQLite | FSM | Object Pool | Sound Occlusion | Property Transfer | Magic Nodes | MORE |

              Comment


                Originally posted by BrUnO XaVIeR View Post
                projectiles spawn and are destroyed on collision.. if it's hitscan bullet then there's no projectile, just a hit message to clients.
                I doubt that's how they do it, because when you spawn/destroy bunch of actors GC chokes on it and performance degrades momentarily.

                Comment


                  BrUnO XaVIeR You didn't answer my second question with the screenshot. Can you help me with that please?

                  Comment


                    You have a shared pool component for that.
                    The shared pool supports multiple classes.

                    But shared pools are for AActors, characters not implemented.
                    | Savior | USQLite | FSM | Object Pool | Sound Occlusion | Property Transfer | Magic Nodes | MORE |

                    Comment


                      BrUnO XaVIeR

                      Finally got around to download the plugin, yet again Copied "ObjectPool" folder from launcher's engine to my project's Plugin folder. Deleted Binary and Intermediate folder. Ran my custom source build of UE4 and loaded my project. Got the following (as expected):

                      Click image for larger version

Name:	UE4_ObjectPool_plugin01.png
Views:	77
Size:	4.9 KB
ID:	1777884











                      I pressed Yes:

                      Click image for larger version

Name:	UE4_ObjectPool_plugin02.png
Views:	47
Size:	6.9 KB
ID:	1777885
















                      Yes again and it got compiled (showed up in Plugins, etc.)

                      After I closed UE4 and then restarted it (reopened my project), I got this again:

                      Click image for larger version

Name:	UE4_ObjectPool_plugin03.png
Views:	44
Size:	4.8 KB
ID:	1777886











                      Output log window showed this (in yellow): LogTemp: Warning: :: Initializing Object-Pool Plugin.

                      When I go to Plugins, plugin is there and enabled. When I right click in the Content browser, I see respective classes. I assume it's going to be working, but it's annoying to get the popup window every time I load my project.

                      Why is this happening and can it be fixed, please ? (if you can tell me what to tweak in the code and where, I can just probably follow the instructions to fix it locally).

                      Comment


                        4.24 plugin will not work on engine other than Unreal 4.24.
                        If you have 4.25 project you have to download plugin for Unreal 4.25.

                        Also if you want to move source to project folder then you have to uninstall the plug-in installed on launcher.
                        | Savior | USQLite | FSM | Object Pool | Sound Occlusion | Property Transfer | Magic Nodes | MORE |

                        Comment


                          Originally posted by BrUnO XaVIeR View Post
                          4.24 plugin will not work on engine other than Unreal 4.24.
                          If you have 4.25 project you have to download plugin for Unreal 4.25.

                          Also if you want to move source to project folder then you have to uninstall the plug-in installed on launcher.
                          I am using plugin from 4.24.3 launcher on 4.24.3 Oculus fork (source built). Shouldn't be any incompatibilities, since I also use other plugins the same way and get no pop-up warning on launch.

                          Why would I have to uninstall launcher version of plugin when source built engine is on a different HDD and in a different folder than the launcher version ?

                          Comment


                            To avoid possible conflicts.
                            | Savior | USQLite | FSM | Object Pool | Sound Occlusion | Property Transfer | Magic Nodes | MORE |

                            Comment


                              Originally posted by BrUnO XaVIeR View Post
                              To avoid possible conflicts.
                              I'll do that, but if I still get this pop-up, then what's the next step ?

                              Comment


                                Originally posted by motorsep View Post

                                I'll do that, but if I still get this pop-up, then what's the next step ?
                                I would then assume it's a bug in Unreal, that popup shouldn't happen when binaries already exist (I ve never seen that happen by the way).
                                | Savior | USQLite | FSM | Object Pool | Sound Occlusion | Property Transfer | Magic Nodes | MORE |

                                Comment

                                Working...
                                X