#include "DisplayCommon.h"
void DisplayDefaultAnimationValues(
FbxCamera* pCamera);
void DisplayRenderOptions(
FbxCamera* pCamera);
void DisplayCameraViewOptions(
FbxCamera* pCamera);
void DisplayBackgroundProperties(
FbxCamera* pCamera);
void DisplayApertureAndFilmControls(
FbxCamera* pCamera);
void DisplayViewingAreaControls(
FbxCamera* pCamera);
{
}
{
DisplayString("Camera Name: ", pName);
if (!pCamera)
{
DisplayString("NOT FOUND");
return;
}
DisplayMetaDataConnections(pCamera);
DisplayCameraPositionAndOrientation(pCamera, pTargetNode, pTargetUpNode);
const char* lProjectionTypes[] = { "Perspective", "Orthogonal" };
DisplayString(
" Projection Type: ", lProjectionTypes[pCamera->
ProjectionType.
Get()]);
DisplayViewingAreaControls(pCamera);
{
DisplayApertureAndFilmControls(pCamera);
}
DisplayBackgroundProperties(pCamera);
DisplayCameraViewOptions(pCamera);
DisplayRenderOptions(pCamera);
DisplayDefaultAnimationValues(pCamera);
}
{
DisplayString(" Camera Position and Orientation");
Display3DVector(
" Position: ", pCamera->
Position.Get());
if (pTargetNode)
{
DisplayString(
" Camera Interest: ",(
char *) pTargetNode->
GetName());
}
else
{
Display3DVector(
" Default Camera Interest Position: ", pCamera->
InterestPosition.Get());
}
if (pTargetUpNode)
{
DisplayString(
" Camera Up Target: ", (
char *) pTargetUpNode->
GetName());
}
else
{
Display3DVector(
" Up Vector: ", pCamera->
UpVector.Get());
}
DisplayDouble(
" Roll: ", pCamera->
Roll.
Get());
}
void DisplayViewingAreaControls(
FbxCamera* pCamera)
{
DisplayString(" Viewing Area Controls");
const char* lCameraFormat[] = { "Custom", "D1 NTSC", "NTSC", "PAL", "D1 PAL",
"HD", "640x480", "320x200", "320x240", "128x128",
"Full Screen" };
DisplayString(
" Format: ", lCameraFormat[pCamera->
GetFormat()]);
const char* lAspectRatioModes[] = { "Window Size", "Fixed Ratio", "Fixed Resolution",
"Fixed Width", "Fixed Height" };
{
}
DisplayDouble(
" Far Plane: ", pCamera->
FarPlane.
Get());
}
void DisplayApertureAndFilmControls(
FbxCamera* pCamera)
{
DisplayString(" Aperture and Film Controls");
const char* lCameraApertureFormats[] = { "Custom",
"16mm Theatrical",
"Super 16mm",
"35mm Academy",
"35mm TV Projection",
"35mm Full Aperture",
"35mm 1.85 Projection",
"35mm Anamorphic",
"70mm Projection",
"VistaVision",
"Dynavision",
"Imax" };
DisplayString(
" Aperture Format: ", lCameraApertureFormats[pCamera->
GetApertureFormat()]);
const char* lCameraApertureModes[] = { "Horizontal and Vertical", "Horizontal", "Vertical", "Focal Length" };
DisplayString(
" Aperture Mode: ", lCameraApertureModes[pCamera->
GetApertureMode()]);
DisplayDouble(
" Field of View: ", pCamera->
FieldOfView.
Get(),
" degrees");
}
void DisplayBackgroundProperties(
FbxCamera* pCamera)
{
DisplayString(" Background Properties");
const char* lBackgroundDisplayModes[] = { "Disabled", "Always", "When Media" };
{
}
{
lBackgroundPlacementOptions += " Fit,";
}
{
lBackgroundPlacementOptions += " Center,";
}
{
lBackgroundPlacementOptions += " Keep Ratio,";
}
{
lBackgroundPlacementOptions += " Crop,";
}
if (!lBackgroundPlacementOptions.IsEmpty())
{
FbxString lString = lBackgroundPlacementOptions.
Left(lBackgroundPlacementOptions.GetLen() - 1);
DisplayString(
" Background Placement Options: ",lString.
Buffer());
}
const char* lCameraBackgroundDistanceModes[] = { "Relative to Interest", "Absolute from Camera" };
}
void DisplayCameraViewOptions(
FbxCamera* pCamera)
{
DisplayString(" Camera View Options");
const char* lSafeAreaStyles[] = { "Round", "Square" };
DisplayColor(" Background Color: ", color);
DisplayColor(" Audio Color: ", color);
DisplayColor(" Frame Color: ", color);
}
void DisplayRenderOptions(
FbxCamera* pCamera)
{
DisplayString(" Render Options");
const char* lCameraRenderOptionsUsageTimes[] = { "Interactive", "At Render" };
DisplayString(
" Render Options Usage Time: ", lCameraRenderOptionsUsageTimes[pCamera->
UseRealTimeDOFAndAA.
Get()]);
const char* lCameraAntialiasingMethods[] = { "Oversampling Antialiasing", "Hardware Antialiasing" };
{
}
const char* lCameraSamplingTypes[] = { "Uniform", "Stochastic" };
const char* lCameraFocusDistanceSources[] = { "Camera Interest", "Specific Distance" };
DisplayString(
" Focus Distance Source: ", lCameraFocusDistanceSources[pCamera->
FocusSource.
Get()]);
{
}
DisplayDouble(
" Focus Angle: ", pCamera->
FocusAngle.
Get(),
" degrees");
}
void DisplayDefaultAnimationValues(
FbxCamera* pCamera)
{
DisplayString(" Default Animation Values");
DisplayDouble(
" Default Field of View: ", pCamera->
FieldOfView.
Get());
DisplayDouble(
" Default Roll: ", pCamera->
Roll.
Get());
}