Modelling Ruth Aylett
Overview Basic issues Modelling packages Low polygon modelling Importing models City modelling Photogrammetry Laser range finders LIDAR The great outdoors Trees, plants, water etc
3D Authoring tools Most models produced with generic 3D modelling packages offline Some packages derive from film/animation: Maya, 3DStudioMax, Softimage. creation of realistic creatures or backgrounds for film or games industries. Not designed for creating real-time rendered models Others from science/technology: Matlab, PV-WAVE, AutoCAD. Not designed for realistic textures, lighting etc All packages create objects, give them styles, assign behaviours and place them in 3D Cartesian space.
Other VR Software Tools Transom Jack DI Guy, People Shop - Boston Dynamics Poser - Metacreations Reflex 7 - Reflex Research SBIR - Seamless Solutions Inc. Others...
3D Modelling Tools Vizard - Worldviz Creator/Creator Pro - Presagis Tucan - Awaren Blender - shareware AC3D Modeller Maya 3D Studio MAX - Autodesk Truespace - Caligari VRML: ISB - Parallel Graphics Others...
3D Studio Max 3D Studio Max (or 3ds max) by Discreet Probably biggest selling professional 3D content creation package. Many special purpose plugins such as Character Studio. Still relatively expensive PC only Much used in film see: http://www.groundzerofx.com/maxinfilm/
Low polygon modelling Realtime constraints require working to a polygon budget See http://www.webr eference.com/3d/ lesson52/ for an example Also http://www.saun alahti.fi/~ops/tut orial/lowhead/low head.htm
Using level of detail (LOD) Produce different versions of same object Very low polygon versions to be used when distant 5000 polygons in one view is often plenty Using texture can help But 64 bit by 64 bit often what is required
Obtaining texture images Libraries from software 3DS Max, Maya etc Web www.3dcafe.com Camera with Photoshop editing
Texture photography Orthogonal pictures are best (but physically impossible) If the camera has a zoom function zoom in as far as possible stand well back this gives photos that are as close as possible to being orthogonal
Texture photography If the camera has a manual / automatic control then use it particularly important for white balance A series of photos taken on automatic will have a different setting for white balance for each photo and the colours will not balance
Texture photography Avoid using the flash if you can It is better to have light evenly distributed across the object you are photographing Direct flash light is often uneven, particularly if close up
Photo editing in Photoshop The best tools for texture editing are photo touch up packages like Adobe Photoshop These packages allow the user to Distort the texture perspective in photos taken at an angle Rub out unwanted features in the texture passing traffic undesirable reflections Create tileable textures The aim is to create a clean, orthogonal, (maybe repeating) image
Importing models Always an issue Given use of separate modelling and runtime software Some formats are widely imported 3ds and vrml Geometry is not the only problem Textures often problematic Games engines may be idiosyncratic E.g Unreal Tournament has a carve out approach to modelling
Example: Modelling buildings Use architects drawings Photogrammetry Laser scanning from models LIDAR data
Architects drawings The obvious approach, BUT Not always available Require a long manual model construction As-built not always as-designed
Photogrammetry The process of deriving metric information about an object through photo measurements Very old and trusted method of surveying Basis of most current maps Multiple photos of object or area from different angles Min of three: facing, left and right
Processing the data Manual identification of approx 12 points in all 3 views Use of accurate knowledge of focal length and negative size Can calculate exact distance of camera from scene
Laser rangefinding Use of laser beam to gather distance information time-of-flight: the round trip travel time of a single pulse is measured and distance calculated based on the speed of light Can also capture reflectance data
Laser Scanning Range Finder Real World Capture Conversion of range data Range 2.5m - 80+m Accuracy 2mm - 10+cm
The Liverpool Project Use laser scanner to scan the physical model Create VE model of a model
The Process -Build the Model Select area to scan 1 overall - 5 perspectives @ 4mm intervals 4 sections - 4 perspectives each @ 2mm intervals Nearly 2 million points in the clouds Segmentation Hierarchy - areas, buildings, planes Fit surfaces 10,000 Polygons
The Liverpool Model
Creating the dinosaurs from the BBC TV series using Laser Scanning Advantages: Fast, Accurate, Can be automated Disadvantage: Expensive, Large output file, Can be hazardous
LIDAR Light Detection And Ranging Airbourne laser rangefinding Using known position, altitude, orientation of plane
Data collection Collects position (x,y) and elevation (z) At pre-determined intervals Accuracy depend son flying height, laser beam diameter, GPS quality, post-processing Accuracy up to +- 15cms elevation No need to select specific scanning targets
The great outdoors Human artefacts are the easiest thing to model Lots of planes, often orthogonal Thus low-polygon models But grass? Bushes? Trees? Flowers? One polygon for each blade of grass? Several for each leaf? Water? Clouds? Fire? Flesh? Fur? Hair?
Cheap methods All involve compromises with appearance Water: Use a water texture: of course it doesn t move Sunken blue shape Create some polygons and a colour animation This can look like flow
Trees Billboard with tree texture on it Looks the same from any angle Two polygons at 90 degrees with tree texture on them There are commercially available models And a few free ones: e.g xfrog public plant See http://web.inf.tudresden.de/st2/cg/downloads/publicplants/
More sophisticated methods Water, fire, rain, snow Particle system: see later lecture Included in some games engines like UT Trees Use fractals: Lindenmayer systems (Lsystems) are method of choice
L-systems A type of fractal Invented in 1968 by Aristid Lindenmayer to model biological growth Constructed from line segments using rules specified in drawing commands Start with an initial string Axiom, transformation rules are applied a specified number of times Produce the final command string Which is used to draw the image
How it works L-systems are parallel rewriting systems. L-systems consist of: an alphabet (V) an axiom (a non-empty seed string V+) Production rules of the form: V => V* (predecessor => successor) Rules replace predecessors with successors. Identity production rule is the default.
L-system example Alphabet: {a, b} Axiom ( seed ): b Production rules: a => ab b => a
Example: the Koch Curve A variant of the Koch curve which uses only rightangles. variables : F constants : + start : F rules : (F F+F F F+F) Here, F means "draw forward", + means "turn left 90 ", and - means "turn right 90 " n = 0: F n = 1: F+F-F-F+F
n = 2: F+F-F-F+F+F+F-F-F+F-F+F-F-F+F-F+F-F- F+F+F+F-F-F+F
n = 3: F+F-F-F+F+F+F-F-F+F-F+F-F-F+F-F+F-F- F+F+F+F-F-F+F+ F+F-F-F+F+F+F-F-F+F-F+F-F- F+F-F+F-F-F+F+F+F-F-F+F- F+F-F-F+F+F+F-F- F+F-F+F-F-F+F-F+F-F-F+F+F+F-F-F+F- F+F-F- F+F+F+F-F-F+F-F+F-F-F+F-F+F-F-F+F+F+F-F- F+F+ F+F-F-F+F+F+F-F-F+F-F+F-F-F+F-F+F-F- F+F+F+F-F-F+F
A fractal plant variables : X F constants : + start : X rules : (X F-[[X]+X]+F[+FX]-X),(F FF) angle : 25º Here, F means "draw forward", - means "turn left 25º", and + means "turn right 25º". X does not correspond to any drawing action and is used to control the evolution of the curve. [ corresponds to saving the current values for position and angle, which are restored when the corresponding ] is executed
Using L-systems Modelling software available See http://www.vterrain.org/plants/plantsw.ht ml for a list of some E.g shareware xfrog plant modeller http://www.vterrain.org/plants/xfrog/index.htm l