Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Delphi Bild in nem DXDraw anzeigen nicht möglich (https://www.delphipraxis.net/14174-bild-nem-dxdraw-anzeigen-nicht-moeglich.html)

Tortus 3. Jan 2004 20:19


Bild in nem DXDraw anzeigen nicht möglich
 
Code:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, DXDraws, DXClass, StdCtrls;

type
  TForm1 = class(TForm)
    DXDraw1: TDXDraw;
    DXImageList1: TDXImageList;
    DXTimer1: TDXTimer;
    procedure DXTimer1Timer(Sender: TObject; LagCount: Integer);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.DXTimer1Timer(Sender: TObject; LagCount: Integer);
begin
  if not DXDraw1.CanDraw then Exit;
  DXDraw1.Surface.Fill(0);
  DXImageList1.Items[0].draw(DXDraw1.Surface, 20, 20, 0);
  DXDraw1.Flip;
end;

end.
Kann mir mal flott einer verraten warum die Suppe nit funzt?!?

Florian H 3. Jan 2004 20:30

Re: Bild in nem DXDraw anzeigen nicht möglich
 
Hi Tortus,

evtl. hast du ein JPEG-Bild eingebunden in die dxImageList1?

Da hat delphiX nämlich noch Probleme!
Probier es mal mit einem BMP.

Falls nicht wäre eine genauere Fehlerbeschreibung wünschenswert (eigentlich sowieso...) :zwinker:

Viele Grüße
Flo

Tortus 3. Jan 2004 20:35

Re: Bild in nem DXDraw anzeigen nicht möglich
 
Narf,
Hatte ein Gif, hab jetzt ein BMP genommen und es geht :wall:
Aber das kann doch nicht das Wahre sein, dann hab ich ja sobald ich mehr als 3 Bilder nehme nen Programm in Killergröße :gruebel: Gibts da nicht ne Möglichkeit den zu Giffen und Jpeggen zu bewegen ?


[edit] Nachträglich ne genaue Fehlerbeschreibung: Keine Fehlermeldungen, dafür aber nen schönes schwarzes Bidl :(

Florian H 3. Jan 2004 20:39

Re: Bild in nem DXDraw anzeigen nicht möglich
 
Also eine "schöne" Lösung kenne ich nicht, ich mache es dann meistens so, dass ich JPEG-Bilder einbinde und diese beim Start in BMPs umwandle.
Ist wirklich alles andere als eine saubere Lösung, aber so funzt es...

Tortus 3. Jan 2004 20:43

Re: Bild in nem DXDraw anzeigen nicht möglich
 
Also Jpeg hab ich nur hingekriegt, indem ich 2 Threads weiter unten gelesen hab:
Code:
uses ..., JPEG, ....
Jetzt nur ncoh gif

Igotcha 4. Jan 2004 00:01

Re: Bild in nem DXDraw anzeigen nicht möglich
 
Zitat:

Zitat von Tortus
Aber das kann doch nicht das Wahre sein, dann hab ich ja sobald ich mehr als 3 Bilder nehme nen Programm in Killergröße :gruebel: Gibts da nicht ne Möglichkeit den zu Giffen und Jpeggen zu bewegen ?

Also wie schon gesagt:

a) man kann JPGs verwenden und
b) bietet es sich an, Bilder zur Laufzeit zu laden.

Das dynamische laden hat den Vorteil, dass Du nicht sämtliche Grafiken von Anfang an im Speicher hast. Ich mache das im Moment bei meinem Spiel so, dass es für jede Game-Section einen "Init"-Abschnitt gibt, in dem die benötigten Bilder und Sounds geladen werden.

Gruß Kay

Florian H 4. Jan 2004 09:25

Re: Bild in nem DXDraw anzeigen nicht möglich
 
Jo, wenn du jetzt sehr viele Bilder schon drin hast statt sie beim Start zu laden, braucht Delphi ewig lang zum Compilieren, weil erst alle Bilder in die EXE geschrieben werden und das dauert...


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:49 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz