Search Feedback

20
votes

Split big projects into smaller ones

General

-

-

Hi! I'm fairly new to unity but am a professional C# programmer. One thing I would like to see in Unity is to be able to have multi-project solutions, just like a regular C#/VB/C++ project.

Why: Though we can neatly organize assets in folders, it's simply not enough. Folders don't allow to isolate different parts of the project from others. It quickly becomes easy to get lost in the hundred of folders and sub folders. Also, it makes it easy when working in teams to edit assets you weren't supposed to ('belonged' to someone else)

How: I'm sorry to say I don't have a detailed idea of how this could be done (you guys would know better I'm sure) but I'm thinking of something like this :

-By referencing an other project, you can USE the assets (drag them in a scene) but you cannot edit them (i.e. can't edit the scene but can load it, can drag a prefab and use it but cannot "apply" changes to it)
-Referenced assets would not appear under the "Project tab" but in their own tab (there's room after all)
-As for scripting, you would need to reference the DLL just like a regular C# project.

This would make it MUCH MUCH easier to isolate different elements of a game (like splitting the logic away from static assets)

This would also allow to better DLC development. (You could opt to build this new project as an Asset bundle, for example)

Thank you!

Comments (1)

  1. 1ef09908cafdbc8ba06057af5b15ef30?d=mm

    npatch

    Aug 18, 2017 08:03

    This has been done in 2017.1+. Assembly Definition Files which aid the generation of a solution split in various projects.

Your opinion counts

Help us make things better. Share your great idea for improving Unity or vote for other people’s.

Log in to post a new idea

Categories

All

(9110)

2D

(224)

Ads

(40)

AI & Navigation

(68)

Analytics

(96)

Animation

(309)

Asset Store

(229)

Assets

(493)

Audio

(158)

Cloud Build

(95)

Collaborate

(32)

Docs & Tutorials

(198)

Editor

(2102)

Everyplay

(13)

Game Performance Reporting

(13)

General

(819)

Graphics

(768)

GUI

(365)

Input

(146)

Licensing

(75)

Networking

(158)

Physics

(343)

Platforms

(405)

Profiling & Optimization

(69)

Runtime

(162)

Scripting

(1022)

Terrain

(150)

WebGL

(131)