Defines

MAX Directory IDs

The following IDs represent a set of application system directories that are used in various contexts. More...

Defines

#define  APP_FONT_DIR   0
  The ID used to access the default Font files location.
#define  APP_SCENE_DIR   1
  The ID used to access the default location where Scene files are saved.
#define  APP_IMPORT_DIR   2
  The ID used to access the default location where import data is browsed from.
#define  APP_EXPORT_DIR   3
  The ID used to access the default location where export data is saved to.
#define  APP_HELP_DIR   4
  The ID used to access the system location where help files are stored.
#define  APP_EXPRESSION_DIR   5
  The ID used to access the default location where data files relating to the Expression Controller are saved.
#define  APP_PREVIEW_DIR   6
  The ID used to access the default location where preview rendering outputs are saved.
#define  APP_IMAGE_DIR   7
  The ID used to access the default location where all non-material images used in scenes are browsed from.
#define  APP_SOUND_DIR   8
  The ID used to access the default location where all sound files used in scenes are browsed from.
#define  APP_PLUGCFG_DIR   9
  The ID used to access the system location where all plugin configuration files are saved and loaded.
#define  APP_MAXSTART_DIR   10
  The ID used to access the system location where the application will look for default application startup scene.
#define  APP_VPOST_DIR   11
  The ID used to access the default location where all Video Post files used in scenes are browsed from.
#define  APP_DRIVERS_DIR   12
  The ID used to access the system location where the application will look for graphic driver specifc files.
#define  APP_AUTOBACK_DIR   13
  The ID used to access the default location where the autobackup files are saved.
#define  APP_MATLIB_DIR   14
  The ID used to access the default location where the material library files are loaded and saved.
#define  APP_SCRIPTS_DIR   15
  The ID used to access the system location where scripts are saved.
#define  APP_STARTUPSCRIPTS_DIR   16
  The ID used to access the system location where startup scripts are saved.
#define  APP_MARKETDEFAULTS_DIR   17
  The ID used to access the system location where a market defaults set is loaded from.
#define  APP_RENDER_PRESETS_DIR   18
  The ID used to access the default location where render preset files are loaded and saved.
#define  APP_DIR_OFFSET   0
#define  APP_UI_DIR   (APP_DIR_OFFSET + 19)
  The ID used to access the system location where files relating to the User Interface files are read from.
#define  APP_MAX_SYS_ROOT_DIR   (APP_DIR_OFFSET + 20)
  With Windows Vista, plugins will no longer have direct write access to the application install path.
#define  APP_RENDER_OUTPUT_DIR   (APP_DIR_OFFSET + 21)
  The ID used to access the default location where render output files are saved.
#define  APP_ANIMATION_DIR   (APP_DIR_OFFSET + 22)
  The ID used to access the default location where animation files are loaded and saved.
#define  APP_ARCHIVES_DIR   (APP_DIR_OFFSET + 23)
  The ID used to access the default location where archived scene files are saved.
#define  APP_PHOTOMETRIC_DIR   (APP_DIR_OFFSET + 24)
  The ID used to access the default location where photometric data files are loaded.
#define  APP_RENDER_ASSETS_DIR   (APP_DIR_OFFSET + 25)
  The ID used to access the default location where render assets (such as mental ray photon maps, etc.) are loaded and saved.
#define  APP_USER_SCRIPTS_DIR   (APP_DIR_OFFSET + 26)
  The ID used to access the default location where a user can safely write or create a script file.
#define  APP_USER_MACROS_DIR   (APP_DIR_OFFSET + 27)
  The ID used to access the default location where a user can safely write or create a macroscript file.
#define  APP_USER_STARTUPSCRIPTS_DIR   (APP_DIR_OFFSET + 28)
  The ID used to access the default location where a user can safely write or create a script file which is run at startup.
#define  APP_TEMP_DIR   (APP_DIR_OFFSET + 29)
  The ID used to access the system location where a temp file can safely be written.
