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

1

09.02.2011, 15:06

C++ SFML 2.0 (RenderImage.Create) Error!

Ich habe vor kurzem mit SFML angefangen und musste schon auf die 2.0 ausweichen, da ich das rotieren der Sicht(View) verwenden möchte.

Wenn ich ein Render Image erstelle mit folgendem Code:

C-/C++-Quelltext

1
2
3
4
 // Create a new render-image
 sf::RenderImage image;
 if (!image.Create(500, 500))
     return -1;

tritt nach dem Kompilieren folgende Fehlermeldung auf: (siehe Anhang)

Nun würde ich gerne wissen ob das noch ein Bug der 2.0 ist und wie man das Problem lösen könnte. Wenn ihr noch weitere Daten (zb Quellcode) braucht, dann schreibt einfach!

Lg Faweyr :)
»Faweyr« hat folgendes Bild angehängt:
  • error.gif

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »Faweyr« (09.02.2011, 15:13)


dot

Supermoderator

Beiträge: 9 757

Wohnort: Graz

  • Private Nachricht senden

2

09.02.2011, 15:21

Verwendest du irgendwo std::vector?

Fred

Supermoderator

Beiträge: 2 121

Beruf: Softwareentwickler

  • Private Nachricht senden

3

09.02.2011, 15:44

Hast du die SFML 2.0 selbst kompiliert? Du nutzt ja VS 2010 und nativ gibt es ja nur Libraries für VC 2008. Also im Zweifelsfall mal die SFML kompilieren.
Ich weiß allerdings nicht, ob das wirklich hilft, ich weiß nur, dass mir solch seltsamen Fehler auch schon begegnet sind, wenn ich alte Binaries verwendet habe.

4

09.02.2011, 16:19

Schön das so schnell antworten kamen! :thumbsup:
-> Nein ich verwende kein std::vector!
-> Die SFML 2.0 habe ich nicht selbst kompiliert, da ich noch nicht verstehe wie ich das überhaupt machen könnte! :whistling: Verwenden tu ich Debug-Libs,welche von MikeMatrix kompiliert sind (Link ) . Nach Aussage von ihm hat er diese mit VC 2010 erstellt.

Hat jemand noch Ideen :thumbsup:

NachoMan

Community-Fossil

Beiträge: 3 885

Wohnort: Berlin

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

  • Private Nachricht senden

5

09.02.2011, 16:24

verwendest du auch die passenden dlls? die werden oft vergessen.
"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?

6

09.02.2011, 16:53

Ich denke schon! Ich habe die (neuen) Debug (-d) Dll´s ins gleiche Verzeichnis wie die Exe kopiert. PS: Die Debug Datein sind auch die einzigsten die Funktionieren, alle anderen (MinSizeRel,Release...) bringen nach dem Start der Exe seltsame Zeichen in der Konsole! :!:
Lg Faweyr

7

09.02.2011, 19:12

Also gut, ich versuch nun die Datein selbst mal zu kompilieren! Was ich bis jetzt gemacht habe:
  1. Die aktuelle " SFML 2.0 snapshot" von dieser Seite http://sfml-dev.org/download.php herunterladen
  2. Tar.gz -Datei entpacken
  3. cmake installieren
Nun hab ich einen SFML2 Ordner. Soweit ich weiß muss man vor dem kompilieren :wacko: noch was mit cmake machen, jeddoch habe ich den genauen Sinn dieses Programmes noch nicht verstanden! Kann mir nun jemand kurz erklären, welche cmake-Datein in der SFML2 ausgeführt werden (und auch wie?) und wie ich dann alle Dll+ Rest kompiliere, bzw bekomme?

Ich hoffe,dass ich nicht ihrgenteinen hilfreichen Thread übersehen habe! :|
Faweyr :D

BLU3 L30PARD

Treue Seele

Beiträge: 336

Wohnort: Hoch oben im Norden Schleswig Holsteins

Beruf: Schüler

  • Private Nachricht senden

8

10.02.2011, 16:53

Stell' sicher, dass der "bin" Ordner von CMake in deiner PATH Variable ist. Dann geh' in per Kommandozeile
in deinen SFML2 Order und gib dann ein:

Quellcode

1
cmake -G"Visual Studio 10"

Dann werden Makefiles und Projektdateien generiert. Eine Projekmappe ("SFML" oder "SFML2") öffnest
du dann mit Visual Studio und kannst sie da kompilieren. ;)

9

10.02.2011, 18:33

Kleiner Hinweis, neben der Libraries-Neu-Kompilieren-Sache:

Denk dran vor der Nutzung von RenderImages zu überprüfen, ob dein System die unterstützt.

Zitat

sf::RenderImage::IsAvailable() - It is very important to always call this function before trying to use the RenderImage class (...)
Gruß
SaRu_

10

21.02.2011, 19:11

@SaRu: Danke fürn Hinweis,....aber ich hab schon geschaut das es unterstützt wird :D .
@BLU3 L30PARD: Tut mir leid, doch er fand den Behehl/Dateiname nicht! :wacko:

@all: Ich hoffe, das nun nicht zu viele aufstönen und sich fragen wie dumm man sein kann :lol: , aber ich habe es noch immer nicht geschafft, SFML 2 selbst zu kompilieren!
Da beim Umwandelns des VC++ 2008->VC++2010 Express einige Probleme auftraten verwende ich nun VC++ 2008 Express.
Zuerst hab ich mir das aktuelle Projekt von SVN heruntergeladen und unter "C:\sfml\trunk\build\vc2008" ausgeführt, dabei bekam ich nun alle Dlls und Libs. Kurz ausprobiert und ich merkte das alle neuen Befehle (zb: View.Rotate , RenderImage.Create) sind nicht da!, daraus schließe ich das wohl "Trunk" nicht SFML 2 beinhaltet. (-> my English is bad)

So daraus schließe ich das unter "C:\sfml\branches\sfml2", der "Schlüssel" liegt, da nun die CMD (siehe Post von BLU3 L30PARD) nicht funktionierte, würde ich mich seeehr über weitere Hilfe freuen... :rolleyes:

Liebe Grüße Faweyr

Werbeanzeige