The Author Online Book Forums are Moving

The Author Online Book Forums will soon redirect to Manning's liveBook and liveVideo. All book forum content will migrate to liveBook's discussion forum and all video forum content will migrate to liveVideo. Log in to liveBook or liveVideo with your Manning credentials to join the discussion!

Thank you for your engagement in the AoF over the years! We look forward to offering you a more enhanced forum experience.

import-bot (20211) [Avatar] Offline
#1
[Originally posted by mylesj]

Hi,

1. Slow Picking
---------------

I have run your examples on two machines (500 & 700mhz) now, both with NT 4.0
installed, and both show severe slow down when running the picking examples.
Sometimes it can take more than a second for the application to react to a
mouseover on the objects in the scene. And the scenes are not really that
complex.

This is really worrying as I intend to develop an application that will make
extensive use of picking on mouseover. Is the performance problem due to
Java3D's implementation of picking? If so, I may consider writing my own
picking calculation routines tuned for performance - I am guessing, but I
reckon J3D's picking routines are creating hundreds of objects which are then
having to be destroyed by the garbage collector.

2. Rendering offscreen
----------------------

I know this is not related to your book, but I thought you may have some
advice: I am leaning towards using a Canvas3D to render offscreen in order
that I can have far more control over the display of and interaction with the
3D environment. However, I am getting the impression that rendering offscreen
will be far slower than onscreen. Do you know if this is true and why?

Thanks,

Myles
import-bot (20211) [Avatar] Offline
#2
Re: (two questions) 1. Slow Picking 2. Rendering offscreen
[Originally posted by author]

The framework examples use two different schemes for picking. The early
examples tend to be slow with respect to picking because they do not attempt
to consolidate mouse events that drive picking, or the use of pickers
themselves (although I'm not sure why you are seeing responses of up to a
second -- which examples are you refering to?). The later examples, such as
SecondPerson and ThirdPerson, use picking that is built into a feedback
manager. Since these examples use a single feedback manager there is little
redundancy in picking related resources. These later examples should be quite
responsive to mouseover and picking.

Although sun has been making picking faster and faster, as I pointed out in
the book, it still seems to fall short of the picking performance achieved by
vrml browsers such as Cosmo.

As for off screen rendering, I really can't help you since my work has not yet
led me in that direction.

Good luck,
--jon


> Hi,
>
> 1. Slow Picking
> ---------------
>
> I have run your examples on two machines (500 & 700mhz) now, both with NT 4.0
> installed, and both show severe slow down when running the picking examples.
> Sometimes it can take more than a second for the application to react to a
> mouseover on the objects in the scene. And the scenes are not really that
> complex.
>
> This is really worrying as I intend to develop an application that will make
> extensive use of picking on mouseover. Is the performance problem due to
> Java3D's implementation of picking? If so, I may consider writing my own
> picking calculation routines tuned for performance - I am guessing, but I
> reckon J3D's picking routines are creating hundreds of objects which are then
> having to be destroyed by the garbage collector.
>
> 2. Rendering offscreen
> ----------------------
>
> I know this is not related to your book, but I thought you may have some
> advice: I am leaning towards using a Canvas3D to render offscreen in order
> that I can have far more control over the display of and interaction with the
> 3D environment. However, I am getting the impression that rendering offscreen
> will be far slower than onscreen. Do you know if this is true and why?
>
> Thanks,
>
> Myles
import-bot (20211) [Avatar] Offline
#3
Re: (two questions) 1. Slow Picking 2. Rendering offscreen
[Originally posted by mylesj]

Jon,

You are right, the SecondPerson and ThirdPerson examples are much much faster
- they run real-time. The examples that are really slow are the ones similar
to the MultiShaping demo.

Myles


> The framework examples use two different schemes for picking. The early
> examples tend to be slow with respect to picking because they do not attempt
> to consolidate mouse events that drive picking, or the use of pickers
> themselves (although I'm not sure why you are seeing responses of up to a
> second -- which examples are you refering to?). The later examples, such as
> SecondPerson and ThirdPerson, use picking that is built into a feedback
> manager. Since these examples use a single feedback manager there is little
> redundancy in picking related resources. These later examples should be quite
> responsive to mouseover and picking.
>
> Although sun has been making picking faster and faster, as I pointed out in
> the book, it still seems to fall short of the picking performance achieved by
> vrml browsers such as Cosmo.
>
> As for off screen rendering, I really can't help you since my work has not yet
> led me in that direction.
>
> Good luck,
> --jon
>
>
> > Hi,
> >
> > 1. Slow Picking
> > ---------------
> >
> > I have run your examples on two machines (500 & 700mhz) now, both with NT
4.0
> > installed, and both show severe slow down when running the picking examples.
> > Sometimes it can take more than a second for the application to react to a
> > mouseover on the objects in the scene. And the scenes are not really that
> > complex.
> >
> > This is really worrying as I intend to develop an application that will make
> > extensive use of picking on mouseover. Is the performance problem due to
> > Java3D's implementation of picking? If so, I may consider writing my own
> > picking calculation routines tuned for performance - I am guessing, but I
> > reckon J3D's picking routines are creating hundreds of objects which are
then
> > having to be destroyed by the garbage collector.
> >
> > 2. Rendering offscreen
> > ----------------------
> >
> > I know this is not related to your book, but I thought you may have some
> > advice: I am leaning towards using a Canvas3D to render offscreen in order
> > that I can have far more control over the display of and interaction with
the
> > 3D environment. However, I am getting the impression that rendering
offscreen
> > will be far slower than onscreen. Do you know if this is true and why?
> >
> > Thanks,
> >
> > Myles