On Thursday, January 17, 2013 16:31:57 Renk Thorsten wrote:
> > For example here on an nvidia 8800GT with 313.09 linux driver I have:
> > 
> > MAX_VERTEX_UNIFORM_COMPONENTS 4096
> > MAX_FRAGMENT_UNIFORM_COMPONENTS 2048
> 
> Nevertheless, that would make 50 seem a rather harmless number. Especially
> when I'm going to assume that no one with a much older card will be able to
> run a shader with 6 overlay textures in anything resembling a usable
> framerate anyway.
> 
> So I will for the time being consider a number of below 100 uniforms
> harmless, and we can change strategy once actual problems crop up. Any
> objections?
Yes. Any uniform needs to be handled by the driver. And any of them takes cpu 
cycles to load. I think having lots of them is one factor that accounts for 
the long draw times I see here. Looking at profiles the function collecting 
them and putting it into a buffer for use in the gpu is always in the top 5 
functions on the cpu where exactly this takes a lot of cpu time.
So, just putting a lot of uniforms somewere because the maximum allowed number 
is so far away is not a good idea.
Mathias

------------------------------------------------------------------------------
Master Visual Studio, SharePoint, SQL, ASP.NET, C# 2012, HTML5, CSS,
MVC, Windows 8 Apps, JavaScript and much more. Keep your skills current
with LearnDevNow - 3,200 step-by-step video tutorials by Microsoft
MVPs and experts. ON SALE this month only -- learn more at:
http://p.sf.net/sfu/learnmore_123012
_______________________________________________
Flightgear-devel mailing list
Flightgear-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/flightgear-devel

Reply via email to