Search Unity

  1. Welcome to the Unity Forums! Please take the time to read our Code of Conduct to familiarize yourself with the forum rules and how to post constructively.
  2. We have updated the language to the Editor Terms based on feedback from our employees and community. Learn more.
    Dismiss Notice

SnazzyTools : SnazzyGrid - much more than just a grid!

Discussion in 'Assets and Asset Store' started by Becoming, Jun 25, 2014.

  1. twobob

    twobob

    Joined:
    Jun 28, 2014
    Posts:
    2,058
    He's not wrong - we did actually see this too.
    Perhaps I will fire up a test project (next week though) as see if I can make some solid repros for you.
    I have a reasonably decent grasp of the code now.

    No promises, but we can confirm (annoyingly for you) that there may be some "bool" foofs - as reported - in certain cicumstances. I will see if I can make the time.
     
  2. twobob

    twobob

    Joined:
    Jun 28, 2014
    Posts:
    2,058
    So, I made time.

    Using the default configuration, we can confirm that the G hotkey is indeed diabled when entering names, or when the inspector tab is focused. Obviously it is not an "out of the box" issue. Guess we will have to keep an eye on the particular use-case that causes the issue and report back when we note it.

    One tiny issue - that is a non-issue - is easily reproducible.

    Go the game view, turn grid on then off - the game view (as it is not updated in play time) will have the old grid on it (unless you swtich to Scene view and back - thus causing the screen to refresh and show the /actual/ current game view that has no grid. Easy fix. just cause a refresh I suppose OnDisable (or something)

    upload_2015-10-7_12-52-26.png

    Now, that is not the issue in "Shows in Game View" that people were reporting (AFAIK) but it is one false postive that you could ditch immediately.

    Will report if we note the specific use-cases and will drop in some debug code (we noted you already have some in there) to see if we can nail it.

    Next weekish (test harness now built)

    Cheers.
     
  3. Becoming

    Becoming

    Joined:
    May 19, 2013
    Posts:
    781
    Awesome, glad to know that the folks on my team are not the only ones who still use this tool everyday... none of us ever ran into these issues though, so if you can point me in the right direction, very appreciated!
    Only sour taste as an asset dev is (even though everybody who used it knows how valuable SG is), still we only have an average net revenue of 30 bucks a month with it...
     
  4. Dan2013

    Dan2013

    Joined:
    May 24, 2013
    Posts:
    200
    @Becoming
    I like Sanzzy Grid. Glad to see the author is back.

    I got these trivial warnings below in Unity 5.1.2.
    Assets/SnazzyTools/SnazzyGrid/Editor/SnazzyToolsEditor.cs(77,24): warning CS0618: `UnityEditor.EditorWindow.title' is obsolete: `Use titleContent instead (it supports setting a title icon as well).'
    Assets/SnazzyTools/SnazzyGrid/Editor/SnazzyToolsEditor.cs(910,44): warning CS0618: `UnityEditor.EditorWindow.title' is obsolete: `Use titleContent instead (it supports setting a title icon as well).'


    In addition, is there any option to only display grids in Unity editor (not in game runtime)?
     
    Last edited: Oct 16, 2015
  5. Becoming

    Becoming

    Joined:
    May 19, 2013
    Posts:
    781
    Thanks a lot, this warning is not critical(yet). If it really bugs you you can change the line in the SnazzyToolsEditor.cs to:
    Code (CSharp):
    1. window.titleContent = new GUIContent("SG");
    until i have that fixed.
    I wonder why some people have the grid visible in playmode, here it disables itself without issues. I will dig deeper.
     
    Dan2013 likes this.
  6. twobob

    twobob

    Joined:
    Jun 28, 2014
    Posts:
    2,058
    Specifically in init()
    upload_2015-10-17_15-51-45.png
     
    Becoming likes this.
  7. puzzlekings

    puzzlekings

    Joined:
    Sep 6, 2012
    Posts:
    402
    Hi Peter

    Using SG2 in 5.2.0 I see the following:

    NullReferenceException: Object reference not set to an instance of an object
    UnityEditor.Handles.DoPlanarHandle (PlaneHandle planeID, Vector3 position, Quaternion rotation, Single handleSize) (at /Users/builduser/buildslave/unity/build/Editor/Mono/EditorHandles/PositionHandle.cs:147)
    UnityEditor.Handles.DoPositionHandle_Internal (Vector3 position, Quaternion rotation) (at /Users/builduser/buildslave/unity/build/Editor/Mono/EditorHandles/PositionHandle.cs:90)
    UnityEditor.Handles.DoPositionHandle (Vector3 position, Quaternion rotation) (at /Users/builduser/buildslave/unity/build/Editor/Mono/EditorHandles/PositionHandle.cs:61)

    when using the Duplicate command.

    Any ideas what this could be?

    thanks

    Nalin
     
  8. Deleted User

    Deleted User

    Guest

    I deleted SnazzyGrid but when I start the game I am getting some errors "The reference behaviour on this prefab is missing". Double-clicking the error takes me to a SnazzyGrid (Clone) prefab that I cannot locate anywhere.
     
  9. Becoming

    Becoming

    Joined:
    May 19, 2013
    Posts:
    781
    Somehow i didn't get an alert for this thread, or i accidentally clicked it away without seeing it...
    Problably you deleted it while it was active.
    Download this script - "Unhide Snazzy Objects" and place it in an editor folder. Then under Window/SnazzyTools click on Unhide Snazzy Objects. It will reveal any objects related to SnazzyGrid in the hierarchy.
     
  10. Becoming

    Becoming

    Joined:
    May 19, 2013
    Posts:
    781
    Hey Nalin!
    This should not happen... maybe a corrupted install... or you updated without deleting the old version before , or you are still using an old version? Not sure whats causing it, can you try to delete it from your project and do a fresh install?

    Cheers
     
  11. Deleted User

    Deleted User

    Guest

    The script is not working. Nothing happens
     
  12. Becoming

    Becoming

    Joined:
    May 19, 2013
    Posts:
    781
    The script can only find what is actually there.
    And you still get the warning about the missing script? That is odd... can you paste me the exact warning message?
    Maybe the object is named differently than what i am looking for.
     
  13. Deleted User

    Deleted User

    Guest

    This is the error: "The referenced script on this Behaviour is missing!"

    The error happens when I enter Play mode. Double clicking it takes me to a GameObject calleed ##SnazzyGrid##(Clone)
     
  14. Becoming

    Becoming

    Joined:
    May 19, 2013
    Posts:
    781
    Actually that is the name the script is searching for... maybe there is a space between ##SnazzyGrid## and (Clone)...
    I changed the script to be more general with the name it is looking for, now it will unhide all objects in the current scene that have a name that contains "SnazzyGrid". Hopefully that will work for you, i have tested this and the previous version of the script and it worked for me.

    https://www.dropbox.com/s/tavsazs7n6bele0/UnhideSnazzyObjects.cs?dl=0

    edit: If that also does not work the only thing i can imagine to work is to reinstall snazzy grid, making sure that you dont have it selected and then delete the folder.
     
  15. Deleted User

    Deleted User

    Guest

    Not working. Maybe I'm doing it wrong?

    - I placed the script in an Editor folder.
    - The name of the file matches the class name.
    - I click on "Window" then "SnazzyTools" then "Unhide Snazzy Objects" in the toolbar.
    - I search for "snazzy" in the Project window search bar but nothing turns up.

    If I start the game though, I will get the error I posted above and double clicking it will take me to a SnazzyGrid GameObject, although it only displays the object in the Inspector and doesn't actually take me to the object's location in the Project window.
     
  16. Becoming

    Becoming

    Joined:
    May 19, 2013
    Posts:
    781
    I think you do all correctly.
    If you try to run the command in play mode, does it work then?
     
  17. tachyon-particle

    tachyon-particle

    Joined:
    Jan 5, 2016
    Posts:
    79
    The "HierarchyUp/HierarchyDown" is not working on Unity 5.3.2f1

    When either of those buttons are pressed, nothing happens, except there's a focus on Increment #2 textbox. The Hotkey for them is not working either.

    Can you confirm that this working for Unity 5.3.2f1 ?


    upload_2016-2-11_9-48-29.png
     
  18. Becoming

    Becoming

    Joined:
    May 19, 2013
    Posts:
    781
    Hierarchy Up/Down only works if you select something in the hierarchy... then it will select the children or parent.
     
  19. tachyon-particle

    tachyon-particle

    Joined:
    Jan 5, 2016
    Posts:
    79
    Thank you, yes it does work as you have described.

    I totally misunderstood the functionally of the Hierarchy Up/Down. I thought it actually moves the object, in terms of order in the hierarchy. By the way, that would be a great feature to have in the future, if it's possible. Being able to move the object's hierarchy order with up/down buttons would be awesome.

    All in all, this is a fantastic tool!

    I'm looking forward for the future!
     
  20. Becoming

    Becoming

    Joined:
    May 19, 2013
    Posts:
    781
    It is a simple feature but it saves so much time in our own productions... many times we have a bunch of objects under a parent and we want to select all children in a certain hierarchical level to add a component to it, or enable/disable shadows on the meshrenderers, or something like that. I am glad you like the tool and i hope you can use it to its full potential...

    I will look into the reordering feature you suggested, think it could indeed be handy!

    Cheers,
    Peter
     
  21. StevenP94

    StevenP94

    Joined:
    Jun 3, 2013
    Posts:
    143
    Hello, I'm testing Snazzy Grid 2 on Unity 5.4 and I found that rotation doesn't work properly: I setup a rotation snap of 22.5 degrees (or any other value) and when I rotate the object I see that rotation was done but with another value.
    On 5.3 all works fine.
    Someone else can confirm this problem ?
    bye.
     
  22. Don-Gray

    Don-Gray

    Joined:
    Mar 18, 2009
    Posts:
    2,278
    From looking at the Asset Store version looks like the latest update was April 2015, so might be broken in 5.4 Unity.
    Might want to contact them about an update.
     
  23. StevenP94

    StevenP94

    Joined:
    Jun 3, 2013
    Posts:
    143
    For all interested ppl: I verified that there is a bug into 5.4.x version that gives wrong info into the inspector when you apply a rotation on a transform using the .rotate method. I submitted the bug to the unity staff and waiting for a reply/fix
     
  24. Matthias1231

    Matthias1231

    Joined:
    Aug 20, 2012
    Posts:
    62
    I just bought this and put it in Unity 5.4.1 and it's quite broken.
    Hotkeys only work occasionally, I can't quite make sense as to when they work and when they don't.
    Dragging with the mouse ignores the grid increment and always snaps to 1m increment no matter the grid size and increment settings.
    That's too bad, was really looking forward to use it.
     
  25. hopeful

    hopeful

    Joined:
    Nov 20, 2013
    Posts:
    5,639
    If you don't use the dev's tag (@Becoming) there's no guarantee he'll get a notification of your message in the forum. Better yet, if you need support, send him an email at his support address.
     
  26. Matthias1231

    Matthias1231

    Joined:
    Aug 20, 2012
    Posts:
    62
    Thanks hopeful, I'll send him an email.
     
    hopeful likes this.
  27. Becoming

    Becoming

    Joined:
    May 19, 2013
    Posts:
    781
    Thanks for letting me know, i am looking into the issue!
     
  28. shamsfk

    shamsfk

    Joined:
    Nov 21, 2014
    Posts:
    307
    Hi!

    IS this product still alive? It looks cool, but now updates for ages...
     
  29. recon0303

    recon0303

    Joined:
    Apr 20, 2014
    Posts:
    1,634
    The person who made Terrain Composer was part of this, and he is very active.. But it was also made by Becoming, he seems to be hard to find sometimes but best to email him to find him...

    You can prolly also ask Nathaniel the developer of Terrain Composer 2 since he also worked on this.. But ya I agree it has not been updated in a long time...

    But I also don't see any reason to update unless they wanted to add some new features.. I use it a lot . Only issue I see sometimes, is the grid would bug out sometimes. But I have not seen this issue since 5.1. or 5.2.
     
  30. StevenP94

    StevenP94

    Joined:
    Jun 3, 2013
    Posts:
    143
    It works well, I've tested with unity up to 5.5.1p2 - no problems with this asset.
     
    twobob likes this.
  31. shamsfk

    shamsfk

    Joined:
    Nov 21, 2014
    Posts:
    307
    IMO they should absolutely release something even a tiny hotkeys improvement or whatever to make a statement that asset is alive and worth investing in. I have it for a long time, but here is a time to buy several for a studio, and sadly, there is no good reason to choose snazzy(
     
    Deleted User and recon0303 like this.
  32. twobob

    twobob

    Joined:
    Jun 28, 2014
    Posts:
    2,058
    upload_2017-4-14_5-10-57.png

    upload_2017-4-14_5-12-9.png
     
    shamsfk likes this.
  33. twobob

    twobob

    Joined:
    Jun 28, 2014
    Posts:
    2,058
    The original effort to create this tool was very high. Undocumented features and messing with the guts of the beast was tough. Then came the eternal maintenance and relatively low sales.

    I honestly imagine the author is like "Gah! WHY!!!!! What was I thinking???", This was developed in (or near the end of) a hey-day for the asset store, quite a few assets going big by his buddies around him. Decent sales being seen.

    The error I pointed out above is now a show-stopper for any new buyers who have no coding ability which is why I flagged it. FWIW, I am happy to have a dig around at some point and post the fix for this in a gist at some point, however it only prevents using the Settings functionality which is pretty low importance, so honestly doubt even many people have noticed.

    So, No, pretty sure he is not in a rush to give up his day job and come rushing to fix this. Might happen.
    Currently the bit-rot is pretty low, it is basically usable OOTB on 5.6.03f.

    2017 who knows.
    Hope that is a full enough insight for you to make an informed decision.
     
  34. Becoming

    Becoming

    Joined:
    May 19, 2013
    Posts:
    781
    Update is pending... should be up any day now ;)

    in the meantime: the issue with the setting swindow throwing an error can be fixed by changing
    Code (CSharp):
    1. public bool unitySkin = EditorGUIUtility.isProSkin;
    to
    Code (CSharp):
    1. public bool unitySkin;
    in SnazzySettingsEditor.cs at line 13
     
    shamsfk and hopeful like this.
  35. shamsfk

    shamsfk

    Joined:
    Nov 21, 2014
    Posts:
    307
    It's Alive! :)
    Nice to see Snazzy getting its update, it is still the best grid IMHO.
     
    Becoming likes this.
  36. recon0303

    recon0303

    Joined:
    Apr 20, 2014
    Posts:
    1,634

    Hey, not sure if Nath told you or not, but I still use Snazzy , but the Grid disappear sometimes. I had told him about it, since you where away. it was awhile back, it happens once in awhile, I see others reported the same thing in the review area. Something I hope you can take a look at when you can. Thanks.
     
  37. Becoming

    Becoming

    Joined:
    May 19, 2013
    Posts:
    781
    I just uploaded another fix, Unity 5.6 had a bug with the duplicate command... anyway, i can't reproduce any issues with the grid disappearing. Do you have more info?
     
  38. Becoming

    Becoming

    Joined:
    May 19, 2013
    Posts:
    781
    I am glad you like it! Any chance you leave a review on the Asset Store?
     
  39. recon0303

    recon0303

    Joined:
    Apr 20, 2014
    Posts:
    1,634
    alls I can say is read other reviews, its a very random issue, happens to others as well, mainly happens when zooming in and out. and its very random when it happens. and don't happen all the time, but when it happens, can be annoying.

    But seems others do have this odd issue. Its not a game breaker, more of an annoyance when it happens, when zooming in and out.
     
  40. Becoming

    Becoming

    Joined:
    May 19, 2013
    Posts:
    781
    I have read all the reviews but only one 2 year old review mentions some flickering with of the grid, something that nobody in our team ever experienced. There are 2 other very old reviews, mentioning that the grid does not show in unity 5, but this was from the time when unity 5 was in beta and is resolved since a long time. So without a clue how to reproduce it, i can't do much. If you ever encounter this issue again, let me know.
     
    recon0303 likes this.
  41. recon0303

    recon0303

    Joined:
    Apr 20, 2014
    Posts:
    1,634

    Ya it happens from time to time, so cant give anymore information than when I zoom in and out... its been doing it since 2015 the last update I told Nath about it back then as well. But its not a common thing, I planned to look at it myself, when I had time actually if I find anything with the code, and the issue I will let you know.
     
  42. Becoming

    Becoming

    Joined:
    May 19, 2013
    Posts:
    781
    The latest update is on the Asset Store now!
    Big thanks to the Asset Store Team for the very quick approval :)
     
  43. Whatever560

    Whatever560

    Joined:
    Jan 5, 2016
    Posts:
    418
    Hi, we really like this tool.

    One bug we stumble upon. Negative scale values don't snap properly and have fancy value when asking for auto snap (middle click on snap), quite easy to reproduce. It is needed when working with symmetrical meshes.

    Thanks
     
  44. Becoming

    Becoming

    Joined:
    May 19, 2013
    Posts:
    781
    Do you mean position snapping values are screwed when objects have a negative scale? If you want to snap without affecting the scale turn off the scale snapping - clicking the snap button only affects what is enabled in the snap subsection. I guess you know this and i am just confused about what you wrote :/
     
  45. Whatever560

    Whatever560

    Joined:
    Jan 5, 2016
    Posts:
    418
    Indeed, you understood perfectly well, negative values get screwed.
    The thing is I might want to snap negative values to grid as well, as I'm porting previous unaligned content with Snazzy. For now when the scale is screwed I write it back manually. I believe it's a non tested use case as it might not be pretty common. But no big issues there.

    Just to note, it's pretty narrowed; negative scales behave properly after this event
     
  46. Becoming

    Becoming

    Joined:
    May 19, 2013
    Posts:
    781
    I just tried to test this but i am not getting fancy values, though what i got is that negative scales are getting positive.
    Here is what i tried to do:
    I flip the scale.x (put it to -1)of an object, move it slightly of grid, then perform a snap by middle clicking snap. scale.x is positive again. This is indeed a bug.

    Here is a quick fix:

    On line 1267 in SnazzyToolsEditor.cs there is a foreach loop, it looks like this:
    Code (CSharp):
    1. foreach (Transform transform in Selection.transforms)
    2. {
    3.      scale = SnapVector3(transform.localScale,x,y,z,snazzy.gridSize);
    4.      if (x && scale.x < snazzy.gridSize) {scale.x = snazzy.gridSize;}
    5.      if (y && scale.y < snazzy.gridSize) {scale.y = snazzy.gridSize; }
    6.      if (z && scale.z < snazzy.gridSize) {scale.z = snazzy.gridSize; }
    7.      transform.localScale = scale;
    8. }
    replace the whole foreach loop by this:
    Code (CSharp):
    1. foreach (Transform transform in Selection.transforms)
    2. {
    3.      scale = SnapVector3(transform.localScale,x,y,z,snazzy.gridSize);
    4.      Vector3 neg = Vector3.one;
    5.      if (scale.x < 0) neg.x = -1;
    6.      if (scale.y < 0) neg.y = -1;
    7.      if (scale.z < 0) neg.z = -1;
    8.      if (x && scale.x < snazzy.gridSize) {scale.x = snazzy.gridSize * neg.x;}
    9.      if (y && scale.y < snazzy.gridSize) {scale.y = snazzy.gridSize * neg.y; }
    10.      if (z && scale.z < snazzy.gridSize) {scale.z = snazzy.gridSize * neg.z; }
    11.      transform.localScale = scale;
    12. }
    Thanks for pointing this out, i will upload the fix asap.
     
    Whatever560 and hopeful like this.
  47. Whatever560

    Whatever560

    Joined:
    Jan 5, 2016
    Posts:
    418
    Mmh, no issue is still there, in your conditions, if scale is under gridSize (which for negative values is always true) then value get downed to grid size. You have to check for absolute value.

    This fix it :

    Code (CSharp):
    1.         foreach (Transform transform in Selection.transforms)
    2.         {
    3.             scale = SnapVector3(transform.localScale, x, y, z, snazzy.gridSize);
    4.             Vector3 sign = new Vector3(Mathf.Sign(scale.x), Mathf.Sign(scale.y), Mathf.Sign(scale.z));
    5.             if (x && Mathf.Abs(scale.x) < snazzy.gridSize) { scale.x = snazzy.gridSize * sign.x; }
    6.             if (y && Mathf.Abs(scale.y) < snazzy.gridSize) { scale.y = snazzy.gridSize * sign.y; }
    7.             if (z && Mathf.Abs(scale.z) < snazzy.gridSize) { scale.z = snazzy.gridSize * sign.z; }
    8.             transform.localScale = scale;
    9.         }
    Thanks for pointing out the good chunk of code
     
    Last edited: Nov 15, 2017
  48. Whatever560

    Whatever560

    Joined:
    Jan 5, 2016
    Posts:
    418
    Another thing about rotation snapping :
    When a parent got itself a rotation the snapping for children rotation goes all wrong with values going really mad.
    If I put the children out of hierarchy then rotation behaves as expected. Scale and Positions snapping seems to work well on parented elements.

    I believe it might be an issue with rotation grid resolving for parent/children elements
     
  49. Becoming

    Becoming

    Joined:
    May 19, 2013
    Posts:
    781
    Inte
    Interesting, thanks for this, although i do not see how my suggested change is different from yours, Mathf.Sign does exactly what i did(in a more elegant way admittedly).
     
  50. Becoming

    Becoming

    Joined:
    May 19, 2013
    Posts:
    781
    SnazzyGrid snaps all objects in the selection, so that affects the children as well, this is by design. Everything gets rotated to the closest snap angle if you have rotation snapping enabled or if you perform a manual rotation snap. I just tested this to make sure it works as it is meant to and it all behaves exactly as expected. Though i see that in some cases a ignore children option could be useful.