All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
kzu_preview_system.h File Reference

Preview system structure contains those features that are used in the preview but not in the normal application. More...

Classes

struct  KzuPreviewProperties
 Configurable preview properties. More...
 

Namespaces

 kanzi
 

Macros

#define KZU_PREVIEW_SYSTEM_OPTION_OVERDRAW_VISUALIZATION
 Specifies option for overdraw visualization. More...
 
#define KZU_PREVIEW_SYSTEM_OPTION_LAYER_RENDER_TO_TEXTURE_VISUALIZATION
 Specifies option for visualization if layer is rendered into a texture. More...
 
#define KZU_PREVIEW_SYSTEM_OPTION_LAYER_IS_TRANSPARENT_VISUALIZATION
 Specifies option for visualization if layer is rendered into a texture. More...
 
#define KZU_PREVIEW_SYSTEM_OPTION_LAYER_VISUALIZATION
 Specifies option for overdraw visualization. More...
 
#define KZU_PREVIEW_SYSTEM_OPTION_PERFORMANCE_HUD
 Specifies option for Performance HUD display. More...
 
#define KZU_PREVIEW_SYSTEM_OPTION_ANIMATION_HUD
 Specifies option for Animation HUD display. More...
 
#define KZU_PREVIEW_SYSTEM_OPTION_BOUNDING_VOLUMES
 Specifies option for bounding volume visualization. More...
 
#define KZU_PREVIEW_CAMERA_FOCUS_MARGIN
 Preview camera focus margin between camera and selection. More...
 

Typedefs

typedef void(* KzuPreviewSystemRender3DCallback )(void *userData, kanzi::Renderer3D *renderer, kanzi::RenderContextStack &renderContextStack, const kanzi::TransformedScene3D *transformedScene)
 
typedef void(* KzuPreviewSystemProcessInputCallback )(void *userData, const struct KzuEngine *engine, const struct KzcVector2 *point, enum KzsInputPointingDeviceState state, kzU32 buttons, kzInt scroll, kzBool *out_handled)
 
typedef void(* KzuPreviewSystemHandleKeyCallback )(void *userData, enum KzsInputKey keyCode, enum KzsInputKeyDeviceState keyState, kzBool *out_handled)
 
typedef void(* KzuPreviewSystemPostRenderCallback )(void *userData, kanzi::Renderer3D *renderer, kanzi::LayerRenderpass *layerRenderpass, kanzi::TransformedScene2D *layerTransformedScene)
 
typedef void(* KzuPreviewSystemPreRenderCallback )(void *userData, kanzi::Renderer3D *renderer, kanzi::LayerRenderpass *layerRenderpass)
 
typedef void(* KzuPreviewSystemHandleWindowEventCallback )(void *userData, enum KzsEventType eventType)
 

Enumerations

enum  KzuPreviewSystemPatchType { KZU_PREVIEW_SYSTEM_PATCH_TYPE_UPDATE, KZU_PREVIEW_SYSTEM_PATCH_TYPE_REMOVE }
 Type of a patching event. More...
 
enum  KzuPreviewSystemFeatureType { KZU_PREVIEW_SYSTEM_FEATURE_HUD }
 Type of a preview system feature. More...
 
enum  KzuPreviewSystemMode { KZU_PREVIEW_SYSTEM_MODE_INTERACT, KZU_PREVIEW_SYSTEM_MODE_EDIT }
 Current preview system mode. More...
 

Functions

KANZI_API kzsError kzuPreviewSystemCreate (const struct KzcMemoryManager *memoryManager, struct KzuEngine *engine, kanzi::Domain *domain, struct KzuPreviewSystem **out_previewSystem)
 Creates a new preview system object. More...
 
KANZI_API kzsError kzuPreviewSystemInitialize (struct KzuPreviewSystem *previewSystem)
 Initialized the preview system with resource set up. More...
 
