Delphi-PRAXiS
Seite 2 von 3     12 3      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Delphi DelphiX - Textur Engine (https://www.delphipraxis.net/54686-delphix-textur-engine.html)

Speedmaster 10. Okt 2005 14:43

Re: DelphiX - Textur Engine
 
Mit OpenGL geht das einfach! Du gibst für jeden Punkt an wie Stark die Textur zu sehen sein soll, und dannach einfach Blending anschalten! Das sind wenig Befehle!

Spoon 10. Okt 2005 16:42

Re: DelphiX - Textur Engine
 
Liste der Anhänge anzeigen (Anzahl: 1)
Naja so einfach ist das nicht...

Wenn er einfach den alpha-wert der textur verändert dann scheint ja immernoch die viereckige Textur durch. Er bräuchte also (wie in moderenen Spielen auch) mehrere Layer an Texturen, sowie eine Alphamap (z.B. ein gezeichneter Weg) und müsste dann diese alle miteinander verrechnen. Hab mal angehängt wie ich das meine :)

Ich glaube ich würde dir auch zu kleinen Bildchen raten, denn alles andere ist imho sehr kompliziert :|

Speedmaster 10. Okt 2005 18:55

Re: DelphiX - Textur Engine
 
Zitat:

Zitat von Spoon
Naja so einfach ist das nicht...

Wenn er einfach den alpha-wert der textur verändert dann scheint ja immernoch die viereckige Textur durch. Er bräuchte also (wie in moderenen Spielen auch) mehrere Layer an Texturen, sowie eine Alphamap (z.B. ein gezeichneter Weg) und müsste dann diese alle miteinander verrechnen. Hab mal angehängt wie ich das meine :)

Ich glaube ich würde dir auch zu kleinen Bildchen raten, denn alles andere ist imho sehr kompliziert :|

Es ist einfach, und da er ja anscheinend nicht mit Höhen & Co Arbeitet dürfte es wirklich kein Großer Aufwand sein, aber um die Wertevergabe kommt er so oder so nicht rum( Alphawert )!

igel457 10. Okt 2005 20:41

Re: DelphiX - Textur Engine
 
Zitat:

Es ist einfach, und da er ja anscheinend nicht mit Höhen & Co Arbeitet dürfte es wirklich kein Großer Aufwand sein, aber um die Wertevergabe kommt er so oder so nicht rum( Alphawert )!
Erstens: Höhen sollen (irgendwann) auch mal noch rein. Mein Problem ist: Wie Zeichne ich so eine schöne Alpha überblendung. Das ganze sollte auch noch recht performant sein.

Momentan gehe ich mit meinem Hintergrund so vor:
Delphi-Quellcode:
procedure TBackgroundRenderer.Render;
var px,py:integer;
begin
  px := trunc(engine.X) mod ftextures.Items[0].Width;
  py := trunc(engine.Y) mod ftextures.Items[0].height;
  with buffer.canvas do
  begin
    draw(px,py,texbuff);
  end;
end;
Render wird nur aufgerufen, wenn sich der Hintergrund verändert. (Also scrollt).
Textbuff ist ein TBitmap Buffer, der die Haupttectur enthält und etwas größer als der Bildschirm ist. Dieser wird dann in den Buffer geschriben.

Gezeichnet wird das dann so:
Delphi-Quellcode:
procedure TBackgroundRenderer.DoDraw;
begin
  with engine.surface.canvas do
  begin
    draw(0,0,buffer);
    release;
  end;
end;
Es wäre im Endefekt also kein Problem auf den "Buffer" das geblendete Bild jedesmal wenn ich das Bild verschiebe zu malen. Das ginge recht schnell. Nur wie rendere ich das mit dem Alpha am besten?

Oxmyx 10. Okt 2005 20:51

Re: DelphiX - Textur Engine
 
Multitexturing (das, was hier anklingt) ist eine vergleichsweise komplizierte Sache, viel komplizierter als die Lösung mit vielen kleinen Tiles (Bildchen).

