[LibGDX] Who abstracts from Screen interface?

Topic title might be a bit vague but I am basically asking this:

If you had a GameScreen, should not have to state what this Screen does…do you abstract away from this as much as possible and only run update/proccessing code in their?

Like for small games I put the camera and spritebatch and all that in there but if creating a larger game it seems smarter to “abstract” as much of the code away as possible into what could basically be classed as a Game Engine.

How many of you do this?

You shouldn’t be actively trying to ‘abstract’ everything unless there’s added functionality. I keep my camera/spritebatch/scene2d skin in my Screen class.

I don’t think this is the problem, if I understand correctly, he wants to organize it better.
Well I had this problem myself as well, my GameScreen (because all types of calls in render methods etc.) got really messy so I decided to do it a little bit ‘different than normally’.
I made a new class myself and put the camera/spritebatch in there and also gave it a render method so it keeps my GameScreen way more readable/clean. You can perform countless tricks like these.

Yeah that was my point. If your screen class is too big/messy then sure, but otherwise there’s no need.

Well I seperated the Box2D stuff, drawing stuff and entity stuff into seperate classes to try and keep it neat and clean.

I feel as if though, whenever I create games, even basic ones I should be creating a very basic engine rather than just code all slammed together.

If that makes sense.

I think everyone feels that at one point or another, but I’d rather be making a game than an engine :point: