AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi Alphakanal in DelphiX
Thema durchsuchen
Ansicht
Themen-Optionen

Alphakanal in DelphiX

Ein Thema von Florian H · begonnen am 18. Mai 2003 · letzter Beitrag vom 7. Dez 2004
 
Oxmyx

Registriert seit: 21. Sep 2004
499 Beiträge
 
#8

Re: Alphakanal in DelphiX

  Alt 7. Dez 2004, 14:11
RHW-Vertizes sind bereits transformiert und beleuchtet, d.h. sie werden nicht mehr durch die Transformationspipeline gewurstelt, sondern direkt an den Rasterizer übergeben. Weil sie also nicht mehr transformiert und beleuchtet werden, zeichnet der Rasterizer sie exakt so auf den Bildschirm, wie er sie empfängt. Wenn man also als Koordinaten die Bildschirmkoordinaten angibt, werden die Vertizes auch exakt an dieser Stelle auf dem Bildschirm erscheinen.

Um ein Bild (128x128 Pixel) an der Bildschirmposition 100, 100 darzustellen, zeichnet man einfach zwei Dreiecke, die folgende 3D-Koordinaten haben:
Code:
(100,100,1)    (228,100,1)
         _______
        |      /|
        |    /  |
        |  /    |
        |/______|
(100,228,1)    (228,228,1)
Die dritte Komponente ist deshalb nötig, weil es ja insgeheim trotzdem 3D-Vektoren sind, auch wenn es 2-dimensional gezeichnet wird.

Nun legt man noch die Texturkoordinaten für die Fläche fest:
Code:
(0,0)    (1,0)
    _______
   |      /|
   |    /  |
   |  /    |
   |/______|
(0,1)    (1,1)
Dann lädt man eine Textur, aktiviert sie und rendert das ganze. Schon hat man ein 2D-Bild.

Eine Animation kann man ganz einfach erstellen, indem man die Einzelbilder hintereinander in einer Textur speichert, und die Texturkoordinaten so anpasst, dass immer ein einzelnes Bild aus der Textur "herausgepickt" wird.

Und die Kollisionen laufen ja wahrscheinlich sowieso mathematisch ab, da ist es unerheblich, wie die Grafik dargestellt wird.
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:04 Uhr.
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