Godot Version
4.3
Question
I’ve already made a post about a problem I’m having, making a 2D space game which takes place in an open solar system, where I can’t even zoom the 2D editor viewport out far enough to see multiple planets at a time, but I just managed to use @tool and an addon to let me preview Camera2Ds in the editor, while decreasing their zoom with code to see everything. Now, that I’ve got that, rather clunky work around, I’ve come across some other issues where the camera seems to actually be limited in its position, as in if zoom it out really far it runs into walls in the 2D editor space, even if I move nodes beyond them. My point being I’m starting to wonder if Godot 2D is really capable/meant to make this kinda game and if I should try and convert it into 2.5D so I can just use a normal 3D camera and not the canvas’s transform from 2D, or if I should consider switching to a different game engine, like unity where the 2D camera is really a 3D camera already. Any advise would be appreciated.
I’ve added a screenshot here to better show what scales I’m working with and show the preview camera I was referring to.
I think you have to redesign things you did. Why it should be so big? Its not 3d, and I don’t thing that “spacer” games should be too tied to realistic planet sizes. Idk if you played old Microsoft’s Freelancer game, but there was really small planets but it was not a thing that killed immersion.
If you building a system in editor… Well that a bad choice, not using scripts but rely on editor
mb apply to every node that have meta &‘planet’ which added on spawn, a multiplier to scale 0.2 for instance
Do you actually zoom into 100% scale as a player? Are your planets really 40k images? If neither are true then you may have a units problem more than 2D vs 3D
1 Like
So the planets are nowhere near scale by any means, they’re quite big but you can see for yourself what they actually look like in game here. I also just did a test where I bumped up the ship’s speeds and flew as far as I could and there actually is a limited distance the 2D camera can travel apparently before it just stops following the player.
The Planet sprites are 4k images
The only other solution I can come up with is to scale down all the objects and camera so that the units are much smaller but it still plays the same, that would require changing almost every variable though, but I may not have a choice.
Do you mean to say that the scale of all the objects and the distances are more than what they should be relative to the units the editor uses?
for this screenshot, what is the zoom level of the in-game camera? I’m betting it’s well below 1.0
The units the editor and game uses is pixels, you could associate 1 pixel to 10,000 meters if you’d like, I think you’re baseline zoom is just too much.
1 Like
Perhaps I can simply scale down the main node the whole game is a child of and then multiply all the distance and speed related variables by the same scale.x
If the camera is outside the main node that might work, but I’d recommend taking the time to re-align your scale, planets could be scaled down as a whole, I’m betting players were scaled up maybe keep them at 4x max
The players are at 1x scale the planet sprites were scaled up a bunch, but I think I need to lower everything’s scale now in order to keep the same size ratio between entities and planets. Scaling the main node doesn’t work it seems, without some tweaking, I’m just trying to figure out the best way to make it easy if I have to rescale again.
Make sure to keep everything relative to the editor’s 100% zoom, press 1
regularly. If your game dynamically zooms the camera then keep your editor’s zoom within the game’s range.
1 Like