NVil Forum

General Category => Feature Requests => Topic started by: samardac on May 11, 2014, 10:23:59 am

Title: BSpline.
Post by: samardac on May 11, 2014, 10:23:59 am
IStonia, could you pleas make spline - BSpline. BSpline is much more easer to use and control.
Title: Re: BSpline.
Post by: samardac on May 12, 2014, 09:53:11 am
or may be make at least edge tool like in Silo. I really can not work with spline in NVil it is very hard... You have to draw it than you alwas have to twek it(becouse it is imposible practically to draw waht you need) and if you move point all twaeks reset... A lot of time have to spend to draw simple curve...
 Bspline is much more intuitive and easer. or at least edge tool like in silo....
Title: Re: BSpline.
Post by: IStonia on May 12, 2014, 09:59:20 am
I don't know much about BSpline. Can you make a clip to show how it works in other apps?
Title: Re: BSpline.
Post by: samardac on May 12, 2014, 10:26:56 am
This is how it works:
http://youtu.be/rfxQlm_XAbM

To test it more detail you can download tria version of MOI 3D and test it by yourself.

http://moi3d.com/download.htm
Title: Re: BSpline.
Post by: steve on May 12, 2014, 06:51:09 pm
or may be make at least edge tool like in Silo. I really can not work with spline in NVil it is very hard... You have to draw it than you alwas have to twek it(becouse it is imposible practically to draw waht you need) and if you move point all twaeks reset... A lot of time have to spend to draw simple curve...
 Bspline is much more intuitive and easer. or at least edge tool like in silo....

Hi samardac,
Nurbs curves will not really bring you any more control than what you can get from Nvil Splines.

You can create splines like you can create edges(edge tools) in Silo (enable "Line List" option, or "Toggle type" to switch between smooth /sharp transition). You can also disable the auto updating of the tangents on spline tangent while editing.(Edit > Options > Spline Transform Options")

Would some examples of how to use the splines help?


Title: Re: BSpline.
Post by: Vaquero on May 14, 2014, 12:00:45 am
B-Splines may not give you more control, but I think they can make the tweaking of curves easier when not a lot of precision is required. B-Splines lie in the convex hull of the so-called De-Boor-points, for the sake of simplicity, lets just call them control vertices (CVs). What Nvil's splines have are "through-points" which control the spline by going through the curve. Tweaking the curvature can often be a case of going back and forth between the tangents of adjacent through-points. CVs are easier to pull around. An analogy would be the proxy low poly cage for subdivision surfaces.
Title: Re: BSpline.
Post by: steve on May 14, 2014, 03:30:17 am
CVs are easier to pull around. An analogy would be the proxy low poly cage for subdivision surfaces.

That sounds more like Polynomial Curves(polar Forms and Control Points / De Casteljau algorithm).
Title: Re: BSpline.
Post by: samardac on May 14, 2014, 06:14:13 am
Do not know all that stuff behind B-Spline but can say for sure - work with this is much more easer then with spline from Nvil  :)
Title: Re: BSpline.
Post by: polyxo on May 14, 2014, 09:22:39 am
I am again not against it - but isn't the larger and unsolvable problem that the smooth and well behaved curve at some point needs to get transferred to a polygonal representation when it gets meshed? Also where does the precision go when such a smooth curve gets remapped to a deformation driver for a low res polygonal object?

Title: Re: BSpline.
Post by: polyxo on May 14, 2014, 09:27:56 am
Btw. @ samardac and anyone who uses Nurbs: Are you aware that you can create all sorts of sweeps and revolved shapes with the most perfect curve control in Nurbs and then bring these into Nvil as all quads through the clipboard feature? You will only get triangles when you start trimming the geometry.
Title: Re: BSpline.
Post by: crestburg on May 15, 2014, 01:00:48 pm
or may be make at least edge tool like in Silo. I really can not work with spline in NVil it is very hard... You have to draw it than you alwas have to twek it(becouse it is imposible practically to draw waht you need) and if you move point all twaeks reset... A lot of time have to spend to draw simple curve...
 Bspline is much more intuitive and easer. or at least edge tool like in silo....

Hi samardac,
Nurbs curves will not really bring you any more control than what you can get from Nvil Splines.

You can create splines like you can create edges(edge tools) in Silo (enable "Line List" option, or "Toggle type" to switch between smooth /sharp transition). You can also disable the auto updating of the tangents on spline tangent while editing.(Edit > Options > Spline Transform Options")

Would some examples of how to use the splines help?

Steve,
  I would be interested in some examples of using splines.  8)
Thanks,
crestburg
Title: Re: BSpline.
Post by: Darcvizer on May 15, 2014, 01:48:05 pm
just polygons,just hardcore 8)
Title: Re: BSpline.
Post by: samardac on May 17, 2014, 09:58:32 am
IStonia, if Bspline is hard to make, could you pleas make this edge-spline like in Silo.
Check this video I made it specially to show you, this kind of spline is great very intuitive and easer.

http://youtu.be/zAaVQMoay6Y

Also I think this system with edges in Silo is great! Especially when you can copy/past them from existing edges and then extrude it or cap.

Is it possible to implement these great features in Nvil?
Title: Re: BSpline.
Post by: steve on May 17, 2014, 11:24:09 am
IStonia, if Bspline is hard to make, could you pleas make this edge-spline like in Silo.
Nvil does not work with edges in that way. For such an implementation, a major change would need to be made to Nvil (it is a subject discussed before).

Quote
Also I think this system with edges in Silo is great! Especially when you can copy/past them from existing edges and then extrude it or cap.
You can create open/closed splines from edges, with those splines you can extrude, make polygons/surfaces, sweeps etc etc.



Title: Re: BSpline.
Post by: samardac on May 17, 2014, 11:53:29 am
steve, check this video I tried to explain my point of view:

http://youtu.be/QlCcXe-c8qE
Title: Re: BSpline.
Post by: steve on May 17, 2014, 12:26:32 pm
4 mouse clicks,

