Wow! 4.0 seems awesome...

Discussion and updates on Curvy 3D Beta development.
Markku
Posts: 144
Joined: Tue Nov 22, 2011 7:12 pm
Location: Finland

Wow! 4.0 seems awesome...

Post by Markku »

There are really valuable additions coming. Those engraving tools look really good! :D

However, unless booleans are really magical, I think we are getting into weak area of polygons. Booleans are bad, if they generate too much polys or if cuts are ugly. In raytracing (say, POV-Ray) booleans work, but in poly systems they usually fail.

But, if cuts can be made with curves, I guess it has really possibilities.

If those "engravings" really result to moderate amounts of polys, they're really cool thing!

I opened Curvy3D just to check some things and, as usual, learned a lot of new (well, new for me) things.

Would it be possible to project a loft or slab to another objects' curved surface?

Also, could you construct a new primitive, which would be like cube, but which would react in same way to Curvy maps as, say, lathes do? It would be very nice way to construct hard surfaces!
Markku
Posts: 144
Joined: Tue Nov 22, 2011 7:12 pm
Location: Finland

Re: Wow! 4.0 seems awesome...

Post by Markku »

Much of the lathe's and line's good behaviour with Curvy map is due to resolution slider. It does not work with cube...
Dan Silverman
Posts: 846
Joined: Wed Dec 10, 2003 5:28 pm
Location: USA

Re: Wow! 4.0 seems awesome...

Post by Dan Silverman »

Booleans with polys in other applications are getting better and better. ZBrush does nice booleans and so does MODO via Mesh Fusion. However, as you pointed out, they do tend to make fairly high-poly geometry. But in today's world, that's okay. Any more, most 3D artists are block out their shapes quickly, regardless of how heavy the geometry gets, and then use retopolgy tools to create a more manageable mesh. In many case, the high-res mesh is baked down to a much lower-res mesh, creating a normal map to preserve the intricacies of the high-res mesh.

So, while booleans creating high-res meshes might have been a problem years ago, it's not much of a problem today.

So, I disagree with you. Booleans are not bad. Not at all. I model in MODO and use a kit called MOP Boolean Kit. The kit allows me to use booleans to quickly block out shapes and add intricate details. Modeling with booleans with both polygons and SDS via this kit is both a life saver and a time saver.
Desktop Workstation
Intel Core i9-10900K 3.7GHz
128 GB RAM
RTX 3090 ti
Windows 11 64-Bit
Simon
C.E.O.
Posts: 2561
Joined: Wed Dec 01, 2004 8:13 am
Location: Kingston Upon Thames, U.K.
Contact:

Re: Wow! 4.0 seems awesome...

Post by Simon »

I am going to extend the resolution slider to work with cube/sphere/cylinder/slab - I agree it is very useful to up the mesh density when you create a primitive.

This also extends to the projecting slab/blob to surface question - it works *if* you subdivide the slab first, and that will be easy once the resolution slider works. until then you have to increase the density first. I'm also thinking of adding a refinement option that simply imposes a maximum edge length and divides to reach that target - so it will work on existing meshes and not just the primitives.

I agree with your points about booleans being nasty with triangle meshes. Luckily a lot of the work I did on 3.0 so make adaptive subdivision work also applies to improving the quality of meshes around the boolean cuts - I have a function to even out the cut edge to use consistant length edges, and another function to repair and even out the triangles near to the cut.

The text cutting involved a bit of preparation, I used the smooth tool with a small radius to force the mesh to subdivide close to the sharpest details. I plan to offer this as an automatic pre-process based on the cutting edge (so sharp points and narrow details lead to a finer subdivision of the target surface)

I suspect if you want to make a technically accurate model you will always be best off in more CAD style software, but from time to time booleans are handy making otherwise tricky details in Curvy.
Markku
Posts: 144
Joined: Tue Nov 22, 2011 7:12 pm
Location: Finland

Re: Wow! 4.0 seems awesome...

Post by Markku »

First of all, I'm not *against* Booleans, I have used them longer than polygons. :D

What I mean is, because Curvy is very, very good with curved surfaces, *and* produces nice meshes from them, it could be the competitive edge for it. I mean, market is full of 3D apps which produce polygon-heavy meshes. Competition is difficult. But, in my opinion, Curvy's strength is very good workflow, which produces nice artistic meshes.

These curve-based cutting tools could be a new view to old problem! :D

I think this maximum edge length also can be used to drive topology. My analogy is lego brick here -- I try to find an object which would be base for building bigger objects, not a polygon but possibly set of curves which always produces manageable mesh. Lathe and line are such, but possibly there are others, which could be refined or cut *without* too heavy poly count.

I think this is a math problem, not coding problem, but hey -- Boolean operations are based on math too...
Markku
Posts: 144
Joined: Tue Nov 22, 2011 7:12 pm
Location: Finland

Re: Wow! 4.0 seems awesome...

Post by Markku »

Another idea came to my mind when I was playing with line objects.

Now line object's profile is circle. Could it be square? Then you could (for example, with half-circle arc curve) draw architectonic parts easier. Curved arches are parts of many things, but often they are not round in profile.

Using lofts for this is not easy. I'm not making Curvy3D a boring CAD, but one idea could be that you could make something that sweeps a profile (square could be one profile type?) around a circle from origo point as much user wants by using slider perhaps?
Simon
C.E.O.
Posts: 2561
Joined: Wed Dec 01, 2004 8:13 am
Location: Kingston Upon Thames, U.K.
Contact:

Re: Wow! 4.0 seems awesome...

Post by Simon »

That is a good idea, kind of like a box + a path.

