DirektX

DirektX

Beitragvon Mathias » 18. Jun 2017, 17:04 DirektX

Ich habe gerade entdeckt, das es in den FPC-Sourcen DirektX-Dateien hat.
Ich habe da mal die unit p_ddraw.pp geöffnet und folgenden Datei-Kopf entdeckt.
Code: Alles auswählen
(*==========================================================================;
 *
 *  Copyright (C) Microsoft Corporation.  All Rights Reserved.
 *
 *  File:       ddraw.h
 *  Content:    DirectDraw include file
 *
 ***************************************************************************)

Kann es sein, das MS diese Unit zur Verfügung gestellt hat ?
Aber so wie es aussieht, wird nur DirektX 3 unterstützt, und diese gab es schon mit Win98.

Der Ordner befinden unter fpc/packages/ptc/src/win32/directx .
Mit Lazarus sehe ich gün
Mit Java und C/C++ sehe ich rot
Mathias
 
Beiträge: 4327
Registriert: 2. Jan 2014, 17:21
Wohnort: Schweiz
OS, Lazarus, FPC: Linux (die neusten Trunc) | 
CPU-Target: 64Bit
Nach oben

Beitragvon af0815 » 18. Jun 2017, 17:12 Re: DirektX

Das sind normalerweise die nach Pascal übersetzen Header Dateien.

BTW. Es gibt auch DirectShow mit vielen Möglichkeiten für Lazarus, halt nur auf Win32 und Win64. Siehe auch DSPack . Da ist auch DirectX V9 drinnen. Es gibt auch Pakete für höhere Versionen, wenn man sucht.
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).
af0815
 
Beiträge: 3479
Registriert: 7. Jan 2007, 10:20
Wohnort: Niederösterreich
OS, Lazarus, FPC: FPC 3.2 Lazarus 2.0 per fpcupdeluxe | 
CPU-Target: 32Bit (64Bit)
Nach oben

Beitragvon Mathias » 18. Jun 2017, 17:24 Re: DirektX

BTW. Es gibt auch DirectShow mit vielen Möglichkeiten für Lazarus, halt nur auf Win32 und Win64. Siehe auch DSPack . Da ist auch DirectX V9 drinnen.

Nutzen werde ich dies nie, da ich bei OpenGL bleibe, oder später Vulkan.
Mit Lazarus sehe ich gün
Mit Java und C/C++ sehe ich rot
Mathias
 
Beiträge: 4327
Registriert: 2. Jan 2014, 17:21
Wohnort: Schweiz
OS, Lazarus, FPC: Linux (die neusten Trunc) | 
CPU-Target: 64Bit
Nach oben

Beitragvon af0815 » 18. Jun 2017, 17:27 Re: DirektX

Habe ich auch geglaubt, aber wenn man die eingebaute Kamera oder nen kleinen Player haben will geht das schnelle (wenn man es kapiert hat und das dauert). Besonders für die Kameras ist das nützlich.

Wie greifst du mit OpenGL auf die Kameras, AVIs oder DVD zu ?

Andreas
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).
af0815
 
Beiträge: 3479
Registriert: 7. Jan 2007, 10:20
Wohnort: Niederösterreich
OS, Lazarus, FPC: FPC 3.2 Lazarus 2.0 per fpcupdeluxe | 
CPU-Target: 32Bit (64Bit)
Nach oben

Beitragvon Mathias » 18. Jun 2017, 17:30 Re: DirektX

Wie greifst du mit OpenGL auf die Kameras, AVIs oder DVD zu ?

Meine Antwort, bezieht sich auf 3D-Grafik-Ausgabe.
Und da ich Platfomübergreifend programmiere, geht DirektX sowieso nicht mehr. :wink:
Mit Lazarus sehe ich gün
Mit Java und C/C++ sehe ich rot
Mathias
 
Beiträge: 4327
Registriert: 2. Jan 2014, 17:21
Wohnort: Schweiz
OS, Lazarus, FPC: Linux (die neusten Trunc) | 
CPU-Target: 64Bit
Nach oben

Beitragvon af0815 » 18. Jun 2017, 19:42 Re: DirektX

Für die Grafikausgabe - ACK
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).
af0815
 
Beiträge: 3479
Registriert: 7. Jan 2007, 10:20
Wohnort: Niederösterreich
OS, Lazarus, FPC: FPC 3.2 Lazarus 2.0 per fpcupdeluxe | 
CPU-Target: 32Bit (64Bit)
Nach oben

Beitragvon thosch » 21. Dez 2017, 18:12 Re: DirektX

Gibt es da schon die Headerdateien für DirectX 12 für Windows 10? Ich habe versucht, eines der PTC-Grafikbeispiele zu übersetzen, erhielt aber dort die Fehlermeldung, dass die PTC Console nicht geöffnet ist. Quelltextstudium hat ergeben, dass PTC unter Windows die DirectX Schnittstelle verwendet. Nun habe ich schon im Internet recherchiert, finde jedoch nur die Header für DirectX 9 und 10. Bevor ich da aber nun rumbastle, frage ich lieber mal, ob es nicht auch schon die Header für Direct12 gibt. Diese DirectX Version ist standardmäßig in Windows 10 installiert und ich wollte eigentlich gerne vermeiden, nun eine niedrigere Version parallel zu installieren.

Ginge das überhaupt, ohne die altuelle Version 12 dadurch unbrauchbar zu machen. Meine Internetrecherche hat allerdings auch ergeben, dass DirectX eh abwärtskompatibel ist und so eine niedrigere Version zu installieren, sinnlos sein dürfte.

Nun würde ich aber gerne auch die passenden Headerdateien verwenden, um zu vermeiden, dass mein Programm auch mit den neueren aber nicht passenden Headern fehlerhaft übersetzt wird. Dann aber brauche ich die Header für DirectX 12.

Oder kann ich die DirectX 10 Header auch verwenden?

Ich verwende Windows 10, 64Bit und Freepascal 3.0.2 mit Lazarus 1.6.4
thosch
 
Beiträge: 131
Registriert: 10. Jul 2017, 19:32

Beitragvon Mathias » 21. Dez 2017, 18:19 Re: DirektX

Musst du zwingend DirectX nehmen ?
Wen du ein neues Project planst, würde ich die OpenGL empfehlen. Dies wird super von Lazarus unterstützt.
Mit Lazarus sehe ich gün
Mit Java und C/C++ sehe ich rot
Mathias
 
Beiträge: 4327
Registriert: 2. Jan 2014, 17:21
Wohnort: Schweiz
OS, Lazarus, FPC: Linux (die neusten Trunc) | 
CPU-Target: 64Bit
Nach oben

Beitragvon thosch » 21. Dez 2017, 18:54 Re: DirektX

Mathias hat geschrieben:Musst du zwingend DirectX nehmen ?
Wen du ein neues Project planst, würde ich die OpenGL empfehlen. Dies wird super von Lazarus unterstützt.


Ok, danke für den Rat. Werd ich probieren. Wird OpenGL auch von PTC unterstützt? Wenn ja, wie? Wollte die dort mitgelieferten Beispiele ausprobieren.
thosch
 
Beiträge: 131
Registriert: 10. Jul 2017, 19:32

Beitragvon Mathias » 21. Dez 2017, 19:46 Re: DirektX

Wird OpenGL auch von PTC unterstützt?

Das kann ich dir nur sagen, wen du mir sagst, was PTC ist.
Mit Lazarus sehe ich gün
Mit Java und C/C++ sehe ich rot
Mathias
 
Beiträge: 4327
Registriert: 2. Jan 2014, 17:21
Wohnort: Schweiz
OS, Lazarus, FPC: Linux (die neusten Trunc) | 
CPU-Target: 64Bit
Nach oben

Beitragvon thosch » 21. Dez 2017, 20:11 Re: DirektX

Mathias hat geschrieben:
Wird OpenGL auch von PTC unterstützt?

Das kann ich dir nur sagen, wen du mir sagst, was PTC ist.


Es gibt eine Pascalübersetzung der OpenPTC Schnittstelle aus C/C++. Die befindet sich im Lazarus-Ordner ../fpc/source/packages/ptc. Standardmäßig verwendet die Windows Übersetzung DirectX beim Öffnen des Grafikscreen. Im Ordner .../ptc/examples sind Programmbeispiele, die unter Verwendung dieser Bibliothek geschrieben wurden.

Unter Freepascal 3.0.2 habe ich folgendes Anfangsbeispiel geschrieben:

Code: Alles auswählen
 
uses
  classes, sysutils,ptc;
 
var
  pixels: PUint32;
  console: IPTCConsole;
  surface: IPTCSurface;
  format: IPTCFormat;
 
begin
  { create console }
  console := TPTCConsoleFactory.CreateNew;
 
  { create format }
  format := TPTCFormatFactory.CreateNew(32, $00FF0000, $0000FF00, $000000FF);
 
  console.Open('PTC-Grraphic-App',1024,768,format);
 
  { create surface matching console dimensions }
 
  surface := TPTCSurfaceFactory.CreateNew(console.width, console.height, format);
 
  { Nun will ich erst mal Pixel in einen rechteckigen Bereich schreiben, um zu sehen, ob das funktioniert. Wenn ja, kann ich weiter machen}
 
  pixels := surface.lock;
  try
    for y:=20 to 100 do
      for x:=20 to 200 do
         pixels[x + y * surface.width] := color;
  finally
    surface.unlock;
  end;
 
  surface.copy(console);  //Pixels in console schreiben
  console.Update;           //Bildschirminhalt aktualisieren, nun muss das Rechteck zu sehen sein!
 
end.
 
 


Dabei erhalte ich bei der Ausführung des Programmes den PTC Error: Console ist nicht geöffnet. Der Compiler läuft durch.

Wäre daher schön, wenn es eine OpenGL Schnittstelle ebenfalls gäbe, die hoffentlich besser funktioniert. Gibt es die und wenn ja, wie weise ich die IPTCConsole an, statt DirectX OpenGL zu verwenden, falls das möglich ist. Leider ist hierzu kein Beispiel im Ordner /ptc/examples dabei.

Ich will nur den Openfehler los werden, damit ich die Beispiele aus /examples ausprobieren kann.

Gibt es noch einen anderen Workaround? Schließlich bin ich doch unter Windows schon im Grafikmodus. Daher sollte das doch auch mit dem stinknormalen GDI funktionieren. Oder vielleicht mit OpenGL.
Aber wie sage ich der PTC Console dass ich eine andere Grafikschnittstelle als die voreingestellte verwenden will?

Unter Linux scheitert das Unternehmen an einer ganzen Liste nicht gefundener Units, X11 Units, die da betroffen sind.

.
thosch
 
Beiträge: 131
Registriert: 10. Jul 2017, 19:32

Beitragvon Mathias » 21. Dez 2017, 22:54 Re: DirektX

Ich habe gerade 2 Beispiele pixel.pp und land.pp probiert, und diese laufen sogar unter Linux.
Mit Wine laufen sie auch.

So wie es scheint, ist PTC eine sehr schnelle Grafikschnittstelle.

Was hast du genau vor, das du PTC nutzen willst ?
Oder wolltest du es einfach mal ausprobieren ?
Mit Lazarus sehe ich gün
Mit Java und C/C++ sehe ich rot
Mathias
 
Beiträge: 4327
Registriert: 2. Jan 2014, 17:21
Wohnort: Schweiz
OS, Lazarus, FPC: Linux (die neusten Trunc) | 
CPU-Target: 64Bit
Nach oben

Beitragvon thosch » 22. Dez 2017, 08:50 Re: DirektX

Schön dass es bei Dir läuft. Mit welcher FPC Version hast Du kompiliert? Mit 3.0.2 unter Win-10 64 Bit erhalte ich den genannten Fehler zur Laufzeit. Wie kann ich den ausschalten?????

Ja PTC ist klasse schnell. Ich will mit FPPixlCanv eine Grafikschnittstelle bauen. PTCGraph funktioniert bei mir nicht. Diese Unit befindet sich in /packages/Graph.

Welche Modi werden überhaupt unterstützt von PTC unter Windows und Linux.

Ich habe den Quellcode oben gepostet, mit dem ich meinen ersten Versuch gemacht habe. Wie also kriege ich die Grafikschnittstelle funktionsfähig geöffnet.

Wäre es nicht klasse, mit PTC auch alle Linien, Kreis, Ellipsen- .... Funktionen zu haben?????

Wozu da neue Grafikfunktionen hinzufügen, die sind doch in FpPixlCanvas schon da. Braucht doch dazu nur noch die passende Graikengine, um die Pixel auf den Bildschirm zu bringen. Ich weiß, dass das in der LCL schon gemacht wird, aber die PTC hat selber keine Linien, Kreis, Ellipsen u.a. Funktionen. Warum da nicht die aus FPPixlCanvas (Ordner /fcl-image) verwenden und die Pixel mit PTC zeichnen???? Zumal ja mit den Image Funktionen der Image Klassen auch bezüglich Bildverarbeitung alles abgedeckt ist. Und die Klassen in /fcl-image sind standarmäßig Bestandteil von Freepascal. Waum also dann wieder irgendwas externes verwenden. Mag ja sein dass OpenGL auch alles liefert, aber in die FCLImage Klassen habe ich mich ein wenig eingearbeitet. OpenGL ist dagegen für mich komplett neu, ich würde dann bei NULL anfangen. So schnell aber kapier ich das alles nicht mehr mit meinen 60 Altersjahren. Deshalb will ich bei den fclimage Klassen bleiben und das Zeichnen der Pixel mit PTC machen. Zumal diese Grafikengine für alle von Freepascal unterstützten Plattformen vorhanden ist. Ob OpenGL im Zweifelsfall wiklich besser funktioniert, kann ich nicht wissen. Außerdem sagst Du, dass PTC auch in Linux funktioniert. Bei mir aber werden die Units nicht gefunden und nun darf ich als Workaround mir alle relevanten Units in einen Arbeitsordner kopieren und mir zu diesem Zweck nun diese Units mühselig zusammen suchen. Daher vertraue ich lieber auf die Bibliotheken die ich kenne und mit denen ich schon mal programmiert habe. Wer weiß, welche Probleme eine völlig neue Bibliothek sonst bereit hält????

Also wenn es bei Dir läuft, mit welcher FPC Version hast Du übersetzt?


Oder gibt es einen zuverlässigen Workaround, um mit passender bereits offener Grafikschnittstelle meine FPPixCanv-Klasse schreiben zu können. Wenn bei anderen dann die Kompilierung läuft, nur bei mir nicht, ich aber mit einem Workaround arbeite, dürfte das für die Freepascal Gemeinde nicht schädlich sein. Für diese läuft das ja dann ohne meinen Workaround. Eine Grafikengine auf PTC basierend, die auch alle Images lesen und ausgeben kann und zusätzlich sämtliche Kreis, Ellipsen, Linien-.... Funktionen beherrscht, ist für Freepascal asl Erweiterung auf jeden Fall interessant. Für die Spieleprogrammierer zum Beispiel.

Ich könnte das Ergebnis meiner Arbeit auf Sourceforge veröffentlichen oder an einen verantwortlichen Freepascal Entwickler schicken. Der zukünftige Nutzer meiner Arbeit muss dann nur die fcl-image Klassen kennen, um damit programmieren zu können.

Wäre doch was für Freepascal, oder?

Aber dazu muss ich einen passenden PTC Grafikmodus einstellen können.

Es gibt doch bestimmt noch andere Anwendungen, für die PTC nützlich ist, oder? Ich meine, nützlich für die Community insgesamt????
thosch
 
Beiträge: 131
Registriert: 10. Jul 2017, 19:32

Beitragvon Mathias » 22. Dez 2017, 18:22 Re: DirektX

Welche Modi werden überhaupt unterstützt von PTC unter Windows und Linux.

Mir ist da etwas aufgefallen, unter Linux, läuft ptc in einem Fenster, und bei Windows schaltet es in Vollbild um.

Wäre es nicht klasse, mit PTC auch alle Linien, Kreis, Ellipsen- .... Funktionen zu haben?????

Wen ptc dies nicht kann, müsste man dies alles manuell machen, und somit nicht Hardware beschleunigt, was wieder ein grosser Nachteil ist.
Einfache GDI-Funktionen auf einem Canvas sind je nach Hardware beschleunigt.

Was mir auch noch aufgefallen ist, die PTC-Fenster reagieren bei mit nicht auf Tastatur-Eingabe. Egal ob bei eine Readln, oder Keypressed von der Unit Crt.

Also wenn es bei Dir läuft, mit welcher FPC Version hast Du übersetzt?
3.0.4 und 3.1.1. Auch mit dem Win-Crosscompiler habe ich es probiert.

Was mit mir gerade aufgefallen ist, wen man das Programm von einer Text-Console aus startet, reagiert er in der Text-Console auf Readln.

Im Anhang dein Beispiel als Project.
Kannst du mal deine Fehlermeldung ganz zeigen.
Unterstützt Dein BS die Auflösung 1024 x 768 ? Ersetze dies mal mit deiner nativen Auflösung.

Aber was ist dein Ziel, willst du ein Games schreiben und einfach nur ptc ausprobieren ?
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
Mit Lazarus sehe ich gün
Mit Java und C/C++ sehe ich rot
Mathias
 
Beiträge: 4327
Registriert: 2. Jan 2014, 17:21
Wohnort: Schweiz
OS, Lazarus, FPC: Linux (die neusten Trunc) | 
CPU-Target: 64Bit
Nach oben

Beitragvon thosch » 22. Dez 2017, 19:47 Re: DirektX

Mathias hat geschrieben:
Welche Modi werden überhaupt unterstützt von PTC unter Windows und Linux.

Mir ist da etwas aufgefallen, unter Linux, läuft ptc in einem Fenster, und bei Windows schaltet es in Vollbild um.


Zuerst mal egal. Hauptsache ich kriege das Teil zum Laufen.

Mathias hat geschrieben:
Wäre es nicht klasse, mit PTC auch alle Linien, Kreis, Ellipsen- .... Funktionen zu haben?????

Wen ptc dies nicht kann, müsste man dies alles manuell machen, und somit nicht Hardware beschleunigt, was wieder ein grosser Nachteil ist.


Ok, aber die Grafikfunktionen sind softwareseitig zwar nicht in PTC, aber doch in FPPixlCanv (Ordner /fcl-image) erst mal dabei. softwaremäßig halt, nicht hardwarebeschleunigt. Ein Grund mehr eigentlich, das unter die Lupe zu nehmen und mal Geschwindigkeitstests zu machen. Indem ich für das Zeichenen der endgültigen Pixel PTC verwende, das ja immerhin erst mal in einen Puffer schreibt und erst wenn das Bild fertig gezeichnet ist, mit einem schnellen Console.Update Befehl alles in den Bildspeicher schreibt.

Mathias hat geschrieben:Einfache GDI-Funktionen auf einem Canvas sind je nach Hardware beschleunigt.


Ups, das habe ich nicht gewusst.

Mathias hat geschrieben:Was mir auch noch aufgefallen ist, die PTC-Fenster reagieren bei mit nicht auf Tastatur-Eingabe. Egal ob bei eine Readln, oder Keypressed von der Unit Crt.


keypressed gibt es in der PTC-Console als Methode der Klasse. Auch dafür gibt es im Ordner Examples Beispielprogramme.

Hier ist zum Beispiel das Programm console.pp aus dem Ordner /examples des PTC Paketes:
Keypressed habe ich da gleich mal hervorgehoben.
Code: Alles auswählen
 
{
Ported to FPC by Nikolay Nikolov (nickysn@users.sourceforge.net)
}
 
{
 Console example for OpenPTC 1.0 C++ implementation
 Copyright (c) Glenn Fiedler (ptc@gaffer.org)
 This source code is in the public domain
}
 
program ConsoleExample;
 
{$MODE objfpc}
 
uses
  ptc;
 
var
  console: IPTCConsole;
  palette: IPTCPalette;
  data: array [0..255] of DWord;
  i: Integer;
  pixels: PByte;
  width, height, pitch: Integer;
  format: IPTCFormat;
  bits, bytes: Integer;
  x, y: Integer;
  color: DWord;
  pixel: PByte;
  _data: PByte;
begin
  try
    try
      { create console }
      console := TPTCConsoleFactory.CreateNew;
 
      { open the console with one page }
      console.open('Console example', 1);
 
      { create palette }
      palette := TPTCPaletteFactory.CreateNew;
 
      { generate palette }
      for i := 0 to 255 do
        data[i] := i;
 
      { load palette data }
      palette.Load(data);
 
      { set console palette }
      console.Palette(palette);
 
      { loop until a key is pressed }
      while not console.KeyPressed do
      begin
        { lock console }
        pixels := console.Lock;
 
        try
          { get console dimensions }
          width := console.width;
          height := console.height;
          pitch := console.pitch;
 
          { get console format }
          format := console.format;
 
          { get format information }
          bits := format.bits;
          bytes := format.bytes;
 
          { draw random pixels }
          for i := 1 to 100 do
          begin
            { get random position }
            x := Random(width);
            y := Random(height);
 
            { generate random color integer }
            color := (DWord(Random(256)) shl 0) or
                     (DWord(Random(256)) shl 8) or
                     (DWord(Random(256)) shl 16) or
                     (DWord(Random(256)) shl 24);
 
            { calculate pointer to pixel [x,y] }
            pixel := pixels + y * pitch + x * bytes;
 
            { check bits }
            case bits of
                   { 32 bits per pixel }
              32: PDWord(pixel)^ := color;
              24: begin
                { 24 bits per pixel }
                _data := pixel;
                _data[0] := (color and $000000FF) shr 0;
                _data[1] := (color and $0000FF00) shr 8;
                _data[2] := (color and $00FF0000) shr 16;
              end;
                   { 16 bits per pixel }
              16: PWord(pixel)^ := color;
                  { 8 bits per pixel }
              8: PByte(pixel)^ := color;
            end;
          end;
        finally
          { unlock console }
          console.Unlock;
        end;
 
        { update console }
        console.Update;
      end;
    finally
      if Assigned(console) then
        console.Close;
    end;
  except
    on error: TPTCError do
      { report error }
      error.report;
  end;
