The most recent extension
of my programming activities has been to start
to experiment with Delphi, and the applications
of DirectX and to, to a lesser extent, OpenGL,
to graphical programming within these. Delphi
4.0 is essentially a Pascal based code surrounding
a formidably complex object orientated system
of manipulating the windows API. When starting
to produce applications that I thought would
benefit from being rendered in the user and
eye-friendly windows environment Delphi was
the natural choice: I found attempting to
learnt C++ from basics a little too painful,
and the combination of an immediate and instinctive
graphical front-end with my familiarity for
the pascal language made acquisition of the
tricks of using Delphi fairly rapid. However,
Delphi does have several flaws when compared
to Turbo Pascal: it is considerably slower,
to the point where code written purely in
Delphi becomes unviable over a certain limit;
and has, in my opinion, vast tracts of backwards
compatible code and conversion functions that
have little functionality, and indeed make
for considerable confusion when attempting
to perform even a simple operation, such as
opening a file external to the built in system.
Having said this, attractive and highly stable
32-bit windows application can be generated
in a few minutes, graphical access to forms
and features is good and improves massively
when using DirectX, and there are copious
groups producing units and automatically packages
libraries for integration into your programs.
For the most part, I use Delphi in the construction
of programming tools which are best rendered
using all the trappings of windows' environment,
easily accessible menus, convenient file management
and similar: but also when I require high
resoltuion graphics that can be readily linked
and embedded, or if I want reliable access
to windows file formats: bitmap files have
nearly driven me to distraction when attempting
to load them in Pascal, but are deceptively
convenient as graphics sources in Delphi.
In addition, I recently discovered that most
Assembler routines, including the TPU commands,
can be incorporated into Delphi and are assembled
by the integrated inline assembler: providing
a method for optimising code in Delphi that
must run quickly. Sadly, due to the size of
the application (and the increased risk of
me being sued), Delphi 4.0 is not available
for download: but I am informed a
demo can be downloaded from Borland,
and the program is readily available commercially.
Recently, I have been concerned with DirectX
control in Delphi- and so coded examples available
for download on this site include my level
editor for Trooper II, a JPG style
image compressor, my fractal generators, and
a DirectX based fractal zooming movie, which
is visually spectacular.