Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Delphi Overlay mit DirectX (https://www.delphipraxis.net/8010-overlay-mit-directx.html)

phade 26. Aug 2003 23:47


Overlay mit DirectX
 
Hallo, ich bin neu in diesem Board und weiß daher nicht, ob das folgende Problem schon einmal behandelt wurde.

Ich möchte mit D7 in einen DX8 Spiel ein Text ausgeben. Ich arbeite mich zur Zeit aber noch in die DirectX-Programmierung ein und habe leider keine Ahnung, wie ich anfangen soll. Aufgrund einiger Nachforschungen habe ich folgendes herrausgefunden:
Ich benötige das Interface zu der DX-Anwendung und kann dann irgendwie mit einem Overlay-Window eigenen Text zeichen. Hat jemand eine Idee, wie das funktioniert ?

Vielen Dank

MatthiasO 27. Aug 2003 14:10

Re: Overlay mit DirectX
 
Das kannst du mit ID3DXFont tun.
Delphi-Quellcode:
var
  Font: TFont;
  DXFont: ID3DXFont;
  Rect: TRect;
...
  //Font erzeugen (alternativ auch über die Windows-API oder vom Fenster etc.):
  Font := TFont.Create;
  //Font-Attribute setzen (Beispiel):
  Font.Style := [fsBold];
  Font.Size := 20;
  Font.Name := 'Arial';
  //Device, Handle des Fonts und das ID3DFont-Interface übergeben:
  D3DXCreateFont(d3ddev8, Font.Handle, DXFont);
...
  //Beim Zeichnen:
  //Fläche, wo der Text gezeichnet werden soll:
  Rect := Rect(0, 0, 100, 100);
  //Zeichnen des Textes (der Text ist vom Typ PChar!):
  //(Letzter Parameter ist die Text-Farbe)
  DXFont.DrawTextA('Hier steht der Text', -1, Rect, 0, $FFFFFFFF);

phade 29. Aug 2003 22:32

Re: Overlay mit DirectX
 
Vielen Dank, geht es mit Fenstern auch "so schnell". Soll heisse, wenn ich ein Fenster erzeugen möchte ?


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:05 Uhr.

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