Forum Gry Hobby Sprzęt Rozmawiamy Archiwum Regulamin

Forum: Prośba do ludzi obeznanych z grafiką 3d

30.09.2013 08:24
1
Attyla_bis
35
Konsul

Prośba do ludzi obeznanych z grafiką 3d

Nie wiedziałem, jakiej kategorii użyć, więc użyłem tej ogólnej. W razie pomyłki proszę o wybaczenie.

Do rzeczy.
Jak niektórzy z was wiedzą, zajmuję się modzeniem w Medieval 2 Total War. Oczywiście wymaga to także wiele pracy z grafiką 3d.
I tu jest pewien "mały" problem. Do każdego modelu jednostki muszę dodawać pliki normalmap. Wiem jak to robić ale nie mam bladego pojęcia jak to edytować.
Chodzi o to, że każdy model, po umieszczeniu jego tekstury normalmap w grze błyszczy, jakby cały był zrobiony z metalu.
Już wiem, że problem jest z odcieniem. Biały daje maksymalne błyszczenie, szary normalne a czarny daje ponoć całkowity brak błysku. Niestety, nie mam bladego pojęcia jak to zrobić.
Czy ktoś z was ma jakąś na ten temat wiedzę i czy mógłby mi dać jakąś radę jak sobie z tym radzić?
Przejrzałem wiele tekstów w sieci na temat normalmap i bump ale 99% z nich to jakaś teoria, z której nic nie pojmuję a reszta dotyczy prostackich rzeczy jak np. zmiana tła w zdjęciu itp banały.

30.09.2013 10:23
Erazor_XX
2
odpowiedz
Erazor_XX
89
give it to me baby!

Za błyszczenie powierzchni odpowiada spectacular / specularity map - mapa odbić. Tutaj faktycznie kolor biały - maksymalne błyszczenie, kolor czarny - brak połysku (przejścia w odcieniach szarości). Mapa normalnych - opis geometrii, nie połysku (dodatkowo zabieg tzw. mapowania normalnych służy symulowaniu wypukłości na płaskich wielokątach).

Nie wiem jak to wygląda / jest powiązane ze sobą w Total War, bo jedynie liznąłem grafiki 3d, nie robiłem modeli do gier.

Tutaj porównanie jak wyglądają różne typy tekstur:
http://4.bp.blogspot.com/-3uhV6HqGzoU/UQXl_owHtzI/AAAAAAAABOA/PymxZeTAzcE/s1600/boom_minitutor.jpg

30.09.2013 11:24
3
odpowiedz
Attyla_bis
35
Konsul
Image

Zapomniałem dodać, że używam GIMPa.

Wiem też czym jest normalmap ale nie zmienia to faktu, że błyszczy jak diabli :)
tworząc normalmap używam ustawień standardowych dla medievala, tj:
filter: Sobel 3x3
minimum z: 0,55000
sckale: 5,50000
heigh source: Average RGB
alpha channel: height
convercion: biased RGB
du/dv map: none
+ wrap
Wychodzi coś takiego jak na załączonym obrazku.
Z tego, czego dowiedziałem się na total war center to kwestia ustawień kanału alfa ale wszyscy używają tam photoshopa i nie umieli mi pomóc. Dlatego tutaj zadałem to pytanie.
Próbowałem różnych sztuczek: zmieniałem kolor odwzorowania na alfie, pomalowałem pędzlem cały kanał alfa na czarno itd. Czasem wychodzi nieco lepiej a czasem o wiele gorzej. Nigdy nie udało mi się uzyskać tego, czego chcę, a co można zobaczyć na modelu generała (pierwszy z prawej).

30.09.2013 12:22
4
odpowiedz
Cyniczny Rewolwerowiec
109
Senator

Przy tworzeniu normalmapy paramter Alpha Field musisz ustawić na Unchanged, nie na Height. To może ci bruździć, bo zamiast alphy która sobie tworzysz on bierze wartość "height", która w tym wypadku oznacza Average RGB.

30.09.2013 17:29
5
odpowiedz
Attyla_bis
35
Konsul
Image

Nic z tego nie wyszło, chociaż trójwymiarowość oddaje jak trzeba:

01.10.2013 11:09
6
odpowiedz
Cyniczny Rewolwerowiec
109
Senator

No to teraz kanał alpha musisz zrobić ciemniejszy - na próbę po prostu czarny.
Załącz screena z gimpa jeśli możesz, wtedy łatwiej będzie mi pomóc.

01.10.2013 14:52
7
odpowiedz
Attyla_bis
35
Konsul
Image

Już chyba znalazłem rozwiązanie. Daję najpierw desaturację, potem inwersję. Potem standardowa procedura uruchamiania wtyczki NVIDIi w GIMPie. I na koniec kopiowanie obrazu normalmap i wklejenie go na czysty plik normal z vanilii. Wtedy wychodzi coś takiego jak na obrazku.

Niestety, nie rusza to struktury pliku. To znaczy, że zachowane są wypukłości z oryginału a je nie wiem jak to wyczyścić i zastąpić swoimi (gumka i ustawienie progu alfy na maksa nic nie daje).

01.10.2013 15:25
8
odpowiedz
zanonimizowany792388
37
Generał

Od razu mowie, ze nie wiem jakie sa wymogi tworzenia normalmapy dla Medievala.

Konwersja pierwszego lepszego koloru na normalmape, to zly pomysl, poniewaz normalmapa nie reprezentuje kolorow tylko zwrot powierzchni w postaci wektorow zapisanych w kanale RGB.

Jak chcesz uzyskac normalmape bez modyfikacji oryginalnych wektorow normalnych siatki, to wypelnij teksture normalki kolorem RGB 128, 128, 255. W tym przypadku nie bedziesz potrzebowal konwertera NV.

Jesli kanal alpha z normalmapy jest do czegos wykorzystywany, to upewnij sie ze go dobrze zapisujesz.
I co miales na mysli piszac " I na koniec kopiowanie obrazu normalmap i wklejenie go na czysty plik normal z vanilii" ?

01.10.2013 15:50
9
odpowiedz
Attyla_bis
35
Konsul

I co miales na mysli piszac " I na koniec kopiowanie obrazu normalmap i wklejenie go na czysty plik normal z vanilii" ?
Dosłownie :) To znaczy kopiuję zrobione tekstury dla normalmapy. Następnie otwieram plik normalmap z "czystej" wersji medievala i wklejam to, co zrobiłem.

Jak chcesz uzyskac normalmape bez modyfikacji oryginalnych wektorow normalnych siatki, to wypelnij teksture normalki kolorem RGB 128, 128, 255. W tym przypadku nie bedziesz potrzebowal konwertera NV.
A jak to zrobić w GIMPie?

01.10.2013 16:18
10
odpowiedz
zanonimizowany792388
37
Generał

Dosłownie :) To znaczy kopiuję zrobione tekstury dla normalmapy. Następnie otwieram plik normalmap z "czystej" wersji medievala i wklejam to, co zrobiłem.

A czy niektore tekstury z Mediewala maja w normalmapie jakies nietypowe wartosci w kanale alpha ?

A jak to zrobić w GIMPie?

Wypelniasz kolorem tlo w tym kolorze ktory podalem :)

01.10.2013 16:28
11
odpowiedz
Attyla_bis
35
Konsul

cruiser [ gry online level: 27 - Generał ]
A czy niektore tekstury z Mediewala maja w normalmapie jakies nietypowe wartosci w kanale alpha ?
Nie mam bladego pojęcia. Cały czas mówi się o normalmapie i bumpie. Nie ma osobnego pliku dla tego bumpa, więc musi to być zapisane razem. Bump dotyczy właśnie tych wklęsłości i wypukłości (o ile dobrze to zrozumiałem), więc te zachowane wypukłości i wklęsłości muszą być pozostałością tego właśnie bumpa.

Wypelniasz kolorem tlo w tym kolorze ktory podalem :)
Tło czyli co? To, co jest obecnie przeźroczyste?

01.10.2013 17:01
12
odpowiedz
zanonimizowany792388
37
Generał