Du solltest erstmal deine Grafikdarstellung auf dieses System umstellen, indem du dein Spielfeld in ein 2D-Array aufteilst und in die einzelnen Rechtecke schöne bunte Bilder zeichnest.

Speedmaster 10. Okt 2005 20:59

Re: DelphiX - Textur Engine
 
Zitat:

Zitat von Oxmyx
Multitexturing (das, was hier anklingt) ist eine vergleichsweise komplizierte Sache, viel komplizierter als die Lösung mit vielen kleinen Tiles (Bildchen).

Du solltest erstmal deine Grafikdarstellung auf dieses System umstellen, indem du dein Spielfeld in ein 2D-Array aufteilst und in die einzelnen Rechtecke schöne bunte Bilder zeichnest.

Also von Kompliziert weiss ich nichts! Kannst du genauer sagen warum du meinst es ist Kompliziert?

Oxmyx 10. Okt 2005 21:02

Re: DelphiX - Textur Engine
 
Zitat:

Zitat von Speedmaster
Also von Kompliziert weiss ich nichts! Kannst du genauer sagen warum du meinst es ist Kompliziert?

Sagen wir einfach, ich habe schon ein bisschen Erfahrung mit 3D-Programmierung gesammelt.

Phobeus 10. Okt 2005 21:06

Re: DelphiX - Textur Engine
 
Also, wenn Multitexturing etwas kompliziertes ist, dann müßte ich übermässig genial sein (und viele andere auch) ;)
Sorry, aber das mußte ich einmal in den Raum werfen und dazu gleich noch einmal einen Link in unsere Wiki, bei dem evtl. auch die Verlinkungen unten auf das Detail-Map-Beispiel von Interesse sein könnte: DGLWIKI - Multitexturing
//edit: Immerhin sehe ich es nicht alleine so. Man sollte zugegeben einige Tage für die Grundlagen investieren und dies werden im 3D-Bereich ein paar mehr als im 2D sein. Letztendlich umgeht man allerdings viele "dreckige" Tricks um die Grenzen des Systems zu umgehen.
Zwar handelt es sich in dem gegebenen Fall um ein 2D-Beispiel, allerdings sollte den Fragesteller klar sein, dass jedes Alpha-Blending, dass er planmäßig durch seinen Kopf zuckend hat er einen Schritt in Richtung GPU-Verarbeitung und damit einen Schritt in Richtung OpenGL oder Direct3D macht.
Relativ gute Ergebnisse (ich rede Technisch von 1998) im 2D-Bereich erzielte man jedoch auch durchaus mit zufällig positionierten Quads über einem Terrain, dass geblendet wird. 10-20 solcher Felder (je kleiner, desto besser) sollten durchaus auch ohne GPU möglich sein und immerhin ein wenig Abwechslung auf die Karte zaubern.
Davon abgesehen sieht das Zielprojekt doch immerhin nach etwas vielversprechenden aus. Bleibe er seinem Projekt in jedem Falle treu ;)

Oxmyx 10. Okt 2005 21:10

Re: DelphiX - Textur Engine
 
Leute, jetzt bleibt mal auf dem Boden. Der Threadersteller ist eindeutig noch Anfänger, und hat sich noch nicht in eine 3D-API eingearbeitet. Wenn hier jetzt vorgeschlagen wird, er solle Multitexturing benutzen, dann ist das tatsächlich eine "vergleichsweise komplizierte Sache" (mein Wortlaut), wenn er wohl schon genug Probleme haben wird, eine einfache Tile-Engine auf die Beine zu stellen.

igel457 11. Okt 2005 15:01

Re: DelphiX - Textur Engine
 
Ich lasse das mit dem 3D ersteinmal, vieleicht später :gruebel:.
Ich hab noch eine Idee bekommen wie ich das machen könnte, mal ausprobieren. :gruebel:

Zitat:

Der Threadersteller ist eindeutig noch Anfänger
Danke. Ich bin aber nicht ganz so unbeholfen wie ich aussehe... :)


Alle Zeitangaben in WEZ +1. Es ist jetzt 23:48 Uhr.
Seite 2 von 3     12 3      

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz