[a / b / c / d / e / f / g / gif / h / hr / k / m / o / p / r / s / t / u / v / vg / vr / w / wg] [i / ic] [r9k] [s4s] [vip] [cm / hm / lgbt / y] [3 / aco / adv / an / asp / biz / cgl / ck / co / diy / fa / fit / gd / hc / his / int / jp / lit / mlp / mu / n / news / out / po / pol / qst / sci / soc / sp / tg / toy / trv / tv / vp / wsg / wsr / x] [Settings] [Home]
Board
Settings Home
/3/ - 3DCG



Thread archived.
You cannot reply anymore.



File: BBFUa.png (52 KB, 630x310)
52 KB
52 KB PNG
Serious question, why aren't curved polygons a thing? Wouldn't they pretty much solve all the issues polygons currently have?

They can make curved polygons work in vector graphics, why can't they do it in 3D models?
>>
>curved polygons in vector graphics
lmfao what?
A polygon, by definition, can't be curved.
>>
>>549091
We have splines but they're difficult to animate, but moving the points that make up straight lines isn't.
>>
>>549093
Curved lines then? I forget what they're called.
>>
>>549091
thatsnothowitworksatall.jpg

>>549099
They're called arcs, and they are not found in polygons.

3D meshes are made of finite amounts of vertices. The more you have, the more you can simulate a perfect curve. It's the same problem with pixels VS vectors; images made of pixels have a finite amount of small things composing them, while vector graphics do not.
>>
>>549091
They are a thing in rhino but its fake
>>
Have you ever used any 3d software before? "Curved polygons" are known as subdivision surfaces and they are a very basic element in 3d, used constantly.
>>
>>549091
Because computers, unlike real life, work on a grid.

And their functionality is based on logic and math which can only process one thread at a time.