KANZI_API kzsError KzuPreviewSystemDelete (struct KzuPreviewSystem *previewSystem)
 Deletes a preview system object. More...
 
KANZI_API kzsError kzuPreviewSystemUpdate (struct KzuPreviewSystem *previewSystem, kzUint deltaTime)
 Updates the preview system. More...
 
KANZI_API kzsError kzuPreviewSystemHandleInputEvent (struct KzuPreviewSystem *previewSystem, const struct KzsEvent *event, kzBool *out_inputHandled)
 Notifies the preview system of an input event. More...
 
KANZI_API kzsError kzuPreviewSystemRender (struct KzuPreviewSystem *previewSystem, kanzi::Renderer3D *renderer, const struct KzcVector2 *offset, const struct KzcVector2 *limits)
 Renders the preview system. More...
 
KANZI_API kzsError kzuPreviewSystemVisualizeLayers (const struct KzuPreviewSystem *previewSystem, kanzi::Renderer3D *renderer, kanzi::Node2D *rootLayer)
 Visualizes the preview system layers. More...
 
KANZI_API kzsError kzuPreviewSystemDebugRender3D (const KzuPreviewSystem *previewSystem, kanzi::Renderer3D *renderer, kanzi::RenderContextStack &renderContextStack, const kanzi::TransformedScene3D *transformedScene)
 Renders 3D debug objects. More...
 
KANZI_API kzsError kzuPreviewSystemPreContentRendered (struct KzuPreviewSystem *previewSystem, kanzi::Renderer3D *renderer, kanzi::LayerRenderpass *layerComposer)
 Triggers pre-render callback. More...
 
KANZI_API kzsError kzuPreviewSystemPostContentRendered (struct KzuPreviewSystem *previewSystem, kanzi::Renderer3D *renderer, const struct KzcVector2 *offset, const struct KzcVector2 *limits, kanzi::LayerRenderpass *layerComposer, kanzi::TransformedScene2D *layerTransformedScene)
 Triggers post-render callback. More...
 
KANZI_API kzsError kzuPreviewSystemProjectReloaded (struct KzuPreviewSystem *previewSystem, kanzi::Domain *domain)
 Notifies the preview system that a project has been reloaded. More...
 
KANZI_API kzsError kzuPreviewSystemEnableFeature (struct KzuPreviewSystem *previewSystem, enum KzuPreviewSystemFeatureType feature)
 Enables a preview system feature. More...
 
KANZI_API kzsError kzuPreviewSystemDisableFeature (struct KzuPreviewSystem *previewSystem, enum KzuPreviewSystemFeatureType feature)
 Disables a preview system feature. More...
 
KANZI_API kzsError kzuPreviewSystemToggleFeature (struct KzuPreviewSystem *previewSystem, enum KzuPreviewSystemFeatureType feature)
 Toggles a preview system feature. More...
 
KANZI_API struct KzuHudkzuPreviewSystemGetHud (const struct KzuPreviewSystem *previewSystem)
 Returns the hud from preview system. More...
 
KANZI_API kzsError kzuPreviewSystemSetEditLegend (struct KzuPreviewSystem *previewSystem, kzString legend)
 Sets edit legend for preview system. More...
 
KANZI_API kzsError kzuPreviewSystemSetCameraLegend (struct KzuPreviewSystem *previewSystem, kzString legend)
 Sets camera legend for preview system. More...
 
KANZI_API void kzuPreviewSystemSetScreen (struct KzuPreviewSystem *previewSystem, kanzi::Screen *screen)
 Sets the current screen to the preview system. More...
 
KANZI_API kanzi::ScreenkzuPreviewSystemGetScreen (const struct KzuPreviewSystem *previewSystem)
 Gets screen from preview system. More...
 
KANZI_API kanzi::Node2DkzuPreviewSystemGetRootLayer (const struct KzuPreviewSystem *previewSystem)
 Gets the current root layer. More...
 
