📄 d3dx9.pas
字号:
(*)
[------------------------------------------------------------------------------
[ _ _ _ _ _ _ ___ _ ___
[ _| |___| |___| |_|_| _| |_ _ _| |_ |_| |_ _| . |
[ | . | -_| | . | | |_| . |_'_|_| . |_ | . |_'_|_ |
[ |___|___|_| _|_|_|_|_|___|_,_|_|___|___|___|_,_|___|
[ |_|
[
[------------------------------------------------------------------------------
[ d3dx9 Delphi Adaptation (c) by Tim Baumgarten
[ lib to dll conversion by Christopher McGinnis
[------------------------------------------------------------------------------
[ Files : d3dx9.h
[ d3dx9math.h
[ d3dx9core.h
[ d3dx9mesh.h
[ d3dx9tex.h
[ d3dx9shader.h
[ d3dx9effect.h
[ d3dx9shape.h
[ d3dx9anim.h
[ Modified : 02-Oct-2003
[ E-Mail : Ampaze at gmx dot net
[ Download : http://www.crazyentertainment.net
[------------------------------------------------------------------------------
(*)
(*)
[------------------------------------------------------------------------------
[ History :
[----------
[ 02-Oct-2003 (Tim Baumgarten) : Changes to fit the D3DX9 Summer Update
[ 10-Jul-2003 (Tim Baumgarten) : Changed some Enum Stuff that was broken
[ 02-Jun-2003 (Tim Baumgarten) : you can change d3dx9dllname to 'd3dx9d.dll'
[ for debuging and the "inline functions" will
[ still use 'd3dx9.dll'
[ 02-Jun-2003 (Christopher McGinnis) : new dll build from d3dx9a
[ 07-Apr-2003 (Tim Baumgarten) : Gave overloads to D3DXLoadMeshFromX{A|W}
[ 07-Apr-2003 (Christopher McGinnis) : fixed TD3DXEffectInstance
[ 03-Apr-2003 (Tim Baumgarten) : again new dll,
[ all "inline" functions now called from dll
[ 01-Apr-2003 (Tim Baumgarten) : new dll,
[ some "inline" functions now called from dll
[ 19-Mar-2003 (Tim Baumgarten) : bugfixed
[ - D3DXPlaneIntersectLine
[ - ID3DXAllocateHierarchy.CreateMeshContainer
[ 16-Feb-2003 (Tim Baumgarten) : bugfixes
[ 31-Jan-2003 (Tim Baumgarten) : bugfixed D3DXCreateLine
[ 19-Jan-2003 (Tim Baumgarten) : first public version
[ most likely to contains bugs, please report
[------------------------------------------------------------------------------
(*)
unit d3dx9;
{$INCLUDE jedi.inc}
{$MINENUMSIZE 4}
{$ALIGN ON}
//Remove dot to make all enums to be const's
{$DEFINE NOENUMS}
{$IFDEF DELPHI7_UP}
{$WARN UNSAFE_CODE OFF}
{$WARN UNSAFE_TYPE OFF}
{$WARN UNSAFE_CAST OFF}
{$ENDIF}
{$IFNDEF DELPHI6_UP}
{$DEFINE NOENUMS}
{$ENDIF}
interface
uses windows, Direct3D9, sysutils, dxfile9, activex;
type
PCardinal = ^Cardinal;
const
d3dx9dllname = 'd3dx9.dll';
d3dx9inldllname = 'd3dx9.dll';
(*)
*******************************************************************************
*
* Copyright (C) Microsoft Corporation. All Rights Reserved.
*
* File : d3dx9.h
* Content : D3DX utility library
*
*******************************************************************************
(*)
const
D3DX_DEFAULT = Cardinal(-1);
D3DX_DEFAULT_NONPOW2 = Cardinal(-2);
D3DX_DEFAULT_FLOAT : Single = 3.402823466e+38; // max single value
(*)
*******************************************************************************
*
* Copyright (C) Microsoft Corporation. All Rights Reserved.
*
* File : d3dx9math.h
* Content : D3DX math types and functions
*
*******************************************************************************
(*)
(*)
*******************************************************************************
*
* General purpose utilities
*
*******************************************************************************
(*)
const
D3DX_PI : Single = 3.141592654;
D3DX_1BYPI : Single = 0.318309886;
function D3DXToRadian(const Degree : Single) : Single;
function D3DXToDegree(const Radian : Single) : Single;
(*)
*******************************************************************************
*
* 16 bit floating point numbers
*
*******************************************************************************
(*)
const
D3DX_16F_DIG = 3; // # of decimal digits of precision
D3DX_16F_EPSILON : Single = 4.8875809e-4; // smallest such that 1.0 + epsilon != 1.0
D3DX_16F_MANT_DIG = 11; // # of bits in mantissa
D3DX_16F_MAX = 6.550400e+004; // max value
D3DX_16F_MAX_10_EXP = 4; // max decimal exponent
D3DX_16F_MAX_EXP = 15; // max binary exponent
D3DX_16F_MIN : Single = 6.1035156e-5; // min positive value
D3DX_16F_MIN_10_EXP = (-4); // min decimal exponent
D3DX_16F_MIN_EXP = (-12); // min binary exponent
D3DX_16F_RADIX = 2; // exponent radix
D3DX_16F_ROUNDS = 1; // addition rounding: near
type
PD3DXFloat16 = ^TD3DXFloat16;
TD3DXFloat16 = packed record
Value : Word;
end;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -