Hedgehog rendering?

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

Hedgehog rendering?

David Faught
Here is yet another naive question (or three) from my vast arsenal.
Does rendering code run within the island?  Maybe on behalf of each
avatar replica?  Even though it will never actually be viewed
directly?

So that if I am running an island, router, and harness/avatar camera
all on one PC that rendering code has to run twice, once for the
island and once for the avatar?  And if someone else joins my island
then twice for the island and once for my avatar for a total of three
times on my PC?

The real problem that I am trying to get at with these questions may
not be related at all.  I have noticed that scenes with many rendered
objects are dramatically slower in Hedgehog than in Jasmine.  While
trying to update my DualMaze project, I noticed that it was very slow,
so I reduced the number of rendered surfaces by a factor of 3 by
changing the maze walls from TCubes to a dual-faced TRectangle
subclass.  This gave adequate performance, but still a bit slower than
Jasmine was with the TCubes.  I have also noticed that the fps of more
complex figures done with MockTurtle goes down dramatically.

Any idea what is really going on here?

Reply | Threaded
Open this post in threaded view
|

Re: Hedgehog rendering?

David A. Smith-3
David Faught wrote:
> Here is yet another naive question (or three) from my vast arsenal.
> Does rendering code run within the island?  Maybe on behalf of each
> avatar replica?  Even though it will never actually be viewed
> directly?
Rendering actually runs outside of an Island. It is not a replicated
process, hence you only render what shows up on the screen - basically
as little as possible.
>
> So that if I am running an island, router, and harness/avatar camera
> all on one PC that rendering code has to run twice, once for the
> island and once for the avatar?  And if someone else joins my island
> then twice for the island and once for my avatar for a total of three
> times on my PC?
No. Only one rendered view. There is some code in there that renders the
scene for each avatar once a second or so, but this has very little
overhead and will be going away soon. It will be replaced by a more
general mechanism.
> The real problem that I am trying to get at with these questions may
> not be related at all.  I have noticed that scenes with many rendered
> objects are dramatically slower in Hedgehog than in Jasmine.  While
> trying to update my DualMaze project, I noticed that it was very slow,
> so I reduced the number of rendered surfaces by a factor of 3 by
> changing the maze walls from TCubes to a dual-faced TRectangle
> subclass.  This gave adequate performance, but still a bit slower than
> Jasmine was with the TCubes.  I have also noticed that the fps of more
> complex figures done with MockTurtle goes down dramatically.
The rendering speed should be about the same, if not a bit faster in
Hedgehog. There is a lot more going on in Hedgehog now, though. There is
additional overhead in the replication. Also Jasmine would update
certain things like particle systems at render time, - hence you would
only compute updates to an object when it was visible. With Hedgehog,
you can't do this anymore, so particle systems are always computing -
not rendering, though computation is not free. We have worked out a
number of patterns for managing this kind of situation, and it should
show up in a later release.
>
> Any idea what is really going on here?
>
>
>