KANZI_API kzsError kzuPreviewSystemSetMode (struct KzuPreviewSystem *previewSystem, enum KzuPreviewSystemMode mode)
 Sets the edit/interact mode for preview. More...
 
KANZI_API enum KzuPreviewSystemMode kzuPreviewSystemGetMode (const struct KzuPreviewSystem *previewSystem)
 Gets the edit/interact mode from preview. More...
 
KANZI_API struct KzuEnginekzuPreviewSystemGetEngine (const struct KzuPreviewSystem *previewSystem)
 Gets the engine. More...
 
KANZI_API const struct
KzcMemoryManager
kzuPreviewSystemGetMemoryManager (const struct KzuPreviewSystem *previewSystem)
 Gets the memory manager. More...
 
KANZI_API kanzi::DomainkzuPreviewSystemGetUIDomain (const struct KzuPreviewSystem *previewSystem)
 Gets the project. More...
 
KANZI_API kzsError kzuPreviewSystemBeginOverdrawVisualization (struct KzuPreviewSystem *previewSystem, kanzi::Renderer3D *renderer)
 Begins overdraw visualization. More...
 
KANZI_API kzsError kzuPreviewSystemEndOverdrawVisualization (const struct KzuPreviewSystem *previewSystem, kanzi::Renderer3D *renderer)
 Ends overdraw visualization. More...
 
KANZI_API kzsError kzuPreviewSystemSetPreviewOptionInteger (struct KzuPreviewSystem *previewSystem, kzString optionName, kzInt value)
 Sets preview option for application. More...
 
KANZI_API kzBool kzuPreviewSystemGetPreviewOptionInteger (const struct KzuPreviewSystem *previewSystem, kzString optionName, kzInt *out_value)
 Returns preview option value from application. More...
 
KANZI_API kanzi::Viewport2DkzuPreviewSystemFindFirstViewportLayer (const struct KzuPreviewSystem *previewSystem)
 Finds the first viewport layer from given preview system. More...
 
KANZI_API void kzuPreviewSystemSetDebugComposer (KzuPreviewSystem *previewSystem, kanzi::DebugComposerSharedPtr debugComposer)
 Sets debug composer for preview system. More...
 
KANZI_API
kanzi::DebugComposerSharedPtr 
kzuPreviewSystemGetDebugComposer (KzuPreviewSystem *previewSystem)
 Gets debug composer for preview system. More...
 
KANZI_API void kzuPreviewSystemSetKeyHandlingEnabled (struct KzuPreviewSystem *previewSystem, kzBool enabled)
 Enables or disables the preview system key handling. More...
 
KANZI_API void kzuPreviewCameraCloneData (const kanzi::Camera &originalCameraNode, kanzi::Camera &targetCameraNode)
 Helper function to clone camera specific data (properties) from node to target. More...
 
KANZI_API void kzuPreviewSystemSetRender3DCallback (struct KzuPreviewSystem *previewSystem, KzuPreviewSystemRender3DCallback callback, void *userdata)
 Sets 3D render callback handler. More...
 
KANZI_API void kzuPreviewSystemSetProcessInputCallback (struct KzuPreviewSystem *previewSystem, KzuPreviewSystemProcessInputCallback callback, void *userdata)
 Sets mouse input processing callback handler. More...
 
KANZI_API void kzuPreviewSystemSetHandleKeyCallback (struct KzuPreviewSystem *previewSystem, KzuPreviewSystemHandleKeyCallback callback, void *userdata)
 Sets keyboard input processing callback handler. More...
 
KANZI_API void kzuPreviewSystemSetPreRenderCallback (struct KzuPreviewSystem *previewSystem, KzuPreviewSystemPreRenderCallback callback, void *userdata)
 Sets pre-render callback handler. More...
 
