This page discusses how to build the Magic Lantern Rehearsal Player for Microsoft Win32 platforms. The Rehearsal Player is written in C++.
This section identifies dependencies for building the Magic Lantern Rehearsal Player.
These instructions assume the following
Set the variable MLE_HOME to reference the home of the Magic Lantern source. This document assumes that it is set to "M:\projects\MagicLantern".
Set the variable MLE_ROOT to reference the root directory where the Magic Lantern components will be installed. This document assumes that it is set to "M:/projects/MagicLantern".
Note that this variable uses the UNIX-style path delimiter ('/').
Set the variable MLE_WORKPRINTS to the root directory where Magic Lantern Digital Workprints can be located. This document assumes that it is set to //M/projects/MagicLantern.
The Magic Lantern Studio assumes that the Digital Workprints will be located under the $MLE_WORKPRINTS/workprints directory.
Note that this variable uses a canonical path style for the drive (i.e. //M/).
Set the MLEDEV_CORE variable to the development directory where the Core library source is. This value will most likely be $MLE_HOME\Core.
Set the MLEDEV_DWP variable to the development directory where the Digital Workprint library source is. This value will most likely be $MLE_HOME\DigitalWorkprint.
Set the COINDIR variable to the installation directory for Coin3D. For these instructions, use M:\Coin3D.
Set the FREEIMAGEDIR variable to the installation directory for FreeImage. For these instructions, use M:\FreeImage\Dist.
Make sure the following paths are part of the PATH environment variable.
To build the Magic Lantern components using Microsoft Visual Studio 2010, use the following instructions.
These instructions build the Core util libraries for the Magic Lantern Studio tools.
The library components that are built include
Library | Directory Location | Component |
---|---|---|
util.lib | "$MLE_HOME\lib\tools" | Magic Lantern Studio (Release) |
utild.lib | "$MLE_HOME\lib\tools" | Magic Lantern Studio (Debug) |
These instructions build the Core math libraries for the Magic Lantern Lantern Rehearsal Player.
The library components that are built for the Magic Lantern Rehearsal Player include
Library | Directory Location | Component |
---|---|---|
mlmath.dll | "$MLE_HOME\bin\rehearsal" | Magic Lantern Studio (Floating-point Release DLL) |
mlmath.lib | "$MLE_HOME\lib\rehearsal" | Magic Lantern Studio (Floating-point Release Dll Symbols) |
mlmathd.dll | "$MLE_HOME\bin\rehearsal" | Magic Lantern Studio (Floating-point Debug DLL) |
mlmathd.lib | "$MLE_HOME\lib\rehearsal" | Magic Lantern Studio (Floating-point Debug DLl Symbols) |
These instructions build the Digital Workprint libraries for the Magic Lantern Rehearsal Player.
The library components that are built for the Magic Lantern Rehearsal Player include
Library | Directory Location | Component |
---|---|---|
DWP.dll | "$MLE_HOME\bin\rehearsal" | DWP SDK library, Magic Lantern Studio (Release DLL) |
DWP.lib | "$MLE_HOME\lib\rehearsal" | DWP SDK library, Magic Lantern Studio (Release DLL Symbols) |
DWPd.dll | "$MLE_HOME\bin\rehearsal | DWP SDK library, Magic Lantern Studio (Debug DLL) |
DWPd.lib | "$MLE_HOME\lib\rehearsal" | DWP SDK library, Magic Lantern Studio (Debug DLL Symbols) |
These instructions build the Magic Lantern SDK Runtime Engine libraries for the Rehearsal Player.
The library components that are built for the Rehearsal Player include
Library | Directory Location | Component |
---|---|---|
mlert.dll | "$MLE_HOME\bin\rehearsal" | Magic Lantern Runtime Engine (Release DLL) |
mlert.lib | "$MLE_HOME\lib\rehearsal" | Magic Lantern Runtime Engine (Release DLL Symbols) |
mlertd.dll | "$MLE_HOME\bin\rehearsal" | Magic Lantern Runtime Engine (Debug DLL) |
mlertd.lib | "$MLE_HOME\lib\rehearsal" | Magic Lantern Runtime Engine (Debug DLL Symbols) |
These instructions build the Magic Lantern Studio Authoring Toolkit for the Inventor platform.
The library components that are built include
Library | Directory Location | Component |
---|---|---|
mleatk.dll | "$MLE_HOME\bin\rehearsal" | Magic Lantern Studio ATK (Release DLL) |
mleatk.lib | "$MLE_HOME\lib\rehearsal" | Magic Lantern Studio ATK (Release DLL Symbols) |
mleatkd.dll | "$MLE_HOME\bin\rehearsal" | Magic Lantern Studio ATK (Debug DLL) |
mleatkd.lib | "$MLE_HOME\lib\rehearsal" | Magic Lantern Studio ATK (Debug DLL Symbols) |
These instructions discuss how to build the Properties and Digital Workprints for Magic Lantern SDK.
OR
This distributes the props header files to "$MLE_HOME\include\mle" and the props workprint files to "$MLE_HOME\include\workprints".
NOTE: There are some dependency issues with building the Roles, Sets and Stages for the Rehearsal Player platform. This affects steps X, XI and XIV below. Essentially, there is a circular dependency chain:
To break this dependency chain, we need to generate the .lib files independently of when the .dll files are built.
Manual Steps
OR
Using MSBuild
These instructions build the Magic Lantern Roles for the Inventor (Rehearsal) platform.
The roles that are built for the Magic Lantern Rehearsal Player include
Library | Directory Location | Component |
---|---|---|
ivroles.lib | "$MLE_HOME\lib\rehearsal" | Magic Lantern Studio SDK(Inventor Release) |
ivrolesd.lib | "$MLE_HOME\lib\rehearsal" | Magic Lantern Studio SDK (Inventor Debug) |
Mle2dRole.dll | "$MLE_HOME\bin\rehearsal" | Role for 2-dimensional rendering (Release DLL) |
Mle2dRole.lib | "$MLE_HOME\lib\rehearsal" | Role for 2-dimensional rendering (Release DLL Symbols) |
Mle2dRoled.dll | "$MLE_HOME\bin\rehearsal" | Role for 2-dimensional rendering (Debug DLL) |
Mle2dRoled.lib | "$MLE_HOME\lib\rehearsal" | Role for 2-dimensional rendering (Debug DLL Symbols) |
Mle2dImageRole.dll | "$MLE_HOME\bin\rehearsal" | Role for 2-dimensional images (Release DLL) |
Mle2dImageRole.lib | "$MLE_HOME\lib\rehearsal" | Role for 2-dimensional images (Release DLL Symbols) |
Mle2dImageRoled.dll | "$MLE_HOME\bin\rehearsal" | Role for 2-dimensional images (Debug DLL) |
Mle2dImageRoled.lib | "$MLE_HOME\lib\rehearsal" | Role for 2-dimensional images (Debug DLL Symbols) |
Mle3dRole.dll | "$MLE_HOME\bin\rehearsal" | Role for 3-dimensional rendering (Release DLL) |
Mle3dRole.lib | "$MLE_HOME\lib\rehearsal" | Role for 3-dimensional rendering (Release DLL Symbols) |
Mle3dRoled.dll | "$MLE_HOME\bin\rehearsal" | Role for 3-dimensional rendering (Debug DLL) |
Mle3dRoled.lib | "$MLE_HOME\lib\rehearsal" | Role for 3-dimensional rendering (Debug DLL Symbols) |
These instructions build the Magic Lantern Sets for the Inventor (Rehearsal) platform.
The sets that are built for the Magic Lantern Rehearsal Player include
Library | Directory Location | Component |
---|---|---|
Mle2dSet.dll | "$MLE_HOME\bin\rehearsal" | Set for 2-dimensional rendering (Release DLL) |
Mle2dSet.lib | "$MLE_HOME\lib\rehearsal" | Set for 2-dimensional rendering (Release DLl Symbols) |
Mle2dSetd.dll | "$MLE_HOME\bin\rehearsal" | Set for 2-dimensional rendering (Debug DLL) |
Mle2dSetd.lib | "$MLE_HOME\lib\rehearsal" | Set for 2-dimensional rendering (Debug DLl Symbols) |
Mle3dSet.dll | "$MLE_HOME\bin\rehearsal" | Set for 3-dimensional rendering (Release DLL) |
Mle3dSet.lib | "$MLE_HOME\lib\rehearsal" | Set for 3-dimensional rendering (Release DLL Symbols) |
Mle3dSetd.dll | "$MLE_HOME\bin\rehearsal" | Set for 3-dimensional rendering (Debug DLL) |
Mle3dSetd.lib | "$MLE_HOME\lib\rehearsal" | Set for 3-dimensional rendering (Debug DLL Symbols) |
Note: These libraries are not yet available for Rehearsal Player Actors. This is a place-holder for them.
These instructions build the Magic Lantern Behavior Packages for the Rehearsal Player platform.
The library components that are built include
Library | Directory Location | Component |
---|---|---|
pkgs.lib | "$MLE_HOME\lib\runtime\cdecl" | Magic Lantern Studio SDK (Floating-point Release) |
pkgsd.lib | "$MLE_HOME\lib\runtime\cdecl" | Magic Lantern Studio SDK (Floating-point Debug) |
fpkgs.lib | "$MLE_HOME\lib\runtime\cdecl" | Magic Lantern Studio SDK(Fixed-point Release) |
fpkgsd.lib | "$MLE_HOME\lib\runtime\cdecl" | Magic Lantern Studio SDK (Fixed-point Debug) |
These instructions build the Magic Lantern Actors for the Inventor (Rehearsal) platform.
The actors that are built for the Magic Lantern Rehearsal Player include
Library | Directory Location | Component |
---|---|---|
MleEscapeActor.dll | "$MLE_HOME\bin\rehearsal" | Escape Key Actor (Release DLL) |
MleEscapeActor.lib | "$MLE_HOME\lib\rehearsal" | Escape Key Actor (Release DLl Symbols) |
MleEscapeActord.dll | "$MLE_HOME\bin\rehearsal" | Escape Key Actor (Debug DLL) |
MleEscapeActord.lib | "$MLE_HOME\lib\rehearsal" | Escape Key Actor (Debug DLl Symbols) |
Mle3dCameraActor.dll | "$MLE_HOME\bin\rehearsal" | 3D Camera Actor (Release DLL) |
Mle3dCameraActor.lib | "$MLE_HOME\lib\rehearsal" | 3D Camera Actor (Release DLl Symbols) |
Mle3dCameraActord.dll | "$MLE_HOME\bin\rehearsal" | 3D Camera Actor (Debug DLL) |
Mle3dCameraActord.lib | "$MLE_HOME\lib\rehearsal" | 3D Camera Actor (Debug DLl Symbols) |
Mle2dImageActor.dll | "$MLE_HOME\bin\rehearsal" | Image Actor (Release DLL) |
Mle2dImageActor.lib | "$MLE_HOME\lib\rehearsal" | Image Actor (Release DLl Symbols) |
Mle2dImageActord.dll | "$MLE_HOME\bin\rehearsal" | Image Actor (Debug DLL) |
Mle2dImageActord.lib | "$MLE_HOME\lib\rehearsal" | Image Actor (Debug DLl Symbols) |
These instructions build the Magic Lantern Media References for the Inventor (Rehearsal) platform.
The media references that are built for the Magic Lantern Rehearsal Player include
Library | Directory Location | Component |
---|---|---|
Mle2dImageMediaRef.dll | "$MLE_HOME\bin\rehearsal" | 2D Image MediaRef (Release DLL) |
Mle2dImageMediaRef.lib | "$MLE_HOME\lib\rehearsal" | 2D Image MediaRef (Release DLL Symbols) |
Mle2dImageMediaRefd.dll | "$MLE_HOME\bin\rehearsal" | 2D Image MediaRef (Debug DLL) |
Mle2dImageMediaRefd.lib | "$MLE_HOME\lib\rehearsal" | 2D Image MediaRef (Debug DLL Symbols) |
Mle3dColorMapMediaRef.dll | "$MLE_HOME\bin\rehearsal" | 3D Color Map MediaRef (Release DLL) |
Mle3dColorMapMediaRef.lib | "$MLE_HOME\lib\rehearsal" | 3D Color Map MediaRef (Release DLL Symbols) |
Mle3dColorMapMediaRefd.dll | "$MLE_HOME\bin\rehearsal" | 3D Color Map MediaRef (Debug DLL) |
Mle3dColorMapMediaRefd.lib | "$MLE_HOME\lib\rehearsal" | 3D Color Map MediaRef (Debug DLL Symbols) |
Mle3dModelMediaRef.dll | "$MLE_HOME\bin\rehearsal" | 3D Model MediaRef (Release DLL) |
Mle3dModelMediaRef.lib | "$MLE_HOME\lib\rehearsal" | 3D Model MediaRef (Release DLL Symbols) |
Mle3dModelMediaRefd.dll | "$MLE_HOME\bin\rehearsal" | 3D Model MediaRef (Debug DLL) |
Mle3dModelMediaRefd.lib | "$MLE_HOME\lib\rehearsal" | 3D Model MediaRef (Debug DLL Symbols) |
Mle3dTextureMapMediaRef.dll | "$MLE_HOME\bin\rehearsal" | 3D Texture Map MediaRef (Release DLL) |
Mle3dTextureMapMediaRef.lib | "$MLE_HOME\lib\rehearsal" | 3D Texture Map MediaRef (Release DLL Symbols) |
Mle3dTextureMapMediaRefd.dll | "$MLE_HOME\bin\rehearsal" | 3D Texture Map MediaRef (Debug DLL) |
Mle3dTextureMapMediaRefd.lib | "$MLE_HOME\lib\rehearsal" | 3D Texture Map MediaRef (Debug DLL Symbols) |
These instructions build the Magic Lantern Stages for the Inventor (Rehearsal) platforms.
The stages that are built for the Magic Lantern Rehearsal Player include
Library | Directory Location | Component |
---|---|---|
MleIvStage.dll | "$MLE_HOME\bin\rehearsal" | Inventor Stage (Release DLL) |
MleIvStage.lib | "$MLE_HOME\lib\rehearsal" | Inventor Stage (Release DLL Symbols) |
MleIvStaged.dll | "$MLE_HOME\bin\rehearsal" | Inventor Stage (Debug DLL) |
MleIvStaged.lib | "$MLE_HOME\lib\rehearsal" | Inventor Stage (Debug DLL Symbols) |
These instructions are used to build the Magic Lantern Rehearsal Player.
The executable components that are built for the Magic Lantern SDK include
Executable | Directory Location | Component |
---|---|---|
player.exe | "$MLE_HOME\bin\rehearsal" | Magic Lantern Rehearsal Player (Release) |
Note: Make sure that $MLE_HOME\bin\rehearsal is in your environment PATH.
These instructions are used to build the Rehearsal Player as an ActiveX control.
When the ActiveX control is successfully built, the component will be registered with the Windows Registry.