Combine 2D & 3D on a top down 2D game

Hello guys.

So my game is technically a 3D game when it comes to the logic, I use a 3D physics engine to handle movement, collisions, etc. But it is limited in some ways, like there is no rotation, bodies can only move in 4 directions (north, west, south, east) and the Y axis is completly ignored.
That’s it, it is basically a top down 2D game with 2D sprites but internally I still use some 3D components because dealing with 2D physics engines it’s too much for me.

Now There’s something I really don’t like about the result, and it is the player’s movement. Allowing the characters to move only on 4 directions sems to work fine for NPCs and objects, but it doesn’t feel right for the player, specially when I have action-adventure mechanics.

I’ve seen some games like Rune Factory in which they place 3D models for the characters and other entities, so yhey can allow the player to move freely using the gamepad’s stick, and I’d like to know if someone could answer some questions about this topic.

In general, how is this called? Is there a way to caled this mixture of 2D sprites for the UI & scenario and 3D models for the entities? I’d like to google more about this.

How is it applied to monogame? Is it difficult to implement a system which does something like this:

Layer 1: draw 2D tiled terrain
Layer 2: Draw entity’s 3D models (Player, NPSs, objects, etc)
Layer 3: Draw UI elements (HUD, conversation boxes, etc)

How is the perspective handled in this type of games? Being the 3D models on top of a 2D scenario, how are shadows applied?

Sorry about the long post, I don’t know much about game development.
I’d realy appreciate any guidence.

The only term I can think of for it off the top of my head is “2.5D”, but yeah, a great many sidescrollers and top down games use 3d models. Some are entirely built with 3D models and then just rendered side-on or top-down.

In Monogame everything, 2D or 3D, is drawn the same way: you send polygons to the GPU, transform them into screen co-ordinates with View and Projection matrices, and render them to the screen using those coords. Monogame abstracts some of this away when working in 2D because in 2D you can use SpriteBatch, but under the hood it’s no different: SpriteBatch is just creating polygons around your sprites.

There are some minor gotcha’s when it comes to mix 'n matching 2d and 3d rendering such as SpriteBatch changing render states without you realizing, but nothing too bad.

Perspective can be eliminated easily by using an Orthographic camera matrix, which renders geometry with no perspective shifting.

Shadows are entirely their own thing: Monogame doesn’t have built-in shadows. You’ll have to research and make them yourself.