Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/Real-Serious-Games/Unity-Weld
MVVM-style data-binding system for Unity.
https://github.com/Real-Serious-Games/Unity-Weld
data-binding mvvm ui unity
Last synced: 3 days ago
JSON representation
MVVM-style data-binding system for Unity.
- Host: GitHub
- URL: https://github.com/Real-Serious-Games/Unity-Weld
- Owner: Real-Serious-Games
- License: mit
- Created: 2016-08-30T04:38:08.000Z (about 8 years ago)
- Default Branch: master
- Last Pushed: 2022-06-23T13:06:29.000Z (over 2 years ago)
- Last Synced: 2024-10-05T14:35:17.837Z (about 1 month ago)
- Topics: data-binding, mvvm, ui, unity
- Language: C#
- Size: 4.13 MB
- Stars: 498
- Watchers: 33
- Forks: 80
- Open Issues: 16
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
README
# Unity-Weld
[![NuGet](https://img.shields.io/nuget/dt/RSG.UnityWeld.svg)](https://www.nuget.org/packages/RSG.UnityWeld/)
[![NuGet](https://img.shields.io/nuget/v/RSG.UnityWeld.svg)](https://www.nuget.org/packages/RSG.UnityWeld/)
[![Build Status](https://travis-ci.org/Real-Serious-Games/Unity-Weld.svg?branch=master)](https://travis-ci.org/Real-Serious-Games/Unity-Weld)*[MVVM-style](https://msdn.microsoft.com/en-us/library/hh848246.aspx) data-binding system for Unity.*
Unity-Weld is a library for Unity 5+ that enables two-way data binding between Unity UI widgets and game/business logic code. This reduces boiler-plate code that would otherwise be necessary for things like updating the UI when a property changes, removes the need for messy links between objects in the scene that can be broken easily, and allows easier unit testing of code by providing a layer of abstraction between the UI and your core logic code.
A series of articles on Unity Weld has been published on [What Could Possibly Go Wrong](http://www.what-could-possibly-go-wrong.com/bringing-mvvm-to-unity-part-1-about-mvvm-and-unity-weld).
Example Unity project can be found here: [https://github.com/Real-Serious-Games/Unity-Weld-Examples](https://github.com/Real-Serious-Games/Unity-Weld-Examples).
## Installation
To install Unity-Weld in a new or existing Unity project:
- Load `Unity-Weld.sln` in Visual Studio and build it
- Copy `UnityWeld.dll` into your Unity project and place in any directory within `Assets`
- Copy `UnityWeld_Editor.dll` into your Unity project and place it inside an `Editor` folder within `Assets`Alternatively, just copy the `UnityWeld/Binding` and `UnityWeld/Widgets` folders into your `Assets` directory in your Unity project, and copy all the .cs files in `UnityWeld_Editor` to a folder named `Editor` inside your `Assets` directory.
## Getting started
Check out the [Unity-Weld-Examples](https://github.com/Real-Serious-Games/Unity-Weld-Examples) repository for some examples of how to use Unity-Weld.
[API docmentation](https://github.com/Real-Serious-Games/Unity-Weld/wiki) is on our wiki.
If you're interested in getting involved feel free to check out the [roadmap on Trello](https://trello.com/b/KVFUvGR0), or submit a pull request. Make sure to read our [contributing guide](CONTRIBUTING) first.