Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

Errschaffer

Alter Hase

  • »Errschaffer« ist der Autor dieses Themas

Beiträge: 865

Wohnort: Frankfurt

  • Private Nachricht senden

1

14.03.2010, 17:01

SFML: Problem beim laden von Grafiken

Hallo,

ich will auf SFML umstellen. Bin gerade dabei das Grundgerüst zu schreiben aber hab leider ein Problem.

Problem:

Das laden der Grafik führt zum Absturtz des Programmes.
Und wen ich das laden weglasse und nur den Bildschirm in einer Schleife mit clear () leere bekomme ich einen Bluescreen.

Etwas Code...

Sprite.cpp


C-/C++-Quelltext

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#include "Sprite.h"

void CSprite::load(string file)
{

    string errorstring = "Lade Sprite ";
    errorstring += file;

    if(Image.LoadFromFile (file))
        g_pLogfile->setstatus(true,errorstring);
    else
        g_pLogfile->setstatus(false,errorstring);

    Sprite.SetImage (Image);



    
}

void CSprite::render()
{

    g_pFramework->App.Draw(Sprite);

    
}



Game.cpp

C-/C++-Quelltext

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
#include "Game.h"


void CGame::init()
{
//Variabeln


rungame = true;

//Sprites


pbild->load ("Data/Sprites/roh.png");

}

void CGame::run()
{

while (rungame)
{
    //pbild->render ();


    g_pFramework->App.Clear ();


}

}



Danke :)

David_pb

Community-Fossil

Beiträge: 3 886

Beruf: 3D Graphics Programmer

  • Private Nachricht senden

2

14.03.2010, 17:07

Was liefert dir denn der Aufruf

C-/C++-Quelltext

1
Image.LoadFromFile (file)

Errschaffer

Alter Hase

  • »Errschaffer« ist der Autor dieses Themas

Beiträge: 865

Wohnort: Frankfurt

  • Private Nachricht senden

3

14.03.2010, 17:41

Och bin ich blöd.

C-/C++-Quelltext

1
pbild = new CSprite
:roll:

Kann aber sein das ich mich gleich mit einem neuem Problem melde ^^

K-Bal

Alter Hase

Beiträge: 703

Wohnort: Aachen

Beruf: Student (Elektrotechnik, Technische Informatik)

  • Private Nachricht senden

4

14.03.2010, 18:25

SFML hat schon eine Sprite Klasse oO

Errschaffer

Alter Hase

  • »Errschaffer« ist der Autor dieses Themas

Beiträge: 865

Wohnort: Frankfurt

  • Private Nachricht senden

5

14.03.2010, 19:59

Ja aber in der Hauptklasse wo dann alles abläuft ist es doch dann viel übersichtlicher wenn ich nur einzelene Funktionen aufrufen muss und nicht nur die ganzen Logfileeinträge machen muss etc. Oder was meinst du?

Neues Porblem: :D

Ich habe nun ein kleines Grundgerüst indem Testweise ein Bild gezeichnet wird und bei ESC beendet wird. Nur hängt es extrem und sogar Bluescreens sind dabei. Meist friert alles so ein das es 10min dauert bis der Taskmanager offen ist.

Wenn ich das clear () weg lasse kommt zwar ein Bild aber dann ein Bluescreen.

Nehme ich das clear () hinzu was meiner Meinung nach auch dahin gehört kommt ein schwarzer Bildschirm + 50/50 auf Bluescreen oder aunfhängen

Auf den Bluescreen steht meistens das der Grafiktreiber in einer Endlosschleife ist und beendet werden muss. Aber ich weiss nicht wie ich das beheben sollte.

Code...

C-/C++-Quelltext

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
void CGame::run()
{




while (rungame)
{
    
    pbild->render ();

    events ();

    g_pFramework->App.Clear ();

    
}

}




void CGame::events()
{

    
    if ((Event.Type == sf::Event::KeyPressed) && (Event.Key.Code == sf::Key::Escape))
        rungame = false;
    

}

KeksX

Community-Fossil

Beiträge: 2 107

Beruf: Game Designer

  • Private Nachricht senden

6

14.03.2010, 20:48

Zeichnest du denn den Bildschirm auch richtig? Und wird das App richtig geöffnet etc? Also der Code sieht unvollständg aus...
WIP Website: kevinheese.de

D-eath

Treue Seele

Beiträge: 102

Beruf: Freelance Software Engineer

  • Private Nachricht senden

7

15.03.2010, 03:47

Hast du die richtigen Libs eingebunden (Debug / Release) ?

NachoMan

Community-Fossil

Beiträge: 3 885

Wohnort: Berlin

Beruf: (Nachhilfe)Lehrer (Mathematik, C++, Java, C#)

  • Private Nachricht senden

8

15.03.2010, 11:28

schreib doch erstmal alles in die mainfunktion und wenn es funktioniert exportierst du alles schritt für schritt in eigene klassen.
"Der erste Trunk aus dem Becher der Erkenntnis macht einem zum Atheist, doch auf dem Grund des Bechers wartet Gott." - Werner Heisenberg
Biete Privatunterricht in Berlin und Online.
Kommt jemand mit Nach oMan?

Werbeanzeige