One thing that I noticed here is that subdivision is a lot like upsampling for curves. Interestingly, it appears to me that this kind of subdivision is a one-way process: If you don't have the control points for a curve or surface, you can only ever faithfully make it smoother, not 'chunkier,' unless you already know that the starting surface was generated by subdivision as well/have the control points.
keenan
@zbp Totally. And there are also some close connections to MIP mapping: for instance, storing the entire subdivision hierarchy doesn't cost much more (~2x) than storing the finest level. So, you can use subdivision surfaces for adaptive rendering in much the same way you use MIP maps: if an object is far away, draw from a coarse level of the subdivision hierarchy. If it's close, use a finer one.
keenan
@zbp Also, we'll talk about mesh simplification in (I think) the next lecture; there are still algorithms that work nicely for arbitrary meshes, i.e., when you don't have a special subdivision structure.
One thing that I noticed here is that subdivision is a lot like upsampling for curves. Interestingly, it appears to me that this kind of subdivision is a one-way process: If you don't have the control points for a curve or surface, you can only ever faithfully make it smoother, not 'chunkier,' unless you already know that the starting surface was generated by subdivision as well/have the control points.
@zbp Totally. And there are also some close connections to MIP mapping: for instance, storing the entire subdivision hierarchy doesn't cost much more (~2x) than storing the finest level. So, you can use subdivision surfaces for adaptive rendering in much the same way you use MIP maps: if an object is far away, draw from a coarse level of the subdivision hierarchy. If it's close, use a finer one.
@zbp Also, we'll talk about mesh simplification in (I think) the next lecture; there are still algorithms that work nicely for arbitrary meshes, i.e., when you don't have a special subdivision structure.