Ich habe vor, einen HeroQuest-Clon zu schreiben (nein für die Projekteecke isses noch zu früh), aber mit Hexfeldern.
Jetzt möchte ich die Möglichkeit haben, overlays darzustellen (z.B.: einen Teppich), die sich über mehrere Felder erstrecken.
Wenn ich jetzt ein Feld rendere, das mittig im Teppich liegt, habe ich kein Problem, da gebe ich für alle Vertexe die entsprechenden Texturkoordinaten an.
Wenn aber ein Feld am Teppichrand gerendert wird, liegen ja nicht alle Vertexe 'auf dem Teppich', bzw. ragen darüber hinaus.
Wie gebe ich in diesem Fall die Texturkoordinaten für diese Vertexe an?
p.s.: den Teppich hinterher rendern fällt aus, da ich jedes Feld umranden möchte. Der Teppich liegt sozusagen zwischen Boden und Umrandung.
_________________ Manchmal sehen Dinge, die wie Dinge aussehen wollen, mehr wie Dinge aus, als Dinge.
<Esmerelda Wetterwax>
Es kann vorkommen, dass die Nachkommen trotz Abkommen mit ihrem Einkommen nicht auskommen und umkommen.
Registriert: So Sep 26, 2004 05:57 Beiträge: 190 Wohnort: Linz
Verstehe ich das richtig? Du möchtest so ein Zwischending zwischen Tile-based und beliebig? Sowas wird (wohl nicht ohne Grund) eher selten gemacht, also du solltest dir ernsthaft überlegen warum du das ganze mit Hex-Feldern machst und nicht mit quadratischen Tiles denn bei quadratischen Tiles könntest du wohl ohne größere Probleme einen Rechteckigen Teppich drauf legen. Wenn es dir aber nur um die Ränder der Hex-Tiles geht, so kannst du diese ohen größere Probleme nachträgrlich mit GL_LINES (oder vergleichbarem) darüber legen.
Tja, das ganze basiert auf Hexfeldern, da ich unter Anderem auch die Blickrichtung der Figuren berücksichtigen will (Defensivmalus von hinten usw.) und ich keine Diagonalbewegungen haben will. Ausserdem soll der Teppich eine beliebige ausrichtung haben können.
Ich hab mir jetzt überlegt, dass ich ja erst den Boden zeichnen, dann den Teppich mit GL_ONE,GL_ZERO drüberblenden und als letztes die Hexstruktur druberzeichenen kann. Das hätte zudem den Vorteil, dass ich bei eh nicht begehbaren Feldern die Hexstruktur einfach weglassen kann.
Nichtsdestotrotz würde mich sowas generell interessieren, da ja in z.b.: WoW unter den Figuren eine Selektionsmarkierung eingeblendet wird, die sich ja auch nicht über das gesamte Polygon erstreckt, auf dem die Figur gerade steht. Unter Umständen erstreckt sich sowas auch über mehrere Polygone.
_________________ Manchmal sehen Dinge, die wie Dinge aussehen wollen, mehr wie Dinge aus, als Dinge.
<Esmerelda Wetterwax>
Es kann vorkommen, dass die Nachkommen trotz Abkommen mit ihrem Einkommen nicht auskommen und umkommen.
Um den großen deutschen Philosophen Wiege zu zitieren: Ich werd erst Boden, dann Overlays und zum Schluß das Raster zeichnen.
Ich wäre trotzdem dankbar, wenn die Gurus mal nen Tipp gäben, wie sowas grundsätzlich zu realisieren wäre.
_________________ Manchmal sehen Dinge, die wie Dinge aussehen wollen, mehr wie Dinge aus, als Dinge.
<Esmerelda Wetterwax>
Es kann vorkommen, dass die Nachkommen trotz Abkommen mit ihrem Einkommen nicht auskommen und umkommen.
Registriert: Do Dez 05, 2002 10:35 Beiträge: 4234 Wohnort: Dortmund
Irgendwie scheine ich gerade auf dem Schlauch zu stehen. Ich muss auch gestehen, dass ich sowohl HeroQuest als auch WOW nicht kenne oder nicht gut genug kenne um zu wissen wie das machen. Allerdings weiß ich auch nicht ob man die Technik von WOW und einem Hexspiel vergleichen kann. Vor allem, da du in einem Hexspiel nur eine gerade Fläche hast?
Aber wenn ich das so richtig verstanden habe liegt dein Problem in der Herrangehensweise. Zu mindest in deinem ersten Post. Aber so wie in deinem Zweiten würde ich das wohl auch machen. Zu erst den Boden und dann den Teppich ganz normal "drüberrollen" und anschließen dann deine Hexstruktur drüber zeichnen.
Dafür müsstest du aber nicht mal blenden. Außer du möchtest wirklich blenden. Was bei der Funktion aber nicht der Fall wäre. Sonst genügt es, wenn du den Tiefentest entsprechend auf kleiner gleich (GL_LEQUAL) stellst. Sobald die an die selbe Stelle gezeichnet werden überlagern sie sich automatisch. Und das sollte eigentlich dann schon die komplette Lösung sein.
Immer unter der Vorraussetzung, dass ich dein Problem richtig verstanden habe. Wo ich mir absolut nicht sicher bin.
PS: Es gibt auch eine Möglichkeit eine Textur nur bis zu deren echte Ränder zeichnen zu lassen. Egal ob die Texturkoordinaten bis 1.25 gehen oder nicht. Dazu musst du einen anderen Wrapmodus benutzen. Und wenn du als Farbe dann das entsprechende nimmst was du brauchst dann sollte sich das beim Blenden oder Multitexturieren auch nicht zeigen. Das hängt aber vom jeweiligen Blendmodus etc ab.
PPS: Evtl wäre die Technick bei detailtexturen in Terrains bzw. Projezierte Texturen für dich auch ganz interessant. Allerdings sind die eher nur für ungerade Flächen (Landschaft) gedacht.
Na das ist genau das was ich suchte^^. Damit kann ich dann wohl auch negative Texturkoordinaten verwenden, wenn mein Poly links rausragt?
Zur Farbe... Welche Auswirkung hat diese? wird der Rest des Polys in dieser gezeichet? wenn ja, reicht das wenn ich für Alpha 0 angebe, damit keine Farbe gezeichnet wird?
p.s.: Ja, ein Thread, eine Frage, aber ich denke das gehört alles zusammen.
_________________ Manchmal sehen Dinge, die wie Dinge aussehen wollen, mehr wie Dinge aus, als Dinge.
<Esmerelda Wetterwax>
Es kann vorkommen, dass die Nachkommen trotz Abkommen mit ihrem Einkommen nicht auskommen und umkommen.
Nochmal ich: Kann ich dieses Clamping auch Textureinheitsspezifisch einstellen? weil: wenn ich den oben genannten Ansatz nehme, kann ich unter Teppichen ganz schlecht z.b.: Fallgruben darstellen, weil der Teppich ja nix von weiß. Drumm wolte ich das Feld sozusagen 'in einem Rutsch' mit mehreren Texturen zeichnen. Daher auch das Problem mit dem teilweisen Zeichnen der Teppichtextur.
_________________ Manchmal sehen Dinge, die wie Dinge aussehen wollen, mehr wie Dinge aus, als Dinge.
<Esmerelda Wetterwax>
Es kann vorkommen, dass die Nachkommen trotz Abkommen mit ihrem Einkommen nicht auskommen und umkommen.
Registriert: Do Dez 05, 2002 10:35 Beiträge: 4234 Wohnort: Dortmund
Also das ist ein Wrapmode wie jeder Andere. GL_REPEAT klebt ja auch nur an genau der Textur an der du das zugewiesen hast. Also beantworte dir deine Frage selber.
Und für dein Polygon sieht es so aus als ob deine Textur sich über die gesammte Fläche erstreckt. Du hast ja nur das Ergebniss der Textureinheit beeinflusst. Wichtig ist allerdings, dass dein zu grunde liegendes Texturformat auch Alpha mit unterstützen MUSS. Selbst wenn du ihn nur dafür benutzt. Sonst verwirft die Textureinheit den Alphakanal. Ist ja auch Konsequent. Eine Textur die keinen Alpha hat dann aber doch einen liefert.
PS: Das alles habe ich nur auf ATI Karten testen können.
Na ich hab eh vor diesen schicken Texturloader zu nehmen, den irgend so ein Mitglied der DGL geschrieben hat , der kann imho Alphakanäle zu Texturen dazubringen.
_________________ Manchmal sehen Dinge, die wie Dinge aussehen wollen, mehr wie Dinge aus, als Dinge.
<Esmerelda Wetterwax>
Es kann vorkommen, dass die Nachkommen trotz Abkommen mit ihrem Einkommen nicht auskommen und umkommen.
Registriert: Do Dez 05, 2002 10:35 Beiträge: 4234 Wohnort: Dortmund
Echt? Wer macht denn so was?
Aber wie? Du benutzt den noch nicht? Ich glaube das müssen wir dann noch mal in einer dunklen ähh ruhigen Ecke des Forum ausdisskutieren.
PS: Gut geschleimt. Aber das erinnert mich wieder daran, dass ich da eigentlich noch das setzen der Farbe kappseln wollte. Also in die Klasse mit einbauen.
Ich benutz den schon, weil wer erfindet gerne das Rad neu Na denn neue Kapseln gekauft und ab der Fisch. Morgen will ich damit anfangen
_________________ Manchmal sehen Dinge, die wie Dinge aussehen wollen, mehr wie Dinge aus, als Dinge.
<Esmerelda Wetterwax>
Es kann vorkommen, dass die Nachkommen trotz Abkommen mit ihrem Einkommen nicht auskommen und umkommen.
Vielen Dank, ich werds mir heute abend gleich runterladen.
_________________ Manchmal sehen Dinge, die wie Dinge aussehen wollen, mehr wie Dinge aus, als Dinge.
<Esmerelda Wetterwax>
Es kann vorkommen, dass die Nachkommen trotz Abkommen mit ihrem Einkommen nicht auskommen und umkommen.
Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast
Du darfst keine neuen Themen in diesem Forum erstellen. Du darfst keine Antworten zu Themen in diesem Forum erstellen. Du darfst deine Beiträge in diesem Forum nicht ändern. Du darfst deine Beiträge in diesem Forum nicht löschen. Du darfst keine Dateianhänge in diesem Forum erstellen.