Thema: Delphi Kollision zweier Images?

Einzelnen Beitrag anzeigen

Benutzerbild von Khabarakh
Khabarakh

Registriert seit: 18. Aug 2004
Ort: Brackenheim VS08 Pro
2.876 Beiträge
 
#6

Re: Kollision zweier Images?

  Alt 25. Nov 2005, 13:27
Ich denke, dass die Zeit der Schleife nicht ins Gewicht fällt. Wenn du dann noch Rechteck B nicht mehr mit A vergleichst, wenn A schon mit B verglichen wurde, ist die Routine noch einmal doppelt so schnell.
Allerdings ist der Ansatz mit vielen sich bewegenden TImages nicht wirklich das Wahre, auch wenn du nicht mit einer der beiden großen Engines arbeiten willst.
Zitat von Khabarakh (zu faul zum sich Wiederholen):
Du benutzt die Komponente TImage zum Anzeigen - diese ist aber einfach nicht zum Verschieben gedacht und entwickelt. Die Lösung ist, die Unterobjekte auf eine gemeinsame, in der Größe feste Canvas zu bringen, z.B. die der Form. Die Unterobjekte (bzw. ihr Bitmap) speicherst du in der Klasse TBitmap (der Name legt es schon nahe). Im OnPaint der Form kopierst du nun jedes Bitmap per TCanvas.Draw auf deren Canvas. Zusammen mit DoubleBuffered sollte es kein Flimmern mehr geben, Bitmapteile außerhalb der Form-Canvas werden einfach abgeschnitten.

=> Hier im Forum suchenOffScreenBitmap
[edit]
Da ist noch ein Post dazwischengrückt ^^ .


Zitat von Angel4585:
Ich hatte in Kunst ne vier, Grafik ist nicht gerade mein stärkstes Gebiet.
Was hat das mit dem Thema zu tun ? Für die Grafikprogrammierung benötigst du nur Mathematik, die Sprites lädst du dir irgendwo aus dem Internet .

Zitat:
Aber um auf OpenGL zurück zu kommen. Angenommen ich habe zwei Threads mit X/Y Werten, kann ich dann direkt aus dem Thread ein Objekt auf ne Paintbox oder so anzeigen lassen, ohne das es da Konflikte gibt?
Wofür willst du Threads benutzen? Bislang benutzen nicht einmal die "richtigen" Spiele mehrere Threads.

Zitat:
Und gibt es vielleicht sogar eine Art OpenGL Klasse, die ich z.B. mit

ogl.kugel(durchmesser,position);

ansprechen kann?
Da könntest du dir mal GLScene anschauen.

[/edit]
Sebastian
Moderator in der EE
  Mit Zitat antworten Zitat