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

dot

Supermoderator

Beiträge: 9 757

Wohnort: Graz

  • Private Nachricht senden

51

20.01.2012, 18:48

Wofür genau brauchst du denn diese "Subtextur"? Du kannst doch einfach immer den entsprechenden Ausschnitt der originalen Textur nehmen?

Architekt

Community-Fossil

  • »Architekt« ist der Autor dieses Themas

Beiträge: 2 481

Wohnort: Hamburg

Beruf: Student

  • Private Nachricht senden

52

20.01.2012, 18:52

Ich brauche ihn (noch) nicht. Das geschieht alles zum besseren Verständnis und für Lernzwecke. Ich frage mich wie das geht und versuche es hinzubekommen. Wirklich brauchen tue ich es derzeit nicht. Aber interessieren wie es korrekt ginge, tut es mich schon.
Der einfachste Weg eine Kopie zu entfernen ist sie zu löschen.
- Stephan Schmidt -

dot

Supermoderator

Beiträge: 9 757

Wohnort: Graz

  • Private Nachricht senden

53

20.01.2012, 18:59

Natürlich geht es irgendwie. Aber what's the Point? Versuch doch besser es einfach so zu machen wie mans eben wirklich macht, nämlich texturierte Quads mit dem jeweiligen Ausschnitt der Textur drauf malen. Wenn du was lernen willst, dann lern z.B. deine Quads nicht mit glBegin()/glEnd() zu malen, sondern mit VBOs und lern Shader zu verwenden ;)

Architekt

Community-Fossil

  • »Architekt« ist der Autor dieses Themas

Beiträge: 2 481

Wohnort: Hamburg

Beruf: Student

  • Private Nachricht senden

54

20.01.2012, 19:05

Bevor ich mit mit Shadern anfangen sollte ich wohl erstmal FBO's durchnehmen. Und ja, eig. habe ich es bisher auch so gemacht, aber mich interessiert, wie es damit wohl gehen mag.
Ich könnte natürlich, in den wenigen Fällen wo ich wirklich eine eigenständige Sub Textur brauche, einfach mit der SDL die Pixel der Original Textur wieder als SDL_Surface laden, dann dort den beliebigen Teil ausschneiden, die Pixel dieses Ausschnitts in eine Textur laden und dann die (beiden) SDL_Surfaces freigeben. Aber das war mir als Gedankengang etwas umständlich.
Wie gesagt derzeit brauche ich es nicht dringend, aber ich möchte auch nicht unvollendet und "fast" am Ziel aufgeben. Nun wo ich und auch BlueCobold Zeit und Mühe investiert haben, würde ich das Thema gerne vollenden.
Der einfachste Weg eine Kopie zu entfernen ist sie zu löschen.
- Stephan Schmidt -

dot

Supermoderator

Beiträge: 9 757

Wohnort: Graz

  • Private Nachricht senden

55

20.01.2012, 19:34

Was für Fälle sind das denn wo du eine eigenständige Subtextur brauchst?

BlueCobold

Community-Fossil

Beiträge: 10 738

Beruf: Teamleiter Mobile Applikationen & Senior Software Engineer

  • Private Nachricht senden

56

20.01.2012, 19:36

Auszüge und/oder skalierte Versionen des Viewports kann ich mir schon vorstellen - wenn man Zooms anzeigen will (in Cockpit/Waffen-Displays oder ähnlichem) oder eine Art Thumbnails von Leveln, etc. Aber einfach nur so Teile einer Textur machen für mich auch keinen großen Sinn, denn dafür kann man jeder Zeit einfach andere Textur-Koordinaten beim Rendern verwenden.
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]

dot

Supermoderator

Beiträge: 9 757

Wohnort: Graz

  • Private Nachricht senden

57

20.01.2012, 19:39

Jo, eben, normalerweise ist die große Textur aus Performancegründen (Stichwort: Texture Atlas, batching) eigentlich genau das was man haben will.

BlueCobold

Community-Fossil

Beiträge: 10 738

Beruf: Teamleiter Mobile Applikationen & Senior Software Engineer

  • Private Nachricht senden

58

20.01.2012, 20:03

Ich würde es anders ausdrücken: Aus Performance-Gründen ist eine einzelne große Textur notwendig. Haben wollen würde man doch lieber einzelne kleine Texturen, jede für ihren Zweck. Aber das ist halt mit der aktuellen Architektur absolut nicht performant ;)
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

  • »Architekt« ist der Autor dieses Themas

Beiträge: 2 481

Wohnort: Hamburg

Beruf: Student

  • Private Nachricht senden

59

20.01.2012, 20:15

Gut, wenn ihr sagt, dass das unnötig ist (wozu dient bzw. benötigt man denn dann eig. diese Funktion?) versuche ich es selbst noch ein wenig und werde es dann wohl, wenn es nicht klappt, an den Nagel hängen.
Allerdings wüsste ich gerne mal, da es in gewisser weise ja ähnlich ist, wie bspw. SFML die Methode "copy" in der Klasse Image intern modelliert hat. Per glCopyTexSubImage?
Ich denke mal, ganz genau wird es mir keiner sagen können, aber evtl. ein Verdacht oder eine bloße Schätzung?

edit: Was ist (mir fällt allerdings gerade kein Bsp. ein) wenn man nur einen Ausschnitt eines Bildes braucht, diesen aber verändern will, die eigentliche Textur aber nicht. Was macht man dann? Seit jeher war mein Denken so, dass ich dann ein Sub Image erstellt hab, und dieses dann verändern konnte wie ich lustig bin. Ist das falsch, und/oder wie wird es "richtig" gemacht?
Der einfachste Weg eine Kopie zu entfernen ist sie zu löschen.
- Stephan Schmidt -

dot

Supermoderator

Beiträge: 9 757

Wohnort: Graz

  • Private Nachricht senden

60

20.01.2012, 20:54

wozu dient bzw. benötigt man denn dann eig. diese Funktion?

Die benötigte man vor allem in Zeiten wo es noch keine FBOs gab ;)

Allerdings wüsste ich gerne mal, da es in gewisser weise ja ähnlich ist, wie bspw. SFML die Methode "copy" in der Klasse Image intern modelliert hat. Per glCopyTexSubImage?

möglicherweise

Ich denke mal, ganz genau wird es mir keiner sagen können, aber evtl. ein Verdacht oder eine bloße Schätzung?

SFML ist doch Open Source!?

Was ist (mir fällt allerdings gerade kein Bsp. ein) wenn man nur einen Ausschnitt eines Bildes braucht, diesen aber verändern will, die eigentliche Textur aber nicht. Was macht man dann? Seit jeher war mein Denken so, dass ich dann ein Sub Image erstellt hab, und dieses dann verändern konnte wie ich lustig bin. Ist das falsch, und/oder wie wird es "richtig" gemacht?

Man kann sich sicherlich Anwendungsfälle ausdenken wo man sowas tun will, aber wie sinnvoll ist das, krampfhaft ein Problem für eine Lösung zu suchen? Und die Frage ist ob man, in den jeweiligen Fällen wo man sowas tun will, das dann auch tatsächlich genau so lösen will, oder ob man meist nicht doch besser irgendwie ganz anders vorgeht (z.B. mit FBOs)...

Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von »dot« (20.01.2012, 21:13)


Werbeanzeige