Source:mirv_agr - advancedfx/advancedfx GitHub Wiki
This article is focused on Source engine, for GoldSrc additionally see GoldSrc:mirv_agr.
- Supported Games
- What does it do?
- Things you should know
- Commands
- Import
- Example (CSGO)
- Setting up Blender and importing AGR
- Export
- Importing maps in Blender
- See also
- Counter-Strike: Global Offensive
- Counter-Strike: Source
- Counter-Strike: Source v34
- Team Fortress 2
- AdvancedFX Game Recording (AGR) is a recording method which allows you to import recorded motion data into the 3D software Blender.
- 30 fps is a must have! Higher framerates can work, but will mostly end up in stuttering PoV animations.
- To get smoother recordings in CS:GO make sure to follow the Smoother Demos guide
- The size of your AGR depends on length, recorded features and animations.
Counter-Strike: Global Offensive ONLY with mirv_streams
host_timescale 0
host_framerate 30
mirv_streams record agr enabled 0|1
mirv_streams record agr recordPlayers 0|1
mirv_streams record agr recordInvisible 0|1
mirv_streams record agr recordWeapons 0|1
mirv_streams record agr recordProjectiles 0|1
mirv_streams record agr recordCamera 0|1
mirv_streams record agr recordPlayerCameras -1|0|<PlayerIndex> - should be used in freecam view
mirv_streams record agr recordViewmodels -1|0|<PlayerIndex> - should be used in freecam view
host_timescale 0
host_framerate 30
mirv_agr debug 0|1|2 - Debug level
mirv_agr enabled 0|1 - Enable / disable recording (Has to be enabled before loading the demo if you want to use AGR!).
mirv_agr recordCamera 0|1
mirv_agr recordPlayers 0|1
mirv_agr recordWeapons 0|1
mirv_agr recordProjectiles 0|1
mirv_agr recordInvisible 0|1
mirv_agr recordViewmodel 0|1
mirv_agr recordPlayerCameras -1|0|<PlayerIndex> - CSGO exclusive, should be used in freecam view
mirv_agr recordViewmodels -1|0|<PlayerIndex> - CSGO exclusive, should be used in freecam view
mirv_agr start <FilePath\Name.agr>
mirv_agr stop - Stop recording.
In order to import an AGR file to Blender, you have to download and install the AFX-Blender-Scripts and Blender Source Tools.
Requires Blender 2.8 or later:
- AFX-Blender-Scripts
- Blender Source Tools or
- Blender Source Tools 3.1.1 AGR Edition - Disables collection creation for cleaner project files.
host_timescale 0
host_framerate 30
mirv_streams record agr enabled 1
mirv_streams record agr recordPlayers 1
mirv_streams record agr recordInvisible 0
mirv_streams record agr recordWeapons 1
mirv_streams record agr recordProjectiles 0
mirv_streams record agr recordCamera 0
mirv_streams record agr recordPlayerCameras <PlayerIndex>
mirv_streams record agr recordViewmodels <PlayerIndex>
To get the Playerindex use the command:
mirv_listentities isPlayer=1
With these commands you will record the character, viewmodel and weapon models. Grenades(Projectiles) are disabled in this example for better performance, but can be enabled for sure!
Pros:
- Smaller file size
- Decreasing import time
- More flexibility in terms of Animations (e.g. custom death animations)
- Changing Weapon (e.g. using a M4A4 instead of AK-47)
Cons:
- You have to do the PoV and PoV-bobbing manually (How the weapon bounces while running)
- Weapon drop animations (dropping and dying) have to be done manually
- Make sure that you record in free camera. Do not spectate in first or third person, if you record PlayerCameras and Viewmodels!
- The default save path is Counter-Strike Global Offensive\untitled_rec\takexxxx.
- Follow the Source:Smoother-Demos before recording, which prevents your demo from lagging.
- Commands for the CS:GO mirv_stream method:
mirv_streams record start
mirv_streams record end
Method 1:
- 1: Download GCFScape and Crowbar
- 2: Open the pak01_dir.vpk with GCFScape inside your Counter-Strike Global Offensive\csgo folder
- 3: Go to Root > Models > Players / Weapons and right-click extract the folders.
- 4: Open Crowbar, enable the option Folder for each model and decompile the Player / Weapons folder, recommended to enable "Bone animation SMD files".
- 5: Create a new folder called e.g. CSGO, create another folder inside called models and move the decompiled Players and Weapons folders inside there.
Method 2: Download Devostated's Decompiled Models with fixed .SMDs for fewer errors and extra models and animations.
- 1: After installing and enabling both Blender scripts, delete the Default Scene (Cube, Light and Camera) change the frame rate to 30 fps and go to File > Save Startup File.
- 2: Enable the console (Window > Toggle System Console) to see any errors and progress.
- 3: Go to File > Import > HLAE afxGameRecord (.agr)
- 4: Open the folder of your AGR (Default: Counter-Strike Global Offensive\untitled_rec\takexxxx).
- 5: Add the path of your Decompiled Models folder (e.g. C:Users%USERNAME%\Desktop\CSGO) and get your import settings.
- 5.1: You can change different options such as:
-
Asset Path
(Path to decompiled models) -
Add interpolated key frames
(Creates interpolated key frames for frames in-between the original key frames) -
Scale
(Scales everything by this value. 0.01 is default, cause it works with most map importers. A value of 2.54 would be correct size.) -
Scale invisible to zero
(recordInvisible 1 will be hidden if it's not supposed to be, e.g. Running Players after death) -
Skip Physic and Shared_Player_Skeleton meshes
(Skips collision boxes, so you don't have to remove them manually and leads to faster import time) -
Skip Stattrack and Stickers
(Skips Stattrack and Stickers of weapons) -
Bones (skeleton) only
(This will decrease the time to import. I recommend to you use it, if you plan to export your AGR to another program like UE4, Maya or C4D) -
Model instancing
(Instances Models instead of reimporting the same models again. -
Keyframe interpolation
(Changes the interpolation, which can result into a significantly import time decrease, but also possible animation errors. Needs more testing)
-
- 6: Double click the AGR file or click
Import
to import the AGR file. - 7: Enjoy your AGR.
You have two ways of exporting your AGR as FBX.
5.1 As a single FBX file. Recommended for Cinema 4D, Maya etc.
5.2 As a multiple FBX files. Recommended for Unreal Engine
For the export of your AGR to other 3D programs you need following settings:
- 1: Select everything (Shortcut: A)
- 2: Go to: Object -> Relations -> Make single user -> Object & data
- 3: Export with the recommended settings
- 1: Go to File -> Export -> HLAE AGR Batch Export (.fbx)
- 2: Export with settings that fit your needs