Rendering Method Suggestions?

I’m looking to make a java game and I’ve researched multiple methods on how to render it but I’m having trouble deciding what method to use. I’m looking for suggestions, experience, or opinions on how you would render the kind of game I’m looking to make. My main concern is performance but if performance can suffer a little for the sake of appearance, then I’m willing to let it pass.

The kind of finished result I’m looking for is an appearance similar to games such as Dragon Quest IX (This is just the first game I thought of that resembled what I want to make, the gameplay has nothing to do with why I gave this game as the example)
Specifically, I’m looking for:

  • A 3D appearance with a third person view towards the character at a ~45 degree angle
  • The illusion of depth that causes objects in the background to appear slightly smaller and slightly larger when in the foreground
  • Optional: The ability for the user/player to rotate the camera angle around the character

I’ve considered the following methods:

  • 2d using no external libraries and depth appearance calculation
  • 2d using Slick2D and depth appearance calculation
  • 3d using LWJGL VBOs
  • 3d using JMonkeyEngine

I’m sorry if I sound lazy, but I just want to have AS MUCH information on these methods as possible before I begin development. Also, I have been programming in java and a few other languages for a few years, it’s not something that’s new to me, I’ve just never done game development in java only before. If you know of any more methods that you’ve used or even seen that could be better, I’d be happy to hear about it. :wink: