Auslagerungsdatei füllt sich extrem schnell

Übersicht BlitzBasic Allgemein

Neue Antwort erstellen

 

Kurzer

Betreff: Auslagerungsdatei füllt sich extrem schnell

BeitragSa, Aug 18, 2007 1:39
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich habe jetzt ein komisches Problem, wenn ich mein Spiel spiele, läuft es eine ganze Zeit gut und mit einem mal ist die Auslagerungsdatei voll - ich hab keine Ahnung an was das liegt. Groß genug ist sie ja - also hab ich mal im Hintergrund Tune Up angemacht und schaut mal, was der zeigt:
user posted image
(ich konnte das ganze jetzt von Anfang an aufzeichnen, da wo es stätig nach untengeht läuft das Programm)

De räumt anscheinend nicht automatisch den Speicher auf.
Kann es daran liegen (das das so shcnell geht), das ich nur .bmp Datein verwende (die sind ja ziemlich groß)? (andere kann ich zur Zeit nicht verwenden, da ich nur ne Trailversion hab)

Abrexxes

BeitragSa, Aug 18, 2007 1:47
Antworten mit Zitat
Benutzer-Profile anzeigen
Also das Bild sagt mir gar nix.

Was passiert denn wenn die Kurve nach oben schnellt? Stoppst du das Spiel? Hast du einen Fehler im Code...sorry aber ohne Kristallkugel oder mehr Infos kann da keiner helfen.

Wieviel Bilder? Wie gross= Wieviel RAM? Welches OS etc etc etc

cu
 

Kurzer

BeitragSa, Aug 18, 2007 2:03
Antworten mit Zitat
Benutzer-Profile anzeigen
Zum Bild: Das Zeigt an, wie viel Speicher noch frei ist. Wie man sieht, ist im Laufe des Spiels immer weniger Speicher frei --> es wird immer mehr belegt. Beende ich das Spiel dann räumt TuneUP den Speicher wieder frei - was aber mit dem Spiel nix zu tun hat. (ich benutze den Tool eigendlich nie- aber hier zeigt er eindeutig was Sache ist)


Ich hab 1,5 Gb RAM und meine Auslagerungsdatei ist demzufolge 2302 MB groß.

In dem Prog befinden sich 10 Bilder mit einer relativ kleinen Auflösung - wobei das größte eine Auflösung von 400*320 Pixel hat.

Was heißt OS?
  • Zuletzt bearbeitet von Kurzer am Sa, Aug 18, 2007 2:08, insgesamt einmal bearbeitet

Abrexxes

BeitragSa, Aug 18, 2007 2:07
Antworten mit Zitat
Benutzer-Profile anzeigen
Dann wird da etwas immer und immer wieder geladen. Also ein Fehler im Code (oder ein Bug der Demo?).

Kann es sein das du Audio Daten in einer Schleife immer wieder lädst oder so was? Jedenfalls sieht es nach einer Ladeschleife aus da schön gleichmässig.

cu
 

Kurzer

BeitragSa, Aug 18, 2007 2:09
Antworten mit Zitat
Benutzer-Profile anzeigen
Audiodateien hab ich bisher gar nicht drin, nein.


Mmmh ... ich muss mal schauen ob ich Blitz Basic Plus bekomme - dann kann ich ja auch .png Bilder nehmen, die sind eh kleiner und kennen Tranzperenz - .bmp kennt das nicht, deshalb ist das bisher alles noch bissel Mist.

Wenn du zufällig gleich nen Fehler erkennst, hier ist mal der Skript:

Code: [AUSKLAPPEN]
;*********************************************************************
;
;      Ein RPG-Rollenspiel von René Kirrbach (Beginn: Aug. 2007)
;
;*********************************************************************



Graphics 1280, 1024
SetBuffer BackBuffer()



; ***********************************
; Variablen für das RPG-Rollenspiel
; ***********************************

Global Held_Vorne
Global TranzperenzVerschiebung
Global Kollision


Global Untergrund_Wiese

; Objekte
Global Haus1
      x2 = 150
      y2 = 100
      
Global Baum1
      x3 = 890
      y3 = 100
Global Baum2
      x4 = 800
      y4 = 150
Global Tanne1
      x5 = 700
      y5 = 120
Global Tanne2
      x6 = 1020
      y6 = 20   
Global Tanne3
      x7 = 965
      y7 = 250
Global Baum3
      x8 = 1100
      y8 = 150
      
Global Baum4
      x9 = 620
      y9 = 20   
Global Tanne4
      x10 = 20
      y10 = 25   
      

; Variablen für die Spielpositionen
x1=640
y1=512


;     HAUPTSCHLEIFE --- EXTREM WICHTIG
; **************************************


While Not KeyHit(1)

Cls


      ;
      Untergrund_Wiese = LoadImage("Untergrund_Wiese1.bmp")
      TileBlock Untergrund_Wiese, 0, 0

      Haus1 = LoadImage("Haus1.bmp")
      MaskImage Haus1, 255, 0, 255
      DrawImage Haus1, x2, y2
      
      
      ; Der Wald
      Baum1 = LoadImage("Baum1.bmp")
      DrawImage Baum1, x3, y3
      
      Baum2 = LoadImage("Baum2.bmp")
      DrawImage Baum2, x4, y4
      
      Tanne1 = LoadImage("Tanne1.bmp")
      DrawImage Tanne1, x5, y5
      
      Tanne2 = LoadImage("Tanne1.bmp")
      DrawImage Tanne2, x6, y6
      
      Tanne3 = LoadImage("Tanne1.bmp")
      DrawImage Tanne3, x7, y7
      
      Baum3 = LoadImage("Baum1.bmp")
      DrawImage Baum3, x8, y8
      
      Baum4 = LoadImage("Baum1.bmp")
      DrawImage Baum4, x9, y9
      
      Tanne4 = LoadImage("Tanne1.bmp")
      DrawImage Tanne4, x10, y10
      
