By using a discrete Perron method, we prove the existence and uniqueness of circle patterns on $\mathbb{S}^2$ with prescribed combinatorial types, obtuse overlaps, and polynomial branch structures. As applications, several generalizations of the classical Koebe-Andre'ev-Thurston circle pattern theorem are established. Moreover, the method of our proof suggests an iterative algorithm to find the desired circle patterns.