Client-side swapping of stages for a 2D configurator at runtime -- can it be done?



I'm working on a virtual photography configurator. Because of how easy it is to swap stage views in the catalogue viewer, I wrongly assumed that it would be easy to just run a command like this-

configurator.stageId = '123bigLongHexcode456';

or maybe something like this:

configurator.setStage({stageId: '123totallyA-Real-Hexcode456'})

After building a configurator that uses 1 item with 4 separate rendered stages, I found out, to my horror, that there is no documentation for stage swapping. I also couldn't find anything relevant on this forum. Am I doomed to restructuring this project, or is there a way to change the stage after the initial embedding?

I should add that I've tried saving out vray scenes as assets to swap instead, but I only get black screens and errors when trying to implement it :(



1 comment

  • Comment author
    William Thompson
    • Edited

    Hi Andrew - the only supported way to change the stageID in a Threekit player on the front-end is to unload the player with 


    and re-initialize with your new stage ID. 

    Alternatively - you can retrieve the renders from Threekit via the layers API and create a custom gallery/front-end like we did here in our demo store. 

    If neither of these solutions work for you please let me know and we can get some additional guidance. 


Please sign in to leave a comment.