Download Download
Blender Panel Splash
Quick Start Guide

Install the Blender Addon to get started:

  1. Go to Edit > Preferences > Add-ons and click the down arrow ˇ in the upper right.
  2. Click Install from Disk... and select the Folded Paper Engine Blender addon zip file.
  3. Click Install from Disk.
  4. Restart Blender.

Create some ground to stand on:

  1. Once back in your Blender file, add a Mesh Cube to the scene.
  2. Make it a static body for Godot by adding -col to the end of the name.
  3. This is already supported by Godot. See all of the options: Godot node type customization.

Make a basic Player object with Folded Paper Engine:

  1. Create a new mesh object (a sphere is fine).
  2. Select the sphere and press N to open the viewport properties panel.
  3. Go to the Item tab.
  4. Under Folded Paper Engine in the Item tab, check Player.
  5. CONGRATS! You now have a player!

Export a GLB/GLTF for use with Godot:

  1. Go to File > Export and choose glTF.
  2. Check Remember Export Settings. (You'll thank me later 😊)
  3. Click the down arrow ˇ next to Include and check the box that says Custom Properties.
  4. Optionally, check the boxes for Cameras and Punctual Lights if exporting cameras and lights.
  5. Name the file and choose a location inside your Godot project folder.
  6. Click Export.
  7. Your file is now ready to be used by Folded Paper Engine in Godot. See the Godot setup here.
Blender Panels

Scene

  • Sky Color: (Color) Select the sky color for the scene.
  • Background Music: (Files) Select the background music for the scene.
  • Background Music Volume: (Float) The volume of the background music in decibels.
  • Gravity: (Float) The gravity of the scene in meters per second squared.
  • Scene Load Events: (Collection of Event Property Group) Execute commands when the scene is loaded.
  • Scene Unload Events: (Collection of Event Property Group) Execute commands when the scene is unloaded.

Folded Paper Engine

  • Player: (Boolean) Create a player.
  • Character: (Boolean) Create a character.
  • Physics: (Boolean) Apply physics to this object.
  • Invisible: (Boolean) Set to true to make the object invisible.
  • Water: (Boolean) Set to true to make the object a water plane.
  • Sprite Animate: (Float) Set the sprite animation speed. All child node will be cycled through to create a sprite animation.
  • Trigger: (Boolean) Set to true to trigger the configured commands (from the command palette) on interaction.
  • Speaker: (Boolean) Make this item a 3D speaker.
  • UI Element: (Boolean) Make this item a UI element.
  • Sub Scene: (Boolean) Load a sub scene in this item.
  • Holdable: (Boolean) Make this item holdable.
  • Groups: (String) CSV: The groups for this item. Used in your own custom code.
  • Script Path: (File) Set the script for this item. WARNING: Only use this if you know what you are doing, this will overwrite any existing script/functionality.

Scene Events

Trigger Events

  • Trigger Groups: (String) The trigger groups for this item.
  • Trigger Events: (Collection of Trigger Event Property Group) The Scene Events that will be triggered when this item is a trigger.

Inventory Item

  • Inventory Item Kind: (String) The Inventory Item Kind.
  • Inventory Item Quantity: (Integer) The Inventory Item Quantity.

Speaker Settings

  • Speaker File: (File) Path to the audio file for this speaker.
  • Speaker Loop: (Boolean) Loop the speaker audio.
  • Speaker Volume: (Float) Volume of the speaker in decibels.
  • Speaker Max Distance: (Float) Maximum distance for the speaker to be heard.
  • Speaker Autoplay: (Boolean) Autoplay the speaker audio immediately.

Character

  • Walk Speed Multiplier: (Float) A multiplier for the character's walk speed.
  • Run Speed Multiplier: (Float) A multiplier for the character's run speed (Which is already affected by the Walk Speed Multiplier).
  • Jump Force Multiplier: (Float) A multiplier for the character's jump force.
  • Idle Animation: (String) The name of the idle animation.
  • Walk Animation: (String) The name of the walk animation.
  • Run Animation: (String) The name of the run animation.
  • Jump Animation: (String) The name of the jump animation.
  • Talk Animation: (String) The name of the talk animation.
  • Wandering Bounds: (Node) The object representing the area where the character can wander.
  • Face Motion Direction: (Boolean) Face the motion direction.

Physics

  • Mass: (Float) Set the collision object mass.
  • Friction: (Float) Set the collision object friction.
  • Bounciness: (Float) Set the collision object bounciness.
  • Continuous Collision Detection: (Boolean) Enable continuous collision detection.

Folded Paper Engine (Animation)

  • Autoplay: (Boolean) Set to true to play this animation automatically.
  • Loop: (Boolean) Set to true to loop this animation.

Folded Paper Engine (Frame Events)

Folded Paper Engine (Material)

  • Render Priority: (Integer) Set the render priority for this material.
  • Reflective: (Float) Set the reflectivity of this material.
  • Replace With Material: (File) Replace this material with the specified material.

UI Element

  • UI Cursor: (Boolean) Make this item a UI cursor.
  • UI Cursor Depth: (Float) Set the UI cursor depth.
  • UI Cursor Select Animation: (String) The name of the UI cursor select animation.
  • UI Cursor Look At Camera: (Boolean) Make the UI cursor always look at the camera.
  • UI Option: (Boolean) Make this item a UI option.
  • UI Option Command Delay: (Float) Set the UI option command delay in milliseconds.

Sub Scene

  • Scene File: (File) Path to the scene file for this sub scene.
  • Auto Load: (Boolean) Automatically load the sub scene when the parent scene loads.
  • Pause: (Boolean) Pause the parent scene when the sub scene is loaded.
  • Resume On Unload: (Boolean) Resume the parent scene when the sub scene is unloaded.
  • Unload Delay: (Float) Delay in milliseconds before unloading the sub scene.

Player Controls

  • Third Person: (Boolean) Enable full third person controls.
  • First Person: (Boolean) Enable first person controls.
  • Can Hold Items: (Boolean) Enable holding items.
  • Hold Zone Distance: (Float) The distance from the player to the area where items can/will be held.
  • Hold Zone Size: (Float) The size of the area where items can/will be held.
  • Hold Zone Scene: (File) A scene to load into the player's hold zone. The parent of this scene will be a HoldZone with holdable item related signals.
  • Standard Camera Height: (Float) The standard height of the camera.
  • Standard Camera Distance: (Float) The standard distance of the camera.

Activity Property Group

  • Activity Type: (Enum) The type of activity.

Event Property Group

  • Event Name: (String) The name of the event.

Commands Property Group

  • Dispatch Event: (String) The name of the event to dispatch.
  • Load Level: (File) Load a level on trigger.
  • Animations: (String) CSV: Play animations on trigger.
  • Stop Animations: (String) CSV: Stop animations on trigger.
  • Speaker Trigger: (String) True to play this item as a speaker when intersecting with it. Or the name of a specific speaker to play.
  • Speaker Trigger Self: (Boolean) Play this item as a speaker when intersecting with it.
  • Activate Camera: (Node) Activate the selected camera.
  • Reactivate Player Camera: (Boolean) Reactivate the player's camera.
  • Deactivate Player Controls: (Boolean) Deactivate the player's controls.
  • Reactivate Player Controls: (Boolean) Reactivate the player's controls.
  • Load Sub Scene: (Node) Load a specific sub scene by item name.
  • Unload Sub Scene: (Node) Unload a specific sub scene by item name.
  • Unload This Sub Scene: (Boolean) Unload this scene as a sub scene.
  • Start Conversation: (Files) Start one of the specified conversations. The conversation is selected by the names of the characters involved and the required characters list in the conversation.
  • Pause Specific Activities: (Collection of Activity Property Group) Pause the specified game activities.
  • Resume Specific Activities: (Collection of Activity Property Group) Resume the specified game activities.
  • Delete By Group: (String) Delete items in the specified group.

Scene Event Property Group

  • Event Name: (String) The name of the event.
  • Commands: (Object of Commands Property Group) The commands to execute when the event occurs.

Trigger Event Property Group

  • Trigger Type: (Enum) The type of trigger (When/why the event is triggered).
  • Event Name: (String) The name of the event.

Frame Event Property Group

  • Event Name: (String) The name of the event.
Type Legend
  • String: Hi there!
  • Integer: 1, 2, 3, ...
  • Float: 1.0, 2.0, 3.0, ...
  • Boolean: true or false
  • Node: MyCube
  • File: res://...
  • Files: res://...,res://...,res://...
  • Image: res://.../texture.png
  • Images: res://.../texture.png,res://.../texture.png,res://.../texture.png
  • Collection: Multiple items
  • Object: An item with a set of settings and values
  • Enum: One, Two or Three
  • Color: #FFFFFFFF
  • CSV: One,Two,Three