Overview

As a cross-platform development tool, Unity has been widely used in games, animation, and architecture. The power of Unity mainly comes from the convenience and great extensibility brought by Unity Editor.

Almost everything we can see from the interface of Unity is derived from Unity Editor. In other words, almost everything - for example, menu bar, inspector and any other windows - can be modified or extended by script using Unity Editor Extension.

Obviously, Unity Editor Extension can be used to develop Unity tools, and furthermore, promote the process of Unity development.

Project Scope

Unity Editor Extension Documentation

By doing some research, it is found that current available Unity Editor documentations are not very clear or friendly. Therefore, as a Unity developer who is familiar with Unity Editor, I created an organized documentation/tutorial for those who are new to Unity Editor and want to make tools.

Duration: 1 month

Role: Programmer

Platform: Unity

Standardized Unity Tool Development Prototype

In actual development process, developing Unity tools to meet some specific and professional needs may require high labor and time costs. Through my final paper in undergraduate school, I came up with the conception of the standardized Unity development tool platform which can simplify the development process of Unity tools by hiding the extension logic, so that developers can spend more time on actual development.

The paper completes the basic construction of the platform prototype through static code analysis, requirements analysis and system design. Then the Vue.js framework is used to complete the implementation of the prototype, and realize functions such as menu bar extension, inspector extension and editor window extension. The prototype can quickly generate Unity tools with basic functions, and export editor scripts that can be flexibly used by users, which can further meet their needs through refinement.

Duration: 4 months

Role: Programmer, designer

Platform: Web

Contribution

Unity Editor Extension Documentation

  • Did research on Unity tool developers’ working process and content
  • Read through current available documentations about Unity Editor Extension
  • Established an organized documentation/tutorial and respective demo scripts

The documentation made using Notion can be viewed via this link.

Standardized Unity Tool Development Prototype

  • Completed static code analysis, requirements analysis and system design
  • Implemented a prototype for Unity tool making with functioned menu bar extension inspector extension and editor window extension
  • Created a basic exporter that can export editor scripts as C# or JSON file

The tool development prototype github repository can be viewed via this link.

Here are some screen shots of the prototype interface and Unity tool made out of the prototype:

  • Prototype interface

  • Unity tools, using menu bar extension, inspector extension and editor window extension, respectively