I have a character that I need a collider to match his model. He is currently on a square (painted on, nothing’s animated right now) but I want the collider to match what’s been painted rather than the square that the model is in Unity. How do I go about doing this?
Try to approximate the shape with a compound collider (several primitive colliders as children act as a single collider). If that’s not close enough, create a mesh in the shape you want and use that as a convex mesh collider. Note that convex mesh colliders have limitations (such as being, well, convex), so you still might need more than one.
Alternately, could you use the simple collider that the thing is painted on (plane or cube?), detect the hit, then in the OnColliderEnter (or if you are Raycasting, look at the hit), then sample the texture at the point of impact, and see if it’s non-transparent (or whatever). If you used transparent alpha around the character’s paint (decal) then reject (do nothing) if that’s the pixel involved.