|Compatible with||Cyberpunk 2077 v2.0+, Steam / GoG / EGS versions|
|Hotsampling via||Running the game in windowed mode|
|Supports IGCS Connector||Yes, 2.0+|
|Download latest version||Post on patreon|
The photomode mod for Cyberpunk 2077 offers the following features:
Full, unlimited camera control (gameplay, cutscenes, photomode)
- Controller or mouse/keyboard control over the camera
- Field of view (FoV) control
- Camera shake controls in both manual movement (for hand-shot videos) and camera paths.
- Game pause / framestep / Gamespeed control
- Camera paths
- CyberLit Custom Light mod
- Lookat control for head/body/eyes in photomode
- Time of Day control
- Game speed control (slow-motion, speed up)
- HUD toggle (Photomode and Gameplay)
- Wetness control on the streets/objects
- Puddle control of puddles of water on the streets
- Configurable input interpolation for smooth camera movement/rotation/fov zoom in/out
- Timestop / Frameskip
- Hotsampling (resize the game window to any resolution)
Please see for details how to get started and configure this photomode mod, General features and configuration. This guide will provide additional information for the controls / features specific for this photomode mod.
If you don't see the
cyberpunk2077.exe process in the Process to inject to textbox, please click the Select button to select it manually. This might be
the case if you're using the UPlay+ version. Additionally, if you're using the normal UPlay version but you're running the game as Administrator,
IGCSClient.exe does not, it can't see the cyberpunk2077.exe process. In that case, restart the
IGCSClient.exe as Administrator.
Additionally to the normal configuration features, the tools for Cyberpunk 2077 also has some additional configuration features:
The camera smoothing options are for when you want to record a video by flying through the game world and control the camera manually, so not through a camera path. Normally the input to the camera system will be used instantly and you see an effect immediately. However for videos it's often desired to have a smoother camera movement than what's needed when you position the camera for a shot.
The camera smoothing options will give you the ability to control how much of the input you're giving to the camera system is used in future frames so
it's creating a smoother experience; e.g. if you set the movement interpolation factor slider to
100 (default is
1), the input given to move the camera
forward is used over 100 frames and is slowly flowing away to 0 after you stop giving input to move forward.
Additionally if you first move forward and then move to the right, with the default setting of
1 the camera will first move forward and then immediately
move to the right. However with an interpolation factor of e.g.
100 it'll smoothly move to the right, more in a curve than straight away. This gives
smooth movement and rotations of the camera. For the Field of View there's also an interpolation factor, which can be used to smoothly zoom in/out so it's
less 'jerky' when you try to zoom in/out.
Try to combine the values for the smoothing factors with lower/higher values for movement and rotation speed to find the ideal setup for your recording. It's likely you want a higher interpolation factor for movement than for rotation and FoV.
The values are stored in the ini file for next time you start the client.
There are four camera shake factors you can configure to introduce camera shake for normal camera movement: Shake frequency for both movement and rotation, Shake movement strength and Shake rotation strength. For screenshots these factors are not interesting, but for hand-shot video, e.g. in combination with the interpolation factors, they can give a more natural appealing footage.
The Shake movement frequency and Shake rotation frequency control how fast the movement and rotation shake factors change direction. The higher the value the faster they'll 'shake'. The Shake movement strength controls the amount of movement shake will be added to the camera location in the up/down/left/right/front/back directions. The Shake rotation strength controls the amount of rotation shake will be added to the camera orientation in pitch/yaw/roll.
The strength will be applied equally among all directions and rotations. Try to experiment with which values work best for the speed you move your camera; a faster moving camera could use a camera shake with higher strengths than a slow moving camera. Good starting values are 1.5-2 for the frequencies and 0.4-0.5 for the strengths. Setting the sliders to 0 will remove all shake factors from the camera.
Camera paths have their own shake factors.
The Environment Adjustments tab is the tab where you can adjust various aspects of the game world.
- Time of day
- Time of day controls the current world time in a 24 hour clock. You can also change the time of day with the keyboard (see Keybindings) which might be easier than flipping back/forth to the client to get the right sun position.
- Game speed
- This controls how fast the runs internally; a value of 1.0 is 'normal game speed' and a value of 0.0 is total pause. Use this to create slow-motion effects which help you pause the game at the right moment.
- Street wetness factor
- This setting makes the streets look wet for the amount you specify.
- Puddle size
- This setting controls how big the rain puddles are on surfaces.
Starting with tools version v1.0.36, you can manipulate not only V but also the Replacer NPC spawned through the Nibbles Replacer in photomode. If you use the Nibbles Replacer mod in the photomode as well as Appearance Menu Mod (AMM) to specify which NPC to replace Nibbles with, you have V plus the NPC to pose. The tools offer two sets of controls: one for 'Person 1' and one for 'Person 2'.
The model you enabled Lookat for in the photomode UI first is 'Person 1', the other is automatically 'Person 2'. This stays this way till you close the photomode. It's impossible to determine which torso/head/eyes belong to which: V or the NPC so I use this Person 1/2 system. You'll get used to it quickly. If you don't use the Nibbles Replacer mod, V is always Person 1.
The Photomode look at control feature allows you to control the rotation of V's torso and head and where V's eyes look at without moving the camera. This feature works when you enable the 'Look at camera' feature in the photomode. Once you've done that, enable PM Lookat control and you can start rotating V's head/torso and eyes. You can do the same for 'Person 2' if you have the aforementioned mods installed.
The sliders are pretty self-explanatory, except perhaps the eye lookat point. With the two eye sliders, you control basically where V will look at, relative to your V.
It might be, after enabling PM Lookat control you can't rotate the head. This is because the engine doesn't always pass head location information through the lookat code and the tools therefore can't intercept where the head is located (Yes, above the shoulders, good one!). To fix this, simply rotate the torso a bit, you can then rotate the head.
V isn't made of rubber so normal human body constraints apply, meaning you can't e.g. V's head backwards. Sorry about shattering that dream! When you have PM Lookat control enabled and you switch to another pose, the eyes are likely messed up. To fix this simply move one of the eye sliders a bit and it should all be ok.
Be sure to disable PM Lookat control after or before you exit the photomode as otherwise the NPC eyes will go bezerk. If you're into that, you can of course leave it enabled, but in case you aren't, be sure to disable it.
If you switch the NPC you use with the Nibbles Replacer using AMM, and you had Lookat enabled, the eyes of the new NPC won't move when you move the sliders. This is because the engine won't call the function to move the eyes (really). To fix it, disable lookat in the photomode UI and then re-enable it again and the eyes should work fine.
It can be that the eyes sliders for person 2 are working for person 1 and vice versa. It's impossible to determine for the eyes which person they belong to so I try to guess which person they belong to, but the code might make a wrong decision.
When you create a Camera path, each node records the camera location, orientation and field of view. Additionally to that for this game the camera node will also contain the current time of day and gamespeed. So if you want to have different time of day values per node or game speed you can, just set the value you want in the client on the Environment Adjustments tab and create a camera path node.
After you've enabled the camera (default with
Insert), you can store the current camera state in three slots. The camera state is the current location,
the orientation/rotation of the camera and the FoV, as well as other information recorded in camera path nodes, as the system uses camera path nodes under the hood.
By default you save the camera state by using
F6 for saving the current camera state in slot 1,
F7 for saving the current camera state in slot 2 and
F8 for saving the current camera state in slot 3. To restore the camera state to a saved state, press
F6 to restore the camera to the state saved
in slot 1, press
F7 to restore the camera to the state saved in slot 2 and, press
F8 to restore the camera to the state saved
in slot 3. These keys are configurable in the keybindings tab.
When you disable the camera again, the saved states are lost. If you want to preserve game states after you disabled the camera (e.g. you want to move the character a bit, and then enable the camera again), use a camera path and add the camera states you want to save as nodes. Camera paths are preserved after you disable the camera.
Starting with tools version 1.0.33, the CyberLit functionality is only available in the Reshade addon. Therefore you always have to use the CyberLit Reshade addon from now on.
CyberLit is a custom lighting mod, originally created by Hatti and improved and extended by Otis_Inf. It allows you to create in-game lights.
Please install Reshade with Addon support using its installer. Be sure to install the Reshade version with addon support as the Reshade version without addon support doesn't load the
addon. To download reshade, please to go to: https://reshade.me. The installer should place a 'dxgi.dll' file in the Cyberpunk 2077
bin\x64 folder where
the Cyberpunk2077.exe file is located as well.
Place the 'CyberLitAddon.addon' file from the CyberLit .zip file in the same folder, so
<game installation folder>\bin\x64.
Run the game. You should see the Reshade banner when the game starts up. It shows the key assigned to use to show the Reshade Gui.
Once the game has started, you can initialize CyberLit. Open the Reshade Gui (Default this is the Home key) and go to the 'Addons' tab. There, expand the CyberLit node and click 'Initialize CyberLit'. It'll scan the game and obtain the necessary information. Once this succeeds, it'll show both a button 'Open Window' and the keyboard shortcut to open the window. By default this is F3.
You don't need to open the Reshade Gui if you press the shortcut key. When you inject the camera tools, the CyberLit addon will automatically initalize itself so you don't have to do this manually in that case.
When you've opened the main Cyberlit window with the assigned key, you'll see the window below:
The main CyberLit window
To create a light, please click the Create Light button. This will bring up the light create/edit window as displayed below. Here the light type 'Spotlight' has been chosen. You can choose a different light type at the top.
Create / edit light window
When you've specified the desired values for the various parameters, you click the Create button at the bottom. This will immediately place the light in the game world, at the location of the camera, facing the direction of the camera. If you're not satisfied with the location of the light, you can check the checkbox Stick light to camera which will update the location and orientation of the light to that of the camear. Once the light is at the right location, uncheck the checkbox.
Here's an example after creating a pink light from the side:
One light from the right
You can create as much lights as you want.
It might be after a while, you want to edit a light you created some time ago and the game crashes. This is something that's sadly unavoidable. To avoid crashes, clear the list of lights when you load a save or teleport to another location.
For the Framed website, Moyevka wrote an extensive guide about the specifics of CyberLit and the various settings for the different light types. If you want to know more about what each setting means, this is the guide for you.
The default photomode mod controls are listed below. It depends on the Camera control device setting on the Configuration tab whether the device (e.g. mouse or gamepad) can control the camera.
When moving the mouse:
- No mouse buttons pressed: rotate the camera
- Left button pressed: move camera up / down / left / right
- Right button pressed: move camera forward / backward / left / right
- Both left and right button pressed: tilt camera left / right
- Mousewheel: increase / decrease Field of View (FoV)
||Enable / Disable the camera|
||Block / Unblock input to game|
||Lock / Unlock camera movement|
||Move camera left (+
||Move camera right (+
||Move camera forward (+
||Move camera backward (+
||Move camera up (+
||Move camera down (+
||Move camera left (+
||Rotate camera up (+
||Rotate camera down (+
||Rotate camera left (+
||Rotate camera right (+
||Pause / Unpause the game|
||Skip a few frames when paused|
||Tilt camera left (+
||Tilt camera right (+
||Set Time of Day earlier (+
||Set time of Day later (+
||Restore the camera state to the state saved in slot 1 (+
||Restore the camera state to the state saved in slot 2 (+
||Restore the camera state to the state saved in slot 3 (+
||Start / pause playback|
||Add node to active path|
||Replace the active node on the active path|
||Insert a new node in front of the active node on the active path|
||Insert a new node after the active node on the active path|
||Go to start of active path|
||Go to end of active path|
||Go to previous node on active path|
||Go to next node on active path|
||Select the first path during playback (if any)|
||Select the second path during playback (if any)|
||Select the third path during playback (if any)|
||Select the forth path during playback (if any)|
||Select the firth path during playback (if any)|
||Select the sixth path during playback (if any)|
||Select the seventh path during playback (if any)|
||Select the eighth path during playback (if any)|
||Select the ninth path during playback (if any)|
||Toggle gamespeed override|
|Left stick||Move camera forward / backward / left / right|
|Right stick||Rotate camera|
|Left trigger||Move camera up|
|Right trigger||Move camera down|
|Y button + left / right stick||Faster movement / rotation|
|X button + left / right stick||Slower movement / rotation|
|D-pad up / down||Increase / decrease FoV|
|B button||Reset FoV|
|Start||Start / pause playback|
|Left bumber||Go to previous node on active path|
|Right bumper||Go to next node on active path|
|A||Add node to active path|
|X button + pressing left stick||Toggle gamespeed override|
|X button + left bumper||Decrease gamespeed.|
|X button + right bumper||Increase gamespeed.|