KANZI_API void kzuPreviewSystemSetPostRenderCallback (struct KzuPreviewSystem *previewSystem, KzuPreviewSystemPostRenderCallback callback, void *userdata)
 Sets post-render callback handler. More...
 
KANZI_API void kzuPreviewSystemSetHandleWindowEventCallback (struct KzuPreviewSystem *previewSystem, KzuPreviewSystemHandleWindowEventCallback callback, void *userdata)
 Sets window event processing callback handler. More...
 
KANZI_API void kzuPreviewSystemSetNavigationTransform (struct KzuPreviewSystem *previewSystem, const struct KzcMatrix3x3 *matrix)
 Sets pan/zoom transformation matrix. More...
 
KANZI_API const struct
KzcMatrix3x3
kzuPreviewSystemGetNavigationTransform (struct KzuPreviewSystem *previewSystem)
 Returns pan/zoom transformation matrix. More...
 
KANZI_API void kzuPreviewSystemSetNavigationEnabled (struct KzuPreviewSystem *previewSystem, kzBool enabled)
 Enables or disables the preview pan/zoom mode. More...
 
KANZI_API kzBool kzuPreviewSystemIsNavigationEnabled (const struct KzuPreviewSystem *previewSystem)
 Returns KZ_TRUE if preview zoom mode is enabled. More...
 
KANZI_API void kzuPreviewSystemSetRenderingAreaOffset (struct KzuPreviewSystem *previewSystem, const KzcVector2 *offset)
 Sets rendering area offset. More...
 
KANZI_API void kzuPreviewSystemGetRenderingAreaOffset (const struct KzuPreviewSystem *previewSystem, KzcVector2 *offset)
 Returns rendering area offset. More...
 
KANZI_API kzsError kzuPreviewCameraSystemGetSelectionVolume (const struct KzcDynamicArray *nodePaths, const kanzi::TransformedScene3D *transformedScene, struct KzcVolume *out_volume)
 Utility to get total volume from selected paths. More...
 
KANZI_API kzsError kzuPreviewSystemInitializePreviewFeatures (KzuPreviewSystem *previewSystem, const KzuPreviewProperties *previewProperties)
 
KANZI_API void kzuPreviewSystemSetGridEnabled (const KzuPreviewSystem *previewSystem, bool enabled)
 
KANZI_API bool kzuPreviewSystemIsGridEnabled (const KzuPreviewSystem *previewSystem)
 
KANZI_API void kzuPreviewSystemSetDebugObjectsEnabled (const KzuPreviewSystem *previewSystem, bool enabled)
 
KANZI_API bool kzuPreviewSystemIsDebugObjectsEnabled (const KzuPreviewSystem *previewSystem)
 
KANZI_API void kzuPreviewSystemSetActualLayoutBoundingBoxVisualizationEnabled (const KzuPreviewSystem *previewSystem, bool enabled)
 
KANZI_API bool kzuPreviewSystemIsActualLayoutBoundingBoxVisualizationEnabled (const KzuPreviewSystem *previewSystem)
 
KANZI_API void kzuPreviewSystemSetAllocatedLayoutBoundingBoxVisualizationEnabled (const KzuPreviewSystem *previewSystem, bool enabled)
 
KANZI_API bool kzuPreviewSystemIsAllocatedLayouBoundingBoxVisualizationEnabled (const KzuPreviewSystem *previewSystem)
 
KANZI_API void kzuPreviewSystemSetSelectionVisualizationEnabled (const KzuPreviewSystem *previewSystem, bool enabled)
 
KANZI_API bool kzuPreviewSystemIsSelectionVisualizationEnabled (const KzuPreviewSystem *previewSystem)
 
KANZI_API void kzuPreviewSystemSetBackgroundCheckerVisualizationEnabled (KzuPreviewSystem *previewSystem, bool enabled)
 
KANZI_API bool kzuPreviewSystemIsBackgroundCheckerVisualizationEnabled (const KzuPreviewSystem *previewSystem)
 

Detailed Description

Preview system structure contains those features that are used in the preview but not in the normal application.

Copyright 2008-2020 by Rightware. All rights reserved.

Macro Definition Documentation

#define KZU_PREVIEW_SYSTEM_OPTION_OVERDRAW_VISUALIZATION

Specifies option for overdraw visualization.

#define KZU_PREVIEW_SYSTEM_OPTION_LAYER_RENDER_TO_TEXTURE_VISUALIZATION

Specifies option for visualization if layer is rendered into a texture.

#define KZU_PREVIEW_SYSTEM_OPTION_LAYER_IS_TRANSPARENT_VISUALIZATION

Specifies option for visualization if layer is rendered into a texture.

#define KZU_PREVIEW_SYSTEM_OPTION_LAYER_VISUALIZATION

Specifies option for overdraw visualization.

#define KZU_PREVIEW_SYSTEM_OPTION_PERFORMANCE_HUD

Specifies option for Performance HUD display.

#define KZU_PREVIEW_SYSTEM_OPTION_ANIMATION_HUD

Specifies option for Animation HUD display.

#define KZU_PREVIEW_SYSTEM_OPTION_BOUNDING_VOLUMES

Specifies option for bounding volume visualization.

#define KZU_PREVIEW_CAMERA_FOCUS_MARGIN

Preview camera focus margin between camera and selection.

Typedef Documentation

typedef void(* KzuPreviewSystemRender3DCallback)(void *userData, kanzi::Renderer3D *renderer, kanzi::RenderContextStack &renderContextStack, const kanzi::TransformedScene3D *transformedScene)
typedef void(* KzuPreviewSystemProcessInputCallback)(void *userData, const struct KzuEngine *engine, const struct KzcVector2 *point, enum KzsInputPointingDeviceState state, kzU32 buttons, kzInt scroll, kzBool *out_handled)
typedef void(* KzuPreviewSystemHandleKeyCallback)(void *userData, enum KzsInputKey keyCode, enum KzsInputKeyDeviceState keyState, kzBool *out_handled)
typedef void(* KzuPreviewSystemPostRenderCallback)(void *userData, kanzi::Renderer3D *renderer, kanzi::LayerRenderpass *layerRenderpass, kanzi::TransformedScene2D *layerTransformedScene)
typedef void(* KzuPreviewSystemPreRenderCallback)(void *userData, kanzi::Renderer3D *renderer, kanzi::LayerRenderpass *layerRenderpass)
typedef void(* KzuPreviewSystemHandleWindowEventCallback)(void *userData, enum KzsEventType eventType)

Enumeration Type Documentation

Type of a patching event.

Enumerator
KZU_PREVIEW_SYSTEM_PATCH_TYPE_UPDATE 
KZU_PREVIEW_SYSTEM_PATCH_TYPE_REMOVE 

Type of a preview system feature.

Enumerator
KZU_PREVIEW_SYSTEM_FEATURE_HUD 

Current preview system mode.

Enumerator
KZU_PREVIEW_SYSTEM_MODE_INTERACT 

Interactive mode.

KZU_PREVIEW_SYSTEM_MODE_EDIT 

Edit mode.

Function Documentation

KANZI_API kzsError kzuPreviewSystemCreate ( const struct KzcMemoryManager memoryManager,
struct KzuEngine engine,
kanzi::Domain domain,
struct KzuPreviewSystem **  out_previewSystem 
)

Creates a new preview system object.

KANZI_API kzsError kzuPreviewSystemInitialize ( struct KzuPreviewSystem previewSystem)

Initialized the preview system with resource set up.

KANZI_API kzsError KzuPreviewSystemDelete ( struct KzuPreviewSystem previewSystem)

Deletes a preview system object.

KANZI_API kzsError kzuPreviewSystemUpdate ( struct KzuPreviewSystem previewSystem,
kzUint  deltaTime 
)

