Prestanda med texturer & polygoner?
Hallå!
Jag håller på med ett projekt inom datorgrafik sedan ett år tillbaka, dock är jag inte så haj på vad som verkligen händer bakom kulisserna.
Tänk oss att vi har en kub med en quad eller två trianglar per sida, vi texturmappar denna (samma textur på de sex sidorna) med en högupplöst textur och visar den på skärmen, låt oss säga att jag har exempelvis backface culling implementerat, samt mipmap på 4 nivåer.
1. Hur mycket påverkas prestandan om jag skulle rendera denna box mot exempelvis bara en quad (eller två trianglar)?
2. Vad händer om jag har en högupplöst textur som täcker hyfsat många pixlar på skärmen, kommer denna att samplas på alla pixlar, sedan ge ett resultat, eller hoppar den så långt som behövs & samplar därifrån? dvs texturstorleken spelar mindre roll?
3. Hur hanteras vinklade polygoner som knappt är synbara, tar de lika mycket kraft som en parallell med skärmen? (dvs går igenom hela texturen)
4. Vad är det som belastar grafikkorten mest, när man har många polygoner med lågupplöst textur, eller få med högupplöst textur? (samma storlek) (shader, fillrate?)
Texturmappning och ljuseffekter sker genom shaders, implementerat i c++ och sdl (opengl 2.0). Jag försöker nämligen optimera detta för någolunda slöa grafikkort, tex. laptop med HD2400, dåligt med rops, shaders och bandbredd. Objekten är väldigt många så små ändringar kan ge märkbara resultat.
Ställ gärna frågor om nått är oklart, vet inte riktigt hur jag ska ställa dessa frågor...
mvh
Dalton Sleeper