[Delphi 2005 Ent]Delphi en DirectX

Pagina: 1
Acties:

  • daanmsvl
  • Registratie: Juli 2005
  • Laatst online: 17-06-2021
Ik heb al een tijdje gezocht op BDN en andere sites om een methode te vinden waarmee ik in Delphi 2005 Enterprise DirectX kan programmeren. Het doel is om een simpele game te maken.

Ik ben gewend om Delphi (zeg maar Pascal) te programmeren en heb geen ervaring met C#. Ik ben ook onbekend met .NET applications (toch maar eens opzoeken wat dat inhoudt ;) ;) ), dus het liefst programmeer ik "gewoon" Delphi

Met de Search hier op GoT ben ik terecht gekomen om DelphiX en andere units, maar die zijn allemaal voor Delphi 5 en eerder, waar ik dus niets aan heb. Die heb ik net bij SLIM gekocht....

Wellicht is er een methode om D3D9.dll te importeren en dan als volgt aan te roepen:
code:
1
uses D3D9;

Ik noem maar een optie.

"Military intelligence is a contradiction in terms." - Groucho Marx, American Comedian, Actor and Singer, 1890-1977


  • alienfruit
  • Registratie: Maart 2003
  • Laatst online: 23:13

alienfruit

the alien you never expected

Ja hoor, het is gewoon mogelijk, er zit geen DirectX voorbeeld bij? In de map /demos/? Anders moet je eens op zoek gaan naar Dominque Lious. Zij is helemaal dol op DirectX en Delphi, volgens mij heeft ze wel eens een Delphi 2005 demo gemaakt.

http://cc.borland.com/Item.aspx?id=21147 en
http://www.delphigamer.com/

[ Voor 54% gewijzigd door alienfruit op 13-08-2005 14:50 ]


  • daanmsvl
  • Registratie: Juli 2005
  • Laatst online: 17-06-2021
Daar heb ik niets gevonden. Waarnaar moet ik anders kijken????

EDIT: Zag pas later dat AlienFruit twee links heeft toegevoegd

[ Voor 35% gewijzigd door daanmsvl op 13-08-2005 16:24 ]

"Military intelligence is a contradiction in terms." - Groucho Marx, American Comedian, Actor and Singer, 1890-1977


  • LordLarry
  • Registratie: Juli 2001
  • Niet online

LordLarry

Aut disce aut discede

Met Delphi 2005 kan je programmas maken voor .Net in de taal Delphi of C#, maar je kan er ook 'gewone' win32 applicaties mee maken met de taal Delphi. Netzoals onder D5. Als er bij die DelphiX units source bij zit zie ik niet waarom je niet in Delphi 2005 een win32 programma kan maken die ze gebruikt. Als jij andere ervaringen hebt moet je maar even aangeven wat je tegenhoudt.

Als je percee DirectX onder .Net wilt gebruiken moet je bijvoorbeeld hier eens kijken. Misschien staan er wel alleen VB.Net en C# voorbeelden, maar het zal precies zo werken onder Delphi for .Net. Alleen wel natuurlijk in de Delphi taal.

We adore chaos because we like to restore order - M.C. Escher


  • daanmsvl
  • Registratie: Juli 2005
  • Laatst online: 17-06-2021
Bij DelphiX zit een install file die bij mij crasht. Echter, ik zag later dat de source code er ook apart bij zit. Ik denk dat ik daar maar eens mee ga stoeien. Als iemand nog een goede tutorial page weet, dan houd ik me aanbevolen!!!

"Military intelligence is a contradiction in terms." - Groucho Marx, American Comedian, Actor and Singer, 1890-1977


  • daanmsvl
  • Registratie: Juli 2005
  • Laatst online: 17-06-2021
Herstel laatste bericht: Diverse units van DelphiX crashen. bij DXRender.pas krijg ik bijvoorbeeld een 'operand size mismatch' en hij houdt ook stevig vol dat hij DxDraws.pas niet kan vinden, terwijl de rest van de units wel bereikbaar zijn (?). Uiteraard heb ik het pad van de source code van DelphiX toegevoegd aan mijn library path.

Ik ben weer terug bij af. Wat zou het voordeel / nadeel zijn van .NET gebruiken?? Wat IS het eigenlijk??

"Military intelligence is a contradiction in terms." - Groucho Marx, American Comedian, Actor and Singer, 1890-1977


  • LordLarry
  • Registratie: Juli 2001
  • Niet online

LordLarry

Aut disce aut discede

Dat zou betekenen dat je gecompilede untis gebruikt .DCU en deze van een andere Delphi versie zijn. Zorg dat je de .PAS bestanden hebt en dat de compiler die kan vinden.