Nie mam bladego pojęcia. Cały czas mówi się o normalmapie i bumpie. Nie ma osobnego pliku dla tego bumpa, więc musi to być zapisane razem. Bump dotyczy właśnie tych wklęsłości i wypukłości (o ile dobrze to zrozumiałem), więc te zachowane wypukłości i wklęsłości muszą być pozostałością tego właśnie bumpa.

Po otwarciu tekstury z Medievala w Gimpie sprawdz czy kanal alpha jest pusty lub czy ma jakies wartosci. Jesli ma wartosc, to musza byc one wykorzystywane w konkretnym celu. Tutaj trzeba sprawdzic dokumentacje gry lub sdk z czym to sie "je". Normalmapa a bump to prawie to samo, roznica jest tylko w sposobie obliczania "cieniowania" tworzacego gotowy material.

Tło czyli co? To, co jest obecnie przeźroczyste?
Otworz plik "czystej" normalmapy z medievala, potem zmien foregorund color na RGB(128,128,255), wypelnij otwarty plik tym kolorem uzywajac narzedzia Bucked Fill Tool(skrot klawiszowy Shift+B). Zapisz i gotowe.

01.10.2013 17:30
13
odpowiedz
Attyla_bis
35
Konsul

Po otwarciu tekstury z Medievala w Gimpie sprawdz czy kanal alpha jest pusty lub czy ma jakies wartosci. Jesli ma wartosc, to musza byc one wykorzystywane w konkretnym celu. Tutaj trzeba sprawdzic dokumentacje gry lub sdk z czym to sie "je". Normalmapa a bump to prawie to samo, roznica jest tylko w sposobie obliczania "cieniowania" tworzacego gotowy material.
A może teraz po polsku? :D
Bardzo mi przykro ale powoli zaczynam się czuć jak na tureckim kazaniu :)
Jak mam sprawdzić ten kanał alfa i gdzie będą te "wartości", o których piszesz?

