My own ( but short for sure ) experience. Found DIP useless.
I use %x/%y units for views and pixels for grafics with proper scale
And we're talking about 2D games, where all is based on pixel grafics, so pixels, IMHO, is a native unit
Or may be I don't understand DIP at all
Could you explain me why you and Erel see percentages as the best unit to use? I looked at the code of open source games and didn't find percentages. I read a few books on the subject and didn't see percentages either.
Let's have an example: a map of 1200 pixels x 1200 pixels.
The coordinates in the world could range from:
1) 0, 0 to 1200, 1200 (unit = pixel)
2) 0, 0 to 1200/Density, 1200/Density (unit = dip)
3) 0, 0 to 100, 100 (unit = percentage)
4) 0, 0 to 200, 200 (unit = meters, with 6 pixels=1 meter)
If I decide that all screens will display exactly the same map area, regardless of the screen resolution, DIP is a convenient unit (the conversion to screen coordinates is much easier). If I decide that all screens will display as many pixels as possible, pixel is a natural and convenient unit (bigger screens will display a bigger map area). At first glance, I don't really see the usefulness of the percentage unit. It involves more computation and needs float computation (costly for CPU). Exactly like the meters unit, but the meters unit is justified by the use of a physics engine.
Is not there a confusion between the coordinates in the world and the screen coordinates? The relationship between them can be a ratio, indeed.