end.
 


Mathias hat geschrieben:
Also wenn es bei Dir läuft, mit welcher FPC Version hast Du übersetzt?
3.0.4 und 3.1.1. Auch mit dem Win-Crosscompiler habe ich es probiert.


Ok, da werde ich nicht umhin kommen, den Compiler der Version 3.0.4 runter zu laden und zu installieren. Gibt es denn den 3.1.1-er noch. Ich kenne nur 3.0, dann 3.02 und eben den 3.0.4. Da muss Dein 3.1-er eine Entwicklerversion sein. Durch Snapshots aktualisiert?

Mathias hat geschrieben:Was mit mir gerade aufgefallen ist, wen man das Programm von einer Text-Console aus startet, reagiert er in der Text-Console auf Readln.


Ok, das macht die Konsole also schon mal. Aber wie meinst Du das mit der Textkonsole?

Windows-Eigabeaufforderung oder Linix XTerm oder DOS?

In Linux wird für die Verwendung von PTC X11 vorausgesetzt, da glaub ich nicht, dass das ohne XServer läuft.

Mathias hat geschrieben:Im Anhang dein Beispiel als Project.


Danke!

Mathias hat geschrieben:Kannst du mal deine Fehlermeldung ganz zeigen.


Kann ich machen, passiert morgen. Bin momentan in Linux.

Mathias hat geschrieben:Unterstützt Dein BS die Auflösung 1024 x 768 ? Ersetze dies mal mit deiner nativen Auflösung.


Ja das tut es, ich habe in Windows dieselbe Auflösung eingestellt.

Mathias hat geschrieben:Aber was ist dein Ziel, willst du ein Games schreiben und einfach nur ptc ausprobieren ?


Erst mal einfach nur ptc ausprobieren und dann FPpixlCanv damit implementieren. Da gibt es einerseits die herrlich schnelle ptc-Grafik, aber ohne Linien, Kreis, Ellipsenfunktionen. Und es gibt die FCLImage Klassen und das besagte FPPixlCanv. Diese Klasse ist im /fcl-image Ordner aber nicht vollständig implementiert. Image Funktionen sind da, umfangreiche Interpolationsalgorithmen, die wahrscheinlich zum Strecken oder Verkleinern der Images und zu anderen Dingen gebraucht werden, die grundlegenden Grafikfunktionen zum Zeichnen von Linien sind auch schon da, aber nichts was die Pixel am Ende in den Bildschirm schreibt. Die wird dann erst von der LCL erledigt. Mit wiederum systemabhängigen Grafikfunktionen. Warum da nicht eine Version mit PTC bauen? Und dann mal testen wie schnell das untern Strich wirklich wird. Dass GDI Funktionen hardwarebescleunigt sind, habe ich bis vorhin nicht gewusst. Womöglich sind dann selbst Kreis- Linien- und Ellipsenfunktionen bei Spieleengines auch hardwarebeschleunigt. Da will ich um so mehr mal schauen, wie schnell eine Grafikmaschine mit PTC wird, wenn ich dazu die softwaregesteuerten Grafikfunktionen fer fcl verwende und mittels ptc implementiere.

Sozusagen erst mal mit ptc rumspielen. Die mitgelieferten Beispiele will ich natürlich auch ausprobieren. Eine Motivation mehr, mal wieder Mathe aufzufrischen, um die Quellcodes zu verstehen. (Tunnel3d, Flower und so).

Ich schätze ein,, dass hier die Vektorrechnung mein Freund ist. Oder braucht es noch mehr?
thosch
 
Beiträge: 131
Registriert: 10. Jul 2017, 19:32

» Weitere Beiträge siehe nächste Seite »
Nächste

Zurück zu Windows



Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast

porpoises-institution
accuracy-worried