What eats up bitrate:
- high resoution
- high frame rate
- content with high amount of details and a lot of movement (ARK, PUBG etc.)
GPU accelerated encoders are fast with very little performance impact but they come with a price: They are not efficient and will need even more bitrate than cpu based x264 encoding.
Forget about 1080p streaming, if you want better stream quality in fast games.
720p 30fps at 6000kbit/s will look much better when moving ingame. 720p 60fps will look more fluid but more pixelated/blurry in movement.
Viewers don't feel the reduced input lag and better responsiveness of high framerates, so 30fps stream is not as bad, as it sounds.
720p60fps could look "okay" with 6000kbit/s and x264 at fast preset, but you will need a lot of CPU power to get game+stream running with those settings.
Make sure you don't choke your CPU or GPU by letting PUBG run with unlimited framerate. You can edit your PUBG config file and limit ingame fps to 60 for testing. This will reduce fps spikes/drops a lot and provide some GPU headroom for OBS to render the scene fast enough.
I know that PUBG is pretty badly optimized (or in other words it is not optimized). But i don't know how many threads it produces or how it scales on more than 4 cores.
Maybe I should get the game just for checking that out and providing you a guide how to play+stream it smooth.
Some games don't like to run on hyper threading / smt. For those games you can use the taskmanager to allow PUBG to only use 4 real cores.
Edit: Found a CPU scaling test for PUBG
http://www.legitreviews.com/pubg-cpu-core-benchmarks-many-cores-need_197719
Other websites talked about a patch that optimized the scaling of PUBG to 6+ cores.
That's why streaming PUBG with 4 cores + hyperthreading becomes quite challenging (even 6 or 8 cores can be tough, if you play without fps limit).
Limiting ingame fps can help to free up some CPU and GPU resources for streaming.