I also have realistic, terrifying nightmares that seem to have a life of their own, and go on & on. One thing that helps me if I wake up and feeling fearful, is to change the story so that I or someone else becomes a hero and rescues the situation. If I can't get back to sleep and can't stop thinking about the dream, I will get up and have a small glass of milk or water, might read something light hearted or funny (I set a time limit because I need my sleep) and try to get back to sleep thinking only of good events or things in my life. Sometimes I write my dreams down to see if I can figure out the personal message my brain is trying to give me. I've read that dreams are a necessary way for our brains to cope with all the input we put in our minds every day. We are not to take them too seriously as it is an essential part of our sleep process. Everybody dreams. Some people don't remember them, but they have them, otherwise it will be detrimental to their health. My husband has only remembered waking up from a dream once in all his adult life and couldn't remember what it was about when he got up in the morning. I'd rather have my dreams even if it includes nightmares, as I've had such interesting, beautiful dreams with the most spectacular colours! Maybe write yours down - might lead to interesting reading, maybe a book!? I don't think you should be embarrassed about your nightmares. It might be interesting if you put forth the question to a group of friends. You could say you are taking a poll as to who remembers theirs, who doesn't; who dreams in colour (some of mine are black, shades of greys and white) and who has nightmares & how frequently. It could get very interesting, maybe can do a project/research for an essay at school or something. You do not have to divulge what your nightmares are about if you want to keep them private.
I have learned that what you eat before going to bed can make a difference. When I have a snack of cheese it seems like I have action-filled dreams. Here's wishing you sweet dreams, Steven!