Subdivision schemes are efficient computational methods for the design and representation of 3D surfaces of arbitrary topology. They are also a tool for the generation of refinable functions, which are instrumental in the construction of wavelets. This paper presents various flavours of subdivision, seasoned by the personal viewpoint of the authors, which is mainly concerned with geometric modelling. Our starting point is the general setting of scalar multivariate nonstationary schemes on regular grids. We also briefly review other classes of schemes, such as schemes on general nets, matrix schemes, non-uniform schemes and nonlinear schemes. Different representations of subdivision schemes, and several tools for the analysis of convergence, smoothness and approximation order are discussed, followed by explanatory examples.