Useful CryEngine’s Console Commands for Graphics Programmers

I am a graphics programmer and use console commands for finding clues when something is going wrong. I decide to list them incrementally (+ a short description on when to use which).

Rendering Console Commands

r_reloadShaders 0/1 If you set this variable to 1 in run time, it forces the shaders to be reloaded.

r_profile 0/1/2 profiles the current view in simple mode (1) and detailed (2) mode. The detail mode is very helpful to get understanding about timings and number of draw calls involved in every stage.

r_displayinfo 0/1 make the information in upper-left corner visible/invisibile.

r_debugGBuffer 0/1/2/… shows different G-Buffer textures on the screen which can be helpful in debugging bugs or finding issues.

r_ShaderDebug to debug shaders.

r_DeferredShadingEnvProbes 0/1 when you want to disable probes to see their effects, this could be helpful.

r_fullscreen 0/1 disables/enables the game to run in fullscreen mode.

r_EnableDebugLayers 0/1 [Should be activated before running the game] disables/enables the debug layers in directX and Vulkan.

r_driver=dx11/dx12/vk sets the gamelauncher to start using specified api.

t_scale 0/1 to freeze/unfreeze the time.

r_SSReflections 0/1 to disable/enable screen-space reflection.

Logging Console Commands

log_spamDelay  when a message is spamming your console, you can use this command to delay it for some amount of time. Very useful one especially when the whole code and scene is under development.

 

Entity Console Commands

e_DebugDraw useful to see statistics about objects. First write ‘e_DebugDraw ?’ to see the possible options. There are vast but has good descriptions. For example, you can see the level of detail object rendered in front of you.

e_StatObjBufferRenderTasks 0/1: Used to disable/enable multi-threaded brush rendering. It is useful to disable it when you have flickering issues.

e_recursion 0/1 turn off/on the recursive rendering. It is helpful when you want to detect if rendering for reflections is making any issues or problems for object rendering.

e_shadows 0/1 turns off/on shadowing in the scene. Sometimes interesting part of the scene is in the shadow which is hard to see. Turning it off is very helpful.

e_CheckOcclusion 0/1 disables/enables occlusion culling checks.

e_CoverageBufferDebug 0/1 disables/enables coverage buffer debug window. It is helpful when debugging the occlusion culling.

Game Commands

g_CameraFree activate/deactivate free movement of the camera.

 

System Console Commands

sys_maxFPS sets the maximum frames per second to a limited number. It is helpful for checking the timing or even may be threading issues.

sys_asserts 0/1 [Should be activated before running the game] it is very important to test your codes in enabled asserts mode to make sure that you are breaking any other thing in the engine.

 

GameServer Console Commands

net_inactivitytimeout ms, net_inactivitytimeoutDevmode ms, and net_keepalive_time ms are used to change server’s timout. It is very very helpful while trying to debug the game while the server is running.

 

Development Commands

dev_godmode_debug 0/1 and g_godModeUsageEnable 0/1 are used to set the player in god mode. If someone hits you, the health will decrease but you will never die.

 

Kill SVOGI

e_svoEnabled, e_svoActive, e_svoApply, e_svoLoadTree, and e_svoRender are CVars related to SVOGI.

Compiled Objects

e_PermanentRenderObjects 0/1 disables/enables permanently producing compiled render objects. If this is enabled, static render objects will be processed once and constant buffer and vertices will be baked once and used in next frames.

VR without a headset

sys_vr_support=1
r_StereoDevice=1
r_StereoMode=1
r_StereoOutput=4

Physics

p_draw_helpers 0/1 disables/enables rendering physics’ helper objects.

Advertisement