The June sale is here! Save up to 70% on select products now through June 20.

Palm Generative Art Maker

Palm NFT Studio - Code Plugins - May 3, 2023

Develop game-ready generative art projects and NFT collections using built in modules for assigning traits, rarity, descriptions and metadata.

  • Supported Platforms
  • Supported Engine Versions
    5.1
  • Download Type
    Engine Plugin
    This product contains a code plugin, complete with pre-built binaries and all its source code that integrates with Unreal Engine, which can be installed to an engine version of your choice then enabled on a per-project basis.
  • The Palm NFT Studio Creator Tool enables a user to develop generative, game-ready 3D assets. These assets can be static or animated, and can be generated from a multitude of traits. 
  • Once a concept is established and 3D meshes are prepared, import those assets into Unreal Engine 5.1. From there, fine tune their positions, shaders, camera settings, and lighting.
  • The assets in your project can be assigned as traits, creating a trait key corresponding to unique values and metadata.
  • The custom naming and description module allows you to generate descriptions and description modifiers for the traits in your project.
  • The unique rarity weighting module allows traits to be weighted individually or using a tiered structure. 
  • The bulk render tool produces the final imagery and data before further external processing, iteration or minting. It also generates your desired amount of JSON documents. This tool allows for large quantities of renders to be batched with an upper limit of 20k.


Output Formats: Single PNG /JPEG still image, PNG/JPEG movie image sequence, .mov ProRes422 video file, and more. Setting defined via Movie Render Queue Pipeline Assets + JSON file


Trait Types

mesh - a 3D model (UE Type: Static Mesh)

material - materials to be applied to 3D models (UE Type: Material Instances)

background - materials to be applied to the background actor (UE Type: Material Instances)

modifier - other elements that manipulate the JSON document

animation - root animations that move the entire generative scene (UE Type: Level Sequence Actor)


Session Manager Block

The required first step of any new project. Creates, saves and displays sessions - a session is an individual project. 


Asset Ingest Block

The asset ingest block imports project 3D models and textures into Unreal Engine from a file directory. 

  • Trait Assignment
  • The assignment block uses config files to allow users to assign UE assets to traits, a critical step in the pipeline process that connects user-generated assets with their referenced traits.


Edit Data Block

The edit data tool lets you edit trait values for one or many traits in a spreadsheet layout. This creates a list of current traits with existing and any missing data, including a preview of the UE object assigned to it. 


Description Manager Block:

The description manager lets you edit descriptions assigned to traits and used with dynamic variables when generating metadata. The editor lets you add, delete or edit up to 20 variations for a single trait.


Metadata Generator Block:

The generator has two functions: (1) it helps create keys (traits) and values for those keys, (2) then uses those traits to generate a set number of working JSON files for later rendering.


Step 1: Choose Data

  • Keys: Create keys by entering one into the input field and hitting “Add”
  • Value: To add values to the new keys, select a desired key from the dropdown, then fill in the data.
  • Data Included (Type, Selected Asset, Value, Display Name, Visual Key, Include in Output, Backend Key, Weight, Rarity, Rarity Preset, Description Modifiers, Material Slot Name, Generate Random Number)
  • “Add Trait to create a database entry. Then continue to add more values to the same key or to other keys.


Step 2: Descriptions:

  • This adds descriptions generation. You can add multiple variations, edit and delete them.
  • Dynamic variables use key names to replace text.


Step 3: Generate Metadata

Generates the working JSON documents and exports them as .json files into the /generated project folder.


  • Choose a naming convention
  • Choose how descriptions are added
  • Enable the Random Number system
  • Use Weights?
  • Choose the number of documents to generate


Metadata Preview Block:

The preview tool takes a JSON document, finds and analyzes all assets referenced by it and assembles the 3D scene. The goal is to allow anyone to preview items and render preview content.


  • You can either load existing JSON documents or choose a single .json file to import.
  • The preview section also lets you filter by key:value pair. Once selected, the tool chooses a random item that includes the selected value
  • On selection, the item is assembled into the scene and viewport. This includes assets and materials in the level outliner.
  • Once assembled, the tool also breaks down all referenced assets and assignments. If assignments are missing, they appear in red.
  • The render section lets you render a preview video, and provides some basic creative controls to quickly produce output content. You can override the background material, lighting and camera position. Preview renders are placed in the “preview-renders” folder:


Bulk Render Block:

The bulk render tool is the final step in the pipeline, and produces the final imagery and data before further external processing, iteration or minting. It requires the desired amount of JSON documents either generated within Unreal using the METADATA GENERATOR tool and/or placed in the /generated folder.


  • Preview Camera toggles the main camera cinematic mode in the editor viewport
  • Select Main Camera selects the main camera in the outliner
  • Edit Output Format Preset opens the currently selected Render Queue Pipeline Asset for further editing
  • Output Folder: pre-populated from the session data, but can be overwritten. Defaults to session output directory.
  • Create Folders: place each item inside its own folder
  • Output Format: Single PNG still image, PNG movie image sequence or .mov ProRes422 video file. Setting defined via Movie Render Queue Pipeline Assets.
  • Test Render can be enabled to render a few test items to check your settings before committing to rendering a potentially large amount of items. 
  • Render Level Sequence: the UE level sequence to use to control camera motion, position and sequence length. LS_Preview is used by default, manipulated and/or duplicated. The same sequence is used for all renders.
  • Batch Render: allows batch rendering of metadata within a given number range. 
  • Rendering
  • When you hit render, the tool goes through each item one-by-one, and picks out all the models, materials and modifiers to construct the 3D scene for each item:
  • It then uses the render queue to render the content and places both video/image files and final sanitized .json document into the “/final” folder.


Metadata Editor Block:

Metadata editor lets you edit existing generated metadata - either from within the UE pipeline or from a folder of .json files in the project /generated directory. 

The tool will load all items and present you with two options:


  • Edit Item - edit an individual item and re-save it to the same data source
  • Conditional Edit - edit all items with certain conditions and re-save them to the same data source

To edit an individual item, select the item by name, or search via its name or serial number. 


Metadata Constructor Block:

Enables creative prototyping of different key:value combinations. Data is based on your config, so ensure config data exists before using this tool. Any prototyping done with this tool is not saved, so is purely for creative exploration.

Technical Details

Features:

  • Creates, saves and displays sessions
  • Imports project 3D models and textures into Unreal Engine from a file directory
  • Use config files to allow users to assign UE assets to traits (Mesh, material, background, modifier, animation, +)
  • Edit trait values for one or many traits (includes a spreadsheet layout and import/export options).
  • Create and edit descriptions and descriptions tied to traits (includes dynamic variables)
  • Assign weighting and rarity to traits (trait presets and tiers available)
  • The Preview Tool reads created JSON file, finds and analyzes all assets referenced by it, and assembles the custom generated 3D scene in editor for previews and testing
  • Bulk render files with custom export settings (Image + JSON metadata)
  • Edit existing metadata
  • Creative custom prototyping and 1:1 creation


Code Modules:

  •  PalmCreatorTool


Number of Blueprints: 13

Number of C++ Classes: 5

Network Replicated: No

Supported Development Platforms: Windows

Supported Target Build Platforms: Windows, MacOS

Documentation: Palm Generative Art Maker Documentation

Important/Additional Notes: Created by Palm NFT Studio 2023