[PATCH 6/6] wined3d: Set z = 0.0 via the projection matrix instead of depth clamping.

Stefan Dösinger stefandoesinger at gmail.com
Thu Feb 12 03:00:12 CST 2015


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Am 2015-02-12 um 08:45 schrieb Stefan Dösinger:
> Am 2015-02-11 um 23:56 schrieb Matteo Bruni:
>> It's probably hard to measure and not going to really matter in 
>> practice but toggling the depth clamping (where supported) might 
>> be slightly faster than updating the projection matrix.
> I'll try to patch my drawprim overhead tester to test this.
Fwiw, I cannot see any performance difference between ARB_depth_clamp
and the projection matrix approach in my modified test program.

What I did:
Set a POSITIONT vertex

while(running)
{
    for(i = 0; i < 1000; i++)
    {
        set_rs(ZENABLE, TRUE);
        draw();
        set_rs(ZENABLE, FALSE);
        draw();
        set_rs(ZENABLE, TRUE);
        draw();
        set_rs(ZENABLE, FALSE);
        draw();
        set_rs(ZENABLE, TRUE);
        draw();
        set_rs(ZENABLE, FALSE);
        draw();
    }
    present();
}

I.e., I hit the worst case for the new approach. With ARB_depth_clamp
this test program runs at 89.5 fps, with matrices at 89.2. There seems
to be a general up and down of +/- 5 fps. Interestingly windows runs
this test program at 58 fps.

I tested this on Nvidia. I can also test it on r600g if desired, but I
don't really expect it to matter.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2

iQIcBAEBAgAGBQJU3GucAAoJEN0/YqbEcdMwpSYP/RlBVxtPygA4fOcbq5/1baV5
Fo/YTjqBgrPq4Y63MKPGEBu6nEi+TrP1UWZyEeh+cYsbgG8pgzHlwNB1aWfeENOv
/OkWV1FxfJSJ/rEPZ3mYX0ZSKl2Rwm0LXuxjJR4A1KKkOFTy2sdKcZ/srckQFQM3
IQ7oE59S8Zi7s1YEiVAju4rRhBN1s7f3eiynJ6BhhKNEfdZz9u/WmdhTM0pOC21y
NvHMVE/9Vx7VdlWU+gP6vdEMFg14rKoU22lRidcg8s2qiVqtOih4tI6CBN3qdEVw
OXqC9AhDg9f7RHm0SQRWE+Oei8cfUAIg9vuHrXW8gWbXKnUkgC782O/siZ4UUZ9Q
CEUmURZ2Y9WHtIj0LKu1DjJMdIsn+/iHBSXDkIoO+jvcJ4ckeN2kM4D7XS43/dgE
a0vCEMO0OktuLYnRFNc9DRMBifQ5UBzx/yTNvEOcsqvqXW/Jts0GBPd631qYNA/t
XEe+XtMQLutOuTyEb8Y2MZRSmXUPLzcoia4rjgN5HEoM/hGZ0j+2xlXVx13YIBFB
zzZrJFYicZmUvx+BYtMQ58QWbPl58eJx4THkssdxyyQ3Yse6RnYNqs8o1Zbp3DqZ
VFUE2HbVlcQK5/UKIak1Eat3urGcvqcTr3T/OmdWV+Dcqy6dSLpHdC7R5uauMFdr
lbjJvudMKUtba2PgMwap
=Cev8
-----END PGP SIGNATURE-----



More information about the wine-devel mailing list