2

Use scene-breakdown logic outside of the UI

Hi!

Let's say that I want to notify the end-user if elements of it's scene are out-of-date after opening the scene. Is there a standard way of doing this?

The strategy I have in mind is to use an external python module in the scene-breakdown hooks to identity scene elements and call those modules separately when loading a scene.

However using the scene-breakdown for this task seem's more stable and standard, is there a way to do it? The way it's build right now seems pretty dependent of the ui.

Any info is appreciated, thanks!

Note: I'm aware that you're currently merging tk-maya-breakdown and tk-nuke-breakdown into tk-multi-breakdown. This will be great since we currently have our own hacked/custom implementation of the scene breakdown for 3dsmax and houdini and will be more that happy to simplify our approach. If using the scene-breakdown app outside of the ui is not planned for now, don't hesitate to tell me and I'll go with the option mentionned above.

6 comments

  • 0
    Avatar
    Permanently deleted user

    Hello Renaud!

    That's an excellent question and suggestion and something we have heard from other clients too! You are quite right that the methods for checking the scene are very intertwined with the UI - I had a look not long ago how much work it would be to separate the UI more from the app business logic and unfortunately it's not a 5 minute job.

    We think it would be great to have an API method on the app which made it easy to query the breakdown about what is out of date in the scene, so that you could effectively call sgtk.platform.current_engine().apps["tk-multi-breakdown"].get_breakdown() which would return a list of scene items. Something along those lines! It that roughly what you had in mind too?

    This is not currently on our immediate roadmap so if you need it soon it may be better to start tackling it yourself - if that's an option! Don't hesitate to reach out to us if you have any questions!

    Thanks!
    Manne

  • 0
    Avatar
    Renaud Lessard

    Hi Manne, thanks for the quick answer!

    I'm happy that you're considering this option, tk-multi-breakdown is a tool that need a lot of love!

    I'll implement a custom solution for now, looking foward to the next updates!

    Cheers

    Renaud

  • 0
    Avatar
    Permanently deleted user

    > tk-multi-breakdown is a tool that need a lot of love!

    I couldn't agree with you more! The breakdown is one of our very early apps and our plan is to roll out a completely redesigned version of it, just like we have done with the loader and are in the process of doing with the publisher and file manager apps! 

  • 0
    Avatar
    David van Heeswijk
    Hey guys, I ran into the same question and decided to solve this in a more pragmatic way. On opening the scene in Nuke (or any other app) through the workfiles App, a snippet of python code in the tk-nuke_scene_operation Hook scans the scene (using a Template), if it finds a new version of something it automaticaly spawns the scene breakdown App and you can update, if not it just loads. The cool thing is, it only needs to find 1 thing for it to work, the scene breakdown App does the the full scan. So it's pretty quick. Cheers, David
  • 0
    Avatar
    Ben Toogood

    Hi, just want to add my voice to this request, as I was just about to start exactly the same task.

    Manne - has there been any progress on adding a method to the tk-multi-breakdown to get the status list out of a gui context?

     

    cheers

    Ben

  • 0
    Avatar
    Permanently deleted user

    Hey guys!

    Just wanted to ping this thread to let you know that we have released a version of the breakdown app which has a simple API that lets you programatically query and run the breakdown logic! Check it out here: https://support.shotgunsoftware.com/entries/95440677

     

    Thanks!

    Manne

Please sign in to leave a comment.