Search Unity

ARCHIMATIX PRO Node-based Parametric Modeling for Unity [Unity Awards Finalist]

Discussion in 'Assets and Asset Store' started by roryo, Jun 4, 2015.

  1. wetcircuit

    wetcircuit

    Joined:
    Jul 17, 2012
    Posts:
    1,409
    Whoops, looks like the original post disappeared, but I wanted to add:

    Try the free add-on Logic Nodes Basic. It has a 3D Merger node which combines 3D meshes in a simpler way than Grouper (no diving in and out of a group), at least if you are just merging a few 3D meshes. Sometimes Grouper is an extra layer of interface that just isn't helpful. Merger fills in that gap.
     
    punk likes this.
  2. roryo

    roryo

    Joined:
    May 21, 2009
    Posts:
    1,479
    In version 1.0.7 (due out later this week), the Channeler has an "All" channel, which combines all the inputs.

    Archimatix 2017-08-13_07-54-56_PM.jpg

    Also the Grouper node has its original functionality reinstated whereby mesh inputs are passed through to the output if they are not being used by Groupees inside the Grouper.

    It is definitely worth checking out the nodes for Archimatix that 630Studios is developing!
     
    Last edited: Aug 14, 2017
    wetcircuit likes this.
  3. awesomedata

    awesomedata

    Joined:
    Oct 8, 2014
    Posts:
    1,419
    For anyone who's interested, @roryo meant to say 630Studios, just in case you were wondering why the link was broken.
     
    wetcircuit likes this.
  4. StaffanEk

    StaffanEk

    Joined:
    Jul 13, 2012
    Posts:
    380
    Is anyone else encountering the issue that sometimes MaterialTool stops working? I am unable to change uScale or any other parameters even if I remove the tool or replace the node it is attached to.

    EDIT: This bug happens if a node is inside a grouper node. The fix is to detach the grouper output and reattach again.
     
  5. roryo

    roryo

    Joined:
    May 21, 2009
    Posts:
    1,479
    Thanks for that work around, @StaffanEk! Were you editing the parameters in the node palette or in the Inspector? If the latter, than the bug bug has been fixed in 1.0.7. If the former, there may still be an issue and I'll take a closer look.
     
  6. topofsteel

    topofsteel

    Joined:
    Dec 2, 2011
    Posts:
    999
    Bi-Directional makes a lot of sense in that light! I hadn't tried removing one of the expressions either, Nice! Thanks for your reply. In at least one of the nodes I saw a logic drop down or area (I couldn't find it quick while posting). How would that be used? Do you have any examples or documentation? Thanks.
     
  7. SpindizzyGames

    SpindizzyGames

    Joined:
    Jun 29, 2017
    Posts:
    108
    Will there be a sale anytime soon? Missed the big sale that went down around couple months ago. :)
     
  8. RuinsOfFeyrin

    RuinsOfFeyrin

    Joined:
    Feb 22, 2014
    Posts:
    785
    Hey Everyone,

    Just wanted to let you know that
    Shape Logic Nodes, Mesh Logic Nodes, and Pro Logic Nodes package have been updated and approved. They all now contain a .unitypackage with the ObjExporter.

    Pro Logic Nodes has also been updated to include the SVG Importer and the Extended Turtle script commands! Later tonight ill make a more in depth post about all the changes, and new turtle script commands, just wanted to throw this out there while i was on my lunch break.

    Oh did I also forget to mention that all the packages have had their prices temporarily reduced to $15 dollars as We are getting closer to the release of the Runtime Graph Editor!

    Hope you all enjoy, and dont forget, reviews are always appreciated!
     
    punk, Fab4, Xepherys and 2 others like this.
  9. Xepherys

    Xepherys

    Joined:
    Sep 9, 2012
    Posts:
    204
    roryo and RuinsOfFeyrin like this.
  10. StaffanEk

    StaffanEk

    Joined:
    Jul 13, 2012
    Posts:
    380
    It's both in the inspector and the tool. I am using a PlanSweep node inside a Grouper node.

    By the way. Is there a way to get the PlanRepeater2D to work as the 3d variant? Currently I can only get the 2D version to place shapes at corners instead of along the edges like in the 3D mode. I would really need that functionality, if there is a way to do it.

    Also could you give me some tips on how to make more generalized run-time functionality. Currently I several exposed fields per shape. This gets very unwieldy very fast. Could I write a Shape class that I refer to, instead of having a huge amount of unorganized exposed fields? Is it also possible to create new shapes at run-time?

    I have read through the documentation, but I just a need a little bit more.
     
    Last edited: Aug 16, 2017
  11. roryo

    roryo

    Joined:
    May 21, 2009
    Posts:
    1,479
    Thanks, @Xepherys!
     
  12. roryo

    roryo

    Joined:
    May 21, 2009
    Posts:
    1,479
    I do need to add a Node shape input to the PlanRepeater soon! It is a popular request.

    Per the runtime parameters, one strategy is to make parameters dependent on "master" parameters. In other words, make assumptions about behaviors that would allow the runtime user to have a simple interface. If you present the user with too many controls, the model may be overwhelming. In other words, is there anyway to limit your runtime parameters to say ten? What would that entail? It might mean that you make certain parameters dependent on others. The tradeoff is fine control versus ease of use. But this is the tradeoff that any designer must make.

    For example, on one extreme, you could provide the user 100 parameters to customize a Viking hut. On the other extreme, you could let them control only height, witdth and length, while the model makes 100 assumptions in its logic. In the end, the model you offer your players will have something in between.

    The key is to first design the player UI for controlling the model, and then arrange your logic and expose your parameters accordingly.

    In the SpaceshipShop runtime demo, I split parameters up with a tabbed UI, so that the player would not see too many at once. The downside of this is that a player may not explore all the hidden options. But this is the challenge of every UI that has ever been developed.

    Per new shapes at runtime, yes, this is possible, but I need to publish an API for this. The challenge is how to save this data in your runtime data structures.
     
    Last edited: Aug 16, 2017
  13. roryo

    roryo

    Joined:
    May 21, 2009
    Posts:
    1,479
    Hi @logixworx - Only the AssetStore curators know when a product will go on sale. Let us hope that in their infinite wisdom, they foresee an AX sale in the not to distant future!
     
    Xepherys likes this.
  14. StaffanEk

    StaffanEk

    Joined:
    Jul 13, 2012
    Posts:
    380
    My UI is dead simple and the user doesn't even know that she/he is manipulating dozens of parameters. The code manipulates these parameters on behalf of the user. The problem is that I can't create this code using the nodes (They are not interdependent. They are completely discrete from each other).

    It has to be c#. I remember some user mentioning something called "turtle script" . Can I use that? How? Also, I need to make an incredibly large amount of parameters because I don't know how to create new shapes at run-time so I have to pre-create these shapes. This is ridiculously time consuming as of now.

    Could someone point me in the right direction? The documentation as of now just doesn't cut it.

    EDIT: ideally the runtime control should be per node (e.g. 2d shape) Then these nodes can be put in to a list and be accessed individually without having a huge spaghetti ball of parameters.
     
    Last edited: Aug 16, 2017
    awesomedata likes this.
  15. RuinsOfFeyrin

    RuinsOfFeyrin

    Joined:
    Feb 22, 2014
    Posts:
    785
    @StaffanEk

    Hows it going? Figured i would get you going in the right direction.

    1) Archimatix has the ability to generate a "controller" script for any given model. This controller script is actual c# code that has been generated based on the parameters you have exposed. Using this feature it should be fairly easy to setup any sort of UI you want for interating with the AX model. Maybe i misunderstood the question, hopefully not, if so please clarify.

    2) You can indeed create new shapes at runtime. You are able to access the Shape Node through code, the shape node has a field called 'code' on it where the turtleScript is stored that generates the shape. By swapping the turtle script in the code field and telling the model to update, you have changed the shape of the node.

    So you can either write the turtle script ahead of time and load up the turtle script for the shape you need, or you could give people access to an in-game text editor and let them write the turtle script for the shape themselves.

    The final option would be to wait 2-4 weeks for unity to approve my Runtime Graph Editor which then gives you all the control of the Editor Graph at runtime.
     
    roryo and StaffanEk like this.
  16. StaffanEk

    StaffanEk

    Joined:
    Jul 13, 2012
    Posts:
    380
    @RuinsOfFeyrin

    That pretty close to what I want. If I understand you correctly I can generate a new shape at runtime and populate a new instance of a "controller script" in a list. Then if the user interacts with, say, shape 12; I can simple send commands like so: controllerScript[12].ShapeWidth = N.

    The controller script will function similarly to a C# Class that delegates exposed parameters to given shapes. That is exactly the functionality I want.

    This sounds good to me. So if I follow the turtle script tutorial, the same functionality will work at runtime. Thank you very much.

    EDIT: upon re-reading RuinsOfFeyrin post it is clear that he though I was unaware that you can make controller scripts. @RuinsOfFeyrin , I was aware that you an make controller scripts I wouldn't complain about how unwieldy they are if I didn't. Th problem is that currently they are per model. This is messy, very messy. A generalized controller class per shape would actually make sense. That way you wouldn't have to call parameters by name each time you wanted to control a shape. Just copy a controller class and shape. Imagine creating 10 new shapes at runtime and trying to control them. This would be insane if you can only interface with a mess of isolated parameters for the whole AX model.
     
    Last edited: Aug 16, 2017
    awesomedata and roryo like this.
  17. wetcircuit

    wetcircuit

    Joined:
    Jul 17, 2012
    Posts:
    1,409
    This forum page doesn't have enough pictures on it….

    Unity---Main-Camera-2017-08-15-at-00.14.jpg
     
    pixelsteam, punk, kerrmedia and 5 others like this.
  18. wetcircuit

    wetcircuit

    Joined:
    Jul 17, 2012
    Posts:
    1,409
    :eek: um… any ONE of these announcements would be great.
    1. OBJ exporter
    2. SVG Importer
    3. Sale!
    All 3 announcements casually thrown in a single lunch break post has me reaching for the diabetes meds.
    :D SWEET!!!
     
    RuinsOfFeyrin, chiapet1021 and roryo like this.
  19. RuinsOfFeyrin

    RuinsOfFeyrin

    Joined:
    Feb 22, 2014
    Posts:
    785
    Hey @StaffanEk ,
    Sorry about that didnt realize you were aware of the controller scripts.

    What happens when you have multiples of the same shape in the model? How would you target which instance of the shape you wanted to alter? Would you use the name of the node? If that is the case then you can use the basic functionality in the AXModel itself to get the node you want and alter the named property that way.

    The controller script is just a wrapper for this built in functionality of the AXModel itself that makes it cleaner when you are trying to interface with a specific model. You could easily write a wrapper class to interact with a specific shape using this same functionality.

    I think however you have touched on an issue that has been brought up before. The ability to organize parameters on nodes (and exposed parameters) in to custom groups would make this all a lot "cleaner", and has been requested. A complicated enough model can end up with a shi-ton of exposed parameters, which does indeed become a little unwieldy.
     
    awesomedata likes this.
  20. RuinsOfFeyrin

    RuinsOfFeyrin

    Joined:
    Feb 22, 2014
    Posts:
    785
    Hey Everyone,

    So I wanted to go over briefly the new TurtleScript commands that my Pro Logic Node package adds.

    SVG Commands
    The Pro Logic Nodes package adds several drawing commands specifically related to mimicing the commands used by svg drawings. For more information on what each of these commands does you can look at their svg counterparts located at SVG Path Commands.

    svgL, svgl, svgH, svgh, svgV, svgv, cBezier, CBezier, qBezier, QBezier, tBezier, TBezier, sBezier, SBezier​

    General commands
    The Pro Logic Nodes package also adds several turtle commands that have nothing to do with drawing, and are all about giving you the ability to manipulate your graph.​

    nset - nset stands for "node set" and can be used to set an int, bool, float, or string parameter on any node in the graph.

    Syntax: nset <node name> <parameter name> <value>
    nget - nget stands for "node get" and can be used to retrieve the value of an int, bool, float or string parameter from any node in the graph and store it in a temporary local variable for use later in your TurtleScript.

    Syntax: nget <node name> <parameter name> <local storage variable name>​
     
    StaffanEk and wetcircuit like this.
  21. StaffanEk

    StaffanEk

    Joined:
    Jul 13, 2012
    Posts:
    380
    Erhm....by using a reference type. Why does it matter? I can make a dictionary, a list, an enum, the sky is the limit.

    This sound like exactly what I need. Consider me sold and convinced. By node does that include basic shapes too? So I can create a new shape then keep a reference to it, so that I can change parameters without creating them beforehand?
     
    Last edited: Aug 17, 2017
  22. StaffanEk

    StaffanEk

    Joined:
    Jul 13, 2012
    Posts:
    380
    How can I access the renderer of the mesh or the mesh filter for that matter? I want some meshes not to cast shadows, and I need some data from the mesh.

    I need this to happen while the mesh is in an editable state.
     
  23. RuinsOfFeyrin

    RuinsOfFeyrin

    Joined:
    Feb 22, 2014
    Posts:
    785
    Hey @StaffanEk ,

    Yes, nset and nget work on shape nodes and their parameters as well.

    Im not 100% sure I follow the question, so I would hate to give you the wrong answer on if they can do exactly what you are trying to do.

    So here are a few bits of info on the commands that might help to clarify it for you one way or another.

    • nset and nget are TurtleScript commands, so they must be used inside a nodes "code" field (such as the Command Node).
    • nset and nget can target any node in the same graph as the node they are used in.
    • nset and nget targets nodes and parameters based on "names". This means you can "swap" target nodes as long as they have the same name and parameter name you are trying to target.
    • nget stores the value to a temporary local variable which only exists for duration of the execution of the turtle script. You could use the standard set command after nget to store the value to a permanent local node parameter though.
    I think the second to last point there may be in opposition of what you are looking for. You still need to know the name of the property you want to access ahead of time. So while you could dynamically create new shapes at run-time, unless the nget and nset commands new the names of the properties they wanted to access on those nodes it wouldnt be much help. However if the shapes all shared common property names (like Height, Width, Depth, Inset, etc etc) then the nset and nget command would work.

    Hope that clarifies things for you some. If you want stop by the Archimatix slack channel and track me down and I can answer any questions you might have a little quicker then the forums.
     
  24. Elfinnik159

    Elfinnik159

    Joined:
    Feb 24, 2013
    Posts:
    145
    Hi!
    I have a problem.
    The ARCHIMATIX package conflicts with some other packages.
    The problem in the library is `ICSharpCode.SharpZipLib '
    Conflict with the Morph 3d package since it has a library with the same name.


    Error:
    error CS1703: An assembly `ICSharpCode.SharpZipLib' with the same identity has already been imported. Consider removing one of the references
    Assets/MORPH3D/Scripts/Plugins/ICSharpCode.SharpZipLib.dll (Location of the symbol related to previous error)
    Assets/Archimatix/Scripts/Core/plugins/ICSharpCode.SharpZipLib.dll (Location of the symbol related to previous error)

    Compilation failed: 1 error(s), 0 warnings
     
  25. RuinsOfFeyrin

    RuinsOfFeyrin

    Joined:
    Feb 22, 2014
    Posts:
    785
    Hey @Elfinnik159 ,

    In case you were still having issues. The easy solution is to simply delete one of the copies of the files. Either from the Mordph3D package, or archimatix. Both packages should still work fine as long as there is one copy hanging around. This should do the trick till rory figured out an official work around.
     
    roryo likes this.
  26. Xepherys

    Xepherys

    Joined:
    Sep 9, 2012
    Posts:
    204
    FWIW - I don't know that there is (or should be) a workaround. When dealing with multiple third party packages, you're likely to run into this sort of thing when multiple packages rely on the same fourth(?) party components. The only real "fix" would be for ALL asset package developers to use a standardized "ThirdParty" folder for secondary requirements not authored by them.

    In other words, like Ruins said, delete one copy of it. If you update the package where it was removed, you'll have to delete it again (or untick it's folder during installation). Chances are, you'll want to remove the oldest version.
     
    roryo likes this.
  27. roryo

    roryo

    Joined:
    May 21, 2009
    Posts:
    1,479
    Do you need to be able to set all of these MeshRenderer values?

    Archimatix 2017-08-17_04-37-40_PM.jpg
     
  28. StaffanEk

    StaffanEk

    Joined:
    Jul 13, 2012
    Posts:
    380
    Setting all of them would be useful. As far as I understood, currently none of the settings are changeable. This is diametrically opposed to the preferred behavior.

    EDIT: I'm mostly interested in the mesh filter. Do you use a mesh filter behind the scenes. Is there a way I can refer to the mesh while the model is in an editable state?
     
    Last edited: Aug 18, 2017
  29. StaffanEk

    StaffanEk

    Joined:
    Jul 13, 2012
    Posts:
    380
    I tried searching for the search term "Channeler" on your documentation site but came up short. I hate bugging devs like this, but I have no choice.

    How exactly does your touted ABABABAB feature work exactly?
     
  30. roryo

    roryo

    Joined:
    May 21, 2009
    Posts:
    1,479
    Output parameters have a list of Unity Meshes. When the generatedGameObjects hierarchy is created these meshes are added to MeshFilters which are attached to the GameObjects. When dragging a slider, GameObjects are not created, only the meshes, which are rendered with Graphics.DrawMesh. When AXModel.autobuild() is called, the generatedGameObjects hierarchy is created. The MeshFilters are created in AXParametricObject.makeGameObjectsFromAXMeshes()

    I am setting up an a system that allows you to add any components you like to a node so that every time a node creates a GameObject, the components and its values are copied to the new GameObject. This will include MeshRenderer.
     
    awesomedata likes this.
  31. roryo

    roryo

    Joined:
    May 21, 2009
    Posts:
    1,479
    The rule set feature is not in place yet. The Channeler currently provides a list of nodes to a downstream node and has a value for which node is "selected." This is how the engine option pulldown works in the SpaceshipShop demo. Downstream nodes such as Repeaters can use the list of nodes from a Channeler in any way they like. Rule set strings will let the Repeater follow a pattern for which list item to use in its repetition sequence.
     
  32. awesomedata

    awesomedata

    Joined:
    Oct 8, 2014
    Posts:
    1,419

    I agree this is indeed time-consuming with TurtleScript alone.



    As far as I'm tracking, @roryo has plans to release a tweak to the FreeCurve tool super-soon to add parametrics to the workflow. For those of us who need faster 2D shape-generation (especially for 2D runtime parametric -relationships, -lathes, and -plansweeps), this is great news.


    I only hope we'll be able to save our shapes to the library that we generate with the FreeCurve tool also.
     
  33. wetcircuit

    wetcircuit

    Joined:
    Jul 17, 2012
    Posts:
    1,409
    Still not enough pictures on this page….

    Screen Shot 2017-08-20 at 12.33.04 AM.png
     
  34. roryo

    roryo

    Joined:
    May 21, 2009
    Posts:
    1,479
    NoiseDeformer will be in 1.0.8, due out next week!
    Archimatix 2017-08-21_10-14-15_AM.jpg

    Archimatix 2017-08-21_10-44-06_AM.jpg
     
    protopop, elbows, red2blue and 4 others like this.
  35. roryo

    roryo

    Joined:
    May 21, 2009
    Posts:
    1,479
    With the help of a new Deformer, Robot Kyle is teaching the Bookcase Library item to twist again, like they did last summer....

    Archimatix 2017-08-22_09-26-59_AM.jpg

    With the addition of a NoiseDeformer, the Bookcase is "All Shook Up"!

    Archimatix 2017-08-22_10-22-34_AM.jpg


    The TwistDeformer will also be in version 1.0.8 due next week!
    Archimatix 2017-08-22_09-15-51_AM.jpg
     
    Last edited: Aug 22, 2017
    punk, elbows, tapawafo and 1 other person like this.
  36. wetcircuit

    wetcircuit

    Joined:
    Jul 17, 2012
    Posts:
    1,409
    RuinsOfFeyrin helped me get through the SVG to Turtle process…. Archimatix now does TEXT! Wooooooooo!
    (with Logic Nodes Pro add-on)

    Screen Shot 2017-08-22 at 11.57.17 AM.png

    Noise Deformer and PathSweep working too… :D

    Screen Shot 2017-08-22 at 1.37.34 PM.png
     
    Last edited: Aug 22, 2017
    punk and roryo like this.
  37. roryo

    roryo

    Joined:
    May 21, 2009
    Posts:
    1,479
    Fantastic!
     
  38. roryo

    roryo

    Joined:
    May 21, 2009
    Posts:
    1,479
    The new TwistDeformer now twists and bends:

    Twister2.gif
     
    DasBiot, protopop, radimoto and 3 others like this.
  39. awesomedata

    awesomedata

    Joined:
    Oct 8, 2014
    Posts:
    1,419
    @roryo

    Can we apply the vertex noise to only one side of the shape, perhaps with a mask texture to give it some controlled height?

    For example, I want the end cap of a broken column to bias to one side as if it sheared off and some cracked parts crumbled with it. The verts would only move up and down though. Is this possible?
     
  40. roryo

    roryo

    Joined:
    May 21, 2009
    Posts:
    1,479

    Yes, thanks to a request from @wetcircuit yesterday and a suggestion from @RuinsOfFeyrin, the NoiseDeformer has an AnimationCurve that modifies the falloff of the deformation.

    Archimatix 2017-08-22_03-07-04_PM.jpg
     
  41. roryo

    roryo

    Joined:
    May 21, 2009
    Posts:
    1,479
    Wow - is the second image with NoiseDeformer? Looks great.
    Next - TwistDeformer with Twist_X? Also, what if the word was subtracted out of a Rectangle, Extruded and then Deformed.... Oh, my!
     
    wetcircuit likes this.
  42. roryo

    roryo

    Joined:
    May 21, 2009
    Posts:
    1,479
    In addition to generated meshes, Archimatix, can deform any Prefabs as well, with the help of the Prefab node.

    PrefabTwist2.gif
     
    DasBiot, punk, radimoto and 5 others like this.
  43. awesomedata

    awesomedata

    Joined:
    Oct 8, 2014
    Posts:
    1,419
    Looks really great @roryo , but is the "shear/skew deformer" going to be in 1.0.8 too? -- been waiting to be able to make slopes for a long time now.
     
  44. roryo

    roryo

    Joined:
    May 21, 2009
    Posts:
    1,479
    I think we can squeeze that in just for the shear joy of it!
     
    awesomedata likes this.
  45. roryo

    roryo

    Joined:
    May 21, 2009
    Posts:
    1,479
    Deformed...

    Archimatix 2017-08-22_07-05-01_PM.jpg

    ...verging on deranged!

    Archimatix 2017-08-22_07-32-45_PM copy.jpg
     
    Last edited: Aug 23, 2017
    DasBiot, punk, kerrmedia and 3 others like this.
  46. awesomedata

    awesomedata

    Joined:
    Oct 8, 2014
    Posts:
    1,419
    Nice work @roryo! Thanks, that's really great to hear!! :D

    Was wondering about those most recent shots -- is there a way to keep the base of the building on the ground while doing something like that set of deformations with the apartment style buildings?

    Something like another animation curve mask, but instead, vertical this time? Seems like it'd be much more useful for cartoon architecture that way.
     
  47. wetcircuit

    wetcircuit

    Joined:
    Jul 17, 2012
    Posts:
    1,409
    Same temple 8000yrs later….

    Screen Shot 2017-08-23 at 2.06.15 AM.png
     
    DasBiot, punk, protopop and 2 others like this.
  48. RuinsOfFeyrin

    RuinsOfFeyrin

    Joined:
    Feb 22, 2014
    Posts:
    785
    And thanks to @wetcircuit I got a whole lot of use-ability feedback which has resulted in several improvements which will be getting pushed to the asset store this afternoon.
    • The right documentation (which includes the SVG stuff) is now in the package since i apparently forgot to update it. Its slightly dated now due to a couple recent UI changes, but its accurate enough to still get the job done.
    • When you add an SVGNode to a scene, if the node has no code a "Import SVG" button appears in the node. Clicking this button brings up the SVGImporter window. This was previously (and still) accessed through the "Window->AX Tools->SVGToTurtle->Import SVG" menu item. Though with the documentation missing this might of been a bit hard to find.
    • The Segment field previously defaulted to 16, this number has been reduced to 4 as it still appears to generate smooth curves on most imported paths.
    • Relocated the Scale & Segment fields to be in the Export section of the window. Altering these values now automatically updates the code generated from the SVGPath.
    • You can now add multiple paths to a single output. To add a path to the output hold the shift button when clicking on it.

    I also need to set it up so you can "center" a path on 0,0 and allow you to flip and rotate paths because depending on the software used to generate the SVG files sometimes they are upside down or backwards.

    Hope you are all enjoying the node packs, as always feedback is greatly appreciated, and so are reviews!

    Also I have included the SVGToTurtle documentation below so that anyone who purchased the package can have access to it ASAP without having to wait for unity to approve the new package.
     

    Attached Files:

    Last edited: Aug 23, 2017
    wetcircuit and roryo like this.
  49. roryo

    roryo

    Joined:
    May 21, 2009
    Posts:
    1,479
    PlanRepeater2D in 1.0.8 finally has Node and Cell Shapes working. ;)

    Archimatix 2017-08-23_12-45-11_PM.jpg
     
  50. wetcircuit

    wetcircuit

    Joined:
    Jul 17, 2012
    Posts:
    1,409
    :eek:

    (checks included 3D Library. :oops: …checks again just to be sure…)
     
    roryo likes this.