Monday, June 30, 2014

Announcing CleaveFramework v0.1.1 (Open-Source Unity3D C# Application Framework)

I'm officially announcing the release of CleaveFramework v0.1.1  It's been in development for a little less than 3 weeks now and it is usable now in it's current state.

Public github repository here: CleaveFramework on Github.

There is some extensive documentation regarding the framework and it's specific features on the Github but here is the overview straight from the docs:

Why you use a framework
 This framework is meant to facilitate the implementation of a better structure for Unity3D game project code. It is by no means perfect, and I welcome any and all feedback and potential contributions in regards to improving its functionality and easing its usability. Thanks!
If you've ever finished, or worse started and not finished, a project using the Unity3D engine you realize the importance of well structuring your code. This framework was created to assist in maintaining that structure. The framework does not limit or shoehorn you into developing into a particular pattern however I personally believe it is most useful when utilizing a MVC/DI object pattern. You are however free from being constrained to one specific architecture pattern, be it DI, Service Location, or whatever magical Voodoo you personally have created.

Feature overview

The core functionality of the framework is two-fold based around an executable command delegate callback system and a SceneObjectData container for objects, automated system updating, and global data. Any amount of unique Objects are able to subscribe to commands and then implement callbacks upon execution of the command. Commands can be utilized to pass data to another object, as event messaging, or a virtual Execute() method can be implemented to directly manipulate the data within the command object itself before or after propagating to the delegates. Commands are pushed into the Framework via static methods which can perform commands on that frame, or after a given delay of frames or seconds. Commands can push other Commands during their execution giving the ability to create sequences of events.

I'm interested in some test users, feature requests, bug reports, potential contributors (of which we have received one so far), or any feedback in general regarding its usability and code quality.

No comments:

Post a Comment