VENICE3D.NET  
 

Modelleren in Activeworlds

Onder modelleren verstaan we zelf 3d-objecten maken met behulp van een modelleerprogramma. Welke modelleerprogramma's bestaan er zoal ? Op wikipedia vind je een goed overzicht van de meest courante modelleerprogramma's. Veel modelleerprogramma's zijn echter duur om aan te kopen, maar daarnaast zijn er ook gratis modelleerprogramma's die ook "open source" zijn.

http://en.wikipedia.org/wiki/3D_computer_graphics_software

Niet alle programma's zijn geschikt om te gebruiken in activeworlds : in activeworlds kunnen we momenteel en volgende bestandextensies gebruiken: .rwx .cob en .x

.rwx -> deze bestandsextensie wordt gebruikt in renderware , dit programma is niet meer beschikbaar, maar met Notepad (gratis) kun je rwx-bestanden aanmaken.

.cob -> deze bestandsextensie wordt gebruikt in Truespace, ook dit programma is niet meer beschikbaar sinds juli 2012.

.x -> deze bestandsextensie wordt gebruikt in DirectX

 

Maar er bestaan conversie-programma's waarbij vele bestandsextensies kunnen omgezet worden in een voor activeworlds bruikbare extensie. Accutrans, Polytrans en Kerkythea zijn 3 conversieprogramma's.

Wat moet je weten vooraleer je begint te modelleren ?

1. Models op het internet

Let op als men op het internet objecten aanbiedt als “low-poly” modellen : heel wat 3d modellen die op het internet worden aangeboden hebben minder polygonen dan hoogwaardige modellen, maar zijn echter niet altijd geschikt voor 3d-real-time omgevingen. Daarom zoek je op het internet best naar modellen die ontworpen zijn hiervoor, dus zoek je naar “game 3dmodels” of “real-time environment 3d models”.

2. Een low-poly model

Om goed te modelleren zorg je in de eerste plaats dat je een low-poly model maakt : daaronder verstaan we een model waarbij alle nodige inspanningen gedaan zijn, om te komen tot een minimum aantal polygonen. Onder polygonen verstaan we het aantal driehoeken waaruit het model bestaat : vrijwel alle 3d-programma's delen hun modellen op in driehoekige vlakken, dus bijvoorbeeld een vierkant vlak bestaat dus uit 2 polygonen (2 driehoekige vlakken).

Wat doe je er best aan om een low-poly model te maken ?
Als je het niet ziet , modelleer het dan niet : bv de binnenkant van een cilinder die niet meer zichtbaar is . Details op een model maak je beter met textures dan dit te modelleren met polygonen   ,  je kunt ook masks gebruiken in plaats van alles te gaan modelleren met extra veel polygonen.

Hoeveel polygonen moet een model precies hebben ?

Hoeveel polygonen heeft een object ?

Een model met 10000 polygonen : dit is teveel , zelfs voor een groot gebouw
Een model met 1000 polygonen : ook dit is nog te veel , enkel geschikt voor grote objecten en complexe modellen
Een veelvoud van 100 : dit is beter, en is aanvaardbaar in de wereld
Beneden de 100 polygonen : dan heb je een zeer goed object.

Hou wel rekening met het feit dat een keukentafel minder complex is dan een piano en dus met minder polygonen moet gemaakt worden.

Hoe belangrijk is het model in je scene ? Gebruik de modellen zoveel mogelijk als low poly.  Wordt het gebruikt in de achtergrond ? Dan maak je het low-poly.  Is het een object dat je zeer veel gebruikt in je wereld ? Maak het dan zo low-poly als mogelijk.
Gebruik extra polygonen voor objecten die aandachttrekkers zijn in je wereld. Bijvoorbeeld : een kerstboom die veel polygonen heeft : dat is ok, want het is een belangrijk object in je scene. Koffiekopjes en bordjes : zijn minder belangrijk : dus low polygon maken.

Hoe veel mensen wil je de wereld/omgeving laten zien  op éénzelfde moment ?  Ga je je wereld ook als bouwwereld gebruiken ? Stel dat  je een bouwwereld hebt, dan kun je uiteraard niet gaan kiezen….maar de bouwers gaan waarschijnlijk het objecten gaan uitkiezen met veel polygonen !! In een niet-bouwwereld kun je die objecten gaan spreiden of beperken.

Optimalisatie van de modellen in de wereld


Bij gebogen vlakken moet je nazien of deze gematigd afgerond zijn  (cylinders, bolvormen) : of zijn er onnodig veel hoekpunten en faces gebruikt om de rondingen vloeiend te maken ? Modellen die net iets minder vloeiend gemaakt zijn zijn dus beter voor de 3d real-time omgeving. De perfecte ronde vorm is in de 3d-real-time omgeving is dus het best redelijk hoekig. bv om planten te modelleren : beter 4- of 6-zijdige cilinders gebruiken ipv 16-zijdige : 16 zijden voor een stengel is echt overbodig.

Vermijd te veel vlakken, vermijd “nurbing”. Voorbeeld van nurbing : . http://www.3drender.com/jbirn/ea/HeadModel.html

Zijn er onnodige subselecties gemaakt geweest op vlakke oppervlakken ? Hierbij bedoelen we dat een vlak onderverdeeld wordt .  Bijvoorbeeld : 2-zijdige panelen hebben 4 polygonen of 4 driehoeken. Indien er 64 polygonen zijn ,dan gebruik je dat beter niet als paneel/wand of zorg je dat er minder polygonen zijn.

Bij bepaalde modelleerprogramma's (3ds max , wings3d,...) , en ook in accutrans, zie je vaak dat bepaalde vlakken onnodig opgedeeld zijn in vele polygonen. Soms is dit opgedeeld in méér polygonen om de belichting op de modellen te verbeteren, en is het nodig om een mooier object te hebben. In Accutrans zelf kun je wel het aantal polygonen gaan reduceren.

Als je avatars als modellen gebruikt in je wereld , dan zal dit de framerate naar beneden halen. Indien het avatar-object beweegt in je wereld , dan maak je het best collision off, maar tegelijk wordt het object ook solid off in je wereld.  Collision off gaat wel niet voor masks en transparantie. Voor transparantie gebruik je dan best het commando opacity (aw versie 5.2).

Hoe kun je zien hoeveel polygonen elk object heeft ?
Dit kun je zien in vrijwel alle modelleerprogramma’s , en ook in accutrans , maar in Activeworlds zelf zie je het aantal polygonen niet , er is echter wel een hulpmiddel om de wereld in draadmodel te bekijken (aw versie 5.2) : Options – settings – video – wireframe rendering

Bij de meeste modelleer programma’s is het ook zo dat de modellen ook geconverteerd worden naar driehoeken (polygons) Bij de wireframe rendering zie je dat nu ook voor alle modellen die in de wereld aanwezig zijn. Van zodra je in de buurt komt van een object met héél veel polygonen , gaat de framerate fel dalen.

Tip : gebruik je polygonen heel omzichtig. Hoe méér vlakke oppervlakken, hoe beter.
Als voorbeeld een politiewagen : 6000 polygonen -> teveel onnodige detail , teveel polygonen op de wielen enz.
Een sportwagen die simpel gehouden is : 400 polygonen -> Voor het dashboard volstaat een mooie picture , in plaats van dat alles gemodelleerd wordt.