LogoLogo
ThreeKitDeveloper HubForumsSupportStatus
  • Guides
  • Documentation
  • Releases
  • Platform Documentation
  • Project Data
    • Platform Landing Page
    • Basic Concepts
      • Environments
      • Organizations
      • Attributes
        • Arrays
      • Tagging
      • Naming Conventions
      • Players
      • Branching
      • Alerts and Warnings
      • Supported Browsers
      • ThreeKit Platform Architecture
    • Catalog
      • Items
        • Item Bulk Edit
        • Item Variants
      • Data Tables
      • Item Rules and Logic
      • Publishing
    • Assets
      • Asset Management
        • Importing Assets
        • Exporting Assets
        • Folders
      • Asset Editor
        • Editor Layout Modes
          • Layout Editor
            • Local vs Global Transform
          • Logic Editor
      • Nodes
        • Common Properties
          • Node Tags
        • Helpers
          • Nulls
          • Model References
          • Connectors
        • Lights
          • Point Light
          • Directional Light
          • Spot Light
          • Area Light
          • Hemisphere Light
          • Shadow Plane
        • Cameras
        • Shapes
        • Annotations
        • Layout Containers
      • Scenes
      • Materials
        • Physical Material
        • Proxy Materials
        • Multi Material
        • Gem Material
        • JSON Configuration
      • Textures
      • Canvases
      • Composites
    • Operators
      • PolyMesh Operators
        • Array
        • Bend Deformer
        • Map Override
        • Stretch
        • Physics (Collision Detection)
      • Material Operators
        • Falloff
        • Tiling Override
        • Triplanar Mapping
        • Template Override
      • Image Operators
        • Canvas Composite
        • Canvas Fill
        • Canvas Linear Gradient
        • Canvas Text
        • BlackWhite
        • Posterization
      • PostEffects Operators
        • Bloom Pass
      • Comp Layer Operators
        • Vray Normals Properties
        • Vray Bump Normals Properties
    • Stages
      • Stage Effects
        • Turntable
    • Logic
      • Conditions
      • Actions
      • Queries
        • Node Queries
        • Metadata Value Query
        • Asset Query
        • Datatable Query
      • Custom Scripts
    • Virtual Photographer
      • Create Renders
      • View Renders
      • V-Ray Integration
    • Augmented Reality
      • AR Settings
  • Org Setup
    • Admin & Security
      • Org Profile
      • Users & Permissions
        • Threekit Sign-in
        • Members
        • User Profile
      • Tokens
      • Service Accounts
      • ISO Certification
      • Org Migration / Data Transfer
    • Jobs System
    • Orders
      • Orders List
      • Configurations
    • Analytics
      • Advanced Buyer Analytics Reports
      • Player Views
    • Project Settings
      • Features
      • Languages
Powered by GitBook
On this page

Was this helpful?

Edit on GitHub
  1. Project Data
  2. Assets
  3. Materials

JSON Configuration

PreviousGem MaterialNextTextures

Last updated 1 year ago

Was this helpful?

The following instructions are not recommended anymore, but they can be useful to understand some existing implementations.

All visual assets can be made configurable in and of themselves, providing a greater degree of flexibility and reusability. This is especially useful when a Catalog contains a number of 'families' of finishes/surfaces/fabrics.

Configurable Material

Materials such as leather, suede, etc. are often times offered in any number of colors. The underlying look and feel of the material itself does not change from color to color; for example, you would expect red leather to feel the same as blue leather. It follows then that a 3D artist would not want to maintain dedicated assets per color of material. Doing so is neither efficient, nor easily scaleable. It is far easier to maintain a single asset for a leather material, and incorporate a configurable color attribute via Logic Mode. Said color attribute may then be used to address the color requirements of leather within the Catalog.

Assume a leather material has been uploaded.

Continuing the story line from above, the leather is offered in both blue and red. Blue Leather and Red Leather must exist as Items within the Catalog. In order to accomodate this requirement the following steps are taken.

Prepare the Material Asset

1.) From the Leather Material Asset, Launch the Editor and enter Logic Mode

2.) Create a Color Visual Attribute

3.) Create a corresponding rule to modify the baseColor of the Leather Material

(be sure to set the Toggle to "Attribute" with the "Color" Attribute selected)

Create the Catalog Item

4.) Create a Blue Leather Item, referencing the Leather Material 5.) Set the Color Attribute by way of the 'Asset JSON configuration' field and Save

Setting Textures on Configurable Materials

The 'Asset JSON configuration' field on Catalog Items may also be used to set/swap maps on a material. To do so, the unique identifier of the desired texture is used within the 'Asset JSON configuration' string.

Suppose a Metal Finish was offered in few different stamped patterns. It might then be necessary to swap the roughness map for each of the stamped patterns (in addition to other reference images). Similar to the workflow above, an Attribute would be created on the appropriate metal material asset:

With a corresponding rule targeting the 'Roughness Image Asset':

Which can be set via JSON to accomodate the required Items in the Catalog:

Of note, the 'Asset JSON configuration' field makes use of the unique identifier (present in the URL) referencing the necessary image (Texture Asset) from the Asset library: