Hello, I have some trouble understanding how these concepts works together and how can I design a game with the simplest design possible.
As I can't really start to draw things on screen without understand how all of these interact.
I'll proceed what I want to do.
-
creating a pause menu.
I want to create a pause menu, so I create it fully withing UI reading all https://bevyengine.org/examples/#ui-user-interface
But what is UI exactly, is it just nodes that are show in a rather absolute fashion on the 2D screen? are they their own separate kind of components and answer to a UI specific logics? or they are encapsulated 2d meshes + material + transform that are just spawned in the UI which is a sort of implicit camera? -
I want to create a world to move entities in it, a simple 2d overworld.
For now it's to me simple I can just spawn things into the world and just care when to load / unload things and how to layer stuff.
Without thinking too much about what it is, I move the camera to show the world. -
in this world I want to interact with NPCs for example that shows me a selling UI, or open my inventory. Which can be considered an UI as everything needs to be in the viewport I must not move the camera for that, things must move for the camera.
but my intuition tells me this is not an UI I want to do with bevyUI and rather a UI world I need to create with 2d meshes, sprites and etc. -
If I want to set a base resolution for my game, like a 640 * 360, how do I stretch it to fit bigger screen? and for smaller screen?
there's this solution there: https://bevyengine.org/examples/window/window-resizing/
but I was thinking about how godot explains it https://docs.godotengine.org/en/stable/tutorials/rendering/multiple_resolutions.html
which explains all forms of fiting multiple resolutions.
Apologies if its difficult to follow as I probably miss use some terminology.