123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591 |
- ; ---- Enable/Disable platforms for the entire project. AssetProcessor will automatically add the current platform by default.
- ; PLATFORM DEFINITIONS
- ; [Platform (unique identifier)]
- ; tags=(comma-seperated-tags)
- ;
- ; note: the 'identifier' of a platform is the word(s) following the "Platform" keyword (so [Platform pc] means identifier
- ; is 'pc' for example. This is used to name its assets folder in the cache and should be used in your bootstrap.cfg
- ; or your main.cpp to choose what assets to load for that particular platform.
- ; Its primary use is to enable additional non-host platforms (Ios, android...) that are not the current platform.
- ; note: 'tags' is a comma-seperated list of tags to tag the platform with that builders can inspect to decide what to do.
- ; while builders can accept any tags you add in order to make decisions, common tags are
- ; tools - this platform can host the tools and editor and such
- ; renderer - this platform runs the client engine and renders on a GPU. If missing we could be on a server-only platform
- ; mobile - a mobile platform such as a set top box or phone with limited resources
- ; console - a console platform
- ; server - a server platform of some kind, usually headless, no renderer.
- [Platform pc]
- tags=tools,renderer,dx12,vulkan
- [Platform es3]
- tags=android,mobile,renderer,vulkan
- [Platform ios]
- tags=mobile,renderer,metal
- [Platform osx_gl]
- tags=tools,renderer,metal
- ; this is an example of a headless platform that has no renderer.
- ; To use this you would still need to make sure 'assetplatform' in your startup params in your main() chooses this 'server' platform as your server 'assets' flavor
- [Platform server]
- tags=server,dx12,vulkan
- ; this section allows you to turn on various platforms in addition to the host platform you're running on
- ; 'enabled' is AUTOMATICALLY TRUE for the current platform that you are running on, so it is not necessary to force it to true for that platform
- ; To enable any additional platform, just uncomment the appropriate line below.
- [Platforms]
- ;pc=enabled
- ;es3=enabled
- ;ios=enabled
- ;osx_gl=enabled
- ;xenia=enabled
- ;jasper=enabled
- ;provo=enabled
- ;salem=enabled
- ;server=enabled
- ; ---- The number of worker jobs, 0 means use the number of Logical Cores
- [Jobs]
- minJobs=1
- maxJobs=0
- ; cacheServerAddress is the location of the asset server cache.
- ; Currently for a network share server this would be the absolute file path to the network share folder.
- [Server]
- ;cacheServerAddress=
- ; ---- add any metadata file type here that needs to be monitored by the AssetProcessor.
- ; Modifying these meta file will cause the source asset to re-compile again.
- ; They are specified in the following format
- ; metadata extension=original extension to replace
- ; if the metadata extension does not replace the original, then the original can be blank
- ; so for example if your normal file is blah.tif and your metafile for that file is blah.tif.exportsettings
- ; then your declaration would be exportsettings= ; ie, it would be blank
- ; however if your metafile REPLACES the extension (for example, if you have the file blah.i_caf and its metafile is blah.exportsettings)
- ; then you specify the original extension here to narrow the scope.
- ; If a relative path to a specific file is provided instead of an extension, a change to the file will change all files
- ; with the associated extension (e.g. Animations/SkeletonList.xml=i_caf will cause all i_caf files to recompile when
- ; Animations/SkeletonList.xml within the current game project changes)
- [MetaDataTypes]
- exportsettings=
- animsettings=i_caf
- Animations/SkeletonList.xml=i_caf
- cbc=abc
- fbx.assetinfo=fbx
- ; ---- add any folders to scan here. The priority order is the order they appear here
- ; available macros are
- ; @ROOT@ - the location of engineroot.txt
- ; @GAMENAME@ - the name of the current game project, for example 'RPGSample'
- ; note that they are sorted by their 'order' value, and the lower the order the more important an asset is
- ; lower order numbers override higher ones.
- ; If specified, output will be prepended to every path found in that recognizer's watch folder.
- ; Note that you can also make the scan folder platform specific by using the keywords include and exclude.
- ; Both include and exclude can contain either platform tags, platform identifiers or both.
- ; if no include is specified, all currently enabled platforms are included by default.
- ; If includes ARE specified, it will be filtered down by the list of currently enabled platforms.
- ; [ScanFolder (unique identifier)]
- ; include = (comma seperated platform tags or identifiers)
- ; exclude = (comma seperated platform tags or identifiers)
- ; For example if you want to include a scan folder only for platforms that have the platform tags tools and renderer
- ; but omit it for platform osx_gl, you will have a scanfolder rule like
- ; [ScanFolder (unique identifier)]
- ; watch=@ROOT@/foo
- ; include = tools, renderer
- ; exclude = osx_gl
- [ScanFolder Game]
- watch=@ROOT@/@GAMENAME@
- display=@GAMENAME@
- recursive=1
- order=0
- ; gems will be auto-added from 100 onwards
- [ScanFolder Root]
- watch=@ROOT@
- recursive=0
- order=10000
- [ScanFolder Engine]
- watch=@ENGINEROOT@/Engine
- recursive=1
- order=20000
- [ScanFolder Editor]
- watch=@ENGINEROOT@/Editor
- output=editor
- recursive=1
- order=30000
- include=tools,renderer
- ;Excludes files that match the pattern or glob
- ; if you use a pattern, remember to escape your backslashes (\\)
- [Exclude _LevelBackups]
- pattern=.*\\/Levels\\/.*\\/_savebackup\\/.*
- [Exclude _LevelAutoBackups]
- pattern=.*\\/Levels\\/.*\\/_autobackup\\/.*
- [Exclude HoldFiles]
- pattern=.*\\/Levels\\/.*_hold\\/.*
- [Exclude TempFiles]
- ; note that $ has meaning to regex, so we escape it.
- pattern=.*\\/\\$tmp[0-9]*_.*
- [Exclude AlembicCompressionTemplates]
- pattern=.*\\/Presets\\/GeomCache\\/.*
- [Exclude TmpAnimationCompression]
- pattern=.*\\/Editor\\/Tmp\\/AnimationCompression\\/.*
- [Exclude EventLog]
- pattern=.*\\/Editor\\/.*eventlog\\.xml
- [Exclude GameGemsCode]
- pattern=.*\\/Gem\\/Code\\/.*
- [Exclude GameGemsResources]
- pattern=.*\\/Gem\\/Resources\\/.*
- [Exclude Private Certs]
- pattern=.*\DynamicContent\\/Certificates\\/Private\\/.*
- [Exclude CMakeLists]
- pattern=.*\\/CMakeLists.txt
- [Exclude CMakeFiles]
- pattern=.*\\/.*\\.cmake
- ;------------------------------------------------------------------------------
- ; Large Worlds Test
- ;------------------------------------------------------------------------------
- [Exclude Work In Progress Folders]
- pattern=.*\\/WIP\\/.*
- [Exclude Content Source Folders]
- pattern=.*\\/CONTENT_SOURCE\\/.*
- [Exclude Art Source Folders]
- pattern=.*\\/ArtSource\\/.*
- ;------------------------------------------------------------------------------
- ; RC params mapping examples
- ;------------------------------------------------------------------------------
- ; note that productAssetType is a means of setting the output asset Type (as in AZ::Data::AssetType) of a simple job
- ; and is the recommended way to specify that a certain kind of file (such as '*.myextension') becomes registered as the
- ; actual UUID of that type in the engine itself.
- ; Use a regex for matching files, same params for all platforms
- ;[RC TGAs]
- ;pattern=.+\\.tga$
- ;params=/tga /texture
- ; Use a glob, have special params for es3 platform
- ;[RC TIFFs]
- ;glob=*.tif
- ;params=/texture
- ;es3=/pvrt
- ; You can also modify a version to compile all matching files again
- ; By default the version is empty
- ;[RC tif]
- ;glob=*.tif
- ;params = \\someparams
- ;version =1.0
- ; This will make the AssetProcessor compile all the .tif files again
- ; you can also optionally supply a priority.
- ; this is used to sort jobs when no other external circumstance sorts them
- ; for example, copy jobs will be higher in priority than other jobs that are not copy jobs
- ; however if they're both copy jobs or both not, and no other circumstances apply, then priority will be used.
- ; default priority is zero if not specified
- ; you can specify an option to skip processing for a file type based on the platform.
- ; for example, if you dont want to process tif files for ios, you can make tif files
- ; process on any platform except for ios:
- ;[RC tif]
- ;glob=*.tif
- ;params = \\someparams
- ;ios=skip
- ; you can specify an option to output product dependencies for a copy job.
- ; please note that you only need to set this option when cry code is required to parse the asset.
- ; otherwise product dependencies will be output automatically by the CopyDependencyBuilder.
- ; for example, if you want to output the product dependencies for font assets:
- ;[RC font]
- ;glob=*.font
- ;params=copy
- ;outputProductDependencies=true
- ; you can also specify an option to make all jobs critical that matches some pattern/glob.
- ; for example, if you want to make all png files critical than set critical to true.
- ; Note that by default all copy jobs are critical.
- ; Critical jobs are processed before non critical jobs and also prevent the runtime or editor from starting until they are all complete.
- ;[RC png]
- ;glob=*.png
- ;params = \\someparams
- ;critical=true
- ; you can also specify an option to make all the job store in the asset server cache location if you are running AP in server mode.
- ; For example, if you want to store all png jobs in the asset server cache location including their logs, you can set checkServer = true.
- ; The client(i.e if you are running AP in non-server mode) will also check for this flag to know which jobs to fetch from the asset server cache location.
- ; if unsucessful, it will process the job locally as usual.
- ;[RC png]
- ;glob=*.png
- ;params = \\someparams
- ;critical=true
- ;checkServer=true
- ; note that the FULL PATH to the file will be used as the match, not the relative path
- ; so ensure start your patterns with .* or as appropriate.
- ; Also, any rules which match will apply - so if you have two rules which both apply to PNG files for example
- ; but you only want one, you might want to use exclusion patterns:
-
- ;Example: process everything EXCEPT the ones in the libs/ui folder with these params
- ;[RC png-normal]
- ;pattern=(?!.*libs\\/ui\\/).*\\.png
- ;params=/imagecompressor=CTSquish /streaming=0
- ;lockSource=true
- ;Example: Process everything in the libs/ui folder with linear color space
- ;[RC png-ui]
- ;pattern=(.*libs\\/ui\\/).*\\.png
- ;params=/imagecompressor=CTSquish /streaming=0 /colorspace=linear,linear
- ;lockSource=true
- ; More example Regexes:
- ; pattern=(?!(.*libs\\/ui\\/)|(.*editor\\/).*\\.png
- ; This pattern will not match anything with editor/ or libs/ui/ in it
- ; pattern=((.*libs\\/ui\\/)|(.*editor\\/).*\\.png
- ; This pattern will only match anything with editor/ or libs/ui/ in it
- ;Give every [Section Name] its own unique Name or else they will overwrite each other!
- [RC i_caf]
- glob=*.i_caf
- params=/cafAlignTracks=1 /animConfigFolder=Animations /skipdba=1 /refresh=1
- ; force server to send the 'pc' platform to RC.EXE so it compiles the same as PC.
- server=/cafAlignTracks=1 /animConfigFolder=Animations /skipdba=1 /refresh=1 /p=pc
- priority=5
- productAssetType={6023CFF8-FCBA-4528-A8BF-6E0E10B9AB9C}
- [RC caf]
- glob=*.caf
- params=copy
- productAssetType={6023CFF8-FCBA-4528-A8BF-6E0E10B9AB9C}
- ; same as above
- [RC mp4]
- glob=*.mp4
- params=copy
- productAssetType={DDFEE0B2-9E5A-412C-8C77-AB100E24C1DF}
- [RC mkv]
- glob=*.mkv
- params=copy
- productAssetType={DDFEE0B2-9E5A-412C-8C77-AB100E24C1DF}
- ; same as above
- [RC webm]
- glob=*.webm
- params=copy
- productAssetType={DDFEE0B2-9E5A-412C-8C77-AB100E24C1DF}
- ; same as above
- [RC mov]
- glob=*.mov
- params=copy
- productAssetType={DDFEE0B2-9E5A-412C-8C77-AB100E24C1DF}
- ; same as above
- [RC bk2]
- glob=*.bk2
- params=copy
- productAssetType={BF4879B9-B893-41D2-80E9-24A7BDCD2B50}
- [RC img]
- glob=*.img
- params=copy
- [RC dba]
- glob=*.dba
- params=copy
- productAssetType={511562BE-65A5-4538-A5F1-AC685366243E}
- version=2
- [RC cgf]
- glob=*.cgf
- params=/VertexPositionFormat=exporter /VertexIndexFormat=u32
- ; on server, feed rc.exe the param /p=pc to force it to compile assets for server platform in pc format.
- server=/VertexPositionFormat=exporter /VertexIndexFormat=u32 /p=pc
- lockSource=true
- priority=10
- ; allow CGF files to compile first, so untextured models appear before their textures for faster startup
- ; other available params: /SplitLODs=1
- [RC surfaceTagNameList]
- glob=*.surfaceTagNameList
- params=copy
- productAssetType={A471B2A9-85FC-4993-842D-1881CBC03A2B}
- [RC gradImageSettings]
- glob=*.gradimagesettings
- params=copy
- productAssetType={B36FEB5C-41B6-4B58-A212-21EF5AEF523C}
- [RC fbx]
- glob=*.fbx
- ; Priority set to 9 so its "before" things like materials but after things like actors and motions (which build using a proper AssetBuilderSDK builder and thus are not in this file)
- priority=9
- version=5
- [RC chr]
- glob=*.chr
- params=copy
- productAssetType={60161B46-21F0-4396-A4F0-F2CCF0664CDE}
- version=2
- [RC skin]
- glob=*.skin
- params=copy
- [RC cfi]
- glob=*.cfi
- params=copy
- [RC cfx]
- glob=*.cfx
- params=copy
- [RC cfr]
- glob=*.cfr
- params=copy
- ; Warning: If you change the VertexIndexFormat, make sure you update the vtx_idx typedef in Code\CryEngine\CryCommon\ProjectDefines.h
- [RC abc]
- glob=*.abc
- params=/SkipFilesWithoutBuildConfig=0 /VertexIndexFormat=u32
- console=/SkipFilesWithoutBuildConfig=0 /VertexIndexFormat=u32
- mobile=/SkipFilesWithoutBuildConfig=0 /VertexIndexFormat=u16
- version=3
- server=skip
- [RC png-entityicon]
- pattern=(.*EntityIcons\\/).*\\.png
- productAssetType={3436C30E-E2C5-4C3B-A7B9-66C94A28701B}
- params=skip ; only tools-supporting platforms should copy this file. Everyone else can skip.
- tools=copy
- [RC usm]
- glob=*.usm
- params=copy
- server=skip
- [RC animevents]
- glob=*.animevents
- params=copy
- productAssetType={C1D209C1-F81A-4586-A34E-1615995F9F3F}
- version=2
- [RC adb]
- glob=*.adb
- params=copy
- productAssetType={50908273-CA36-4668-9828-15DD5092F973}
- [RC bspace]
- glob=*.bspace
- params=copy
- [RC cdf]
- glob=*.cdf
- params=copy
- productAssetType={DF036C63-9AE6-4AC3-A6AC-8A1D76126C01}
- ; note - this used to be skinnedMeshAsset but its now Character Definition File specific.
- ; .skin has its own type.
- [RC chrparams]
- glob=*.chrparams
- params=copy
- productAssetType={4BBB785A-6824-4803-A607-F9323E7BEEF1}
- version=2
- [RC comb]
- glob=*.comb
- params=copy
- [RC dlg]
- glob=*.dlg
- params=copy
- [RC csv]
- glob=*.csv
- params=copy
- [RC json]
- glob=*.json
- params=copy
- [RC lmg]
- glob=*.lmg
- params=copy
- [RC smtl]
- glob=*.smtl
- params=copy
- [RC sub]
- glob=*.sub
- params=copy
- productAssetType={71F9D30E-13F7-40D6-A3C9-E5358004B31F}
- version=2
- [RC sbsar]
- glob=*.sbsar
- params=copy
- [RC loc.agsxml]
- glob=*.loc.agsxml
- params=copy
- version=1
- [RC node]
- glob=*.node
- params=copy
- [RC veg]
- glob=*.veg
- params=copy
- [RC dat]
- glob=*.dat
- params=copy
- [RC lut]
- glob=*.lut
- params=copy
- [RC txt]
- pattern=^(?!.*PreloadLibs.txt).*\\.txt
- params=copy
- [RC cal]
- glob=*.cal
- params=copy
- [RC grp]
- glob=*.grp
- params=copy
- productAssetType={7629EDD3-A361-49A2-B271-252127097D81}
- version=2
- [RC xls]
- glob=*.xls
- params=copy
- [RC ini]
- glob=*.ini
- params=copy
- [RC ttf]
- glob=*.ttf
- params=copy
- [RC otf]
- glob=*.otf
- params=copy
- [RC ext]
- glob=*.ext
- params=copy
- [RC pak]
- ; Copy all pak files except level.pak, level.pak has its own builder.
- pattern=^((?!\\/level\\.pak).)*\\.pak$
- params=copy
- [RC ctc]
- glob=*.ctc
- params=copy
- [RC uiprefab]
- glob=*.uiprefab
- params=copy
- server=skip
- [RC sprite]
- glob=*.sprite
- params=copy
- server=skip
- [RC bin]
- glob=*.bin
- params=copy
- [RC inputbindings]
- glob=*.inputbindings
- params=copy
- productAssetType={25971C7A-26E2-4D08-A146-2EFCC1C36B0C}
- [RC physmaterial]
- glob=*.physmaterial
- params=copy
- productAssetType={9E366D8C-33BB-4825-9A1F-FA3ADBE11D0F}
- [RC ocm]
- glob=*.ocm
- params=copy
- ; Feature tests use the raw .tif files for the golden image comparison
- [RC goldenimages]
- pattern=.*GoldenImages\\/.*\\.tif
- params=copy
- server=skip
- ; Copy over certificates for use with FileDataSource
- [RC CertificatePEM]
- glob=*.pem
- params=copy
- ; Copy over certificates for use with Dynamic Content
- [RC CertificateDER]
- glob=*.der
- params=copy
- [RC PhysXMeshAsset]
- glob=*.pxmesh
- params=copy
- productAssetType={7A2871B9-5EAB-4DE0-A901-B0D2C6920DDB}
- ; Copy over cooked PhysX heightfield
- [RC PhysX HeightField]
- glob=*.pxheightfield
- params=copy
- productAssetType={B61189FE-B2D7-4AF1-8951-CB5C0F7834FC}
- [RC filetag]
- glob=*.filetag
- params=copy
- productAssetType={F3BE5CAB-85B7-44B7-9495-863863F6B267}
- ; Precompiled shader srg
- [RC azsrg]
- glob=*.azsrg
- params=copy
- productAssetType={F8C9F4AE-3F6A-45AD-B4FB-0CA415FCC2E1}
- ; Precompiled shader variant
- [RC azshadervariant]
- glob=*.azshadervariant
- params=copy
- productAssetType={9F4D654B-4439-4C61-8DCD-F1C7C5560768}
|