#define  APP_USER_ICONS_DIR   (APP_DIR_OFFSET + 30)
  The ID used to access the default location where a user can safely create icon files that can be used by the Customizable User Interface system.
#define  APP_MAXDATA_DIR   (APP_DIR_OFFSET + 31)
  The ID used to access the system location where user specific configuration files should be written.
#define  APP_PROJECT_FOLDER_DIR   (APP_DIR_OFFSET + 32)
  The ID used to access the root folder of the current system project.
#define  APP_DOWNLOAD_DIR   (APP_DIR_OFFSET + 33)
  The ID used to access the user defined location where downloaded files should be deposited by default.
#define  APP_PROXIES_DIR   (APP_DIR_OFFSET + 34)
  The ID used to access the user defined location where proxies (mainly bitmaps) are stored.
#define  APP_MANAGED_ASSEMBLIES_DIR   (APP_DIR_OFFSET + 35)
  The ID used to access the folder that contains the .NET assemblies that are either meant to be plug-ins for the application, or contains components that are relevant to the application.
#define  APP_PAGE_FILE_DIR   (APP_DIR_OFFSET + 36)
  The ID used to access the folder that contains bitmap tile pagefiles, for the Bitmap Pager.
#define  APP_SHADER_CACHE_DIR   (APP_DIR_OFFSET + 37)
  The ID used to access the system location where a shader cache file can safely be written.

Detailed Description

The following IDs represent a set of application system directories that are used in various contexts.

The most common usage for these IDs is in the IPathConfigMgr::GetDir() and IPathConfigMgr::SetDir(int) methods.


Define Documentation

#define APP_FONT_DIR   0

The ID used to access the default Font files location.

See also:
IPathConfigMgr::GetDir()
IPathConfigMgr::SetDir(int)
#define APP_SCENE_DIR   1

The ID used to access the default location where Scene files are saved.

See also:
IPathConfigMgr::GetDir()
IPathConfigMgr::SetDir(int)
#define APP_IMPORT_DIR   2

The ID used to access the default location where import data is browsed from.

See also:
IPathConfigMgr::GetDir()
IPathConfigMgr::SetDir(int)
#define APP_EXPORT_DIR   3

The ID used to access the default location where export data is saved to.

See also:
IPathConfigMgr::GetDir()
IPathConfigMgr::SetDir(int)
#define APP_HELP_DIR   4

The ID used to access the system location where help files are stored.

See also:
IPathConfigMgr::GetDir()
IPathConfigMgr::SetDir(int)
#define APP_EXPRESSION_DIR   5

The ID used to access the default location where data files relating to the Expression Controller are saved.

See also:
IPathConfigMgr::GetDir()
IPathConfigMgr::SetDir(int)
#define APP_PREVIEW_DIR   6

The ID used to access the default location where preview rendering outputs are saved.

See also:
IPathConfigMgr::GetDir()
IPathConfigMgr::SetDir(int)
#define APP_IMAGE_DIR   7

The ID used to access the default location where all non-material images used in scenes are browsed from.

See also:
IPathConfigMgr::GetDir()
IPathConfigMgr::SetDir(int)
#define APP_SOUND_DIR   8

The ID used to access the default location where all sound files used in scenes are browsed from.

See also:
IPathConfigMgr::GetDir()
IPathConfigMgr::SetDir(int)
#define APP_PLUGCFG_DIR   9

The ID used to access the system location where all plugin configuration files are saved and loaded.

See also:
IPathConfigMgr::GetDir()
IPathConfigMgr::SetDir(int)
#define APP_MAXSTART_DIR   10

The ID used to access the system location where the application will look for default application startup scene.

See also:
IPathConfigMgr::GetDir()
IPathConfigMgr::SetDir(int)
#define APP_VPOST_DIR   11

The ID used to access the default location where all Video Post files used in scenes are browsed from.

See also:
IPathConfigMgr::GetDir()
IPathConfigMgr::SetDir(int)
#define APP_DRIVERS_DIR   12

The ID used to access the system location where the application will look for graphic driver specifc files.

See also:
IPathConfigMgr::GetDir()
IPathConfigMgr::SetDir(int)
#define APP_AUTOBACK_DIR   13

The ID used to access the default location where the autobackup files are saved.

See also:
IPathConfigMgr::GetDir()
IPathConfigMgr::SetDir(int)
#define APP_MATLIB_DIR   14

The ID used to access the default location where the material library files are loaded and saved.

See also:
IPathConfigMgr::GetDir()
IPathConfigMgr::SetDir(int)
#define APP_SCRIPTS_DIR   15

The ID used to access the system location where scripts are saved.

This location is also included in the maxscript search path.

See also:
IPathConfigMgr::GetDir()
IPathConfigMgr::SetDir(int)
#define APP_STARTUPSCRIPTS_DIR   16

The ID used to access the system location where startup scripts are saved.

Scripts found in this folder will be run when the application starts up. This location is also included in the maxscript search path.

See also:
IPathConfigMgr::GetDir()
IPathConfigMgr::SetDir(int)
#define APP_MARKETDEFAULTS_DIR   17

The ID used to access the system location where a market defaults set is loaded from.

See also:
IPathConfigMgr::GetDir()
IPathConfigMgr::SetDir(int)
#define APP_RENDER_PRESETS_DIR   18

The ID used to access the default location where render preset files are loaded and saved.

See also:
IPathConfigMgr::GetDir()
IPathConfigMgr::SetDir(int)
#define APP_DIR_OFFSET   0
#define APP_UI_DIR   (APP_DIR_OFFSET + 19)

The ID used to access the system location where files relating to the User Interface files are read from.

See also:
IPathConfigMgr::GetDir()
IPathConfigMgr::SetDir(int)
#define APP_MAX_SYS_ROOT_DIR   (APP_DIR_OFFSET + 20)

With Windows Vista, plugins will no longer have direct write access to the application install path.

Application data and settings needs to be written to a user profile path.

Plugins should follow the following rules from writing files:

  • Plugins that need to write configuration data should rely on APP_PLUGCFG_DIR.
  • Plugins that need to write miscellaneous data can use APP_MAXDATA_DIR. This path is pointed to a user profile directory and is safe to write to. Plugins may create subdirectories under this path.
  • Plugins that need to write out temporary files should rely on APP_TEMP_DIR.
  • Finally, plugins that need to dynamically look up the application install root can use the APP_MAX_SYS_ROOT_DIR value.

The ID used to access the system location where application executable resides.

See also:
IPathConfigMgr::GetDir()
IPathConfigMgr::SetDir(int)
#define APP_RENDER_OUTPUT_DIR   (APP_DIR_OFFSET + 21)

The ID used to access the default location where render output files are saved.

See also:
IPathConfigMgr::GetDir()
IPathConfigMgr::SetDir(int)
#define APP_ANIMATION_DIR   (APP_DIR_OFFSET + 22)

The ID used to access the default location where animation files are loaded and saved.

See also:
IPathConfigMgr::GetDir()
IPathConfigMgr::SetDir(int)
#define APP_ARCHIVES_DIR   (APP_DIR_OFFSET + 23)

The ID used to access the default location where archived scene files are saved.

See also:
IPathConfigMgr::GetDir()
IPathConfigMgr::SetDir(int)
#define APP_PHOTOMETRIC_DIR   (APP_DIR_OFFSET + 24)

The ID used to access the default location where photometric data files are loaded.

See also:
IPathConfigMgr::GetDir()
IPathConfigMgr::SetDir(int)
#define APP_RENDER_ASSETS_DIR   (APP_DIR_OFFSET + 25)

The ID used to access the default location where render assets (such as mental ray photon maps, etc.) are loaded and saved.

See also:
IPathConfigMgr::GetDir()
IPathConfigMgr::SetDir(int)
#define APP_USER_SCRIPTS_DIR   (APP_DIR_OFFSET + 26)

