We present an efficient information hiding algorithm for polygonal models. The decision to referencing neighbors for each embeddable vertex is based on a modified breadth first search, starting from the initial polygon determining by principal component analysis. The surface complexity is then estimated by the distance between the embedding vertex and the center of its referencing neighbors. Different amounts of secret messages are adaptively embedded according to the surface properties of each vertex. A constant threshold is employed to control the maximum embedding capacity for each vertex and decrease the model distortion simultaneously. The experimental results show the proposed algorithm is efficient and can provide higher robustness, higher embedding capacity, and lower model distortion than previous work, with acceptable estimation accuracy. The proposed technique is feasible in 3D adaptive information hiding.