Überschreiben von OpenGL-Rendering-Parametern

Aus RAD Studio
Wechseln zu: Navigation, Suche

Nach oben zu FireMonkey-Anwendungshandbuch


Um die Leistung von grafischen Anwendungen zu erhöhen, können Sie auf iOS- und Android-Plattformen die OpenGL-Rendering-Parameter überschreiben.

Wenn Sie beispielsweise keine 3D-Modelle verwenden, können Sie die Tiefenpuffer deaktivieren. Genauso können Sie gefahrlos den Schablonenpuffer deaktivieren, wenn Sie keine gefüllten Pfade oder andere Vektorenformen verwenden. Wenn Ihnen eine hohe Leistung wichtiger ist als visuelle Qualität, dann können Sie die 16-Bit-Farbtiefe anstelle der 24-Bit- oder 32-Bit-Farbtiefe verwenden.

So überschreiben Sie die OpenGL-Parameter:

  1. Fügen Sie der USES-Liste Ihrer Unit FMX.Platform.pas hinzu.
  2. Schreiben Sie die Prozedur für die Rendering-Konfiguration:
     procedure RenderingSetupCallback(const Sender, Context: TObject; var ColorBits, DepthBits: Integer;
     var Stencil: Boolean; var Multisamples: Integer);
     begin
         // Override OpenGL rendering setup to use custom values.
         ColorBits := 16; // default is 24
         DepthBits := 0; // default is 24
         Stencil := False; // default is True
         Multisamples := 0; // default depends on TForm.Quality or TForm3D.Multisample
     end;
    
  3. Schreiben Sie die Registrierungsprozedur:
     procedure RegisterRenderingSetup;
     var
         SetupService: IFMXRenderingSetupService;
     begin
         if TPlatformServices.Current.SupportsPlatformService(IFMXRenderingSetupService, IInterface(SetupService)) then
         SetupService.Subscribe(RenderingSetupCallback);
         // There is also SetupService.Unsubscribe, which removes the hook.
     end;
    
  4. Rufen Sie im initialization-Abschnitt der Unit RegisterRenderingSetup auf.

Siehe auch