![]() |
Om det här är ditt första besök, se till att gå till vår FAQ (finns även länk till FAQ i navigeringsmenyn ovan). Du kan behöva att registrera dig innan du kan posta (finns även en länk till registrering i navigeringsmenyn ovan). För att titta på inlägg, välj det forum som du vill besöka från de som är listade nedan. |
|
![]() |
|
Ämnesverktyg | Visningsalternativ |
|
![]() |
#1 | |
Medlem
Reg.datum: Nov 2016
Ort: Vänersborg
Inlägg: 603
|
![]() Citat:
Det ser VÄLDIGT bra ut
__________________
Stinsen Brinner för Bergslagernas Järnvägar. ![]() ![]() Edwin Bohm |
|
![]() |
![]() |
![]() |
#2 |
Medlem
Reg.datum: Jan 2008
Ort: Uppland, Sverige
Inlägg: 2 728
|
![]()
Som utlovat en i en annan tråd, en liten utläggning om material och framtiden med PBR (Physically Based Rendering).
Börjar närma mig den punkt där jag fastnade i mitt förra ångloksprojekt, nämligen material- och textureringssteget. Denna gång är jag dock beväpnad med en arsenal av ny kunskap och nya verktyg som förhoppningsvis kommer att hjälpa mig. Den gången så tänkte jag, "TGOJ-lok, de är ju gröna! Vi målar texturen till tankarna och hytten helgrön och slänger på TGOJ-loggan så blir det säkert bra!". Men det såg rent ut sagt fördjävligt ut. Varför? Låt oss kika på hur motsvarande skulle se ut på Sa 1277: WIP9_material_noref.jpg Detta är alltså enbart den diffusa komponenten, bara en nära helsvart textur utan några som helst detaljer, förutom SJ:s väldigt vackra monogram som de använde fram till 1942. Men det ser inte realistiskt ut alls! Och anledningen förklarade jag i min utläggning om PBR i förra tråden; alla, ALLA material har en reflekterande komponent! Och i detta fallet är det ju målad plåt vilket innebär att materialet är dielektriskt och alltså ska ha både denna diffusa komponent med färgen i (även om den är mest svart i detta fallet...) och en reflekterande komponent. Detta hade jag delvis fattat när jag byggde mina plåtvagnar. Jag visste att det saknades något som reflekterades i plåten, det såg man tydligt om man jämförde leveransbilder på blankpolerade vagnar med mina helbruna modeller. Trainz har sedan flera versioner tillbaka ett visst stöd för att reflektera saker med olika metoder som jag aldrig använt, men jag beslöt att lösa det genom att rita in statiska reflektioner i texturen istället. (varför lära sig något nytt när man får chansen liksom? ![]() Men eftersom det går redan nu i Trainz att ha mer korrekta reflektioner, vilket kommer bli ännu bättre i framtiden, låt oss nu lägga till en riktig reflektion på modellen för att se hur det ser ut! Den diffusa texturen är precis samma som i första bilden, men jag har ställt in materialet på att ha en reflektiv komponent också, alltså är detta ett korrekt dielektriskt material. De diffusa och reflekterande komponenterna blandas på ett fysikaliskt korrekt sätt (något som kommer med PBR till Trianz) baserat på något som kallas Fresnel-effekten (uttalas Frenell, efter en fransk fysiker Augustin-Jean Fresnel som bland annat gjort sig känd i järnvägsvärlden som uppfinnare av de linser vi använt i ljussignaler de senaste hundra åren ![]() Detta ser ut såhär: WIP10_material_ref.jpg Stor skillnad! Det ser fortfarande inte ut som ett ånglok, men det ser klart realistiskare ut! Lite åt plasthållet och pannan ser ut att vara blankpolerad, målad metall. En modell av ett plastmodellsånglok kanske? Nästa steg mot realism är att använda de åtskilliga timmar jag ägnade åt att peta dit varenda synlig (och osynlig...) nit på loket genom att göra om texturen till en korrekt bumpmap. En bumpmap är alltså en gråskaletextur där ljusa partier markerar att punkten är upphöjd och mörka partier att den är nedsänkt. Genom att jämföra intilliggande pixlar kan rendermotorn räkna ut en lutning på ytan och använda den för att få till små höjdskillnader och ojämnheter på hyfsat plana ytor. Här används det för att få nitarna att dyka upp. Jag har också kombinerat bump-texturen med mina handritade nitar med att lite hastigt slänga på en lätt vågig yta för att ge sken av bucklig plåt. Resultatet av detta ser ut som följer: WIP11_material_ref_bump.jpg Voilà! Plötsligt känner vi stenkolsdoften i näsan! Detta är hur ett ånglok ser ut! För reflektioner är små ojämnheter i ytan väldigt viktiga, de gör otrolig skillnad! Vidare kan man förbättra detta ytterligare genom att lägga till smutsfläckar och med en till textur styra roughness, alltså hur skarp reflektionen är. Smuts är ju också dielektriskt men har en mycket otydligare reflektion. Jag kommer också spendera lite mer tid på att få bumpmappen snygg genom att jämföra bucklighet och struktur på förebilden och försöka efterlikna det. Sedan måste bump-mappen konverteras till en normal-map vilken innehåller samma information, men är snabbare för datorn att jobba med då lutningen är färdigberäknad och nedskriven som färger i en texture. Jag ritar dock bumpmappen istället för en normalmap direkt för att det är enklare att tänka i termer av höjd än tredimensionella koordinatsystem mappade som färg... ![]() Sedan kommer ju resultatet i simulatorn inte att bli lika fantastiskt som dessa bilder är, som är framräknade av en riktig pathtracer. Dessa tog en minut att räkna fram, men hyfsat likvärdiga resultat borde gå att få i Trainz i framtiden i realtid!
__________________
-k- Senast redigerad av korvtiger den 2017-09-09 klockan 19:29. |
![]() |
![]() |
![]() |
#3 | |
Medlem
Reg.datum: Nov 2016
Ort: Vänersborg
Inlägg: 603
|
![]() Citat:
SÅ JÄVLA SNYGGT på sista bilden!!!!! ![]() ![]() ![]() ![]()
__________________
Stinsen Brinner för Bergslagernas Järnvägar. ![]() ![]() Edwin Bohm |
|
![]() |
![]() |
![]() |
#4 |
Veteran
Reg.datum: Nov 2001
Ort: Onsala, , Sweden.
Inlägg: 8 149
|
![]()
Man blir otroligt imponerad av Korvtigers kunskaper och branta inlärningskurva när det gäller ny teknik
![]() Jag, som bara fumlar runt i mörkret, är otroligt glad att vi har en sådan fena i gemenskapen ! När nästa Trainz kommer där grafikmotorn kan göra rättvisa åt allt detta kommer Sa 1277 säkert att bli en förebild för alla tågbyggare att försöka efterlikna ![]() Tack Korvtiger för din energi ![]()
__________________
![]() "Det är kanske för sent att lära sig nåt nytt" - Bengan travesti LAn ![]() |
![]() |
![]() |
![]() |
#5 |
Medlem
Reg.datum: Nov 2009
Ort: Gävle
Inlägg: 163
|
![]()
Fantastiskt
![]() ![]() ![]() |
![]() |
![]() |
![]() |
#6 |
Medlem
Reg.datum: Jan 2008
Ort: Uppland, Sverige
Inlägg: 2 728
|
![]()
Tackar!
![]() Tanigardi: Detta beror på att m.tbumpenv (Som är den shader jag hade tänkt använda tills N3V presenterade sina framtidsplaner) inte tar hänsyn till vissa grundstenar i PBR, framförallt energy conservation och fresnel-effekten. I dessa nuvarande shadrar kan man kräma på med hur mycket diffus, spekulär (blänk från solen) och reflekterande komponent som man vill, alltså kan man få mer energi ut än vad som tillförs av solen och det indirekta ljuset från omgivningen. Orealistiskt! Så man måste dra ned reflektionen ganska ordentligt för att det ska bli realistiskt. Tyvärr så blir detta helt fel nattetid, då saker fortfarande glänser på lika bra som på dagtid, fast det inte borde det. Detta kommer bli bättre med energy conservation. Avsaknad av fresnel-effekten gör ju att reflektionen är lika kraftig från alla riktningar, vilket ju inte stämmer. Den är som minst om man kollar rakt mot en objekt, då ser man mest diffus komponent, och ökar om man kollar längs med ytan. Detta är inget man kanske tänker på att det saknas i Trainz nu, men det känns ändå fel på något sätt. Så det gör stor skillnad att vi kommer att få det, eftersom vi är så vana vid det i verkliga världen. Och i PBR balanseras ju reflektion/diffus på ett korrekt sätt med fresnel-effekten helt automatiskt, så du slipper fippla med att få det snyggt. Så det kommer bli mycket lättare att skapa mer realistiska material i framtiden! ![]()
__________________
-k- |
![]() |
![]() |
![]() |
#7 |
Medlem
Reg.datum: Jan 2008
Ort: Uppland, Sverige
Inlägg: 2 728
|
![]()
Det börjar bli dags för en liten statusuppdatering igen på detta projekt.
Har sedan sist nästan UV-mappat färdigt alla smådelar. Har i princip bara rören kvar, vilket är snabbt gjort sedan. Har gjort en grundläggande texturering på hela loket också. Det här med PBR är ju spännande och lite annorlunda mot hur man normalt målar texturer. Det är svårare, men ger bättre resultat. Jag har fyra texturer vilket jag berättat tidigare om; en albedo/diffuse med färgen på ytan, en normalmap (bumpmap just nu) som beskriver ojämnheterna i ytan, en roughness som beskriver hur skarpa reflektionerna är och till sist en metalness som beskriver om det är en metallisk eller dielektrisk del av ytan. Metalness behöver man inte måla så mycket på, eftersom det mesta är dielektriskt. Men det betyder i alla fall att jag måste måla synkroniserat på tre olika texturer/lager samtidigt, vilket är lite klurigt. När man gör PBR-saker till moderna dataspel använder man ofta specialprogram där man "målar" med material istället för att måla texturer. Så man väljer att måla rost och så drar man med den digitala penseln över ytan direkt på 3D-modellen och vips så ändras alla texturlager automatisk av programmet och man får snygg rost. Dessvärre vet jag inte om några sådana program som är gratis, så jag får nöja mig med att "måla" på det gamla hederliga sättet vilket är lite pilligt, men ändå ganska skoj! ![]() WIP12.jpg Detta är alltså hur loket ser ut just nu. Lite som det kanske såg ut vid leverans, med skinande detaljer och inte en smutsig fläck någonstans. Sedan kommer jag att smutsa ned loket med oljefläckar och mera små ojämnheter för att göra det mer naturligt. Men först tänker jag nog börja bygga på interiören. ![]()
__________________
-k- |
![]() |
![]() |