We present a contact model for rigid-body simulation that considers the local geometry at points of contact between convex polyhedra in order to improve physical fidelity and stability of simulation. This model formulates contact constraints as sets of complementarity problems in a novel way, avoiding or correcting the pitfalls of previous models. We begin by providing insight into the special considerations of collision detection needed to prevent interpenetration of bodies during time-stepping simulation. Then, three fundamental complementarity based contact constraints are presented which provide the foundation for our model. We then provide general formulations for 2D and 3D which accurately represent the complete set of physically feasible contact interactions in six unique configurations. Finally, experimental results are presented which demonstrate the improved accuracy of our model compared to four others.