Search Unity

[WIP - BETA] uTemplate: Script Creation Simplified

Discussion in 'Works In Progress - Archive' started by UnfinityGames, Jul 12, 2016.

  1. UnfinityGames

    UnfinityGames

    Joined:
    Oct 1, 2013
    Posts:
    169

    If you use Unity, chances are that you "script" to some extent. The script creation workflow is engrained into your mind -- Create a new script, rename the script, open the script, delete and/or add methods you need, etcetera. All of this before you can do what you set out to do -- actually script something!

    With uTemplate, script creation just became a lot easier. Using its intuitive UI, you can set up your new script before it's created. When you hit "Create" your script is generated the way you want. Focus on scripting your awesome thing; forget about the hassle of the "old workflow".


    Features
    • A Robust, Easy-to-use Interface
    • A Truly Smart Template System (including smart inheritance)
    • Powerful Presets (Save your favorite script layouts!)
    • Extensive Preferences (Customize indentation type, line endings, and more!)
    • Compatible with Unity Free and Pro (Dark/Light Skin)
    • Built-in MonoBehaviour Methods (get helpful documentation-based comments out-of-the-box!)
    • Flexible Built-in Templates (MonoBehaviours, ScriptableObjects, Editors, and more!)
    • Easily accessible via the Assets menu, or Right-click menu.
    More of a visual person? Here's a few screenshots of the beta UI:
    Beta_Screenshot1.png Beta_Screenshot2.png Beta_Screenshot3.png

    The beta is free and open to anyone who'd like to give it a shot. This is a pretty complex asset, and as such, a beta seemed like a good way to find and iron out any bugs that we didn't run across. For more information about how to get the beta, you can read the beta thread on our forums.

    During the beta period, we're also running a giveaway! We'll be giving away Asset Store Vouchers for our other assets (U2DEX, uNote) as well as a couple vouchers for the final, released version of uTemplate! You can read more about that here.

    Questions and comments are more than welcome. This is our biggest asset to date, so we're pretty excited to finally show it off!
     
    Last edited: Oct 19, 2016
    Whiteleaf likes this.
  2. zyzyx

    zyzyx

    Joined:
    Jul 9, 2012
    Posts:
    227
    This sounds great! Will take a look when I find some time.
     
    UnfinityGames likes this.
  3. UnfinityGames

    UnfinityGames

    Joined:
    Oct 1, 2013
    Posts:
    169
    Thanks! It's already pretty feature-complete, but there's always stuff on my wishlist that I'd like to add. I'd be interested in hearing your thoughts when you try it!
     
    zyzyx likes this.
  4. UnfinityGames

    UnfinityGames

    Joined:
    Oct 1, 2013
    Posts:
    169
    If a picture is worth a thousand words, a GIF must be worth millions (or, at the very least, a lot). So here's some GIFs showing off some of the functionality in this beta:

    Showing off some of the method selections for MonoBehaviours:
    uTemplateGif1.gif

    Showing off loading a preset file:
    uTemplateGif2.gif
     
    Last edited: Jul 15, 2016
    Tinjaw likes this.
  5. UnfinityGames

    UnfinityGames

    Joined:
    Oct 1, 2013
    Posts:
    169
    Here's another GIF for today -- this time showing off how easy it is to save a preset!
    uTemplateGif4.gif
     
  6. UnfinityGames

    UnfinityGames

    Joined:
    Oct 1, 2013
    Posts:
    169
    Here's another GIF for today -- this time showing off all of the built-in template types! (You can easily make your own, too!)
    uTemplateGif3.gif
     
  7. docsavage

    docsavage

    Joined:
    Jun 20, 2014
    Posts:
    1,021
    Looks great. Just joined now and will test soon:)
     
    UnfinityGames likes this.
  8. docsavage

    docsavage

    Joined:
    Jun 20, 2014
    Posts:
    1,021
    Very nice:)
     
    UnfinityGames likes this.
  9. UnfinityGames

    UnfinityGames

    Joined:
    Oct 1, 2013
    Posts:
    169
    Thanks for giving it a shot (and for leaving feedback on our forums!). :)
     
  10. docsavage

    docsavage

    Joined:
    Jun 20, 2014
    Posts:
    1,021
    No problem. I have finished most of the coding for my current game. But this will be in the next project from day 1. It is really useful.
     
    UnfinityGames likes this.
  11. UnfinityGames

    UnfinityGames

    Joined:
    Oct 1, 2013
    Posts:
    169
    I'm really glad that you find it useful! I found it useful while I was working on it, but outside validation is always so much more rewarding! ;)
     
    docsavage likes this.
  12. docsavage

    docsavage

    Joined:
    Jun 20, 2014
    Posts:
    1,021
    Still really happy with unote as well. Used it loads in may current project. Mainly in putting the graphics together leaving reminders, ideas and things to consider.
     
    UnfinityGames likes this.
  13. UnfinityGames

    UnfinityGames

    Joined:
    Oct 1, 2013
    Posts:
    169
    That's awesome, thanks! I use uNote quite a bit as well. uNote for leaving reminders and uTemplate for automating a bit of the boilerplate script creation stuff are a really good match. They're both really great for saving time and organizing things (although I may be a bit biased ;)).
     
  14. docsavage

    docsavage

    Joined:
    Jun 20, 2014
    Posts:
    1,021
    Like some of the best assets born out of a need/use discovered in your own dev.
     
  15. UnfinityGames

    UnfinityGames

    Joined:
    Oct 1, 2013
    Posts:
    169
    Absolutely. If a cool asset is a side effect of making some custom tools, then I'm all for it!
    -----
    As a side note, I spent yesterday polishing up the uTemplate Docs. They should be pretty good now (especially for describing how to create your own Template and Methods files) but if you find something I missed let me know! I want the docs to be as bulletproof and easy-to-understand as possible.

    You don't have to read the docs to use uTemplate, but if you're going to be delving into some of the more advanced usage scenarios, it certainly wouldn't hurt. :)
     
  16. docsavage

    docsavage

    Joined:
    Jun 20, 2014
    Posts:
    1,021
    Just checked the site. Thanks for the replies. The docs are very clear. Wish I had this when was doing most of the coding. Would have saved a fair bit of time:).
     
  17. UnfinityGames

    UnfinityGames

    Joined:
    Oct 1, 2013
    Posts:
    169
    Thanks for checking them out!
    If you've got a spare time machine you could send over, I'd be more than happy to give it to you before you finished most of your coding. ;)
    ----------

    As an aside, I've been working on a minor update that should be ready tomorrow. In addition to some bug fixes, it adds support for automatically adding base.Method calls to overriden methods (including proper filling-in of parameters!), and adds a button link to the Docs in the Preferences.
     
  18. docsavage

    docsavage

    Joined:
    Jun 20, 2014
    Posts:
    1,021
    If i had a spare time machine I would'nt need to work:) Would be using it as a hobby:)
     
    BackwoodsGaming likes this.
  19. UnfinityGames

    UnfinityGames

    Joined:
    Oct 1, 2013
    Posts:
    169
    Heh, fair enough. ;)

    uTemplate Beta 0.54 is released! I ran into a bit of an issue with the base.Method calls (basically, it was overriding return types, for templates with those specified) but everything should be sorted now.

    If you're not already in the beta, you can read about how to join over here. For everyone already in the beta, you can download the newest version from the Beta Downloads area.
     
  20. UnfinityGames

    UnfinityGames

    Joined:
    Oct 1, 2013
    Posts:
    169
    uTemplate's new base method call functionality is already working extremely well for us. Here's a small sample of it being used in generating a State class for our internal State Machine:

    StateMachineExample.png

    All of that is generated with uTemplate, including the proper usage of the deltaTime parameter in the base.Update call. Pretty happy with how it turned out!
     
    BackwoodsGaming likes this.
  21. UnfinityGames

    UnfinityGames

    Joined:
    Oct 1, 2013
    Posts:
    169
    Been a while since my last update, so here's a combined screenshot of how the preferences look!

    uTemplate_Beta_Preferences.png
     
    Tinjaw and BackwoodsGaming like this.
  22. UnfinityGames

    UnfinityGames

    Joined:
    Oct 1, 2013
    Posts:
    169
    Been working on some behind-the-scenes stuff for a while, but the new update is almost ready to go out. The main thing is there's a new updater that'll get pushed to all of our products that'll make it much easier to keep everything up-to-date.

    Along with that, there's a bunch of optimizations and performance improvements for uTemplate. I think I'm nearing the end of the beta period (things seem pretty stable) so if anyone's on the fence with trying the beta, now's the time to jump in while it's still free!

    Hopefully I'll have the update wrapped up here shortly. A lot of the work that went into it isn't immediately evident, but it involved a pretty huge reworking of the core framework. I'd estimate everything's between 10% to 200% faster, depending on what's being done. A pretty huge boost!
     
    Tinjaw and docsavage like this.
  23. UnfinityGames

    UnfinityGames

    Joined:
    Oct 1, 2013
    Posts:
    169
    Here's a quick look at something I managed to slip in to the upcoming update: layout flipping!

    uTemplateGif5.gif

    This is a new option in the preferences that lets you flip the display layout of the Script Creation Wizard. It'll even change the positions of the pop-up modal windows.

    For a quick Saturday addition, it turned out pretty cool!
     
    docsavage likes this.
  24. docsavage

    docsavage

    Joined:
    Jun 20, 2014
    Posts:
    1,021
    Hi @UnfinityGames,

    Managed a really quick test today with 5.4. Not tested everything but what did test seems to be working. Only thing I'd add is to make those windows size adjustable as sometimes these Names run out of view so it's not possible to see which one is being selected. eg if have a XXXXXX2d or XXXXX3d version. Only a problem for longer class names.

    Looking really nice. Glad to have seen this. :)
     
  25. UnfinityGames

    UnfinityGames

    Joined:
    Oct 1, 2013
    Posts:
    169
    Thanks for the feedback, @docsavage!

    I'm actually developing it on 5.4 now, so it should be rock-solid on 5.3 through 5.4. My plan is to do 4.7 to 5.4, but I haven't done a full battery of tests on 4.7 yet.

    As for the name length, which names are you referring to? Presets? Script names? As a tip, you can hover on most (all?) names that can get cut off, and the hoverable tooltip will display the full name.

    The Editor GUI isn't very well suited for resizable windows-in-windows, but I'll add it to the wishlist. I wanted to do it earlier, but couldn't find a reliable and intuitive way to do it.
     
  26. docsavage

    docsavage

    Joined:
    Jun 20, 2014
    Posts:
    1,021
    Hi :),

    A picture speaks a thousand words:)

    Was thinking more of the highlighted areas in the pic. If any classes/methods are made with long names and are able to be added to the list then the ends of the names are not visible. If that area could be resized then it would help.

    Unfinity.png

    This is a great product!

    Thanks

    doc
     
    UnfinityGames likes this.
  27. UnfinityGames

    UnfinityGames

    Joined:
    Oct 1, 2013
    Posts:
    169
    Ah, I see now. Yeah, I'm aware of that (and is actually the reason why I made the specific function of any cut-off content having a full-name hoverable tooltip).

    I'm not sure if I can make the options panel resizable, but I'll look into it for sure (after this update has been shipped). In the meantime, the tooltips are the way to go.

    Thanks for taking the time to do the screenshot, doc. You've been a great beta tester! :)
     
  28. docsavage

    docsavage

    Joined:
    Jun 20, 2014
    Posts:
    1,021
    No problem. No really had time too do a lot of testing. It deserves more but finished most of the coding stage with the game.
     
  29. UnfinityGames

    UnfinityGames

    Joined:
    Oct 1, 2013
    Posts:
    169
    uTemplate Beta 0.55 is released! This update brings a bunch of improvements, as well as better performance across the board. The full changelog is at the link.

    If you're not already in the beta, you can read about how to join over here. For everyone already in the beta, you can download the newest version from the Beta Downloads area.
     
    docsavage likes this.
  30. UnfinityGames

    UnfinityGames

    Joined:
    Oct 1, 2013
    Posts:
    169
    Here's what I've been working on for the last week -- @docsavage should be pretty happy. :)

    Without further ado, here's a sneak peek of resizing!
    uTemplateGif6.gif
     
    Tinjaw likes this.
  31. docsavage

    docsavage

    Joined:
    Jun 20, 2014
    Posts:
    1,021
    Fantastic! That really is a needed addition IMHO. You can see on the line that says 'OnTransformedChildrenChanged' and the one under it how it make the obscured text readable.

    Excellent.

    Thanks @UnfinityGames:)
     
  32. UnfinityGames

    UnfinityGames

    Joined:
    Oct 1, 2013
    Posts:
    169
    I'm glad you like it! I even spent the extra time to make the truncated names adapt in real time, so you can pull the options view out and the ellipsis will reveal more of the name if it can.

    It certainly wasn't easy, but it turned out pretty well. Given that it's pretty hacky, I'm sure there are some edge cases to the resizing, so I'm going to try and get it finished up and released ASAP to get it into people's hands for testing.
     
  33. docsavage

    docsavage

    Joined:
    Jun 20, 2014
    Posts:
    1,021

    Hope I didn't make too much work? Like I said when testing I found it really was needed. At least in my case. Hopefully it will pay off.

    Thanks

    doc
     
  34. UnfinityGames

    UnfinityGames

    Joined:
    Oct 1, 2013
    Posts:
    169
    It wasn't too much work at all -- it was just challenging to make everything play nicely with the Editor GUI. It absolutely was needed, and now that it's done the user experience is improved quite a bit. Don't feel bad about it at all, your comments were the jumpstart I needed to prioritize the feature. After all, this is what the beta's for!

    Thanks for being a great beta participant!
     
    docsavage likes this.
  35. docsavage

    docsavage

    Joined:
    Jun 20, 2014
    Posts:
    1,021
    Thanks for having a good open beta:)
     
    UnfinityGames likes this.
  36. UnfinityGames

    UnfinityGames

    Joined:
    Oct 1, 2013
    Posts:
    169
    uTemplate Beta 0.56 is released! This update brings the UI Resizing, as well as some other, smaller changes.

    If you're not already in the beta, you can read about how to join over here. For everyone already in the beta, you can download the newest version from the Beta Downloads area.
     
    Tinjaw and docsavage like this.
  37. docsavage

    docsavage

    Joined:
    Jun 20, 2014
    Posts:
    1,021

    Managed to get a quick test done. The new resizing works a treat. Makes all the difference especially for seeing own custom classes. Thanks again:)

    doc
     
  38. UnfinityGames

    UnfinityGames

    Joined:
    Oct 1, 2013
    Posts:
    169
    Great, thanks for taking the time to test it! I'm glad that it helped with the truncated class name situation -- it certainly is handy, now that it's in. :)
     
    docsavage likes this.
  39. UnfinityGames

    UnfinityGames

    Joined:
    Oct 1, 2013
    Posts:
    169
    Been a little while since my last update, but that's because I've been working on something really cool. I'm not quite ready to reveal that yet, but I wanted to talk about a separate feature I added today: the [UNITY version] tag.

    Basically, it lets you specify in a template's methods file that certain methods can only be used with certain versions of Unity. It's really handy for having version-specific methods without cluttering up the Script Creation Wizard with tons unusable methods. There's some more info in the documentation, here.

    For most users, I suspect this won't be a huge deal unless you're maintaining cross-version code. But for Asset Store developers that support multiple versions, this is a huge timesaver, and it'll come into play with the previously-hinted-at "really cool thing" that's coming next.
     
  40. docsavage

    docsavage

    Joined:
    Jun 20, 2014
    Posts:
    1,021

    Sounds good. Also like hearing of new really cool things:). I dont know if you still have the open beta but I've been referring people on a couple of groups I'm in to this thread:)
    .
     
  41. UnfinityGames

    UnfinityGames

    Joined:
    Oct 1, 2013
    Posts:
    169
    Thanks! This is still a free, open beta so anyone can try it out. I'm getting close to what I would consider a "stable" beta (when it'll exit open beta) but it's not quite there yet. When that happens, I'll make an announcement so everyone's on the same page.

    Thanks for using (and referring people to) uTemplate!
     
    docsavage likes this.
  42. UnfinityGames

    UnfinityGames

    Joined:
    Oct 1, 2013
    Posts:
    169
    It's been a while since the last update, but for a good reason: uTemplate is coming to the Asset Store soon! I'm doing final testing on it right now, but the goal is to have it submitted in the coming days.

    I'm also pleased to report that I backported some of the Unity 5 specific code and got it running on Unity 4.7.0, so when it's released it'll support 4.7 through the current Unity 5 version.

    The next update is pretty huge (we're skipping from 0.56b up to 0.60b) so I'm looking forward to sharing more information once it's submitted to the Asset Store.

    Thanks for all the help thus far, beta testers! uTemplate wouldn't be what it is today without your feedback!
     
    docsavage likes this.
  43. UnfinityGames

    UnfinityGames

    Joined:
    Oct 1, 2013
    Posts:
    169
    The Asset Store thread is now available, here. uTemplate has been submitted to the Asset Store, so hopefully it will be available soon.

    I wanted to extend a huge thank-you to all of the awesome beta testers that helped shape the future of uTemplate. Your feedback and insight was invaluable, and uTemplate wouldn't be what it is today without you. Thank you!
     
    docsavage likes this.