Search Unity

  1. Tune in to get all the latest Unity news live from Berlin on June 19, 6pm CEST. Set up a YouTube reminder!
    Dismiss Notice
  2. Unity 2018.1 has arrived! Read about it here
    Dismiss Notice
  3. Scriptable Render Pipeline improvements, Texture Mipmap Streaming, and more! Check out what we have in store for you in the 2018.2 Beta.
    Dismiss Notice
  4. Improve your Unity skills with a certified instructor in a private, interactive classroom. Learn more.
    Dismiss Notice
  5. ARCore is out of developer preview! Read about it here.
    Dismiss Notice
  6. Magic Leap’s Lumin SDK Technical Preview for Unity lets you get started creating content for Magic Leap One™. Find more information on our blog!
    Dismiss Notice
  7. Want to see the most recent patch releases? Take a peek at the patch release page.
    Dismiss Notice

Templates - Overview, Details, and Request for Feedback

Discussion in 'Unity Hub Preview' started by KevinMaxon, Jan 26, 2018.

  1. KevinMaxon

    KevinMaxon

    Unity Technologies

    Joined:
    Oct 11, 2017
    Posts:
    12
    Templates! What are they?

    Hello beta testers!

    We want to know your thoughts on our new templates! (Templates are those things you can choose between in the dropdown window when you make a new project through the Hub.) Here’s a big, detailed overview of what they include and do!

    Templates allow us to preset batches of settings for a target game type or level of visual fidelity. This means that depending on what template you choose, your project will have all of its settings configured with the project type in mind, including some default packages, lighting settings, time settings, quality settings, graphics settings, etc.

    In addition, most templates include some example content, such as a default WASD camera controller, materials for the correct render pipeline, fonts and even an example Shader Graph in the Lightweight template.

    Specifically?

    First off, all templates include some key changes:
    • A variety of .preset files configured with the project type in mind
    • Default color space set to Linear rather than Gamma
    • Run in Background enabled
    • Optimize Mesh Data enabled
    • Time and Quality Settings configured with steady 60 fps targets in mind:
      • Fixed Timestep has been set to ~1/60
      • Maximum Allowed Timestep has been set to 0.1
      • V Sync Count has been set to Every V Blank
    In addition, each template has many more specific settings. Read on, faithful beta tester!



    The 2D template is the most particular:
    • Scene view defaults to 2D mode
    • Camera starts in Orthographic with a solid color background - no default skybox
    • Lighting, fog, and shadow settings are all turned off
      • Ambient lighting is configured with a cool grey solid color
    • Anti-Aliasing is disabled
    • Always Included Shaders has been pruned down to just Sprites/Default and UI/Default
    • Sprite Packer Mode is set to Always Enabled


    The 3D (aka 3D Ultra in b5), High Definition, and Lightweight templates include:
    • Our latest Post-Processing V2 package, configured with a PostProcessProfile.asset file, a “PostProcessing” layer configured in settings, a global Post Process Volume object in the scene, and a Post Process Layer component on the camera. We’ve set these up with some nice, relatively subtle defaults, like ACES color grading, soft bloom, motion blur, ambient occlusion, and anti-aliasing.
    • Reflection Probes (and Light Probes) in the scene when it makes sense
    • GPU Skinning and Graphics Jobs enabled in Player Settings
    • Lighting settings configured with the project type and example assets in mind (and Progressive Light Mapper enabled by default)
    • A SimpleCameraController component that enables smooth WASD movement and shows how to do some basic scripting (and an example of how to do framerate-independent lerping!)
    The High Definition and Lightweight templates pull in their respective pipeline packages and configure some essential assets that the render pipes rely on, located in the Assets/Settings folder.

    In the case of Lightweight, the most important setting is a simple Lightweight_RenderPipeline asset, but the template also includes the Shader Graph package (which in its current beta only works with Lightweight) and an example custom PBR Shader Graph.

    For High Definition, you’ll find several assets in that folder that configure things like sky, fog, shadows, and sub-surface scattering.

    Finally, the Lightweight VR template, in addition to bringing in and configuring the Lightweight render pipe, sets things up a little nicer for VR:
    • Some placeholder objects set up with TrackedPoseDrivers for hands and remotes
    • A SetCorrectCameraHeight script on the camera to set height depending on the device
    • A post-processing stack tuned for VR

    Going Forward

    Templates are still in an early stage of iteration (for instance, expect to see a fast-loading 3D template with no example content or post-processing come beta 5), so if you are trying them out please keep the following questions in mind:

    Are there any significant setting changes missing from the existing templates? Or any settings we changed that you’d prefer set differently or unset for a particular template?

    The template list for the 2018.1 release was intentionally kept lean, but for future releases we would like to create and include more! What else would you like to see as a template in the future?

    Presets are another new feature for 2018.1 and some have already been included in this build. Please review the existing presets and let us know what others you would like to see. Presets can be made based on asset types such as spotlight and pointlight, component defaults when adding a component, and import settings when importing new content. More on presets can be found here.


    Feedback please :D
     
    AdamGoodrich, ibyte, Alverik and 4 others like this.
  2. bigfootaus

    bigfootaus

    Joined:
    Jul 2, 2014
    Posts:
    4
    A template manager would be awesome. I've seen others request the ability to make custom templates, but the manager would handle a bit more on top of that too.

    • Template management
      • Redownload templates (I have an anecdote on this)
      • Find installed templates in your machine's file browser
      • Duplicate & upgrade templates made for older versions of Unity
    • Find templates from others (from the Unity Asset Store? Could prompt users to purchase packages in the template that aren't in their purchase history - leading to more sales, maybe?)
    • Create templates
      • Pick a Unity version installed on the machine
      • Pick packages downloaded from the Unity Asset Store to include
      • Pick packages found in user's specified location on the computer (or perhaps restrict to only Asset Store packages to help fight asset piracy & prevent simple reuploads)
      • Public availability / publish to the Unity Asset Store (this may obviously have issues with licencing of assets - see the bracketed sentence in the "Find templates from others")
        • May require a Super Mario Maker style verification of "play once to confirm there's no errors, and THEN you can share it"

    I was changing some stuff with the post processing in a project spawned from the Lightweight VR template - imported a newer stack to try and get things working on a Windows VR headset since the default stuff wasn't showing up. Got some errors about the imported stack having some duplicate assemblies from the existing stack, so I deleted the older stack files. Little did I know that deleting the older stack files causing issues in my project would delete them from the template itself - any new projects made would say there are scripts missing on the objects for the post processing volume and on the camera itself, so it seemed that I corrupted the project template. I'm currently reinstalling Unity 2018 to repair my Lightweight VR template.

    So please, PLEASE let us redownload templates at least!
     
  3. KevinMaxon

    KevinMaxon

    Unity Technologies

    Joined:
    Oct 11, 2017
    Posts:
    12
    Oh wow that's a pain, sorry! Thanks so much for reporting this.

    When you deleted those files, did you do it through the editor or through your OS's file system (like, Finder/File Explorer)? Did you just delete them from your New Project directory or did you delete them from the engine's download location?

    Also, thanks for the notes! Will definitely get them to the right people internally :)
     
  4. bigfootaus

    bigfootaus

    Joined:
    Jul 2, 2014
    Posts:
    4
    Through the Editor - there was one set (the newer, imported PP stack) that had a regular file path in the project as per any other asset, and the other set (the older, part-of-the-template PP stack) that had a weird file path; something about Packages?
    I deleted that older PP stack stuff from within Unity and it caused the issue. Unfortunately even reinstalling Unity 2018 didn't fix it - I feel like I must've messed up something major in the package system - but if that isn't repaired by a reinstall, is that handled by Unity Hub itself? The only thing I haven't tried is reinstalling Unity Hub, and I'll try that after this coming week's project deadlines have all passed.
     
  5. SoloChristian

    SoloChristian

    Joined:
    Oct 9, 2012
    Posts:
    444
    I am only seeing 2D and 3D in the Templates window. The other 3 templates aren't there.
     
  6. andyz

    andyz

    Joined:
    Jan 5, 2010
    Posts:
    828
    Sounds like good defaults, one question though. Can you have a template without all the global illumination and lightmapping stuff that is not always used in low-end projects or procedural projects (which can not benefit from pre-made lightmaps and light probes)?
    Of course then it would help to have a white (not yellow!?) light in new scenes and default shaders other than the standard PBR ones!
     
  7. superpig

    superpig

    Insert bacon, receive bugfix Unity Technologies

    Joined:
    Jan 16, 2011
    Posts:
    4,031
    The newer templates are only shown when you're creating a project with 2018.1. They're not available in older versions of Unity.
     
    SoloChristian likes this.
  8. Baste

    Baste

    Joined:
    Jan 24, 2013
    Posts:
    3,017
    This is a really nice feature!

    Almost a year ago, there was a call for suggestions for starter kits/templates. We delivered a few suggestions, and the Tower Defense Template was the first one created.

    Are you planning on putting those "templates" in with these "templates"? I think that would be very convenient.
     
  9. SoloChristian

    SoloChristian

    Joined:
    Oct 9, 2012
    Posts:
    444
    Does the Unity Hub Self- Update on Start-Up? It really should, If not. Also I read that Patch Releases were left out on purpose. This is truly a horrible idea. Patch fixes are there to fix bugs and should be considered part of this. I did notice that Patches are installed in the Main Unity directory and not in a folder with a name showing there version # etc.. Maybe that should be changed instead so they may be included.
     
  10. SoloChristian

    SoloChristian

    Joined:
    Oct 9, 2012
    Posts:
    444
    This is odd considering they are only a few days away from releasing Beta 5.
     
  11. optimise

    optimise

    Joined:
    Jan 22, 2014
    Posts:
    199
    1 question and 1 feedback
    Question: I currently have a Unity 2017.3 project. Is that possible for me to apply and overwrite the 2D template to the project after I update project to Unity 2018.1 when it's out of beta?
    Feedback: Hopefully u guys can figure out best possible configuration for both 2D and 3D template.
     
    Last edited: Feb 3, 2018
  12. Charles_Beauchemin

    Charles_Beauchemin

    Unity Technologies

    Joined:
    Jan 18, 2017
    Posts:
    183
    Unfortunately, templates are only applied when creating a new project. However, you'll be able to take advantage from the new packages that will support 2018.1 and add them to your project using the package manager UI.
     
  13. optimise

    optimise

    Joined:
    Jan 22, 2014
    Posts:
    199
    Awesome. Btw will the templates configure Scriptable Rendering Pipeline too?
     
  14. superpig

    superpig

    Insert bacon, receive bugfix Unity Technologies

    Joined:
    Jan 16, 2011
    Posts:
    4,031
    Yep, the "High Definition," "Lightweight" and "Lightweight VR" templates will set up your projects to use the corresponding SRPs.
     
  15. optimise

    optimise

    Joined:
    Jan 22, 2014
    Posts:
    199
    Maybe I should ask in more detail.
    1) Is that 2D template configured with Lightweight pipeline?
    2) Will SRP i.e. Lightweight and HD pipelines work out of the box and only need modification if there is special need for the project?
     
  16. IsaiahKelly

    IsaiahKelly

    Joined:
    Nov 11, 2012
    Posts:
    225
    The naming of these templates makes understanding their pipelines somewhat unclear and this seems to be creating some confusion for users, like @optimise, jbooth, and myself!
    So I think the names should be more descriptive and consistent. Here's some possible ideas:
    • 2D
    • 2D Lightweight
    • 3D
    • 3D Ultra
    • 3D Lightweight
    • 3D High Definition
    • VR Lightweight
    • Custom (empty project?)
    Adding "Built-in" would make this even clearer:
    • Built-in 2D
    • Built-in 3D
    • Built-in 3D Ultra
    • Lightweight 2D
    • Lightweight 3D
    • Lightweight VR
    • High Definition 3D
     
    Last edited: Feb 24, 2018
    a436t4ataf and TaleOf4Gamers like this.
  17. mephistonight

    mephistonight

    Joined:
    Dec 14, 2016
    Posts:
    34
    I really like the idea of these templates but as of right now... I can't seem to get them to work.

    Using 2018.1.0b8, starting a new project using the High Definition template I get a few errors like this one:

    C:/ProgramData/Unity/cache/packages/packages.unity.com/com.unity.render-pipelines.core@0.1.27/CoreRP/Shadow/ShadowUtilities.cs(250,51): error CS0227: Unsafe code requires the `unsafe' command line option to be specified

    This is without me touching anything. There are also a lot of warnings like this one:

    Shader warning in 'DeferredDirectionalShadow.compute': loop only executes for 1 iteration(s), consider removing [loop] at kernel DeferredDirectionalShadow_Contact at ShadowSampling.hlsl(204) (on d3d11)

    They're fairly descriptive errors / warnings but I'm not sure why there are errors showing on a template created project. Have I missed a step in the installation process of 2018 perhaps? I installed it via the Hub.
     
  18. Charles_Beauchemin

    Charles_Beauchemin

    Unity Technologies

    Joined:
    Jan 18, 2017
    Posts:
    183
    Hi Mephistonight, we are aware of this issue and the graphics team is working on fixing it.
     
    mephistonight likes this.
  19. optimise

    optimise

    Joined:
    Jan 22, 2014
    Posts:
    199
  20. IsaiahKelly

    IsaiahKelly

    Joined:
    Nov 11, 2012
    Posts:
    225
    @optimise that is because the 2D and 3D template are just recreations of the original 2D/3D toggle for new projects found in previous version of Unity that simply setup the editor and had nothing to do with render pipelines

    3D-2D-toggle.png

    The "3D Ultra" template only causes further confusion here because that's just the built-in render with all settings on max and post-processing.

    I also found these template names somewhat ambiguous at first, and the common confusion between templates and render pipelines is what prompted me to suggest we give them more explicit names above.
     
  21. crener

    crener

    Joined:
    Aug 29, 2015
    Posts:
    5
    What is "built-in"?

    "2D built-In" as opposed to "2D custom"? How is custom differentiated?

    If the differentiation is simply the SRP then should it not be default rather than built-in (if default is even a thing anymore in SRP)... Why have 20 different options which are essentially variations of 3 toggle options when you could separate the single drop down into the different options; 2D or 3D, SRP you want to use, packages to automatically add, etc. Essentially building the template you need from components.

    Just seems like separating it would would lead to less confusion is all. Having to look for the specific version of the template you need from 10 options becomes harder if people can add custom templates to the list and there is no clear difference between them.

    Food for thought :p
     
  22. IsaiahKelly

    IsaiahKelly

    Joined:
    Nov 11, 2012
    Posts:
    225
    As in Unity's built-in (legacy) rendering pipeline versus the new scriptable rendering pipeline. This is exactly how Unity describes it (Unity Built-In Pipeline vs Lightweight Pipeline), however, they also plan to ship "built-in" SPRs in the future, which makes the term somewhat ambiguous. So it's probably not any more helpful or less confusing to use here.

    "Custom" was just a placeholder term for basically a project with no pipelines, but then I guess you're really just using "built-in" again, so kind of redundant and probably pointless now that I think of it.

    As for making the templates more modular; I don't think that's possible and goes against their whole design, but maybe I'm mistaken and someone from Unity can enlighten us on the subject. My suggestions are really just about improving what we've got now. Maybe a "legacy" prefix would work better?
     
  23. crener

    crener

    Joined:
    Aug 29, 2015
    Posts:
    5
    Makes sense, I tend to stick to stable versions of Unity for fear of betas messing up my projects so I haven't tried the 18.1 beta... hence why I don't know the terminology.

    I don't think so, from what i read in the first post it doesn't go against it (at least not entirely) 2D or 3D is still more or less a toggle of which mode Unity gets put in, settings are preset depending on the (for lack of a better word) "quality" settings that you want (lightweight, ultra, etc) and some have additional content. So in my mind there are 3 areas that a template covers. So in theory the first two could be easy to implement with some filtering to get valid options for the content so that it is compatible with the other settings.
     
  24. optimise

    optimise

    Joined:
    Jan 22, 2014
    Posts:
    199
    Anyway I would like to see 2D Lightweight Pipeline template available that able to support 2D game development optimally and it will able to support Shadergraph for this 2D game development too.
     
  25. IsaiahKelly

    IsaiahKelly

    Joined:
    Nov 11, 2012
    Posts:
    225
    The problem I see with your suggestion is that templates cover all aspects of a new project (editor, graphics, assets, etc.) and are just a quick way to get things setup. The 2D and 3D templates are just recreations of the editor only settings found in previous versions of Unity (see this), so they're somewhat inconsistent with the new templates.

    I also think separating templates out into components would kind of defeat their purpose and make them not templates anymore. If you actually want to pick and choose each setting for your project, then a template isn't really what you want. You can already do that by just using presets, the package manager and/or importing asset packages, etc.
     
  26. crener

    crener

    Joined:
    Aug 29, 2015
    Posts:
    5
    Yeah, maybe. Perhaps have basic templates and advanced ones? I'm sure that whatever Unity end up doing will be fine. I guess it would only save 5-15 mins once at the start of the project anyway...
     
  27. slow_izzm

    slow_izzm

    Joined:
    Feb 9, 2018
    Posts:
    5
    The ability to create custom templates would be awesome!
     
    kahvana166 likes this.
  28. R1PFake

    R1PFake

    Joined:
    Aug 7, 2015
    Posts:
    153
    Can you maybe add a OpenVR controller input example script (with a Input Manager mapping for VR controller inputs) to the Lightweight VR Template?
    For example trigger/button input and touchpad axis etc.