A system and method for shallow water simulation may provide a framework for solving General Shallow Wave Equations (GSWE) to efficiently simulate 3D fluid effects on arbitrary surfaces using a height field representation. The height field representation may include height columns constructed along surface normals, which may be dependent on a condition of boundary cells adjacent to fluid cells and/or artificial viscosity effects. The framework may provide implicit schemes for solving for the effects of external forces applied to the fluid, including gravity and surface tension, and explicit schemes for solving for advection effects. The system and method may be implemented on general-purpose CPU(s) and/or GPU(s) and may be capable of simulating a variety of fluid effects including: waves, rivulets and streams, drops, and capillary events. In some embodiments, the system and method may achieve real-time fluid control and fluid shape design through user-interaction (e.g., in a graphical painting application).