Welcome, Guest. Please login or register.

Login with username, password and session length

 
Advanced search

1411539 Posts in 69383 Topics- by 58439 Members - Latest Member: isabel.adojo

May 02, 2024, 06:14:24 PM

Need hosting? Check out Digital Ocean
(more details in this thread)
TIGSource ForumsDeveloperDesign3rd person camera VERSUS walls
Pages: [1]
Print
Author Topic: 3rd person camera VERSUS walls  (Read 1194 times)
DamienDe
Level 0
**



View Profile
« on: April 28, 2011, 01:40:02 PM »

Hi guys and gals...

I wanted to talk a bit about 3rd person cameras and how they react when a wall comes between the camera and the player character.
This may seem like a topic for the "Technical" board, but I am not really interested in implementations code wise, but in the different ways the problems of camera vs. wall interactions could be resolved.

Mainly I can see two valid ways of handling the interaction:

1. Collision of the camera to character vector with the level geometry and then moving the camera to the player until the collision is resolved.
This has the problem that the camera could land inside the characters head or you would end up in his crotch area etc.
This is used in almost every 3rd person game.
 
2. Just don´t show the parts, which would occlude the player character.

Well, way number 1. works fine most of the time, but I get the feeling that it gets pretty irritating in tight areas like cave tunnels etc.

Way number 2. is what I am working on at the moment. First I thought this was a pretty cool idea, but I am not so sure anymore, as it can look pretty bad.
Let me show you some screens...


Nothing special is happening here, everything looks normal.


Now we rotate the camera a little bit and part of the camera view would end up inside a wall, so we just do not render these areas. But what should we do with the inside of the wall...just paint it black.


Now we did a 180 and are behind the character. With a normal 3rd person camera, we would end up VERY close to the character, but here the distance from character to camera remains the same. But look at all those black areas (the "inside" of the walls). Pretty ugly, right ?

Oh...and note the area in the second picture at the right border. You are able to see the outside surroundings of the cave. This could be solved with thicker cave walls, but there would be many times one could view a neighbouring room.

What I am trying to to with this game is capturing the feeling of a 2D platformer, where the distance from camera to player character is always the same. Normal 3D person cameras just do not give me this oldschool platformer feeling.

Now I want to ask you people, what you think about 3rd person cameras. Are there any other ways ? Is there anybody out there who feels the same way, that the colliding cameras do not capture the 2D feeling ?
Is someone okay with sometime seeing mostly undefined black areas like in my camera system ? Or is it even more irritating then the close up zooms of colliding cameras ?
Logged
gimymblert
Level 10
*****


The archivest master, leader of all documents


View Profile
« Reply #1 on: April 28, 2011, 02:06:58 PM »

Generally people put the collider of the camera at the camera origin. When the char are too close to wall, camera got into the character UNLESS the camera is higher than the character which is most platformer solution (since Mario 64) and it work fine.

Another solution is, when an object intersect the camera line of sight between the main character, to render it transparent or remove part (fighting game remove wall all together or cut object in half). Some game (mario galaxy) create a shadow to indicate where the character is behind the geometry.

My solution is to put the collider on the near plane and let the camera go into the wall, of course the collider should not intersect the scenary or else we will se hole in the geometry.

But it is generally dumb to not design the level lay out without camera path and placement in mind, we need to think how the camera circulate as much we create path for the character, because it's the gameplay!
Logged

Pages: [1]
Print
Jump to:  

Theme orange-lt created by panic