Search Issue Tracker
Won't Fix
Votes
15
Found in
4.3.1f1
Issue ID
583240
Regression
No
Add T4 templates to user script projects
While editing scripts in MonoDevelop, user has created text templating "T4 Template" file, which was successfully added in file hierarchy in MonoDevelop. Then user switched to Unity editor and switched back to MonoDevelop. Project's solution is always updated with T4 Template files being removed from hierarchy in MonoDevelop.
Reproduced on all versions from 4.2.2f1 to 4.5.0a4;
Repro steps:
1. Create new project in Unity editor;
2. Create new C# script;
3. Open this new file from editor with MonoDevelop;
4. In MonoDevelop create T4 Template file (File -> New -> File -> Text Templating -> T4 template). Name file and tick the box below to add this file to project's "Assets" folder;
5. Observe that T4 template file appears in the solution;
6. Switch to Unity editor, wait while editor finishes script compiling, switch back to MonoDevelop, wait while it refreshes the solution.
7. Observe that T4 Template file has gone from solution hierarchy.
------------
Create T4 templates using the existing MonoDevelop add-in for this once the Monodevelop/Rest Integration is shipped. Also, Unity does not have direct support for handling T4 templates.
To use T4 templates, please use Xamarin Studio or Visual studio in a separate solution (.sln)
Comments (25)
Add comment
All about bugs
View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.
Latest issues
- Errors are logged when importing an asset at a path with Firebase
- Entering too big of a number in 2D Renderer Lightmode Tags freezes the Editor
- Crash on GUIManager::DoGUIEvent when focusing on the Game view window on a specific project
- Asset creation in the Project Browser is not always undone/inconsistent when the undo shortcut is pressed right after creating an asset
- JobTempAlloc memory leak warning is thrown when the Player is shut down
Shpendicus
May 21, 2020 15:21
@LUKAZUNITY
why is it such a problem to include T4 into VS2019? Shouldnt Unity3D actually have nothing to do with whast VS does in that regard? SInce the entire stuff should go through the RTS from .NET , doesnt it?
unity_pa44BdWKm7Ga0A
Oct 17, 2019 21:54
@LAZER_13 this doesn't really work. The only thing what will happen now is that tt files show up in the csharp project. But no tool will be related and when you relate the text transform tool a new file will be generated instead of the existing file being overwritten.
I updated the orignal solution of @BDEV and this works fine for me:
https://github.com/njannink/T4ForUnity
Lazer_13
Oct 16, 2018 20:55
In Unity 5 there is now an option to include tt (or any other) extensions into the C# VS build. Not sure exactly how far back this goes or when it was introduced.
Can be found under Edit -> Project Setting -> Editor -> C# Project Generation
bdev
Dec 21, 2015 13:04
I made this code to implement this.
http://pastebin.com/vmGQJeLk
Should compile that to a dll and place it in a editor folder. Then whenever unity makes the sln it automatically incorporates .tt files if there is a matching generated file with a different extension (which is pretty much given).
But it would be good to see unity sliver that code into the editor officially. (T4 is great!)
lukaszunity
Sep 18, 2015 06:42
Use Xamarin Studio or Visual Studio with a separate solution (.sln) to create T4 templates.