3 to create spline
(http://i.imgur.com/69MLuDI.jpg)

[hotkey] +1 to chamfer
(http://i.imgur.com/OwmnHfE.jpg)
Title: Re: BSpline.
Post by: samardac on May 17, 2014, 01:18:10 pm
Could you pleas make some tutor how to use this spline? I can not use chamfer dos not work.Also  Whot the figures are on ends of your spline?
Title: Re: BSpline.
Post by: steve on May 17, 2014, 01:43:50 pm
The icons on the end of the spline are showing the start/end (direction of spline). You can change the size of the vertex points in "edit > Preference > General"

(http://i.imgur.com/0lX4tlN.jpg)

"Spline chamfer" is a basic streamline tool.
(http://i.imgur.com/TliKWRr.jpg)
Title: Re: BSpline.
Post by: samardac on May 17, 2014, 02:04:13 pm
Thank you, could you pleas make some tutor or give me link on how to work with spline, becouse have no clear understanding how to work with it, I mean basic operation, how to make spline that I want. There is chamfer, I never know about it, looks like there are and other stuff that I do not know..
Title: Re: BSpline.
Post by: steve on May 18, 2014, 01:47:03 pm
...............how to make spline that I want.

There are various tools for editing splines, and various tools to create polygons from splines (spline slide, spline lathe, spline extrude, spline polygon, spline surface etc), but they will not give you the ability to create the splines as you are looking for.(such as the edge tools/sub_d in Silo)

Title: Re: BSpline.
Post by: steve on May 18, 2014, 02:20:39 pm
Hi IStonia,

With the current splines, it is a bit of a problem for users to create smooth splines, and certainly (IMHO) the Bezier type curves are not the best to work with. With splines(as with some other functions), I do make various workarounds to bypass some limitations and would like to propose a possible implementation based on one of my workarounds (I obviously have no idea if such a workaround would be possible to implement as a function or not).


To try to explain, I will give quick example of one of my workarounds.

There are times I will create a spline, but want it to be smooth without the hassle of keep selecting/changing tangents (and possible getting the problems with the spline looping back on itself).
So here a quick line_list spline:-
(http://i.imgur.com/LFPuOQU.jpg)

I create a spline extrusion (extrusion on both sides of the spline, so the mesh has a center-line running along the original spline).
(http://i.imgur.com/BsES94g.jpg)


I then add sub_d to that new extruded mesh
(http://i.imgur.com/7DIRWWf.jpg)

I select the vertex that make up the control positions, and move them if/as needed.
(http://i.imgur.com/yShSpZA.jpg)


Once in position I want, I select the center-line of the mesh and create a new spline
(http://i.imgur.com/IAmCfo1.jpg)

That gives me the type of result as seen in the edge tools in Silo.

As I put forward, not sure if that would be possible directly on the spline, with a possible function that calls a popup where you add number of divisions(sub_d), allows you to move control points, then apply the result as a new spline (with option to delete input spline)?

What do you think? Possible? Workable?

What do other user think?






Title: Re: BSpline.
Post by: samardac on May 19, 2014, 08:45:07 am
Steve, looks interesting, do not know how IStonica can implement it.
Now I use MOI 3D to make some spline works, becouse dealing with Bezier type curves is not for me, very time consuming and hard especially in 3D...
Title: Re: BSpline.
Post by: steve on May 20, 2014, 07:57:24 am
...................becouse dealing with Bezier type curves is not for me, very time consuming and hard especially in 3D...

Bezier curves are not the best, but they are not normally difficult to create.

When creating Bezier curves, the user would normally be able to edit while creating. The auto interpolated smoothing is normally a lot better and does not cause the spline to loop back on itself.

For example.(in other modeling package I have used, and in the 2d graphics that use them)
I would start a bezier curve, the default behavior would be that a single click would create a "Cusp" point, its "in tangent" pointing to last point on spline, and its "Out tangent" pointing to next point. A "click+drag" would create a "Symmetric" point, the drag would give direct edit to that points tangent direction/magnitude (the last/other points tangents would not be affected). While drawing, at any time you could go back to a point and edit its positions/tangency (all handles visible while creating). While still creating, you could go back and move points or change the tangent control type/magnitude. They are normally quick/easy to create.
With Nvil, we only have the click click of creating points, with either a line_list or the poorly implemented interpolation(naturalize) which causes various issues. With the need to then go back and edit after finishing the spline.

So yes, they are a pain in Nvil, but mainly due to how they are implemented.

Title: Re: BSpline.
Post by: rubberDuck on December 27, 2014, 07:05:50 pm
IStonia, please, at least consider adding B-Splines support. Bézier curves are great if you can tweak tangents immediately after placing a knot. This, as far as I know, cannot be done in NVil. Additionally, it's troublesome to tweak tangents in a 3D-space. Dealing with Bézier slows the work down to such degree, that I recently found myself creating shapes (that require curves) in Houdini and importing resulting surfaces to NVil. This is tedious. :(
Things would be so much easier with B-Splines, because you don't have to worry about those blasted tangents.
Title: Re: BSpline.
Post by: steve on December 27, 2014, 10:39:29 pm
Bézier curves are great if you can tweak tangents immediately after placing a knot. This, as far as I know, cannot be done in NVil.
IStonia did add MMB/RMB options to spline creation (http://voidworld.cmcproductions.co.uk/index.php/topic,2414.msg8278/topicseen.html#msg8278). MMB creates "In" tangent handle for next spline vertex to be created. RMB creates "Out" tangent handle for last spline vertex created.



 
Title: Re: BSpline.
Post by: rubberDuck on December 28, 2014, 12:25:47 am
Nice, I didn't know this trick.
However it doesn't change my attitude towards Bézier curves.

I was making a model yesterday, where I had to use curves to define its shape. It took me over 15 minutes to tweak those blasted Bézier curves' tangents. Somehow they got messed up each time I moved spline's vertices - despite disabled auto naturalisation. I got extremely frustrated and went to Houdini, and I only needed maybe 1-2 minutes to do the same with NURBS curves. It would probably take the same amount of time with Maya's CV curves.

Bézier curves might have been awesome 10 years ago, but in my personal opinion, NURBS curves are far simpler and more intuitive to work with in a 3D environment.
Hell, I'd gladly welcome them in Photoshop too.
Title: Re: BSpline.
Post by: steve on December 28, 2014, 12:47:15 am
Somehow they got messed up each time I moved spline's vertices - despite disabled auto naturalisation.
To move a spline vertex without any auto-naturalisation, you need to disable all 3 options in "Edit > Options > Spline Transform Options"


Quote
Bézier curves might have been awesome 10 years ago, but in my personal opinion, NURBS curves are far simpler and more intuitive to work with in a 3D environment.
I have always thought of "Bezier" curves as being for 2d only, for use in 2d drawing/paint programmes.
All the modeling I do for work is with CAD, so yes, I do prefer NURBS curves.
Title: Re: BSpline.
Post by: rubberDuck on December 28, 2014, 12:52:34 am
To move a spline vertex without any auto-naturalisation, you need to disable all 3 options in "Edit > Options > Spline Transform Options"
Thanks Steve, I'll give it a shot.
Title: Re: BSpline.
Post by: rubberDuck on December 30, 2014, 01:15:12 am
Gah! Unfortunately whenever I translate spline vertices, I also need to tweak their tangents... :(
NURBS curves would make work so much easier.