mirror of
https://gitlab.com/ProcyonLotor/vrchat-template.git
synced 2026-08-26 03:03:54 +05:00
76 lines
3.1 KiB
Markdown
76 lines
3.1 KiB
Markdown
# VRChat Unity project template
|
|
|
|
Omni-template for making VRChat content
|
|
|
|
## Synopsis
|
|
|
|
The template have:
|
|
|
|
- Unity Editor settings for work with Git
|
|
- Git settings for work with Unity Editor
|
|
- Git LFS attributes
|
|
- Bootstrapper for automated SDK packages download
|
|
- Compatible with CreatorCompanion (but it may fuck up line endings!)
|
|
|
|
> If VPM Resolver is not present, Bootstapper will install latest version of it which might not be compatible with older Unity versions.
|
|
> Add `com.vrchat.core.vpm-resolver` to git, if you want to lock it (you need to adjust `.gitignore` file for this).
|
|
|
|
The repository have separate branches for separate content types, the only difference between them is default packages in `Packages/vpm-manifest.json`
|
|
> Branches structure
|
|
>
|
|
> ```text
|
|
> -master-+---------------------->
|
|
> |\
|
|
> | \-world-------------->
|
|
> \
|
|
> \-avatar------------->
|
|
> ```
|
|
|
|
## How to use for a new project
|
|
|
|
1. `git init` a new repo from the branch you want
|
|
2. Init Git LFS with `git lfs install`
|
|
3. Open the project in Unity
|
|
4. Let VPM resolve all packages
|
|
5. Load an example and check that everything works without errors
|
|
|
|
> After opening the project in Unity Editor you might want to add **all** new files to Git.
|
|
|
|
## How to work with existing project
|
|
|
|
1. Check that you have git-lfs installed `git lfs status`
|
|
2. Pull existing repo `git pull https://gitlab.com/ProcyonLotor/vrchat-template.git` and optionally pull all LFS objects `git lfs fetch --all`
|
|
(repo will take much more disk space, but will have complete project history)
|
|
3. (Optional) Some VPM packages may come from Community Repositories,
|
|
add them from project's [vpm-repositories.txt](./vpm-repositories.txt) file to CreatorCompanion,
|
|
or run this command in project's folder on Windows
|
|
|
|
```cmd
|
|
FOR /F %l IN (.\vpm-repositories.txt) DO vpm add repo %l
|
|
```
|
|
|
|
and Linux
|
|
|
|
```bash
|
|
for l in $(cat ./vpm-repositories.txt); do vpm add repo "$l"; done
|
|
```
|
|
|
|
> The command requires `vpm` tool installed, see [vpm cli](https://vcc.docs.vrchat.com/vpm/cli/)
|
|
|
|
> **IMPORTANT**: When opening a previously worked on project on a new machine, Unity may warn you about script errors and suggest you enter Safe Mode,
|
|
> this is because VPM has not loaded yet and didn't resolved the required packages, ignore the errors and continue loading.
|
|
> Sometimes you may need to reopen the project couple times for all packages to resolve and scripts to recompile.
|
|
|
|
## Convenience scripts
|
|
|
|
The template also have some convenience shell scripts for both Windows and Linux:
|
|
|
|
- `./repo-cleanup.*` - Cleans up all untracked trash in the working tree (i.e. `Library/`, `Build/`, etc.)
|
|
- `./repo-discard.*` - Reverts all changed files back to the state of the last commit
|
|
- `./repo-reset.*` - Completely resets the state of the local repo to the state of the remote repository (dangerous, use with caution!)
|
|
|
|
## License
|
|
|
|
For project's license see [LICENSE](./LICENSE) file.
|
|
Project contains `com.vrchat.core.bootstrap` package, for license see [Packages/com.vrchat.core.bootstrap/License.md](./Packages/com.vrchat.core.bootstrap/License.md) file.
|