[WAITING REVIEW] the.laboratory - Forge

1281779--57867--$splash.png
Hello guys!

Today I submitted to AssetStore my C# Framework called ‘Forge’.
Basically it is a set of scripts to speed up the development of applications.

I could spam the entire post with the features, but…

I made available a slide presentation here [ forge_presentation - Google Slides ]

Also, everyone is welcome to join the Google+ Page here [ http://forge.thelaborat.org ]

AssetStore [ SOON ]

Thanks!

Before the AssetStore review, I’ll post these examples I built!
They will be in the final product and well explained in the project.

Activity: Update Engine (Threads Unity)
[Example02] This example shows the usage of the interfaces in place of MonoBehaviours. Basically it creates 25k executing nodes, so the user can see the perfomance of them running Update loops.
[Example03] This example shows the effect of running heavy tasks on a single for loop versus using the Activity’s Thread functionality.

Timer: Time based functionalities.
[Example01] Shows basic usage of the Timer class.

Tween: Script animation running on top of the Activity engine.
[Example01] Shows basic usage of the Tween class.
[Example02] Shows a more complex usage of the Tween class.

Interesting.

How well does it integrate with the unity serialization system ?
How easy it is to create custom inspectors and windows working with the new components ?

I kind of didn’t understand the serialization part.
But I would say, for instance, that you could create a ScriptableObject with Update/LateUpdate features if you wanted.
Or create a Component with inspectors of AnimationCurve, float value, string property,… and describe a tween animation with it!

Basically the Activity,Timer and tween features don’t need a Component attached. You can use them anywhere in your code and they simply work.
For the Activity part, the usage is simple:

  1. You can create either a MonoBehaviour or a normal class.
  2. Make it like this: ‘class YourComponent : MonoBehaviour, IUpdateable { … }’ or ‘class MyNormalClass : IUpdateable { … }’
  3. Register your instance in the engine to make it run the Update: ‘Activity.Add(this); //where ‘this’ is ‘IUpdateable’’

Also ‘Activity’ works like a base class for things you might want to have an Update loop. Timer and tween extends it for instance.

I think by the end of this weekend the framework will be available!

Thanks for your interest!

=== edit ===
Adding an image of usage of the Activity part.