Lot's of times you will see companies use their own native engine. Other times you will see them use a proprietary one like the unreal engine. Should you build your own engine?
If you want to make games in your basement/garage/bedroom, the answer is 100% no. You don't have time for that. You have to get your game out to the public as soon as possible. Even if you go long term should you build your own game engine? Why do people do it?
Well, the first reason is that when you flip your game business it is worth more if you have that software. Instead of just having characters and titles you also have engine and code to sell as well. It could be worth it.
Personally, I do not have time to code my own engine. I just want to get my game out as fast as I can so people can play it. I have too many ideas and not enough time. I would advise against building your own engine. I would just use unity3d. It is the easiest 3D engine to use.