Subdivision tutorial

April 17, 2011 8:02 pm 4 comments
Share this:

Introduction
Hi, my name is Ivan, and today I will try to shed a little light on the subject of subdivision surfaces. This is my attempt to provide a general beginner`s tutorial, that might help all the polygon-based software users out there improve the quality of their meshes. I will try to keep this as general as possible, because the same principles apply to almost all the software there is today, but just in case, if anyone was interested, the pictures used in this tutorial were made in Modo 501 from Luxology, which is my weapon of choice when it comes to 3D.

Subdivision surfaces
What if I told you, that the items from the the picture above are one and the same object, with only very small changes? They were actually cubes in the beginning, the only difference is, that Item 2 is a subdivision surface and Item 3 is a subdivided mesh. What subdividing a mesh means, is adding segments to the existing geometry and at the same time making the whole surface smoother. Every level of subdivision divides an existing quad (4-sided polygon) into 4 new polygons, therefore if our cube consisted of 6 polygons to begin with, the first subdivision will turn it into a mesh with 24 polygons, the second subdivision will multiply the polycount by 4, that gives us 96 polygons, and after 3 subdivisions, our object will consist of 384 polygons and look a lot more spherical then in the begining. The subdivision process can be seen in the picture below:

Now is the right time to ask, what is so special about this subdivision surfaces (item 2 in the first picture). Items 2 and 3 look the same, and have the same polygon count. Wouldn`t it be more effective to just use heavily segmented objects, or freeze the object after it has been subdivided? Well, no… it wouldn`t.
You see, the basic part of every mesh is a vertex, a point in space. It is vertexes, that define edges and polygons, and therefore every vertex has to carry a lot of data, starting with its position in space, through UV coordinates, which can include data for several UV maps, to special data like vertex maps, morph maps or tags. Once a mesh is segmented, it consists of lots and lots of vertexes, and every single vertex has to carry all of this information. To show, how much data is added with every subdivision, I prepared another picture. As you can see below, the square was subdivided one time, adding 5 new vertexes (black dots) to the already existing 4 (orange dots), this means a massive increase in data.

Luckily, there is a special kind of mesh (a static mesh in Modo for example), that behaves a little like a proxy object, it gets the data needed for its editability deleted, which makes it uneditable, but much more effective in RAM consumption and other operations, like moving it or rotating the viewport.
When applying a subdivision modifier to your mesh, it takes the basemesh as a source for a new mesh, that is not directly editable, therefore needs much less data to represent it. This new mesh is called a subdivision surface. You are free to edit the subdivision level (the segmentation of the mesh) and at any time, you can return to the basemesh and edit it, which wil instantly affect the subdivision surface.
I did a few test renderings, to see how much data each of the objects in the first picture needs to represent it. Item 2, the subdivision surface, consists of 3072 polygons and consumes 279 kB of RAM during rendertime. Item 3 has a polycount of 3072 polygons as well and is a subdivided mesh, which means, every single vertex has to carry all the necessary information, therefore it consumed 493 kB of Ram at rendertime. You see, these identical meshes consume very different amounts of resources, only due to their surface representation.
Not only are subdivision surfaces more effective in resource consumption, they are even easier to edit. Just think about it, is it easier to move one vertex or edge and get a clean and smooth shape, or play around with selections on a dense mesh and once you finally have the right selection, you have to start playing around with falloffs or soft selection tools? I find the first way much faster, easier and cleaner. Just see for yourself:

The first image is the polygon cage of a lions head (originally part of a hood ornament for a 1936 peugeot 402 i`m modelling at the time). It may not look great in its unsubdivided form, but once it`s changed into a subdivision surface, as shown on the second picture on the left, it starts to shape up a bit. On the right is the dense segmented mesh, which has the exact same number of polygons and will look exactly the same in a render, but takes up approximately twice as much resources, and just imagine the horror of trying to change a detail about the polygon-heavy segmented mesh!

Still not convinced about the advantages of subdivision surfaces? Would an automated subdivision level convince you? Adaptive subdivision is a common tool today. As the name already says, it is able to adapt its subdivision level to the needs of your render. The system behind this is really easy: you choose, how long an edge can be in pixels, after this, the render engine evaluates the edges of every object separately, and if it finds an edge, that takes up more pixels than the value you provided, it increases the objects subdivision level by one until all edges are shorter then your pixel value. This system makes sure, that every object in your render appears to be smooth, but doesn`t take up any more resources then necessary.

