“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.
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?
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.
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.
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.
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…
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.
I don’t think anyone’s mentioned this yet, but it’d be really awesome to have a way to see what packages particular template include and which settings they change. Otherwise people are likely to just go with the ones they know and ignore ones that might actually be more suited to their needs.
Thanks everyone for the feedback and apologies for the silence. We’re planning improvements to how the templates are managed overall, where settings are stored (e.g. scene vs project) and with the goal to provide more ‘solution’ driven templates in the future and the ability to create your custom template (in Editor).
Would be great to hear more feedback on what include solution based templates matter most to you as a good starting point for a new project (e.g. 2D Sidescroller, 3D FPS etc…) with more optional settings at project creation (e.g render/graphics options, services, platforms…?)
When you make a new project in the hub, there’s a drop-down for “Template”, which gives a bunch of presets for how to make an otherwise blank game. What this thread is about. Then, under Learn/Resources, there’s a “Tower Defense Template Project”, which is a much larger, premade setup for a game. There’s apparently supposed to show up more of those later.
This means that whenever I read the word “Template”, I need to remember which one the thread is about. And I’ve read the forum threads announcing both features - imagine the confusion for someone new to Unity! Maybe have a talk with @willgoldstone about naming conventions here.
Ideally, the Tower Defense thing would be grouped with the 2D and 3D game kits, no?
(This is a [re-post]( Feedback Wanted: Scriptable Render Pipelines page-21#post-3894136). I posted this in the wrong spot because I was confused about the difference between a Scriptable Render Pipeline and a Project Template)
Hey there, I just have some general accessibility feedback surrounding the new render pipelines and project templates:
Background:
I’ve been working in Unity for over 5 years. I’ve shipped and maintained a game on 8 different platforms, including all the big VR platforms. I’ve written code that saves out multiple lightmaps to a single prefab to allow switching between them at runtime at a performance that runs well on a Note 4 in Gear VR mode.
With this background, I don’t consider myself an expert – but I also have a bit of an understanding of how things work in Unity.
Feedback:
I find the new project templates difficult to approach and learn. My biggest problem is that I don’t deeply understand how the resulting project will be different if I choose to start with one template over the other. I think the documentation for this is actually fine and as clear as it could be. But documentation isn’t good enough on its own. As a developer, I need to be able try things and see what the difference is, at a very deep and technical level. Diff tools are always helpful for this. And being able to switch a project back and forth between configurations is also imperative to having confidence in my understanding.
I’m not sure what the best way to approach this accessibility would be, but I think the end-goal for these new features should be the following:
It should be intuitive to a developer to configure an existing empty (basic 3D) project to be equivalent to a project template without needing to start the project with that project template.
If I had a way to get to this point, I feel I would be able to deeply understand these new templates. But without any direction on how I could do this, I feel lost when trying to learn the impact of these new templates on a project. No documentation describing the different templates will solve this problem – I need to be able to go through the steps of configuring the project myself and see how things change (using diff tools, etc.). Right now, it is definitely not clear how I could do this.
Thanks for your work,
Allen
Update:
I figure it could be helpful to Unity developers to share my experience as I try and figure this out myself to highlight where the pain points are:
Recreating the “3D with Extras” template:
Pain point 1: After reading the documentation on Project Templates, I have no idea how easy it is to change a “3D” project into one that uses a template. I also have no idea how easy it might be to change a template project back into a bare-bones “3D” project if I choose I want to strip out the extra stuff later in a project.
Started with two projects, one using “3D with Extras” template, one with no template (“3D”)
I noticed there was a Post Process Volume script, attached to the object in the Extras scene, so I thought I could start with trying to replicate this.
Editing the post-processing script revealed that it existed outside the Assets folder in a package cache. This lead me to believe this post processing script was likely in a package I could install
Pain point 2: I brought up the Package Manager and couldn’t find the Post Process package. This was because, in Unity 2019 alpha when using “3D” template, the “Show preview packages” was turned off in the Package Manager. This made it appear as if I would need to go somewhere else to get this magical package that appeared only when I used the “3D with Extras” template.
Now that I had found the preview packages and matched up my project to have the same packages as the template project, I copied over all the assets from one project into the other.
At this point, I could tell I was still missing something, though no errors were given and all the project assets and packages matched:
It seemed my post process effect wasn’t working correctly, so I started to look at that, and found this error immediately:
This lead me to review all my project settings. When doing that I think I found the differences between starting with or without the template.
After changing the project settings, I think I was able to get my 3D project to be equivalent to the “3D with Extras” template:
Recreating the HD RP template:
After my experience with recreating the “3D with Extras” pipeline, I started with the packages. This time I knew about the “Show preview packages” option.
Pain point 3: For some reason, the HD Render pipeline package is named differently when you use the template vs when you use the Package Manger on a blank 3D project??? Edit: turns out this is just before you import it.
Next I copied all the assets over and replicated the project settings.
I think that seemed to be it:
Summary:
To be honest, it wasn’t as bad as I thought to recreate one of the templates from the basic “3D” template. There were a few pain points, but the only real thing that stuck out was my own lack of understanding on what a template really was. Somehow it wasn’t entirely clear to me that a template was nothing more than:
An additional one or two packages that could easily be added or removed through the package manager
A set of starter assets, some of which all developers will immediately delete
A few small tweaks to a project’s settings
Now that I’ve understood this, it has become obvious to me that which template I start with really doesn’t matter and I don’t need to predict the future before starting work on a prototype.
The one big issue:
The major issue I want to end on was a fuzziness in my understanding between the render pipeline packages, the post-processing package, and the project templates. Could you use a render pipeline without starting with the template for that render pipeline? Is a render pipeline and a template the same thing? If it’s a project template, then why is there one for a specific package? If a render pipeline is a package, then why is there a whole project template for it? These questions made this all very confusing and unapproachable to me.
Under each of the RP previews, it lists some features. In one of those lists it says “adds the following”. In the two other lists it says “uses the following”. This is confusing because at first glance, it’s easy to misread the Lightweight RP as being different than the High Definition RP because it “adds the shader graph tool” (that’s not what the documentation says, but it’s easy to misread it as that)
The documentation does not clearly and precisely state what a template is and isn’t! I would expect the documentation to start with a definition of what a template is in terms similar to this:
A Project Template is a collection of:
Pre-configured Project Settings
Pre-installed Packages
Sample Assets
Rather than saying a template uses or adds “features”, call them as they are! These are packages in the case of both the Render Pipelines and Post-Processing stack! By simply calling them packages, it makes it much more clear that these are things that I could later add to my basic “3D” project if I chose to do so.
I hope it’s helpful in improving the accessibility and usability of Unity. Recently I’ve been very unhappy with the “jump in and prototype something” experience because I get hung up on not knowing what template to start with. I hope this can be improved to keep Unity as a simple, easy to use prototyping tool.
Cheers,
Allen
EDIT: I just noticed that the descriptions in the original post of this thread address a number of the problems I just mentioned! This post seems much more clear about what a template is than the documentation.
The ability to add custom templates would be amazing! I make mobile apps and might start 2-5 new projects in a month. I’ve got a script that basically just instantiates all of my boilerplate app dev stuff, but I still have to import that first, run the script and wait for it to finish! Plus, with customisable templates, I have different templates for different app styles - e.g. not every app I do needs a camera, or some of the native plugins, etc. Having a few customised templates would be incredibly useful in that regard! Plus, it also means that if we bring in new Unity devs that don’t know our pipeline, there’s a nice, obvious template for them to get started with.
Basically custom templates in the hub is my most desired feature for Unity at work
I hate the hub, it sucks, why is required open that to open a project in unity in the last versions? i’m really angry, I spend more than an hour trying to create a project for unity 2019.2 thanks to the hub.
I been using Unity more thant 8 years, it was preally good until unity 2018 appeared, i’m thinking seriously to use another engine like UE4, the documentation of all the new stuff for Unity is poor, the building time used in the last versions are a taking hours because of “shader variants”, you never listened your users and all your demos show a lot of stuff that is never accesible to public.
New unity versions are unstable and you are lauching a new update every month that breaks projects from a previous version, also you are launching tools in alpha versions that you sell like a big update but are broken, thats stupid, go and paid your own testers and realease a tool when it works fine for public, don´t use us like lab rats, what the fuck are you doing??? >:(
I remember something to you “Make it simple” that’s why Unity became famous not for this.
Now that the resolution dialog is gone in 2019.3, it would be really nice if Unity would extend their templates with an in-game menu that supports video (of course resolution setting) / audio (volume) / exit options.