Updates the preview system.

KANZI_API kzsError kzuPreviewSystemHandleInputEvent ( struct KzuPreviewSystem previewSystem,
const struct KzsEvent *  event,
kzBool out_inputHandled 
)

Notifies the preview system of an input event.

Output parameter is set to KZ_TRUE if the preview system has consumed the event.

KANZI_API kzsError kzuPreviewSystemRender ( struct KzuPreviewSystem previewSystem,
kanzi::Renderer3D renderer,
const struct KzcVector2 offset,
const struct KzcVector2 limits 
)

Renders the preview system.

KANZI_API kzsError kzuPreviewSystemVisualizeLayers ( const struct KzuPreviewSystem previewSystem,
kanzi::Renderer3D renderer,
kanzi::Node2D rootLayer 
)

Visualizes the preview system layers.

KANZI_API kzsError kzuPreviewSystemDebugRender3D ( const KzuPreviewSystem previewSystem,
kanzi::Renderer3D renderer,
kanzi::RenderContextStack renderContextStack,
const kanzi::TransformedScene3D transformedScene 
)

Renders 3D debug objects.

KANZI_API kzsError kzuPreviewSystemPreContentRendered ( struct KzuPreviewSystem previewSystem,
kanzi::Renderer3D renderer,
kanzi::LayerRenderpass layerComposer 
)

Triggers pre-render callback.

KANZI_API kzsError kzuPreviewSystemPostContentRendered ( struct KzuPreviewSystem previewSystem,
kanzi::Renderer3D renderer,
const struct KzcVector2 offset,
const struct KzcVector2 limits,
kanzi::LayerRenderpass layerComposer,
kanzi::TransformedScene2D layerTransformedScene 
)

Triggers post-render callback.

KANZI_API kzsError kzuPreviewSystemProjectReloaded ( struct KzuPreviewSystem previewSystem,
kanzi::Domain domain 
)

Notifies the preview system that a project has been reloaded.

KANZI_API kzsError kzuPreviewSystemEnableFeature ( struct KzuPreviewSystem previewSystem,
enum KzuPreviewSystemFeatureType  feature 
)

Enables a preview system feature.

KANZI_API kzsError kzuPreviewSystemDisableFeature ( struct KzuPreviewSystem previewSystem,
enum KzuPreviewSystemFeatureType  feature 
)

Disables a preview system feature.

KANZI_API kzsError kzuPreviewSystemToggleFeature ( struct KzuPreviewSystem previewSystem,
enum KzuPreviewSystemFeatureType  feature 
)

Toggles a preview system feature.

KANZI_API struct KzuHud* kzuPreviewSystemGetHud ( const struct KzuPreviewSystem previewSystem)

Returns the hud from preview system.

KANZI_API kzsError kzuPreviewSystemSetEditLegend ( struct KzuPreviewSystem previewSystem,
kzString  legend 
)

Sets edit legend for preview system.

KANZI_API kzsError kzuPreviewSystemSetCameraLegend ( struct KzuPreviewSystem previewSystem,
kzString  legend 
)

Sets camera legend for preview system.

KANZI_API void kzuPreviewSystemSetScreen ( struct KzuPreviewSystem previewSystem,
kanzi::Screen screen 
)

Sets the current screen to the preview system.

KANZI_API kanzi::Screen* kzuPreviewSystemGetScreen ( const struct KzuPreviewSystem previewSystem)

Gets screen from preview system.

KANZI_API kanzi::Node2D* kzuPreviewSystemGetRootLayer ( const struct KzuPreviewSystem previewSystem)

Gets the current root layer.

KANZI_API kzsError kzuPreviewSystemSetMode ( struct KzuPreviewSystem previewSystem,
enum KzuPreviewSystemMode  mode 
)

Sets the edit/interact mode for preview.

