Einzelnen Beitrag anzeigen

Rollo62

Registriert seit: 15. Mär 2007
3.908 Beiträge
 
Delphi 12 Athens
 
#11

AW: Tokyo, Android, TViewPort3D => Black Screen

  Alt 18. Jul 2017, 10:00
Versuche doch mal mit deiner Orginalfunktion (die ja MakeScreensot entspricht)
die Scalings und Rect Width/Height von Hand anzupassen.
Ich hatte damals ähnliche Probleme, nicht mit 3D, aber auch da musste ich iOS und Android von Hand anpassen bis PaintTo und Bitmap richtig gepasst haben.

Delphi-Quellcode:
function TControl.MakeScreenshot: TBitmap;
var
  SceneScale: Single;
begin
  if Scene <> nil then
    SceneScale := Scene.GetSceneScale
  else
    SceneScale := 1;
  Result := TBitmap.Create(Round(Width * SceneScale), Round(Height * SceneScale));
  Result.BitmapScale := SceneScale;
  Result.Clear(0);
  if Result.Canvas.BeginScene then
  try
    PaintTo(Result.Canvas, TRectF.Create(0, 0, Result.Width / SceneScale, Result.Height / SceneScale));
  finally
    Result.Canvas.EndScene;
  end;
end;
Ich stelle übrigens bei mir mit Entsetzen beim Debuggen in iOS fest das mein Modul in FMC.Contols out-of-sync ist, also die blauen Breakpointpunkte passen nicht zum Code.
Ich habe aber nichts geändert/kompiliert, etc., nur das letzte Hotfix eingespielt.
Muss ich checken, ist das bei dir womöglich auch so ?

Rollo
  Mit Zitat antworten Zitat