📄 3dmaths.inc
字号:
{* ______ ___ ___
* /\ _ \ /\_ \ /\_ \
* \ \ \L\ \\//\ \ \//\ \ __ __ _ __ ___
* \ \ __ \ \ \ \ \ \ \ /'__`\ /'_ `\/\`'__\/ __`\
* \ \ \/\ \ \_\ \_ \_\ \_/\ __//\ \L\ \ \ \//\ \L\ \
* \ \_\ \_\/\____\/\____\ \____\ \____ \ \_\\ \____/
* \/_/\/_/\/____/\/____/\/____/\/___L\ \/_/ \/___/
* /\____/
* \_/__/
*
* 3D oriented math routines.
*
* By Shawn Hargreaves.
*
* See readme.txt for copyright information.
*}
{$IFDEF ALLEGRO_INTERFACE}
var
vector_length: function(x, y, z: fixed): fixed; cdecl;
vector_length_f: function(x, y, z: single): single; cdecl;
normalize_vector: procedure(x, y, z: p_fixed); cdecl;
normalize_vector_f: procedure(x, y, z: p_single); cdecl;
cross_product: procedure(x1, y_1, z1, x2, y2, z2: fixed; var xout, yout, zout: fixed); cdecl;
cross_product_f: procedure(x1, y_1, z1, x2, y2, z2: single; var xout, yout, zout: single); cdecl;
_persp_xscale: p_fixed;
_persp_yscale: p_fixed;
_persp_xoffset: p_fixed;
_persp_yoffset: p_fixed;
_persp_xscale_f: p_single;
_persp_yscale_f: p_single;
_persp_xoffset_f: p_single;
_persp_yoffset_f: p_single;
set_projection_viewport: procedure(x, y, w, h: sint32); cdecl;
quat_to_matrix: procedure(const q: P_QUAT; var m: MATRIX_f); cdecl;
matrix_to_quat: procedure(const m: P_MATRIX_f; var q: QUAT); cdecl;
{$ENDIF ALLEGRO_INTERFACE}
{$IFDEF ALLEGRO_IMPLEMENTATION}
{$ENDIF ALLEGRO_IMPLEMENTATION}
{$IFDEF ALLEGRO_LOADVARIABLE}
vector_length := LoadDLL('vector_length');
vector_length_f := LoadDLL('vector_length_f');
normalize_vector := LoadDLL('normalize_vector');
normalize_vector_f := LoadDLL('normalize_vector_f');
cross_product := LoadDLL('cross_product');
cross_product_f := LoadDLL('cross_product_f');
_persp_xscale := LoadDLL('_persp_xscale');
_persp_yscale := LoadDLL('_persp_yscale');
_persp_xoffset := LoadDLL('_persp_xoffset');
_persp_yoffset := LoadDLL('_persp_yoffset');
_persp_xscale_f := LoadDLL('_persp_xscale_f');
_persp_yscale_f := LoadDLL('_persp_yscale_f');
_persp_xoffset_f := LoadDLL('_persp_xoffset_f');
_persp_yoffset_f := LoadDLL('_persp_yoffset_f');
set_projection_viewport := LoadDLL('set_projection_viewport');
quat_to_matrix := LoadDLL('quat_to_matrix');
matrix_to_quat := LoadDLL('matrix_to_quat');
{$ENDIF ALLEGRO_LOADVARIABLE}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -