Buried near the bottom of the Delphi XE6 release notes is this tidbit on overridding the OpenGL rendering parameters to ring every last bit of performance out of Firemonkey. I’m pretty sure you can apply this function to your projects compiled in Delphi XE6, Delphi XE7, and AppMethod (and probably C++Builder too). Basically there is a new event called RenderingSetupCallback that allows you to override the default GPU settings that Firemonkey uses to render itself. These settings include ColorBits, DepthBits, the stencil buffer, and the multisample setting. The help document states that if you don’t use 3D objects in your project you can disable the depth buffer. If you don’t use fill paths or vector canvas shapes you can disable the stencil buffer. And if you would prefer your app to run faster and sacrifice color fidelity you can change the colorbits to run at 16bit. You set up this function from the initialization section. I did limited testing of this function using GameBench and was not able to see much of a difference but it did appear that the GPU graph smoothed out a bit. Each application is going to be different so you’ll need to test the various settings yourself to see if it will speed up your Delphi XE6 and Delphi XE7 Firemonkey applications or not. It states that the function is for Android and IOS but it may also work on Mac OSX (and possibly Windows if you enable OpenGL mode).
Customize OpenGL GPU Settings For Delphi XE6 And XE7 Firemonkey Apps On Android And IOS by Delphi XE5 XE6 XE7 XE8 10 Seattle Berlin Tokyo Firemonkey, Delphi Android, Delphi IOS is licensed under a Creative Commons Attribution 4.0 International License.