Rössler, L. (2012). Rendering interactive maps on mobile devices using graphics hardware [Diploma Thesis, Technische Universität Wien]. reposiTUm. https://resolver.obvsg.at/urn:nbn:at:at-ubtuw:1-51260
map rendering; opengl es 2.0; hybrid rendering architecture; multi-tiles; line antialiasing; line dash; tile selection; polygon rasterization; 2d packing; texture atlas packing
en
Abstract:
Karten- und Navigationsprogramme auf Mobilgeräten wie Smartphones oder Tablets sind bereits weit verbreitet. Moderne Applikationen rendern die Karten oft direkt von vektorisierten Daten.<br />Aufgrund unzufriedenstellender Performance eines früheren, CPU-basierten Renderers, wurde ein hardwarebeschleunigter Map-Rendering Prototyp für Mobilegeräte auf der Basis von OpenGL ES 2.0 erstellt. Eine neuartige, hybride Architektur, die die Vorteile von Tile-basierten- und Echtzeit-Renderern vereint, wird vorgestellt. Diese Architektur besteht aus einem Tile Server, der Tiles für die Basiskarte rendert, und einem Client, der diese darstellt. Die dritte, neue, Komponente der Architektur, der Post-Processor, ist in der Lage dynamische Daten wie Icons oder Text in Echtzeit über die Basiskarte zu legen, was einen 3D Modus ermöglicht. Alle drei Komponenten werden in einem Prozess direkt auf dem Endgerät ausgeführt. Um Linien, welche bei der Kartendarstellung unumgänglich sind, darzustellen, wurde ein neuer Rendering-Algorithmus entwickelt, der es möglich macht, Linien von beliebiger Breite zu rendern und mit einem von drei Linienabschlusstypen zu versehen.<br />Zusätzlich kann die Linie strichliert werden, wobei jeder Teilstrich mit dem aktuell gewählten Linienabschlusstyp gezeichnet wird. Antialiasing von Linien wird mit Hilfe eines beliebigen rotationssymmetrischen Filters von wählbarem Radius ermöglicht. Um das Rendern von Icons zu beschleunigen wird ein Texture Atlas verwendet und es wurde ein einfacher aber effektiver Algorithmus zur Erstellung und Organisation des Atlas entwickelt.<br />
de
Mapping and navigation applications on mobile devices such as smart phones or tablets are increasingly popular. Modern maps are often rendered directly from vector data. Since the performance of a previous CPU-based map renderer was unsatisfactory, a hardware accelerated map rendering prototype for mobile devices based on OpenGL ES 2.0 was created. A novel hybrid rendering architecture is introduced to combine the advantages of tile-based and true real time rendering solutions. The architecture consists of a tile server that renders base map tile images and a client to display them. The new third component, the post-processor, draws dynamic map features such as icons and text above the tiles in real time, enabling a 3D fly-over mode. All components run inside the same process directly on the device. For the rendering of lines, an important map feature, a new rending algorithm was developed, enabling to draw lines of arbitrary width with one of three different line cap styles. Additionally the line can be stippled with a user-defined pattern where each line dash is rendered with the selected cap style. Antialiasing of the line is supported with an arbitrary circularly symmetric filter kernel of user-definable radius. To accelerate icon rendering, a texture atlas is used to store the icons, and a simple but effective packing algorithm has been developed to generate the atlas online.