With Acropora, cave creation is a snap. Simply add a cave modifier to the end of a modifier tree and presto, the subsurface volume is transformed. Acropora analyses the scalar volume for presence of a solid and applies noise pertubation without affecting the surface of the object. Cave structures are not limited to terrains, any closed geometrical object can be modified.
Passages can be added by using lofts:
Any geometry can be modified to include caves:
Caves can also be created manually by applying regional contraints. Applying local noise perturbations adds realism and detail.