![]() |
Undefinierter Bezeichner: 'TD3DXVector3' - Muss es geben
Vielleicht kennt der ein oder andere das Buch, DirectX für Delphi. Ich habe mir das bestellt und arbeite derzeit damit. Bin auf Seite 71 und es handelt sich um Vertices. Jedoch hänge ich aus unerklärlichen gründen. Laut Autor, muss es diese TD3DXVector 3 geben.
Delphi-Quellcode:
unit Main;
interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, direct3d9, dxhelp, ExtCtrls; type TForm2 = class(TForm) procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure FormCreate(Sender: TObject); private { Private-Deklarationen } procedure OnIdle(Sender: TObject; var done: boolean); public { Public-Deklarationen } end; var Form2: TForm2; Direct3D9: IDirect3D9; D3DDev9: IDirect3DDevice9; implementation {$R *.dfm} type TD3DLVertex = record position: TD3DXVector3; diffuse: TD3DColor; end; const D3DFVF_TD3DLVertex = D3DFVF_XYZ or D3DFVF_DIFFUSE; function InitGeometry: HResult; var Vertices: Array[0..2] of TD3DLVertex; begin D3DDev9.CreateVertexBuffer(sizeof( TD3DLVertex ) * 3, D3DUSAGE_WRITEONLY, D3DFVF_TD3DLVERTEX, D3DPOOL_DEFAULT, Vertexbuffer, nil); end; procedure TForm2.FormCreate(Sender: TObject); begin DHInitDGFX( Handle, False, 1280,1024,32, True, Direct3D9, D3DDev9 ); Application.OnIdle := OnIdle; end; procedure TForm2.FormClose(Sender: TObject; var Action: TCloseAction); begin DHCloseDGFX( Direct3D9, D3DDev9); end; procedure Render; begin D3DDev9.BeginScene; D3DDev9.Clear( 0, nil, D3DCLEAR_TARGET, D3DCOLOR_ARGB(0,0,0,0), 1.0, 0); D3DDev9.EndScene; D3DDev9.Present( nil, nil, 0, nil ); end; procedure TForm2.OnIdle(Sender: TObject; var done: boolean); begin done := false; Render; end; end. Aber ich bekomme die Meldung: Zitat:
|
Re: Undefinierter Bezeichner: 'TD3DXVector3' - Muss es geben
Hast du einen DX-Wrapper installiert?
|
Re: Undefinierter Bezeichner: 'TD3DXVector3' - Muss es geben
Nein, habe auch nichts darvon im Buch gelsen. Woher bekomme ich das?
|
Re: Undefinierter Bezeichner: 'TD3DXVector3' - Muss es geben
|
Re: Undefinierter Bezeichner: 'TD3DXVector3' - Muss es geben
Naja, die direct3d9-unit scheint er zu finden, also geh ich davon aus, dass er installiert sein sollte. In welcher Unit sollte der Record sein? IIRC ist der D3DXVector3 Teil der Direct3DX-libs. Gibts evt. eine Direct3dx9.pas, die eingebunden werden muss?
greetz Mike [Add]Müsste theoretisch die d3dx9-Unit sein, die noch eingebunden werden muss. Für alle, denen der selbe Fehler unterkommt... |
Re: Undefinierter Bezeichner: 'TD3DXVector3' - Muss es geben
:duck:
Mein Fehler, hatte eine Unit vergessen von welcher ich nicht erwartet hatte das diese darfür nötig ist. Demnach sit alles geklärt Danke an alle |
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:01 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