Difference between revisions of "FPC and DirectX"

From Free Pascal wiki
Jump to navigationJump to search
m (Fixed syntax highlighting; deleted category included in page template)
 
Line 18: Line 18:
 
You just place the units you will use in your program in your uses section. Be sure to place the units in your program folder. Like this:  
 
You just place the units you will use in your program in your uses section. Be sure to place the units in your program folder. Like this:  
  
<syntaxhighlight>interface
+
<syntaxhighlight lang=pascal>
 +
interface
 
uses   
 
uses   
 
   Windows, Classes, SysUtils, LResources, Forms,  Dialogs,  ExtCtrls,  // standard stuff
 
   Windows, Classes, SysUtils, LResources, Forms,  Dialogs,  ExtCtrls,  // standard stuff
Line 28: Line 29:
  
 
If you have placed the DLLs in your program folder you now can use all DirectX calls in your program.
 
If you have placed the DLLs in your program folder you now can use all DirectX calls in your program.
 
[[Category:Graphics]]
 
[[Category:Headers and Bindings]]
 
[[Category:Windows]]
 
[[Category:FPC]]
 
[[Category:Lazarus]]
 

Latest revision as of 01:03, 16 February 2020

Deutsch (de) English (en) français (fr)

Introduction

First of all, DirectX is only suited for Microsoft Windows.

DirectX programming in Free Pascal is fast. Calling a DirectX function is not different from other languages like C++ (with some small exceptions).

To use DirectX you will need to know some basic stuff about the language. A valuable resource is Google, and the MSDN network. As most of the tutorials and examples are in C++, it is recommended to have some basic C++ knowledge, but translating to Pascal is not very difficult: you will get the hang of it in no time. This page is going to explain the basics of how to setup DirectX with Free Pascal, where to obtain the Pascal headers etc.

Obtaining DirectX headers for FPC

You will need pascal headers to be able to use DirectX with FPC . You can download them from http://www.clootie.ru/fpc/index.html. In the downloadable file you will find the headers, and also the DLL files that need to go with your application. They always go together.

Examples

It's convenient to use a program like Lazarus to create DirectX applications, because it needs a window to draw all graphics and programming directly in Win32 is very awkward. In Lazarus you can just connect all your drawing objects to the Form and everything works fine.

You just place the units you will use in your program in your uses section. Be sure to place the units in your program folder. Like this:

interface
uses  
  Windows, Classes, SysUtils, LResources, Forms,  Dialogs,  ExtCtrls,  // standard stuff
  Direct3D8, // the DirectX units
  D3DX8,
  Directinput,
  DirectMusic,
  DirectSound;

If you have placed the DLLs in your program folder you now can use all DirectX calls in your program.