AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi Fragen zu Canvas und DirectX
Thema durchsuchen
Ansicht
Themen-Optionen

Fragen zu Canvas und DirectX

Ein Thema von MasterOne · begonnen am 17. Sep 2004 · letzter Beitrag vom 18. Sep 2004
Antwort Antwort
MasterOne

Registriert seit: 17. Sep 2004
8 Beiträge
 
#1

Fragen zu Canvas und DirectX

  Alt 17. Sep 2004, 16:57
Moin zusammen

also folgendes:

Wir sind ein Unternehmen und programmieren nun schon seid JAHREN in Delphi ( vorher TuboPascal )

Wir haben über die GDI / Canvas ein komplexes CAE- System entwickelt (besser als CAD ), und das ganze funktioniert nur auf der GDI/Canvas Basis.
Unser System ist verdammt schnell (Dank Delphi). Nun stehen wir aber vor einem Entscheidungsproblem:

1. Wir müssen unser System langsam aber sicher von reinem 2D auf 3D ergänzen, und da stellt sich die Frage ob Directx zusätzlich in einem Canvas/ TForm mit platziert weren kann ( zuerst 2D - später 3D ).

2. Ist Directx genauso schnell wie Canvas ( mehr als 32000 Elemente in 4sec. aufgebaut und das bei einem alten Pentium II 350 MHZ mit 128 MB Hauptspeicher )

3. Wenn 1. nicht funktioniert ist die Frage: Wie lange/schwer ist es Directx 2D zu programmieren ?

4. Gibt es eigentlich GUTE VCL Komponente für Directx ?

5. Oder sollte mann OpenGL nehmen ??


Gruss und bis danne

db
  Mit Zitat antworten Zitat
Dax
(Gast)

n/a Beiträge
 
#2

Re: Fragen zu Canvas und DirectX

  Alt 17. Sep 2004, 17:01
Zu 2: Davon ist mal auszugehen, schließlich wird DIrectX in Spielen verwendet, die brauchen solche Geschwindigkeiten.
Zu 4: Ich habe gehört, es gäbe eine Delphi-Übersetzung für eine *etwas* ältere DX-Version.
Zu 5: Ich weiss nicht genau wo, aber im Netz gibt es gute OpenGL-Komponenten.

Zu allem: Vielleicht gibt die Forensuche noch was her.
  Mit Zitat antworten Zitat
Robert Marquardt
(Gast)

n/a Beiträge
 
#3

Re: Fragen zu Canvas und DirectX

  Alt 17. Sep 2004, 17:15
Delphi und die VCL basieren auf dem GDI, DirectX ist davon *komplett* getrennt.
Man muss also die Komponenten umschreiben. Man kann aber DirectX in einem Fenster betreiben, also muss man nur die
zu beschleunigenden Komponenten aendern.
DirectX ist betraechtlich schneller als Canvas. Genau dafuer wurde es ja entwickelt.
Die DirectX-Konversion fuer Delphi ist auf DX 9 Level.
OpenGL sollte man nehmen wenn es auf Plattformunabhaengigkeit ankommt.
  Mit Zitat antworten Zitat
MasterOne

Registriert seit: 17. Sep 2004
8 Beiträge
 
#4

Re: Fragen zu Canvas und DirectX

  Alt 18. Sep 2004, 09:00
Moin

Danke für die Antworten...

habe aber noch ein paar Fragen:

Zitat:
Delphi und die VCL basieren auf dem GDI, DirectX ist davon *komplett* getrennt.
Man muss also die Komponenten umschreiben. Man kann aber DirectX in einem Fenster betreiben, also muss man nur die
zu beschleunigenden Komponenten aendern.
Nun lautet die Frage:

1. Kann ich Canvas/GDI und Directx in ein und den selben Fenster zeichnen (TForm) ??

2. Ab welcher Version von Delphi ist eine gute Unterstützung für Directx verfügbar ??
(Unser CAD/CAE Modul wird immer noch in Delphi 4 entwickelt )

3. Gibt es irgend wo Tutorials oder Informationsmaterial für Directx 2D ( 3D ohne Ende ) ?
Gruss

db
  Mit Zitat antworten Zitat
Benutzerbild von maximov
maximov

Registriert seit: 2. Okt 2003
Ort: Hamburg
548 Beiträge
 
Delphi 2005 Professional
 
#5

Re: Fragen zu Canvas und DirectX

  Alt 18. Sep 2004, 21:50
Hallo,

ich hoffe mal du erwartest nicht, das directX so leicht zu programmieren ist wie GDI unter Delphi. Aber du kannst dir ja mal ein paar resourcen anschauen:


Die COM header:
http://dx.ampaze.net/

Die neue delphi directX community:
http://www.delphiDX.de

Info seite von Martin Payka, der auch ein gutes buch über directX 9 mit delphi geschrieben hat:
http://www.minfos.de

und turbo lebt auch wieder:
http://turbo.gamedev.net/

Ist sicher nicht vollständig, aber ein anfang.

Eine interessante frage wäre aber, wie zukunftsträchtig es ist, mit der normalen COM implementation von directX zu arbeiten, wo es jetzt ja auch managed DX (.Net) gibt, das keinerlei spachspezifische header mehr benötigt. Nicht zu vergessen die 'Windows Graphics Foundation' (WGF), die in zukunft ( >=longhorn) die GDI ersetzen wird und von natur aus 3D können wird. Bis das aber nutzbar ist, wird es sicher noch dauern. Ich will dir auch nicht davon abraten (mach es ja schliesslich selbst), nur aufzeigen das da einiges im umbruch ist, was aus professioneller sicht problematischer ist

PS: DirectX hat keine natürliche auslegung für 2D, aber die ganzen 3D sachen kann man ja auch ohne die dritte dimension nutzen. Standard sachen wie kreise, linien etc. zeichnen muss man selbst implementieren, oder nach geeigneten bibliotheken suchen

PPS: Es gibt da aber ein 2D linien interface (ID3DXLine9 oder so), das recht praktisch ist, is nur'n bisschen lahm (aber bestimmt schneller als GDI). Sowas dürfte für CAD sachen ja wichtig sein.
mâxîmôv.

{KDT}
  Mit Zitat antworten Zitat
Robert_G
(Gast)

n/a Beiträge
 
#6

Re: Fragen zu Canvas und DirectX

  Alt 18. Sep 2004, 22:02
Ich habe hier unter OS mal eine nette Kapselung für DX gesehen. *such*
*gefunden*

http://www.delphipraxis.net/internal...=217926#217926

schmorbraten hat auch gleich einen Link mit einem Klassendiagramm dazugepackt.
Sieht sehr interessant aus (auch wenn's nur DX8 ist, ist es sicher um ein Vielfaches schneller als GDI )
  Mit Zitat antworten Zitat
Antwort Antwort


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 04:32 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