AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia [Andorra] TBackgroundSprite

[Andorra] TBackgroundSprite

Ein Thema von mimi · begonnen am 14. Jun 2008 · letzter Beitrag vom 14. Jun 2008
Antwort Antwort
mimi

Registriert seit: 1. Dez 2002
Ort: Oldenburg(Oldenburg)
2.008 Beiträge
 
FreePascal / Lazarus
 
#1

[Andorra] TBackgroundSprite

  Alt 14. Jun 2008, 14:08
Hallo,
ich möchte gerne die Klasse TBackgroundSprite nutzen für einen Hintergrund.
ich habe das so verstehen das ich eigentlich nur folgendes machen muss:
Delphi-Quellcode:
  with TBackgroundSprite.Create(AdSpriteEngine) do begin
    Image:=AdImageList.Find('BG');
    z:=-1;
    Depth:=10;
  end;
und beim zeichnen:
Delphi-Quellcode:
  if AdDraw.CanDraw then begin
    AdDraw.BeginScene;
    AdDraw.ClearSurface(clWhite);

    AdSpriteEngine.Draw;
    AdDraw.EndScene;
    AdDraw.Flip;
  end;
Allerdings bin ich mit den Ergebnis nicht zufrieden. Schaut euch doch mal bitte den Anhang an.
Was meint ihr ? Muss ich eine eigene Procedure schreiben ?
(Währe auch kein Problem), aber bevor ich den Aufwand betreibe wollte ich doch mal nach fragen ob es nicht einfacher geht.
ich möchte einfach nur das die angeben Grafik(96*96) auf dem ganzen Bildschirm gekachelt da gestellt wird.
Mehr möchte ich nicht. Ohne abstandt und soweiter.
Miniaturansicht angehängter Grafiken
drawball_232.jpg  
Michael Springwald
MFG
Michael Springwald,
Bitte nur Deutsche Links angeben Danke (benutzte überwiegend Lazarus)
  Mit Zitat antworten Zitat
Benutzerbild von inherited
inherited

Registriert seit: 19. Dez 2005
Ort: Rosdorf
2.022 Beiträge
 
Turbo Delphi für Win32
 
#2

Re: [Andorra] TBackgroundSprite

  Alt 14. Jun 2008, 14:10
Kannst du auch die Originalgrafik anhängen, damit wir wissen wie es eigentlich aussehen sollte?
Nikolai Wyderka

SWIM SWIM HUNGRY!
Neuer Blog: hier!
  Mit Zitat antworten Zitat
Benutzerbild von igel457
igel457

Registriert seit: 31. Aug 2005
1.622 Beiträge
 
FreePascal / Lazarus
 
#3

Re: [Andorra] TBackgroundSprite

  Alt 14. Jun 2008, 14:12
Beim Backgroundsprite muss die Texturgröße Power of two sein (2^n) - sprich nur größen wie 32x32, 64x64, 128x128, 256x256 etc. sind zulässig.
Andreas
"Sollen sich auch alle schämen, die gedankenlos sich der Wunder der Wissenschaft und Technik bedienen, und nicht mehr davon geistig erfasst haben als die Kuh von der Botanik der Pflanzen, die sie mit Wohlbehagen frisst." - Albert Einstein
  Mit Zitat antworten Zitat
mimi

Registriert seit: 1. Dez 2002
Ort: Oldenburg(Oldenburg)
2.008 Beiträge
 
FreePascal / Lazarus
 
#4

Re: [Andorra] TBackgroundSprite

  Alt 14. Jun 2008, 14:19
und 96 X 96 ist das nicht ?
das währe eine Möglichkeit. Die Grafik stammt von DrawBall.
Angehängte Grafiken
Dateityp: bmp bg_726.bmp (27,1 KB, 16x aufgerufen)
Michael Springwald
MFG
Michael Springwald,
Bitte nur Deutsche Links angeben Danke (benutzte überwiegend Lazarus)
  Mit Zitat antworten Zitat
