The reality and real-time performance have always been the research hot-point of fluid simulation. Aiming at the unstable fluid surface motion in the scenes with complex terrain, in this paper, we propose an adaptive fluid velocity control force calculation model based on terrain difference, and a stable SPH numerical model for solving the shallow water equations is established. In this proposed numerical model, firstly we reduce the simulation domain from three-dimensional space to two-dimensional surface for reducing calculation quantity, and the water depth is represented by the density of particles at the meantime. Secondly, to ensure that the number of neighborhood particles is stable within a fixed range and to improve the accuracy of simulation, we apply a variable smoothing length to our numerical model. Then, an adaptive fluid velocity control force calculation model is introduced based on terrain difference, in which the velocity and position of particles are corrected by calculating the terrain difference caused by particle movement between each time step. The coordinates on terrain used for the calculation of terrain difference are dynamically chosen by the density of the particles. To improve the real-time performance of simulation, a screen space fluid rendering method is used to refrain the extraction and reconstruction of fluid surface. The numerical calculation and fluid surface rendering both load on the GPU for parallel execution. The simulation result shows that the proposed method can effectively improve the unstable fluid surface movement in scenes with complex terrain while reaching a real-time interaction level. The density and pressure are evenly distributed during the simulation.