📜 ⬆️ ⬇️

50 typical gaming camera design errors (part 2)

image

This article is the second part of the translation of the speech of John Nesky (John Nesky) with GDC14.

The first part is here .
')

# 26 Leave the shooting angle constant while the character is running along the slope


The technique is, as in the previous example, to determine the change in height of the floor in front of the character. If the height is higher or lower than the current one, you can slightly change the pitch of the camera. However, if you use for this purpose the analysis of the slope of the surface directly under the player's feet, you can get incorrect information when the surface is uneven. Therefore, it is better to do a raikast at some distance ahead of the character in order to get something like the average value of the height change. But even this problem is characterized by one more problem - a reycast can easily confuse a small wall with a hillside, so the normal value at the point of intersection of the surface and reycast is still needed.

# 27 Misuse of rule of thirds


The rule of thirds is another well-known rule in the cinema. In a nutshell, it lies in the fact that the picture looks more attractive if the focus of the composition is shifted from the center. This is a simple way to change the quality of the picture, issued by your camera, for the better.

But it will be wrong to achieve this effect to rotate the camera around its axis. If you take a real camera and want to apply this rule, then most likely just turn the camera in your hands a little. But let me remind you once again that in games with a third-person view, the camera should not turn around its axis - the center of its rotation should always be a character. Therefore, instead of rotating the camera around itself, you just need to slightly move the camera sideways.

There is another problem - players use the center of the screen to coordinate the management of the stick. And if you move the camera, the player may become confused and not understand in which direction his character is running. Therefore, in Journey, we used the rule of thirds only when the player is standing still. And when he rejects the stick, we smoothly shift the camera so that the character is again in the center of the screen.

Shadow of Colossus can be cited as a counter example. In this game, when you ride a horse, and the camera shifts sideways, there is no disorientation, because the player does not need to use the stick to run forward: instead, he uses the gamepad trigger like a gas pedal. Stick in this case is used only to rotate the character left-right.

# 28 Use the same logic when moving on the ground and in the air


So far we have only considered moving the player on the ground. But in your game there may be other ways of movement. In Journey, for example, a character can not only run, but also fly. Such different ways of moving imply different trajectories of movement of the character, and the player needs to evaluate these situations differently.

A Journey flight is designed in such a way that everything that has flown up will sooner or later fall down, and it is very important to show the player where he will land (especially if he is running out of energy that is spent on the flight). Therefore, at the beginning of the flight, the camera looks a little up, showing where the character will fly, but as soon as the energy is exhausted, the camera turns down to make it easier for the player to choose where to land.

Such techniques are not needed for short jumps, so this rule can be gradually included, based on the height at which the character is located.

# 29 Rely only on procedural camera behavior


All the tricks that we discussed earlier are automatic mechanisms that respond to environmental changes. But rayskas can only determine the shape of the surface, but not say what is important for the player. Game designers need to decide for themselves what is important for the player at a given time, and what he should see.

Therefore, you can add scripted hints for the camera to the levels in your game, defining what it should show at a particular point in time. Such hints are even more important in conditions of limited spaces. Dynamic camera angle cameras are good for games with open spaces, where there are not many obstacles, but in closed spaces there are many objects that the camera needs to avoid. And the more we help her in this, the better.

For example, in Journey there is a high tower, on which a player climbs. The tower is a convex polygon, and the camera is directed to its center so that the player can clearly see what is happening around.

# 30 Let a player get lost


Players love to explore the game world, and we want to give them that opportunity. But we must be sure that they will not get lost. The simplest solution used in many games is an arrow pointing to the current goal, or minimap. In my opinion, this is too rough a decision, and we did not use it in Journey. I prefer to use unobtrusive camera stunts, telling the player where to go.

For example, if in a Journey a player approaches the edge of a location, the camera turns in the opposite direction, hinting to the player where he should go. You can also ensure that the player does not start too far from the current goal. As soon as he goes a considerable distance, turn the camera, pointing in the right direction. However, you should not be too obtrusive to lead the player, because by this you can take away from him the joy of exploring the game world.

# 31 Rotate the camera so as to look at the targets close


If you decide to write a script, the task of which is to point, say, to a character located next to you, the first thing you can think about is turning the camera on this character. But in this case, the camera will constantly rotate, because the character is next to the player, and any movement of it (or changing the character for which we want to expand the camera) will lead to significant changes in camera rotation.

