Bug 2195

Summary: switch radeon driver to t_vertex interface
Product: Mesa Reporter: Andreas Stenglein <a.stenglein>
Component: Drivers/DRI/R100Assignee: Default DRI bug account <dri-devel>
Status: RESOLVED FIXED QA Contact:
Severity: enhancement    
Priority: high    
Version: git   
Hardware: All   
OS: All   
i915 platform: i915 features:
Bug Depends on:    
Bug Blocks: 2241    
Attachments: this works for me

Description Andreas Stenglein 2005-01-02 15:38:39 UTC
as most (all?) other drivers are already converted
Comment 1 Andreas Stenglein 2005-01-02 15:41:50 UTC
Created attachment 1614 [details] [review]
this works for me

please test.

feel free to commit after removing the remainig questions.
Comment 2 Stephane Marchesin 2005-01-03 10:52:41 UTC
It works here (radeon 7000, 1002:5159) although it's a bit slower than before.
Comment 3 Andreas Stenglein 2005-02-08 08:51:51 UTC
The texture of the ground is missing in ut2003_demo with this patch.
But it works well with r200 driver in sw-tnl and hw-tcl mode, and works well
with old radeon driver.
It seems that everything thats rendered in the tcl stage is ok (has texture),
but everything thats rendered "below" has no texture.
This is strange since its almost the same code as in r200 driver.

could someone confirm?

any hints?
Comment 4 Roland Scheidegger 2005-02-08 12:09:45 UTC
(In reply to comment #3)
> The texture of the ground is missing in ut2003_demo with this patch.
> But it works well with r200 driver in sw-tnl and hw-tcl mode, and works well
> with old radeon driver.
What do you mean with "missing" - is it completely gone, or can you still see
about the right color? Is this only dm-antalus? If the answer to both is yes,
that's probably a problem with projected textures. On r200, projected textures
didn't work at all (and ground texture in dm-antalus was correct), and when I
played around with that I got projected textures working (for instance tree
shadow) but the ground texture was more or less gone - I guess wrong q texture
coordinate. Eric fixed that then together with some texgen fixes. The issue on
r100 you're seeing might be along similar lines.
Comment 5 Roland Scheidegger 2005-03-07 11:43:43 UTC
This patch causes segfaults with the rasterization fallbacks, which seem to be
identical to these of the r200 driver (#2516).
Comment 6 Andreas Stenglein 2005-03-20 05:22:55 UTC
Created attachment 2162 [details] [review]

I re-checked ut2003_demo and it works well, at least as well as with the old
Maybe the error I saw was with the cube patch
https://bugs.freedesktop.org/show_bug.cgi?id=2241 but cubemapping disabled
because that patch (still) shows the missing-texture error.
Comment 7 Andreas Stenglein 2005-04-23 08:23:33 UTC
Created attachment 2520 [details] [review]
Comment 8 Andreas Stenglein 2005-05-15 11:07:13 UTC
Created attachment 2683 [details] [review]
Comment 9 Eric Anholt 2005-05-29 18:53:28 UTC
I've tested this on ut2004, ut, q3, and tcl_mode=0 projtex, and it seemed to be
fine.  There's a 25k reduction in the stripped binary size.  However performance
is also reduced somewhat (tcl_mode=0 quake3, 800x600 demofours on 1ghz p3 and
rv200 card):

x pre-tvertex
+ post-tvertex
|    +                                                                    x|
|+ + +       +                                                          x x|
||___A____|                                                             |AM|
    N           Min           Max        Median           Avg        Stddev
x   5            79          79.1          79.1         79.08    0.04472136
+   5          75.4            76          75.6         75.62    0.22803509
Difference at 95.0% confidence
        -3.46 +/- 0.239647
        -4.37532% +/- 0.303043%
        (Student's t, pooled s = 0.164317)

Do we want to apply the patch in this case?  It would increase maintainability,
Comment 10 Eric Anholt 2005-05-30 21:05:20 UTC
Committed, thanks!  Also, you really oughta be a committer :-)
Comment 11 Adam Jackson 2009-08-24 12:22:57 UTC
Mass version move, cvs -> git

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.