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

stef

Treue Seele

  • »stef« ist der Autor dieses Themas

Beiträge: 246

Wohnort: Kassel

Beruf: Softwareentwickler

  • Private Nachricht senden

1

05.01.2012, 10:58

Laden von Texturen mit OpenGL

Hallo und frohes neues Jahr an alle !

Unter DirectX gibt es von der API aus die Möglichkeit alle möglichen Formate (*.jpg, *.dds, *.tga usw) als Textur zu laden. Selbiges vermisse ich unter OpenGL. Wie füttere ich den Zeiger von glTexImage2D wenn ich was anderes laden will als *.bmp ? ?( ?( ?( ?(

Vielen Dank für eure Hilfe

stef
"In C++ it's harder to shoot yourself in the foot, but when you do, you blow off your whole leg." — Bjarne Stroustrup.

BlueCobold

Community-Fossil

Beiträge: 10 738

Beruf: Teamleiter Mobile Applikationen & Senior Software Engineer

  • Private Nachricht senden

2

05.01.2012, 11:20

Durch entsprechende Libs, die solche Formate laden können. OpenGL selbst bietet dafür nichts an.
Teamleiter von Rickety Racquet (ehemals das "Foren-Projekt") und von Marble Theory

Willkommen auf SPPRO, auch dir wird man zu Unity oder zur Unreal-Engine raten, ganz bestimmt.[/Sarkasmus]

Architekt

Community-Fossil

Beiträge: 2 481

Wohnort: Hamburg

Beruf: Student

  • Private Nachricht senden

3

05.01.2012, 12:18

Mit SDL_image das Bild laden und GL dann die Pixelstruktur übergeben.
Der einfachste Weg eine Kopie zu entfernen ist sie zu löschen.
- Stephan Schmidt -

Beiträge: 1 223

Wohnort: Deutschland Bayern

Beruf: Schüler

  • Private Nachricht senden

4

05.01.2012, 12:37

Ich stand selber mal vor dem Problem Texturen in OpenGL zu laden.
Nach einer Internetrecherge habe ich mich dann für eine kleine Bibliothek entschieden, die sich SOIL nennt. (Simple OpenGL Image Library)
Der Link: http://www.lonesock.net/soil.html

Verwendet habe ich die Bibliothek aber dann nie, weil ich dann zu C# mit OpenTK gewechselt habe.
In OpenTK\.Net-Framework gibt es nämlich schon entsprechende Funktionen.

dot

Supermoderator

Beiträge: 9 757

Wohnort: Graz

  • Private Nachricht senden

5

05.01.2012, 12:52

Ich würde jedem empfehlen, zumindest einmal so einen Image Loader selbst zu schreiben. BMP oder DDS sind z.B. sehr einfache Formate und man kann imo sehr viel dabei lernen.

DeKugelschieber

Community-Fossil

Beiträge: 2 641

Wohnort: Rheda-Wiedenbrück

Beruf: Software-Entwickler

  • Private Nachricht senden

6

05.01.2012, 13:08

Ich kann dot da nur zustimmen. Die meisten Bücher zu OpenGL erläutern auch noch einen TGA Loader. Das Dateiformat währe auch ganz gut für dich.

Hier mal meine:

Header: http://cnp.marvinblum.de/index.php?id=52
cpp: http://cnp.marvinblum.de/index.php?id=53

7

05.01.2012, 14:12

DevIL kann sehr viele Formate laden. Man braucht so um die 8 Zeilen und hat seine Ogl Textur.
Lieber dumm fragen, als dumm bleiben!

DarioFrodo

Treue Seele

Beiträge: 349

Wohnort: Kerkau, 100km nördlich von Magdeburg

Beruf: Selbstständig

  • Private Nachricht senden

8

08.01.2012, 19:37

FreeImage verwende ich persönlich zum Texturen Laden und bin sehr zufrieden.
FreeImage unterstützt sehr viele Formate, die Standard formate aber auch eine Reihe exotischer Formate. (Sowohl laden als auch speichern)
Außerdem bietet FreeImage einfache Bildmanipulations-Funktionen an. Man kann leicht die Kanäle tauschen, die Farben ändern,
Die Bilder rotieren, die Größe ändern und andere Spielereien.

Der einzige Nachtteil ist wohl die Größe. Die FreeImage.dll ist 2,3 MB groß.
Erst wenn der letzte Fluss vergiftet,
der letzte Baum gefällt,
der letzte Fisch gefangen,
dann werdet ihr merken, dass man Geld nicht essen kann

Man verkauft die Erde nicht, auf der die Menschen wandeln.

- Indianerweisheiten

Ich bin auch ein einhornimmond ;)

TrommlBomml

Community-Fossil

Beiträge: 2 117

Wohnort: Berlin

Beruf: Software-Entwickler

  • Private Nachricht senden

9

08.01.2012, 19:45

Ich empfehle auch DevIL. Vor allem ist es an der OpenGL-API angelehnt und somit sehr gut zu verwenden. Habe damit mit 10min Aufwand - Runterladen, einbinden, samplecode copy paste + anpassen - fertig!

Werbeanzeige