Releases: EttienneS/Universal-LPC-Spritesheet-Character-Generator
Races, Grouping, Performance and Bugfixes
Features
Added 6 races that have to be selected on creation:
Human, Elf, Orc, Dark Elf, Skeleton and Zombie
When selected skin tones are then matched for body type (stop diffirent beard + hair color combos along with ears/noses not matching body color)
Add options to Get a random base character of a given race and then to add clothing/armor/weapons to it to still give a random character but one that makes a bit more sense.
Performance:
Brought back .net Image renderer
Added a Hybrid renderer that renders to an image and then loads that image as a Unity Texture2D object resulting in a ~10x speed boost on generation (even with characters that have 15+ layers)
Bugfies
Fix issue where weapons where weapons and shields were not being added at all
Fix several other objects being in wrong categories or not detecting at all (moving detected sheets from ~2700 to ~3100)
Unity Character Animation
Generate CharacterSpriteSheet objects that can be used to easily get a sprite generator to show the animated sprites:
Refactored the project again to remove some assemblies, removed the .net Image outputs to focus only on Unity (adding this back from Git history, should be easy if anyone ever needs this).
This should be the last feature release, I am using this in one of my projects and will continue to fix bugs and improve performance as I find issues.
Unity support
Added Unity Support
Split the code into 4 assemblies to make it easier to only use what you need:
LPC.Spritesheet.Interfaces.dll: All the common interfaces and enums live here, the only 'common' assembly of the lot.
LPC.Spritesheet.Generator.dll: All the generation code lives here, used to make random sprites.
LPC.Spritesheet.ResourceManager.dll: All the code to load the source spritesheets, also includes all the current sheets as embedded resources to enable it to be easily moved and loaded.
LPC.Spritesheet.Renderer.dll: All the code to actually output the sprite as either a Image for native .net consumption (needs System.Drawing) or as Texture2D objects that can be used in Unity
Note, I tested this with Unity 2019.3F5, if you are having trouble with this it may be easier to just include the Unity rendering script file in your project (UnityTexture2dRenderer.cs, RenderConstants.cs).
v1.0
First release of initial work to port the sprite generator to c#
See:
https://www.reddit.com/r/gameassets/comments/epir11/lpc_spritesheet_generator/