Jump to content
Double Fine Action Forums
Sign in to follow this  
DF Oliver

Programming Update #1

Recommended Posts

If I understand this correctly, it will work like the recently released Fez, where if you walk (click) at the side of the screen, and instead of the usual one second black screen and then popping in another screen the camera will shift and present you the next room?

If the answer is yes, was Fez in any way the inspiration for this system or just a coincidence in similarity?

And wouldn't this be called 2.5D than 2D? Since when the camera shifts you should be able to see the angle of the corner of the room you enter.

Also another question, does this system means that all the areas of the game will be seamlessly connected?

Sorry if the many questions, I just want to see if I got this right, or I'm reading things that aren't there.

What I mean by 'multi-screen environment' is that the camera will scroll when you reach the end of the screen. I don't think that the game will only have one gigantic environment though. I'm pretty sure there will be doors and other transitional areas which when triggered will fade out the current screen before fading into the next environment.

It's really early in the project, so let's see what crazy ideas Tim comes up with... :)

I hope this answers your question.

I love this idea of a "multi-screen environment" with the camera actually moving along into he next screen, rather than just jumping from one screen to the other, with no transition effect. I think that will look really sweet and allow for much better game-flow. Can't wait to see that in action!

@DF Oliver, Do you think you will be posting any videos for this scrolling into different screens effect for us to see? Also, I absolutely love your signature and the quote with it! I'm actually wishing Robot's Adventure was also going to be a full game now! xD

Share this post


Link to post
Share on other sites

If you make Redbot's Adventure into its own standalone game, restrict all characters to a series of slightly varied geometric shapes, and fill it with geeky programming references I will never understand, I would still play it

Share this post


Link to post
Share on other sites

Hi Oliver,

Thanks for the post, it was really interesting! I too am a developper (mostly Java, GWT and webapps) and am really interested in the technical details. I saw some posts regarding planning, automated testing, SCRUM and find it really interesting too. Please don't be shy about sharing both technical details and all the tools you use to make repetitive tasks automatic or faster !

Looking forward to your next post :)

Share this post


Link to post
Share on other sites
The walkable areas for characters will be defined by complex polygons.

Hi,

I'm a pure 3D programmer, so I don't quite know how this is implemented. Could you elaborate a bit? You don't only need the walkable area, but also the distance from the camera (so you can make the character smaller when it's supposed to be further away in the scene). Are you just storing a distance value along with your polygon vertices, or is there some more magic involved?

Further, the art update #1 showed the character walking away into the image along hills, and getting its bottom part clipped away on the way there (being obstructed by the hill layers). How are you planning to determine this clipping, and calculating the time it takes the character to walk into the scene?

Share this post


Link to post
Share on other sites
The walkable areas for characters will be defined by complex polygons.

Hi,

I'm a pure 3D programmer, so I don't quite know how this is implemented. Could you elaborate a bit? You don't only need the walkable area, but also the distance from the camera (so you can make the character smaller when it's supposed to be further away in the scene). Are you just storing a distance value along with your polygon vertices, or is there some more magic involved?

Further, the art update #1 showed the character walking away into the image along hills, and getting its bottom part clipped away on the way there (being obstructed by the hill layers). How are you planning to determine this clipping, and calculating the time it takes the character to walk into the scene?

Hi anlumo.

You are right there is a lot of trickery going on. Back in the days of SCUMM the game designers would paint the walkable area (it was a bit more complicated than that) and by that I mean they would specify a binary mask that describes where characters can go. This data structure was then used as the input for the path finding algorithm.

As you correctly mentioned that is only half of the story though. Since 3D was in it's infancy back then the perspective shortening (aka things appear smaller when they are far away) had to be faked. Since the camera for most scenes was kind of a side camera this is easy though, because the closer the character got to the top of the screen the smaller the sprite was scaled. This is because of the assumption that the actors would move closer to the horizon and therefore they would appear smaller.

In order to allow more flexibility each walkable area defined a scaling factor at the bottom and at the top of it's bounding box, this way designer could create all kind of interesting effects.

We are going to do something similar, but instead of drawing a binary mask the designers will define it with a (complex) polygon. In addition to that we will allow different ways to define vanishing points, so designer will be able to define localized scaling. How exactly this will be authored hasn't been defined yet, but it is easy to imagine to 'attach' additional attributes to the vertices of the polygon. Then we would simply need to interpolate the influence of the nearby vertices to get a scaling value.

You are also correct that the situation visualized in the art update is complicated. Basically we'll need a way to move characters between layers which isn't trivial since they can parallax. Right now I'm thinking about implementing a 'bridge system' that handles the layer transitions. Basically you can define to points on two different layers that will be connected by a 'bridge'. The system automatically deals with the relative offsets introduced by parallaxing.

Interestingly enough the clipping comes for free, because the the world is drawn from back to front, so once the character transitions to the background later all scenes elements in the foreground will automatically draw in front of the actor and therefore occlude parts of it's body.

Does that make sense at all?

Oliver.

PS.: I'm finally back in the office and very excited to see all the progress. :)

Share this post


Link to post
Share on other sites

Hey Oliver!

While we're talking about layers and the videos from the first art update:

I noticed that one of the layers our lumberjack friend passed through while advancing toward the vanishing point (final video) was a layer on which a fence had been drawn over the top of the hill. When the lumberjack passed over the tops of the hills that were simple shapes with hard edges, you don't really notice him snap into the next layer at the top of the hill. However, when he reaches the fence at the top of that middle hill, he doesn't hop over the fence but sort of walks through it. It is hard to see because it happens quickly and the holes in the fence help disguise some of the effect, but if you watch the solid parts of the fence closely, you can sort of see the moment where the lumberjack snaps into the next layer.

Is this a problem that would be solved by simply making sure that any paths that allow the character to advance into the background be a clear walking path? Or are there other tricks to disguise the character snapping to a new layer? Or did you already answer this question and I missed it? =P

Share this post


Link to post
Share on other sites
Hey Oliver!

While we're talking about layers and the videos from the first art update:

I noticed that one of the layers our lumberjack friend passed through while advancing toward the vanishing point (final video) was a layer on which a fence had been drawn over the top of the hill. When the lumberjack passed over the tops of the hills that were simple shapes with hard edges, you don't really notice him snap into the next layer at the top of the hill. However, when he reaches the fence at the top of that middle hill, he doesn't hop over the fence but sort of walks through it. It is hard to see because it happens quickly and the holes in the fence help disguise some of the effect, but if you watch the solid parts of the fence closely, you can sort of see the moment where the lumberjack snaps into the next layer.

Is this a problem that would be solved by simply making sure that any paths that allow the character to advance into the background be a clear walking path? Or are there other tricks to disguise the character snapping to a new layer? Or did you already answer this question and I missed it? =P

I think it will come down to defining a good path. It will be difficult to disguise layer snapping, the trick is to avoid it by designing the scene in a careful way. :)

Share this post


Link to post
Share on other sites
Basically we'll need a way to move characters between layers which isn't trivial since they can parallax. Right now I'm thinking about implementing a 'bridge system' that handles the layer transitions. Basically you can define to points on two different layers that will be connected by a 'bridge'. The system automatically deals with the relative offsets introduced by parallaxing.

Maybe you could add an intermediate layer between the two visible ones that only contains this walkable area polygon, describing the downslope. Then the two visible layers' walkable area polygons could have edges in common with this special layer.

Does that make sense at all?

Yes, this is exactly the information I was looking for, thanks!

Share this post


Link to post
Share on other sites
I think it could be interesting as 2D gameplay in 3D environments. It broadens the visual possibilities.

It sounds definite, but I'll ask: has the decision been made to definitely not pursue a third party engine?

Sounds very Klonoa

Share this post


Link to post
Share on other sites
Sign in to follow this  

×
×
  • Create New...