His long face tells you that he is unhappy and you are to blame. This way, he can keep you at a distance and on the defensive. He seems happy when playing video games is because video games do not make him responsible for anything.
When you shout at him, you are telling him that your do not even believe your words carry much weight because you need the high volume of your voice to compensate. All he hears is your anger, not your wods. He kind of enjoys seeing you upset.
He can see that you feel responsible for him, and as a result, he has no incentive to be responsible for himself.
Treat him as an individual with due respect. Show it in the way you talk to him. Focus on your words with a slow and even tone. Repeat and give him time to correct.
Remind him how fortunate he is to live in this time and place, shouldn't waste his life, find something meaningful to occupy his mind.