I am using mesa-solo in an application that attempts to generate simple 3d scenes at the full frame rate of the video card. I use an /etc/drirc file with the following option for my app:

<option name="vblank_mode" value="3"/>

this option is supposed to synchronize the swap to the VBLANK period. Based on my reading of the code, and based on actual measurements this works as advertised, and quite well.

I want to KNOW FOR CERTAIN that the swap occurred for a given frame, and that it didn't skip a frame or two in the process. When that happens, I need to know how many frames were missed. In some instances we use /dev/rtc for an independent measurement, but we cannot always rely on that solution.

Under ordinary X, there is GLX_OML_sync_control, which provides methods to determine whether frame(s) were missed.

In the miniglx interface this extension doesn't exist, and the various methods - like queryFrameTracking -- which would answer my questions are all hidden in opaque structs (opaque to a client app, at least). In particular, 'queryFrameTracking' is a member of 'DRIdrawable', but that struct is opaque to a glX client application like mine (it is defined in miniglxP.h).

Can anyone tell me if

a) I am wrong, i.e. "...nope, just call 'thisMethod' from your app, dummy"

or

b) how I might approach the problem of exposing this functionality. I am somewhat familiar with the dri/Mesa code, but am not an expert. I would like the solution to be somewhat generic w/r/t video cards (but complete coverage isn't required -- r200 at a minimum because that's what we are using right now).


Dan


------------------------------------------------------- This SF.Net email is sponsored by: IntelliVIEW -- Interactive Reporting Tool for open source databases. Create drag-&-drop reports. Save time by over 75%! Publish reports on the web. Export to DOC, XLS, RTF, etc. Download a FREE copy at http://www.intelliview.com/go/osdn_nl -- _______________________________________________ Dri-devel mailing list Dri-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/dri-devel

Reply via email to