Info |
Description |
|
Delphi DirectX headers adaptation followed by Borland and JEDI standarts for all (up to 9.0 from April 2007
DirectX SDK update) versions of DirectDraw, Direct3D, DirectInput, DirectSound, DirectMusic, DirectShow,
DirectXSetup, X3DAudio, XACT, XInput; DirectPlay8 (updated to DirectX9); D3DX 9.0 headers with support library;
dxerr9 (DirectX 9.x error reporting) headers with support library. In this file you'll find JEDI compliant version and
preprocessed versions of headers for Delphi 4/5, Delphi 6/7 and Delphi 2005 / Delphi 2006 / TurboDelphi.
Also this archive contains simple example of Direct3D8 program.
This package DOES NOT include helper libraries: D3DX or DXErr -
error reporting (DXErr9ab.dll).
Download it.
|
|
Subset of previous translation. Includes only PAS files compatible with JEDI standarts from
Clootie_DirectX92.exe.
Download it.
|
|
DLLs needed for both Delphi and C++ Builder, to use D3DX 9.0 functionality from April 2007
DirectX SDK Update and/or DXErr (DirectX error reporting) in your projects or compile Microsoft demos:
D3DX9_33.dll, DXErr9ab.dll. Note: D3DX9_33.dll is included in this package only for testing
on developer system, not for redistribution.
Download it.
|
|
|
For compatibility with previous releases of Delphi DirectX SDK's I'm providing here
d3dx9_31.dll / d3dx9_30.dll / d3dx9_29.dll / d3dx9_28.dll / d3dx9_27.dll / d3dx9_26.dll / d3dx9_25.dll / d3dx9_24.dll
compatible with DirectX 9.0 SDK Update down to February 2005. DLLs included in these packages is only for
testing on developer system, not for redistribution.
Note: these DLL's provided only for compatibility and not required by current Delphi
DirectX SDK. You need to download it only if you have application specially requiring it at startup.
|
|
For compatibility with previous releases of Delphi DirectX SDK's I'm providing here D3DX92ab.dll
compatible with December 2004 SDK Update D3DX9 library.
Note: this DLL provided only for compatibility and not required by current Delphi DirectX
SDK. You need to download it only if you have application specially requiring it at startup.
Download it.
|
Also
Description of Direct3D examples |
6 "step by step" DirectX tutorials. Great tutorials to start learning
Direct3D. From initializing D3D device renderer to loading meshes.
These tutorial do not need any additional files to compile and run. Only headers and D3DX helper dll for some of tutorials.
|
Common subdirectory contains Translated Direct3D common framework -
used by all Direct3D examples listed below.
Includes: DXUT, DXUTcore, DXUTEnum, DXUTgui, DXUTmesh, DXUTmisc, DXUTRes, DXUTSettingsDlg files.
Also DDUtil unit (DirectDraw utilities) is included - initially converted by Dominique Louis.
|
|
|
Multisampling attempts to reduce aliasing by mimicking a higher resolution display using multiple sample points
to determine each pixel's color. The Antialias sample shows how the various multisampling techniques
supported by your video card affect the scene's rendering. Although multisampling effectively combats aliasing,
under particular situations it can introduce visual artifacts of its own. As illustrated by the sample, centroid
sampling seeks to eliminate one common type of multisampling artifact. Support for centroid sampling is supported
by the pixel shader 2.0 model and later. Note: actually centroid sampling is supported by ATi R3xx (Radeon 9500
or later), R4xx (X800 series) and NVIDIA N4x (GeForce 6x00 series, GeForce 7800 series).
|
The BasicHLSL sample simply loads a mesh, creates an effect from a file, and then uses the effect to render the
mesh. The effect that is used is a simple vertex shader that animates the vertices based on time.
|
The Blobs sample mimics a metaball effect in screen space using a pixel shader. True metaball techniques deform
surfaces according to pushing or pulling modifiers, and are commonly used to model liquid effects like the merging of
water droplets. Metaball effects can be computationally expensive, however, so this sample implements a 3-D metaball
effect in 2-D image space with a pixel shader.
|
The CompiledEffect sample shows how an ID3DXEffect object can be compiled when the project is built and loaded
directly as a binary file at run time. This sample can be treaded like BasicHLSL modified to use precompiled EffectFile.
|
The CustomUI sample is a simple demonstration of the UI subsystem implemented by the Microsoft Direct3D sample
framework. The sample framework provides code and infrastructure common to most Microsoft DirectX applications. One area
of the framework is user interface support. The sample framework contains commonly used control objects, such as buttons
and check boxes, that both windowed and full screen Direct3D applications can use to implement their user interfaces.
Most notably GUI subsystem of D3DFramework implements edit controls event with IME!!! So, your new applications will be
easily localized even for Chineese users!
|
The DepthOfField sample shows several techniques for creating a depth-of-field effect in which objects are
only in focus at a given distance from the camera and out of focus at other distances. Rendering objects out of
focus adds realism to the scene. The methods it shows are reasonably cheap to perform on most hardware, and the
depth of field post processing can easily be combined with other post process techniques such as image-based
motion blur or high dynamic range (HDR) lighting.
|
The EffectParam sample demonstrates two D3DX effect system features: parameter blocks and parameter
sharing (see Sharing Effect Parameters and Use Parameter Blocks to Manage Effect Parameters). Parameter blocks
group multiple Setxxx application programming interface (API) calls and associate them with an effect handle.
An application can then use the parameter block to make all those state changes with a single API call. Parameter
sharing synchronizes parameters in multiple effects; each time an application updates a parameter in one effect,
that parameter is updated in all the other shared effects.
|
The EmptyProject is a bare-bones Direct3D application provided as a convenient starting point for your own project.
It's already contains rich set UI elements.
|
The EnhancedMesh Sample demonstrates mesh tessellation in Microsoft Direct3D. Mesh tessellation subdivides
mesh triangles. This produces a mesh with finer geometry details which can produce better lighting results even
with per-vertex lighting. Mesh tessellation is often used to implement a level of detail (LOD) technique where
meshes closer to the viewer are rendered with more details, and meshes further away are rendered with less detail.
|
The FragmentLinker sample shows how to use the ID3DXFragmentLinker interface. Shader source code can be split
into a series of shader fragments, which are compiled separately and linked together to form a complete shader. This
linking stage is very efficient, making it suitable for run-time use. In this way a Microsoft Direct3D application can
custom-build an appropriate shader for the current graphics card.
|
The HDRCubeMap sample demonstrates cubic environment-mapping with floating-point textures and high dynamic
range lighting. In Microsoft DirectX 9.0, floating-point formats have become available for textures. These
formats can store color values higher than 1.0, which can make lighting effects more realistic on the
environment-mapped mesh when the material absorbs part of the light.
Note: not all cards support all features for the environment-mapping and high dynamic range lighting techniques.
|
High Dynamic range lighting effects require the ability to work with color values beyond the 0 to 255 range,
usually by storing high range color data in textures. Floating point texture formats are the natural choice for
high dynamic range (HDR) applications, but they may not be available on all target systems.
The HDRFormats sample shows how high dynamic range data can be encoded into integer formats for
compatibility across a wide range of devices.
|
The HDRLighting sample demonstrates some high dynamic range (HDR) lighting effects using floating-point
textures. Integer texture formats have a limited range of discrete values, which results in lost color
information under dynamic lighting conditions; conversely, floating-point formats can store very small or very
large color values, including values beyond the displayable 0.0 to 1.0 range. This flexibility allows for dynamic
lighting effects, such as blue-shifting under low lighting and blooming under intense lighting. This sample also
employs a simple light adaptation model, under which the camera is momentarily overexposed or underexposed to
changing light conditions.
|
The HDRPipeline sample application is intended to complement existing HDR (High Dynamic Range) samples by
showing the many intermediary processing steps that make up a typical HDR rendering path in a Direct3D
application. Whilst implementing HDR rendering is not the most complex of algorithms, it does have a large
number of steps involved in the composition of the final image displayed to the user.
|
The HLSLwithoutEffects sample demonstrates using high-level shader language (HLSL) to write vertex shaders
without using the D3DX effect interfaces. HLSL is a language that closely resembles C syntax and constructs. By
writing shaders in HLSL instead of assembly language, developers can take advantage of not only the features and
elements of the language they are already familiar with, but also the great optimization capabilities offered by
the D3DX shader compiler.
|
The Instancing sample demonstrates the instancing feature available with Microsoft DirectX 9.0c. A vs_3_0
device is required for this feature. The sample also shows alternate ways of achieving results similar to
hardware instancing, but for adapters that do not support vs_3_0. The shader instancing technique shows the
benefits of efficient batching of primitives.
Note: On graphics hardware that does not support vs_2_0, the sample will run as a reference
device.
|
The LocalDeformablePRT sample demonstrates a simple usage of locally-deformable precomputed radiance
transfer (LDPRT). This implementation does not require an offline simulator for calculating PRT coefficients;
instead, the coefficients are calculated from a thickness texture. This allows an artist to create and tweak
subsurface scattering PRT data in an intuitive way.
|
The MeshFromOBJ sample shows how an ID3DXMesh object can be created from mesh data stored in a Wavefront Object
file ( .obj). It's convenient to use .x files when working with ID3DXMesh objects since D3DX can create and fill an
ID3DXMesh object directly from a .x file. It's also easy to initialize an ID3DXMesh object with data gathered from
any file format or memory resource.
|
The MultiAnimation sample demonstrates mesh animation with multiple animation sets using high-level shader
language (HLSL) skinning and the D3DX animation controller. The animation controller blends animation sets
together to ensure a smooth transition when moving from one animation to another.
|
This OptimizedMesh sample demonstrates the different types of meshes D3DX can load and optimize, as
well as the different types of underlying primitives it can render. An optimized mesh has its vertices and faces
reordered so that rendering performance can be improved.
|
This Pick sample is back in December 2005 SDK update! It shows how to implement picking; that is, finding
which triangle in a mesh is intersected by a ray. In this case, the ray comes from mouse coordinates.
To do this inverse transform is calculated and triangle is searched in displayed mesh.
|
This PixelMotionBlur sample. Motion blur adds realism to the scene. It has the perceptual effect of
creating high-speed motion. Instead of rendering the geometry multiple times with different alpha values to
create a blur effect, this sample shows off a realistic image-based motion blur effect. While the scene is
rendered, the shaders record the per-pixel velocity relative to the previous frame. This per-pixel velocity is
then used in a post-process pass to blur the pixels in the final image.
|
This PostProcess sample demonstrates some interesting image-processing effects that can be achieved
interactively. Traditionally, image processing takes a significant amount of processor power on the host CPU,
and is usually done offline. With pixel shaders, these effects can now be performed on the hardware more
efficiently, allowing them to be applied in real time.
Note that the techniques shown here require pixel shader 2.0 and floating-point textures. Thus, not all cards
support all of the postprocessing techniques.
|
This ProgressiveMesh sample shows how an application can use the D3DX progressive mesh functionality to
simplify meshes for faster rendering. A progressive mesh is a specialized mesh object that can increase or decrease
its geometry complexity, thereby providing flexibility when drawing the mesh so that performance can be maintained
at a steady level. This feature is useful when providing level of detail (LOD) support in an application.
|
The ShadowMap sample demonstrates one popular shadowing technique called shadow mapping. A shadow map (in the form
of a floating-point texture) is written with the scene's depth information with the camera placed at the light's position.
Once generated, the shadow map is projected onto the scene during rendering. The depth values in the scene are compared
with those in the shadow map. If they do not match for a particular pixel, then that pixel is in shadow. Shadow mapping
is a very efficient real-time shadow casting technique.
Note: This sample requires ps_2_0 which supports floating-point textures. On cards that do not support
ps_2_0, the sample will revert to a reference device which will degrade performance, but is useful for verifying
functionality.
|
The ShadowVolume sample demonstrates one common technique for rendering real-time shadows called shadow
volumes. The shadows in the sample work by extruding faces of the occluding geometry (that are facing away from
light) to form a volume that represents the shadowed area in 3D space. The stencil buffer is used as a mask for
rendering additional geometry, and is updated as geometry is rendered.
|
The SkinnedMesh sample illustrates mesh animation with skinning using D3DX. Skinning is an animation
technique that takes data organized in a skeletal-mesh hierarchy and applies geometry blending to transform mesh
vertices. The geometry blending generates smooth surfaces with fewer artifacts.
|
The Text3D sample uses ID3DXFont to display 2D text in a 3D scene. This is most useful for display stats,
in game menus, etc... Note: ID3DXFont support UNICODE character rendering, so sample demostrates
rendering of Japanese text (you should have installed Asian languages support to see them).
The sample also shows how to use D3DXCreateText() to create a D3DX mesh containing a 3D model of a text string.
Note that D3DXCreateText may not work with certain types of fonts, such as bitmap fonts and some symbol fonts.
|
The UVAtlas sample is a command line example tool that uses the D3DX UVAtlas
and IMT computation functions to generate an optimal, unique texture parameterization for an input mesh.
|