Held_Vorne = LoadImage("HeldVorne.bmp")
MaskImage Held_Vorne, 255, 0, 255
DrawImage Held_Vorne, x1, y1


;   Steurung der Spielfigur (mit
; ****************************

; *** Nach oben ***
If KeyDown(200) And ImagesOverlap(Held_Vorne, x1, y1-4, Haus1, x2, y2) = 0 Then

  y1=y1-4

End If                 

; *** Nach unten ***
If KeyDown(208) And ImagesOverlap(Held_Vorne, x1, y1+4, Haus1, x2, y2) = 0 Then
 
   y1=y1+4

End If           

; *** Nach links ***
If KeyDown(205) And ImagesOverlap(Held_Vorne, x1+4, y1, Haus1, x2, y2) = 0 Then

   x1=x1+4

End If     

; *** Nach rechts ***
If KeyDown(203) And ImagesOverlap(Held_Vorne, x1-4, y1, Haus1, x2, y2) = 0 Then

   x1=x1-4

End If





Flip
Wend

Abrexxes

BeitragSa, Aug 18, 2007 2:18
Antworten mit Zitat
Benutzer-Profile anzeigen
Lade deine Bilder nicht in der Hauptschleife.

zb Vor der Schleife :

Code: [AUSKLAPPEN]

Global Untergrund_Wiese = LoadImage("Untergrund_Wiese1.bmp")


und dann in der Hauptschleife nur zeichnen. Sonst werden deine Bilder bei 60 fps 60 mal pro Sekunde geladen Cool . Das ist nicht cool!

cu

Achja: OS = OperationSystem ..also WindowsXP oder 2000 oder Win98se etc. Das hilft manchmal bei der Fehlersuche.

Puccini

BeitragSa, Aug 18, 2007 9:42
Antworten mit Zitat
Benutzer-Profile anzeigen
ja, du hast sozusagen deinen SPeicher zugemühlt indem du stetig die BIlder eingeladen hast!

Wenn du dir die Tutorials auf rob-site anschaust, findest du viele hilfreiche dinge die dir später noch sehr nützlich sein werden.
Die seite bietet auch einen super einstieg in die Programmiersprache BB!

Also, schau mal bei gelegenheit vorbei!
http://www.robsite.de/
-=Achtung=-
Suche Hobby-Modelliere der hin und wieder bock hat ein kleines Objekt zu erstellen. Bei Interesse PM
www.ragesoft.de
Passwortmanager: http://ragesoft.de/index.php?o...;Itemid=39

PowerProgrammer

BeitragSa, Aug 18, 2007 10:04
Antworten mit Zitat
Benutzer-Profile anzeigen
Kurzer hat Folgendes geschrieben:
Mmmh ... ich muss mal schauen ob ich Blitz Basic Plus bekomme - dann kann ich ja auch .png Bilder nehmen, die sind eh kleiner und kennen Tranzperenz - .bmp kennt das nicht, deshalb ist das bisher alles noch bissel Mist.

Im Arbeitsspeicher sind auch PNG-Dateien ziemlich groß. Die Bilder werden beim laden dekomprimiert. PNG-Dateien sind nur auf der Platte kleiner und Blitz und Transparenz ist sowieso immer ein vergleichsweise heikles Thema Wink
www.xairro.com Alles für Webmaster und Programmierer! Es gibt mehr als bloß einen Counter!
 

Dreamora

BeitragSa, Aug 18, 2007 10:26
Antworten mit Zitat
Benutzer-Profile anzeigen
Im 2D Modus hat in Blitz KEIN Bild (egal welches Format) Transparenz

Du hast nur Masking und das funktioniert auf jedem Format ausser JPG wo die Farbdaten nicht verlustfrei gespeichert werden.
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen.
 

Kurzer

BeitragSa, Aug 18, 2007 11:56
Antworten mit Zitat
Benutzer-Profile anzeigen
Was ist Masking?


Edit: Das Tutorial auf RobsSeite hab ich schon komplett durchgearbeitet - und auch (fast) komplett verstanden, jedoch fehlt es mir beim programmieren manchmal noch an Ansätzen, wo ich nicht recht weiß, wie ich etwas machen mus. Aber das legt sich jetzt langsam =)
 

Tombi

BeitragSa, Aug 18, 2007 12:56
Antworten mit Zitat
Benutzer-Profile anzeigen
Unter "Masking" versteht man davon, das man sich eine Farbe aus einem Bild "schnappt" und dies "entfernt" bzw. Transperenz anzeigt.

Z.b. so:

Bild=LoadImage("Haus.bmp")
MaskImage Bild, 255,255,255
DrawImage Bild, 20,20

Dabei wird Zunächst das Bild in die Variable Bild geladen, Mit MaskImage die Trasperenz der Farbe 255,255,255 (weiß) eingestellt und dann mit DrawImage an der Position 20-20 angezeigt Wink

Neue Antwort erstellen


Übersicht BlitzBasic Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group