GML INspector is a desktop application that provides advanced capabilities for visualizing and working with GML and City Geography Markup Language (CityGML) data.


CityGML models tend to contain large volumes of complex data, which make visualization a challenge; the sheer volume and complexity of data contained in an average CityGML model makes effective visualisation of geometric, semantic, and topological relationships within a model very difficult. GML INspector not only provides effective visualization, but it also has a very small memory footprint even for large CityGML files.

GML INspector is fast and efficient, written in C++, and supports navigation of semantic features. INspector delivers some significant benefits for viewing CityGML data:

  • Has a CPU to GPU pipeline that efficiently maps (tessellates) GML geometry elements to GPU primitives.
  • Solves the problem of selection of nested screen objects by implementing a multi-pass GPU volume renderer coupled to geometry selection mechanisms.
  • Has an embedded Python language interpreter that allows the user to access the data model directly and write sophisticated programmatic queries.
  • Improves visual perception of geometry in indoor scenes by incorporating a specially-designed custom screen space ambient occlusion (SSAO) GPU renderer.
  • Uses a WFS (Web Feature Service) client to fetch GML or CityGML through a WFS interface.


INspector constructs a very small memory footprint even for large CityGML files (e.g. 50Mb CityGMl file requires approximately 3Mb CPU RAM and 5Mb GPU RAM). By loading only what is needed to display the selected data, INspector has a very fast loading and response time. More detailed data is loaded only when requested in order to maintain the viewing speed.

Due to the complex interaction of the geometric, topological, and semantic properties in CityGML data, most currently-existing CityGML viewers focus almost exclusively on the visualization of appearance. Galdos developed GML INspector by leveraging the power of the Graphics Processing Unit (GPU) to go far beyond just appearance. The modern GPU is not only a sophisticated visualization tool, but also a highly programmable and massively parallel general purpose computing unit. The ability to effectively utilize GPU adds a new dimension to interactive visualization and analysis of GIS data. GML INspector combines an effective user interface with several custom GPU rendering pipelines to provide a tool for the exploration of geometric, semantic, and topological relationships in a CityGML model.


INspector provides a number of rendering styles for viewing CityGML data, including X-Ray. Selecting different elements or element types within the data will cause the selected elements to be highlighted in the rendering.

3D Room Interior

INspector also provides a collection of textures and shading that can be applied to the data to produce renderings in highly realistic detail.

3D Building with Full Texture and Shading


CityGML is becoming a de-facto standard for representation and exchange of 3D city models. GML INspector is designed to provide advanced capabilities for the examination and quality assurance of GML and CityGML data, and to support a variety of visualization modes, including both exterior and interior viewing.

Technical Summary

Operating Environment for INspector

  • Desktop installation – requires Windows XP and up
  • Nvidia series 7 GeForce card
  • Minimum 256 Mb RAM and up