View previous topic :: View next topic |
Author |
Message |
elvman Indago Uzvarētājs
Joined: 09 Apr 2003 Posts: 1278 Location: Kuldiga
|
Posted: Thu May 18, 2006 1:01 pm Post subject: Multiple lights ar sheideriem |
|
Esmu nonaacis pie dilemmas.Taatad-ieks Engine ir klase CLight ar visiem parametriem.Secinam,ka gaismu skaits bus dinamisks.Kaa peec iespeejas "maigaak" to vareetu panaakt ar Shader Model 1.x?Nu sliktaakajaa gadiijumaa 2.
Pagaidam cik esmu atradis netaa,tad ir taadi veidi:
1)Katram gaismu skaitam veidot savu shader'i.
2)Multi-pass rendering (shausmigi neizdevigi)
Veids,ko es pats izdomaju-izveidot sheideri,kas atbalsta piemeram 10 gaismas (pilniba pietiekami).Padot shaderim konstantes ar katras gaismas parametriem.Ja gaisma neeksisteet,tad visi parametri ir 0 (diffuse-255,255,255),liidz ar to taa neko neietekmee. _________________ long time; /* know C */ |
|
Back to top |
|
|
dev
Joined: 27 Jul 2004 Posts: 206 Location: Latvija
|
Posted: Thu May 18, 2006 9:54 pm Post subject: |
|
Pirms kaada gada vai vairaak man bija liidziigs jautaajums un tas tika apspriests shajaa forumaa .. neatceros kuraa sadaljaa.
Es izmeegjinaaju pa priekshu variantu ar sheideri 3 gaismaam, bet tas bija ljoti leeni uz 2.0. Uz 3.0 protams var taisiit dinamisku gaismu skaitu, bet nu ja tu gribi atbalstiit olskuulu hardwari, tad tas neder.
Pats beigaas paliku pie multipass un gaismaam ar ierobezhotu raadiusu, un nemaz tas nav neizdeviigi - multipass tiek lietots daudzaas "lielajaas" speelees. Doom3 piem arii ir multipass. Galvenais peectam liimeni dizaineejot nesalikt daudzas gaismas ar lielu raadiusu tuvu vienu otrai. Hardwarei daudz labaak patiik vairaakas reizes norendereet gjeometriju ar vienkaarshaaku PS nekaa vienreiz ar mega sarezgjiitu. |
|
Back to top |
|
|
anggelus
Joined: 23 Feb 2005 Posts: 383 Location: Rīga (LV)
|
Posted: Thu May 18, 2006 10:32 pm Post subject: |
|
pirmais variants der tikai tādā gadījumā, ja netiek lietotas ēnas izmantojot stencil buferi, jo stencila ēnas darbojas tikai ar multi-pass. _________________ No comprendo lo que dice. |
|
Back to top |
|
|
elvman Indago Uzvarētājs
Joined: 09 Apr 2003 Posts: 1278 Location: Kuldiga
|
Posted: Fri May 19, 2006 9:17 pm Post subject: |
|
Juus vareetu ieteikt kaadu multipass rendering tutorial.Es te mekleeju pa netu,bet nevienu labu nevaru atrast.Ir tikai teorija-t.i. renderejam visu gjeometriju vienreiz,noaminat gaismu un renderejam atkal.Bet kuraa buferii rendereet un kaa rezultaatus kombineet?
--EDIT--
Itka atradu vienu,bet tomer pasakiet ja ir kads labs links. _________________ long time; /* know C */ |
|
Back to top |
|
|
anggelus
Joined: 23 Feb 2005 Posts: 383 Location: Rīga (LV)
|
Posted: Fri May 19, 2006 9:50 pm Post subject: |
|
http://www.ati.com/developer/demos/r8000.html
paskaties treasure Chest demo, tas gluži nav tutorialis bet kodu var papētīt.
edit:
sorry tur tikai demo tagad, sourci tagad var dabūt tikai ņemot visu ati sdk. _________________ No comprendo lo que dice. |
|
Back to top |
|
|
elvman Indago Uzvarētājs
Joined: 09 Apr 2003 Posts: 1278 Location: Kuldiga
|
Posted: Fri May 19, 2006 10:31 pm Post subject: |
|
Nu jaa,bet tur tikai sheideru sources ir.Pasha projekta source nav,taka neko daudz man tas nelidz. _________________ long time; /* know C */ |
|
Back to top |
|
|
elvman Indago Uzvarētājs
Joined: 09 Apr 2003 Posts: 1278 Location: Kuldiga
|
Posted: Sat May 20, 2006 11:40 pm Post subject: |
|
Ok es padodos.Visu netu paarmekleeju,bet neatradu kaa dabuut multipass rendering gatavu.Atradu tikai vienu iespeeju-uztaisiit tekstuuru ekraana lielumaa katrai gaismai.Tad rendereet shajaa tekstuuraa un beigaas rezultaatu savienot un ieliktframe bufferii.Bet tas izklausaas LEENI.Varbuut kaads var aatri iemest te kaadu koda gabalinju?
P.S. Es visas gaismas esmu uztaisijis.Visu izdarijis,bet nav multipass rendering t.i. rendereejas tikai peedeejaa gaisma.Kaa lai dabuuju,ka rendereejas visas? _________________ long time; /* know C */ |
|
Back to top |
|
|
GiGa Indago Uzvarētājs
Joined: 25 Sep 2003 Posts: 887
|
Posted: Sun May 21, 2006 8:47 am Post subject: |
|
Kaapeec mekleet gruutiibas, kur taadu nav? Nevaig nekaadus render targetus - vienkaarshi renderee katru gaismu it kaa taa buutu vieniigaa, tikai iesleedz additiivu blending modi (nu tas kas ieksh ogl ir GL_ONE,GL_ONE - kur rezultaats ir jau esoshais + ienaakoshais pikselis). |
|
Back to top |
|
|
elvman Indago Uzvarētājs
Joined: 09 Apr 2003 Posts: 1278 Location: Kuldiga
|
Posted: Sun May 21, 2006 10:58 am Post subject: |
|
Aaa ok.Es jau taa rendereeju,bet nekaa nesanaaca.Taatad droshi vien kaut kur kljuuda.Bet paldies.Tulit izlaboshu kljuudu un droshi ven viss buus kaartiibaa.
--EDIT--
Atradu kljuudu-
m_pD3DDevice->SetRenderState(D3DRS_ALPHABLENDENABLE, FALSE);
Taatad alphablend bija izsleegts.Iesleedzu.Tagad viss straadaa. _________________ long time; /* know C */ |
|
Back to top |
|
|
|