Rendering Polylines In part 1 I learned how to identify polylines and came up with a simple visual representation by drawing the polylines using the OpenGL "GL_LINES" primitive. This led to a network of lines representing the centres of roads/rivers/railway lines etc. Extracting the data To allow us to render the roads with some proper "width"… Continue reading OSM Renderer – Polylines part 2
Line Based Objects As you may have read in previous posts - a lot of the objects in open street map are represented as polygons, however, many other objects are represented as polylines. A polyline is simply a collection of points which together represent straight line segments. When chained together these line segments work together to… Continue reading OSM Renderer – Polylines part 1
As the old saying goes, a picture is worth a thousand words... A video however is much better than a picture! This video has been captured from an iPhone 5s using Quicktime movie recording. I know the video looks laggy, but this is mostly because of me not being very smooth with my finger gestures to… Continue reading OpenStreetMap in 3d Video!
We have heights! To improve the realism of the building/city rendering the next step I took was to parse the building heights from the Open Street map objects. The height tag is described on the OSM Wiki here. The main points are as following: the "height" tag of the way returns the maximum height of the… Continue reading Building Heights!
Lighting Basics The next step I took to improve the rendering was to add in lighting. Until now I had just gave everything a normal of "up". This meant that every surface of the building had the same brightness as the normal represents the direction the surface is facing. Basic is lighting is done by… Continue reading Calculating normals + lighting
Now that we have the walls complete, I thought it would be a good time to move onto rendering the rooftops! Instead of having to triangulate the polygons myself, I looked online to find a triangular to do it for me. I stumbled across an old flipcode article that had a triangular in it. I simply… Continue reading Rendering Rooftops – Triangulating polygons
Progressing Forwards At the end of the previous post I had processed the Openstreet map data - created polygon data for each building and then drawn these buildings using the GL_LINE primitives to give us a wireframe outline for the building as shown below: To take this to the next stage - the next task was to draw… Continue reading Rendering solid walls
In my previous blog post, I shared how I converted objects the Open Street map data into a form in which I could begin rendering it using OpenGL - well in my case OpenGLES. At the end of the previous post I had a list of points that I simply converted into vertical lines and… Continue reading Rendering Building Edges from Open Street Map
So I finally got rid of those cubes which I showed in the first blog and made some progress. I started by creating a simple web service to query data from the overpass API - I mostly stole the request URL from the Vizicities source. I hope the creator (Rob Rawks) doesn't mind! The main steps that… Continue reading Rendering Building Corners with Open Street Map
Rendering Cities using OSM So lately I was feeling like getting back into messing around with some 3D "stuff". I recently came across Vizicities and was inspired to do something similar myself. The basic Idea is to render a city (in this case) using open source data from Open Street Map. One of the reasons I… Continue reading City Rendering with OSM