There was no standard or pipeline in place, which caused inconsistent results and errors. When WebGL was initially released, developers created custom exporters to deliver 3D assets into a WebGL engine. Typically a higher resolution model is created with a detailed mesh, from this a normal map can be exported and wrapped around a lower poly model to create the illusion of a detailed object. The detail these maps create is fake but can be incredibly effective. This is an excellent approach in creating detailed raised textures on a 3D asset while maintaining a low poly count.
Topology refers to the mesh flow of a 3D model – the cleaner the mesh the more efficient the model, meaning fewer polygons used and a reduction in the overall weight of the asset.