Otworz plik "czystej" normalmapy z medievala, potem zmien foregorund color na RGB(128,128,255), wypelnij otwarty plik tym kolorem uzywajac narzedzia Bucked Fill Tool(skrot klawiszowy Shift+B). Zapisz i gotowe.
A używając języka polskiego? Mam polską wersję gimpa, więc będę miał problem ze zidentyfikowaniem tego, co te słowa znaczą.
Foreground - to znaczy co? Pierwszy plan? To znaczy, że co mam zrobić? Zrobić desaturację tekstur i zabarwić je na zadany kolor za pomocą narzędzia Kolory->Barwienie?
Nie wiem też co to za diabeł ten Bucked Fill (narzędzie Wypełnij? Jeżeli to rzeczywiście ma być wypełnienie, to działa to tylko na jednolitym polu - bez zmian barw, więc nie da się wypełnić tym kolorem wszystkiego).
Słowem - nic nie zrozumiałem :(

01.10.2013 18:38
14
odpowiedz
zanonimizowany792388
37
Generał

A używając języka polskiego? Mam polską wersję gimpa, więc będę miał problem ze zidentyfikowaniem tego, co te słowa znaczą.
Foreground - to znaczy co? Pierwszy plan? To znaczy, że co mam zrobić? Zrobić desaturację tekstur i zabarwić je na zadany kolor za pomocą narzędzia Kolory->Barwienie?
Nie wiem też co to za diabeł ten Bucked Fill (narzędzie Wypełnij? Jeżeli to rzeczywiście ma być wypełnienie, to działa to tylko na jednolitym polu - bez zmian barw, więc nie da się wypełnić tym kolorem wszystkiego).

Bucked Fill to narzedzie do wypelniania wybranego lub calego obszaru kolorem(nazywanego wlasnie foreground color): http://docs.gimp.org/2.4/pl/gimp-tool-bucket-fill.html

To czy obraz posiada kanal alpha sprawdzasz w oknie "Kanaly". Jesli po otwarciu normalmapy z medievala na liscie bedzie znajdywac sie wpis "Alpha" i obrazek po lewej nie bedzie wypeliony pelnym bialym kolorem, to znaczy ze w tym miejscu beda zapisywane dodatkowe informacje dla renderera gry.

01.10.2013 19:36
15
odpowiedz
Attyla_bis
35
Konsul

W zakładce Kanały pod czerwonym. zielonym i niebieskim jest alfa. Teraz 2 pytania:
1. w jaki sposób ustawić ten kolor 128,128,255? Gdy otworzę okno dialogowe ustawiania koloru, mam 6 pól a nie 3. Jest też pole z zapisem koloru w HTML. Nie wiem, gdzie ustawić ten kolor.
2. tym narzędziem mogę wypełnić tylko przeźroczyste pola. Jeżeli mam pomalować cały kanał alfa - czyli zamalować także odwzorowanie zrobione przez wtyczkę NVIDIi, to chyba lepiej będzie użyć pędzla?

01.10.2013 19:56
16
odpowiedz
Attyla_bis
35
Konsul

Zapomniałbym. Kanał alfa nie jest wypełniony białym kolorem. Są na nim takie same odwzorowania, co w warstwie głównej, tyle, że w kolorze czarnym

01.10.2013 21:14
17
odpowiedz
zanonimizowany792388
37
Generał

1. w jaki sposób ustawić ten kolor 128,128,255? Gdy otworzę okno dialogowe ustawiania koloru, mam 6 pól a nie 3. Jest też pole z zapisem koloru w HTML. Nie wiem, gdzie ustawić ten kolor.

W tym oknie wpisujesz w kazdej skladowej R, G, B wartosci ktore podalem. Reszte zostawiasz w spokoju. Po wypelnieniu tla zobaczysz niebieskawy kolor

Zapomniałbym. Kanał alfa nie jest wypełniony białym kolorem. Są na nim takie same odwzorowania, co w warstwie głównej, tyle, że w kolorze czarnym

Zrob kilka wersji normalmapy zapisujac kanal alpha losowa wartoscia. Sprawdz czy w grze widac jakies wieksze zmiany.

01.10.2013 21:54
18
odpowiedz
zanonimizowany250573
98
Generał
Image

Attyla_bis --- Niestety nie grywam w Medieval 2, ale podejrzewam, z powodu twoich problemów z wartością specular, że silnik gry obsługuje normalmapy podobnie jak w Skyrimie.
Wartości rgb to właściwa mapa normalnych, natomiast w kanale alpha zapisane są wartości specular, czyli co i jak ma się błyszczeć.
Mapa normalnych raczej nie jest do zrobienia ręcznie, można ją za to podrasować. Powinna tak wyglądać:

01.10.2013 21:54
19
odpowiedz
zanonimizowany250573
98
Generał
Image

Natomiast tak wygląda specular do tej mapy zapisany w kanale alpha:

01.10.2013 22:06
20
odpowiedz
zanonimizowany250573
98
Generał
01.10.2013 23:08
21
odpowiedz
Attyla_bis
35
Konsul

Ja tego nie rozumiem po polsku a co dopiero po murzyńsku...Chyba odpuszczę sobie robienie normalmap i wrócę do poprzedniej metody. Bez photoshopa i możliwości zmiany ustawień kanału alfa wiele nie zdziałam.

02.10.2013 01:27
22
odpowiedz
zanonimizowany250573
98
Generał

Attyla_bis --- Nie poddawaj się tak łatwo. Gimp to nie moja specjalność, nie mogę pomóc, ale kanał alfa chyba obsługuje.
Ja jestem dzieckiem photoshopa. Najnowsza wersja, oczywiście, już nie do kupienia, ale do wynajmowania. Ach, ten galopujący biznes oprogramowania :)
Ostatnio kiedy usiłowałem przeinstalować wersję, którą posiadam legalnie, czyli CS2, okazało się, że wyłączyli serwery aktualizacji.
Lecz o dziwo, firma Adobe, wersje CS2 swoich programów, pozbawione zabezpieczeń w postaci autoryzacji przez internet, udostępniła do ściągnięcia wraz z numerami seryjnymi:

http://helpx.adobe.com/x-productkb/policy-pricing/creative-suite-2-activation-end-life.html

kilkamy: 2. Download and install CS2 applications. Trzeba posiadać "Adobe Membership ID", czyli zarejestrować się na stronie Adobe no i nie ma wersji polskiej.
Może komuś przyda się taka informacja :) bo nie wiem jak długo będzie to możliwe.

02.10.2013 07:29
23
odpowiedz
Attyla_bis
35
Konsul

Obsługuje ale nie ma możliwości ustawiania (nie wiem jak to nazwać) intensywności - nie wiem - błyszczenia czy coś...
Na TWC piszą, że każdą normalmapę trzeba w ten sposób poprawiać, bo inaczej nie nadaje się do użytku. Wobec GIMPa jest tylko pomysł polegający na zaznaczeniu części, które mają być metalowymi i wklejenie ich na wyczyszczony plik normalmap z vanilii.
Kłopot z nim jest ten, że zachowuje informacje o wklęsłościach a ja nie umiem ich wymazać.
A może ktoś mógłby mi zrobić taki czysty plik do normalmap używając photoshopa?

02.10.2013 10:17
24
odpowiedz
Attyla_bis
35
Konsul

Kolega zaproponował mi pożyczenie swojego photoshopa, bym mógł spróbować, czy to w czymś pomoże. Ma on wersję 9 CS2. Jeżeli będzie pomocne, to mogę to od niego kupić. Tylko jeden "drobiazg". Nie mogę znaleźć wtyczki NVIDII do niego. Czy ktoś mógłby mi w tym pomóc?

02.10.2013 12:10
25
odpowiedz
zanonimizowany792388
37
Generał

Obsługuje ale nie ma możliwości ustawiania (nie wiem jak to nazwać) intensywności - nie wiem - błyszczenia czy coś...

Specular/shininess, czyli ta intensywnosc regulujesz rysujac w kanale alpha. Zaznaczasz TYLKO kanal alpha i w nim modyfikujesz pixele uzywajac pierwszego lepszego narzedzia do rysowania, np. wypelnianie kubelkiem.

Photoshop czy jakis inny program, na to samo wychodzi.

Wtyczka NVidii do generowania normalmapy dla PS i Paint Shop Pro jest dostepna na stronie NVidii.

02.10.2013 12:28
26
odpowiedz
Attyla_bis
35
Konsul

Znalazłem jeszcze coś takiego:
http://www.twcenter.net/forums/showthread.php?81010-How-to-make-a-normal-texture-file
Niestety, w drugim kroku mam problem. Według tego tutorialu powinienem wkleić skopiowany do schowka obrazek na kanał alfa.
Zaznaczam ten kanał alfa i daję crtl+v ale obrazek nie wchodzi na kanał alfa. Jak to zrobić?

02.10.2013 12:31
27
odpowiedz
zanonimizowany792388
37
Generał

Musisz zaznaczyc kanaly R, G, B, ctr+c, odznaczyc RGB i zaznaczyc kanal Alpha, ctrl+v.

02.10.2013 13:15
28
odpowiedz
zanonimizowany250573
98
Generał

Wtyczka do photoshopa:

https://developer.nvidia.com/nvidia-texture-tools-adobe-photoshop

Sam używam w wersji CS2 pod Windows 7 64 bit.
Jeżeli będziesz potrzebował pomocy to dopiero wieczorem.
W tym tutorialu, który podałeś, normalne są zrobione na zasadzie mapy wypukłości, ze zwykłej bitmapy, plus edycja kanału alfa, zwiększenie kontrastu i wymazanie ciuchów, żeby się nie błyszczały.

02.10.2013 21:08
29
odpowiedz
Attyla_bis
35
Konsul

Wtyczkę zainstalowałem ale plików dds toto nie otwiera.

03.10.2013 09:05
30
odpowiedz
zanonimizowany250573
98
Generał

Attyla_bis --- to może wrzuć gdzieś ten plik do ściągnięcia. Postaram się mu przyjrzeć i zrobić te normalmapy plus specular :)

