Mixing 2D and 3D - Designing the Game

So I started a short project for fun to do in 2 weeks maximum. I wanted to make a 2D top down game but with a 3D environment. Basically, only the player and enemies are 2D sprites. I made an example scene:


So basically, before I start any programming, I need some advice. How exactly should I design the character controller? For example should I add:

  • 2D or 3D rigidbody?
  • 2D or 3D colliders?
  • Use X / Z or X / Y axis?
  • Should I treat it as a 3D object or a 2D object?

Please give me some suggestions on how I should be treating these sprites and the 3D environment. I have never done this before so maybe someone has some tips or tricks to make my development time easier. Thanks!

You’re going to have head-and-shoulders 2D sprites with a perspective 3D environment, like above? That’ll be… interesting to see.

As for the rest, you will have to forget about the 2D collision system and, if you insist on this combination, attach a 3D controller to your sprite plane and treat it like any other 3D object. You should use the X / Z axis for uncountable reasons, chief of which are NavMesh and PhysX.

So I am not going to use 2D at all? Nothing 2D related except for the sprites?

Nope. :slight_smile:

But you should really try out whether you think the game looks acceptable with pure top-down sprites being rendered next to perspective geometry at the edges of your camera view. I imagine the combination will be pretty incongruous.

1 Like

Ah thanks. This game is just for fun… plus I just wanna see if it looks cool or not. Might change it once I get some visuals in. Thanks for the input though

You could technically use 2D colliders, but it would require manually creating polygon or edge colliders for the geometry, or making some kind of tool to automatically do it. Not likely to be worth it, and it would require using the X/Y plane.

–Eric

Probably going to go all 3d colliders and stuff. Quick question, what do you think about mixing 2d and 3d this way? Horrible or meh or cool? Just wondering on what others will think.

i haven’t done it exactly this way, but one of my game does use sprites with 3d colliders and physics, because I liked the behavior of 3D physics a lot better compared to the 2D physics.

As @Marble pointed out, the big visual check is to see how it looks when the sprites are being rendered against or near the 3D geometry. If it was just the player that was a sprite, and the camera stayed centered on him, it probably wouldn’t look too bad as the perspective will ‘correct’ as he gets close to objects. But if the camera doesn’t move with the player? And if the enemies are sprites too? Yeah, the combination might look a bit… uneasy.

I’d at least throw some sort of cell / toon / flat shader on the geometry to try and match the visual style more, then see how it looks when you move about.