Fortunately, there is another way to achieve the desired behavior. It consists in moving the camera to the side or back, placing the point of interest in space in the field of view. In this case, we are less disoriented player.

# 32 Move the camera to look at targets far away.


This is the opposite situation. As we said, if you want to look at something close to the player, you move the camera a little to the side or away from the player. But if you want to look at something remote, located, say, on the horizon, then no camera shift will result in a change in the position of the object of interest on the screen. In this case, just turn the camera right.

# 33 Allow a player’s character to obscure targets ahead


If you turn the camera to point a player to something, and the player’s character is located in the center of the screen, there is a risk to obscure the area of ​​interest with the character. In this case, you can move the camera to the side. This, by the way, is an excellent chance to use the previously mentioned rule of thirds. But sometimes the simplest solution would be to tilt the camera so that it looked at the character a bit from above, thus allowing the player to look behind it.

# 34 First give the player control over the camera, and then pick up.


If you let the player control the camera first, and then deny it, it can discourage him. So when you make clues for the camera, at a minimum, give the player the opportunity to still control it. But if you still want to take away this opportunity from the player, make sure that the player has already seen everything he needs and he would not even want to change the position of the camera.

# 35 Apply hint immediately after the player has turned the camera


If the player turns the camera, then he wants to look somewhere. But as soon as he lets go of control, your clues for the camera will start to turn it in the right direction. Therefore, it is much better if there is some kind of delay before taking control of the camera, which would allow the player to look where he turned the camera. And even better if the interception is carried out after the player has started moving.

# 36 Do not let advanced players explore the world


Even if the player has the ability to control the camera, it can be annoying that the clues all the time are trying to get him to go in the wrong place. This is especially important when the player passes the game not for the first time and wants to explore new locations. Therefore, as soon as the tooltip worked and pointed the player to his goal, this tooltip can be turned off to allow the player to independently draw a route to this goal.

# 37 Do not provide an inverted control scheme


Almost everyone knows about this problem, especially the developers of first-person shooters. A part of the players wants the stick movement upwards to mean camera movement downwards, while the other part wants upwards to mean upwards and downwards. They can either stop playing the game, or constantly complain if they cannot change management for the one they like. Therefore, make sure that in the settings of your game you can turn on the inverted camera control.

# 38 Handle random clicks


In Journey, we decided to do two ways to control the camera: using sticks and the inclination of the gamepad itself. The latter method partially migrated from our other game - Flower. In fact, it seems to me that there he came more to the point, because there was no need to do anything except control the camera, while in Journey the player does a lot at the same time. Therefore, the player may tilt the controller randomly, and this will lead to unwanted camera movement. In addition, unlike sticks, the tilt of the controller does not have a fixed neutral position. One way to avoid unwanted camera movement is a constant re-calibration, which allows you to recalculate the neutral position of the controller depending on how the player holds it.

We had reasons to support this kind of control, because it is more intuitive, especially for beginners. But, probably, it was worth it at least to allow the player to disable it in the settings.

# 39 Use linear relationship


Analog sticks have a small radius of movement. Often it does not matter, because players are used to moving the stick all the way. But I think it’s better to be able to move the camera slowly so that the player can direct it where it needs to go. Many do this using the logistic function (the so-called s-curve) from the controller's input data.

# 40 Let the camera fly too far


To avoid jerking on the screen when the player moves his character from side to side, they often smooth the camera movement so that the character can move slightly from the center of the screen. But if you make the camera too lazy, then a fast character can escape from the screen, and this is a problem. Therefore, do not forget to set a limit on how far a character can move from the center of the screen. In addition, you can make the camera move in front of the character. For example, in Yoshi's Island, if a player runs in one direction for a while, then the camera shifts in the direction of movement.

# 41 Use a small viewing angle


The viewing angle, as we said, is zoom. If the zoom is very large, then even the smallest movement becomes huge. The approach makes the magnitude of the movement larger, and the distance decreases.

Take the same Yoshi's Island. For many of you, it will cause a feeling of nostalgia, but when I tried to show it to my friends, they could not play it, because the camera is moving too fast. This causes a feeling akin to seasickness. Therefore, it would be great if the camera's viewing angle was larger, and she would not have to move so often to keep up with the player's movements.

This error applies to first-person shooters. They most often cause players sickness, and they are advised to change the viewing angle in the game settings. Therefore, if you are doing FPS, especially for platforms with various configurations, add the ability to change the viewing angle so as not to lose players prone to motion sickness.

# 42 Quickly change the viewing angle


This problem is also often peculiar to shooters. When a player starts aiming at a telescopic sight, the camera quickly narrows the viewing angle. This problem is sometimes found in races - when a player abruptly picks up speed, the camera increases the viewing angle to emphasize acceleration. Such tricks also lead to motion sickness, so be careful.

# 43 Shake the camera


This effect is very often used in all genres of games, because it helps to accent blows, shots and explosions and helps the game look more realistic. Some say that this is the simplest way to give the game a more complete look, and it is no doubt very useful. But you should know that not all players alike perceive this effect. The amplitude and duration of the shaking, which seems normal to you, will be too great for another. Therefore, it is good to have settings in your game that allow you to change the intensity of shaking.

# 44 Shake the camera while the character is walking


This technique is no longer so common and, more often, it concerns games with a view from behind the character’s shoulder. Again, it serves to give the game more realism. But what seems real to you may not seem so to others or even cause nausea. The essence of the reception is similar to the previous one, with the only difference that the speed with which the camera moves during shaking is much lower in this case. But the risk of causing the player to attack sea-sickness remains the same. It is therefore worth being able to turn off this effect.

# 45 Shift or rotate the camera up and down when the character jumps


In many third-person games and side-shows, the camera is tightly connected to the character. Therefore, when he jumps, the camera starts moving abruptly, and when it lands, the camera stops abruptly. This can also cause nausea among players.

We are again in a situation where everything that has flown up will fall down. In this case, the character is unlikely to have time to disappear off the screen. So we can just leave the camera alone. In some games (for example, in Super Mario), the camera waits until the character lands on the surface above or below the current position, and only then changes its coordinates. And in Journey, we simply smooth the camera's movements to avoid its frequent and abrupt movements.

# 46 Quickly move the camera to a new position


This happens quite often in games, as if some developers have too literally perceived the rule about the absence of abrupt frame changes. Some games from the Zelda series illustrate this example especially well. The rapid movements of the camera can be regarded in the same way as the abrupt change of personnel, plus they can also cause an attack of motion sickness in the player. Therefore, if during such a move you take control of the player, it is better to make a sharp change of personnel.

# 47 Rotate the camera at a constant speed until it reaches the turning limits


There are drawbacks to using Euler angles - this is folding the framework , and other problems that arise when you look strictly up or down. Most likely, you will not need to allow the player to look in these directions, because you will set the boundaries of the camera rotation. But in many games, if you move the stick, say, up, the camera will rotate evenly in the right direction until it abruptly rests on the restriction. It is much better to anticipate this in advance and gradually reduce the speed of rotation of the camera until it reaches the boundary angle of rotation.

# 48 Develop for Oculus Rift only


This, of course, is not a mistake. But the fact is that games are gradually becoming more realistic and transmitting the sensation of movement better, and therefore they can more and more often cause seasickness. This unpleasant sensation arises when the brain cannot match what you see with what your body feels. Oculus Rift developers claim that they are struggling with this phenomenon, and there is no reason not to believe them. But in order to maximize your audience, it is better not to make the game exclusively for Oculus Rift. Give players a different way to play your game, because many of them are unlikely to be able to do this in the next few years.

# 49 Test on a narrow demographic group


Best of all, flaws are able to point children and beginners. And strangers, not personally acquainted with you, will be much more willing to provide criticism. But you should actively ask testers because many people, for example, may feel nauseous, but don’t say this because they consider it their weakness. Therefore, you need to make it pleasant for them to communicate with you and that they are not ashamed to say if they notice any problem with your game, because you do not want your players to experience the same problems.

# 50 Invent Universal Algorithm


Taking into account the abundance of errors and limitations described above, it may be tempting to create some kind of function that will determine how well our conditions are met and produce the optimal angle of rotation that meets all the limitations. But almost never such an approach yields good results, because when you allow a computer to do all the work for you, it is very difficult to predict what will happen in the end. And if you cannot predict the results, you cannot design the right behavior. You need to iteratively change your system, each time having the opportunity to say in advance what consequences these changes will lead to. Therefore, in order to properly prioritize between the abundance of restrictions imposed on the camera's behavior, or to find a way to best perform them, it is necessary to clearly understand the relationship between all these restrictions.

The devil is in the details


The way that works for one game will not work for another. Therefore, this entire list can help you save time on studying issues related to gaming cameras, and serve as a way to assess how well your solution works, but it will never replace testing.

Source: https://habr.com/ru/post/272825/


All Articles