Welcome to FmvMaker v2 (Experimental).
This branch introduces a completely new, node-based workflow for creating FMV games in Unity. It replaces the old JSON/Visual Scripting system with a custom Graph Editor based on Unitys Graph Toolkit, making it easier to visualize and build your game logic without writing code.
⚠️ Warning: This is currently EXPERIMENTAL, due to Unitys Graph Toolkit being integrated into the engine in upcoming versions. Features may change, and bugs may occur. Please report any issues you encounter!
Follow these simple steps to create your first FMV sequence, based on the Sneak Peek Video.
- Import your video files into Unity.
- Place them in a valid folder (e.g.,
Assets/FmvMaker/Videosor any folder you prefer).
- Right-click in the Project window.
- Select Create > FmvMaker > FmvMaker Graph.
- Name your graph (e.g.,
NewGameGraph). - Double-click the asset to open the Graph Editor.
- Add Nodes: Right-click or press
Spacebarin the editor to add nodes. - Start Node: Always begin with a
Start FMV Node. - Play a Video: * Add a
Video Node.- Connect the
Start Nodeoutput to theVideo Nodeinput. - Select Video: Click the
Video Node. In the Graph Inspector (right side), assign your video clip to theVideo Clipfield.
- Connect the
- Create Choices:
- Add a
Video Context Node(this acts as a hub for choices). - Click "Add Block" in the node to create multiple outputs (Choice 1, Choice 2, etc.).
- Connect each output to different
Video Nodes. - Position Buttons: In the Inspector, adjust
Relative Screen Position(X/Y from 0 to 1) to place the click zones on screen.
- Add a
- Open the
FmvMakerDemoscene (or dublicate it and build your own scene). - Select the
FmvMakerGameObject. - Locate the
FmvVideocomponent in the Inspector. - Drag your NewGameGraph asset into the
Runtime Graphfield. - Press Play in Unity!
- Native Graph Editor: No more JSON editing. Visualize your entire game flow in a dedicated window.
- Integrated Inventory: * Create items via Create > FmvMaker Inventory Item.
- Unlock Paths: Set "Needed Item" on a video node to restrict access until the player has the specific item.
- Reward Players: Set "Giving Items" on a node to add items to the inventory upon watching.
- Portals: Create clean loops (e.g., returning to a dialogue menu) without messy wires crossing the screen.
- Save/Load System: Built-in support to save inventory state and progress automatically.
| Feature | Version 1 (Legacy) | Version 2 (Graph Tool) |
|---|---|---|
| Workflow | Manual JSON text files | Visual Drag-and-Drop Editor |
| Setup Time | High (prone to syntax errors) | Instant (Plug & Play) |
| Logic | Generic State Machine | Dedicated FMV Logic Nodes |
| Conditionals | Hard to implement | Built-in Item Checks |
| Inventory | Basic / External | Native & Integrated into Graph |
If you find this tool useful or want to support its development:
- Feedback: Open an issue on this repository.
- Sponsor: Support the developer on GitHub Sponsors or Patreon.
- Community: Join the discussion in the comments of the Preview Video.
Happy Creating!
