UDN
Search public documentation:

APEXOverview
日本語訳
中国翻译
한국어

Interested in the Unreal Engine?
Visit the Unreal Technology site.

Looking for jobs and company info?
Check out the Epic games site.

Questions about support via UDN?
Contact the UDN Staff

UE3 Home > APEX Framework

APEX Framework


APEX is a framework developed by NVIDIA that provides both tools for content creation and run-time libraries that allow artists and developers to create complex physical simulations more easily. The Unreal Engine 3 integration of APEX includes realistic cloth which can be used for simulating flags, banners, curtains, or clothing for characters. In addition, the APEX integration includes the ability to simulate destruction of physical objects for the creation of destructible environments.

More information about APEX can be found on the NVIDIA APEX page.

APEX Modules
  • APEX Clothing - Module for creating realtime realistic cloth simulation
  • APEX Destruction - Module for creating destructible physical environments and objects

Getting the Tools


Tools for creating APEX assets may be obtained by following these instructions NVIDIA APEX Tools. Note: UE3 is currently using APEX 1.2.1. Please ensure that you download the proper versions of the tools.

Tutorials


APEX Versions


  • APEX 1.1 - Feb 2012 - July 2012
    • APEX Clothing
      • Improved Clothing Performance for multiple actors
      • Ability to uniformly scale actors at creation
      • Improved material mapping allows actors to override asset materials
      • Improved DCC tools
    • APEX Destruction
      • GPU Rigid Body Simulation
      • Improved Collision Hull Accuracy
      • LOD by size, allows destruction to remove the smallest pieces first when more resources are needed
  • APEX 1.2.1 - November 2012 - Present
    • General
      • All APEX debug visualizations supported with "apexvis" command
      • Get APEX stats with "stat apex"
    • APEX Clothing
      • New embedded solver
      • Local Space Simulation
      • Improved material mapping allows actors to override asset materials
      • Improved DCC tools
      • Fix for displaying correct physical clothing LOD in AnimSetViewer
      • Support for different number of LODS in clothing asset and skeletal mesh
    • APEX Destruction
      • Support moving actors
      • Voronoi fracturing
      • Weapons affect APEX destructible in UDK

LOD


APEX uses an benefit LOD system in order to control the load on system resources. The Resource budget is a number used to represent the power of a system. Benefits are calculated during run time for each APEX Module, such as Clothing or Destruction, and then further for actor in that module. Using this system you can signal to APEX which module gets priority on lower resource systems. For UE3 the LOD is essentially defaulted off by setting the available resources very high. Here is the information about setting the LOD settings in UE3.

  • There are three global APEX LOD knobs that can be set in UE3:
    • APEX LOD resource budget: Global LOD budget for APEX clothing and destruction.
    • APEX destruction max chunk island count: Size of the FIFO for destructible chunks.
    • APEX destruction max chunk separation LOD: This one is a bit confusing. It’s a scale value between 0 and 1 that is applied to two separate destructible asset parameters, maximum separation distance and min/max lifetime. Setting it to 0 won’t make the chunk lifetime 0, it will make the lifetime the minimum value in the destructible asset.

  • The usual way to set the APEX LOD budget is in the *Engine.ini file. In the [SystemSettings] section there are three settings:
    • ApexLODResourceBudget - Default is 1000000000000000000000, just a large number to represent no limit to the amount of resources
    • ApexDestructionMaxChunkIslandCount - Default is 2147483647, don't limit the number of chunks
    • ApexDestructionMaxChunkSeparationLOD - Default is 1.0
  • These are all set to the max in BaseEngine.ini so that by default all APEX assets will be visible. We expect that each game developer will set good default values for their game using UE3's AppCompat mechanism. For development, we can easily override the defaults by editing the game's *Engine.ini file, for example UDKEngine.ini.

  • Console commands can be used from the Unreal console or triggered through Kismet.
    • apex_lod_resource_budget: By itself, displays the current APEX LOD resources consumed by active APEX assets.
    • apex_lod_resource_budget X: Set APEX LOD budget to X.
    • apex_lod_resource_budget default: Reset APEX LOD budget to the value from the INI file.
    • ApexDestructibleMaxChunk X: Set Apex destruction max chunk island count to X.
    • ApexDestructibleMaxChunk default: Reset Apex destruction max chunk island count to the value from the INI file.
    • ApexDestructibleLod X: Set Apex destruction max chunk separation LOD value to X. Must be between 0 and 1.
    • ApexDestructibleLod default: Reset Apex destruction max chunk separation LOD value to the value from the INI file.