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


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

 
Forum » Comunitate » Imaginea zilei » Relative Engine 3 Screen effects

Imaginea zilei:
» Relative Engine 3 Screen effects
Postat de cippyboy pe 18 Feb 2011 13:46:25 | Galeria "Imaginea Zilei"
Beauty shots din engine-ul pe care am inceput sa-l (re)scriu acum vreun an, bazat from the ground up pe DirectX11. Incepusem cu niste soft shadows, dar recent am adaugat HDR, Bloom, Depth of field, Screen Space Ambient Occlusion. Sper sa-l pot transforma intr-un oarecare demo in curand.

Update 28.II.2011 : Am upgradat DOF-ul, plus o problema cu normal si specular map-urile asa ca am updatat si imaginile in consecinta.

Comentarii pentru aceste imagini:



Pagina 1 din 1 [ 1 ]

Mesaj Info autor
    Postat la 18 Feb 2011 22:32:42    Subiect: < fara subiect >
MithY info:

MithY:

Arata foarte bine. Keep up the good work Very Happy

gamedev for life


Status:
Înregistrat pe:
25 Feb 2007 20:12:02
Vârsta: 22 ani
Mesaje: 443
Locatie: Iasi
Programator
Digital Void Entertainment
 
    Postat la 19 Feb 2011 14:46:41    Subiect: < fara subiect >
Jinx info:

Jinx:

Sweet. Aștept demo-ul. Smile



Status:
Înregistrat pe:
03 May 2007 22:45:14
Vârsta: 20 ani
Mesaje: 753
Locatie: Pitești, Argeș
Game designer

 
    Postat la 19 Feb 2011 22:02:14    Subiect: < fara subiect >
Katalin info:

Katalin:

Imi place cum arata...dar totusi cu depth of field ceva pare in neregula. E din cauza algoritmului pe care il folosesti pentru blur , sau are render targetul rezolutia prea mica ?

Fighting on the internet is like running in the special olympics: even if you win, you're still retarded !


Status:
Înregistrat pe:
02 May 2007 18:38:03
Vârsta: 23 ani
Mesaje: 84
Locatie: Slatina
Programator
LightningTeam
 
    Postat la 20 Feb 2011 00:23:36    Subiect: < fara subiect >
cippyboy info:

cippyboy:

E din cauza ca blur-ul se face prin samplarea unui anumit mipmap al unui render target de rezolutia frame buffer-ului in functie de adancime. The deeper it goes, the bigger the mip level, iar rampa e oarecum liniara.

Ultima editare efectuată de cippyboy pe 20 Feb 2011 00:25:53; 1 editări în total



Status:
Înregistrat pe:
04 Dec 2006 17:14:23
Vârsta: 25 ani
Mesaje: 171
Locatie: Bucuresti
Programator
Relative Team
 
    Postat la 22 Feb 2011 17:16:38    Subiect: Re:
Pintea info:

Pintea:

cippyboy a scris:

E din cauza ca blur-ul se face prin samplarea unui anumit mipmap al unui render target de rezolutia frame buffer-ului in functie de adancime. The deeper it goes, the bigger the mip level, iar rampa e oarecum liniara.


Intr-adevar arata nasol, fa o versiune blurata a scenei -gaussian blur de ex- de minim 1/4, sigur vei avea nevoie de ea pentru alte efecte.

Pana una alta incercati si voi sa explicati in detaliu cum faceti fiecare efect, e mai interesant decat sa ne uitam la niste poze iar tu sa ne enumeri cateva efecte generice.

La fel, o colectie de FX-uri puse la un loc nu creeaza un engine ... povesteste-ne despre pipeline, despre sistemele de baza ale lui.




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

 
    Postat la 23 Feb 2011 04:33:35    Subiect: Re: Re:
cippyboy info:

cippyboy:

Pintea a scris:


Intr-adevar arata nasol, fa o versiune blurata a scenei -gaussian blur de ex- de minim 1/4, sigur vei avea nevoie de ea pentru alte efecte.

Pana una alta incercati si voi sa explicati in detaliu cum faceti fiecare efect, e mai interesant decat sa ne uitam la niste poze iar tu sa ne enumeri cateva efecte generice.

La fel, o colectie de FX-uri puse la un loc nu creeaza un engine ... povesteste-ne despre pipeline, despre sistemele de baza ale lui.


Thanks for the feedback. Aveam deja cod pentru blur de la Bloom, si iata ca am fixat problema cu un pass de blur in loc de mip-maps (vezi ultima poza).

Cat despre fiecare efect in parte, HDR, Bloom si DOF sunt inspirate din sample-urile din SDK-ul de la DirectX11 asa ca nu cred ca necesita o discutie. La SSAO m-am inspirat din sample-ul de la DX10.1 si din cel de la Nvidia si am facut ceva intre care arata ok Very Happy.

Am mai adaugat o poza cu Fullscreen MotionBlur unde shaderu arata asa

Cod sursă:

float3 PrevFrameColor = Texture0.Sample( GlobalSampler, input.Texcoord );
float3 ThisFrameColor = Texture1.Sample( GlobalSampler, input.Texcoord );
    
float Alpha = 0.1;
FinalColor = ThisFrameColor * Alpha + (1-Alpha) * PrevFrameColor;
 


Cat despre engine fiind o colectie de fx-uri, LOL. Da, poate asa pare pentru tine, dar sincer sa fiu nu-mi place sa stau sa discut concepte complexe iar ca rezultat final, nimic pe ecran. Am un topic pe-aici cu detalii despre RE2.X( http://gamedev.ro/forum/topic/50 ) la care editorul ajunsese sa fie mai elaborat decat engine-ul in sine. Editing for the sake of editing Very Happy. Si ce-am facut cu el ? Un mic demo folosind PhysX, numit Spheroid care aproape am uitat ca si exista.

Oricum, ce pot sa zic e ca am lucrat in timpul liber mult mai mult la engine dupa ce a inceput sa arate decent. Sa te chinui la SSAO e mult mai motivant decat sa scrii un exportor de max, sau sa faci un sistem unificat de lumini, sau sa abstractizezi materialele. Si oricum, mai intai vreau sa fie un tech demo, iar apoi un game demo, in principiu din lipsa de timp/resurse.

Ultima editare efectuată de cippyboy pe 23 Feb 2011 04:36:20; 1 editări în total



Status:
Înregistrat pe:
04 Dec 2006 17:14:23
Vârsta: 25 ani
Mesaje: 171
Locatie: Bucuresti
Programator
Relative Team
 
    Postat la 23 Feb 2011 13:54:28    Subiect: Re: Re: Re:
Pintea info:

Pintea:

cippyboy a scris:

Cat despre engine fiind o colectie de fx-uri, LOL. Da, poate asa pare pentru tine, dar sincer sa fiu nu-mi place sa stau sa discut concepte complexe iar ca rezultat final, nimic pe ecran. Am un topic pe-aici cu detalii despre RE2.X( http://gamedev.ro/forum/topic/50 ) la care editorul ajunsese sa fie mai elaborat decat engine-ul in sine. Editing for the sake of editing Very Happy. Si ce-am facut cu el ? Un mic demo folosind PhysX, numit Spheroid care aproape am uitat ca si exista.

Oricum, ce pot sa zic e ca am lucrat in timpul liber mult mai mult la engine dupa ce a inceput sa arate decent. Sa te chinui la SSAO e mult mai motivant decat sa scrii un exportor de max, sau sa faci un sistem unificat de lumini, sau sa abstractizezi materialele. Si oricum, mai intai vreau sa fie un tech demo, iar apoi un game demo, in principiu din lipsa de timp/resurse.


Am impresia ca te-ai atacat putin, nu inteleg motivul. Pur si simplu te-am intrebat ce mai poate face acest engine, ca doar tu ai pus pozele nu eu...
Nu te-am rugat sa prezinti "concepte complexe", ci doar sa ne spui si noua ce naibii vedem, ce se ascunde sub aceste efecte luate din SDK-ul de DX.

Si am impresia ca faci o confuzie, un "graphics engine" e un subsistem al "game engine".

Din cate am inteles din explicatiile tale, aici vedem Relative Tech Demo 3.0 cu o colectie de fx-uri luate din SDK-ul de DX.

Daca e asa motivant sa implementezi SSAO macar povesteste-ne cum ai facut, ca sunt foarte multe variante, ce optimizari ai facut, daca ai adus ceva in plus fata de o anumita varianta. M-as multumi chiar si cu un PDF de pe siteul cutare cu o anume metoda pe care ai implementat-o.

Ce ai vrea sa comentam altfel ? Sa postam o lista mare de "Misto!", "Bestial!", "Curge bala" etc ?



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

 
    Postat la 25 Feb 2011 19:01:17    Subiect: Re: Re: Re: Re:
cippyboy info:

cippyboy:

Pintea a scris:


Nu te-am rugat sa prezinti "concepte complexe", ci doar sa ne spui si noua ce naibii vedem, ce se ascunde sub aceste efecte luate din SDK-ul de DX.


Am scris in post ce se vede : HDR, Bloom, DOF, SSAO si mai nou MotionBlur.

Pintea a scris:


Si am impresia ca faci o confuzie, un "graphics engine" e un subsistem al "game engine".


N-am zis nici ca e graphics engine, nici ca e game engine, nu stiu de ce ai facut presupuneri. Da, momentan e la stadiul de graphics engine, dar va evolua, relax.

Pintea a scris:


Daca e asa motivant sa implementezi SSAO macar povesteste-ne cum ai facut, ca sunt foarte multe variante, ce optimizari ai facut, daca ai adus ceva in plus fata de o anumita varianta. M-as multumi chiar si cu un PDF de pe siteul cutare cu o anume metoda pe care ai implementat-o.


DX SDK : DirectX SDKSamplesC++Direct3D10HDAO10.1
Nvidia SDK : Link, PDF

Iar ca explicatie, nu am folosit un normal buffer separat, am calculat normala din adancimile adiacente pixelului curent, dupa care am mers in depth map in cercuri 2D si am samplat adancimea, dupa care calculat pozitia sample-ului. In functie de produsul scalar din fiecare directie a cercului (am ales 8 directii, 10 iteratii, iar fiecare cerc sare peste 2 pixeli la fiecare iteratie ) adaug contributia la ocluderea pixelului curent. Ca sa iasa mai smooth am adaugat un radical la contributie in functie de distanta la pixelul samplat.

Dup-aia pentru optimizare, am randat la jumatate din rezolutie si am aplicat un gaussian blur dupa care am si contrastat putin ca sa nu iasa prea mult in evidenta.

E probabil cea mai naiva tehnica dar ma bucur ca arata decent.

Ultima editare efectuată de cippyboy pe 25 Feb 2011 19:02:44; 1 editări în total



Status:
Înregistrat pe:
04 Dec 2006 17:14:23
Vârsta: 25 ani
Mesaje: 171
Locatie: Bucuresti
Programator
Relative Team
 
    Postat la 05 Apr 2011 20:22:53    Subiect: < fara subiect >
cippyboy info:

cippyboy:

Si intr-un final si un tech demo sub forma video impreuna cu o comparatie a efectelor la final, enjoy Very Happy.

Relative Engine 3 Tech Demo



Status:
Înregistrat pe:
04 Dec 2006 17:14:23
Vârsta: 25 ani
Mesaje: 171
Locatie: Bucuresti
Programator
Relative Team
 
    Postat la 05 Apr 2011 22:06:07    Subiect: < fara subiect >
Jinx info:

Jinx:

Arată bine, dar conține greșeli ce ar fi putut fi corectate ușor (gen fântâna care plutește parțial din cauză că e poziționată pe sol înclinat). Good job, though!



Status:
Înregistrat pe:
03 May 2007 22:45:14
Vârsta: 20 ani
Mesaje: 753
Locatie: Pitești, Argeș
Game designer

 
    Postat la 07 Apr 2011 13:32:40    Subiect: Re:
nekitu info:

nekitu:

Jinx a scris:

Arată bine, dar conține greșeli ce ar fi putut fi corectate ușor (gen fântâna care plutește parțial din cauză că e poziționată pe sol înclinat). Good job, though!


n-are editor, d-aia Very Happy

SpoOoOoock! Life Is Too Short For Cheap Chocolate


Status:
Înregistrat pe:
29 Sep 2006 11:33:12
Vârsta: 32 ani
Mesaje: 1033
Locatie: Brasov
Programator
7thFACTOR Entertainment Studios
 
    Postat la 07 Apr 2011 17:37:42    Subiect: Re: Re:
cippyboy info:

cippyboy:

nekitu a scris:

Jinx a scris:

Arată bine, dar conține greșeli ce ar fi putut fi corectate ușor (gen fântâna care plutește parțial din cauză că e poziționată pe sol înclinat). Good job, though!


n-are editor, d-aia Very Happy


Mda, n-am dar nu e d-aia Very Happy Imi merge greu maxu cu scena respectiva ( imi mananca ~3GB de ram si se taraie incredibil din cauza materialelor ) asa ca mi-a fost greu sa o pozitionez plus ca ar mai trebui editat si terenu ca sa fie totu plat sub fantana, si nu prea-mi place sa fac pe artistu Very Happy.



Status:
Înregistrat pe:
04 Dec 2006 17:14:23
Vârsta: 25 ani
Mesaje: 171
Locatie: Bucuresti
Programator
Relative Team
 
    Postat la 08 Apr 2011 06:44:03    Subiect: Re: Re: Re:
Jinx info:

Jinx:

cippyboy a scris:

Mda, n-am dar nu e d-aia Very Happy Imi merge greu maxu cu scena respectiva ( imi mananca ~3GB de ram si se taraie incredibil din cauza materialelor ) asa ca mi-a fost greu sa o pozitionez plus ca ar mai trebui editat si terenu ca sa fie totu plat sub fantana, si nu prea-mi place sa fac pe artistu Very Happy.


Nu trebuie neapărat să faci terenul plat. E suficient să creezi o bază mai înaltă la fântână care să intre în teren.

Un alt detaliu care părea nefinisat - textura gărdulețelor de pe turnuri. Părea cam low-res. Ținând cont că e tech demo, detaliile cam contează. Smile



Status:
Înregistrat pe:
03 May 2007 22:45:14
Vârsta: 20 ani
Mesaje: 753
Locatie: Pitești, Argeș
Game designer

 

Pagina 1 din 1 [ 1 ]


Server time: 07:13:18 22.05.2012



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

© 2006 - 2012 Copyright 7thFACTOR Entertainment - All rights reserved