Entwickler-Ecke

Multimedia / Grafik - WDirectX - Wie kann man einen Text anzeigen


pmw - Mo 14.04.03 16:35
Titel: WDirectX - Wie kann man einen Text anzeigen
Hallo!

Da DelphiX scheinbar nicht mehr weiter aktualisiert wird möchte ich gerne auf WDirectX umsteigen. Leider komme ich überhaupt nicht damit zurecht. Ich verstehe weder das Beispiel-Programm noch habe ich mit Google was brauchbares gefunden. Wie schaffe ich es in meinem Code den Text anzuzeigen?


Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, Menus, ActnMan, ActnColorMaps, ExtCtrls, WDX9, d3d9,d3dx9;

type
  TForm1 = class(TForm)
    MainMenu1: TMainMenu;
    Datei1: TMenuItem;
    Beenden1: TMenuItem;
    Panel1: TPanel;
    DirectX: TW9DirectX;
    Bild: TPanel;
    Container: TWPool;
    procedure Beenden1Click(Sender: TObject);
    procedure FormResize(Sender: TObject);
    function DirectXRender(Sender: TObject;
      var DefaultPresent: Boolean): HRESULT;
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Beenden1Click(Sender: TObject);
begin

   Close;
   
end;

procedure TForm1.FormResize(Sender: TObject);
begin

   DirectX.Resized;
   
end;

function TForm1.DirectXRender(Sender: TObject; var DefaultPresent: Boolean): HRESULT;
begin

   Container.WFonts[0].DrawText( 2,  0, D3DCOLOR_ARGB(255,255,255,0), DirectX.FrameStats,  0);
   Result := S_OK;

end;

end.


Viele Grüße
Martin Winandy


Phobeus - Di 15.04.03 19:02

Ich habe selbst eine zeitlang auf WDirectX gesetzt und kann Dir IMAO nur den Rat geben nicht vom Regen in die Traufe zu wechseln. Gerade wenn DU etwas Erfahrung mit der Materie hast, solltest Du die GraFik-APIs lieber direkt ansteuern. Ich verweise daher direkt auf Direct3D oder auch OpenGL als Alternative:

[url]http://www.neobrothers.de[/url] Direct3D
[url]http://www.delphigl.com[/url] OpenGL

Bin mir nicht mehr 100% sicher, wie die Textausgabe bei WDirectX geht, allerdings kann man z.b. bei Direct3D ein Objekt kapseln IMAO ID3DTextFont sowas in der Art. Einmal die SDK dazu befragen.