dev.gamez.lv Forum Index dev.gamez.lv
Latvian Game Developers Community
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups 

GL_DEPTH_COMPONENT

 
dev.gamez.lv Forum Index -> OpenGL
View previous topic :: View next topic  
Author Message
snauts
Indago Uzvarētājs
Indago Uzvarētājs


Joined: 18 Sep 2007
Posts: 37

PostPosted: Mon Oct 26, 2009 11:37 pm    Post subject: GL_DEPTH_COMPONENT

Es cenšos nokopēt dziļuma bufferi iekš tekstūras, lai pēcāk to varētu izmantot fragmentu šeiderī.
Code:

    glBindTexture(GL_TEXTURE_2D, depth_id);
    glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST);
    glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST);
    glCopyTexImage2D(GL_TEXTURE_2D, 0, GL_DEPTH_COMPONENT, 0, 0, DEPTH_SIZE, DEPTH_SIZE, 0);
    glBindTexture(GL_TEXTURE_2D, 0);

Kas tur varētu būt nepareizi? Kad GL_DEPTH_COMPONENT vietā ielieku GL_RGBA, tad es savā fragmentu šeiderī dabūju uzzīmēto bildi, kā nākas.
Back to top
View user's profile
snauts
Indago Uzvarētājs
Indago Uzvarētājs


Joined: 18 Sep 2007
Posts: 37

PostPosted: Tue Oct 27, 2009 12:27 am    Post subject:

Pardon, man bija uzlikts pārlieku maziņš zNear, un pārlieku liels zFar.
Back to top
View user's profile
bubu
Indago Uzvarētājs
Indago Uzvarētājs


Joined: 23 Mar 2004
Posts: 3223
Location: Riga

PostPosted: Tue Oct 27, 2009 10:59 am    Post subject:

Tā, protams, ar glCopyTexImage2D var darīties, bet daudz prātīgāk ir izmantot FBO, lai, renderējot scēnu, depth bufferi pa taisno ierenderētu tekstūrā, kuru izmantot vēlāk šeiderī. Tādējādi izpaliks lieka datu kopēšana = lielāka performance.
Back to top
View user's profile Send e-mail
snauts
Indago Uzvarētājs
Indago Uzvarētājs


Joined: 18 Sep 2007
Posts: 37

PostPosted: Tue Oct 27, 2009 10:48 pm    Post subject:

Izmantojot FBO ierenderēju visu pa taisno tekstūrā.
Kā parādīt tekstūru bez liekas datu kopēšanas?
Back to top
View user's profile
snake5
Indago dalībnieks
Indago dalībnieks


Joined: 27 Jun 2007
Posts: 2590

PostPosted: Tue Oct 27, 2009 11:44 pm    Post subject:

Krāsu kanālā ierenderēji to depth/z? Un kam/kur/kāpēc tu gribi to tekstūru rādīt?
_________________
"There are two choices here: "looks good" and "realism"." -- Paul Nettle
Back to top
View user's profile Visit poster's website
bubu
Indago Uzvarētājs
Indago Uzvarētājs


Joined: 23 Mar 2004
Posts: 3223
Location: Riga

PostPosted: Tue Oct 27, 2009 11:56 pm    Post subject:

snauts wrote:
Izmantojot FBO ierenderēju visu pa taisno tekstūrā.
Kā parādīt tekstūru bez liekas datu kopēšanas?

Vienkārši rādi kā parastu tekstūru, nekas speciāli nav jādara. Depth tekstūrai jārādās kā melnbaltai bildei.
Back to top
View user's profile Send e-mail
snauts
Indago Uzvarētājs
Indago Uzvarētājs


Joined: 18 Sep 2007
Posts: 37

PostPosted: Wed Oct 28, 2009 6:12 pm    Post subject:

Ko nozīmē vienkārši rādi kā parastu tekstūru?
Back to top
View user's profile
bubu
Indago Uzvarētājs
Indago Uzvarētājs


Joined: 23 Mar 2004
Posts: 3223
Location: Riga

PostPosted: Wed Oct 28, 2009 7:14 pm    Post subject:

Tas nozīmē, ka to var parādīt (ar šeideri, vai bez šeidera) tieši tāpat kā parastu RGB tekstūru. Bez šeideriem - piebindo tekstūru, saliec korektus texcoordus, un glEnable(GL_TEXTURE_2D). Ar šeideriem - piebindo tekstūru, uploado korektu sampler2D uniformu, saliec korektus texcoordus, un GLSL'ā lookapo tekstūru ar parastu texture2D funkciju.
Back to top
View user's profile Send e-mail
snauts
Indago Uzvarētājs
Indago Uzvarētājs


Joined: 18 Sep 2007
Posts: 37

PostPosted: Wed Oct 28, 2009 9:04 pm    Post subject:

Tik un tā es neredzu, kur "izpaliks lieka datu kopēšana".
Vienā gadījumā es kopēju dziļuma bufferi uz tekstūru.
Otrā gadījumā es kopēju tekstūru uz ekrāna.
Back to top
View user's profile
snake5
Indago dalībnieks
Indago dalībnieks


Joined: 27 Jun 2007
Posts: 2590

PostPosted: Wed Oct 28, 2009 9:28 pm    Post subject:

Vienā gadījumā visu kopē videokarte, citā procesors un tie dati vēl tiek ielādēti VRAMā. Ir vēl iespēja (ja, protams, OpenGL nav tik ļoti atpalicis no D3D) pielikt vēl vienu render targetu un zīmēt krāsas vienā un depth/z otrā.
_________________
"There are two choices here: "looks good" and "realism"." -- Paul Nettle
Back to top
View user's profile Visit poster's website
bubu
Indago Uzvarētājs
Indago Uzvarētājs


Joined: 23 Mar 2004
Posts: 3223
Location: Riga

PostPosted: Thu Oct 29, 2009 1:14 am    Post subject:

FBO, sneik, arī ir tavi rendertargeti. Pats tu esi atpalicis ;)
Back to top
View user's profile Send e-mail
snake5
Indago dalībnieks
Indago dalībnieks


Joined: 27 Jun 2007
Posts: 2590

PostPosted: Thu Oct 29, 2009 3:49 am    Post subject:

bubu wrote:
FBO, sneik, arī ir tavi rendertargeti. Pats tu esi atpalicis Wink

Vai nav vienalga, kā viņus sauc? Darbojas tāpat. Smile Anyway, es nerunāju par to, vai viņi tur ir, vai nav, bet gan par to, vai var vairākos iekšā rakstīt uzreiz.
_________________
"There are two choices here: "looks good" and "realism"." -- Paul Nettle
Back to top
View user's profile Visit poster's website
Display posts from previous:   
dev.gamez.lv Forum Index -> OpenGL All times are GMT + 2 Hours
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group