Utilizator:
Parola:
Am uitat parola... | Cont nou!


Articole Resurse Echipe Competiții Proiecte Forum DevBlogs Locuri de muncă GDROMag Issue#1 GDROCon 2007

 
Forum » Programare » Grafică » I am fillrate limited




Pagina 1 din 1 [ 1 ]

Mesaj Info autor
    Postat la 30 Jul 2010 14:13:36    Subiect: I am fillrate limited
Deliverance info:

Deliverance:

    Lucrez pe un iPad care imi face zile grele. Se pare ca desi are putere destul de mare la procesare de vertecsi, se cam chinuie cand vine vorba de pixeli Very Happy. Astfel am o scena cu 100 triunghiuri per frame, care acopera tot viewport-ul de 1024x768.
    Pe fundal am o imagine de 1024x768(ce o randez fara blending, toate celelalte imagini necesitand alpha blending) si pe langa asta mai am cateva triunghiuri texturate ce formeaza dreptunghiuri texturate astfel incat sa am mapare 1:1 intre texel si pixel. Randez toate acestea la un interval de 1/30(setat prin displayLink). Chiar si asa, nu reusesc sa ajung la 30 fps ci mai degraba la 23-24 fps.
    Folosesc texturi de 2048x2048, compresate(PVRTC) si ca fittru point/nearest.

Ma gandesc daca exista vreo metoda magica de care sa nu fi auzit prin care sa imbunatatesc fill rate-ul. Ramane ca unica solutie de imbunatatire a fill rateului sa desenez mai putine triunghiuri, care la randul lor sa genereze mai putini pixeli?(eventual sa tin cont de faptul ca unele triunghiuri acopera pe altele, sa le tai pe cele din spate in triunghiuri mai mici si pot sa le elimin, pentru ca sunt acoperite de alte triunghiuri mai mari?)

Ultima editare efectuată de Deliverance pe 30 Jul 2010 14:17:13; 2 editări în total


Status:
Înregistrat pe:
13 Oct 2006 10:05:37
Vârsta: 24 ani
Mesaje: 253
Locatie: Iasi , Romania
Programator

 
    Postat la 30 Jul 2010 15:33:14    Subiect: < fara subiect >
Dark info:

Dark:

Ce overdraw ai? In teorie GPU-ul ala poate vreo 170 mpix/s fara blending, adica la 30 de fps poti sa umpli ecranul de vreo 7 ori. Cu blending probabil scade drastic. Tu unde te situezi?

Ai depth testing activat? Texturile alea de 2k sint folosite ca atlase pentru sprite-uri? Se observa vreo diferenta daca folosesti texturi mai mici? (in cazul tau n-ar trebui sa fie diferente, dar incearca totusi). Cit de mult acopera sprite-urile quad-urile lor? (Adica ai multi pixeli goi de care ai putea scapa adaugind citiva vertecsi fiecarui sprite?)

Infectiile astea n-au si ele un profiler, ceva?

"Am crezut ca esti ceva mai avansat" - Nekitu, 2008 A.D.
Autobaza


Status:
Înregistrat pe:
12 May 2007 20:12:30
Vârsta: ? ani
Mesaje: 729
Locatie:
Programator

 
    Postat la 30 Jul 2010 16:08:04    Subiect: Re:
Deliverance info:

Deliverance:

Dark a scris:

Ce overdraw ai?


Nu-ti pot spune exact, nu stiu cum sa aflu Very Happy.

Dark a scris:


In teorie GPU-ul ala poate vreo 170 mpix/s fara blending, adica la 30 de fps poti sa umpli ecranul de vreo 7 ori. Cu blending probabil scade drastic. Tu unde te situezi?


Eu umplu, ecranul cam de vreo 2 ori maxim, dar folosesc blending pentru umplerea celui "de-al doilea ecran" per frame.

Dark a scris:

Ai depth testing activat?

Nope! No depth buffer, no nothing!

Dark a scris:

Texturile alea de 2k sint folosite ca atlase pentru sprite-uri? Se observa vreo diferenta daca folosesti texturi mai mici? (in cazul tau n-ar trebui sa fie diferente, dar incearca totusi).


Da, sunt folosite ca atlase, pentru spriteuri. O sa incerc dar putin mai tarziu, acum chiar nu se poate Very Happy.

Dark a scris:


Cit de mult acopera sprite-urile quad-urile lor? (Adica ai multi pixeli goi de care ai putea scapa adaugind citiva vertecsi fiecarui sprite?)