03.10.2013 09:48
👍
31
odpowiedz
Attyla_bis
35
Konsul

Super! Dziękuję zawczasu :) Zrobię to po powrocie do domku :)

ps. A może przysłać ci to skypem albo mailem?

03.10.2013 10:08
32
odpowiedz
zanonimizowany250573
98
Generał

Wystaw na sendspace. Skype nie używam.

03.10.2013 10:55
33
odpowiedz
Attyla_bis
35
Konsul

OK

Jeszcze pytanie: co to znaczy plus specular? Chodzi ci o to "błyszczenie"?
Fajne ale wiele mi to nie pomoże. Nogę cię prosić o zrobienie jednej rzeczy, ale przy pracy nad modem muszę wykonywać dziesiątki takich rzeczy. I pewnie jedyną radą dla mnie jest tylko przyjęcie "starej" metody, tj. robienie normalmap szczątkowych - tylko dla tych części, które mają się błyszczeć :)

ps. A mógłbyś mi zrobić "czystą" normalmapę uwzględniającą wyłącznie odwzorowania matowe? To pozwoli mi unikać tych nieszczęsnych wklęsłości i wypukłości pochodzących z vanilii, których nie potrafię usunąć.

03.10.2013 12:26
34
odpowiedz
zanonimizowany250573
98
Generał

Postaram się zrobić jak w tym tutorialu który zamieściłeś.

03.10.2013 19:07
35
odpowiedz
Attyla_bis
35
Konsul
04.10.2013 09:56
36
odpowiedz
Attyla_bis
35
Konsul
Image

Już wiem jak to robić. W GIMPie rzeczywiście nie można edytować kanału alfa, więc zrobiłem inaczej: po desaturacji daję jasność i kontrast i wtedy (przed włączeniem filtra NVIDIi) ściemniam obrazek by uzyskać to, co chcę.
Dziękuję, że podtrzymałeś mnie na duchu :)

Wychodzi coś takiego (zrobiłem nową normalmap dla ladrowania):

04.10.2013 11:30
37
odpowiedz
zanonimizowany250573
98
Generał

Cieszę się, że sobie poradziłeś :) Jakby co to masz tu link do tego co ja zrobiłem. Nie wiem czy wypukłości nie są za duże, ale zrobiłem wedle tutoriala.

Pozdrowienia

http://www.sendspace.com/file/rqr2zf

04.10.2013 15:22
👍
38
odpowiedz
Attyla_bis
35
Konsul
Image

A jednak ten photoshop może być przydatny. Wspaniała robota! :)
Tak to wygląda:

ps. jak to zrobiłeś, że ci photoshop ddsy otwiera?

04.10.2013 19:39
39
odpowiedz
zanonimizowany792388
37
Generał

W GIMPie rzeczywiście nie można edytować kanału alfa,

Mozna spokojnie

Photoshop wspiera DDS po zainstalowaniu wtyczki ze strony NVIDII. Dziala ona takze bezproblemowo z PaintShopPro. Gotowa texture mozna zapisac w dowolnym formacie w DDS - 1D,2D, 3D(hardmode ;)) i Cubemap

04.10.2013 20:22
40
odpowiedz
Attyla_bis
35
Konsul

cruiser [ gry online level: 27 - Generał ]
Mozna spokojnie
Jak?

06.10.2013 19:11
41
odpowiedz
zanonimizowany250573
98
Generał

Instalujesz wtyczkę od Nvidii i już. Link podałem wcześniej, nie ma tu żadnej magii :)

06.10.2013 21:41
42
odpowiedz
Attyla_bis
35
Konsul

Już jest nieźle :) Znalazłem sposób na manipulowanie kanałem alfa w gimpie.
Rozstałem się z myślami o photoshopie :D
Bez żalu z mojej strony :P

06.10.2013 22:34
43
odpowiedz
zanonimizowany250573
98
Generał

Wspaniale. Trzeba popierać darmowe oprogramowanie. Teraz wszystko już w twoich rękach. Powodzenia :)

Forum: Prośba do ludzi obeznanych z grafiką 3d