RenderDraw Documentation
  • About RenderDraw
    • What is RenderDraw?
    • RenderDraw Philosophy
    • Key features and benefits
  • Introduction
  • Getting Started with RenderDraw
    • Installation
    • Adding a RenderDraw License to a user's account
    • RenderDraw Permission Sets
      • Using user access policies for automated permission set & License Assignment
    • Relating Drawings to a Salesforce Record
    • CAD Conversion
      • Setup of CAD Conversion
      • UI CAD Conversion for Salesforce for Salesforce Admins
      • Version 1
        • CAD Conversion API (Direct Use)
          • Example input for Conversion
      • Version 2 (proposal)
        • Purpose
        • Sample File Input Conversion
  • Diving deeper
    • RenderDraw Architecture
      • RenderDraw Components
      • Storage of your Drawings
        • Connecting to your drawings
      • Supported Formats
    • Relationships
      • Why Metadata Matters
        • Advanced Metadata Relationships
          • Child Lookup
          • Parent-Child Relationships
      • Record Management
        • Scene Settings
    • Performance Considerations
    • Development Resources
    • Using Components on LWR Digital Experiences
    • Utilizing Interactions within Lightning Flow
    • Fixing Common Issues
  • Usage Scenarios
    • Use Cases
      • 2D
        • Part Finder
          • Data Setup for B2B
            • Choose where you want to display your Product Catalogs
            • Setup Field on Catalog Object
            • Setup Group and Files
          • Parse PDF Catalogs to attach images
          • Base setup for initial catalog page
            • Sharing of Files
            • Clone Pages
          • Create Callouts for Parts
          • Utilize OCR to highlight callouts
          • Optionally show inventory or availability based on data
          • Create Interactions for hover and click actions
          • Create a reusable, connected Datatable
        • Custom 2D App Development using Salesforce
        • 2D Admin Guide (Clicks, not Code)
          • Setting your object up for 2D visuals
          • Setup 2D Scene Settings for a record
          • Add a background image to your scene
          • Adding Droppable Areas and Drop Zones to a Scene
          • Adding Draggable Items to a Scene
          • Relating Components to Salesforce Data
          • Add a DataSource to a 2D scene to bind data
          • Adding Layout Drawing menu to your component (Floorplan & Spatial Drawing)
          • Linking your clicks to Actions / Flows
          • Visual Rules engine
          • Hover Actions and Popovers
          • Change your Layout Drawing visuals based on Salesforce Data in a DataSource query
          • Enable users to take snapshots
          • Show additional Drawings with your 2D Canvas
          • Use Color Selection to add clickable regions to your 2D Scene
          • Use OCR to add Clickable regions to your 2D scenes.
            • Enable Azure OCR in your Remote Site settings & Metadata
            • Add Layout Areas using OCR
        • Data interaction within a Flow
          • Modifying Canvas with APEX
        • 2D User Guide
          • Take a snapshot
      • 3D
        • Admin
          • Adding Components to your Lightning Pages
          • Examples
            • Asset Management
            • Product Visualization
            • Setup for 3D Visual Configuration Scenarios
              • Salesforce CPQ
              • Conga CPQ
              • Custom Configuration Scenarios
            • 3D Product Photography
          • Setup 3D Scene
            • Visual Scene Setup
              • Interaction Events
              • Grouping
              • Labeling
              • Actions
              • Attributes (Look & Feel)
            • Configuration
              • Interaction Events
                • Action Items
                • Conditions
                • Steps
        • Developer
          • Custom 3D App Development using Salesforce
        • End-User Usage
          • View Related 3D Converted files on a record
          • 3D Annotations & Comments
      • CAD Conversion
        • CAD Conversion using Admin UI
          • Prior to getting started...
          • CAD Conversion UI within Salesforce
        • Automatic Conversion in Salesforce
          • Integration User
          • Remote Site Setting
          • Setup Connected App
          • Setup Custom Settings for Triggering Conversion
          • Test your Files
          • Extending the integration using Platform Events
      • RenderDraw Interactive Maps
        • Admin Setup
        • End User Usage
      • Other Apps
        • RenderDraw Data Utilities
          • Essentials
            • Swiper
            • Flow Image display
            • QR Code Generator
            • QR Code Scanner
          • Standard
            • 360º Virtual Tours
              • Administration
              • Usage
            • AnnotateIt! Images
              • Admin's Guide to AnnotateIt! components
              • Permissions / Authorization
            • Standalone Datatable
          • Advanced
            • AnnotateIt! PDF Editor
            • Parsing PDFs
            • CSV Importer
        • RenderDraw for Propel
          • Initial Setup
            • Common Issues
          • CAD Conversion & Visual Viewing
          • Annotate Item Attachments
        • MeasurePro (iOS App)
          • Creating a Deep Link to Launch with Parameters
      • Interacting with RenderDraw using Lightning Messaging Service (LMS)
        • Canvas Element Hovered
        • Canvas Element Selected
        • Canvas Initialized
        • Canvas Interaction
        • Record Selected
        • Code Example of Listening to LMS Events
  • API Documentation
    • 3D Components API
      • Events (Aura)
        • EVT_Renderer_Context_Details_Closed
        • EVT_Renderer_Element_Added
        • EVT_Renderer_Get_CameraPositionandTarget
        • EVT_Renderer_Get_Hierarchy
        • EVT_Renderer_Loaded
        • EVT_Renderer_Mesh_Selected
        • EVT_Renderer_Mesh_Selection_Cleared
        • EVT_Renderer_Select_Component
        • EVT_Renderer_Screenshot_Taken
      • Components (Aura/LWC)
        • 3D Interaction Canvas (LWC)
        • 3D Advanced Renderer (Aura)
        • 3D Scene Director (Aura)
        • 3D Simple Renderer (Aura)
        • 3D File Attachment Viewer (Aura)
    • 2D Components API
      • 2D Interaction Canvas
      • 2D Scene Director
    • Universal Components Used throughout the Suite
      • dynamicContentComponent_treeGrid
    • Data Objects used throughout the Suite
      • Canvas
      • BaseCanvasItem
      • LayoutWall
      • DropZone
      • DroppableArea
  • 👬Digital Twin
    • Digital Twin App
      • Setup
        • Steps to Setup Digital Twin Capabilities
        • RenderDraw Relationship Settings
        • Embedding Digital Twin Components
      • Asset Search
      • Digital Twin LWC Component
        • Custom Component Interaction with Renderer
        • Digital Experience Tips and Tricks