Cei drept nu sunt un perfect fit dar nu exista spatiu monstruos liber Very Happy. Asta e o idee buna o sa le fac sa se incadreze mai bine, unde o sa se poata.

Dark a scris:


Infectiile astea n-au si ele un profiler, ceva?


Au, au. Dar inainte de asta am facut urmatorul test: Am micsorat toate triunghiurile la jumatate. FPS-ul a urcat la 30, probabil poate si mai mult dar asta e limita pusa de mine. Cand le-am lasat dimensiunea originala, FPS-ul a scazut la 24. So, nu inseamna asta ca problema este fill rate-ul?

Thanks!

Ultima editare efectuată de Deliverance pe 30 Jul 2010 16:09:15; 1 editări în total


Status:
Înregistrat pe:
13 Oct 2006 10:05:37
Vârsta: 24 ani
Mesaje: 253
Locatie: Iasi , Romania
Programator

 
    Postat la 30 Jul 2010 16:29:17    Subiect: < fara subiect >
Dark info:

Dark:

Ba da, problema e clar de fill rate, da' ma gindeam ca o fi din cauza unui state ramas aiurea sau a unei chestii ne-evidente care se intimpla pe acolo, iar un profiler decent ar putea arata cu degetu' in directia potrivita (de exemplu un format de textura care nu-i optim, sau treci pe undeva de limita de fragmente per tile, sau altceva dubios de genul asta). Daca umpli ecranu' doar de 2 ori (adica overdraw 1 Smile ) n-ar trebui sa fie asa de tragic.

Eu n-am lucrat deloc cu iStuff d-astea asa ca nu stiu sa-ti zic mai concret la ce sa te uiti, da' poate se gaseste altcineva mai in tema care sa-ti zica "e de la X".

Ultima editare efectuată de Dark pe 30 Jul 2010 16:30:17; 1 editări în total

"Am crezut ca esti ceva mai avansat" - Nekitu, 2008 A.D.
Autobaza


Status:
Înregistrat pe:
12 May 2007 20:12:30
Vârsta: ? ani
Mesaje: 729
Locatie:
Programator

 
    Postat la 30 Jul 2010 18:25:17    Subiect: < fara subiect >
Pintea info:

Pintea:

Dai Clear la ecran per frame (culoare si depth) ? daca da, nu mai face asta.
Din cate inteleg desenezi 2D only, deci nu tb sa dai clear decat la stencil daca il folosesti. Nu stiu exact ce faci pe acolo, dar poti folosi si stencilul la mascare, mai elimini din overdraw.

Daca texelii sunt mapati 1 la 1 da disable la filtrarea bilineara.

Folosesti ogl 2.0 sau 1.1 ?

+ zice bine Dark cu mai multi vertecsi per sprite, astfel incat sa fie mai tight-fit pe textura.
vezi :
http://humus.name/index.php?page=News&ID=266 (din poze nu pare mare lucru, dar poate taia pana la aproape jumatate din pixeli)
+ are si tool deja facut http://humus.name/index.php?page=Cool&ID=8

Pe langa profilerul din xcode instruments mai poti incerca gDebugger, e si ptr ogl ES, dar vezi cum faci sa-ti ajunga 7 zile.

Ultima editare efectuată de Pintea pe 30 Jul 2010 18:30:04; 1 editări în total



Status:
Înregistrat pe:
05 May 2007 14:50:45
Vârsta: 28 ani
Mesaje: 300
Locatie:
Programator

 
    Postat la 30 Jul 2010 20:14:57    Subiect: < fara subiect >
Deliverance info:

Deliverance:

Hey, hey, hey, merci Pintea, astea-s niste idei foarte bune(si da faceam clear la buffer de culoare every frame Embarassed ).

Folosesc GLES 2.0.

De-acuma e treaba muncitoreasca, n-are de ce sa nu iasa. Very Happy

Thanks again, guys!

Ultima editare efectuată de Deliverance pe 30 Jul 2010 20:16:56; 2 editări în total


Status:
Înregistrat pe:
13 Oct 2006 10:05:37
Vârsta: 24 ani
Mesaje: 253
Locatie: Iasi , Romania
Programator

 

Pagina 1 din 1 [ 1 ]


Server time: 20:23:01 11.02.2012



[ Termeni si conditii | Contact | F.A.Q. | Funny Pictures ]

© 2011 Copyright 7thFACTOR Entertainment - All rights reserved