![]() |
[ANDORRA 2D] Fragen zu Vollbild
Guten Morgen,
ich habe ein kleines Programm geschrieben das auf dem ![]() Jetzt habe ich noch ein paar kleine Fragen zum Vollbildmodus (ich verwende OpenGL, nicht DirectX). (1) Wie kann ich den Vollbildmodus so aufrufen, dass das Fenster ansich (Titelzeile, Rahmen) verschwindet? (2) Wenn ich den Vollbildmodus drin habe und ich positioniere dann dort Objekte, muss ich das dann für jede Auflösung neu machen ? Danke schonmal! MfG anakoda |
Re: [ANDORRA 2D] Fragen zu Vollbild
zu 1) Boaderstyle auf "BsNone"
|
Re: [ANDORRA 2D] Fragen zu Vollbild
Hallo.
(1) Welches Windowframework verwendest du? AdWin32Window, AdStdWindow oder AdGLFW? Theoretisch sollte es (zumindest unter Windows) keine Probleme geben, wenn du zu AdDraw.Options "doFullscreen" hinzufügst - ich habe das gerade nochmal getestet. Falls es doch nicht klappen sollte, bin ich natürlich für jeden Hinweis, der mich zum Fehler führt, dankbar. (2) Du musst die Objekte nicht neu verteilen. Über
Delphi-Quellcode:
kannst du die Größe des virtuellen Koordinatensystems einstellen. In der nächsten Version (0.4) wird dies jedoch nochmal einiges transparenter.
AdDraws.AdAppl.Setup2DScene(w,h);
@STS301: Nein, das geht unter Verwendung des Andorra Windowframeworks nicht, da es kein Formular gibt ;-) |
Re: [ANDORRA 2D] Fragen zu Vollbild
:duck:
|
Re: [ANDORRA 2D] Fragen zu Vollbild
Liste der Anhänge anzeigen (Anzahl: 1)
Hi,
ich verwende AdStdWindow. Ich habe meinen Code mal reduziert, das Ganze sieht dann so aus und erzeugt dasselbe Problem:
Delphi-Quellcode:
Ich verwende dann OpenGL mit "Current Resolution" (1280x800), dabei wird dann ein schwarzes Fenster in Vollbild erzeugt, nur eben mit Fensterrahmen etc.
unit Main;
interface uses Windows,Dialogs, SysUtils, Graphics, Classes, Controls, AdDraws, AdClasses, AdSetupDlg, AdPerformanceCounter, AdStdWindow, AdTypes, AdComponents, AdPNG; type TAdAppl = class public AdDraw:TAdDraw; AdPerCounter:TAdPerformanceCounter; procedure Idle(Sender:TObject;var Done:boolean); procedure Run; end; const Path = ''; var Pattern: single; implementation procedure TAdAppl.Idle(Sender: TObject; var Done: boolean); begin if AdDraw.CanDraw then begin AdPerCounter.Calculate; AdDraw.ClearSurface(0); AdDraw.BeginScene; AdDraw.EndScene; AdDraw.Flip; end; Done := false; end; procedure TAdAppl.Run; var AdSetup: TAdSetup; begin AdPerCounter := TAdPerformanceCounter.Create; AdDraw := TAdDraw.Create(nil); AdDraw.Options := AdDraw.Options+[doFullscreen]; AdSetup := TAdSetup.Create(nil); AdSetup.Title := 'test'; AdSetup.Image := path + 'img/logo.png'; AdSetup.AdDraw := AdDraw; if AdSetup.Execute then begin if AdDraw.Initialize then begin AdDraw.Window.Events.OnIdle := Idle; AdDraw.Window.CursorVisible := false; AdDraw.Window.Title := 'cReal'; AdDraw.Run; end else ShowMessage('Error while initializing Andorra 2D. Try to use another display '+ 'mode or another video adapter.'); end; AdPerCounter.Free; AdDraw.Free; end; end. Im Anhang ist ein Screenshot der AdDraw.Options Variable vor dem AdDraw.Run Schritt. Wäre klasse wenn du den Fehler findest! MfG anakoda |
Re: [ANDORRA 2D] Fragen zu Vollbild
Verschiebe das mit dem AdDraw.Options mal hinter "AdSetup.Execute". TAdSetup überschreibt die Fullscreen Einstellungen nämlich.
|
Re: [ANDORRA 2D] Fragen zu Vollbild
Danke, jetzt gehts!
|
Re: [ANDORRA 2D] Fragen zu Vollbild
Hi!
Ich habe auch ein Problem mit dem Vollbild, und zwar bekomme ich bei der Zeile
Delphi-Quellcode:
die Fehlermeldung
AdDraw.Options := AdDraw.Options+[doFullscreen];
Delphi-Quellcode:
Fehlt mir vielleicht noch eine Unit? Ich habe alle oben genannten Units eingebunden, doch der Fehler tritt weiterhin auf. Ohne diese Zeile bekomme ich auch keine Fehlermeldungen.
unit1.pas(43,49) Error: Identifier not found "doFullscreen"
Ich hoffe ihr könnt mir helfen! Danke schonmal! Gruß Leif |
Re: [ANDORRA 2D] Fragen zu Vollbild
Hallo,
die Methode mit der du in den Vollbildmodus wechselt hatte sich mit einer der letzten Versionen geändert. Du musst nun so etwas wie
Delphi-Quellcode:
vor der Zeile "AdDraw.Initialize" schreiben. Dann sollte das Funktionieren. Allerdings glaube ich, dass mit Lazarus Vollbild nur unter Windows möglich ist.
with AdDraw.Display do
begin Width := 800; Height := 600; BitDepth := ad32Bit; //Die Farbtiefe. Hierbei sind die Werte "ad16Bit" und "ad32Bit" erlaubt. DisplayMode := dmFullscreen; end; Ich hoffe dir damit geholfen zu haben, näheres findet sich auch in Tutorial 2 ( ![]() Andreas |
Re: [ANDORRA 2D] Fragen zu Vollbild
Ups, habe ich jetzt erst gelesen... Vielen Dank, das hat geholfen!
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:58 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz