Flow simulations of fractured and faulted reservoirs require representation of subseismic structures about which subsurface data are limited. We describe a method for simulating fracture growth that is mechanically based but heuristic, allowing for realistic modelling of fracture networks with reasonable run times. The method takes a triangulated meshed surface as input, together with an initial stress field. Fractures initiate and grow based on the stress field, and the growing fractures relieve the stress in the mesh. We show that a wide range of bedding-plane joint networks can be modelled simply by varying the distribution and anisotropy of the initial stress field. The results are in good qualitative agreement with natural joint patterns. We then apply the method to a set of parallel veins and demonstrate how the variations in thickness of the veins can be represented. Lastly, we apply the method to the simulation of normal fault patterns on salt domes. We derive the stress field on the bedding surface using the horizon curvature. The modelled fault network shows both radial and concentric faults. The new method provides an effective means of modelling joint and fault networks that can be imported to the flow simulator.