Oddly technical question: How does V grab things?

+
Alright i know this is a strange question, but hear me out.
I'm interested in game development and i think there are some interesting shenanigans going on when it comes to the first person view.
Allow me to explain:

Normally, developers have a fixed FoV for arms, weaponry and anything that is usually close by.
This is useful for making sure the player will be seeing their character as intended, otherwise increasing the FOV will stretch the arms/weapons (see tf2) and decreasing it may hide useful details.

This means there's 1 camera that has a fixed FOV and is overlaid on top of a camera with an adjustable FOV.

However this solution has some issues, since whatever your character is doing doesn't match with the rest.
For example if your gun shoots "real bullets" rather than being hitscan with some flashy effects (borderlands has a ton of those for example) you may see the projectile spawn out of thin air or behind the gun based on your FOV.
Additionally if you try to grab something it'll look like you're holding onto nothing as the two views won't be aligned.

Usually there are 2 workarounds:

1. Bring the object you're interacting with into the fixed fov or change the fov temporarily to match.
This can cause odd looking results at times and/or be jarring if not done properly.
An example would be doom eternal's melee executions, during which the field of view changes to match the first person camera, the transition is hidden by the dash.
This however isn't the solution used for cyberpunk, otherwise it'd be impossible for V to hold the tubes seen in the nomad intro and i couldn't see any change in the field of view either.

2. Bring the arms "to the real world".
This means having one set of arms/weapons/whatever to be used while fighting and the likes and another set of arms (usually attached to the rest of the model), then switching between the two.
The caveat here is that you generally must have the arms leave the player's view while making the switch.

This seems to be cp2077's approach:
You can see how fighting scenes have the hands be very very close to the screen, this is the fixed fov camera, in this mode you'll never be able to see your shoulders for instance. Games like borderlands 3 with full body awareness specifically avoid certain rotations to keep the player from seeing too much (for example while sliding your view is forced forward, you can't look down. GTA5 has a similar solution as it prevents you from looking down while jumping).
Meanwhile scenes like the nomad intro or V holding a glass feature the shoulders/jacket at times, meaning you're seeing the entire 3D model at once, the fixed FOV camera is disabled.

The caveat with this solution is that you're generally forced to completely hide the arms when switching between the two.
This explains why the arms are hidden while roaming around and there are a lot of interactions where the arms "come and go".

However how does V give the chip to Royce during the Maelstrom gameplay footage? See here:
If cp2077 is using the 2nd approach (which, again, you can see V hide her arms and weapon after handing over the chip, the ones you're seeing in the exchange are the "real" arms, which is why her hand goes behind Royce's and her gun clips his arm a bit) wouldn't this scene look odd when tinkering with the field of view?

I'd love to know whether compromises were made at some point where some cutscene or interaction will look somewhat strange for people with high FOV and wide screens or if there were some really clever solutions to tackle this problem, akin to what the Dying Light devs had to resort to:

I'd absolutely love some insight on the topic, i find it super interesting.

But yeah, looking forward to get my hands on the game and tinker with it a bit. <3
 
Exactly what I don't want to see in C2077, an part of what makes me dislike FPP view.

Odds are you won't see anything quite that extreme.
You don't even need to give V a pair of disembodied arms to do everything you see in the game, as long as you move them out of view whenever switching between interacting with the world and fighting. :)
 
Odds are you won't see anything quite that extreme.
You don't even need to give V a pair of disembodied arms to do everything you see in the game, as long as you move them out of view whenever switching between interacting with the world and fighting. :)

That's just lackluster. IRL you see in FPP view and don't need such horror for it to work. If they cannot do FPP without that, it's utter failure.
FPP is a point of view, and if you makes it seriously there is no reason to change anything else.
 
That's just lackluster. IRL you see in FPP view and don't need such horror for it to work. If they cannot do FPP without that, it's utter failure.
FPP is a point of view, and if you makes it seriously there is no reason to change anything else.

Not quite, you'll always need some workaround if you want to have fine adjustment to what the player can see.

Some games like Hover and Mirror's Edge do have 100% authentic first person view where you see exactly what's happening, but that wouldn't work well at all once you start brandishing weapons and tweaking with the settings.
Mordhau gets close in that it switches between animations on the fly based on whether you're in first or third person.

But the only way to choose how the player will see themselves in first person exactly is to have a fixed field of view.
So either you disable the option entirely (see Hardspace: Shipbreaker for a recent example) or some compromise must be made.

CP2077 has the most common approach of having a different mesh for the arms on top of a full 3D character where the only limitation is avoiding the shoulders and ofc interacting with the environment.
Dying Light has the same setup, but they had to deal with the player hanging from a ledge which adds further complications.
And really all the big first person titles go for this approach: Borderlands, CoD and Doom just to name a few.
The others just either limit how much you can adjust the field of view to a narrow range or just deal with the consequences (see tf2 for a very famous example).

*edit*
Even Red Dead Redemption 2 has a whole lot of shenanigans going on, throwing a lasso is an easy way to see them in action.
At first your hand is always in the same place of the screen, which would be impossible if what you were seeing is actually where your hand would be in third person.
Then after throwing you switch to the real animation, which is why you need to look down to see your hands at all.
This means that either the model is doing an entirely wrong-looking animation (which can actually be a thing) or you have floating arms (notice how when looking down you only see your feet at most).
FoV is adjustable but only by a small margin in order to not break the illusion.
 
Last edited:
Not quite, you'll always need some workaround if you want to have fine adjustment to what the player can see.

Some games like Hover and Mirror's Edge do have 100% authentic first person view where you see exactly what's happening, but that wouldn't work well at all once you start brandishing weapons and tweaking with the settings.
Mordhau gets close in that it switches between animations on the fly based on whether you're in first or third person.

But the only way to choose how the player will see themselves in first person exactly is to have a fixed field of view.
So either you disable the option entirely (see Hardspace: Shipbreaker for a recent example) or some compromise must be made.

CP2077 has the most common approach of having a different mesh for the arms on top of a full 3D character where the only limitation is avoiding the shoulders and ofc interacting with the environment.
Dying Light has the same setup, but they had to deal with the player hanging from a ledge which adds further complications.
And really all the big first person titles go for this approach: Borderlands, CoD and Doom just to name a few.
The others just either limit how much you can adjust the field of view to a narrow range or just deal with the consequences (see tf2 for a very famous example).

*edit*
Even Red Dead Redemption 2 has a whole lot of shenanigans going on, throwing a lasso is an easy way to see them in action.
At first your hand is always in the same place of the screen, which would be impossible if what you were seeing is actually where your hand would be in third person.
Then after throwing you switch to the real animation, which is why you need to look down to see your hands at all.
This means that either the model is doing an entirely wrong-looking animation (which can actually be a thing) or you have floating arms (notice how when looking down you only see your feet at most).
FoV is adjustable but only by a small margin in order to not break the illusion.

You say those things like it doesn't work with IRL first person perspective.
And that's the whole point of that view, if it's not for trying to see things like you were actually there, then there is no point in using it.
 
Alright i know this is a strange question, but hear me out.
I'm interested in game development and i think there are some interesting shenanigans going on when it comes to the first person view.
Allow me to explain:

Normally, developers have a fixed FoV for arms, weaponry and anything that is usually close by.
This is useful for making sure the player will be seeing their character as intended, otherwise increasing the FOV will stretch the arms/weapons (see tf2) and decreasing it may hide useful details.

This means there's 1 camera that has a fixed FOV and is overlaid on top of a camera with an adjustable FOV.

However this solution has some issues, since whatever your character is doing doesn't match with the rest.
For example if your gun shoots "real bullets" rather than being hitscan with some flashy effects (borderlands has a ton of those for example) you may see the projectile spawn out of thin air or behind the gun based on your FOV.
Additionally if you try to grab something it'll look like you're holding onto nothing as the two views won't be aligned.

Usually there are 2 workarounds:

1. Bring the object you're interacting with into the fixed fov or change the fov temporarily to match.
This can cause odd looking results at times and/or be jarring if not done properly.
An example would be doom eternal's melee executions, during which the field of view changes to match the first person camera, the transition is hidden by the dash.
This however isn't the solution used for cyberpunk, otherwise it'd be impossible for V to hold the tubes seen in the nomad intro and i couldn't see any change in the field of view either.

2. Bring the arms "to the real world".
This means having one set of arms/weapons/whatever to be used while fighting and the likes and another set of arms (usually attached to the rest of the model), then switching between the two.
The caveat here is that you generally must have the arms leave the player's view while making the switch.

This seems to be cp2077's approach:
You can see how fighting scenes have the hands be very very close to the screen, this is the fixed fov camera, in this mode you'll never be able to see your shoulders for instance. Games like borderlands 3 with full body awareness specifically avoid certain rotations to keep the player from seeing too much (for example while sliding your view is forced forward, you can't look down. GTA5 has a similar solution as it prevents you from looking down while jumping).
Meanwhile scenes like the nomad intro or V holding a glass feature the shoulders/jacket at times, meaning you're seeing the entire 3D model at once, the fixed FOV camera is disabled.

