Normālvektoru tekstūru ģenerators

Viss par spēļu vizuālā izskata veidošanu no mākslinieciskās puses - 3D, 2D modelēšana, dizainēšana u.tml.
Post Reply
Message
Author
snake5
Posts: 358
Joined: 07 Dec 2010, 03:54
Contact:

Normālvektoru tekstūru ģenerators

#1 Post by snake5 » 12 Apr 2011, 21:08

Uztaisīju nesen šādu rīku.
Dabūt var šeit: http://www.box.net/shared/yt5utytac9
Vairāk informācijas var atrast blogā: http://snake5.wordpress.com/2011/04/12/ ... enerators/
Ceru, ka kādam noderēs. Gaidu ieteikumus un atrastās kļūdas. :)

elvman
Posts: 429
Joined: 06 Dec 2010, 18:43
Location: Rīga
Contact:

Re: Normālvektoru tekstūru ģenerators

#2 Post by elvman » 12 Apr 2011, 21:41

Cool! Vēlāk notestēšu.
No pieredzes ieteiktu publicēt arī Sourci, jo tad pa visiem kopā kļūdas daudz ātrāk varēs atrast un būs daudz labu ieteikumu, kas tikai audzēs tavu skillu.
Vēl viens ieteikums: vai nevarētu pielikt vēl height mapes konvertāciju uz normal mapi (un otrādi), tad šis rīks būtu pavisam cool.
Beidz runāt, sāc darīt!

bubu
Guru
Guru
Posts: 398
Joined: 07 Dec 2010, 11:54

Re: Normālvektoru tekstūru ģenerators

#3 Post by bubu » 12 Apr 2011, 21:58

emm... Wtf? Kā tad var normālvektorus ģenerēt no tekstūras? Tur jau pilnīgs randoms sanāk.
Tā ir tikai lieka informācija (tava ģenerētā normālmape). Tikpat labi šeiderī normāles vietā var lietot normalize(tex2D(color_tex, uv).rgb). Tas pats efekts būs. Piereizini/pieskaiti skaitli un dabūsi visdažādākos (de)fektus par velti (resursu ziņā).
Normālmapi var ģenerēt tikai un vienīgi no augstakās detalizācijas modeļa (poligonu vai analītiskā) vai arī no heightmapes.

Kļūdas ir trūkstošais (un vispār kam tekstūru ģenerētājam vajadzīgais?) OpenAL32.dll fails NormalMapGen.exe failam :)

snake5
Posts: 358
Joined: 07 Dec 2010, 03:54
Contact:

Re: Normālvektoru tekstūru ģenerators

#4 Post by snake5 » 12 Apr 2011, 22:10

elvman:
Heightmapi var konvertēt, ielādējot to kā tekstūru un uzstādot "depth midpoint" uz 1 un "depth power 1" uz 1.
Otrādu konvertēšanu negribētos likt, jo citi rīki jau to dara pietiekami labi ar 1 operāciju. Šī rīka mērķis bija aizstāt vairākas laikietilpīgas darbības ar vienu.

bubu:
Ģenerē no diffuse (albedo) tekstūras. Nekāds randoms tas nav, standarta prakse.
Un paldies par to kļūdu, mēģināšu uztaisīt tūlīt tā, ka to failu nevajadzēs. :)

EDIT: Uzliku jauno versiju, vairāk nevajadzētu prasīt OpenAL32.dll.

bubu
Guru
Guru
Posts: 398
Joined: 07 Dec 2010, 11:54

Re: Normālvektoru tekstūru ģenerators

#5 Post by bubu » 12 Apr 2011, 23:55

Nu kamoon, kā nu nav randoms. Ja es tev iedošu pilnīgi sarkanu bildi, tad kāda normālmape tev sanāks? Viena krāsa? Gradients? Tajā sarkanajā bildē nav ne kripatiņas no ģeometriskās informācijas. Tāpat kā tavā ielinkotajā akmeņu bildē. Nesaprotu kā to var nesaprast...

snake5
Posts: 358
Joined: 07 Dec 2010, 03:54
Contact:

Re: Normālvektoru tekstūru ģenerators

#6 Post by snake5 » 13 Apr 2011, 00:05

Kurš teica, ka jābūt ģeometriskai informācijai? Vienīgais normālmapes uzdevums - uzlabot virsmas izskatu. Ja vajag reālismu vai kaut kādu precizitāti, var veidot heightmapes un normālvektorus rēķināt šeiderī.

