door Emi
Soms, wanneer u het model in 3DCoat import , wordt de normal map in de viewport-renderer niet correct weergegeven. Maar het begint al bij de manier waarop u uw model naar andere software exporteert.
Een normale kaart zou de schaduwproblemen, voor de manier waarop de normale kaarten door software worden gelezen, enigszins kunnen oplossen, en dat maakt het probleem misschien iets minder opvallend, maar het probleem is er nog steeds. Je moet een aantal regels toepassen die zouden helpen het echte probleem op te lossen om het werk en het leven gemakkelijker te maken door betere normale kaarten te maken.
Zonder deze regels toe te passen waren de meeste normalen gemiddeld en waren er maar weinig moeilijk, wat raar was om te zien. Maar dat is duidelijk de belangrijkste reden van de problemen: hoe worden de afvlakkingsgroepen voor uw model geëxporteerd en hoe ze in andere software worden gelezen.
Ten eerste mogen de dozen geen zachte of gemiddelde randen hebben, het zijn hoeken van 90°, en wat je ook doet, ze zullen altijd dit verlichtingsprobleem hebben als ze niet op harde randen zijn ingesteld. In het verleden, voordat geavanceerdere bakprogramma’s zoals Marmoset het gemakkelijker leken te maken, moest je altijd een kooi maken, en de kooi zou degene zijn met de gemiddelde hoekpuntnormalen, dus de kooi zou worden gebruikt om het gemiddelde te doen. zoeken’ van de hoge poly, zonder fouten bij het bakken te veroorzaken, omdat de doos aan harde randen zou doen denken. Natuurlijk heeft Marmoset nu het selectievakje “gladde kooi” dat hetzelfde doet en nu heb je geen kooi nodig tenzij je echt een kooi nodig hebt.
Er zijn hier dus twee ‘regels’ en deze zijn ook met elkaar verbonden:
1. Als je modellen met hoeken van 90° maakt, moeten ze altijd moeilijk zijn. Natuurlijk kunt u ook een beetje afschuinen en de hoeken van 90° vermijden. dit volgt niet alleen de vorm van het model met hoge resolutie, maar je kunt ook de zachte randen van de doos gebruiken en deze er mooier en met minder problemen uit laten zien, en ronder en mooier en zo.
2. Harde randen (die vrijwel hoeken van 90° zouden moeten zijn) moeten altijd worden gespleten op de UV om ook problemen te voorkomen. U merkt het misschien niet echt op uw model, maar het is er wel en het heeft te maken met hoe de pixels ontmoeten elkaar in een hoek van 90° en hoe pixels kunnen worden gemengd en ze zijn gewoon anders, dus er is niet genoeg ruimte zoals een opvulling zou doen om de kleine problemen op te lossen die kunnen optreden. Ja, het hangt af van de resolutie en de UVs en zo, en dat maakt het wellicht opvallender dan andere, maar ja, in een geval als dit waarbij je dozen maakt, zou je al die randen van 90° moeten splitsen, en ja, dat betekent 6 dooszijden = 6 eilanden om problemen te voorkomen.
Over 3DCoat gesproken en hoe het werkt met presets en zo. Wat ik ervan begrijp, is dat je door het gebruik van presets zoals Blender of Unity feitelijk een vooraf gedefinieerd bestand gebruikt, met niet alleen hoe het de Normal-kaart zal behandelen, het zal ook groen omgedraaid zijn of niet. Maar ook Tangent Space, de triangulatie, en hoe deze de normalen en enkele andere opties exporteert. Als u de optie Onbekend gebruikt, kunt u de voorkeuren gebruiken die u heeft ingesteld.
Als je naar C:Program Files 3DCoat-VXXXToolsPresetsExtTools gaat, zie je de XML-bestanden en hoe Unity verschilt van Blender, omdat de voorinstelling van Blender MikkTSpace gebruikt terwijl unity is ingesteld op LengyelAreaAngleWeightedSpace. Dat is het enige verschil. maar blijkbaar genoeg om het te zien, omdat ze anders worden geïnterpreteerd. Technisch gezien zouden ze vrijwel niets moeten beïnvloeden en alleen de manier waarop het de normal map leest als het ‘DirectX’ of ‘OpenGL’ is, maar de wortel van het schaduwprobleem gaat niet over de normal map, het gaat over het model en dat zal zo zijn wees altijd het model.
Afgezien van de UVs regels zijn de problemen die het veroorzaakt minimaal. Als je je daarvan bewust bent, dan is het jouw keuze om wat UV ruimte te besparen en de randen en het probleem dat zou kunnen optreden te negeren, in plaats van ze correct te doen, omdat je dan te dichtbij zou moeten komen om de problemen op te merken. soms zit er een grote kloof tussen de randen, is mij overkomen.
Als je geen dozen kunt hebben als gemiddelde hoekpunten, normaal of zacht, moeten ze eruitzien als dozen met harde randen, omdat het randen met een hoek van 90° zijn. Als u zachte randen wilt gebruiken, moet u een afschuining maken.
Boxers moeten 100% harde randen hebben, cilinders moeten boven- en onderkant hard zijn en de zijkanten zacht.
Voor modellen met een laag polygehalte raad ik aan om schuine randen te maken. Een kleine schuine kant zal in veel gevallen een groot verschil maken, vooral vandaag de dag, waar er geen excuus is om voor zoiets als dit een doos zonder schuine kant te hebben.
3DCoat presets zijn slechts kleine variaties die je zelfs handmatig kunt selecteren door onbekend te gebruiken. Je hebt de presets niet nodig, ze zijn alleen bedoeld om 3DCoat te helpen de normal map en het model te interpreteren, maar ik vertrouw de presets nooit, want zoals je zegt zou Unity preset dat moeten doen worden ingesteld op MikkTSpace. Maar mijn punt is dat het niet alleen gaat om OpenGL versus DirectX normal map.
Dus als ik 3DCoat gebruik, meestal om te schilderen, werkt alles prima, maar dat komt omdat ik ervoor zorg dat alles op mijn low poly ook goed is, ik bedoel, om goede normale kaarten te maken en ze overal te laten werken waar je een goede low nodig hebt poly die de hoge polydetails die je hebt gemaakt, kan vangen. Er is geen magie, het werkt gewoon omdat ik voor alles zorg, zoals de afvlakkingsgroepen en UVs en zo.
Wat ik bedoel is dat een model met randen van 90° automatisch op de harde rand moet worden ingesteld, er is geen andere manier en dat is alles. het maakt niet uit of de kubus 6 zijden heeft, zoals in dit geval, of 1000 onderverdelingen in de breedte, hoogte en diepte. Als je de hoek van 90° van een doos niet als harde rand instelt, zal deze altijd de vreemde arcering hebben op de randen die 90° zijn maar zijn ingesteld op zacht of wat dan ook.
Als je een enkele afvlakkingsgroep toepast op de hele reeks objecten… is dat verkeerd, omdat je geen zachte randen aan kaders kunt maken, vooral niet als de objecten slechts kubussen zijn met zes vlakken.
Je kunt zoiets niet “gladmaken”, vooral als je een eenvoudige doos met zes polygonen hebt. Als je een doos wilt gebruiken, stel dan alle zijden in op Harde randen. Of de enige andere manier is om een afschuining rond de randen toe te voegen om de hoek van 90° hard te doorbreken en deze vervolgens op zacht te zetten. Het Baking van de normal map om het probleem te verbergen is niet de oplossing. Het ziet er misschien iets beter uit, maar de schaduwfout bestaat nog steeds op het model. Zelfs de cilinders moeten zachte randen aan de zijkanten hebben en aan de boven- en onderkant moeten ze harde randen hebben, tenzij u een afschuining toevoegt.
De vraag is dus: wil je alles nog steeds als één afvlakkingsgroep houden? tenzij je er goed aan werkt en dingen instelt die harde randen en zachte randen zacht moeten zijn, of schuine randen toevoegt aan elke hoek van 90°, dan zal niets je probleem oplossen, en moet je het probleem gewoon verbergen met de normal map en doen alsof er geen probleem is bestaat.
Ik hoop dat ik fatsoenlijk heb uitgelegd wat de problemen hier zijn, zodat het je kan helpen bij je toekomstige normal map kaartbaksels.
Veel succes en een fijne dag!