Best way to render a character with extra accessories?

Which of the following approach is better for using a character with a hat in your game?

Approach 1:
I create two separate models: one with the hat, and the other without the hat.
Note, the first model with the hat is rendered as a single mesh, meaning the hat is part of the character and cannot be taken off.

In game, when the character needs his hat, I’ll load the one with the hat, and vice versa.

Approach 2:
I create one model, with two meshes, the body and the hat.
In game, when the character needs his hat, I’ll toggle the “Mesh Renderer” of the hat mesh, so the hat will only be rendered when needed.

The more common approach is probably to make the hat as a separate mesh. Put an empty mountPoint on top of the head. Spawn there and child to the head bone.

Advantages are you can swap out hats, put the same hat on different people, or on a hat rack.

In theory, two meshes draw a little slower than 1. But, if you were planning on using a different material for the hat, it counts as two meshes anyway.