As a little bonus, I added the model of the lion`s head with textures, so you can render an image like this one, if you like:

The model may be downloaded as the native .lxo file for modo users, or as an .obj file, both the polygon cage, as a highpoly version for users, whose software doesn`t have the subdivision surface technology implemented yet.

Download Links:

Lion head in .OBJ

Lion head for Modo

Lion head – highpoly – in .OBJ

Lion head textures

Lion head hdri

That is all for today. I hope you liked this little introduction into subdivision surfaces and with luck, we will meet again during another tutorial.

Share this:

Comments

comments

Powered by Facebook Comments

4 Comments

Leave a Reply


Latest articles:

  • Software Corona Renderer Alpha v5 released

    Corona Renderer Alpha v5 released

    Corona is a new, next-generation renderer currently in development. Its goal is to combine the advantages of both biased and unbiased renderers into a single, easy-to-use package. It is available as a plugin for 3ds MAX, with other software support planned for the future. The latest alpha release added support for IES lights and Multiscatter/ForestPack plugins. Get it for free at http://corona-renderer.com

    Read more →
  • Making of Making of Office Building II

    Making of Office Building II

    Hi! My name is Alvaro Gentile, I’m CG artist and architect from Montevideo, Uruguay. I started as a freelance in 2002, and in 2006 I founded ARS www.ars-estudio.com with my partner Rodrigo Barreto. We currently develop images mainly for real estate and architectural studies, but also occasionally to advertising companies. This is office building project, developed in July 2011 for a local architectural firm. I want to give thank to Render Spirit to propose me to make this making-of and [...]

    Read more →
  • Download Pickup3D models

    Pickup3D models

    Pickup3D vol.1 collection was just released. All about Pickup3D vol.1 collection on their website www.pickup3d.com There is also a little contest where you can win Pickup3D vol.1 collection, more info on : http://www.facebook.com/Pickup3d Pickup3d vol_1 from pickup3d on Vimeo.

    Read more →
  • Featured Making of Tutorials Making of the House of da moos

    Making of the House of da moos

    Introduction I studied graphics-design in Rostock, Germany. There I made my first experience with 3D design and it became obvious to me that I want to do it professionally. In November 2008 I started working for the lichtecht company in Hamburg, Germany. That´s where I learned all about 3d-modeling, animation, simulation, texturing and architectures. Thanks for all the know-how to the whole lichtecht team! We always try to find new ways to make our renderings look more realistic and search [...]

    Read more →
  • Facebook spotlights Image of the day Yongsan International Business District

    Yongsan International Business District

    Yongsan skyscrapers in Korea visualized by D-focus studio. Very emotional feeling in these images provided by this studio reminds me Luxigon’s style. What do You think?

    Read more →
  • Image of the day Restaurant interior visualizations

    Restaurant interior visualizations

    Diego Querol published his new interior visualizations. Check out these awesome images connecting perfect lights, materials and compositions.

    Read more →
  • Making of Videos Moving stills – tutorial

    Moving stills – tutorial

    Welcome to the brand new tutorial by Viz-people! In this video you can learn how to edit static images and make them live! No need to wait long hours anymore for brute-force fullHD rendering taking several days ;) Image provided by FlyingArchitecture visualization services.

    Read more →
  • Featured Making of Making-Of ADN Offices by Beauty and The Bit

    Making-Of ADN Offices by Beauty and The Bit

    Author: Beauty and The Bit Hi friends of Render Spirit. We are Beauty and The Bit, a young visualization studio based in Madrid (Spain) and founded by Victor Bonafonte, architect and CG Artist. We´re architects specialized in narrating, suggesting and evoking architectural spaces through images. We believe each image has to tell its own story, a singular and personal one which manages to get to the observer´s heart. An image which doesn´t leave your senses indifferent. We count with professionals [...]

    Read more →