You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
o3de/Gems/SceneLoggingExample
Chris Galvan 3a9268c955
Merge pull request #3685 from aws-lumberyard-dev/cgalvan/UpdateProjectConfiguratorReferences
Updated remaining Project Configurator references to Project Manager and consolidated JsonUtils API usage.
4 years ago
..
Code Merge pull request #3685 from aws-lumberyard-dev/cgalvan/UpdateProjectConfiguratorReferences 4 years ago
CMakeLists.txt Shorten copyright headers by splitting into 2 lines (#2213) 4 years ago
ReadMe.txt FBX -> Scene, part 2. Code changes, file renames (#1704) 5 years ago
gem.json Adds Links to Gem Directory and Documentation for Gems (#2922) 4 years ago
preview.png Initial commit 5 years ago

ReadMe.txt

The Scene Logging Example demonstrates how to extend the SceneAPI by adding additional logging to the pipeline. The SceneAPI is 
a collection of libraries that handle loading scene files and converting content to data that the Open 3D Engine and its editor can load. 

The following approach is used:
    1. The SceneBuilder and SceneData load and convert the scene file (for example, .fbx) into a graph that is stored in memory. 
    2. SceneCore and SceneData are used to create a manifest with instructions about how to export the file. 
    3. SceneData analyzes the manifest and memory graph and creates defaults.
    4. Scene Settings allows updates to the manifest through a UI.
    5. The ResourceCompilerScene uses the instructions from the manifest and the data in the graph to create assets. These assets are ready for Open 3D Engine to use.

The example gem demonstrates the following key features:
    - Initialization of the SceneAPI libraries.
        (See SceneLoggingExampleModule.cpp)
    - Adding a LoadingComponent to hook into the scene loading and react to loading events.
        (See Processing/LoadingTrackingProcessor)
    - Extension of the Scene Settings UI and ability to set defaults using the BehaviorComponent.
        (See Groups/LoggingGroup and Behaviors/LoggingGroupBehavior)
    - Adding an ExportingComponent to hook into the scene converting and exporting events.
        (See Behaviors/ExportTrackingProcessor)