Giter Club home page Giter Club logo

unity3d.incrementalcompiler's Introduction

Build status

Unity3D.IncrementalCompiler

Unity3D Incremental C# Compiler using Roslyn.

  • You can get faster compilation speed. Because it works as an incremental compiler
  • You can use C# 5 and 6 features.

This project is at an early development stage. And still now it can support only windows platform.

Setup

Unzip a release zip file to your unity project top-most directory. (Unblocking zip file before decompressing zip file might be required to avoid TypeLoadException of Unity-Mono.)

  • When Unity 4.x, use IncrementalCompiler.Unity4.zip
  • When Unity 5.x, use IncrementalCompiler.Unity5.zip

A release zip has a plugin dll which should be put at Editor folder and a few compiler related files which should be put at Compiler folder. Following before and after screenshot will helps for understanding install location.

InstallScreenshot

While an incremental compiler build your scripts, it saves log files to project/Temp directory. With these log files, you can see how it works.

LogFiles

Configuration

You can configure how this compiler work by settings window. Click "Assets/Open C# Compiler Settings..." in UnityEditor.

SettingsMenu

Not only settings but you can also check detailed log and information.

SettingsWindow

Also you can manually modify a configure file which is located at project/Compiler/IncrementalCompiler.xml

More information

FAQ

  • When incremental compiler is installed, Unity claims something wrong like:
TypeLoadException: Could not load type 'UnityEditor.Modules.CSharpCompiler' from assembly 'UnityEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null'.
UnityEditor.Scripting.ScriptCompilers.CreateCompilerInstance (MonoIsland island, Boolean buildingForEditor, BuildTarget targetPlatform, Boolean runUpdater) (at C:/buildslave/unity/build/Editor/Mono/Scripting/ScriptCompilers.cs:93)

This problem is usually caused by windows file blocking system. You need to unblock zip file before uncompressing this file.

Related works

  • An integration part between unity3d and incremental compiler is based on alexzzzz's works.
  • Mono MDB writer for roslyn is based on DavidKarlas's work.

unity3d.incrementalcompiler's People

Contributors

veblush avatar sugoidev avatar therzok avatar sirintruder avatar voxelboy avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.