Will the game always be so CPU intensive, or will it move to a GPU-intensive scenario at some point?
TL;DRGen12 should remove much CPU work and make the game more GPU bound, but the game will likely always carry substantial CPU load as it keeps growing.
So the goal of Gen12 is to remove a large chunk of the CPU work. So that will naturally mean it's more GPU bound. But even if there was no CPU cost from the graphics team, from my department, the rest of the game is still big and complicated. It's a very ambitious game. So there's lots of work by all the other teams to reduce the CPU load, the engine team and the game team. It's an ongoing thing. It's constant work to improve the performance. Massive strides have been made, but at the same time, the game's growing. You see what might be minor improvements, but actually, if we hadn't been adding features, we'd probably get a much faster frame rate, but the game has to be completed. I'd imagine there will always be relatively intense CPU work on this game compared to a much more simple platform or something. Yeah, we want to move into the position where we are GPU bound from our team. That's what we want. And then we're the limiting factor. And then we can push the GPU harder for the people that have GPUs that can handle it, and we can scale it back and give people a good frame rate that don't have such powerful GPUs. So yeah, I think we will move to be more GPU intensive. But we have to be realistic that it's a complicated game. There'll always be a decent amount of CPU load.
It's an interesting challenge, because we are running a live environment in the middle of our attempt to make the game. So you build the universe out as it is, and then you do something that makes it less CPU intensive and puts more on the GPU, and it's great, but we don't just stay there. We then add more features to the game, more places to the game, more things that end up being CPU intensive. And then you have to work to bring that new stuff over. And then somebody comes in and adds more stuff to the game, which adds more CPU stuff. So it's this constant, never-ending challenge of development, because even after the day when we go live and we say 1.0, development of Star Citizen doesn't stop. We keep adding more planets. We keep adding more systems. So it is going to be a forever challenge for your team and all the performance teams to not just optimize for what is there today, but to continuously improve on everything that comes tomorrow.
I would hope eventually it becomes slightly easier. We've done a lot of building, a lot of core technology. As we get further along, you'd hope there wouldn't be so much core foundation, building the structures that allow us to build the universe. It'll hopefully be more game features, iterating on the fun, adding more mechanics, which should hopefully not be as intensive. You're either mining or you're hacking, you're either shooting or whatever the other mechanics are. They hopefully won't pile up forever. That's maybe different to the GPU side. We'll constantly add visual effects; whatever machines can handle, we'll add it. But hopefully on the game side, which is where we've struggled with CPU speed, that will ease slightly. The game's always going to be growing, and if the CPUs can handle it, there will be no reason not to add more complexity.