I could let you choose from basic primitives (circle, circle section, regular polygons). Or if you wanted you could draw your own shape to use (Which would work like a slab/blob extruded along the path). In any case I can make the shape follow the path better than you would get from a Loft object, as the shape would rotate to follow the path giving a good smooth, accurate result.

You would keep the choice of bevels and end radii too. As well as the width/breadth of the box - lots of parameters to tweak to get a good result.

Technically it is straight forward, will give it a go.

I'm also thinking that you should be able to choose "Close Loop" so the ends get joined continuously if you like - for easier chains/links.

For architectural parts I think it would help to have a variety of curve shapes ready made - so you can simply place a circle/semicircle/square/straight line any time you need to draw a curve. Would save a step from drawing and "Redraw As". I'm thinking about adding traditional beziers as an alternate Curve mode too - for easy drawing of certain more technical shapes. And with the idea of "place and tweak" perhaps you could do things like adjust the angle swept out by a placed circle in the parameters after it is placed.

Also for "architecture" and more precise models I'm adding the wider range of transform tools, so at last you can do things like rotate 90 in X with a simple click.
Markku
Posts: 144
Joined: Tue Nov 22, 2011 7:12 pm
Location: Finland

Re: Wow! 4.0 seems awesome...

Post by Markku »

Really, Simon, if these improvements are implemented, version 4 will really be awesome! :D

Take your time. Meanwhile, I re-read manual and learned a lot. So, when version 4 is implemented, remember to update the manual afterwards!
Dan Silverman
Posts: 846
Joined: Wed Dec 10, 2003 5:28 pm
Location: USA

Re: Wow! 4.0 seems awesome...

Post by Dan Silverman »

To extend Curvy and allow Curvy to use complex profiles, you could allow Curvy to import .AI files. MODO does this and this allows the end-user to create complex shapes in programs like Illustrator, Inkscape, Affinity Designer, etc., and bring those shapes into MODO to extrude, lathe, etc. This way the end-user could use tools designed to create complex curves (like Inkscape, which is free) and bring them into Curvy for use there.
Desktop Workstation
Intel Core i9-10900K 3.7GHz
128 GB RAM
RTX 3090 ti
Windows 11 64-Bit
Simon
C.E.O.
Posts: 2561
Joined: Wed Dec 01, 2004 8:13 am
Location: Kingston Upon Thames, U.K.
Contact:

Re: Wow! 4.0 seems awesome...

Post by Simon »

I've not seen the AI format, but the open SVG format would probably do the same thing, and yes it would be very useful to get the curves imported directly (Instead of an intermediate step of rasterising and importing a bitmap).

I would use that all the time as I love the workflow in Inkscape (But have reservations about trying to duplicate all that functionality in Curvy). And perhaps when I get used to that workflow I will consider whether to invest in bezier editing directly inside Curvy.

It also fits with plans to allow Curves to be their own stand alone primitive type (again) in Curvy. So you can edit them, copy/paste and whatever, then use them to make Curvy Primitives or as part of other filters (eg: "Warp to Rails" needs stand alone curves to drve it, as does "Slice with Curve")
Dan Silverman
Posts: 846
Joined: Wed Dec 10, 2003 5:28 pm
Location: USA

Re: Wow! 4.0 seems awesome...

Post by Dan Silverman »

MODO does the same thing. Why implement all the bezier abilities when you can simply import proper curves from another app? So, MODO imports .ai.

The reason I suggested .ai is because it is the standard due to the long-standing popularity of Illustrator.
Desktop Workstation
Intel Core i9-10900K 3.7GHz
128 GB RAM
RTX 3090 ti
Windows 11 64-Bit
Markku
Posts: 144
Joined: Tue Nov 22, 2011 7:12 pm
Location: Finland

Re: Wow! 4.0 seems awesome...

Post by Markku »

SVG would be a nice open format choice, better than many proprietary/commercial formats. (Commercial formats have additional nuisance: when new versions of commercial software is introduced, new additions to the format may be introduced, but no documenation exists until someone hacks the format.) But a word of warning, because I have some experience with different dialects of SVG: there are complex implementations and they may be very different between different vector apps. It can be very time-consuming to build generic import parser.

I'd love to have proper bezier editing for Curvy's curve objects, but that can be hard to implement too.

I think it would be wise to select some improvements for version and save the rest for versions 5, 6... etc. That way the programming is (maybe) less overwhelming.

You have already shown (in those planned future feature demos) so much new stuff, I guess nobody can demand more... :D
Simon
C.E.O.
Posts: 2561
Joined: Wed Dec 01, 2004 8:13 am
Location: Kingston Upon Thames, U.K.
Contact:

Re: Wow! 4.0 seems awesome...

Post by Simon »

I think for speed of testing the idea out I'd import SVG, of the flavor Inkscape produces. Overall doing limited import of beziers will likely save me time over the course of development for 4.0 as I can see it being used in so many modelling tasks. And I suspect I will grow a collection of curve shapes that I can reuse between models too.

It might make me want to update Slab to support holes - then you could import all sorts of cool shapes and mesh them easily.

In any case I think this is a relatively minor diversion compared to adding full spline tools.
Simon
C.E.O.
Posts: 2561
Joined: Wed Dec 01, 2004 8:13 am
Location: Kingston Upon Thames, U.K.
Contact:

Re: Wow! 4.0 seems awesome...

Post by Simon »

Basic SVG import works fine, will be very handy.
Simon
C.E.O.
Posts: 2561
Joined: Wed Dec 01, 2004 8:13 am
Location: Kingston Upon Thames, U.K.
Contact:

Re: Wow! 4.0 seems awesome...

Post by Simon »

Making progress with beziers with holes. Going to add custom bevel shapes and extrusion along paths too (like shaped Curvy Lines).
viewtopic.php?f=45&t=3040
Post Reply