The ID used to access the default location where a user can safely write or create a script file.

This location is also included in the maxscript search path.

See also:
IPathConfigMgr::GetDir()
IPathConfigMgr::SetDir(int)
#define APP_USER_MACROS_DIR   (APP_DIR_OFFSET + 27)

The ID used to access the default location where a user can safely write or create a macroscript file.

This is searched at startup to locate custom macroscript actions.

See also:
IPathConfigMgr::GetDir()
IPathConfigMgr::SetDir(int)
#define APP_USER_STARTUPSCRIPTS_DIR   (APP_DIR_OFFSET + 28)

The ID used to access the default location where a user can safely write or create a script file which is run at startup.

Scripts found in this folder will be run when the application starts up. This location is also included in the maxscript search path.

See also:
IPathConfigMgr::GetDir()
IPathConfigMgr::SetDir(int)
#define APP_TEMP_DIR   (APP_DIR_OFFSET + 29)

The ID used to access the system location where a temp file can safely be written.

Note that the application does no special action to clean up this folder on exit, that it is still the responsibility of the developer to remove temporary files.

See also:
IPathConfigMgr::GetDir()
IPathConfigMgr::SetDir(int)
#define APP_USER_ICONS_DIR   (APP_DIR_OFFSET + 30)

The ID used to access the default location where a user can safely create icon files that can be used by the Customizable User Interface system.

This location is included in the search path when the application is attempting to load an icon file by name.

See also:
IPathConfigMgr::GetDir()
IPathConfigMgr::SetDir(int)
#define APP_MAXDATA_DIR   (APP_DIR_OFFSET + 31)

The ID used to access the system location where user specific configuration files should be written.

This value was introduced due to support Least Privilege Users.

See also:
APP_MAX_SYS_ROOT_DIR
IPathConfigMgr::GetDir()
IPathConfigMgr::SetDir(int)
#define APP_PROJECT_FOLDER_DIR   (APP_DIR_OFFSET + 32)

The ID used to access the root folder of the current system project.

Developers should prefer to access this value using the methods named below.

See also:
IPathConfigMgr::GetCurrentProjectFolder()
IPathConfigMgr::SetCurrentProjectFolder(const MaxSDK::Util::Path&)
#define APP_DOWNLOAD_DIR   (APP_DIR_OFFSET + 33)

The ID used to access the user defined location where downloaded files should be deposited by default.

See also:
IPathConfigMgr::GetCurrentProjectFolder()
IPathConfigMgr::SetCurrentProjectFolder(const MaxSDK::Util::Path&)
#define APP_PROXIES_DIR   (APP_DIR_OFFSET + 34)

The ID used to access the user defined location where proxies (mainly bitmaps) are stored.

See also:
IPathConfigMgr::GetCurrentProjectFolder()
IPathConfigMgr::SetCurrentProjectFolder(const MaxSDK::Util::Path&)
#define APP_MANAGED_ASSEMBLIES_DIR   (APP_DIR_OFFSET + 35)

The ID used to access the folder that contains the .NET assemblies that are either meant to be plug-ins for the application, or contains components that are relevant to the application.

See also:
IPathConfigMgr::GetCurrentProjectFolder()
IPathConfigMgr::SetCurrentProjectFolder(const MaxSDK::Util::Path&)
#define APP_PAGE_FILE_DIR   (APP_DIR_OFFSET + 36)

The ID used to access the folder that contains bitmap tile pagefiles, for the Bitmap Pager.

See also:
IBitmapPager::GetPageFilePath()
IBitmapPager::SetPageFilePath(const MCHAR* path)
#define APP_SHADER_CACHE_DIR   (APP_DIR_OFFSET + 37)

The ID used to access the system location where a shader cache file can safely be written.

These are shaders that have been compiled by 3ds Max and stored for later usage. The compiled shaders can live longer than a 3ds Max session, being reused whenever possible.

See also:
IPathConfigMgr::GetDir()
IPathConfigMgr::SetDir(int)