[Mesa-dev] [PATCH 0/2 v2] Add support for clip distances in Gallium

Christoph Bumiller e0425955 at student.tuwien.ac.at
Tue Dec 13 12:33:53 PST 2011


On 12/13/2011 09:29 PM, Christoph Bumiller wrote:
> On 12/13/2011 09:11 PM, Jose Fonseca wrote:
>>
>>
>> ----- Original Message -----
>>> This is an updated version of the patch set I sent to the list a few
>>> hours
>>> ago.  
>>
>>
>>> There is now a TGSI property called
>>> TGSI_PROPERTY_NUM_CLIP_DISTANCES
>>> that drivers can use to determine how many of the 8 available clip
>>> distances
>>> are actually used by a shader.
>>
>> Can't the info in TGSI_PROPERTY_NUM_CLIP_DISTANCES be easily derived from the shader, and queried through src/gallium/auxiliary/tgsi/tgsi_scan.h ?
>>
>>
>> Could you also elaborate on why TGSI_SEMANTIC_CLIPDIST is useful for the drivers? I personally don't have nothing against it, but just like to understand why it makes a difference.
>>
> 
> Why does TGSI_SEMANTIC_*POSITION* make a difference ?
> 
> Right, because the position values are consumed by the fixed function
> rasterizer. So are the clip distances.
> 
> This is not about pipe_clip_state.ucp but about what this legacy cruft
> has to be turned into if GL_CLIP_PLANEi is used instead of GLSL 1.3's
> gl_ClipDistance[i].
> 

That wasn't clear. I meant that UCP could be replaced by
TGSI_SEMANTIC_CLIPDIST (which is what drivers for newer cards
effectively do internally), but older cards still support UCPs
separately so it best be kept alive as well.
If the shader writes TGSI_SEMANTIC_CLIPDIST, UCP state can be ignored.


> The same mentality ("What's information useful for ?") cost me
> TGSI_SEMANTIC_TEXCOORD and now I have to rely on a hack to make point
> coordinate replacement work on nvc0
> (http://cgit.freedesktop.org/mesa/mesa/tree/src/gallium/drivers/nvc0/nvc0_program.c#n29).
> 
> I'm sorry I'm a bit sensitive on the issue of dropping information at
> the gallium threshold.
> 
>> Jose
>> _______________________________________________
>> mesa-dev mailing list
>> mesa-dev at lists.freedesktop.org
>> http://lists.freedesktop.org/mailman/listinfo/mesa-dev
> 



More information about the mesa-dev mailing list