AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi DelphiX DrawAlpha ruckelt
Thema durchsuchen
Ansicht
Themen-Optionen

DelphiX DrawAlpha ruckelt

Ein Thema von Flogo · begonnen am 13. Jun 2003 · letzter Beitrag vom 12. Apr 2005
Antwort Antwort
Seite 2 von 2     12   
Benutzerbild von Ricane
Ricane

Registriert seit: 21. Mär 2003
Ort: Quickborn
170 Beiträge
 
Delphi 7 Architect
 
#11

Re: DelphiX DrawAlpha ruckelt

  Alt 24. Mär 2005, 11:24
Ja, klar... das ist sie auch... denn in einer anderen Prozedur...

Delphi-Quellcode:
  If Hendrik.X < 10 Then
  Begin
    Alpha[1] := Alpha[1] + 2;
(*
    DXImageList1.Items.Find('Hendrik').DrawAlpha(DXDraw.Surface, Bounds(Round(
      Hendrik.X), Round(Hendrik.Y), Hendrik.Width, Hendrik.Height), 0,
        Alpha[1]);
*)

    Application.ProcessMessages;
    If Alpha[1] > 257 Then
      Alpha[1] := 0
  End;
wird sie es auch... klappt leider trotzdem nicht... langsam gehen mir auch die Ideen aus, was man noch testen könnte an diesem Code...
Hendrik
So much to Code... so less Time....

www.RicaneSoftware.de
  Mit Zitat antworten Zitat
Benutzerbild von Ricane
Ricane

Registriert seit: 21. Mär 2003
Ort: Quickborn
170 Beiträge
 
Delphi 7 Architect
 
#12

Re: DelphiX DrawAlpha ruckelt

  Alt 24. Mär 2005, 12:23
Ich habe eben ne interessante Entdeckung gemacht... Wenn ich die SpriteEngine kommplett aus dem Programm entferne, klappt das ganze... Versteh ich aber gerade mal überhupt nicht!!

Wieso sollte die SpriteEngine den Effekt verhindern?! Bin total verwirrt!
Hendrik
So much to Code... so less Time....

www.RicaneSoftware.de
  Mit Zitat antworten Zitat
Benutzerbild von Flogo
Flogo

Registriert seit: 24. Mär 2003
Ort: Freiburg im Breisgau
317 Beiträge
 
Delphi 7 Professional
 
#13

Re: DelphiX DrawAlpha ruckelt

  Alt 26. Mär 2005, 19:10
Zitat von Ricane:
muss es eigentlich so sein, das man die DoDraw Prozedur "von Hand" aufruft?
Nein! Dafür ist die Sprite Engine zuständig. Wenn du in einem Timer SpriteEngine.Draw aufrufst, musst du dich nicht mehr um das Zeichnen der Sprites kümmern. So wie du es oben gelöst hast wird doppelt gezeichnet.
If one coincidence can occur, then another coincidence can occur. And if one coincidence happens to occur just after another coincidence, then that is just a coincidence.
DNA

www.Anyxist.de
  Mit Zitat antworten Zitat
Benutzerbild von Ricane
Ricane

Registriert seit: 21. Mär 2003
Ort: Quickborn
170 Beiträge
 
Delphi 7 Architect
 
#14

Re: DelphiX DrawAlpha ruckelt

  Alt 27. Mär 2005, 13:56
Aber wenn ich das so progge

Delphi-Quellcode:
Procedure TTiles.DoDraw();
Begin

  Image.DrawAlpha(Engine.Surface, Bounds(Round(
    Hendrik.X), Round(Hendrik.Y), Hendrik.Width, Hendrik.Height), 0,
    Alpha[1]);

End;
und dann so aufrufe...

Delphi-Quellcode:
  DXDraw.Surface.Fill(0);
  Bewegen;
  DXSpriteEngine1.Dead;
  DXSpriteEngine1.Draw;
  DXSpriteEngine1.Move(1);

  With DXDraw.Surface.Canvas Do
  Begin
    Brush.Color := clWhite;
    Font.Name := 'Tahoma';
    Font.Size := 8;
    Font.Color := clBlack;
    TextOut(5, 2, 'Alpha 1: ' + IntTOStr(Alpha[1]));
    Release;
  End;

  DXDraw.Flip;
Dann wird der DoDraw Block NIE erreicht!
Hendrik
So much to Code... so less Time....

www.RicaneSoftware.de
  Mit Zitat antworten Zitat
Benutzerbild von Flogo
Flogo

Registriert seit: 24. Mär 2003
Ort: Freiburg im Breisgau
317 Beiträge
 
Delphi 7 Professional
 
#15

Re: DelphiX DrawAlpha ruckelt

  Alt 27. Mär 2005, 15:46
Wie sieht denn die Zeile aus, in der du dein Sprite erstellst?
If one coincidence can occur, then another coincidence can occur. And if one coincidence happens to occur just after another coincidence, then that is just a coincidence.
DNA

www.Anyxist.de
  Mit Zitat antworten Zitat
Benutzerbild von Ricane
Ricane

Registriert seit: 21. Mär 2003
Ort: Quickborn
170 Beiträge
 
Delphi 7 Architect
 
#16

Re: DelphiX DrawAlpha ruckelt

  Alt 1. Apr 2005, 17:02
Kann man oben sehen, aber awrte ich poste es noch mal...

Delphi-Quellcode:
Procedure TfrmMain.FormCreate(Sender: TObject);
Begin

  TilesErst;

End;


Procedure TfrmMain.TilesErst();
Begin

  Hendrik := TTiles.Create(frmMain.DXSpriteEngine1.Engine);
  With Hendrik Do
  Begin
    X := 780;
    Y := 82;
    Z := 10;
    Image := frmMain.DXImageList1.Items.Find('Hendrik');
    Width := Image.Width;
    Height := Image.Height;
    Visible := True;
  End;

End;

Denkst du der Fehler hängt da irgendwo mit drin?
Hendrik
So much to Code... so less Time....

www.RicaneSoftware.de
  Mit Zitat antworten Zitat
Benutzerbild von Flogo
Flogo

Registriert seit: 24. Mär 2003
Ort: Freiburg im Breisgau
317 Beiträge
 
Delphi 7 Professional
 
#17

Re: DelphiX DrawAlpha ruckelt

  Alt 1. Apr 2005, 17:26
Sieht eigentlich richtig aus...
Kannst du dein ganzes Projekt mal raufladen?
If one coincidence can occur, then another coincidence can occur. And if one coincidence happens to occur just after another coincidence, then that is just a coincidence.
DNA

www.Anyxist.de
  Mit Zitat antworten Zitat
Ruppi

Registriert seit: 12. Apr 2005
7 Beiträge
 
#18

Re: DelphiX DrawAlpha ruckelt

  Alt 12. Apr 2005, 21:11
überschreiben. also mit override.
DelphiX hab ich auch mal verwendet.
ist einfach viel zu langsam da es die
meisten Parameter nicht als const
übergibt, kaum mit pointern arbeitet
und DirectDraw (DirectX 7!!) verwendet.

DirectX Header von Ampaze nehmen
und selber SpriteEngine Programmieren
oder gleich mit Canvas ist BitBlt arbeiten
ist viel schneller als DelphiX

mfg Ruppi
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:13 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