Unity Post Process Mayhem

Are you sick and tired of forgetting to copy that data file to the build directory after each and every standalone build in unity? Sure you could incorporate it into the project but you don’t want that, you just wish that PostProcessBuildPlayer script would work on windows. As of Unity 3.5.2 life just got better…

A long awaited function in Unity was a working post process build player script for standalone players on windows as it was already working on mac’s. As seen in the latest Release Notes and stated in the BuildPipeline a few things have changed.. Apparently the PostProscessBuildplayer script is not supported on windows, which is a bummer for windows users on the other hand it’s easily solved with a new and improved UnityEditor.Callbacks which is both usable on Windows and Mac, So here goes…

P.S. No this is not a custom build window script, it actually triggers from the existing Unity BuildWindow.

NB: -10 is a higher priority than 100, the default priority is 1
NB2: This is an Editor Script not something for a gameobject (you should know this)

You can use the method to do all kinds of things on your computer after a build is complete just a couple ideas:

  • After a large build send an email with a link to the file saying the build is complete.
  • Play a sound notifiying you build is complete
  • Run a test on your build
  • And lots more…

Anyway now you have the tools go make 🙂

9 thoughts on “Unity Post Process Mayhem”

  1. How do the post process scripts get executed if you’re compiling from the command line? (i.e. via a Jenkins build) I’m trying to get that working, but they don’t seem to be getting executed.

    1. To me it sounds like the command line build command doesn’t call the PostProcess Callbacks i could be mistaken havent tested it myself yet.. probably a bug. I’ll give it a go when I have the time 🙂 You can always post a bug report towards the Unity folk i think it’s a valid bug.

  2. Hi iKriz,

    If I am to use the above code for a Mac Standalone. What directory would I be writing the files to?

    Regards,
    Sameer

  3. Hello,

    Oh this is definitely what I was looking for.
    BUT, I’m such a newby that I don’t even know ho to make it work.
    I naively added your script to a gameObject as a component.
    Tried to build it for ios.
    And I got:”The type or namespace name `UnityEditor’ could not be found. Are you missing a using directive or an assembly reference?”
    Anyone to help?
    Michaël
    PS: I need to have xml files in the Documents folder of the iphone so to make them editable by my app. So using your script to copy them from StreamingAsset to Application.persistentDataPath seems the best option by far

Leave a Reply