bubu
Guru
Guru
Posts: 398
Joined: 07 Dec 2010, 11:54

Re: Normālvektoru tekstūru ģenerators

#7 Post by bubu » 13 Apr 2011, 10:28

Jā, tieši tā - normālmapes uzdevums ir uzlabot virsmas izskatu (normāle = ģeometrijas informācija). Un tā to dara iekodētejot augstākas kvalitātes ģeometrijas aprakstu normāltekstūrā. Un šo informāciju tu izmanto apgaismojumā (bumpmappings) un/vai arī teselācijā (PN-tessellation). Protams, tikpat labi abu iepriekšējo uzdevumu risina arī heightmape, kura resursu ziņā ir "lētāka" (vietas ziņā).

elvman
Posts: 429
Joined: 06 Dec 2010, 18:43
Location: Rīga
Contact:

Re: Normālvektoru tekstūru ģenerators

#8 Post by elvman » 13 Apr 2011, 15:56

Man gan ir nācies redzēt šādus tūļus arī agrāk. Tā uzdevums ir līdzīgs kā tooliem, kas no melnbaltas bildes mēģina uzģenerēt krāsainu. Protams, tur ir diezgan liels randoms, bet var panākt kaut kādu efektu. Neesmu pētījis šo algoritmu, bet parasti tie analizē pikseļus pēc to gaišuma un mēģina noteikt cik dziļi tas varētu būt dzīvē. Patiesībā jau, ja tu nofotografē negludu zemi, tad ir tikai 2 veidi, kā veidot bump mapu - ar roku, vai ar šāda tipa tooli (pēc tam pielabojot ar roku). Manuprāt, otrais variants izskatīsies daudz reālāk.
Beidz runāt, sāc darīt!

snake5
Posts: 358
Joined: 07 Dec 2010, 03:54
Contact:

Re: Normālvektoru tekstūru ģenerators

#9 Post by snake5 » 13 Apr 2011, 16:48

Es drīz uztaisīšu aprakstu visai sistēmai, lai būtu skaidrs, ko šis rīks dara. :P

EDIT: Ok, nedaudz aizrāvos ar rakstīšanu: http://snake5.wordpress.com/2011/04/13/ ... eneresana/ :D

martinszeme
Posts: 2
Joined: 25 Jul 2011, 18:07

Re: Normālvektoru tekstūru ģenerators

#10 Post by martinszeme » 25 Jul 2011, 18:16

bubu wrote:emm... Wtf? Kā tad var normālvektorus ģenerēt no tekstūras? Tur jau pilnīgs randoms sanāk.
Tā ir tikai lieka informācija (tava ģenerētā normālmape). Tikpat labi šeiderī normāles vietā var lietot normalize(tex2D(color_tex, uv).rgb). Tas pats efekts būs. Piereizini/pieskaiti skaitli un dabūsi visdažādākos (de)fektus par velti (resursu ziņā).
Normālmapi var ģenerēt tikai un vienīgi no augstakās detalizācijas modeļa (poligonu vai analītiskā) vai arī no heightmapes.

Kļūdas ir trūkstošais (un vispār kam tekstūru ģenerētājam vajadzīgais?) OpenAL32.dll fails NormalMapGen.exe failam :)

Neesmu programmeetaajs, bet straadaaju profesionaali 3D taapeec sava pieredze ir ar sho visu.
Normal mapes var gjenereet no jebkura atteela kuram visos 3 kanaalos ir kaut kaada informaacija. Tas taa, ja vienkaarshi par to runaa. Nekaads randoms nesanaaks :) Cilveeki to veiksmiigi dara jau ui cik ilgi. Pietiekami daudz populaaru programmu, kas to dara jau gadiem ilgi - Crazybump, Ndo utt.

Tad man jaajautaa, kas tad savaa buutiibaa ir heightmap? Tiiri no maakslinieciskaa, ne programmeetaaj viedoklja. Tiiri labi par heightmap var izmantot bumpmapi. Un ja to padara veel vienkaarshaaku tad bumpmapi (sliktu gan) var ieguut pa taisno no kraasu tekstuuras iznjemot visu kraasu informaaciju no taa un nedaudz ar Curves paspeeleeties PS.

Sheit speelju devu foruma Wiki (vairaak gan 3d/2d) kur viss paskaidrots: http://wiki.polycount.com/NormalMap?hig ... ing%5Cb%29

Post Reply

Return to “Dizains, modelēšana un vizuālā māksla / Design, modelling and visual art”