Michel Dänzer wrote: > On Mon, 2007-09-24 at 21:51 -0400, Jonathan Bastien-Filiatrault wrote: > >> I have made a program that draws zfail/zpass shadows. I draw three >> models with ~120 tris each and one light source and a simple floor, with >> zpass. I can get a full 60fps until the window size reaches about >> 780x580 which drops to around ~30 fps in a maximized window (1342x820). >> The application is far from cpu-bound and vsync is disabled. >> >> >> I was wondering if I am really hitting the 945GM fill rate limit, or I >> am doing something terribly costly someway along the way (this should >> not be the case, it is somewhat too simple). I have tried with the >> latest i915 in Debian and the latest i915tex from git (right after it >> got renamed to i915). The newer driver gives a steady ~20 fps, any >> window size, for my program and ~60 fps for glxgears. >> >> >> The render is divided into three passes: ambient, shadow volumes(front >> and back), "illuminate", nothing remarkable. I use VBOs, the performance >> is about the same as vertex arrays (added vbo support for the heck of it >> today). >> > > I'm not sure, but it sounds like this is something the software zone > rendering on the i915tex-zone-rendering branch might help for. You'll > need to set the environment variable INTEL_SWZ=1 to make it use software > zone rendering. Thanks for the tip. I used the zone rendering branch, with the latest DRM (pipes/planes patch applied) and it gives me a boost of around 10 FPS. Disabling lighting and blending during the shadow volume gave me another 10 FPS boost. The biggest optimization was putting the shadow volume geometry and using glDrawArrays. I now run fullscreen (1440x900) at around 45-50 fps with a 960 face model in zpass mode.
PS: Have you noticed that some versions of the newer mesa does not seem to like mixing plain old vertex arrays with VBOs ? The mesa in Debian unstable(7.0.1) does not segfault on me with direct rendering with mixed code. Is it even worth it putting shadow edge geometry in a VBO ? For the light cap, I use glDrawElements with the main vertex VBO, avoiding copies of vertex data. Thanks for the help, and the tips, Jonathan ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2005. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ -- _______________________________________________ Dri-devel mailing list Dri-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/dri-devel