I have just started to develop a 2D Android game, something like squash a bug.
Scenario is( there are like 3 same type bugs moving in random directions, when i press on one of them it disappears and etc…)
I’m using opengl es.Its a simple 2D game and my camera is fixated in one position in opengl es. I know that my phones screen coordinates do not match to my opengl es coordinates and therefore i have to combine/convert them myself.
Sorry if my question seems silly i am just a beginner….
Question 1(perhaps the most important thing in order to create this game). As i told i have 3 same objects(bugs). How can i track coordinates of each of them in opengl at the same time.?
Question 2. IS there any kind of alternative and easy way to combine coordinates from screen to opengl es or should i do it myself.?
You should just be able to track the coordinates of each object using whatever data structure you prefer. In the simplest terms, it can just be a struct that contains x and y coordinates in “world space”. Each iteration, you would update these coordinates based on speed and direction, and then draw the objects again. Without any clever optimizations (that you probably don’t need if it’s just a handful of objects), you can do that by calling moving your position to the object’s coordinates and calling draw.
I believe that in opengles you would have to keep track of this yourself.
When working in opengl(es), typically you keep track of coordinates in “world space”, which denotes the conceptual world coordinates of the object. Each object can then have it’s own knowledge of how to draw itself in “model space”, which basically assumes that the object is centered at (0, 0), and allows you to specify the legs and head locations and whatnot relative to (0, 0).
The final step is to project the coordinates to “screen space” which maps to what your viewport is set to (which is basically your screen). The transitions between the coordinates is typically accomplished by model-view and projection matrices. The model-view matrix transforms your world coordinates into camera coordinates (that is, relative to your camera), and the projection matrix transforms these coordinates into viewport coordinates (ie your screen coordinates).
This might sound like a lot, but once you get a hang of these matrices, it becomes second nature. I’m sure there are tutorials out there for opengl modelview projection matrices. Let us know if you have more specific questions…