Home Technical Talk

Sci-Fi cables rapid workflow

Cables and zipties are one (polygon-intensive) way of adding visual interest to an environment. Either draping from the ceiling or stapled to the walls, or coiled on the floor.

The trouble is it takes a long time to build them, even when just placing splines and sweeping them out into cables. The trickiest part is getting them to lie believably on the ground and drape over other geometry.

Is there some kind of solution available to actually physically simulate draping cabling? Ideally I'd like some kind of system where I define a segmented spline as a cable with a certain radius, tension and curvature limit, anchor it at one or more points, and then literally drop it into my 3d scene. Once in place, I could then lock down the cable geometry.

Could I use something like reactor for this? Or is there a better solution.

Replies

  • Slum
    Offline / Send Message
    Slum polycounter lvl 18
    Reactor has a solution for this built in, called Rope. It consists basically of creating a rope collection, adding your connecting entities and setting up the simulation data. I think there is some info in the help file about it.
  • Mark Dygert
    I like to use the Advanced Painter script for 3dsmax, it's toothpaste and spaghetti mode allow you to make wires really quickly because you to paint your wires where you like on any given piece of geometry. They are kind of poly intensive but can be optimized fairly quickly because it uses splines. I normally bake them down to a planar texture. The script also allows you to paint scatter objects, like rocks, rubble, plants whatever mesh you assign you can paint scatter onto any other mesh.


    Edit: Here it is found it =)
    http://www.scriptspot.com/3ds-max/advanced-painter

    Edit, Edit:
    Reactor can be tricky to work with the first few times but once you get the hang of it and adjust your scale properly it does a lot of things you can use in real time games. If when you simulate, Reactor goes batty, check your scale and the 3dsmax help file to make sure you aren't working really small or big.

    Aside from painting the wires or using reactor you do have another option which might actually be the quickest and most flexible, and thats to use cloth.
    - Apply the cloth modifier to any object you want to hang, normally a straight cylinder.
    - Click group, select the verts you want to stay in place or be "preserved".
    - Adjust the soft selection if you don't want sharp hang points, sometimes you do, click Make Group. You can create several groups with different smooth selection settings.
    - Click each group and click preserve, this will preserve any animation going on under the cloth modifier in your history stack, since there is nothing they will stay where they are.
    - Deselect group and click back on cloth, click object properties, set your object to cloth you can adjust the settings to make the wires as stiff or as stretchy as you would like. Default is normally fine. You can also assign other objects to be collision objects but normally that isn't necessary.
    - Click simulate and watch your wires hang =)

    If you need to animate the wires with wind you can place a Wind Space warp pointed at the wires, and back inside the cloth modifier under cloth forces pick the wind generator. Erase the sim and simulate again, and your done.
  • Smithy
    Thanks for the help, I'll be sure to investigate each method!
  • Ghostscape
    Offline / Send Message
    Ghostscape polycounter lvl 13
    I've never gotten the toothpaste and spaghetti modes to give me good looking splines that aren't riddled with weird curves and smushes and jagged points. Vig, do you have some good settings you use for ropes and cables?

    For quickly getting a spline that loops around an object, you can select an edgeloop in the object in editable poly mode (3ds max obviously) and convert to shape - this will give you a spline that matches that edgeloop, which can be pretty useful for laying down a line of floaters in a high poly or for creating zip-tie type stuff with good UVs.
  • Mark Dygert
    Because Spaghetti create splines with a lot of verts it requires the most optimization, but its still faster then aligning a spline line by hand over a complex shape. To optimize it I set the weld threshold kind of high 10-20 and it gets rid of a lot of the jag and weirdness but not all of the vert/spline weirdness goes away. So I select all the verts and chamfer them, then weld at the same setting one last time and the spline at that point is pretty much good to go.

    For toothpaste because it allows you to set min distance between cross sections it creates a much more optimized shape, but it isn't a spline "line" in the traditional sense, its a bunch of spline circles that are cross sectioned together to make a tube.

    If you want either of these painter objects to be a new clean spline line, you can use the method you described and select a loop that runs the length of the object and convert that edge to a edit spline shape. Which is probably the fastest way to get UV mapping cords and a regular spline, then delete the adv painter object.

    I haven't sat down and gone over the .ms files but I think some of this optimization can be automated and included in the script. If I ever get the time and I get it working I'll be sure to post the re-worked script on polycount.

    Edit: Also using cloth to simulate gravity after you've painted and optimized the splines gives good results also =)
  • Ghostscape
    Offline / Send Message
    Ghostscape polycounter lvl 13
    [ QUOTE ]

    If you want either of these painter objects to be a new clean spline line, you can use the method you described and select a loop that runs the length of the object and convert that edge to a edit spline shape. Which is probably the fastest way to get UV mapping cords and a regular spline, then delete the adv painter object.

    [/ QUOTE ]

    This is one of those things that seems obvious in hindsight but the notion of combining the two practices into one is something that's totally escaped me laugh.gif
Sign In or Register to comment.