Benutzerbild von Neutral General
Neutral General

Registriert seit: 16. Jan 2004
Ort: Bendorf
5.219 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#5

Re: [Andorra] TBackgroundSprite

  Alt 14. Jun 2008, 14:21
Zitat von mimi:
und 96 X 96 ist das nicht ?
2^6 = 64
2^7 = 128

96x96 ist das nicht
Michael
"Programmers talk about software development on weekends, vacations, and over meals not because they lack imagination,
but because their imagination reveals worlds that others cannot see."
  Mit Zitat antworten Zitat
mimi

Registriert seit: 1. Dez 2002
Ort: Oldenburg(Oldenburg)
2.008 Beiträge
 
FreePascal / Lazarus
 
#6

Re: [Andorra] TBackgroundSprite

  Alt 14. Jun 2008, 16:08
Na dann muss ich wohl was selbst machen. Naja was sollst. Fragen schadet ja nicht...
ich habe das jetzt so gelöst:
Delphi-Quellcode:
procedure TPlutoDrawBall.Draw;
var
  adRect:TAdRect;
  x,y:Integer;
begin
  if AdDraw.CanDraw then begin
    AdDraw.BeginScene;
    AdDraw.ClearSurface(clWhite);
    for y:=0 to MapW do begin
      for x:=0 to MapH do begin
         AdImageList.Find('BG').Draw(AdDraw,x * mapS, y * mapS,0);
      end;
    end;

    AdSpriteEngine.Draw;
    AdDraw.EndScene;
    AdDraw.Flip;
  end;
end; // TPlutoDrawBall.Draw
und das ist so wie ich es haben wollte.
Michael Springwald
MFG
Michael Springwald,
Bitte nur Deutsche Links angeben Danke (benutzte überwiegend Lazarus)
  Mit Zitat antworten Zitat
Benutzerbild von igel457
igel457

Registriert seit: 31. Aug 2005
1.622 Beiträge
 
FreePascal / Lazarus
 
#7

Re: [Andorra] TBackgroundSprite

  Alt 14. Jun 2008, 16:14
Das ist natürlich die entsprechende Lösung.
TBackgroundSprite benötigt eine 2^n Textur, da ich dann das gesamte Hintergrundbild über einen einzigen Befehl zeichnen kann, was einiges schneller ist.
Andreas
"Sollen sich auch alle schämen, die gedankenlos sich der Wunder der Wissenschaft und Technik bedienen, und nicht mehr davon geistig erfasst haben als die Kuh von der Botanik der Pflanzen, die sie mit Wohlbehagen frisst." - Albert Einstein
  Mit Zitat antworten Zitat
mimi

Registriert seit: 1. Dez 2002
Ort: Oldenburg(Oldenburg)
2.008 Beiträge
 
FreePascal / Lazarus
 
#8

Re: [Andorra] TBackgroundSprite

  Alt 14. Jun 2008, 16:19
Also könnte ich auch einfach nur die Größe der Grafik Anpassen und würde dann zum gleichen Ergebnis kommen ?
Michael Springwald
MFG
Michael Springwald,
Bitte nur Deutsche Links angeben Danke (benutzte überwiegend Lazarus)
  Mit Zitat antworten Zitat
Benutzerbild von igel457
igel457

Registriert seit: 31. Aug 2005
1.622 Beiträge
 
FreePascal / Lazarus
 
#9

Re: [Andorra] TBackgroundSprite

  Alt 14. Jun 2008, 16:25
Ja.
Andreas
"Sollen sich auch alle schämen, die gedankenlos sich der Wunder der Wissenschaft und Technik bedienen, und nicht mehr davon geistig erfasst haben als die Kuh von der Botanik der Pflanzen, die sie mit Wohlbehagen frisst." - Albert Einstein
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 05:56 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