Powered by GitBook
On this page
  1. Diving deeper
  2. Relationships
  3. Record Management

Scene Settings

Scene Settings are the data description of the 3D scene as your users will see it. If you setup a custom component and call our component APIs to create a 3D experience, you are manually describing the scene through attributes, and a series of API calls based on events.

How does this scale?

Spoiler alert: it doesn't.

A custom component will most often describe a single scene, unless there is a custom data definition defined, in which case- godspeed For the majority of use cases, we will have more than one subject we should be

As of app version 1.8, we create Scene settings version 1.0. This can be added to your object by first creating a Scene Settings lookup on your Relationship. This settings data is structured like this:

{
    "version": 1,
    "lastSaved": "",
    "sceneName": "Visualization",
    "attributes": {},
    "actions": [{
        "name": "onSceneLoaded",
        "steps": []
    }],
    "text": []
}

Breaking this down a bit further, the version, lastSaved and sceneName are all internal, so setting those up is not needed by you.

{
  "version": 1,
  "lastSaved": "2020-10-14T20:08:51.893Z",
  "sceneName": "Visualization",
  "attributes": {
    "brandImageURL": "https://files.renderdraw.us/public/images/2020RDLogo.png",
    "spitShine": true
  },
  "actions": [
    {
      "name": "onSceneLoaded",
      "steps": [
        {
          "method": "setupGround",
          "parameters": {
            "imageURL": "https://files.renderdraw.us/public/images/demoassets/customer%20demos/clubcar/Grass_001_COLOR2.jpg",
            "heightMapURL": "https://files.renderdraw.us/public/images/demoassets/customer%20demos/clubcar/Grass_001_ROUGH.jpg",
            "width": "12",
            "height": "12",
            "maxheight": "0.105",
            "minheight": "0.05",
            "subdivisions": "1000"
          }
        },
        {
          "method": "addPhotoDome",
          "parameters": {
            "name": "defaultPhotoDome",
            "photoURL": "https://files.renderdraw.us/public/images/demoassets/customer%20demos/clubcar/pexels-philippe-perruchot-4298805.jpg",
            "size": "15",
            "limitCamera": true
          }
        }
      ]
    }
  ],
  "text": [
    {
      "label": "XRT Body",
      "componentName": "Golf_Car_XRT_Body"
    },
    {
      "label": "Replaceable XRT Seat",
      "componentName": "Golf_Car_XRT_Seat"
    }
  ]
}

Parent Scene Settings

More often than not, you won't be utilizing a single object for all of your 3D scenes. Most frequently, we start with product visualization, using the Product2 object. From there, there are dozens of objects in the Salesforce world that represent instances of a given product, such as Assets, Opportunity Products, Quote Lines, and many more.

But setting up a scene for every Opportunity, Asset, or QuoteLine that uses your product and scene configuration would require an elaborate trigger system that no architect would approve, and no admin would want to maintain.

We cant use a formula field, as text lookups cannot use the required Long text / text area data type- the solution? A new metadata field that allows us to utilize lookup relationships between the data objects, and determine the metadata record that contains the Scene Setup information.

Sounds complex? It really isn't. Simply set up a Scene Settings field on your base object relationship, as we did in the steps above (In this case the Product relationship), and set up a child relationship object for a given object. For this example, we'll use Assets, as pretty much every Salesforce org has this object. For this relationship, we now have to populate

PreviousRecord ManagementNextPerformance Considerations

Last updated 1 year ago