Bezier Curves Instead Of Polygons

Discussion in 'Console Technology' started by Color me Dan, May 17, 2009.

  1. zed

    zed
    Legend

    Joined:
    Dec 16, 2005
    Messages:
    6,415
    Likes Received:
    2,139
    bezier patches will never(*) be used, the chief reason being
    A/ they dont give as much control to the artists as fixed geometry does
    B/ they are a PITA to work with
    C/ patches joining with other patches/geometry leads to sparkle t-splits
    D/ theyre not a unified solution, some shapes cant be represented by them

    (*)outside of certain game type exceptions, but for FPSs etc no (though q3a used them for arches, though were tesselated to triangles before rendering, FWIW u could see gaps where the arches meet the other geometry, search for T splits or something for the reasons behind this )

    heres the first time they were exposed with consumer hardware
    http://www.opengl.org/registry/specs/NV/evaluators.txt

    they were soon dropped by nvidia, of the 100-200 extensions, this is one of the handfall that got dropped + IIRC it was dropped like within a couple of years, thats how bad it was
     
  2. betan

    Veteran

    Joined:
    Jan 26, 2007
    Messages:
    2,315
    Likes Received:
    0
    Artists don't have to work directly with bezier surfaces though (as in you can convert polygonal models to bezier surfaces with arbitrary precision).
    First order bezier triangle is just a flat triangle, they cannot be less expressive than traditional polygons.
     
  3. MfA

    MfA
    Legend

    Joined:
    Feb 6, 2002
    Messages:
    7,610
    Likes Received:
    825
    Their rational versions can represent spheres if that's what you are getting at.
     
  4. _phil_

    Veteran

    Joined:
    Jan 3, 2003
    Messages:
    1,659
    Likes Received:
    13
    You would have to model with bezier in mind then ,since your mesh will suffer and change a lot in the process.

    Another pain is continuty between patches. To keepsurface continuity ,a Highly detailed patch must propagate it's complexity across low detail parts (same number of control points between a complex surface an a flat one for example)

    Plus ,you can't UV bezier surfaces , it's all implicit.
     
  5. Fafalada

    Veteran

    Joined:
    Feb 8, 2002
    Messages:
    2,773
    Likes Received:
    49
    The problem is that this assumption is false - complex shapes don't come down to a few control points with any of the polynomial patch variations.
     
  6. Simon F

    Simon F Tea maker
    Moderator Veteran

    Joined:
    Feb 8, 2002
    Messages:
    4,563
    Likes Received:
    171
    Location:
    In the Island of Sodor, where the steam trains lie
    Incorrect. Just increase the dimensions of the control points to include U&V as you do with a triangle mesh.
     
  7. _phil_

    Veteran

    Joined:
    Jan 3, 2003
    Messages:
    1,659
    Likes Received:
    13
    I dont'see what you mean by increasing dimension of the control point.
    Bezier patch is 0-1 uv from start to end ,and linear across between control points.

    If you mean add control point and move it across the surface , then i don't se that being a really serious workaround... :)
    no control point = no Uv
     
  8. Color me Dan

    Regular

    Joined:
    May 19, 2007
    Messages:
    300
    Likes Received:
    1
    Location:
    Sweden
    I'm curious, why is that? I'm sure you're right, I'm just asking for an example so I understand better.
     
  9. MfA

    MfA
    Legend

    Joined:
    Feb 6, 2002
    Messages:
    7,610
    Likes Received:
    825
    Texture UV can be interpolated from control point values, just like XYZW coordinates ... just because you call the bezier parameters U and V doesn't prevent you from using something different for textures ;)
     
  10. _phil_

    Veteran

    Joined:
    Jan 3, 2003
    Messages:
    1,659
    Likes Received:
    13
    isn't it what i said (meant at least) ? Texturing control only at the control point level ?
    If not , it's not something that exist in curent 3d packages....
     
  11. zed

    zed
    Legend

    Joined:
    Dec 16, 2005
    Messages:
    6,415
    Likes Received:
    2,139
    ok :), but I (+ the majority of ppl) wouldnt say straight off a single triangle is a bezier triangle
     
  12. Simon F

    Simon F Tea maker
    Moderator Veteran

    Joined:
    Feb 8, 2002
    Messages:
    4,563
    Likes Received:
    171
    Location:
    In the Island of Sodor, where the steam trains lie
    I know MFA has already answered, but you are confusing the parametrisation of the Bezier curve which we can define to be (S,T), with the texture coordinates, (U,V). I tried to find some pictures or code I did about 10 years ago to demonstrate it but have no idea where they might be.


    FWIW exactly the same thing happens with the rendering of triangles where one can iterate across the surface using barycentric coordinates which, in turn, control texture coordinates.
     
  13. _phil_

    Veteran

    Joined:
    Jan 3, 2003
    Messages:
    1,659
    Likes Received:
    13
    Really ,i don't.
    I did a lot of nurbs modeling and shading , but texturing nurbs like you would do with polygons (at least in current 3d apps) is really not possible.You have so few option(plus a projection node that need to be moved along with the geometry).it's just 50 times less flexible .
     
  14. Davros

    Legend

    Joined:
    Jun 7, 2004
    Messages:
    17,884
    Likes Received:
    5,334
  15. Riddlewire

    Regular

    Joined:
    May 2, 2003
    Messages:
    528
    Likes Received:
    404
    Here are the particulars of Shiny's system:
    http://www.gamasutra.com/view/feature/3379/behind_the_scenes_of_messiahs_.php

    Duke Nukem Forever was using MRM at one time. That was during the second edition (=2001 trailer) of the game. I have no idea if they abandoned it in the more modern version that we'll never see.
     
  16. Davros

    Legend

    Joined:
    Jun 7, 2004
    Messages:
    17,884
    Likes Received:
    5,334
    thanks for that

    ps: if you find messiah buggy (and you will ;)) run the glide exe (with a voodoo card or a wrapper) its much more stable
     
  17. Fafalada

    Veteran

    Joined:
    Feb 8, 2002
    Messages:
    2,773
    Likes Received:
    49
    How is this really any different from texturing control only at vertex level on triangles?
     
  18. _phil_

    Veteran

    Joined:
    Jan 3, 2003
    Messages:
    1,659
    Likes Received:
    13
    Maya doesn't allow that for a start .. ? :) ,
    wouldn't the interpolation be related to surface tesselation ? (linear at zero ,curved at more)
     
  19. pcchen

    pcchen Moderator
    Moderator Veteran Subscriber

    Joined:
    Feb 6, 2002
    Messages:
    3,018
    Likes Received:
    582
    Location:
    Taiwan
    A simple example would be, say, a hedgehog (not the blue one, though :) )
     
  20. Simon F

    Simon F Tea maker
    Moderator Veteran

    Joined:
    Feb 8, 2002
    Messages:
    4,563
    Likes Received:
    171
    Location:
    In the Island of Sodor, where the steam trains lie
    Does Maya have subdivision surfaces? It, frankly, all becomes trivial then, IMHO, assuming your control mesh also has texture vals at the control vertices.
    Of course, so you simply include the UV coordinates along with XYZ,in the decision as to how much to subdivide.
     
Loading...

Share This Page

  • About Us

    Beyond3D has been around for over a decade and prides itself on being the best place on the web for in-depth, technically-driven discussion and analysis of 3D graphics hardware. If you love pixels and transistors, you've come to the right place!

    Beyond3D is proudly published by GPU Tools Ltd.
Loading...