Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Subdivision surfaces...

5 views
Skip to first unread message

Paul Thomas Raugust

unread,
Jul 23, 1998, 3:00:00 AM7/23/98
to
I just saw that the newest version of PRMan includes subdivision
surfaces, but, beyond the frivolous and rather daunting task of
attempting to code such complex surfaces (as to be functional in any
sort of production setting) by hand, or coding some form of propieretary
MenV clone (a task which is far beyond myself and probably most of the
population), of what use are these surfaces? Does any program (ie Maya
with MTOR or Houdini) plan support for them? Does anything currently
support them?

Paul Thomas Raugust


ta...@my-dejanews.com

unread,
Jul 24, 1998, 3:00:00 AM7/24/98
to
In article <35B82660...@u.washington.edu>,


Well in order for MTOR to take full advantage Maya would need to first make
use of it. Other than that yes, MTOR fully supports all of the primitives.
I don't know what Houdini is doing. They do a good job of interfacing with
prman, so I don't see any reason why they wouldn't add this support.


If you want to start playing around with some of the sub-division features,
just created your model with polygons, dump them out to RIB and convert them
to sub-division meshes. The interface between the two is very similar.

This won't give you everything. But is is a quick way to start playing around
with the tools that are already out there.


Tal

-----== Posted via Deja News, The Leader in Internet Discussion ==-----
http://www.dejanews.com/rg_mkgrp.xp Create Your Own Free Member Forum

SCat3D

unread,
Jul 25, 1998, 3:00:00 AM7/25/98
to
It will take some change in either modeling software or your own frame of mind
in order to model for subdivision surface rendering. The idea of creating a
cube to render a sphere seems simple enough, but lets say I'm making the reigns
on a horse, dropping from the mouth and curving back up to the saddle and
around. With the logic behind sub. surfaces, I would create something akin to
three coupled railroad boxcars on each side of the horse sort of like this:
\_/.

Problem with this logic is that I have to do a subdivision render to see what
I'm doing, and for a complex model, rendering for every tweak could get out of
hand. Of course, if CPU speeds get to the point where this is easy to do, it
will also at that point probably be easy to do models the old fashioned (very
complex geometry) way.

Michael B. Johnson

unread,
Jul 25, 1998, 3:00:00 AM7/25/98
to

SCat3D wrote:

actually, the problem with this *argument* is the notion that you would be using
a control mesh that bears little obvious relationship to the limit surface. In my
experience, a RiPointsPolygon render of a subdivision surface of a detailed model
looks alot like the true surface; certainly good enough for animating and
previewing.

To take one publicly presented example, the polygonal control mesh for (say) Geri's
hand and head look pretty darn close (for previewing purposes) to what the prman
rendered limit surfaces look like.

Of course, you can easily have models that don't bear much relationship to the
final surface, but again, in my experience, using just the control hull (or perhaps
one or two levels of subdivision) is perfectly acceptable for preview purposes.

IMO, subdivision surfaces (as evinced by all the papers last week at SIGGRAPH) are
clearly the animation surface of the coming decade. It behooves all modeling and
animation systems to support them as soon as possible. The neat thing, of course,
is that this breathes life back in to all that polygonal modeling code that was
starting to look mighty aged next to all that NURBS code...

