Search Unity

  1. Megacity Metro Demo now available. Download now.
    Dismiss Notice
  2. Unity support for visionOS is now available. Learn more in our blog post.
    Dismiss Notice

SceneMate Object Manipulation [RELEASED]

Discussion in 'Assets and Asset Store' started by Tim-Wiese, Dec 7, 2012.

  1. Tim-Wiese

    Tim-Wiese

    Joined:
    Jul 7, 2012
    Posts:
    77
    Hello everyone, I am very happy to announce that SceneMate a tool I have been working away at, is available for purchase!

    Asset Store Link: SceneMate

    Website Link: SceneMate

    Dramatically increase workflow speed with SceneMate. SceneMate is a collection of workflow enhancing tools all in one easy to use package.






    Some of the many tools SceneMate contains:



    • Snap Tools
      A wide range of object snapping options.
    • ​Robust Match Tools
      Quickly match the Position, Rotation or Scale of any number of objects to another.
    • Object Painter Tool
      Paint down objects in your scene with ease, including an array of customization options.
    • ​Enhanced Debug Tool
      Prints out a number of statistics on the currently selected objects.
    • ​Randomization Tools
      An extensive number of options to randomly Position, Rotate or Scale any number of objects.
    • ​Object Replacement Tool
      Quickly replace any number of objects within a scene.
    • Hot Keys
      Everything in SceneMate can be assigned to a hot key for easy access and a speedy workflow.
    • Color Swatch Tool
      Never lose a color again, hold on to all the colors you are working with by storing them in the Color Swatches!
    • Rotation Tools
      Extends upon Unity 3D's ability to rotate objects, making it quicker than ever.
    • ​Offsetting Tools
      Offset any number of objects using a wide array of methods.
    • ​Flip Tools
      Quickly Flip any number of objects on any axis.
    • ​Object Resetting
      Quickly reset any number of objects to their default Position, Rotation or Scale.
    • ​Distribute
      Distribute objects evenly over a set distance, with a number of options for precise control
    • ​Alignment
      Align objects by bounds to the Highest or Lowest point of the selected objects.

    SceneMate will continue to evolve, I will be constantly updating the tool based on feedback I receive.

    If you have any questions, comments, concerns, bug reports, feedback or anything please don't hesitate to ask it in this thread. I will do my best address all of it!

    Works with Unity Free and Pro
    Versions 3.5 - 4
     
    Last edited: Dec 17, 2012
  2. I am da bawss

    I am da bawss

    Joined:
    Jun 2, 2011
    Posts:
    2,574
    Very very nice! SOLD! <Puts it on to buy list>
    Just one question - does this work with Unity 3.5?
     
  3. Tim-Wiese

    Tim-Wiese

    Joined:
    Jul 7, 2012
    Posts:
    77
    Thanks "I am da bawss"!
    Yes it works with 3.5 - 4, I released it with version 3.5.6f4 but it should work with 3.5 versions previous to that as well.
     
    Last edited: Dec 8, 2012
  4. sefou

    sefou

    Joined:
    Aug 30, 2011
    Posts:
    287
    Just buy it. 5 Stars. :)
     
  5. Tim-Wiese

    Tim-Wiese

    Joined:
    Jul 7, 2012
    Posts:
    77
    Thanks sefou! Glad you like it!
    A new update is pending asset store approval;
    1.0.1
    - Updated it to work with all versions of 3.5 starting with 3.5.0. So it will work with everything 3.5 - 4.
    - Slight change to the Asset store Icon.
     
    Last edited: Dec 8, 2012
  6. I am da bawss

    I am da bawss

    Joined:
    Jun 2, 2011
    Posts:
    2,574
  7. Tim-Wiese

    Tim-Wiese

    Joined:
    Jul 7, 2012
    Posts:
    77
    Thanks "I am da bawss"! Let me know how you like it!

    Update:
    1.0.1 was accepted by the asset store.

    I am currently working on a showcase video to really show off the features of SceneMate in an entertaining and meaningful way. I realize that documentation alone may not be enough for some and showing real world application is even better. Look forward to that!
    Down the road after the showcase video I will be releasing a tutorial video that will walk users step by step through each tool.

    More long term, I am currently looking at many features of UDK and CryEngine that make life easier in those and planning ways to implement them.

    There is a lot to come!

    Tim
     
  8. Wells

    Wells

    Joined:
    Dec 10, 2012
    Posts:
    2
    Hey Tim,

    Great tool. BUT
    I'd love to be able to add multiple selected objects into the Object Painter, instead of having to load them one at a time.

    Really a small thing, but it'd be nice :)
     
  9. Tim-Wiese

    Tim-Wiese

    Joined:
    Jul 7, 2012
    Posts:
    77
    Great suggestion Wells!

    I have added the ability to add multiple selected objects into the Object Painter, it will be in the next version.

    Thanks! and glad you like it!
     
    Last edited: Dec 11, 2012
  10. sjm-tech

    sjm-tech

    Joined:
    Sep 23, 2010
    Posts:
    733
    Hi Tim,
    just bought and already love it! Great tool!
    Max
     
  11. shaderx

    shaderx

    Joined:
    May 9, 2010
    Posts:
    65
    i've been having problems placing meshes using the terrain painting tools if the mesh had any collider other than the capsule collider , that is no longer a problem with this tool, i can place objects with all kind of coliders , random scale random rotate on any axis i choose, plus it has very nice snapping features , like dropping to floor , or snapping to walls , stacking objects on top of eachothers (like crates) is extremely easy with the alignment tools, this tool makes populating your levels very fast easy ,highly recommend it.
     
  12. Tim-Wiese

    Tim-Wiese

    Joined:
    Jul 7, 2012
    Posts:
    77
    Thanks Max!
    Thanks shaderx!

    SceneMate has been featured on www.theunitytoolbox.com

    If you haven't already you should check this site out! They are running it as a free way for Asset Store sellers to get even more exposure.
     
  13. sjm-tech

    sjm-tech

    Joined:
    Sep 23, 2010
    Posts:
    733
    could be very helpful add:
    - an offset option value in the snapping tool. (for ex. to plant some trees with the trunk below the ground of a numeric value)
    - an option to set the snapping tool reference object boundary(instead the pivot) to do easily drop objects with pivot at the center.
    Max
     
  14. Tim-Wiese

    Tim-Wiese

    Joined:
    Jul 7, 2012
    Posts:
    77
    I feel this could also be done by snapping then using the "Offset Selected" button in SceneMate. I suppose if you had hotkey of "Offset Selected" you could snap then quickly offset to where you need it. I like your idea of streamlining it into one but I also have to consider the space it would use up on the toolbar.

    I like this idea, I will see what I can do.

    Thanks!
    Tim
     
  15. sjm-tech

    sjm-tech

    Joined:
    Sep 23, 2010
    Posts:
    733
    A simple solution could be to add a flag or button as "use offset value" to apply automatically the offset value set in your offset toolbar.
    Another solution could be to find a way to fit a little input numeric field (as for threshold) in the snap toolbar zone.
     

    Attached Files:

  16. runonthespot

    runonthespot

    Joined:
    Sep 29, 2010
    Posts:
    305
    Can this tool do "distribute" as well as "align" ?

    Something I absolutely loved in flash inkscape is the ability to space objects evenly, so select 4 objects and the say, align by one axis, then distribute across another to get them all even distances apart.

    Typically distribute has two options: one for just placing at even distances between the two points, and secondly one that takes into account the size of the objects, and makes sure the spaces between the objects are the same size (subtley different).

    If it had that functionality, it would be an instabuy for me.
     
  17. runonthespot

    runonthespot

    Joined:
    Sep 29, 2010
    Posts:
    305
    the "two points" above would usually just be the two objects furthest apart out of those selected. Inkscape pushes it up a notch by allowing you to specify distributions and alignments relative to "first selected object, last selected object, page" etc but that's probably overkill ;)

    Also, I heartily second alignment based on object bounds over pivots.
     
  18. Tim-Wiese

    Tim-Wiese

    Joined:
    Jul 7, 2012
    Posts:
    77
    I like this because it would then keep the "Offset Selected" and the "Snap Offset" separate. So then if the offset is only using a numeric field it would just be offsetting positive or negative in the same axis as the snap you are using.

    Thanks for the mock up, made it easy to understand exactly what you were getting at.

    I will definitely put this on my "To Do" list. This is something I had thought about adding early on, I guess it just slipped my mind but it would be a great feature. And personally I've had a bunch of times were this would have come in handy
     
  19. Tim-Wiese

    Tim-Wiese

    Joined:
    Jul 7, 2012
    Posts:
    77
    This is possible with this button.

    From the documentation:
    Make the position of the currently selected objects the same as the position of the object that is picked.
    "X,Y,Z" toggle on or off matching of those specific axis.

    So for example: if you wanted to align a group of objects in a row along the X Axis, you would only toggle on the X Axis, then press "Match Position Target", then click on the object you wish to align the group with.


    A new update is pending asset store approval;
    1.0.2
    - Added the ability to add multiple selected objects into the Object Painter
    - Added Readme file

    I am currently working on the next version, it will feature:
    - Object bounds snapping
    - Snap offset
    - Object distribution
     
    Last edited: Dec 12, 2012
  20. Wells

    Wells

    Joined:
    Dec 10, 2012
    Posts:
    2
    Awesome. Thanks for the speedy update.

    Now that I've spent a good amount of time with it, one thing I would love is for it to save my toggles, etc. For instance, I always turn on the Snap Rotation 90, but when I reload unity it is toggled to the default off. Maybe just a 'save as default' setting that grabs all that info?

    Thanks
     
  21. Tim-Wiese

    Tim-Wiese

    Joined:
    Jul 7, 2012
    Posts:
    77
    This shouldn't be too hard to add, I can make the toggles save when unity is closed or when SceneMate is closed.

    Tim
     
  22. Tim-Wiese

    Tim-Wiese

    Joined:
    Jul 7, 2012
    Posts:
    77
    A new update is pending asset store approval;
    1.1.0
    - Added Object Distribution by Size(using Object Bounds) and Pivot
    - Added Object Snapping by Bounds
    - Added Snap Offset
    - Added Align High and Align Low Using Object Bounds
    - Added Double Click Match button for Average Match
    - Fixed Align to Normal works with all Snaps
    - Fixed Undo on Rotation Operations

    The pictures and description on the first page of this thread have been updated to reflect the changes.

    I am in the process of updating the documentation on the SceneMate website to reflect these additions/changes.

    -Tim
     
  23. sjm-tech

    sjm-tech

    Joined:
    Sep 23, 2010
    Posts:
    733
    Wow ... thanks for rapid implementation and upgrading!
     
  24. Lars-Steenhoff

    Lars-Steenhoff

    Joined:
    Aug 7, 2007
    Posts:
    3,521
    Here a few suggestions for this great tool, I hope you can integrate them :)

    I like the object painter to work even when ALT is pressed, All the time when I try to rotate my scene I place an object, I only want to place an object when I don't press any modifier keys.

    I would like to erase painted objects when holing down SHIFT + left mouse down.

    And ideally the Paint radius / Paint Density assignable to an hotkey. For example press "b" and then move the mouse left/ right to change the radius, like in Maya.

    I would like to know if it is possible to hold down the mouse and then paint multiple object as you move the mouse?
     
  25. Tim-Wiese

    Tim-Wiese

    Joined:
    Jul 7, 2012
    Posts:
    77
    Ahh yeah, I didn't even think of that. I will fix that up. Object painting shouldn't interfere with any of the viewport camera controls.

    I will look into a good way of doing this and probably make the eraser able to erase only painted objects or erase anything.

    Currently the object painter only paints down one object at time, Density and Radius infers that it would paint groups of objects. I think what I can do is add the option to paint single objects or groups and when painting groups Density and Radius will be adjustable (and should be changeable with the mouse wheel and hotkey like you say). I'm also thinking that if there are groups it may be nice to be able to paint down more than one type of object within that group.
    Thanks for the suggestion, I have a lot of good ideas on how I can make the Object Painter better now.

    I will look into this, shouldn't be hard to add with a toggle.

    Thanks for all the suggestions Lars! Definitely added a good amount to my To Do list.

    -Tim
     
    Last edited: Dec 18, 2012
  26. Lars-Steenhoff

    Lars-Steenhoff

    Joined:
    Aug 7, 2007
    Posts:
    3,521
    I look what I wrote and you got what I meant even though I made a mistake :) I don't want to paint when ALT is pressed.

    Please have a look at this video from Maya geometry paint, it describes exactly the way I would like to paint/modify objects in Unity,



    It allows to paint more items in a group just by adding more source objects.
    Furthermore it allows to modify what has been painted already, by painting over it with scale rotation etc. this would make it easy to make some quick adjustments.

    The best thing is that Maya supports wacom pens so you can paint with pressure sensitivity, I haven't seen any wacom support in unity so I guess pressure sensitiy is a little too much to ask.

    Thanks for looking into this, and making this tool so cool!
     
    Last edited: Dec 19, 2012
  27. sefou

    sefou

    Joined:
    Aug 30, 2011
    Posts:
    287
    Hi lars,

    Geopainter has this feature.
     
  28. Lars-Steenhoff

    Lars-Steenhoff

    Joined:
    Aug 7, 2007
    Posts:
    3,521
    @sefou I own Geopainter, it has some nice features, but I don't like the way the tool is setup, I much prefer to have it in the toolbar as it's something I use very often.
     
  29. Tim-Wiese

    Tim-Wiese

    Joined:
    Jul 7, 2012
    Posts:
    77
    The modify mode is quite nice, I could see that coming in handy. This also gives me a great idea of how to implement it, Thanks!

    Being able to use a Wacom with it's pressure sensitivity would be awesome, but yeah I have not seen any support in Unity for it as of yet. There may be a way to write a plugin to make this work though, it just may be out of scope for this tool.
     
  30. Tim-Wiese

    Tim-Wiese

    Joined:
    Jul 7, 2012
    Posts:
    77
    SceneMate Version 1.1.0 was approved by the Asset Store!

    Try out the new features!

    Align/Distribute


    Object Bounds based Snapping


    Snap Offset


    Double clicking a Match Button (Position, Rotation,Scale) will average the position, rotation or scale based on all selected objects.


    I am in the process of updating the website documentation to reflect the changes and new tools that were added.

    I should also have a video in a few days that showcases most of the features within SceneMate, I want people to see first hand some of the great things that are possible with this tool.

    -Tim
     
  31. Tim-Wiese

    Tim-Wiese

    Joined:
    Jul 7, 2012
    Posts:
    77
    Version 1.1.1 is pending asset store approval

    This Version serves to clean up some things looked over in the last release. As well as some slight additions to the Object Painter, but much more to come for that.

    - Added Simple Eraser to the Object Painter, more robust implementation to come
    - Fixed Distribute using Set Spacing with "Last" checked, now will give the desired results
    - Fixed Object Painter to not interfere with Alt viewport movement modifier
    - Fixed Snap to Surface hotkey error

    -Tim
     
    Last edited: Dec 19, 2012
  32. Lars-Steenhoff

    Lars-Steenhoff

    Joined:
    Aug 7, 2007
    Posts:
    3,521
    Wow super quick updates :) looking forward to these fixes!
     
    Last edited: Dec 19, 2012
  33. Tim-Wiese

    Tim-Wiese

    Joined:
    Jul 7, 2012
    Posts:
    77
    SceneMate verison 1.1.1 has been accepted by the Asset Store!

    The SceneMate website documentation has been updated as well.

    The current implementation of the Eraser just simply deletes any object you click on with it, I plan to make the whole Object Painter much more robust, the Eraser included.

    -Tim
     
  34. Lars-Steenhoff

    Lars-Steenhoff

    Joined:
    Aug 7, 2007
    Posts:
    3,521
    Cool update thank for fixing the ALT key problem!

    Just a few things I noticed, which you probably are already were of:

    If I erase an object this does not completely do that, it does not erase some object I tried with a LOD object.
    And could you make a modifier key for erase? like SHIFT, that would speed up the workflow.
     
    Last edited: Dec 20, 2012
  35. Tim-Wiese

    Tim-Wiese

    Joined:
    Jul 7, 2012
    Posts:
    77
    I think I know what the problem is, the eraser currently will only delete objects with a Collider on them, if there is no collider it doesn't erase. I will try and find a way around this, and yes I will be adding a modifier key for the eraser it will be in the next update.

    The current eraser is kind of a placeholder it will be much better in upcoming versions.
     
  36. Lars-Steenhoff

    Lars-Steenhoff

    Joined:
    Aug 7, 2007
    Posts:
    3,521
    I think you can create a list of objects that have been painted so that from there can be seen if deleting is an option, I just deleted my mesh terrain which was unintentional and yes it too had a collider :)
     
  37. Tim-Wiese

    Tim-Wiese

    Joined:
    Jul 7, 2012
    Posts:
    77
    ouch yeah, I debated whether to put in the Eraser in such an early state. I'm submitting an update at the moment with the Eraser removed so people don't accidentally destroy their scenes by deleting objects by mistake.

    Yeah the list is what I had in mind for how it should work.

    Thanks!
     
  38. tabor

    tabor

    Joined:
    Nov 29, 2011
    Posts:
    42
    Hey Tim, great tool. It would be awesome if the object painter could cycle through the defined gameobjects with each click. Say I have 5 different rocks, then I could just click away and have variety without having to go back to the drop down menu.
     
  39. Tim-Wiese

    Tim-Wiese

    Joined:
    Jul 7, 2012
    Posts:
    77
    Thanks glad you like the tool!

    The ability to cycle through the list is something I can easily add. Good idea.

    -Tim
     
  40. Zozo2099

    Zozo2099

    Joined:
    Jul 15, 2012
    Posts:
    478
    Please can someone tell me if it works with Unity 4? thanks
     
  41. Tim-Wiese

    Tim-Wiese

    Joined:
    Jul 7, 2012
    Posts:
    77
    It works with Unity 4.

    It works with all versions of Unity 3.5 - 4

    -Tim
     
  42. sjm-tech

    sjm-tech

    Joined:
    Sep 23, 2010
    Posts:
    733
    Hi Tim,
    I found a little issue ... Bounds Snapping don't works on Snap To Wall if "Align To Normal" was enabled.
     
  43. Tim-Wiese

    Tim-Wiese

    Joined:
    Jul 7, 2012
    Posts:
    77
    Nice find, I have fixed the issue and I am submitting an update to the asset store.

    The newest version will be 1.1.2

    Thanks for letting me know!
     
    Last edited: Jan 1, 2013
  44. Tim-Wiese

    Tim-Wiese

    Joined:
    Jul 7, 2012
    Posts:
    77
    Just a quick update...

    I'm currently extremely busy outside of developing SceneMate, so I haven't been able to finish all the things I have wanted to get to. I still have many things planned they just have been pushed back a little bit.
    When I do get time which should be within a few weeks I have a couple things planned and in progress.
    1st: Tutorial video/showcase video
    2nd: updated object painter based on all the feedback, will be much more robust, will be a pop out menu to control all the settings.

    Hope everyone is enjoying SceneMate, anymore great suggestions people have I am always open to feedback.

    -Tim
     
    Last edited: Jan 22, 2013
  45. Member123456

    Member123456

    Joined:
    Oct 17, 2012
    Posts:
    237
    I found a bit of a bug. This isn't completely compatible with the UVersionControl editor. UVersionControl has a nice little feature where it allows you to open and locks scenes for version control right inside of the scene view. Everything works good with UVC right until I open SceneMate. The option to click and open a scene for editing then no longer exists. Something within SceneMate is overwriting a gui element from UVC.

    I would love to hear if there is a planned fix or some sort of workaround I could utilize.

    Pictures:

    $with_buttons.jpg $without_buttons.jpg
     
  46. Tim-Wiese

    Tim-Wiese

    Joined:
    Jul 7, 2012
    Posts:
    77
    I haven't actually used UVersionControl myself, so I will download it and see if there is a possible fix or workaround for this.

    Thanks for bringing it to my attention, I will see what I can do.

    -Tim
     
  47. Member123456

    Member123456

    Joined:
    Oct 17, 2012
    Posts:
    237
    Thank you.
     
  48. arkamarante

    arkamarante

    Joined:
    Oct 8, 2012
    Posts:
    4
    Hi Tim,

    Suppose we have sections of road, all different in size, with ramps, curves, loops .., with a pivot child object at each end of the road, right in the center. Could your plugin handle align these points so that the road is perfectly aligned? If not maybe you can add the option to align an object and drag with it their parent? It would be great and a instant buy for me.
     
  49. Tim-Wiese

    Tim-Wiese

    Joined:
    Jul 7, 2012
    Posts:
    77
    Zionmoose: I haven't had the time to find a solution to the UVersionControl problem yet, but I suspect that it has something to do with this method "public void OnSceneGUI (SceneView scnView)" overriding something UVersionControl is doing. I will continue to look into it, progress has just been slow.

    arkamarante: To better understand what your saying I made a quick mock up.

    $screenshot.242.jpg

    So the red cubes are the "pivot" points of the roads and they are the child objects of the road. Now from this you want to be able to snap the roads together using the child objects("pivots")? So basically it would be the ability to align a child pivot to another pivot and have that child object bring its parent object with it.
    Hopefully that's what your saying, and I'm making sense. If it is, I think it could be solved with a toggle that allows you to manipulate the child object of anything and have the parents move as well. I'm thinking it could be called "Maintain Relative" as it maintains an objects position and rotation relative to itself.
     
    Last edited: Apr 5, 2013
  50. arkamarante

    arkamarante

    Joined:
    Oct 8, 2012
    Posts:
    4
    Yes Tim, that is exactly what i was talking about.