AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

GetTickCount

Ein Thema von ontorius · begonnen am 18. Mär 2006 · letzter Beitrag vom 20. Mär 2006
Antwort Antwort
Seite 2 von 3     12 3      
Benutzerbild von 3_of_8
3_of_8

Registriert seit: 22. Mär 2005
Ort: Dingolfing
4.129 Beiträge
 
Turbo Delphi für Win32
 
#11

Re: GetTickCount

  Alt 19. Mär 2006, 00:21
Pack ne TImageList auf die Form. Doppelklick drauf, Bilder hinzufügen.

Und dann nur noch mit der DrawMethode auf das Bild zeichnen, Codebeispiel dürfte in der OH stehen.
Manuel Eberl
„The trouble with having an open mind, of course, is that people will insist on coming along and trying to put things in it.“
- Terry Pratchett
  Mit Zitat antworten Zitat
Daniel G
(Gast)

n/a Beiträge
 
#12

Re: GetTickCount

  Alt 19. Mär 2006, 00:22
Mal ne doofe Frage:

Wozu brauchst du das?
  Mit Zitat antworten Zitat
Benutzerbild von 3_of_8
3_of_8

Registriert seit: 22. Mär 2005
Ort: Dingolfing
4.129 Beiträge
 
Turbo Delphi für Win32
 
#13

Re: GetTickCount

  Alt 19. Mär 2006, 00:30
Ich glaube, er will zu einem Löschvorgang eine Art Animation eines Mülleimers abspielen.
Manuel Eberl
„The trouble with having an open mind, of course, is that people will insist on coming along and trying to put things in it.“
- Terry Pratchett
  Mit Zitat antworten Zitat
ontorius

Registriert seit: 11. Jan 2006
17 Beiträge
 
#14

Re: GetTickCount

  Alt 19. Mär 2006, 00:31
Zitat:
Wozu brauchst du das?
Ich programmier ein Jump'n'run game
---jaja, paintbox wäre besser, aber das is mir zu kompliziert---
Ich will ein Sloganizer Banner haben. Punkt.
  Mit Zitat antworten Zitat
Benutzerbild von 3_of_8
3_of_8

Registriert seit: 22. Mär 2005
Ort: Dingolfing
4.129 Beiträge
 
Turbo Delphi für Win32
 
#15

Re: GetTickCount

  Alt 19. Mär 2006, 00:35
Das meinst du nicht ernst, oder?

Mit mehreren Imageboxen und dann auch noch in einzelnen Prozeduren und die Bilder aus Dateien laden?

Dass das ruckelt, glaube ich gerne.
Manuel Eberl
„The trouble with having an open mind, of course, is that people will insist on coming along and trying to put things in it.“
- Terry Pratchett
  Mit Zitat antworten Zitat
Benutzerbild von Master_RC
Master_RC

Registriert seit: 18. Jan 2005
459 Beiträge
 
Delphi 7 Enterprise
 
#16

Re: GetTickCount

  Alt 19. Mär 2006, 01:15
Zitat von ontorius:
Zitat:
Wozu brauchst du das?
Ich programmier ein Jump'n'run game
---jaja, paintbox wäre besser, aber das is mir zu kompliziert---
Lol, für sowas reicht selbst eine Paintbox nicht mehr

Ich selbst bin auch so eilig gewesen und wollte ein Spiel proggen, aber aus Erfahrung sag ich dir:
DAT WIRD NICHTS

Fang erst mit was Kleinerem an und erst, wenn du dir wirklich sicher bist, dass du dich gut auskennst (wie z. B. mit DelphiX oder dergleichen), dann mach das hier nochmal
Ein Volk ist nur soviel wert, wie es dessen Toten ehrt.
  Mit Zitat antworten Zitat
Benutzerbild von Alexander Roth
Alexander Roth

Registriert seit: 17. Mai 2004
Ort: Kenn
574 Beiträge
 
Turbo Delphi für Win32
 
#17

Re: GetTickCount

  Alt 19. Mär 2006, 07:37
Zitat:
Delphi-Quellcode:
procedure TForm1.trash;
var start:longint;
    i:integer;
begin
  repeat
    start:=gettickcount;
    repeat Application.ProcessMessages until GetTickCount>=start+50;
    image4.picture.LoadFromFile('.\pics\trash_open1.bmp');
    repeat Application.ProcessMessages until GetTickCount>=start+100;
    image4.Picture.loadfromfile('.\pics\trash_open2.bmp');
    repeat Application.ProcessMessages until GetTickCount>=start+150;
    image4.Picture.LoadFromFile('.\pics\trash_blum.bmp');
    repeat Application.ProcessMessages until GetTickCount>=start+250;
    image4.Picture.loadfromfile('.\pics\trash.bmp');
    inc(i);
  until i=10;
end;
Also, wozu die until i=10 ?
Dann macht er die selbe animation ja nicht 10 mal da die Zeit um ist.
Einfach so:
Delphi-Quellcode:
procedure TForm1.trash;
var start:longint;
begin
    start:=gettickcount;
    repeat Application.ProcessMessages until GetTickCount>=start+50;
    image4.picture.LoadFromFile('.\pics\trash_open1.bmp');
    repeat Application.ProcessMessages until GetTickCount>=start+100;
    image4.Picture.loadfromfile('.\pics\trash_open2.bmp');
    repeat Application.ProcessMessages until GetTickCount>=start+150;
    image4.Picture.LoadFromFile('.\pics\trash_blum.bmp');
    repeat Application.ProcessMessages until GetTickCount>=start+250;
    image4.Picture.loadfromfile('.\pics\trash.bmp');
end;
Für ein spiel ist Paintox nicht ganz so schlecht wie Image aber immer noch grotten schelcht.

nee..
da musst du direkt aufs Canvas Malen mit bitblt
BitBlt(form1.Canvas.Handle,x,y, bild.Width, bild.Height, bild.canvas.Handle,0 ,0,srccopy); Das ist, so weit ich weis, die schnelltste Möglichkeit fürs 2d malen.

Dann musst du natürlicxh noch bei jedem ONPaint der Form neu Zeichen, damit nix flackert.
Alexander Roth
Ich bin umgestiegen auf: Lazarus und Ubuntu! Alles OpenSource!

Besuch doch mal: www.roth.us.ms
  Mit Zitat antworten Zitat
Benutzerbild von 3_of_8
3_of_8

Registriert seit: 22. Mär 2005
Ort: Dingolfing
4.129 Beiträge
 
Turbo Delphi für Win32
 
#18

Re: GetTickCount

  Alt 19. Mär 2006, 10:08
Falsch. Am schnellsten gehts mit DirectX oder OpenGL. Allerdings schätze ich mich selbst jetzt mal etwas fortgeschrittener als den Ersteller dieses Threads ein, und OpenGL ist für mich noch "zu hoch".
Manuel Eberl
„The trouble with having an open mind, of course, is that people will insist on coming along and trying to put things in it.“
- Terry Pratchett
  Mit Zitat antworten Zitat
ontorius

Registriert seit: 11. Jan 2006
17 Beiträge
 
#19

Re: GetTickCount

  Alt 19. Mär 2006, 11:21
So ich habs jetzt gelöst:

Delphi-Quellcode:
procedure TForm1.trash;
begin
  if gettickcount>=start+1000 then start:=gettickcount;
  if (start+50)<=gettickcount then image4.picture.LoadFromFile('.\pics\trash_open1.bmp');
  if (start+100)<=gettickcount then image4.Picture.loadfromfile('.\pics\trash_open2.bmp');
  if (start+150)<=gettickcount then image4.Picture.LoadFromFile('.\pics\trash_blum.bmp');
  if (start+1000)<=gettickcount then image4.Picture.loadfromfile('.\pics\trash.bmp');
end;
start wird dann in der Startprozedur deklariert. Also, es doch. Vielen Danke für eure Beiträge.
Ich will ein Sloganizer Banner haben. Punkt.
  Mit Zitat antworten Zitat
Benutzerbild von Airblader
Airblader

Registriert seit: 29. Okt 2004
Ort: Geislingen an der Steige
742 Beiträge
 
#20

Re: GetTickCount

  Alt 19. Mär 2006, 12:54
Trotzdem, nochmal:
  • Dein Spiel wird auf jedem Rechner anders schnell laufen
  • Die Performance ist die schlechteste, die du nur erzielen kannst
  • Es gibt absolut 0 Dynamik in dieser Methode (Stichwort OOP)
  • Du wirst ziemlich schnell tausende Zeilen Code haben, die sich mit wenigen lösen ließen
  • Ein paar dieser Sachen und du kommst selbst auf modernen Rechnern schnell wieder ins Stocken
  • Wenn du Delphi noch nicht so gut beherrschst, lern dir lieber kleinere Sachen an - ein Spiel ist einfach zu aufwendig und ich prophezeihe dir mit 100%iger Wahrscheinlichkeit, dass du ohne Kenntnisse und mit dieser Methode sicher kein halbwegs auch nur annähernd mittelwertiges Spiel hinbekommst

=> Lass es sein und lerne Delphi erstmal grundlegend

MfG, air
Ingo Bürk
Es nimmt der Augenblick, was Jahre geben.

Johann Wolfgang von Goethe
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 3     12 3      


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 03:30 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