Van AutoCAD naar Maya renders

Bij Vanderlande maken we systemen voor o.a. pakhuizen (zoals Zalando, Blokker, Amazon) en post sorteercentra (zoals FedEx en UPS). Klanten willen graag van tevoren weten hoe hun systemen eruit komen te zien, omdat je hierbij vaak over tientallen milioenen praat.

Mijn collega’s, de layout engineers, tekenen een systeem in AutoCAD. Ze maken dit door middel van een taal, ESoT, die onze programmeurs geschreven hebben. In ESoT staan dus stukken equipment die wij verkopen.

Wanneer collega verkopers dan naar me toekomen, en ik vertel ze dan dat het me 2-4 dagen duurt om renders te maken, en zelfs 4 dagen tot 4 weken kan duren voordat ik een animatie klaar heb, dan kijken ze me vreemd aan.

Maar als ik vervolgens ga uitleggen welke stappen ik onderneem om tot het eindresultaat te komen, dan lijken ze beter te snappen dat ik niet even snel op een knop klik, en klaar is Kees.

Computer graphics voor bedrijven is vrij nieuw, dus veel mensen kennen de stappen niet die ik moet doorlopen voordat we bij renders uitkomen. Renders die sales engineers (verkopers) helpen bij het uitleggen van hun verhaal, en het verkopen van een systeem of product. Je wilt immers indruk maken op de klant, dus je moet wel plaatjes hebben die eruit springen.

Hieronder ga ik uitleggen welke stappen wij bij Vanderlande ondernemen om tot prachtige renders te komen. Dit is de manier die voor mij het beste werkt. Momenteel ben ik nog de enige binnen Vanderlande die deze renders in Maya maakt, maar hopelijk kan ik binnenkort mijn team uitbreiden, en zullen er nieuwere, en ook snellere manieren te zijn dan de manier die hieronder staat beschreven.

De blokken die de layout engineers op het scherm zien, die dus gemaakt zijn in AutoCAD, zijn 3D solids. Deze worden opgeslagen in .dwg files. Wanneer er een sales engineer naar mij toekomt voor renders of een animatie, dan vraag ik aan de layout engineer de laatste, correcte dwg files. We gebruiken namelijk meerdere iteraties, mocht er iets fout gaan.
Deze dwg files importeer ik een voor een in 3DS Max. Autodesk Maya kan helaas (nog) geen dwg files aan, vandaar dat 3DS Max moet gebruiken als tussenstop. 3DS Max kan namelijk van dwg naar obj files exporteren. Ik heb fbx ook geprobeerd, maar ik merkte dat obj toch een kleinere conversie grootte aangaf, en dat bij obj files wel kleuren bewaard bleven van AutoCAD, bij fbx files gebeurde dit niet. Deze obj files importeer ik dan weer een voor een in Maya, en dan begint het opschonen van de geometry.
ESoT heeft namelijk nog wel een fouten erin zitten, zoals objecten die dubbel worden getekend, normals die niet kloppen, etc. Ook objecten die aan totaal twee verschillende kanten van het systeem zitten, worden als 1 object gezien in Maya (dit ligt waarschijnlijk aan het importeren/exporteren). Deze moet ik dan handmatig uit elkaar halen. Ook symbolen die voor mij niet relevant zijn, gooi ik eruit. Het opschonen van een heel systeem kan dus 1-2 dagen in beslag nemen.

Tijdens het opschonen voeg ik de objecten meteen toe aan een subgroup binnen de hoofdgroup van die file, en ik voeg ze toe aan een layer. Hierdoor kan ik de layers selecteren in meerdere groepen en dan materialen toekennen. Mocht er dus iets veranderen aan 0001MS, maar voor de rest niets, dan weet ik dat ik 0001MS opnieuw moet importeren, maar dat ik de rest intact kan laten.

De shaders heb ik in de loop van de tijd allemaal opgeslagen in 1 texture library file. Deze file importeer ik dan, zodat ik meteen de juiste materials heb. Dan hoef ik ze niet steeds per project opnieuw te maken. Dit scheelt me een hoop tijd over de lange termijn, en je zorgt ervoor dat er meer consistentie is tussen projecten.

Wanneer het toekennen van materials is gedaan, maak ik de belichting in orde en kan het positioneren van de camera’s beginnen. Hiervoor vraag ik wel vaak de sales engineer om wat hulp, want ik weet niet welke gedeeltes van het systeem zij belangrijk vinden in hun verhaal richting de klant. Vaak vinden de presentaties plaats via een computer of smart screen, dus is 1920 x 1080 pixels, 72 DPI, voldoende voor renders.
Ik heb ook wel eens de vraag gekregen of ze de renders kunnen printen op een banner of een poster, en dan vraag ik om de afmetingen van de banner. Als ik die afmetingen weet, inclusief de DPI die de drukker vraagt (bijvoorbeeld 300 DPI), dan converteer ik de centimeter maten naar pixels en op dit formaat render ik dan het plaatje.
Het nadeel van grote kwaliteit renders is dat het renderen ontzettend lang duurt. Ik heb een 2,7 GHz CPU (met overclock core speed tot 4,0 GHz) laptop, maar dan blijft er niet veel over voor ander rekenwerk. Dus wanneer ik zo’n aanvraag binnenkrijg, laat ik de renders meestal ‘s nachts renderen, zodat ik dit niet via mijn werktijd hoef te doen. Ik ben de enige binnen Vanderlande, dus dit proces is nog steeds een work in progress 🙂 (GPU rendering misschien, met de nieuwe RTX kaarten, in plaats van CPU rendering?)

Na 2-4 dagen heb ik de dwg files opgeschoond, materials toegekend, belichting ingesteld en renders gemaakt. Het ligt een beetje aan de systeem grootte. Zit er al veel staalwerk in, een hoop platformen en ook zogenaamde engineering files (3D modellen met elk boutje en schroefje), dan duurt het 3-4 dagen, soms zelfs langer. Is het systeem maar een kleintje (een paar rekken, wat werkstations en nog wat transportbandjes ertussen), dan ben ik vaak in 2 dagen al klaar.

Bij animaties geldt precies hetzelfde proces als hierboven genoemd, maar dan animeer ik ook nog een camera in de 3D file, om het complete systeem te laten zien. Voor animaties geldt: het liefst doe ik een overview flythrough (van punt A naar punt B, schuin over het complete systeem, vaak maar 30-60 seconden animatie), dan dat ik elke zone voorbij vlieg en de animatie dus 2-5 minuten lang wordt. Deze laatste optie is a) erg tijdrovend vanwege de rendering tijd, en b) de kijker raakt snel ‘verdwaald’ in het systeem, omdat de banen vaak over en onder elkaar doorgaan.
Een kleine overwinning: in het afgelopen jaar heb ik een renderfarm opgesteld binnen Vanderlande, waardoor ik tot maximaal 4 computers tegelijkertijd kan laten renderen. Ik hoop dat ik binnenkort ook eens de RTX kaarten in actie kan zien, waardoor rendering niet meer over de CPU gaat, maar over de grafische kaart (GPU). Dat zou nog eens schelen in rendertijd!

Zo zie je maar, dat er meer bij komt kijken dan alleen maar op een magische knop drukken en wachten totdat er een mooie plaatje tevoorschijn komt 😉

Mochten er 3D artists zijn die dezelfde weg bewandelen als ik wanneer het aankomt om van AutoCAD naar Maya te komen, en zij tips hebben voor mij, schroom niet en mail me! Ook als je vragen hebt over de specifieke export/import settings, laat maar gerust iets weten.

Binnenkort zal ik ook een blog schrijven over de verschillende settings in Arnold voor Maya (de belichting, de aiStandardSurface shaders, en de render settings) en wat ik tot nou toe geleerd heb over de Arnold renderer. Hopelijk heeft er iemand baat bij!

Comments are closed.