Parece que você tem pelo menos dois threads de execução, com sua renderização em seu próprio thread. Se for esse o caso, você realmente tem duas taxas de quadros para se preocupar. Você quer que os dois sejam o mais rápido possível. No entanto, isso também depende do tipo de jogo que você está construindo.
Você está construindo um jogo de tiro em primeira pessoa, onde pequenas quedas na taxa de quadros podem dar uma vantagem ao oponente? Nesse caso, certifique-se de que seu fps médio seja alto o suficiente, mas também se preocupe com os piores tempos de quadro. Você está construindo um jogo de tabuleiro? Nesse caso, o pico ocasional de tempo de quadro não prejudica a experiência do usuário.
Nos meus próprios jogos, meu processo geralmente é algo como isto:
- Execute um criador de perfil no código
- Veja a taxa de quadros média. Se estiver muito baixo, em média, aumente os fps médios otimizando as coisas lentas.
- Quando o fps médio for alto o suficiente, procure os piores tempos de quadro (quadros em que você vê grandes picos no tempo computacional ou de renderização). Tente otimizar esses cenários de pior caso para melhorar o tempo de quadro do pior caso.
Se você estiver a 30 qps na maioria das vezes, mas atingir 200ms a cada 10 segundos, isso causará problemas. Mas se você tiver uma média de 15 qps, aumente seus qps médios primeiro.
Portanto, a resposta curta provavelmente seria: otimizar o que fizer a maior melhoria na experiência do usuário primeiro.