Code guide

Unity project and C# code

What Unity versions are supported?

We developed the plugin in Unity 2020.3, but we believe that it has really minimal dependencies. It needs as packages the Newtonsoft JSON parser (which Unity 2020 provides by default in new projects) and TextMeshPro.

How is the plugin content organized?

The Homer folder should probably be placed in the “Plugins” folder of your project. It contains four folders:

  • Explorer: this contains the Unity sample scene that lets you explore and play your project in a way very similar to what you get in the web application. The classes in this folder are examples for study but are not required to run Homer in your projects.
  • External tools: this contains the libraries from the NCalc project which are required for Homer to run as it does in C# the equivalent of the “Eval” function of the browser JS.
  • HomerParser: this contains all the classes required to run Homer in your project.
  • ProjectData: this contains the JSON file and the C# variables class generated by the web editor for your project. These two files are those that you should update any time you (or anyone invited to your project) make(s) a change to the project in the editor.

How do I start using Homer in my project?

The simplest way:

  • Copy the whole plugin (Plugins/Homer) in your project.
  • Then check the HomerBasicUsageSample class that shows you the simplest way to start and links to more extended usages and can be quickly adapted to your needs.

How do I set and get variables between Homer and my project?

Just read and set any time property values of the HomerVars class.

Can I use Homer in my commercial games made with Unity?

Indeed, Homer is a free tool.