--
--> Michael B. Johnson, SMVS, PhD -- wa...@pixar.com
--> Media Arts Technologist, Pixar Animation Studios (East'of Office)
--> alumnus, MIT Media Lab, Computer Graphics & Animation Group
--> http://www.media.mit.edu/~wave

N.G.

unread,
Jul 26, 1998, 3:00:00 AM7/26/98
to
What is the interface that RenderMan uses to take Subdivision Sufaces?

N.G.

Stephen H. Westin

unread,
Jul 27, 1998, 3:00:00 AM7/27/98
to
ta...@my-dejanews.com writes:

<snip>

> Well in order for MTOR to take full advantage Maya would need to first make
> use of it. Other than that yes, MTOR fully supports all of the primitives.

Well, considering that one of the papers last week on subdivision
surfaces was from Alias/Wavefront, and that it dealt with parametric
evaluation of surfaces and their derivatives to integrate them with a
traditional CAD system, you might not have to wait too long...

<snip>

--
-Stephen H. Westin
Any information or opinions in this message are mine: they do not
represent the position of Cornell University or any of its sponsors.

Barel

unread,
Jul 27, 1998, 3:00:00 AM7/27/98
to
Well I hate to look like a newbie, but that´s just what I am... Can anyone
explain what subdivision surfaces are? I have not been able to attend
SIGGRAPH and I am at a loss here...

TIA

Barel

Paul Thomas Raugust escribió:

Stephen H. Westin

unread,
Jul 27, 1998, 3:00:00 AM7/27/98
to
Barel <car...@artico.com> writes:

> Well I hate to look like a newbie, but that´s just what I am... Can anyone
> explain what subdivision surfaces are? I have not been able to attend
> SIGGRAPH and I am at a loss here...

Imagine a polygonal model in three dimensions. Then imagine a rule to
subdivide all the facets, giving you a model with more polygons, but a
little smoother. The subdivision surface is the limit of this process:
what would happen if you repeatedly applied the subdivision rule
forever. If the rule is carefully defined, this limit surface will
have nice smoothness characteristics (like a B-spline mesh) and allow
essentially arbitrary mesh connectivity (unlike a B-spline
mesh). Variations can allow arbitrarily sharp edges within the model,
where needed.

The trick has been that these surfaces can be hard to evaluate in
traditional ways: you couldn't cut cross sections, find surface
normals at arbitrary points, or generate tool paths from them. That
drawback seems to be history, as Jos Stam of Alias/Wavefront presented
a paper at SIGGRAPH on how to do just that.

Larry Gritz

unread,
Jul 27, 1998, 3:00:00 AM7/27/98
to
>SCat3D wrote:
>
>> It will take some change in either modeling software or your own frame of mind
>> in order to model for subdivision surface rendering. The idea of creating a
>> cube to render a sphere seems simple enough, but lets say I'm making the reigns
>> on a horse, dropping from the mouth and curving back up to the saddle and
>> around. With the logic behind sub. surfaces, I would create something akin to
>> three coupled railroad boxcars on each side of the horse sort of like this:
>> \_/.


Sorry, I just don't understand. Why will this take getting used to?
Exactly how is it any different from the way that NURBS work?

We've been specifying curved surfaces using "control hulls" for
many many years. Subdivision surfaces are NO DIFFERENT!

For all practical purposes, subdivs are simply B-splines. In fact,
they're better, because they are a generalization which is not
restricted to rectangular connectivity.

Let's stop comparing subdivs to polygons -- they have nothing to do
with one another, certainly no more than NURBS or bicubic patches do.
Nobody notices a Bezier patch's control hull and says "hey, bicubics
are really like polygons." No, that's silly, they have little in
common. Subdivs are much more like b-splines.

The only way that they can be compared to polygons is by noticing that
like the primitive polygon meshes that we used many years ago (and
apparently that some people still use), they may have nearly arbitrary
connectivity and have no natural global parameterization. But that's
where the similarity ends. They are true curved surfaces, and are
controlled no differently (though somewhat more conveniently) than any
of the other curved surfaces we've been working with for years.

-- lg


PS. This is not to underplay the extreme jump in flexibility that
the arbitrary connectivity give us. Subdivs really are cool, and
something that modellers should be jumping to support.

--
Larry Gritz Pixar Animation Studios
l...@pixar.com Richmond, CA

David Lomax

unread,
Jul 28, 1998, 3:00:00 AM7/28/98
to
Was there any discussion at SIGGRAPH about how one would go about
texturing subdivision surfaces? Are there any new developments which
somewhat make up for up the loss of (s,t) space in parametric surfaces?

--
David Lomax
Millfilm Ltd.
da...@millfilm.co.uk


T. Burge

unread,
Jul 28, 1998, 3:00:00 AM7/28/98
to
>Was there any discussion at SIGGRAPH about how one would go about
>texturing subdivision surfaces? Are there any new developments which
>somewhat make up for up the loss of (s,t) space in parametric surfaces?

The basic technique discussed was to assign values to each of the CVs
then a smoothing scheme is used to calculated the values inbetween as
the limit surface is calculated and shaded. No details were given
regarding the exact method used to do the smoothing scheme, the paper
just mentions the names of a couple techniques.

I was told that there was no default st mapping such as there is for
polygons, but then the person mentioning that had never actually tried
that out before.

T. Burge

David Lomax

unread,
Jul 29, 1998, 3:00:00 AM7/29/98
to
Larry Gritz wrote:

> The only way that they can be compared to polygons is by noticing that
> like the primitive polygon meshes that we used many years ago (and
> apparently that some people still use), they may have nearly arbitrary
> connectivity and have no natural global parameterization. But that's
> where the similarity ends. They are true curved surfaces, and are
> controlled no differently (though somewhat more conveniently) than any
> of the other curved surfaces we've been working with for years.

So we get our arbitrary connectivity back - which is a good thing - but we
lose our global parameterisation - which is a bad thing. Back to the old days
of wrestling textures onto arbitrary polygonal-like topologies without the
aid of a natural uv space. A trade off, I suppose.

Wouldn't it be grand if someone invented something with both!


> PS. This is not to underplay the extreme jump in flexibility that
> the arbitrary connectivity give us. Subdivs really are cool, and
> something that modellers should be jumping to support.

Absolutely. Although I suspect the shader writers et al. may not be
jumping quite as high.

David,

Johan Aberg

unread,
Jul 29, 1998, 3:00:00 AM7/29/98
to
Hello!

Now I'm confused! :)

Someone posted here some time ago that the LightWave modeler was used to model Geri's
Game. The lightwave modeler is polygons only. But the surface that PRMan rendered in
Geris Games was patches. Where does the patches come from? My guess is that LW modeler
is used to produce the controll hull wich then patches are attached to...?


Larry Gritz wrote:......


"Let's stop comparing subdivs to polygons -- they have nothing to do

with one another, certainly no more than NURBS or bicubic patches do."but...

Michael B. Johnson wrote:
...
...


"The neat thing, of course,
is that this breathes life back in to all that polygonal modeling code that was
starting to look mighty aged next to all that NURBS code..."

Soo, are polygons used in the modelling stage and then patches are used when the
rendering is performed? And don't know too much about this, that's way those simple
questions are asked.

Thanks,

-johan


--------------------------------------------------
CAVIAR - http://home5.swipnet.se/~w-52046/
Sweden
ComputerAidedVIsualizAtion + Rendering

T. Burge

unread,
Jul 29, 1998, 3:00:00 AM7/29/98
to
>Now I'm confused! :)
>
>Someone posted here some time ago that the LightWave modeler was used
to
>model Geri's Game. The lightwave modeler is polygons only. But the
surface
>that PRMan rendered in Geris Games was patches. Where does the patches
>come from? My guess is that LW modeler is used to produce the controll
hull
>wich then patches are attached to...?
I had mentioned that at a presentation given here in the Bay Area, it
was said that LightWave was used to modify and clean up the models.
This was because of MetaNurbs which is an implementation of subdivision
surfaces.

>>Larry Gritz wrote:......
>>"Let's stop comparing subdivs to polygons -- they have nothing to do
>>with one another, certainly no more than NURBS or bicubic patches
do."but...
>
>>Michael B. Johnson wrote:
>>"The neat thing, of course,
>>is that this breathes life back in to all that polygonal modeling code
that was
>>starting to look mighty aged next to all that NURBS code..."
>
>Soo, are polygons used in the modelling stage and then patches are used
when the
>rendering is performed?

Many modeling tools used mostly for polygon modeling lend themselves
nicely to modeling the subdivision surface control mesh. You would
still want to see an approximation of the limit surface during modeling
just as you do when moving CVs for a NURB surface. There is course no
requirement that the control points of a subdiv surface be shown at all
during modeling -- I'm refering to some of those NURB modeling tools and
programs that would hide the control points and give you the feel of
manipulating the surface directly. If such tools can work for NURB
surfaces, they could just as easily be modifying subdivs.

There is also no reason why tools for such things as surface evaluation
mostly provided for NURB surfaces can not be rewritten for subdivs.
Checking curvature on a polygon mesh of course makes no sense, but on
subdivs it would.

T. Burge

Manuel Alducin

unread,
Jul 29, 1998, 3:00:00 AM7/29/98
to
As far as I can remember Geri was mostly modeled as a clay sculpture and then
digitized. Then the subdivision surfaces were created and animated in Pixar's
software that was "upgraded" to handle the subdivision surfaces: MenV,
Marionnete and PRMan. I doubt that Lightwave was used.

Johan Aberg <cav...@swipnet.se> wrote:
: Hello!
: Now I'm confused! :)


: Someone posted here some time ago that the LightWave modeler was used to
: model Geri's
: Game. The lightwave modeler is polygons only. But the surface that PRMan
: rendered in
: Geris Games was patches. Where does the patches come from?
: My guess is that LW modeler
: is used to produce the controll hull wich then patches are attached to...?

:
:> Larry Gritz wrote:......


:> "Let's stop comparing subdivs to polygons -- they have nothing to do
:> with one another, certainly no more than NURBS or bicubic patches do."but

:
: Soo, are polygons used in the modelling stage and then patches
: are used when the
: rendering is performed? And don't know too much about this,


: that's way those simple
: questions are asked.
: Thanks,
: -johan
: --------------------------------------------------
: CAVIAR - http://home5.swipnet.se/~w-52046/
: Sweden
: ComputerAidedVIsualizAtion + Rendering


-------------------------------------------------------------------
Manuel Alducin
mald...@acm.org
Computer Graphics and Multimedia
The George Washington University
-------------------------------------------------------------------


Guido Quaroni

unread,
Jul 29, 1998, 3:00:00 AM7/29/98
to
Don't forget the power of Prefs.
In prman you can attach a different array of points to the Subdiv gprim
for shading purposes.
This will allow you to handle parametrization with a different mesh
(with the same topology) than the mesh you are actually rendering.

Also you can attach arbitrary scalar values to vertices so you can
"recreate" some sort of parametrization. Scalar values get interpolated
"smoothly" so they are exatly what you want for shading.

Writing shaders for Subdivision surfaces is quite similar to any other
surfaces, they don't have s and t defined for you but you can find
workarounds for that.
Also you can merge multiple bspline surfaces in one mesh, merge points
and recreate virtually any shape without thinking about
cracking/discontinuity between spline patches. This is a big win for
both modelers and shader writers.

guido

David Lomax wrote:
> So we get our arbitrary connectivity back - which is a good thing - but we
> lose our global parameterisation - which is a bad thing. Back to the old days
> of wrestling textures onto arbitrary polygonal-like topologies without the
> aid of a natural uv space. A trade off, I suppose.

--
Guido Quaroni - Pixar Animation Studios
Email: gu...@pixar.com
Phone: (510)620-3561

Larry Gritz

unread,
Jul 29, 1998, 3:00:00 AM7/29/98
to
In article <35BDF9A5...@swipnet.se>,

Johan Aberg <cav...@swipnet.se> wrote:
>Someone posted here some time ago that the LightWave modeler was used to model Geri's
>Game. The lightwave modeler is polygons only. But the surface that PRMan rendered in
>Geris Games was patches. Where does the patches come from? My guess is that LW modeler
>is used to produce the controll hull wich then patches are attached to...?


Subdivs presented a chicken-and-egg problem: nobody supports rendering
them without modelers, nobody supports modeling them without a
renderer. We decided to break the cycle by adding support to the
renderer first. So until Maya (or whatever) adds full subdiv support,
we are forced to model the control hulls explicitly. We believe that
within a year or so, subdivs will have caught on to the point that such
compromises are no longer necessary.

If you've read the Menv paper, you know that our underlying system
is a procedural modeling language. For many things, we use Alias
to sculpt bicubic or NURBS surfaces, then convert the alias wire
files into programs in our model language.

Turns out that the Alias support for polygon modeling is very poor,
but that in Lightwave is quite good. So a few things were modeled
as polys in LW, then converted to Subdivs for actual articulation,
animation, and rendering in PRMan.

-- lg

SCat3D

unread,
Jul 30, 1998, 3:00:00 AM7/30/98
to
I'm confused.... You (Larry) say that sub. surfaces are NOT polygons, then
later add that the head in Geri's Game was done as polygons in LW.

Studying page 86 of the SIGGRAPH conference proceedings suggests that Geri was
not "modelled" (from scratch on screen,) instead a series of points were
touch-probed off a clay sculpt and the points were connected with 4-point
POLYGONS (in Lightwave as suggested?)

It would seem that one needs to create a rather accurate "control hull" in a
manner REMARKABLY similar to "primitive" polygon modelling. Although Geri's
control mesh is fairly rough, the Bug's Life models, esp. on the heads, seem to
have many more polyg...I mean "control hulls." suggesting the control mesh
needs to be pretty close to the desired end result.

My questions are... are subdivision surfaces really not simply a manner of
smoothing a render, like Phong or Gouraud shading? Is a paradigm shift in
modelling software really needed to use sub surfaces? Do sub surfaces really
solve problems like nurbs kinking when folded? And how many l's are in the
word model(l?)ing anyways?

l...@pixar.com

unread,
Jul 31, 1998, 3:00:00 AM7/31/98
to
In article <199807302331...@ladder03.news.aol.com>,

sca...@aol.com (SCat3D) wrote:
> I'm confused.... You (Larry) say that sub. surfaces are NOT polygons, then
> later add that the head in Geri's Game was done as polygons in LW.

No, I said that LW was sometimes used to edit the control hull points.
Turns out that LW is very good at editing individual points in a mesh.
It also has some polygon smoothing facilities which make it easy to view
a representation that is somewhat like a subdiv surface, but not quite.
However, it's close enough to do the trick until we get a real subdiv
modeler.

Incidentally, other subdiv-based geometry that we create is done entirely
without LW. Use on Geri very much had to do with a particular TD who was
very familiar with LW from a previous job. There's no reason to deny him
whatever tool gets the job done, but LW is not a particularly widely-used
part of our production pipeline.


> My questions are... are subdivision surfaces really not simply a manner of
> smoothing a render, like Phong or Gouraud shading?

No more so than NURBS.
In fact, subdivs *ARE* B-splines, but a generalization thereof which,
among other things, does not impose a rectangular connectivity.


> Is a paradigm shift in
> modelling software really needed to use sub surfaces?

To use them well, yes. There are no real subdiv modelers yet, so sometimes
we turn to polygon modelers to edit the control hulls directly. This is
admittedly clunky, and this fact should not used to infer more similarity
to polygons than is warranted.


> Do sub surfaces really
> solve problems like nurbs kinking when folded?

Yes! But as described earlier, they have some problems of their own,
such as lack of a consistent global parameterization.


> And how many l's are in the
> word model(l?)ing anyways?

According to The American Heritage Dictionary, the correct American
spellings are: model, modeler, modeling. However, it points out
that the following British variations are sometimes seen: modeller,
modelling.

Hope this clears up the spelling issue.

-- lg

--
Larry Gritz Pixar Animation Studios
l...@pixar.com Richmond, CA

-----== Posted via Deja News, The Leader in Internet Discussion ==-----

Sean Cier

unread,
Aug 1, 1998, 3:00:00 AM8/1/98
to
T. Burge wrote:
>
> >Was there any discussion at SIGGRAPH about how one would go about
> >texturing subdivision surfaces? Are there any new developments which
> >somewhat make up for up the loss of (s,t) space in parametric surfaces?
>
> The basic technique discussed was to assign values to each of the CVs
> then a smoothing scheme is used to calculated the values inbetween as
> the limit surface is calculated and shaded.

So, then the problem becomes finding a scheme to assign good ST values
at each vertex. This is basically what was done by default in NURBS,
simply because the rectangular topology allowed straight interpolation
-- which is still possible locally for subdivision surfaces (that is,
most of the polys simply become isolated B-spline patches, and if you
have an ST mapping for each vertex, the interpolation within polys is a
solved problem, equivelant to subdividing the parameter space the same
way the polygons are subdivided; I believe it was Tony DeRose who
referred to these as scalar fields). So, we need to find good ways to
produce a globel ST mapping.

The good news is that the scheme needs to be evaluated only at a few
discrete points (the vertices), so it can be *really slow* and hence
more complex than just plane, cylindrical, or spherical projections.
For instance, perhaps a variant of the method given in the MAPS paper
(Lee, Sweldens, et al), or something that takes advantage of an
iterative scheme such as Heckbert presented in the Implicit course (both
at SIGGraph '99).

> I was told that there was no default st mapping such as there is for
> polygons, but then the person mentioning that had never actually tried
> that out before.

Well, globally *no*, but in RenderMan polygon parameterization is just
a plane projection anyway, which technically works just fine for
subdivision surfaces (well, given the obvious huge limitations of global
plane projection parameterizations which everybody's already seen...)

-spc

--
/- Sean Cier <sc...@cmu.edu> -\
( If only you could see what I've seen with your eyes )
\- http://www.andrew.cmu.edu/~scier -/

Emil Mikulic

unread,
Aug 2, 1998, 3:00:00 AM8/2/98
to Johan Aberg
Johan Aberg wrote:
>
> Hello!
>
> Now I'm confused! :)
>
> Someone posted here some time ago that the LightWave modeler was used to model Geri's
> Game. The lightwave modeler is polygons only. But the surface that PRMan rendered in
> Geris Games was patches. Where does the patches come from? My guess is that LW modeler
> is used to produce the controll hull wich then patches are attached to...?

The LightWave modeler is polygonal. Newer versions support what NewTek
calls
"MetaNURBS".

I believe that this is the LightWave equivalent of subdivision surfaces.
You make a polygonal mesh and you can toggle between polygonal
and "MetaNURBS" modes.

For example, you create a box and subdivide it. Then you pull out 5
of its faces wo that they have crack inbetween. Run it thru
MetaNURBS and you have a smooth, spliney hand.

The polygon mesh acts as a "control hull".

-- Emil.


Atomic Skull

unread,
Aug 4, 1998, 3:00:00 AM8/4/98
to
In article <35BDF9A5...@swipnet.se>, cav...@swipnet.se says...

>
>Hello!
>
>Now I'm confused! :)
>
>Someone posted here some time ago that the LightWave modeler was used to model
Geri's
>Game. The lightwave modeler is polygons only. But the surface that PRMan
rendered in
>Geris Games was patches. Where does the patches come from? My guess is that LW
modeler
>is used to produce the controll hull wich then patches are attached to...?
>

It wasn't...

Lightwave BTW has a _very_ nice subdivision surface modeler (MetaNURBS),
that's probably why they thought the objects were modeled in it.. (but as I
said, ther weren't)


--
-=Atomic Skull=-

See my 3-D anime character page, www.jps.net/cerebros


Michael B. Johnson

unread,
Aug 5, 1998, 3:00:00 AM8/5/98
to Emil Mikulic

Emil Mikulic wrote:

> Johan Aberg wrote:
> >
> > Hello!
> >
> > Now I'm confused! :)
> >
> > Someone posted here some time ago that the LightWave modeler was used to model Geri's
> > Game. The lightwave modeler is polygons only. But the surface that PRMan rendered in
> > Geris Games was patches. Where does the patches come from? My guess is that LW modeler
> > is used to produce the controll hull wich then patches are attached to...?
>

> The LightWave modeler is polygonal. Newer versions support what NewTek
> calls
> "MetaNURBS".
>
> I believe that this is the LightWave equivalent of subdivision surfaces.
> You make a polygonal mesh and you can toggle between polygonal
> and "MetaNURBS" modes.
>
> For example, you create a box and subdivide it. Then you pull out 5
> of its faces wo that they have crack inbetween. Run it thru
> MetaNURBS and you have a smooth, spliney hand.
>
> The polygon mesh acts as a "control hull".
>

my understanding of the way MetaNurbs works is that this is a process that is controlled by
the modeling app, not the rendering app, therefore the process has to be managed by the
human modeler. In other words, the TD/modeler decides when something looks "smooth enough"
using MetaNURBs rather than specifying it in an abstract way as "smooth", letting the
renderer figure out how much work to do.

I'd love to hear more from someone technical who uses/wrote it, though...

0 new messages