KANZI_API enum KzuPreviewSystemMode kzuPreviewSystemGetMode ( const struct KzuPreviewSystem previewSystem)

Gets the edit/interact mode from preview.

KANZI_API struct KzuEngine* kzuPreviewSystemGetEngine ( const struct KzuPreviewSystem previewSystem)

Gets the engine.

KANZI_API const struct KzcMemoryManager* kzuPreviewSystemGetMemoryManager ( const struct KzuPreviewSystem previewSystem)

Gets the memory manager.

KANZI_API kanzi::Domain* kzuPreviewSystemGetUIDomain ( const struct KzuPreviewSystem previewSystem)

Gets the project.

KANZI_API kzsError kzuPreviewSystemBeginOverdrawVisualization ( struct KzuPreviewSystem previewSystem,
kanzi::Renderer3D renderer 
)

Begins overdraw visualization.

KANZI_API kzsError kzuPreviewSystemEndOverdrawVisualization ( const struct KzuPreviewSystem previewSystem,
kanzi::Renderer3D renderer 
)

Ends overdraw visualization.

KANZI_API kzsError kzuPreviewSystemSetPreviewOptionInteger ( struct KzuPreviewSystem previewSystem,
kzString  optionName,
kzInt  value 
)

Sets preview option for application.

For example "IsMyCustomVisualizationEnabled", 1.

KANZI_API kzBool kzuPreviewSystemGetPreviewOptionInteger ( const struct KzuPreviewSystem previewSystem,
kzString  optionName,
kzInt out_value 
)

Returns preview option value from application.

Return if it was found

Parameters
optionNameName of the preview option.
out_valueOutput value, KZ_NULL if not required.
KANZI_API kanzi::Viewport2D* kzuPreviewSystemFindFirstViewportLayer ( const struct KzuPreviewSystem previewSystem)

Finds the first viewport layer from given preview system.

KANZI_API void kzuPreviewSystemSetDebugComposer ( KzuPreviewSystem previewSystem,
kanzi::DebugComposerSharedPtr  debugComposer 
)

Sets debug composer for preview system.

KANZI_API kanzi::DebugComposerSharedPtr kzuPreviewSystemGetDebugComposer ( KzuPreviewSystem previewSystem)

Gets debug composer for preview system.

KANZI_API void kzuPreviewSystemSetKeyHandlingEnabled ( struct KzuPreviewSystem previewSystem,
kzBool  enabled 
)

Enables or disables the preview system key handling.

By default, the key handling is enabled.

KANZI_API void kzuPreviewCameraCloneData ( const kanzi::Camera originalCameraNode,
kanzi::Camera targetCameraNode 
)

Helper function to clone camera specific data (properties) from node to target.

KANZI_API void kzuPreviewSystemSetRender3DCallback ( struct KzuPreviewSystem previewSystem,
KzuPreviewSystemRender3DCallback  callback,
void *  userdata 
)

Sets 3D render callback handler.

KANZI_API void kzuPreviewSystemSetProcessInputCallback ( struct KzuPreviewSystem previewSystem,
KzuPreviewSystemProcessInputCallback  callback,
void *  userdata 
)

Sets mouse input processing callback handler.

KANZI_API void kzuPreviewSystemSetHandleKeyCallback ( struct KzuPreviewSystem previewSystem,
KzuPreviewSystemHandleKeyCallback  callback,
void *  userdata 
)

Sets keyboard input processing callback handler.

KANZI_API void kzuPreviewSystemSetPreRenderCallback ( struct KzuPreviewSystem previewSystem,
KzuPreviewSystemPreRenderCallback  callback,
void *  userdata 
)

Sets pre-render callback handler.

KANZI_API void kzuPreviewSystemSetPostRenderCallback ( struct KzuPreviewSystem previewSystem,
KzuPreviewSystemPostRenderCallback  callback,
void *  userdata 
)

Sets post-render callback handler.

