Refinery on Mac OS X

From COLLADA Public Wiki
Jump to: navigation, search

For the OS X version of the COLLADA Refinery, you will find an Xcode project file to build an application bundle and an external framework. This allows you to have access to the bundled conditioners and even to easily create your own conditioner plug-ins.

Dependencies

  • OS X Tiger (10.4)
  • Xcode Tools suite (get the latest from here).
  • Collada141Dom.framework for Mac OS X
Go here for build instructions on the OS X ColladaDom-Framework
  • Java for Mac OS X 10.4 Release 5
Early Tiger versions need to update to Release 5. You can update either via Apple's Software Update, or download the package from here.

Building

Building the default target performs all necessary build stages to bundle the Refinery tool. Those are:

  1. Compiling the Java-sources.
  2. Creating the JNI Wrapper for the conditioner C++ interface.
  3. Creating the ColladaRefineryConditioner.framework, which can be used for external conditioner plug-ins.
  4. Compiling the default conditioners that are bundled with the Refinery.
  5. Packaging the Java Application into an Application bundle convenient for Mac OS X Tiger.

Note that, when using the Release configuration, all builds are Universal Binary for PPC and Intel architecture.

After building the default target, you end up with two important build-products:

  • Refinery Application Bundle
The Java frame in a Mac-fashioned App-Bundle. Already includes the default conditioners that are shipped with the Refinery.
  • ColladaRefineryConditioner.framework
Interface to import conditioner plug-ins that allows users to create their own conditioners. Each conditioner has to link against this library.

Installation

Copy

<COLLADA_REFINERY-directory>/projects/Xcode/build/Release/Collada Refinery.app

to your Applications-folder, and

<COLLADA_REFINERY-directory>/projects/Xcode/build/Release/ColladaRefineryConditioner.framework

to /Library/Frameworks.

User directories

All user-related data reside in

~/Library/Application Support/Collada Refinery

which is created on first launch of the Refinery.

In this location you will find preferences.xml, the Refinery configuration file, and two subdirs:

  • directory for additional conditioner-plugins:
./conditioners
  • directory for user-created macro files:
./macros

Debugging

You can debug the Refinery out of Xcode, which might be useful for debugging your own conditioners as well. When running the Refinery from Xcode you can tell the Refinery to load the recently built ColladaRefineryConditioner.framework instead of the framework in /Library/Frameworks which might be outdated and result in linker errors. You can enable this by setting the environment-var

REFINERY_XCODE_DEBUG_FRAMEWORK

to

$(SRCROOT)/$(BUILT_PRODUCTS_DIR)

in the executables-settings of the Xcode project-file.

Example project

As a starting point, you can use this example project. You will find an already set up Xcode project file in

<MyConditioner-directory>/projects/Xcode/MyConditioner.xcodeproj

MyConditionerCore.cpp/.h are the only sourcefiles. The important steps to intialize your conditioners are commented and should give you an easy start for your conditioner.

To test your conditioner with the Refinery, build the project and copy

<MyConditioner-directory>/projects/Xcode/build/Release/libMyConditioner.dylib

to

~/Library/Application Support/Collada Refinery/conditioners

Precompiled binaries

Until the Mac OS X version is available in SVN only, you can download precompiled binaries from here:

Screenshots

Refinery on Mac OS X