1
\$\begingroup\$

I'm trying my hand at Android development and seem to be running into an invisible ceiling in trying to get what I want accomplished. Basically I'm trying to create an app that renders a 2D surface map that I can (pinch) zoom and pan. I'll have to place nodes on the surface of the map that will scale/zoom and pan in relation to the surface.

I started out with a 2D ImageView approach and got as far as pinch zoom, pan and laying nodes as relative ImageViews, but all the methods I tried to get X,Y,W,H for the 2D surface were always off for some reason. Additionally, I was never able to scale the node ImageViews correctly, and as a result never got far enough to try and work out their X,Y scaled offset.

So I decided to get back to 3D rendering. Conceptually pan/zoom is camera manipulation, so I don't have to mess with how to scale the 2D map or the nodes. But I need a starting point or sample to get me going that's close to what I'm trying to achieve. A sample on a translucent spinning cube isn't helping as much as I need it to.

Any tips? Links, insults and sympathy are all welcome!

\$\endgroup\$

1 Answer 1

1
\$\begingroup\$

Why are you using ImageViews for 2D? I hope you mean a SurfaceView - ImageViews are not designed for any kind of speedy rendering.

I recently open-sourced the source code for my game library which pretty much does what you seem to want done; see the BitmapSurfaceRenderer in https://github.com/micabyte/android_game

Unfortunately I haven't had time to do a proper example/tutorial for this yet, but the framework is pretty much designed to do exactly what you want (it's the way I implement game maps in my own games - big scrolling bitmap and then overlays with map details such as locations, units, etc).

\$\endgroup\$

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .