Re: [clutter] How can I avoid _clutter_do_pick at motion event?
Neil Roberts wrote: Murray Cumming murr...@murrayc.com writes: My superficial reading of OpenGL books suggest that reading rendered graphics data should be avoided because it must wait for the rendering to happen, blocking the pipeline. Have I misunderstood? It's true that generally reading back graphics data should be avoided but we think for Clutter the cost is worth it because it provides the most flexible picking method with the simplest interface to developers. The time needed for the render should be relatively quick because it is scissored to a 1x1 pixel rectangle and it usually ends up being batched up to a single call to glDrawArrays. From our experience the GPU sync involved by the readback is the performance killer. The issue is not about the time to complete the 1x1 pixel draw and readback, but rather the sync it implies with the previously _painted_ frame. The biggest cost is when dragging the finger/mouse, as it involves a pick for every paint, hence killing the CPU/GPU parallelism. And dragging happens to be the case where you need the highest framerate, because of the extra-sensitivity that comes with on-screen user interaction. Bottomline, we found it is usually very worthwhile to disable picking during the press/release scope. Also with the work in the async-pbo-picking it should be possible to avoid blocking altogether if the driver implements it correctly. - Neil -- Michael Boccara Graphtech Herzliya, Israel
Re: [clutter] How can I avoid _clutter_do_pick at motion event?
Title: Samsung Enterprise Portal mySingle as far as i know, if the actor(i mean any actor and subactor classes) implenents the clutter_actor_pick the clutter_do_pick will work, so if you want to remove the penality, you can disable the clutter_actor_pick in those sub-actor class's implementation, just disable it in those xxx_class_init(), rebuild and try best regards.--- Original Message ---Sender : Rubricrubri...@gmail.comDate : ??? 23, 2009 19:59 (GMT+09:00)Title : [clutter] How can I avoid _clutter_do_pick at motion event?Hi there. I encountered a problem of rendering performance when I drag the pointer on a touch device during clutter application is playing. In case of embedded system, since glReadPixel has terrible performance, I wish to avoid _clutter_do_pick at motion event in my clutter application. Is there any method? Thank you. N‹§²æìr¸›zǧu©šŠ[hr[µêþº{.nÇ+‰·¨…©Ýr‰
Re: [clutter] How can I avoid _clutter_do_pick at motion event?
On Wed, 2009-12-23 at 19:59 +0900, Rubric wrote: In case of embedded system, since glReadPixel has terrible performance, that's not entirely true for *every* embedded system. I'd suggest you ask for a better driver. I wish to avoid _clutter_do_pick at motion event in my clutter application. Is there any method? clutter_set_motion_events_enabled() will stop trying to find out the actor underneath the pointer - but it will disable event delivery on actors, so that only the Stage will emit pointer-related signals, like button-press, button-release and motion. also, enter and leave signals will not be emitted. ciao, Emmanuele. -- To unsubscribe send a mail to clutter+unsubscr...@o-hand.com