Sprout - Foliage Creation Tool
Introducing the Sprout Plugin! Our goal with Sprout is to take Unreal’s many powerful systems, mash them together, and bring game-ready foliage generation into Unreal. Meshes, LODs, Leaf Cards, Wind Animation data, Collision, Destruction, all without leaving engine.
We are working to make Sprout easy for both artists and developers to dig into. The core of Sprout is procedural, but there are a bunch of hand editing tools that artists can use to customize their results, even in the levels they are working on.
All of this is based on a data driven design, similar to Niagara, to let users build complex stuff quickly and easily. Users can code their own modules to simulate forces, set mesh vertex colors, spawn leaves, kill branches, define uv densities, and more.
The results you get from the simulation can then be completely hand edited. Branches are represented by splines that can be edited in the Sprout editor or in level. They can also be freely transformed, reparented, deactivated, resimulated, etc. This is also extensible, so users are able to write additional tools to fit their needs.
If you are interested in the project, have questions, or just want to keep up with updates to Sprout we would love it if you checked out the links below.
Sprout- Procedurally create and hand edit foliage from start to finish without ever leaving Unreal Engine.
- Custom Blueprint or C++ modules shape each step of foliage generation.
- Spline Components are used to quickly and easily hand edit branches or grow new ones.
- Sprout Mesh Builder allows users to quickly build and render leaf meshes.
- In Engine creation of game-ready static meshes without leaving engine.
- Sprout Graph - Foliage is organized through a graph editor. Build up your hierarchy and easily activate, deactivate, hide or lock your results.
- **Procedurally Generate Foliage **- Using a Stack System, users can take advantage of a data driven and modular approach to foliage generation, writing, replacing and combining modules to get the results they are looking for.
- Hand Editing - Sometimes, an artist’s touch is needed. Trim branches, grow new ones, and utilizeSimple Spline Edit to step up and down “subdivision levels” to quickly and easily edit splines while preserving their detail.
- Node Presets - Save presets of often used nodes to quickly block in foliage.
- **Final Assets Without Leaving Engine **- Create Static Meshes with custom LODs and Pivot Painter textures without ever leaving engine. Also, Pivot Painter Generators are Blueprintable to allow users to store any data they want into a pivot painter texture.
- Create Meshes and Textures - Using the Sprout Mesh Builder, users can quickly build and render branch textures, and create leaf cards all from within the engine. We also want to ensure that working with existing Atlases is simple and fast.
- Niagara Integration- Users can read sprout foliage data directly into Niagara’s particle systems.
**Custom FBX Exporter **- Sprouts can be exported with their hierarchy preserved, allowing users to make additional changes in whichever tools they use in their pipeline.
More Than Just Foliage - A modular, spline based approach allows users to extend their creativity beyond just foliage
Write Custom Tools - Most everything you see here is extensible! You can extend or write your own spawners, modules, mesh generators, texture capturers, branch editors, and more in Blueprint or C++. We’ve tried hard to make sure every part of Sprout can be altered.
Spawn From Scans - We want users to be able to use their Photoscanned trunk meshes to generate trees. We have some work to do on the UV and material side of this, but we’re happy with the results so far.
Chaos Integration - Trees are their own beast when it comes to destruction and with the introduction of Chaos, who doesn’t want to blow up some trees? While not ready to show off yet, you can expect to be able to turn Sprout Data into Geometry Collections that use the hierarchy of your foliage for accurate fracturing of foliage.
Polish - We want Sprout to run smoothly, to be easy to understand and be familiar to use. This is gonna take a good bit of polishing but represents the largest part of the work we have left.
Learning - We will be making tutorial videos and provide documentation to get new users up to speed with Sprout.
Currently in developmment with plans to release on the Marketplace. We are hoping to enter a beta period in the next couple months.