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.

Saturday, June 21, 2014

Totally on schedule monthly update

Pretty short update here.  I spent the past couple weeks porting what I had written in C++ to C# and the Unity engine.  Once I did that and got a lot of it working I decided to take some time and write a more generic framework to drive the application within the engine.  I've got a decent base of that now to work with and I've begun the job of refactoring the code I had written in the last few weeks to work with the new framework.  At this point I should be capable of using this base to drive the progress to a reasonably playable state, as long as things in my life do not change drastically in the next coming weeks.  I also wanted to share that I've made the code for the game itself available online for free as I develop it.  You're able to follow the code progress here: https://github.com/cleavetv/Architect if that's something you're interested in.  If you're able to get a copy of Unity (and assets) you can even build it yourself.  If anyone is interested in helping with compatibility version testing when I have builds ready let me know, I can provide compiled binaries for PC, Linux, or Mac.