The simplest geometrical object is a point which has 0 dimensions (which also don't exist in real life).

As you increase the number of dimensions to N (where N(point)=0, N(line)=1, N(triangle)=2 etc.) every new basic geometrical object is defined by being bordered by N+1 objects of N-1 dimensions.

Even in mathematical analysis, to calculate the length of a curve or the area of a curved surface a sort of a trick is used, where these objects are broken into an array of infinite points that define an infinite number of tiny lines. Deriving functional formulas from this was the work of brilliant human minds.

I think you see where I'm getting at. Despite their immense processing powers, computers don't understand curves because it's not in their architecture. All curves you ever see on screen are approximations that your mind interprets as such because the pixels are too small or too fast to notice (or thanks to your suspension of disbelief).

You can easily bend a stick in real life and it'll become an actual curve with next to no effort on your side, but a computer has to be told what to do through code beforehand and the more accurate you want the simulation to be, the more points it will need to work on.

A perfectly represented curve would require an infinite number of vertices, and that is unachievable with the current architecture of computers, regardless of the amount of processing power.

However, this applies to objects you want to dynamically deform (animate) or render. In the manufacturing domain, like >>549133
said, software such as Rhino works with mathematically defined geometry which can easily translate into curved physical objects.
>>
N U R B S
U
R
B
S
>>
>>549159
>>549159
>>549159
>>549159
>>549159
>>
>>549147
What you said is a bunch of bullshit, why do people like you with no knowledge even fucking speak, a person might get the wrong information, dumbass.

>>549091
I'll try to explain it as simple as possible.
First, vector is a broad term, but what 3d understands as a vector is a set of 2 verteces that are connected by an edge.
Second, a polygon by definition cannot be curved, because it is a collection of chained edges(vectors), a chain of 3 or more edges.
Third, vector graphics is also a broad term, but what it usually refers to is this https://en.wikipedia.org/wiki/Vector_graphics and it's basically a set of polygons, curves and circles in 3d or 2d space, scalable without loss of quality(cause of maths).

Now to answer your original question.

>They can make curved polygons work in vector graphics, why can't they do it in 3D models?
They can and they do. You're searching for the term "geometrical modelling". Most CAD software uses this, but, and this is a large but, in order to display in on your monitor, you need the gpu. And thus 2 problems arise, first is the obvious one, that you need to rasterize it, cause you know monitors work in rasters(2d arrays), not vectors and the second one is that gpus are made to work with polys, triangles are all the rage right now and not to be abandoned soon.
Anyway, cad software works like that(with curves, circles, etc). I've never heard of a renderer that renders geometric modelling, though, maybe you can be the first to try it.
>>
>>549211
Not that guy, but what he said isn't bullshit.

You cannot represent a curve in screen space because pixels are a grid. If you were to represent vectors as a curve, which you can totally do, you would then have to interpolate that curve to points to actually draw something, making it terrible.
>>
>>549211
I was going to be civil, but this next line of text is for you:

>HURR DURR I DON'T KNOW MATH SO I'LL ASSUME EVERYONE IS A DUMB AS ME. HERE, I'LL EXPLAIN EVERYTHING USING MY VAST KNOWLEDGE OF TERMS USED IN SOFTWARE INTERFACES. HURRRR.

Okay, now to undo the damage your cancerous post has done unto others.

First off, when I said grid, I was referring to the finite 3 dimensional array that any program uses to define the location of points in space (vertices). While clever coding allows us to not waste processing power and memory on an actual empty array, the programming logic assumes one's existence. While 3D space in a viewport seems continuous (as it also does in games), it's just a graphical illusion.

>3d understands as a vector is a set of 2 verteces that are connected by an edge

No, that's a line. A vector is an arrow with an origin, a length and a direction. Its equivalent in programming is a one dimensional N length array which represents the coordinates of the tip of an N dimensional arrow with the origin in 0.

Why is this important?

A point cannot be defined without an origin. The vector is the arrow that points to your vertex saying "here it is!". That's why you have a basepoint in any model.

An edge is a line *or curve* that borders one or multiple surfaces... hence the name.

>a polygon is a collection of chained edges
A closed chain of straight lines. The lines become edges only as a relationship to a surface.

>vector graphics
Is something irrelevant in the current discussion.

>geometrical modelling
All the shapes in geometrical modeling are mathematically defined so that they can be accurately analyzed before production and because it simplifies some modeling techniques.

That's it.

From this point on, all representation of geometrical modeled objects (be in the viewport, rendered, 3d printed, CAM produced, etc.) is converted into lines and polygons. The only exception are some CAM machines that can also manage arcs.
>>
>>549326
In conclusion, computers can't used true curved objects because they can't understand them. They can store definitions of such objects, work on those and give us meaningful numerical output, but that's only because we, as humans, can understand what that output means by correlating mathematics with real world information.
>>
File: 1485399539028.jpg (30 KB, 393x469)
30 KB
30 KB JPG
>>549147
>implying real life doesn't work on a grid
>>
guys, stop debating, its really simple
as of today, any 3D mesh is still ultimately split in triangles when rendered (viewport, image, rt, etc.)
those tris are flat and can't be curved. end of story
>>
What about spheres in raytracing for example ? It's not made of triangles, I think the author meant why not use cut ellipsoids to render image better.

By the way this is my first post on this board, and I'm dev not graphic designer so I don't know if that makes any sense to you guys
>>
>>549354
this is nature's version of a grid
it is quite different from the grids we are taught in school to simplify things like math, map making, etc.
>>
>>549363
Your pic looks like an approximate representation of atoms in space. Which is not the matter here.(pun not intended)

Actually there is no grid, planck length definition is that they can be no physical change at a smaller scale than the latter. But particules can be offset of the grid as much as they want.
>>
>>549354
Nature has this weird way of working where you can get it as long as you're not trying to explain it.

The second you try to put it into words, the explanation becomes a metaphor, that is somethong that is like nature, but not quite.
>>
File: 1405450241966.jpg (15 KB, 373x359)
15 KB
15 KB JPG
>>549147
>>549091
I don't think OP was asking why polygon models can't have non-approximated curves. He probably wanted to know if there are other ways of representing geometry in 3D that can. For example -

https://www.youtube.com/watch?v=KYekhnLHGms

This seems more akin to 2D vector graphics, at least insofar as far as how the geometry is defined (implicitly). Rather than a shape being a set of points in 2 dimensions (like a 2D bitmap image) or 3 dimensions (like a polygon mesh), shapes are stored as a formula that defines the shape, like with 2D vector graphics. This is of course why 2D vector graphics has no loss of detail at any scale. This is probably not in general use because it's hard to define complex shapes and I can't imagine it would be easy to animate.

>computers don't understand curves because it's not in their architecture
...
>>
>>549382
>>549159
also this
>>
>>549296
what he said was a lot of half-truths. The bulk of it boils down to "we have to discretize continuous geometry to represent it on a finite machine". This is true, but this doesn't make it impossible to directly render a mathematical spline to a pixel grid. There is nothing stopping us from representing things with splines and skipping any polygon representations. The ONLY reason we represent geometry with triangles and straight lines is because the fast rasterization algorithms that work on those primitives are built into graphics hardware.

tl;dr it's faster because of how graphics hardware works, but you can do it in software rendering (see Flash).
>>
File: ecstatica2-3.jpg (86 KB, 640x480)
86 KB
86 KB JPG
Well, there's this. Ecstatica uses ellipsoids instead of polygons.
>>
>>549296
of course, but that doesn't "make it terrible". Yeah, you need to represent everything in screen space ultimately, but the higher the resolution our monitors become, the less of an issue that will be. That hasn't been an issue for years really, just look at vector vs bitmap graphics - the advantages are obvious in certain situations and have been for a long time.

But I still agree, there are much bigger problems than that to deal with before it would be viable, and with tesselation and stuff I doubt it would produce results that are really worth the trouble compared to polygons
>>
>>549370
you high?
>>
>>549326
>No, that's a line. A vector is an arrow with an origin, a length and a direction. Its equivalent in programming is a one dimensional N length array which represents the coordinates of the tip of an N dimensional arrow with the origin in 0.
Dumbass, a vector is a broad term and in 3d graphics it's an edge. What you said is the mathematical/physical vector. Vector is also a one dimensional array in stl.

>An edge is a line *or curve* that borders one or multiple surfaces... hence the name.
Again, in geometry. An edge in 3d is a line defined by two verteces.

>A closed chain of straight lines.
Again, wrong. In both polygon modelling and geometrical modelling you can have faces defined by an open chain of edges/curves/lines and by sets or groups of open chains of edges/curves/lines.

>converted into lines and polygons
Somewhat true, it is converted in order to display it on your monitor, but not for CAM or any geometrical modelling format such as parasolid.

>>549327
Total bullshit. Read your post and think about how fucking stupid it sounds.

>>549400
This is true and the guy you're replying to is a retard. It's hard to explain to retards that the representation of a circle in a 3d space is an origin point, a normal and a radius.
>>
I'm surprised sub-d to nurbs conversion isn't more common, there's a few expensive plugins but they're pretty obscure.
>>
>>549414
>went to electronics college
>went to aerospace college
>currently work with CAD as my job
>been into 3D since Terragen1 was a thing

>get called names after making one helpful post that attempted to explain the mathematical background for OP's question

>by a guy who thinks "Vectors are a broad term"

Just lol. This is why you shouldn't waste your time on the internet, kids.
>>
>>549430
Maybe you shouldn't have failed both colleges and actually tried to learn something, cause this statement:
>From this point on, all representation of geometrical modeled objects (be in the viewport, rendered, 3d printed, CAM produced, etc.) is converted into lines and polygons.
Shows you have no understanding of CAD formats or CAM whatsoever. And your post was not helpful as it was wrong. The only mathematical vector in 3d is my dick in your mom's backhole(and also the normal of a face).
>>
>>549434
cute.
>>
File: shit_nigga.gif (393 KB, 640x360)
393 KB
393 KB GIF
>>549363
>>549367
>>549370
Sauce needed as fuck
Those "grids" and atoms you're talking about aren't what you think, as everything emerges from fields.
>>
File: 1485234345617.jpg (34 KB, 480x522)
34 KB
34 KB JPG
>>549430
this

>Vectors are a broad term
mfw




Delete Post: [File Only] Style:
[Disable Mobile View / Use Desktop Site]

[Enable Mobile View / Use Mobile Site]

All trademarks and copyrights on this page are owned by their respective parties. Images uploaded are the responsibility of the Poster. Comments are owned by the Poster.