The caveat with this solution is that you're generally forced to completely hide the arms when switching between the two.
This explains why the arms are hidden while roaming around and there are a lot of interactions where the arms "come and go".

However how does V give the chip to Royce during the Maelstrom gameplay footage? See here:
If cp2077 is using the 2nd approach (which, again, you can see V hide her arms and weapon after handing over the chip, the ones you're seeing in the exchange are the "real" arms, which is why her hand goes behind Royce's and her gun clips his arm a bit) wouldn't this scene look odd when tinkering with the field of view?

I'd love to know whether compromises were made at some point where some cutscene or interaction will look somewhat strange for people with high FOV and wide screens or if there were some really clever solutions to tackle this problem, akin to what the Dying Light devs had to resort to:

I'd absolutely love some insight on the topic, i find it super interesting.

But yeah, looking forward to get my hands on the game and tinker with it a bit. <3
Solution: maybe just make a fully 100% accurate 3D model that is the correct size and let the player move their head wherever they want to move it so long as it is anatomically possible and accurate to a person in real life with an above average level of flexibility so that the game doesn't feel clunky, and let the player see their shoulders and body exactly as they would in real life. Make no unusual work arounds or strange effects. Just an accurate body, and an accurate ability to see your own body in a realistic way. Sometimes simple and honest and true = the easiest. Just make it an extra button to unlock the head movement view, or make the movement into freely moving your head around to look at different things seamless enough that it doesn't interfere with or interrupt normal gameplay, like accidentally looking at a weird angle when you don't want to, maybe just make it contextual.

(I'm not a video game dev so I don't really know how easy this is, but maybe I'm right?)
 

4RM3D

Ex-moderator
Solution: maybe just make a fully 100% accurate [...]

No, I'll stop you there. In real life, you have head bob, but your brain is filtering it out, just like how your nose is always visible, but you don't actually see it, unless you focus. Being realistic in games, you have to have a head bob. However, most players will find it annoying. Same thing goes with spacial awareness and why players get motion sickness. That's why there are so many options for field of view. But you have to fake it in games to make your brain think it's accurate. That's why a 1 on 1 implementation will never work. Incidentally, try walking around by looking through a camera that has a 0.1 delay. You'll be sick and you'll trip in no time.
 
Solution: maybe just make a fully 100% accurate 3D model that is the correct size and let the player move their head wherever they want to move it so long as it is anatomically possible and accurate to a person in real life with an above average level of flexibility so that the game doesn't feel clunky, and let the player see their shoulders and body exactly as they would in real life. Make no unusual work arounds or strange effects. Just an accurate body, and an accurate ability to see your own body in a realistic way. Sometimes simple and honest and true = the easiest. Just make it an extra button to unlock the head movement view, or make the movement into freely moving your head around to look at different things seamless enough that it doesn't interfere with or interrupt normal gameplay, like accidentally looking at a weird angle when you don't want to, maybe just make it contextual.

(I'm not a video game dev so I don't really know how easy this is, but maybe I'm right?)

Unfortunately it's really not as simple as just having the character do the real movements and just slap a camera in their head.

A good example for this would be mirror's edge, since they used "true" full body (you don't see special first person animations) and the game looks amazing in first person.
However once you switch to third person you see how wrong it looks:

The running animations move the head as little as possible, the arms rest behind the head when standing still.
Having an animation look great both in first and third person is borderline impossible without making it very stiff (like mordhau).
 
Well, odds are i'll find out for certain when the game comes out.
I like to think my guess is close enough, though the topic really makes me curious.

(yes this is my last bump <3)
 
No, I'll stop you there. In real life, you have head bob, but your brain is filtering it out, just like how your nose is always visible, but you don't actually see it, unless you focus. Being realistic in games, you have to have a head bob. However, most players will find it annoying. Same thing goes with spacial awareness and why players get motion sickness. That's why there are so many options for field of view. But you have to fake it in games to make your brain think it's accurate. That's why a 1 on 1 implementation will never work. Incidentally, try walking around by looking through a camera that has a 0.1 delay. You'll be sick and you'll trip in no time.
I don't mind head bob in some games tbh. As long as we can reduce it in the settings menu of course.
 
Top Bottom