Category:Unity3D Coroutine and Tweening Framework
When:2015 - Present
Role:Solo Developer (Filament Games)
BeauRoutine is a coroutine and tweening framework for Unity3D. It offers feature parity with standard Unity coroutines, alongside a robust set of additional features, including...
  • Parallel execution of coroutines
  • Coroutine grouping and prioritization
  • Multiple update phases, including two customizable phases
  • Multi-layered timescaling, with support for per-group, per-object, and per-routine timescales
  • Highly customizable tweening system
It is easy-to-use, well-tested, and extensively documented. It's been publicly available on GitHub since 2016, is still in semi-active development, and has been used to ship over a dozen projects at Filament Games.
Category:Unity3D Serialization/Deserialization Library
When:2016 - Present
Role:Solo Developer (Filament Games)
BeauData is a serialization and deserialization library for Unity3D. With it, you can specify your data format in only a few lines of code, nest objects as much as you want, and serialize to multiple formats.
  • Easy definition of data format for serialized objects
  • Support for nested objects at any depth
  • Simple versioning implementation
  • Support for serialization of collections, enums, built-in Unity structs, subclasses, and custom data types
  • Support for XML, JSON, Binary, or GZIP binary
BeauData is well-tested and has seen use across many Filament projects since its creation. Among its applications have been save data, content management, and REST integration.
Category:String Expansion and Conditional Replacement Library
When:2017, 2019
Role:Solo Developer (Filament Games)
BeauMacro is a string expansion and conditional replacement library. With it, you can define syntax for string substitutions and condition checking, as well as execute on that.
  • Flexible system for defining custom formatting for replacements and conditional toggles
  • Generates a single macro and string bank for easy Unity serialization
  • Easy system for defining variables both globally and for individual queries
BeauMacro has been used as a tool for facilitating conditional replacements for languages with gendered nouns. Recent iCivics games have used it for their Spanish localizations to ensure nouns and pronouns are gendered appropriately depending on context.
Category:Unity3d Object Pooling Library
When:2017 - Present
Role:Solo Developer (Filament Games)
BeauPools is a easy-to-use object pooling library for Unity3d. It offers several types of pools as well as the ability to instantiate prefabs from a pool.
  • Support for fixed size, dynamic size, and prefab pools
  • Additional serializable prefab pool for easy setup
  • Ability to hook events into each phase of the object lifecycle (create, allocate, free, destroy)
BeauPools makes it easy to set up reusable pools of objects and customize them however you wish. Notable uses include as a backing for a visual effects system, along with management of physics resources in RoboCo.
RuleScript (working title)
Category:Unity3d Entity Scripting Framework
Role:Solo Developer (Filament Games)
Links:Blog Post | GitHub (Coming Soon)
RuleScript is an upcoming entity scripting framework for Unity3d. Based off the Event-Condition-Action model, it's useful for rapidly prototyping new interactions and scripting level sequences.
  • Easy to expose new triggers, queries, and actions to scripters
  • Extremely flexible condition and action system
  • Built-in and user-friendly rule table editor
  • Generic serialization system to aid in save state management
RuleScript is currently being used on RoboCo for level prototyping (see this blog post for more details). Once it has matured more as a tool I plan to release it on GitHub.