He's normal.
He is just 'transitioning.'
As most kids do.
They will learn to adjust.
He is 3.
This happens.
Let him talk about it.
So he 'vents' too. Every person needs to vent sometimes to situate their feelings.
This also helps adjustment.
Talking it out or talking about it out loud. With you.
Then as a boy, he will learn, to express himself and communicate with you.
Which you want to, nurture.
So that as he grows up, he will turn to you, and tell you things.
Never, teach a boy or child, to keep silent about their thoughts or feelings.
Or they will learn, not to talk to you, about their life.
You cannot force him to participate.
But don't make it a big deal.
Kids are always, hot and cold.
Emotions at this age, is not even fully developed yet, either.
It is taught.
Not automatic knowledge or skills.
It is taught.
Teach him HOW to say his feelings and the words for it.
Teach him sentences to use, so he learns to communicate with you about whatever is going on.
And that, no kid is expected to always be in a good mood, either. Not even adults.
But we all, 'try our best....." and that everyone is different.
He is himself.
Not a follower.
Kids this age, are not 'experts' in interactive play, yet, either.
And yes, he may just not be ready, for all of these classes.
My son is 4 almost 5... and he will articulately tell us "I like to and want to, but I am not ready yet...." (for Karate classes, which his sister takes and he likes it and is interested in it)... but this is what he tells us. I tell him, okay. He KNOWS himself and I respect him telling me that, his feelings. Maybe in a year, he will be ready. He knows that.
Your boy, is young.
Again, at this age they are NOT experts at interactive play nor socialization nor organized, sports.
He is young.