x

Search in
Sort by:

Question Status:

Search help

  • Simple searches use one or more words. Separate the words with spaces (cat dog) to search cat,dog or both. Separate the words with plus signs (cat +dog) to search for items that may contain cat but must contain dog.
  • You can further refine your search on the search results page, where you can search by keywords, author, topic. These can be combined with each other. Examples
    • cat dog --matches anything with cat,dog or both
    • cat +dog --searches for cat +dog where dog is a mandatory term
    • cat -dog -- searches for cat excluding any result containing dog
    • [cats] —will restrict your search to results with topic named "cats"
    • [cats] [dogs] —will restrict your search to results with both topics, "cats", and "dogs"

Actor Component replication vs Indivisual actor replication

Hello everyone...

I want to know which type of replication is more efficient.

Replicating a variable present inside and actor or replicating a variable present inside an actor component.

According to the component replication page

Bandwidth Overhead

The overhead for component replication is relatively low. Each component within an Actor that replicates will add an additional NetGUID (4 bytes) 'header' and an approximately 1 byte 'footer' along with its properties. CPU wise, there should be minimal difference between replicating a property on an Actor vs replicating on a component.

I will make my some of my systems as actors instead of actor components depending upon this. So it will be helpful is some one can point it out.

Product Version: Not Selected
Tags:
more ▼

asked Mar 14 '15 at 04:38 AM in C++ Programming

avatar image

envenger
418 77 117 146

(comments are locked)
10|2000 characters needed characters left
Viewable by all users

1 answer: sort voted first

On the actor is more efficient. That bit about the overhead says it all.

If you have a 4 byte variable on your actor, it only costs the 4 bytes. If, however, you also replicate a component and have the variable on that instead, it costs the replication of the component (a few bytes) + the variable (4 bytes in this example). Having it on the actor will always be more efficient, but why then would they have component replication? I'd assume it's design efficiency. If a component has replicated features that are as complex as an actor, then the additional overhead of replicating the component is basically negligible when you think about the big picture of designing your actor and their components.

So to summarize. If the component is only going to replicate a few variables, and you're only going to have 1 instance of that component on the actor, then it's easy enough to have the actor handle that replication. However, if the component has more than a few variables and/or you are using more than 1 instance of that component on a single actor, then for the sake of building a game and not losing your mind, replicate the component.

Really this is up to your discretion.

more ▼

answered Mar 15 '15 at 02:02 AM

avatar image

Cobryis
472 33 18 47

avatar image envenger Mar 15 '15 at 05:24 AM

Its basically either using 2 Actors or 1 Actor and 1 Actor component.

I went with 2 Actors for now.

because the replication list of the components is big. Its an array having around 50 variables. I can switch back to using components although when i want.

(comments are locked)
10|2000 characters needed characters left
Viewable by all users
Your answer
toggle preview:

Up to 5 attachments (including images) can be used with a maximum of 5.2 MB each and 5.2 MB total.

Follow this question

Once you sign in you will be able to subscribe for any updates here

Answers to this question