2

I want to create a shape like a pipe, like below image and blend file.

I created the mesh below in Houdini, but I could deal with it only in simple case, and I couldn't improve it any more in Houdini. So I am trying blender.

.blend file: http://pasteall.org/blend/index.php?id=51832

enter image description here

What "non-uniform cross-section" means both 1. and 2.

  1. scaling independently on each axis of cross section
  2. changing the cross section shape.

I tested the below but I have trouble in all of them.

Could you tell me effective way to create a pipe which has non-uniform cross-section ?

I don't think my question is duplicate of Curve Bevel function, scale? because my question emphasises the non-uniform cross section and mentioned that Curve Bevel function doesn't allow us to use non-uniform cross section.

onion mk2
  • 123
  • 4
  • It isn't clear what you are trying to do. You have a pipe with a non-uniform cross section in that file. I assume it isn't the kind of non-uniform that you want. Are you trying to blend from a square cross section to a circle, or something like that? – edna May 28 '19 at 01:55
  • sorry for confusing.

    I created this shape by procedural modeling in Houdini. But in Houdini, I have difficulty in creating more complex non-uniform cross-section. For example, rotating cross section, or snapping the cap to another shape, and blend cross sections as you say.

    So I want to create it in direct modeling, if possible.

    – onion mk2 May 28 '19 at 02:47
  • so yes, it is one kind of non-uniform that I want.

    The reason why I want to know how to create this in blender is I think that blender may allow me to create more shape which I couldn't create in houdini

    – onion mk2 May 28 '19 at 03:19
  • Can you sketch roughly what kind of object it is that you want to make in the end? –  May 28 '19 at 16:48
  • Thanks for reopening. I am bad at sketch, so I paste the image of the shape what I want create. https://imgur.com/a/zSQpHMD This is polygon hair. I think this shape made up from some of pipes, which each has non uniform cross section. – onion mk2 May 28 '19 at 22:07

1 Answers1

4

You can certainly extrude a cross section along a curve and rotate that cross section, change its size and change the end cap.

Try using a curve modifier with an array modifier and change the start/end caps:

enter image description here

You can also experiment with bevel curves and tapers:

enter image description here

In the old days we used to be able to transition between cross sections by using dupliframes to create multiple copies of a mesh along a curve at frame intervals (e.g. one every 10 frames) and then loft them together. Something like this: old Blenderartists thread but I'm not sure how you do that now. Maybe using the animation nodes add on. It's a starting point at least.

Hopefully somebody will have a better answer for you, but in the meantime this gives you something to work with.

edna
  • 816
  • 6
  • 13
  • I'm interested in lofting, too .. couldn't see the DupliFrames method in the your BA link? @batFINGER gave a nice answer here. What would be really nice would be a revival / rewrite of the bSurfaces add-on, which, among other things, enabled lofting between curves / gpencil of arbitrary resolution. – Robin Betts May 28 '19 at 07:12
  • You can use dupliframes along these lines using 2.79: https://www.youtube.com/watch?v=ZGfFiakg6Z8 (basically add path curve, add cross section object, ctrl-p to make object follow path, panel:Object/Duplication/Frames untick Speed, ctrl-shift-a to make duplicates real). The trick is how to join the resulting cross sections manually, i.e. lofting, which is where I can't help you. – edna May 29 '19 at 03:50