Save as a course template
About 15 minutes. Instructor page.
Learning objectives
- Clean the sample scene so a new project starts with Player + Plane + PlayerMover
- Save a Unity Hub custom template with Keep Project Settings on
- Fall back to a cleaned project-folder zip if Hub is older than 3.18
There is no .unityproject file extension in Unity. If you wanted a reusable ".unityproject", use a Hub custom template, or zip a clean project folder. A .unitypackage is different: it shares Assets (and optionally some settings you packed), not a full project, and it will miss Active Input Handling if you only export scripts and scenes.
Official Hub steps: Create a custom template | Unity Hub
What must be in the starter
Before you save anything, open the project you built in pages 02–05 and make it boring on purpose.
- Open SampleScene.
- Keep Main Camera, Directional Light, Plane, and Player.
- Delete leftover cubes, test canvases, and extra cameras.
- On Player, leave Player Mover enabled. Remove Player Input and Player Mover Events unless you want every student to start on the events workflow.
- Select Player, press F in the Scene view, and confirm the Game view shows the cube on the plane.
- Save the scene (File > Save).
You should see: Hierarchy is Camera, Light, Plane, Player. Console is empty in Play mode. WASD still moves the cube.
Optional student readme in the project
- In
Assets, createREADME.txt. - Put three lines in it, for example:
Course starter: Unity 6 + New Input System
Active Input Handling is Input System Package (New).
Move the Player cube with WASD or a gamepad left stick (Play mode).
Primary path: Hub custom template (Hub 3.18+)
Custom templates package a project so New project in Hub can clone it.
Suggested identity:
- Name:
Course Starter — Input System - Version:
1.0.0 - Description:
URP 3D starter with Input System Package (New), project-wide actions, and a WASD Player cube.
From the Projects list
- Close the Unity Editor so Hub is not fighting an open project.
- Open Unity Hub.
- Select Projects.
- Open the project menu for this project (the … menu on the project row).
- Select Save project as custom template.

- Enter the name, description, and version above.
- Enable Keep Project Settings.
- Skip source control unless you already use it for templates.
- Select Create.
From the Templates window
- In Hub, open the Templates window.
- Select New template.
- Choose this project as the source.
- Enter name, description, and version.
- Enable Keep Project Settings.
- Select Create.
You should see: the template listed in the Templates window and as a choice when you create a new project.
Why this matters: Keep Project Settings must be on. If it is off, Hub copies
AssetsandPackagesbut not Player settings. Students get the Input System package and then a warning that the project is using the wrong input backends. They will have to redo Enable the Input System. For URP + Input System starters, always keep project settings.
Confirm the template
- In Hub, select Projects > New project.
- Select Course Starter — Input System.
- Create a throwaway project on a local disk.
- When the Editor opens, check all four:
- Edit > Project Settings > Player > Other Settings > Configuration > Active Input Handling is Input System Package (New)
- Edit > Project Settings > Input System Package has the Action Asset assigned
- SampleScene contains Plane + Player
- Play mode: WASD moves the cube
Delete the throwaway project after it passes.
To ship an update later, change the source project, then save it as a new template (new version or new name). Hub does not overwrite an existing custom template in place.
Fallback: clean project folder (older Hub)
If Hub has no Save project as custom template and no Templates > New template, share the project folder instead.
- Close the Editor.
- Duplicate the project folder (Finder, Explorer, or
cp -R). - In the copy, delete these directories if they exist. They regenerate and they make huge archives:
LibraryLogsTempobj
- Keep these:
AssetsPackagesProjectSettingsAssets/README.txtif you added it
- Zip the cleaned folder.
- Students: download, unzip to a local disk, then in Hub use Open / Add project from disk.
You should see: the zip is small compared with a zip that still contains Library. Students open it as a normal project, not as a Hub template.
Warning: Still do not zip from a OneDrive/Dropbox copy. Duplicate onto a local path first.
.unitypackage is not a full starter
Assets > Export Package… creates a .unitypackage. That is useful for sharing extra scripts or a prefab. It is not a replacement for this template:
- It does not create a Unity project
- It does not reliably carry Active Input Handling
- Students who import it into a Built-in 3D template still have to do page 03 by hand
Use Hub custom templates (or the folder zip) for the course starter. Use .unitypackage only for add-on assets.
Checkpoint
The starter is ready when:
- A new Hub project from the template (or an unzipped folder) opens in Unity 6
- Active Input Handling is Input System Package (New) without extra clicks
- Play mode moves the Player cube with WASD