KANZI_API void kzuPreviewSystemSetHandleWindowEventCallback ( struct KzuPreviewSystem previewSystem,
KzuPreviewSystemHandleWindowEventCallback  callback,
void *  userdata 
)

Sets window event processing callback handler.

KANZI_API void kzuPreviewSystemSetNavigationTransform ( struct KzuPreviewSystem previewSystem,
const struct KzcMatrix3x3 matrix 
)

Sets pan/zoom transformation matrix.

KANZI_API const struct KzcMatrix3x3* kzuPreviewSystemGetNavigationTransform ( struct KzuPreviewSystem previewSystem)

Returns pan/zoom transformation matrix.

KANZI_API void kzuPreviewSystemSetNavigationEnabled ( struct KzuPreviewSystem previewSystem,
kzBool  enabled 
)

Enables or disables the preview pan/zoom mode.

TODO: this only works as a hint for engine KzuEngine, KzuPreviewSystem doesn't implement pan/zoom mode, WorkingViewport does; Engine uses it to handle background clears or letting someone else (WorkingViewport) deal with them

KANZI_API kzBool kzuPreviewSystemIsNavigationEnabled ( const struct KzuPreviewSystem previewSystem)

Returns KZ_TRUE if preview zoom mode is enabled.

KANZI_API void kzuPreviewSystemSetRenderingAreaOffset ( struct KzuPreviewSystem previewSystem,
const KzcVector2 offset 
)

Sets rendering area offset.

KANZI_API void kzuPreviewSystemGetRenderingAreaOffset ( const struct KzuPreviewSystem previewSystem,
KzcVector2 offset 
)

Returns rendering area offset.

KANZI_API kzsError kzuPreviewCameraSystemGetSelectionVolume ( const struct KzcDynamicArray nodePaths,
const kanzi::TransformedScene3D transformedScene,
struct KzcVolume out_volume 
)

Utility to get total volume from selected paths.

KANZI_API kzsError kzuPreviewSystemInitializePreviewFeatures ( KzuPreviewSystem previewSystem,
const KzuPreviewProperties previewProperties 
)
KANZI_API void kzuPreviewSystemSetGridEnabled ( const KzuPreviewSystem previewSystem,
bool  enabled 
)
KANZI_API bool kzuPreviewSystemIsGridEnabled ( const KzuPreviewSystem previewSystem)
KANZI_API void kzuPreviewSystemSetDebugObjectsEnabled ( const KzuPreviewSystem previewSystem,
bool  enabled 
)
KANZI_API bool kzuPreviewSystemIsDebugObjectsEnabled ( const KzuPreviewSystem previewSystem)
KANZI_API void kzuPreviewSystemSetActualLayoutBoundingBoxVisualizationEnabled ( const KzuPreviewSystem previewSystem,
bool  enabled 
)
KANZI_API bool kzuPreviewSystemIsActualLayoutBoundingBoxVisualizationEnabled ( const KzuPreviewSystem previewSystem)
KANZI_API void kzuPreviewSystemSetAllocatedLayoutBoundingBoxVisualizationEnabled ( const KzuPreviewSystem previewSystem,
bool  enabled 
)
KANZI_API bool kzuPreviewSystemIsAllocatedLayouBoundingBoxVisualizationEnabled ( const KzuPreviewSystem previewSystem)
KANZI_API void kzuPreviewSystemSetSelectionVisualizationEnabled ( const KzuPreviewSystem previewSystem,
bool  enabled 
)
KANZI_API bool kzuPreviewSystemIsSelectionVisualizationEnabled ( const KzuPreviewSystem previewSystem)
KANZI_API void kzuPreviewSystemSetBackgroundCheckerVisualizationEnabled ( KzuPreviewSystem previewSystem,
bool  enabled 
)
KANZI_API bool kzuPreviewSystemIsBackgroundCheckerVisualizationEnabled ( const KzuPreviewSystem previewSystem)