AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi kleine Bilder einfügen und bewegen
Thema durchsuchen
Ansicht
Themen-Optionen

kleine Bilder einfügen und bewegen

Ein Thema von Cloudwalk · begonnen am 16. Apr 2008 · letzter Beitrag vom 16. Apr 2008
Antwort Antwort
Seite 1 von 2  1 2      
Cloudwalk

Registriert seit: 10. Apr 2008
25 Beiträge
 
#1

kleine Bilder einfügen und bewegen

  Alt 16. Apr 2008, 17:12
hallo ich möchte in mein spiel die Figuren als Bilddateien einfügen und dann später auch bewegen können, wie mache ich sowas? als Untergrund habe ich ne Image fläche.

MfG Cloudwalk
Daniel
  Mit Zitat antworten Zitat
Benutzerbild von lbccaleb
lbccaleb

Registriert seit: 25. Mai 2006
Ort: Rostock / Bremen
2.037 Beiträge
 
Delphi 7 Enterprise
 
#2

Re: kleine Bilder einfügen und bewegen

  Alt 16. Apr 2008, 18:00
du kannst zb auf der image komponente eine neue image komponente erstellen und in dieser das bild laden, dann kannst du zb mit einem timer die image komponente so bewegen:

image1.left := 1; //hier kannst du es auf der x achse verschieben
image1.top := 1; //hiermit kannst du die image komponente auf der y achse verschieben


ich sage aber gleich dazu:

dieses ist nur eine einfache methode, nicht die wirklich perfekte, wen du sowas machen willst musst du mit opengl arbeiten oder mit gdi!!!
Martin
MFG Caleb
TheSmallOne (MediaPlayer)
Die Dinge werden berechenbar, wenn man die Natur einer Sache durchschaut hat (Blade)
  Mit Zitat antworten Zitat
Cloudwalk

Registriert seit: 10. Apr 2008
25 Beiträge
 
#3

Re: kleine Bilder einfügen und bewegen

  Alt 16. Apr 2008, 18:05
ja sowas reicht schon. kann ich auch ein Image in Ebenen unterteilen sodass zumbeispiel die geladene grafik(spielfigur) priorität 1, eine Karte Priorität 2, und darunter sozusagen eine Pixelfläche die aus schwarz und weiß(zur abfrage von mauern etc.) die die Priorität 3 hat???

MfG Cloudwalk
Daniel
  Mit Zitat antworten Zitat
Benutzerbild von lbccaleb
lbccaleb

Registriert seit: 25. Mai 2006
Ort: Rostock / Bremen
2.037 Beiträge
 
Delphi 7 Enterprise
 
#4

Re: kleine Bilder einfügen und bewegen

  Alt 16. Apr 2008, 18:43
nein das geht nicht, zumindest nicht mit den standartkomponenten, ob es eine komponete gibt, die sowas unterstützt kann ich dir auch nicht genau sagen, mir fällt jedenfalls keine ein...


vllt hiflt dir das hier auch ein wenig weiter:

3 bilder übereinander

ansonnst kannst du auch mal hier das forum nach gdi + bilder und so durchsuchen... da wirst du bestimmt auch fündig
Martin
MFG Caleb
TheSmallOne (MediaPlayer)
Die Dinge werden berechenbar, wenn man die Natur einer Sache durchschaut hat (Blade)
  Mit Zitat antworten Zitat
shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#5

Re: kleine Bilder einfügen und bewegen

  Alt 16. Apr 2008, 18:44
Zitat von Cloudwalk:
ja sowas reicht schon. kann ich auch ein Image in Ebenen unterteilen sodass zumbeispiel die geladene grafik(spielfigur) priorität 1, eine Karte Priorität 2, und darunter sozusagen eine Pixelfläche die aus schwarz und weiß(zur abfrage von mauern etc.) die die Priorität 3 hat???
Nein, dazu müsste man ganz anderst vorgehen.

1.) du hast dein Spielewelt abgebildet in ein zweidimensionales Array (stellt dir einfach mal ein Schachspiel vor)
2.) auf jedem Feld sitzt eine Spielfigur, eine Wand, ein Bombe oder was auch immer. Jedes Ding hat eine bestimmte Nummer
3.) mit einer PaintBox wird dieses Array abgebildet:
Delphi-Quellcode:
procedure TForm1.ZeichneSpielfeld
begin
for x:=0 to 9 do
  for x:=0 to 9 do
  begin
    case spiel[x,y] of
      1: PaintMauer(x*10, y*,10); // Mauerstück hat 10 * 10 Pixel
      2: PaintBombe(x*10, y*,10);

     -1: PaintBackground(x*10, y*,10);
    end;
   end;
end;
Diese Prozedur wird aus dem Event OnPaint der PaintBox aufgerufen:
Delphi-Quellcode:
procedure Tform1.Paintbox1Paint();
begin
   ZeichneSpielfeld;
end;
4.) immer wenn sich etwas in deinem Spielfeld geändert hat, wird Paintbox.Invalidate; aufgerufen
Andreas
  Mit Zitat antworten Zitat
Cloudwalk

Registriert seit: 10. Apr 2008
25 Beiträge
 
#6

Re: kleine Bilder einfügen und bewegen

  Alt 16. Apr 2008, 18:57
für was sind die for schleifen?
Daniel
  Mit Zitat antworten Zitat
Cloudwalk

Registriert seit: 10. Apr 2008
25 Beiträge
 
#7

Re: kleine Bilder einfügen und bewegen

  Alt 16. Apr 2008, 19:00
und wie würde ich die Figuren dann bewegen?
Daniel
  Mit Zitat antworten Zitat
shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#8

Re: kleine Bilder einfügen und bewegen

  Alt 16. Apr 2008, 19:07
Zitat von Cloudwalk:
für was sind die for schleifen?
Na die Schleifen gehen über das gesamte Spielfeldarray (Spiel:array[0..9,0..9] of Integer) zeichnen jedes einzelne Teil davon.
Etwa so wie ein Elektronenstrahl die Bildröhre abtastet.

Bewegen der Figuren:
Delphi-Quellcode:
  xpos := 5; // Position der Spielfig
  ypos := 6;

  // bisherige Position löschen
  spiel[xpos,ypos] := -1; // Hintergrund

  // bewegen
  ypos := ypos+1;
 
  if spiel[xpos,ypos] = 2 then // Bombenabfrage
    Bumm;

  // neue Position setzen
  spiel[xpos,ypos] := 42; // 42 bedeutet Spielfigur
Andreas
  Mit Zitat antworten Zitat
Cloudwalk

Registriert seit: 10. Apr 2008
25 Beiträge
 
#9

Re: kleine Bilder einfügen und bewegen

  Alt 16. Apr 2008, 19:10
also wär das dann so ein koordinatensystem wobei 9*9 die Spielfeldgröße wäre?
Daniel
  Mit Zitat antworten Zitat
Cloudwalk

Registriert seit: 10. Apr 2008
25 Beiträge
 
#10

Re: kleine Bilder einfügen und bewegen

  Alt 16. Apr 2008, 19:13
ich blicke ehrlich gesagt nicht durch, da ich nur anfänger bin
Daniel
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 09:48 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