when I run my game it plays at 30fps which is fine, but when I add a health bar overlay this drops down to 20fps for some reason. Is there any way of having an overlay in camera view without a significant performance drop? Thanks
Short answer, no. UPBGE 0.3's overlay pipeline is somewhat lacking in terms of performance.
Here is youle one of the core developers explaining a partial solution earlier this year to someone else who had a similar question about his UPBGE 0.3 project:
Manually constructing your own UI with the BGL/BLF modules' would be better. Here is the blend that youle shared in the screenshot:
Additionally, UPBGE 0.2 has better overlay performance for now, so if possible, use one of those release versions instead.