Wat .Net is en wat de voor en/of nadelen zijn is iets voor een ander topic. Er zijn al meerdere topics over geweest, dus die vind je vast wel terug in het forum.

We adore chaos because we like to restore order - M.C. Escher


  • daanmsvl
  • Registratie: Juli 2005
  • Laatst online: 17-06-2021
Dan zoek ik daar wel naar maar terug over DelphiX: ik heb de originele .pas files maar ze compileren niet omdat ze struikelen over diverse instructies die - blijkbaar - wel werkten met delphi 5 maar niet met delphi 2005.....

Ik zag op BDN een stuk staan over het integreren van d3d9.dll in je delphi programma. Daar werd het aangeroepen met uses D3d9;

Alleen dat heb ik niet aan de praat gekregen; het was voor delphi 8 geschreven. Misschien dat we op die manier verder moeten zoeken? Iemand ervaring / enige idee hoe je dat moet doen met delphi 2005? Of iemand die WEL DelphiX aan de praat heeft gekregen met Delphi 2005/???

"Military intelligence is a contradiction in terms." - Groucho Marx, American Comedian, Actor and Singer, 1890-1977


  • LordLarry
  • Registratie: Juli 2001
  • Niet online

LordLarry

Aut disce aut discede

Als je nu eens duidelijk verteld over welke 'instructies' je het hebt waardoor het niet zou compilen en aangeeft of je het in een .Net of win32 project probeert te gebruiken komen we al verder. Er (bijna)geen stukken code die niet meer werken in Delphi 2005 win32 en wel werkte in D5 namelijk.

Kortom: als jij niet duidelijker en specifieker wordt schiet het niet op.

We adore chaos because we like to restore order - M.C. Escher


  • daanmsvl
  • Registratie: Juli 2005
  • Laatst online: 17-06-2021
Oké als ik nu de sample van DelphiX open genaamd Sprite1.dpr (uit de folder Sample\Sprite\Shoot ) dan vraagt delphi eerst of het een win32 toepassing is of een .net toepassing.
Ik kies dan Win32 waarna hij met een fout komt (Class TXDraw not found). Ik druk dan op "ignore all". Het gekke is echter, dat hij slechts een paar classen niet kan vinden.

code:
1
2
3
4
uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  StdCtrls, ExtCtrls, Menus, DXClass, DXSprite, DXInput, DXDraws,
  DXSounds, DIB;


Van deze lijst kan hij DXSprite en DXDraws niet vinden, terwijl die in dezelfde directory staan als DXInput en DXSounds, maar DIE kan hij dan weer wel vinden :?

Omdat hij deze units niet kan vinden, zijn er DUS ene hoop onbekende variabelen / classen waardoor het programma niet wil compileren. Zelfs als ik de desbetreffende bestanden rechtstreeks in dezelfde directory zet als de rest van de source code, dan kan hij de compiler ze nog niet vinden 8)7

Ben dus lost....

"Military intelligence is a contradiction in terms." - Groucho Marx, American Comedian, Actor and Singer, 1890-1977


  • daanmsvl
  • Registratie: Juli 2005
  • Laatst online: 17-06-2021
Als ik dan vervolgens handmatig de desbetreffende units toevoeg aan het project, komt hij eerst met een stapel errors:

Field MainForm.SpriteEngine does not have a corresponding component. Remove?

Dezelfde errors voor:
.DXSound
.Imagelist
.DXDraw
.DXTimer
.DXWaveList
.DXInput

En daarna struikelt hij over:
code:
1
2
3
4
5
              {  @@DestR  }
              mov eax,Dest; add eax,TDXRMachine_Color.R+1
              mov edx,offset @@DestR-4
              sub edx,offset @@StartCode
              mov dword ptr [ecx+edx],eax

in DXRender.pas. De instructie die misgaat is mov eax,Dest. Hierbij krijg ik een "operand type size mismatch".

Snap je nu wat ik bedoel?? Ik vrees dat DelphiX niet compatibel is met Delphi 2005 en ik de kennis niet heb om e.e.a. compatibel te maken. Ik zoek dus een andere oplossing dan DelphiX

"Military intelligence is a contradiction in terms." - Groucho Marx, American Comedian, Actor and Singer, 1890-1977


  • LordLarry
  • Registratie: Juli 2001
  • Niet online

LordLarry

Aut disce aut discede

Ok, ja als het gaat om asm kunnen er best verschillen in zitten. http://turbo.gamedev.net/undelphix.asp heeft wel versies die werken met Delphi 2005. Zorg er wel voor dat je de oude versies die je hebt geinstalleerd echt goed weghaald.

Zie ook http://www.nldelphi.com/c...s.exe/ShowArticle?ID=7063 en http://www.DelphiGamer.com/

We adore chaos because we like to restore order - M.C. Escher

Pagina: 1