ランタイム
Common.h File Reference

共通インクルードファイル More...

#include <windows.h>
#include <vector>
#include <list>
#include <map>
#include "Mix/String.h"
#include "Mix/Point.h"
#include "Mix/Rectangle.h"
#include "Mix/RectangleF.h"
#include "Mix/Vector2.h"
#include "Mix/Vector3.h"
#include "Mix/Vector4.h"
#include "Mix/Quaternion.h"
#include "Mix/Matrix3x3.h"
#include "Mix/Matrix4x4.h"
Include dependency graph for Common.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  MIX_DEBUGNAME_STRUCT
 デバッグ名構造体 More...
 
struct  Mix::Memory::SECTION_INFO
 セクション情報構造体 More...
 
class  Mix::Memory::STLAllocator< ST, T >
 STL アロケータテンプレートクラス More...
 
struct  Mix::Parallel::WORK
 ワーク構造体 More...
 
struct  Mix::Parallel::DEBUG_FUNC_INFO
 デバッグ : ファンクション情報構造体 More...
 
struct  Mix::Parallel::DEBUG_THREAD_INFO
 デバッグ : スレッド情報構造体 More...
 
struct  Mix::Graphics::SHADER_MACRO
 シェーダーマクロ構造体 More...
 
struct  Mix::Graphics::VERTEX_ELEMENT
 バーテックスエレメント構造体 More...
 
struct  Mix::Graphics::RASTERIZER_DESC
 ラスタライザステート構造体 More...
 
struct  Mix::Graphics::DEPTH_DESC
 デプスステート構造体 More...
 
struct  Mix::Graphics::BLEND_DESC
 ブレンドステート構造体 More...
 
struct  Mix::Dynamics::WORLD_CONFIG
 ワールド設定構造体 More...
 
struct  Mix::Dynamics::MATERIAL
 マテリアル構造体 More...
 
struct  Mix::Dynamics::MESH
 メッシュ構造体 More...
 
struct  Mix::Dynamics::MANIFOLD_MESH
 マニフォールドメッシュ構造体 More...
 
struct  Mix::Dynamics::MANIFOLD_POINT
 マニフォールドポイント構造体 More...
 
struct  Mix::Dynamics::MANIFOLD
 マニフォールド構造体 More...
 
struct  Mix::Dynamics::TEST_LOCAL_RESULT
 ローカルの交差判定結果構造体 More...
 
struct  Mix::Dynamics::VEHICLE_WHEEL_DESC
 ビハイクルホイール構造体 More...
 
struct  Mix::Dynamics::DEBUG_WORLD_PROFILE
 デバッグ : ワールドプロファイル More...
 
struct  Mix::Scene::MOTION_HANDLE
 モーションハンドル構造体 More...
 
struct  Mix::Scene::MOTION_COMMAND
 モーションコマンド構造体 More...
 
struct  Mix::Scene::MOTION_ENTRY_DESC
 モーションエントリー構造体 More...
 
struct  Mix::Scene::RENDERER_OCTREE_CONFIG
 レンダラー : 八分木設定構造体 More...
 
struct  Mix::Scene::RENDERER_CONFIG
 レンダラー設定構造体 More...
 
struct  Mix::Scene::CAMERA_CONFIG
 カメラ設定構造体 More...
 
struct  Mix::Scene::BRIGHT_PASS
 ブライトパス構造体 More...
 
struct  Mix::Scene::BLUR
 ブラー構造体 More...
 
struct  Mix::Scene::DYNAMICS_CONTACT_POINT
 接触ポイント構造体 More...
 
struct  Mix::Scene::DEBUG_PROFILE_RENDERER_GENERAL
 デバッグ : レンダラー : ジェネラルプロファイル構造体 More...
 
struct  Mix::Scene::DEBUG_PROFILE_RENDERER_DYNAMICS
 デバッグ : レンダラー : ダイナミクスプロファイル構造体 More...
 
struct  Mix::Scene::DEBUG_PROFILE_RENDERER_OCTREE
 デバッグ : レンダラー : 八分木プロファイル構造体 More...
 
struct  Mix::Scene::DEBUG_PROFILE_CAMERA_GENERAL
 デバッグ : カメラ : ジェネラルプロファイル構造体 More...
 
struct  Mix::Scene::DEBUG_PROFILE_CAMERA_OCTREE
 デバッグ : カメラ : 八分木プロファイル構造体 More...
 
struct  Mix::Scene::DEBUG_PROFILE_CAMERA_LIGHT
 デバッグ : カメラ : ライトプロファイル構造体 More...
 
struct  Mix::Scene::DEBUG_PROFILE_CAMERA_WATER_POOL
 デバッグ : カメラ : ウォータープールプロファイル More...
 
struct  Mix::Scene::DEBUG_PROFILE_CAMERA_WIDGET
 デバッグ : カメラ : ウィジェットプロファイル構造体 More...
 
struct  Mix::Scene::DEBUG_PROFILE_CAMERA_WIDGET::DEBUG_PROFILE_LEAVING_PARTICLE
 デバッグ : リービングパーティクルプロファイル構造体 More...
 
struct  Mix::Scene::DEBUG_PROFILE_CAMERA_WIDGET::DEBUG_PROFILE_SCATTER_PARTICLE
 デバッグ : スキャッターパーティクルプロファイル構造体 More...
 
struct  Mix::Scene::DEBUG_PROFILE_CAMERA_WIDGET::DEBUG_PROFILE_PLANTER
 デバッグ : プランタープロファイル構造体 More...
 
struct  Mix::Scene::DEBUG_PROFILE_CAMERA_MODEL
 デバッグ : カメラ : モデルプロファイル構造体 More...
 
struct  Mix::Scene::DEBUG_PROFILE_CAMERA_PROJ_SHADOW
 デバッグ : カメラ : シャドウ投影プロファイル構造体 More...
 
struct  Mix::Scene::DEBUG_PROFILE_CAMERA_DRAW_OPACITY
 デバッグ : カメラ : 不透明描画プロファイル構造体 More...
 
struct  Mix::Scene::DEBUG_PROFILE_CAMERA_DRAW_NEUTRALITY
 デバッグ : カメラ : 不透明描画と半透明描画( 屈折描画含む )の間の描画プロファイル構造体 More...
 
struct  Mix::Scene::DEBUG_PROFILE_CAMERA_DRAW_REFRACT
 デバッグ : カメラ : 屈折描画プロファイル構造体 More...
 
struct  Mix::Scene::DEBUG_PROFILE_CAMERA_DRAW_TRANSPARENCY
 デバッグ : カメラ : 半透明プロファイル構造体 More...
 
struct  Mix::Scene::DEBUG_PROFILE_CAMERA_POST_PROCESS
 デバッグ : カメラ : ポストプロセスプロファイル構造体 More...
 
struct  Mix::ENGINE_CONFIG
 エンジン設定構造体 More...
 

Namespaces

 Mix::Memory
 メモリ
 
 Mix
 ミックス
 
 Mix::IO
 入出力
 
 Mix::HID
 ヒューマンインターフェースデバイス
 
 Mix::Parallel
 パラレル
 
 Mix::Geometry
 ジオメトリ
 
 Mix::Graphics
 グラフィックス
 
 Mix::Graphics::Utility
 グラフィックス ( ユーティリティ )
 
 Mix::Sound
 サウンド
 
 Mix::Dynamics
 ダイナミクス
 
 Mix::Scene
 シーン
 

Macros

DLL
#define _MIX_DLL_API   __declspec( dllimport )
 DLLインポート定義 More...
 
アサート

致命的なエラーをメッセージボックスで表示した後、アプリケーションを強制終了します。

#define MIX_ASSERT(cnd)
 標準のアサート More...
 
#define MIX_ASSERT_EX_W(cnd, mes, ...)
 拡張アサート ( ユニコード ) More...
 
#define MIX_ASSERT_EX_A(cnd, mes, ...)
 拡張アサート ( マルチバイト ) More...
 
#define MIX_ASSERT_EX   MIX_ASSERT_EX_W
 標準の拡張アサート More...
 
エラー

エラーをメッセージボックスとして表示します。
また、アサートのようにアプリケーションは強制終了しません。

#define MIX_ERROR_W(mes, ...)
 エラー ( ユニコード ) More...
 
#define MIX_ERROR_A(mes, ...)
 エラー ( マルチバイト ) More...
 
#define MIX_ERROR   MIX_ERROR_W
 標準のエラーの通知 More...
 
トレース

デバッガの出力に表示します。

#define MIX_TRACE_W(fmt, ...)
 トレース ( ユニコード ) More...
 
#define MIX_TRACE_A(fmt, ...)
 トレース ( マルチバイト ) More...
 
#define MIX_TRACE   MIX_TRACE_W
 標準のトレース More...
 
#define MIX_TRACELINE_W(fmt, ...)
 トレースライン ( ユニコード ) More...
 
#define MIX_TRACELINE_A(fmt, ...)
 トレースライン ( マルチバイト ) More...
 
#define MIX_TRACELINE   MIX_TRACELINE_W
 標準のトレースライン More...
 
デバッグ
#define MIX_DEBUGNAME   MIX_DEBUGNAME_STRUCT( __FILEW__, __LINE__ )
 デバッグ名 More...
 
#define MIX_DEBUGNAME_T(title)   MIX_DEBUGNAME_STRUCT( title, __FILEW__, __LINE__ )
 デバッグ名( タイトルあり ) More...
 
変数のキャスト
#define MIX_IT_TO_I8(value)   Mix::IntT_ToInt8( value )
 IntT から Int8 にキャストします More...
 
#define MIX_IT_TO_I16(value)   Mix::IntT_ToInt16( value )
 IntT から Int16 にキャストします More...
 
#define MIX_IT_TO_I32(value)   value
 IntT から Int32 にキャストします More...
 
#define MIX_IT64_TO_IT(value)   Mix::Int64_ToIntT( value )
 Int64 から IntT にキャストします More...
 
#define MIX_IT_TO_UI8(value)   Mix::IntT_ToUInt8( value )
 IntT から UInt8 にキャストします More...
 
#define MIX_IT_TO_UI16(value)   Mix::IntT_ToUInt16( value )
 IntT から UInt16 にキャストします More...
 
#define MIX_IT_TO_UI32(value)   Mix::IntT_ToUInt32( value )
 IntT から UInt32 にキャストします More...
 
#define MIX_UIT_TO_UI8(value)   Mix::UIntT_ToUInt8( value )
 UIntT から UInt8 にキャストします More...
 
#define MIX_UIT_TO_UI16(value)   Mix::UIntT_ToUInt16( value )
 UIntT から UInt16 にキャストします More...
 
#define MIX_UIT_TO_UI32(value)   value
 UIntT から UInt32 にキャストします More...
 
#define MIT_UI64_TO_UIT(value)   Mix::UInt64_ToUIntT( value )
 UInt64 から UIntT にキャストします More...
 
#define MIX_UIT_TO_I8(value)   Mix::UIntT_ToInt8( value )
 UIntT から Int8 にキャストします More...
 
#define MIX_UIT_TO_I16(value)   Mix::UIntT_ToInt16( value )
 UIntT から Int16 にキャストします More...
 
#define MIX_UIT_TO_I32(value)   Mix::UIntT_ToInt32( value )
 UIntT から Int32 にキャストします More...
 
アラインメント
#define MIX_ALIGN(n)   _declspec( align( n ) )
 アラインメントを指定します More...
 
#define MIX_ALIGN_16   _declspec( align( 16 ) )
 アラインメントを 16Byte で指定します More...
 
参照カウンタ ( Mix::Reference )
#define MIX_ADD_REF(x)
 Mix::Release インターフェースを継承したクラスの参照カウンタをインクリメントします More...
 
#define MIX_RELEASE(x)
 Mix::Release インターフェースを継承したクラスの参照カウンタをデクリメントします More...
 
ビット判定
#define MIX_SETBIT(flags, bit)
 ビットをセットします More...
 
#define MIX_RESETBIT(flags, bit)
 ビットをリセットします More...
 
#define MIX_TESTBIT(flags, bit)   ( ( flags ) & ( bit ) )
 ビットをテストします More...
 
算術関係
#define MIX_PI   3.141592654f
 円周率 More...
 
#define MIX_2PI   6.283185308f
 円周率 * 2 More...
 
#define MIX_4PI   12.566370616f
 円周率 * 4 More...
 
#define MIX_HALF_PI   1.570796327f
 円周率 / 2 More...
 
#define MIX_QUARTER_PI   0.7853981635f
 円周率 / 4 More...
 
#define MIX_FLOAT_MIN   1.175494351e-38F
 浮動小数点の最小値 More...
 
#define MIX_FLOAT_MAX   3.402823466e+38F
 浮動小数点の最大値 More...
 
#define MIX_FLOAT_EPSILON   1.192092896e-07F
 浮動小数点イプシロン More...
 
#define MIX_TO_RAD(x)   ( MIX_PI * ( x ) / 180.0f )
 指定された角度(度数法)をラジアン単位に変換します More...
 
#define MIX_TO_DEG(x)   ( ( x ) * 180.0f / MIX_PI )
 指定された角度(ラジアン)を度数法に変換します More...
 
#define MIX_FLOAT_IS_ZERO(a)   ( ( -MIX_FLOAT_EPSILON < ( a ) ) && ( MIX_FLOAT_EPSILON > ( a ) ) )
 浮動小数点の値が0かどうかを返します More...
 
#define MIX_FLOAT_EQUAL(a, b)   ( ( ( ( a ) - MIX_FLOAT_EPSILON ) <= ( b ) ) && ( ( ( a ) + MIX_FLOAT_EPSILON ) >= ( b ) ) )
 浮動小数点の値が等しいかどうかを返します More...
 
#define MIX_FLOAT_RECIPROCAL(a)   ( ( MIX_FLOAT_IS_ZERO( a ) == False )? ( 1.0f / ( a ) ) : 0.0f )
 a の逆数を求めます More...
 
#define MIX_FLOAT_DIV(a, b)   ( ( MIX_FLOAT_IS_ZERO( b ) == False )? ( ( a ) / ( b ) ) : 0.0f )
 a を b で除算します More...
 
#define MIX_FLOAT_SATURATE(a)   ( ( ( a ) < MIX_FLOAT_EPSILON )? 0.0f : ( ( a ) > 1.0f )? 1.0f : ( a ) )
 a を 0.0f〜1.0f に飽和します More...
 
#define MIX_CLAMP(a, b, c)   ( ( ( b ) > ( a ) )? ( b ) : ( ( c ) < ( a ) )? ( c ) : ( a ) )
 b <= a >= c になるように a を飽和します More...
 
Mix のメモリ管理を使用した、メモリの確保、解放
#define MIX_MALLOC(size)   Mix::Memory::Allocate( Mix::Memory::SECTION_USER, size, __FILEW__, __LINE__ )
 メモリを、指定したサイズで確保します More...
 
#define MIX_MALLOC_T(T, count)   static_cast<T*>( Mix::Memory::Allocate( Mix::Memory::SECTION_USER, sizeof( T ) * count, __FILEW__, __LINE__ ) )
 メモリを、指定した型、数で確保します More...
 
#define MIX_ALIGNED_MALLOC(alignment, size)   Mix::Memory::Allocate( Mix::Memory::SECTION_USER, alignment, size, __FILEW__, __LINE__ )
 メモリを、指定したアライメント、サイズで確保します More...
 
#define MIX_ALIGNED_MALLOC_T(alignment, T, count)   static_cast<T*>( Mix::Memory::Allocate( Mix::Memory::SECTION_USER, alignment, sizeof( T ) * count, __FILEW__, __LINE__ ) )
 メモリを、指定したアライメント、型、数で確保します More...
 
#define MIX_REALLOC(ptr, size)   Mix::Memory::Reallocate( ptr, size )
 指定したメモリを指定したサイズで再確保します More...
 
#define MIX_REALLOC_T(ptr, T, count)   static_cast<T*>( Mix::Memory::Reallocate( ptr, sizeof( T ) * count ) )
 指定したメモリを、指定した型、サイズで再確保します More...
 
#define MIX_FREE(ptr)
 MIX_MALLOC もしくわ MIX_ALIGNED_MALLOC によって確保されたメモリを解放します More...
 
Mix のメモリ管理を使用した、インスタンスの作成、削除
#define MIX_DECLARE_ALLOCATOR()
 クラスにアロケータの定義を追加します More...
 
#define MIX_NEW_T(T, ...)   new( Mix::Memory::SECTION_USER, __FILEW__, __LINE__ ) T( __VA_ARGS__ )
 新しいインスタンスを指定した、インスタンスの型、コンストラクタに渡す引数で作成します More...
 
#define MIX_ALIGNED_NEW_T(align, T, ...)   new( Mix::Memory::SECTION_USER, align, __FILEW__, __LINE__ ) T( __VA_ARGS__ )
 新しいインスタンスを指定した、アライメント、インスタンスの型、コンストラクタに渡す引数で作成します More...
 
#define MIX_DELETE_T(T, ptr)
 MIX_NEW_T または MIX_ALIGNED_NEW_T によって作成されたインスタンスを削除します More...
 
#define MIX_DELETE_THIS_T(T, ptr)
 MIX_NEW_T または MIX_ALIGNED_NEW_T によって作成された自身のインスタンスを削除します More...
 
#define MIX_NEW_ARRAY_T(T, count)   new( Mix::Memory::SECTION_USER, __FILEW__, __LINE__ ) T[count]
 新しいインスタンス配列を指定した、インスタンスの型、配列の要素の数で作成します More...
 
#define MIX_ALIGNED_NEW_ARRAY_T(align, T, count)   new( Mix::Memory::SECTION_USER, align, __FILEW__, __LINE__ ) T[count]
 新しいインスタンス配列を指定した、アライメント、インスタンスの型、配列の要素の数で作成します More...
 
#define MIX_DELETE_ARRAY_T(T, ptr)
 MIX_NEW_T によって作成されたインスタンス配列を削除します More...
 
#define MIX_DELETE_PTR_ARRAY_T(ptr)
 MIX_NEW_ARRAY_T または MIX_ALIGNED_NEW_ARRAY_T によって作成されたインスタンスのポインタ配列を削除します More...
 
標準のメモリ管理を使用した、インスタンスの作成、削除
#define MIX_NEW   new
 新しいインスタンスを作成します More...
 
#define MIX_DELETE(x)
 MIX_NEW によって作成されたインスタンスを削除します More...
 
#define MIX_DELETE_ARRAY(x)
 MIX_NEW によって作成されたインスタンス配列を削除します More...
 
#define MIX_DELETE_THIS(x)   delete x
 MIX_NEW によって作成された自身のインスタンスを削除します More...
 

Typedefs

template<typename T >
using Mix::Memory::STLDefaultAllocator = STLAllocator< Mix::Memory::SECTION_USER, T >
 STL のデフォルトアロケータ More...
 
typedef void __stdcall Mix::Parallel::Function(UInt32 threadNum, UInt32 threadIndex, void *pData)
 ファンクション More...
 
typedef Function * Mix::Parallel::FunctionPtr
 Mix::Parallel::Function のポインタ More...
 
typedef void __stdcall Mix::MessageProc(HWND hWnd, UInt32 message, WPARAM wParam, LPARAM lParam, void *pData)
 メッセージプロシージャー More...
 
typedef MessageProc * Mix::MessageProcPtr
 Mix::MessageProc のポインタ More...
 

Enumerations

enum  Mix::Memory::SECTION_TYPE {
  Mix::Memory::SECTION_GENERAL = 0, Mix::Memory::SECTION_GRAPHICS = 1, Mix::Memory::SECTION_SOUND = 2, Mix::Memory::SECTION_DYNAMICS = 3,
  Mix::Memory::SECTION_SCENE = 4, Mix::Memory::SECTION_USER = 5
}
 セクションタイプ列挙定数 More...
 
enum  Mix::IO::SEEK_METHOD { Mix::IO::SEEK_METHOD_BEGIN = 0, Mix::IO::SEEK_METHOD_CURRENT = 1, Mix::IO::SEEK_METHOD_END = 2 }
 シーク方式列挙定数 More...
 
enum  Mix::IO::SPECIAL_DIRECTORY_TYPE { Mix::IO::SPDIR_APPDATA = 1, Mix::IO::SPDIR_DESKTOP = 2, Mix::IO::SPDIR_MYDOCUMENT = 3 }
 特殊ディレクトリタイプ列挙定数 More...
 
enum  Mix::HID::KEY {
  Mix::HID::KEY_F1 = 1, Mix::HID::KEY_F2 = 2, Mix::HID::KEY_F3 = 3, Mix::HID::KEY_F4 = 4,
  Mix::HID::KEY_F5 = 5, Mix::HID::KEY_F6 = 6, Mix::HID::KEY_F7 = 7, Mix::HID::KEY_F8 = 8,
  Mix::HID::KEY_F9 = 9, Mix::HID::KEY_F10 = 10, Mix::HID::KEY_F11 = 11, Mix::HID::KEY_F12 = 12,
  Mix::HID::KEY_0 = 13, Mix::HID::KEY_1 = 14, Mix::HID::KEY_2 = 15, Mix::HID::KEY_3 = 16,
  Mix::HID::KEY_4 = 17, Mix::HID::KEY_5 = 18, Mix::HID::KEY_6 = 19, Mix::HID::KEY_7 = 20,
  Mix::HID::KEY_8 = 21, Mix::HID::KEY_9 = 22, Mix::HID::KEY_NP0 = 23, Mix::HID::KEY_NP1 = 24,
  Mix::HID::KEY_NP2 = 25, Mix::HID::KEY_NP3 = 26, Mix::HID::KEY_NP4 = 27, Mix::HID::KEY_NP5 = 28,
  Mix::HID::KEY_NP6 = 29, Mix::HID::KEY_NP7 = 30, Mix::HID::KEY_NP8 = 31, Mix::HID::KEY_NP9 = 32,
  Mix::HID::KEY_A = 33, Mix::HID::KEY_B = 34, Mix::HID::KEY_C = 35, Mix::HID::KEY_D = 36,
  Mix::HID::KEY_E = 37, Mix::HID::KEY_F = 38, Mix::HID::KEY_G = 39, Mix::HID::KEY_H = 40,
  Mix::HID::KEY_I = 41, Mix::HID::KEY_J = 42, Mix::HID::KEY_K = 43, Mix::HID::KEY_L = 44,
  Mix::HID::KEY_M = 45, Mix::HID::KEY_N = 46, Mix::HID::KEY_O = 47, Mix::HID::KEY_P = 48,
  Mix::HID::KEY_Q = 49, Mix::HID::KEY_R = 50, Mix::HID::KEY_S = 51, Mix::HID::KEY_T = 52,
  Mix::HID::KEY_U = 53, Mix::HID::KEY_V = 54, Mix::HID::KEY_W = 55, Mix::HID::KEY_X = 56,
  Mix::HID::KEY_Y = 57, Mix::HID::KEY_Z = 58, Mix::HID::KEY_UP = 59, Mix::HID::KEY_DOWN = 60,
  Mix::HID::KEY_LEFT = 61, Mix::HID::KEY_RIGHT = 62, Mix::HID::KEY_ESCAPE = 63, Mix::HID::KEY_TAB = 64,
  Mix::HID::KEY_BACKSPACE = 65, Mix::HID::KEY_DELETE = 66, Mix::HID::KEY_SPACE = 67, Mix::HID::KEY_RETURN = 68,
  Mix::HID::KEY_SHIFT = 69, Mix::HID::KEY_LSHIFT = 70, Mix::HID::KEY_RSHIFT = 71, Mix::HID::KEY_CTRL = 72,
  Mix::HID::KEY_LCTRL = 73, Mix::HID::KEY_RCTRL = 74, Mix::HID::KEY_ALT = 75, Mix::HID::KEY_LALT = 76,
  Mix::HID::KEY_RALT = 77, Mix::HID::KEY_MAX = 78
}
 キーコード列挙定数 More...
 
enum  Mix::HID::GAMEPAD_API { Mix::HID::GAMEPAD_UNKNOWN = 0, Mix::HID::GAMEPAD_XINPUT = 1, Mix::HID::GAMEPAD_DIRECTINPUT = 2 }
 ゲームパッド API 列挙定数 More...
 
enum  Mix::HID::GAMEPAD_CONSTANT { Mix::HID::GAMEPAD_TRIGGER_RESOLUTION = 255, Mix::HID::GAMEPAD_STICK_RESOLUTION = 32767, Mix::HID::GAMEPAD_LEFT = 0, Mix::HID::GAMEPAD_RIGHT = 1 }
 ゲームパッド定数列挙定数 More...
 
enum  Mix::HID::GAMEPAD_PORT {
  Mix::HID::GAMEPAD_XI_A = 0, Mix::HID::GAMEPAD_XI_B = 1, Mix::HID::GAMEPAD_XI_C = 2, Mix::HID::GAMEPAD_XI_D = 3,
  Mix::HID::GAMEPAD_DI_A = 4, Mix::HID::GAMEPAD_DI_B = 5, Mix::HID::GAMEPAD_DI_C = 6, Mix::HID::GAMEPAD_DI_D = 7,
  Mix::HID::GAMEPAD_PORT_MAX = 8
}
 ゲームパッドポート列挙定数 More...
 
enum  Mix::HID::GAMEPAD_BUTTON {
  Mix::HID::GAMEPAD_POV_UP = 0, Mix::HID::GAMEPAD_POV_DOWN = 1, Mix::HID::GAMEPAD_POV_LEFT = 2, Mix::HID::GAMEPAD_POV_RIGHT = 3,
  Mix::HID::GAMEPAD_START = 4, Mix::HID::GAMEPAD_BACK = 5, Mix::HID::GAMEPAD_STICK_LEFT = 6, Mix::HID::GAMEPAD_STICK_RIGHT = 7,
  Mix::HID::GAMEPAD_SHOULDER_LEFT = 8, Mix::HID::GAMEPAD_SHOULDER_RIGHT = 9, Mix::HID::GAMEPAD_A = 10, Mix::HID::GAMEPAD_B = 11,
  Mix::HID::GAMEPAD_X = 12, Mix::HID::GAMEPAD_Y = 13, Mix::HID::GAMEPAD_BUTTON_MAX = 14
}
 ゲームパッドボタン列挙定数 More...
 
enum  Mix::HID::SWITCH_STATE { Mix::HID::PRESSED = 0x00000001, Mix::HID::RELEASED = 0x00000002, Mix::HID::DOWN = 0x00000004 }
 スイッチステート列挙定数 More...
 
enum  Mix::Parallel::DEBUG_ID { Mix::Parallel::DEBUG_DYNAMICS_COLLISION_DISPATCHER = 0, Mix::Parallel::DEBUG_DYNAMICS_JOINT_SOLVER = 1, Mix::Parallel::DEBUG_USER = 2 }
 デバッグ用識別子 列挙定数 More...
 
enum  Mix::Graphics::SHADER_MODEL { Mix::Graphics::SHADER_MODEL_3 = 0, Mix::Graphics::SHADER_MODEL_4 = 1, Mix::Graphics::SHADER_MODEL_5 = 2 }
 シェーダーモデル列挙定数 More...
 
enum  Mix::Graphics::VERTEX_ELEMENT_SEMANTIC {
  Mix::Graphics::VLS_POSITION = 0, Mix::Graphics::VLS_BLENDWEIGHT = 1, Mix::Graphics::VLS_BLENDINDICES = 2, Mix::Graphics::VLS_NORMAL = 3,
  Mix::Graphics::VLS_PSIZE = 4, Mix::Graphics::VLS_TEXTURE = 5, Mix::Graphics::VLS_TANGENT = 6, Mix::Graphics::VLS_BINORMAL = 7,
  Mix::Graphics::VLS_COLOR = 8
}
 バーテックスエレメントセマンティック列挙定数 More...
 
enum  Mix::Graphics::VERTEX_ELEMENT_FORMAT {
  Mix::Graphics::VLF_FLOAT32_1 = 0, Mix::Graphics::VLF_FLOAT32_2 = 1, Mix::Graphics::VLF_FLOAT32_3 = 2, Mix::Graphics::VLF_FLOAT32_4 = 3,
  Mix::Graphics::VLF_UINT8_4 = 4, Mix::Graphics::VLF_INT16_2 = 5, Mix::Graphics::VLF_INT16_4 = 6, Mix::Graphics::VLF_UINT8_4N = 7,
  Mix::Graphics::VLF_INT16_2N = 8, Mix::Graphics::VLF_INT16_4N = 9, Mix::Graphics::VLF_UINT16_2N = 10, Mix::Graphics::VLF_UINT16_4N = 11,
  Mix::Graphics::VLF_FLOAT16_2 = 12, Mix::Graphics::VLF_FLOAT16_4 = 13
}
 バーテックスエレメントフォーマット列挙定数 More...
 
enum  Mix::Graphics::SHADER_TARGET {
  Mix::Graphics::VS_3_0 = 0, Mix::Graphics::PS_3_0 = 1, Mix::Graphics::CS_4_0 = 2, Mix::Graphics::GS_4_0 = 3,
  Mix::Graphics::VS_4_0 = 4, Mix::Graphics::PS_4_0 = 5, Mix::Graphics::CS_4_1 = 6, Mix::Graphics::GS_4_1 = 7,
  Mix::Graphics::VS_4_1 = 8, Mix::Graphics::PS_4_1 = 9, Mix::Graphics::CS_5_0 = 10, Mix::Graphics::DS_5_0 = 11,
  Mix::Graphics::GS_5_0 = 12, Mix::Graphics::HS_5_0 = 13, Mix::Graphics::VS_5_0 = 14, Mix::Graphics::PS_5_0 = 15
}
 シェーダーターゲット列挙定数 More...
 
enum  Mix::Graphics::FILL_TYPE { Mix::Graphics::FILL_WIREFRAME = 0, Mix::Graphics::FILL_SOLID = 1 }
 描画タイプ列挙定数 More...
 
enum  Mix::Graphics::CULL_TYPE { Mix::Graphics::CULL_NONE = 0, Mix::Graphics::CULL_FRONT = 1, Mix::Graphics::CULL_BACK = 2 }
 カリングタイプ列挙定数 More...
 
enum  Mix::Graphics::BLEND_TYPE {
  Mix::Graphics::BLEND_COPY = 0, Mix::Graphics::BLEND_NORMAL = 1, Mix::Graphics::BLEND_ADD = 2, Mix::Graphics::BLEND_SUB = 3,
  Mix::Graphics::BLEND_MUL = 4, Mix::Graphics::BLEND_SCREEN = 5
}
 ブレンドタイプ列挙定数 More...
 
enum  Mix::Graphics::ZFUNC_TYPE {
  Mix::Graphics::ZFUNC_ALWAYS = 0, Mix::Graphics::ZFUNC_NEVER = 1, Mix::Graphics::ZFUNC_LESS = 2, Mix::Graphics::ZFUNC_EQUAL = 3,
  Mix::Graphics::ZFUNC_LESSEQUAL = 4, Mix::Graphics::ZFUNC_GREATER = 5, Mix::Graphics::ZFUNC_NOTEQUAL = 6, Mix::Graphics::ZFUNC_GREATEREQUAL = 7
}
 Zファンクション列挙定数 More...
 
enum  Mix::Graphics::TEXTURE_FILTER_TYPE { Mix::Graphics::TEXTURE_FILTER_POINT = 0, Mix::Graphics::TEXTURE_FILTER_LINEAR = 1, Mix::Graphics::TEXTURE_FILTER_ANISOTROPIC = 2 }
 テクスチャフィルタタイプ列挙定数 More...
 
enum  Mix::Graphics::TEXTURE_ADDRESS_TYPE { Mix::Graphics::TEXTURE_ADDRESS_WRAP = 0, Mix::Graphics::TEXTURE_ADDRESS_CLAMP = 1 }
 テクスチャー座標の解決手法列挙定数 More...
 
enum  Mix::Graphics::CUBEMAP_FACE {
  Mix::Graphics::CUBEMAP_FACE_POSITIVE_X = 0, Mix::Graphics::CUBEMAP_FACE_NEGATIVE_X = 1, Mix::Graphics::CUBEMAP_FACE_POSITIVE_Y = 2, Mix::Graphics::CUBEMAP_FACE_NEGATIVE_Y = 3,
  Mix::Graphics::CUBEMAP_FACE_POSITIVE_Z = 4, Mix::Graphics::CUBEMAP_FACE_NEGATIVE_Z = 5
}
 キューブマップのフェイス列挙定数 More...
 
enum  Mix::Graphics::FORMAT {
  Mix::Graphics::FMT_UNKNOWN = 0, Mix::Graphics::FMT_D16 = 1, Mix::Graphics::FMT_D32 = 2, Mix::Graphics::FMT_D24S8 = 3,
  Mix::Graphics::FMT_R8G8B8A8 = 4, Mix::Graphics::FMT_A8 = 5, Mix::Graphics::FMT_R16F = 6, Mix::Graphics::FMT_R32F = 7,
  Mix::Graphics::FMT_R16G16F = 8, Mix::Graphics::FMT_R32G32F = 9, Mix::Graphics::FMT_R16G16B16A16F = 10, Mix::Graphics::FMT_R32G32B32A32F = 11,
  Mix::Graphics::FMT_BC1 = 12, Mix::Graphics::FMT_BC2 = 13, Mix::Graphics::FMT_BC3 = 14
}
 フォーマット列挙定数 More...
 
enum  Mix::Graphics::INDEX_FORMAT { Mix::Graphics::INDEX_USHORT = 0, Mix::Graphics::INDEX_UINT = 1 }
 インデックスフォーマット列挙定数 More...
 
enum  Mix::Graphics::QUERY_FORMAT { Mix::Graphics::QUERY_EVENT = 0, Mix::Graphics::QUERY_OCCLUSION = 1 }
 クエリフォーマット列挙定数 More...
 
enum  Mix::Graphics::PRIMITIVE_TYPE {
  Mix::Graphics::PRIMITIVE_POINTLIST = 0, Mix::Graphics::PRIMITIVE_LINELIST = 1, Mix::Graphics::PRIMITIVE_LINESTRIP = 2, Mix::Graphics::PRIMITIVE_TRIANGLELIST = 3,
  Mix::Graphics::PRIMITIVE_TRIANGLESTRIP = 4
}
 プリミティブタイプ列挙定数 More...
 
enum  Mix::Graphics::COLOR_WRITE_MASK { Mix::Graphics::COLOR_WRITE_RGBA = 0, Mix::Graphics::COLOR_WRITE_RGB = 1, Mix::Graphics::COLOR_WRITE_A = 2 }
 カラー書き込みマスク列挙定数 More...
 
enum  Mix::Graphics::Utility::STRING_FLAGS { Mix::Graphics::Utility::SF_HCENTER = 0x00000001, Mix::Graphics::Utility::SF_VCENTER = 0x00000002, Mix::Graphics::Utility::SF_WORDBREAK = 0x00000004 }
 文字列フラグ列挙定数 More...
 
enum  Mix::Dynamics::AXIS_TYPE { Mix::Dynamics::AXIS_X = 0, Mix::Dynamics::AXIS_Y = 1, Mix::Dynamics::AXIS_Z = 2 }
 軸タイプ列挙定数 More...
 
enum  Mix::Dynamics::OBJECT_FILTER_FLAG {
  Mix::Dynamics::OF_DEFAULT = 0x0001, Mix::Dynamics::OF_STATIC = 0x0002, Mix::Dynamics::OF_KINEMATIC = 0x0004, Mix::Dynamics::OF_DEBRIS = 0x0008,
  Mix::Dynamics::OF_SENSOR = 0x0010, Mix::Dynamics::OF_CHARACTER = 0x0020, Mix::Dynamics::OF_ALL = ( OF_DEFAULT | OF_STATIC | OF_KINEMATIC | OF_DEBRIS | OF_SENSOR | OF_CHARACTER ), Mix::Dynamics::OF_DEFAULT_MASK = ( OF_DEFAULT | OF_STATIC | OF_KINEMATIC | OF_SENSOR ),
  Mix::Dynamics::OF_STATIC_MASK = ( OF_DEFAULT | OF_KINEMATIC | OF_DEBRIS | OF_SENSOR | OF_CHARACTER ), Mix::Dynamics::OF_KINEMATIC_MASK = ( OF_DEFAULT | OF_SENSOR ), Mix::Dynamics::OF_DEBRIS_MASK = ( OF_STATIC ), Mix::Dynamics::OF_SENSOR_MASK = ( OF_DEFAULT | OF_STATIC | OF_KINEMATIC ),
  Mix::Dynamics::OF_CHARACTER_MASK = ( OF_STATIC | OF_CHARACTER )
}
 オブジェクトフィルターフラグ列挙定数 More...
 
enum  Mix::Dynamics::DEBUG_DRAW_FLAG { Mix::Dynamics::DD_WIREFRAME = 0x00000001, Mix::Dynamics::DD_AXIS = 0x00000002, Mix::Dynamics::DD_JOINT_FRAME = 0x00000004, Mix::Dynamics::DD_JOINT_LIMIT = 0x00000008 }
 デバッグ描画のフラグ列挙定数 More...
 
enum  Mix::Dynamics::DEBUG_DRAW_COLOR_TYPE {
  Mix::Dynamics::DDC_RIGIDBODY_AROUSAL = 0, Mix::Dynamics::DDC_RIGIDBODY_ACTIVE = 1, Mix::Dynamics::DDC_RIGIDBODY_SLEEPY = 2, Mix::Dynamics::DDC_RIGIDBODY_REST = 3,
  Mix::Dynamics::DDC_RIGIDBODY_DISABLE = 4, Mix::Dynamics::DDC_SENSOR = 5, Mix::Dynamics::DDC_KINEMATIC_CHARACTER = 6, Mix::Dynamics::DDC_JOINT_FRAME = 7,
  Mix::Dynamics::DDC_JOINT_LIMIT = 8
}
 デバッグ描画のカラータイプ列挙定数 More...
 
enum  Mix::Scene::MOTION_CONSTANT { Mix::Scene::MOTION_INFINITE_LOOP = 0xFFFFFFFF }
 モーションの列挙定数 More...
 
enum  Mix::Scene::MOTION_RT_FLAG { Mix::Scene::MOTION_RT_ROTATION = 0x00000001, Mix::Scene::MOTION_RT_TRANSLATION = 0x00000002 }
 モーションのルートトランスフォームフラグ列挙定数 More...
 
enum  Mix::Scene::MOTION_CONDITION_FLAG {
  Mix::Scene::MOTION_COND_WATING = 0x00000001, Mix::Scene::MOTION_COND_ACTIVE = 0x00000002, Mix::Scene::MOTION_COND_CURRENT = 0x00000004, Mix::Scene::MOTION_COND_ALL = ( MOTION_COND_WATING | MOTION_COND_CURRENT ),
  Mix::Scene::MOTION_COND_CUR_ACTIVE = ( MOTION_COND_CURRENT | MOTION_COND_ACTIVE )
}
 モーション状態フラグ列挙定数 More...
 
enum  Mix::Scene::MOTION_COMMAND_EXECUTE_TYPE { Mix::Scene::MOTION_CE_DEFAULT = 0, Mix::Scene::MOTION_CE_EARLY = 1, Mix::Scene::MOTION_CE_FORCE = 2 }
 モーションコマンンド実行タイプ列挙定数 More...
 
enum  Mix::Scene::MOTION_COMMAND_FLAG {
  Mix::Scene::MOTION_CF_ACTIVATE = 0x00000001, Mix::Scene::MOTION_CF_FRAME = 0x00000002, Mix::Scene::MOTION_CF_LOOP = 0x00000004, Mix::Scene::MOTION_CF_TRANSITION = 0x00000008,
  Mix::Scene::MOTION_CF_FRAME_INHERIT = 0x00000010, Mix::Scene::MOTION_CF_LOOP_INHERIT = 0x00000020, Mix::Scene::MOTION_CF_TRANSITION_INHERIT = 0x00000040, Mix::Scene::MOTION_CF_SET_ALL = ( MOTION_CF_FRAME | MOTION_CF_LOOP | MOTION_CF_TRANSITION ),
  Mix::Scene::MOTION_CF_INHERIT = ( MOTION_CF_FRAME_INHERIT | MOTION_CF_LOOP_INHERIT | MOTION_CF_TRANSITION_INHERIT ), Mix::Scene::MOTION_CF_PLAY = ( MOTION_CF_ACTIVATE | MOTION_CF_SET_ALL ), Mix::Scene::MOTION_CF_PLAY_INHERIT = ( MOTION_CF_ACTIVATE | MOTION_CF_SET_ALL | MOTION_CF_INHERIT ), Mix::Scene::MOTION_CF_STOP = ( MOTION_CF_TRANSITION )
}
 モーションコマンドフラグ列挙定数 More...
 
enum  Mix::Scene::RENDERER_CAPABILITY_FLAG {
  Mix::Scene::RCAP_WIDGET = 0x00000001, Mix::Scene::RCAP_DYNAMICS = 0x00000002, Mix::Scene::RCAP_ATMOSPHERE = 0x00000004, Mix::Scene::RCAP_SHADOW_MAPPING = 0x00000008,
  Mix::Scene::RCAP_AMBIENT_OCCLUSION = 0x00000010, Mix::Scene::RCAP_LUMINOSITY = 0x00000020, Mix::Scene::RCAP_BLOOM = 0x00000040, Mix::Scene::RCAP_LIGHT_SHAFTS = 0x00000080,
  Mix::Scene::RCAP_LENS_FLARE = 0x00000100, Mix::Scene::RCAP_CHROMATISM = 0x00000200, Mix::Scene::RCAP_DEPTH_OF_FIELD = 0x00000400, Mix::Scene::RCAP_ALL
}
 レンダラー能力フラグ列挙定数 More...
 
enum  Mix::Scene::RENDERER_SAMPLING_RESOLUTION { Mix::Scene::RSMPL_DEFAULT = 0, Mix::Scene::RSMPL_DOWN2X = 1, Mix::Scene::RSMPL_DOWN4X = 2 }
 レンダラー : サンプリング解像度列挙定数 More...
 
enum  Mix::Scene::WATER_CONTAINS_RESULT { Mix::Scene::WCR_UNKNOWN = 0, Mix::Scene::WCR_FRONT = 1, Mix::Scene::WCR_BACK = 2, Mix::Scene::WCR_OVERLAP = 3 }
 水面との判定結果列挙定数 More...
 
enum  Mix::Scene::DYNAMICS_COLLIDER_MODE { Mix::Scene::DC_DEFAULT = 0, Mix::Scene::DC_STATIC = 1, Mix::Scene::DC_KINEMATIC = 2, Mix::Scene::DC_RAGDOLL = 3 }
 ダイナミクスコライダーモード列挙定数 More...
 
enum  Mix::Scene::DYNAMICS_KCHAR_MODE { Mix::Scene::DKC_RECEIVE = 0, Mix::Scene::DKC_CAST = 1 }
 ダイナミクスキネマティックキャラクターモード More...
 
enum  Mix::Scene::DEBUG_DRAW_METHOD { Mix::Scene::DDM_BEFORE = 0, Mix::Scene::DDM_AFTER = 1, Mix::Scene::DDM_XRAYS = 2 }
 デバッグ : 描画メソッド列挙定数 More...
 
enum  Mix::Scene::DEBUG_DRAW_FLAG {
  Mix::Scene::DDF_OCTREE = 0x00000001, Mix::Scene::DDF_DIRLIGHT_SHAPE = 0x00000002, Mix::Scene::DDF_SPOTLIGHT_SHAPE = 0x00000004, Mix::Scene::DDF_SPOTLIGHT_BOUNDS = 0x00000008,
  Mix::Scene::DDF_POINTLIGHT_SHAPE = 0x00000010, Mix::Scene::DDF_POINTLIGHT_BOUNDS = 0x00000020, Mix::Scene::DDF_SHADOW_BOUNDS = 0x00000040, Mix::Scene::DDF_WIDGET_GROUP_BOUNDS = 0x00000080,
  Mix::Scene::DDF_PARTICLE_MESH = 0x00000100, Mix::Scene::DDF_PARTICLE_AXIS = 0x00000200, Mix::Scene::DDF_PARTICLE_BOUNDS = 0x00000400, Mix::Scene::DDF_PARTICLE_GENERATOR = 0x00000800,
  Mix::Scene::DDF_PARTICLE_PROCESSOR = 0x00001000, Mix::Scene::DDF_PLANTER_MESH = 0x00002000, Mix::Scene::DDF_PLANTER_BOUNDS = 0x00004000, Mix::Scene::DDF_ACTORMODEL_MESH = 0x00008000,
  Mix::Scene::DDF_ACTORMODEL_AXIS = 0x00010000, Mix::Scene::DDF_ACTORMODEL_BOUNDS = 0x00020000, Mix::Scene::DDF_ACTORMODEL_SKELETAL = 0x00040000, Mix::Scene::DDF_ACTORMODEL_KCHAR = 0x00080000,
  Mix::Scene::DDF_ACTORMODEL_COLLIDER = 0x00100000, Mix::Scene::DDF_ACTORMODEL_SENSOR = 0x00200000, Mix::Scene::DDF_ACTORMODEL_JOINT = 0x00400000, Mix::Scene::DDF_TERRAINMODEL_MESH = 0x00800000,
  Mix::Scene::DDF_TERRAINMODEL_BOUNDS = 0x01000000, Mix::Scene::DDF_WATERPOOL_BOUNDS = 0x02000000, Mix::Scene::DDF_PP_FILMIC = 0x04000000, Mix::Scene::DDF_PP_CHROMATISM = 0x08000000,
  Mix::Scene::DDF_PP_LENS_DISTORTION = 0x10000000, Mix::Scene::DDF_FLOOR_COLLIDER = 0x20000000, Mix::Scene::DDF_GHOST_COLLIDER = 0x40000000, Mix::Scene::DDF_MESH = ( DDF_PLANTER_MESH | DDF_PARTICLE_MESH | DDF_ACTORMODEL_MESH | DDF_TERRAINMODEL_MESH ),
  Mix::Scene::DDF_AXIS = ( DDF_PARTICLE_AXIS | DDF_ACTORMODEL_AXIS ), Mix::Scene::DDF_BOUNDS = ( DDF_SPOTLIGHT_BOUNDS | DDF_POINTLIGHT_BOUNDS | DDF_PARTICLE_BOUNDS | DDF_ACTORMODEL_BOUNDS | DDF_TERRAINMODEL_BOUNDS | DDF_WATERPOOL_BOUNDS | DDF_PLANTER_BOUNDS ), Mix::Scene::DDF_LIGHT_SHAPE = ( DDF_DIRLIGHT_SHAPE | DDF_SPOTLIGHT_SHAPE | DDF_POINTLIGHT_SHAPE ), Mix::Scene::DDF_LIGHT_BOUNDS = ( DDF_SPOTLIGHT_BOUNDS | DDF_POINTLIGHT_BOUNDS ),
  Mix::Scene::DDF_LIGHT = ( DDF_LIGHT_SHAPE | DDF_LIGHT_BOUNDS ), Mix::Scene::DDF_DIRLIGHT = ( DDF_DIRLIGHT_SHAPE ), Mix::Scene::DDF_SPOTLIGHT = ( DDF_SPOTLIGHT_SHAPE | DDF_SPOTLIGHT_BOUNDS ), Mix::Scene::DDF_POINTLIGHT = ( DDF_POINTLIGHT_SHAPE | DDF_POINTLIGHT_BOUNDS ),
  Mix::Scene::DDF_SHADOW = ( DDF_SHADOW_BOUNDS ), Mix::Scene::DDF_WIDGET = ( DDF_WIDGET_GROUP_BOUNDS ), Mix::Scene::DDF_PLANTER = ( DDF_PLANTER_MESH | DDF_PLANTER_BOUNDS ), Mix::Scene::DDF_PARTICLE = ( DDF_PARTICLE_MESH | DDF_PARTICLE_AXIS | DDF_PARTICLE_BOUNDS | DDF_PARTICLE_GENERATOR | DDF_PARTICLE_PROCESSOR ),
  Mix::Scene::DDF_ACTORMODEL = ( DDF_ACTORMODEL_MESH | DDF_ACTORMODEL_AXIS | DDF_ACTORMODEL_BOUNDS | DDF_ACTORMODEL_SKELETAL | DDF_ACTORMODEL_KCHAR | DDF_ACTORMODEL_COLLIDER | DDF_ACTORMODEL_SENSOR | DDF_ACTORMODEL_JOINT ), Mix::Scene::DDF_TERRAINMODEL = ( DDF_TERRAINMODEL_MESH | DDF_TERRAINMODEL_BOUNDS ), Mix::Scene::DDF_WATERPOOL = ( DDF_WATERPOOL_BOUNDS ), Mix::Scene::DDF_FLOOR = ( DDF_FLOOR_COLLIDER ),
  Mix::Scene::DDF_GHOST = ( DDF_GHOST_COLLIDER ), Mix::Scene::DDF_DYNAMICS
}
 
enum  Mix::Scene::DEBUG_DRAW_COLOR_TYPE {
  Mix::Scene::DDC_COLLIDER_AROUSAL = 0, Mix::Scene::DDC_COLLIDER_ACTIVE = 1, Mix::Scene::DDC_COLLIDER_SLEEPY = 2, Mix::Scene::DDC_COLLIDER_REST = 3,
  Mix::Scene::DDC_COLLIDER_DISABLE = 4, Mix::Scene::DDC_SENSOR = 5, Mix::Scene::DDC_KINEMATIC_CHARACTER = 6, Mix::Scene::DDC_JOINT_FRAME = 7,
  Mix::Scene::DDC_JOINT_LIMIT = 8, Mix::Scene::DDC_BOUNDS = 9, Mix::Scene::DDC_OCTREE_NODE_BOUNDS = 10, Mix::Scene::DDC_OCTREE_OBJS_BOUNDS = 11,
  Mix::Scene::DDC_LIGHT_SHAPE = 12, Mix::Scene::DDC_PARTICLE_QUAD = 13, Mix::Scene::DDC_ACTORMODEL_SKELETAL = 14, Mix::Scene::DDC_SM_CLIP_BOOUNDS = 15,
  Mix::Scene::DDC_SM_CAST_BOOUNDS = 16, Mix::Scene::DDC_FILMIC_BG = 17, Mix::Scene::DDC_FILMIC_MEMORY = 18, Mix::Scene::DDC_FILMIC_CURVE = 19,
  Mix::Scene::DDC_ABERRATION = 20
}
 
enum  Mix::Scene::DEBUG_PROFILE_TYPE {
  Mix::Scene::DPT_GENERAL = 0, Mix::Scene::DPT_DYNAMICS = 1, Mix::Scene::DPT_OCTREE = 2, Mix::Scene::DPT_LIGHT = 3,
  Mix::Scene::DPT_WATER_POOL = 4, Mix::Scene::DPT_WIDGET = 5, Mix::Scene::DPT_ACTOR_MODEL = 6, Mix::Scene::DPT_TERRAIN_MODEL = 7,
  Mix::Scene::DPT_PROJ_SHADOW = 8, Mix::Scene::DPT_DRAW_OPACITY = 9, Mix::Scene::DPT_DRAW_NEUTRALITY = 10, Mix::Scene::DPT_DRAW_REFRACT = 11,
  Mix::Scene::DPT_DRAW_TRANSPARENCY = 12, Mix::Scene::DPT_POST_PROCESS = 13
}
 デバッグ : プロファイルタイプ列挙定数 More...
 
enum  Mix::Scene::DEBUG_IMAGE_TYPE {
  Mix::Scene::DIT_DEPTH = 0, Mix::Scene::DIT_DATA = 1, Mix::Scene::DIT_AMBIENT_OCCLUSION = 2, Mix::Scene::DIT_SHADOW_MAPPING = 3,
  Mix::Scene::DIT_LUMINOSITY = 4, Mix::Scene::DIT_BLOOM = 5, Mix::Scene::DIT_LIGHT_SHAFTS = 6, Mix::Scene::DIT_LENS_FLARE = 7,
  Mix::Scene::DIT_CHROMATISM = 8, Mix::Scene::DIT_DOF = 9
}
 デバッグ : イメージ列挙定数 More...
 
enum  Mix::ENGINE_CONFIG_FLAG {
  Mix::EC_IO_NARROW = 0x00000001, Mix::EC_KEYBOARD = 0x00000002, Mix::EC_MOUSE = 0x00000004, Mix::EC_GAMEPAD = 0x00000008,
  Mix::EC_HID = EC_KEYBOARD | EC_MOUSE | EC_GAMEPAD, Mix::EC_GRAPHICS = 0x00000010, Mix::EC_SOUND = 0x00000020, Mix::EC_DYNAMICS = 0x00000040,
  Mix::EC_PARALLEL = 0x00000080, Mix::EC_SCENE = 0x00000100, Mix::EC_ALL = EC_IO_NARROW | EC_HID | EC_GRAPHICS | EC_SOUND | EC_DYNAMICS | EC_PARALLEL | EC_SCENE
}
 

Functions

_MIX_DLL_API Mix::Memory::SECTION_INFO Mix::Memory::GetSectionInfo (UInt16 section)
 セクションの情報を取得します More...
 
_MIX_DLL_API void * Mix::Memory::Allocate (UInt16 section, UIntT size, const wchar_t *pSrcFile, Int32 srcLine)
 メモリを確保します More...
 
_MIX_DLL_API void * Mix::Memory::AllocateAligned (UInt16 section, UInt16 alignment, UIntT size, const wchar_t *pSrcFile, Int32 srcLine)
 メモリを確保します More...
 
_MIX_DLL_API void * Mix::Memory::Reallocate (void *ptr, UIntT size, const wchar_t *pSrcFile, Int32 srcLine)
 メモリを再確保します More...
 
_MIX_DLL_API void Mix::Memory::Free (void *ptr, const wchar_t *pSrcFile, Int32 srcLine)
 メモリを解放します More...
 
_MIX_DLL_API void Mix::Memory::Copy (void *dst, const void *src, UIntT size)
 メモリをコピーします More...
 
_MIX_DLL_API void Mix::Memory::Fill (void *ptr, UIntT size, UInt8 fill)
 メモリ全体に指定した値を書き込みます More...
 
_MIX_DLL_API void Mix::Memory::Zero (void *ptr, UIntT size)
 メモリ全体に 0 を書き込みます More...
 
_MIX_DLL_API Boolean Mix::Memory::CreateBuffer (UInt16 section, UIntT size, const void *pInitialData, Mix::Memory::IBuffer **ppBuffer)
 バッファを作成します More...
 
_MIX_DLL_API Mix::IO::IManagerMix::IO::GetManagerPtr (void)
 マネージャのポインタを取得します More...
 
_MIX_DLL_API Boolean Mix::IO::GetManager (Mix::IO::IManager **ppManager)
 マネージャを取得します More...
 
_MIX_DLL_API Boolean Mix::IO::IsAbsolutePath (const wchar_t *pPath)
 絶対パスかどうかを確認します More...
 
_MIX_DLL_API Boolean Mix::IO::IsRelativePath (const wchar_t *pPath)
 相対パスかどうかを確認します More...
 
_MIX_DLL_API Boolean Mix::IO::CombinePath (const wchar_t *pBaseDirPath, Boolean bCnvBase, const wchar_t *pRelPath, Mix::StringW &outPath)
 パスを結合します More...
 
_MIX_DLL_API Boolean Mix::IO::GetSpecialDirectoryPath (Mix::IO::SPECIAL_DIRECTORY_TYPE type, Mix::String &dirPath)
 特殊ディレクトリの名前を取得します More...
 
_MIX_DLL_API Mix::HID::IManagerMix::HID::GetManagerPtr (void)
 マネージャのポインタを取得します More...
 
_MIX_DLL_API Boolean Mix::HID::GetManager (Mix::HID::IManager **ppManager)
 マネージャを取得します More...
 
_MIX_DLL_API Mix::Parallel::IManagerMix::Parallel::GetManagerPtr (void)
 マネージャのポインタを取得します More...
 
_MIX_DLL_API Boolean Mix::Parallel::GetManager (Mix::Parallel::IManager **ppManager)
 マネージャを取得します More...
 
_MIX_DLL_API Float32 Mix::Geometry::DistancePointPlane (const Mix::Vector3 &p, const Mix::Geometry::Plane &plane)
 平面から点までの距離を求めます More...
 
_MIX_DLL_API void Mix::Geometry::ClosestPointSphere (const Mix::Vector3 &p, const Mix::Geometry::Sphere &sphere, Mix::Vector3 &q)
 球から点への最接近点を求めます More...
 
_MIX_DLL_API void Mix::Geometry::ClosestPointPlane (const Mix::Vector3 &p, const Mix::Geometry::Plane &plane, Mix::Vector3 &q)
 平面から点への最接近点を求めます More...
 
_MIX_DLL_API void Mix::Geometry::ClosestPointOBB (const Mix::Vector3 &p, const Mix::Geometry::OBB &obb, Mix::Vector3 &q)
 OBBから点への最接近点を求めます More...
 
_MIX_DLL_API void Mix::Geometry::ClosestPointAABB (const Mix::Vector3 &p, const Mix::Geometry::AABB &aabb, Mix::Vector3 &q)
 AABBと点の最接近点を求めます More...
 
_MIX_DLL_API Boolean Mix::Geometry::PointInTriangle (const Mix::Vector3 &p, const Mix::Vector3 &a, const Mix::Vector3 &b, const Mix::Vector3 &c)
 点が時計回りの三角形abcの内側にあるかどうかを判定します More...
 
_MIX_DLL_API Boolean Mix::Geometry::IntersectPointAABB (const Mix::Vector3 &p, const Mix::Geometry::AABB &aabb)
 AABBと点の交差しているかどうかを判定します More...
 
_MIX_DLL_API Boolean Mix::Geometry::IntersectSphereSphere (const Mix::Geometry::Sphere &sphere1, const Mix::Geometry::Sphere &sphere2, Float32 *pDist=NULL)
 球同士が交差しているかどうかを判定します More...
 
_MIX_DLL_API Boolean Mix::Geometry::IntersectSpherePlane (const Mix::Geometry::Sphere &sphere, const Mix::Geometry::Plane &plane, Float32 *pDist=NULL)
 球と平面が交差しているかどうかを判定します More...
 
_MIX_DLL_API Boolean Mix::Geometry::IntersectSphereOBB (const Mix::Geometry::Sphere &sphere, const Mix::Geometry::OBB &obb, Mix::Vector3 *pPos=NULL)
 球とOBBが交差しているかどうかを判定します More...
 
_MIX_DLL_API Boolean Mix::Geometry::IntersectSphereAABB (const Mix::Geometry::Sphere &sphere, const Mix::Geometry::AABB &aabb, Mix::Vector3 *pPos=NULL)
 球とAABBが交差しているかどうかを判定します More...
 
_MIX_DLL_API Boolean Mix::Geometry::IntersectPlanePlane (const Mix::Geometry::Plane &plane1, const Mix::Geometry::Plane &plane2, Mix::Vector3 *pPos=NULL, Mix::Vector3 *pDir=NULL)
 平面と平面が交差しているかどうかを判定します More...
 
_MIX_DLL_API Boolean Mix::Geometry::IntersectPlaneOBB (const Mix::Geometry::Plane &plane, const Mix::Geometry::OBB &obb)
 平面とOBBが交差しているかどうかを判定します More...
 
_MIX_DLL_API Boolean Mix::Geometry::IntersectPlaneAABB (const Mix::Geometry::Plane &plane, const Mix::Geometry::AABB &aabb)
 平面とAABBが交差しているかどうかを判定します More...
 
_MIX_DLL_API Boolean Mix::Geometry::IntersectOBBOBB (const Mix::Geometry::OBB &obb1, const Mix::Geometry::OBB &obb2)
 OBB同士が交差しているかどうかを判定します More...
 
_MIX_DLL_API Boolean Mix::Geometry::IntersectAABBAABB (const Mix::Geometry::AABB &aabb1, const Mix::Geometry::AABB &aabb2)
 AABB同士が交差しているかどうかを判定します More...
 
_MIX_DLL_API Boolean Mix::Geometry::IntersectRaySphere (const Mix::Vector3 &rayPos, const Mix::Vector3 &rayDir, const Mix::Geometry::Sphere &sphere, Float32 *pDist=NULL, Mix::Vector3 *pPos=NULL)
 光線と球が交差しているかどうかを判定します More...
 
_MIX_DLL_API Boolean Mix::Geometry::IntersectRayPlane (const Mix::Vector3 &rayPos, const Mix::Vector3 &rayDir, const Mix::Geometry::Plane &plane, Float32 *pDist=NULL, Mix::Vector3 *pPos=NULL)
 光線と平面が交差しているかどうかを判定します More...
 
_MIX_DLL_API Boolean Mix::Geometry::IntersectRayOBB (const Mix::Vector3 &rayPos, const Mix::Vector3 &rayDir, const Mix::Geometry::OBB &obb)
 光線とOBBが交差しているかどうかを判定します More...
 
_MIX_DLL_API Boolean Mix::Geometry::IntersectRayAABB (const Mix::Vector3 &rayPos, const Mix::Vector3 &rayDir, const Mix::Geometry::AABB &aabb, Float32 *pDist=NULL, Mix::Vector3 *pPos=NULL)
 光線とAABBが交差しているかどうかを判定します More...
 
_MIX_DLL_API Boolean Mix::Geometry::IntersectSegmentSphere (const Mix::Vector3 &p1, const Mix::Vector3 &p2, const Mix::Geometry::Sphere &sphere)
 線分と球が交差しているかどうかを判定します More...
 
_MIX_DLL_API Boolean Mix::Geometry::IntersectSegmentPlane (const Mix::Vector3 &p1, const Mix::Vector3 &p2, const Mix::Geometry::Plane &plane, Float32 *pDist=NULL, Mix::Vector3 *pPos=NULL)
 線分と平面が交差しているかどうかを判定します More...
 
_MIX_DLL_API Boolean Mix::Geometry::IntersectSegmentOBB (const Mix::Vector3 &p1, const Mix::Vector3 &p2, const Mix::Geometry::OBB &obb, Float32 *pDist=NULL, Mix::Vector3 *pPos=NULL)
 線分とOBBが交差しているかどうかを判定します More...
 
_MIX_DLL_API Boolean Mix::Geometry::IntersectSegmentAABB (const Mix::Vector3 &p1, const Mix::Vector3 &p2, const Mix::Geometry::AABB &aabb)
 線分とAABBが交差しているかどうかを判定します More...
 
_MIX_DLL_API Mix::Graphics::IManagerMix::Graphics::GetManagerPtr (void)
 マネージャのポインタを取得します More...
 
_MIX_DLL_API Boolean Mix::Graphics::GetManager (Mix::Graphics::IManager **ppManager)
 マネージャを取得します More...
 
_MIX_DLL_API Boolean Mix::Graphics::Utility::CompileShaderFromFile (const wchar_t *pFilePath, Mix::Graphics::SHADER_MACRO *pMacros, const char *pFuncName, Mix::Graphics::SHADER_TARGET target, Mix::Memory::IBuffer **ppBuffer)
 シェーダーをコンパイルします More...
 
_MIX_DLL_API Boolean Mix::Graphics::Utility::CompileShaderFromMemory (const wchar_t *pFilePath, const void *pSrc, UInt32 srcSize, Mix::Graphics::SHADER_MACRO *pMacros, const char *pFuncName, Mix::Graphics::SHADER_TARGET target, Mix::Memory::IBuffer **ppBuffer)
 シェーダーをコンパイルします More...
 
_MIX_DLL_API Mix::Point Mix::Graphics::Utility::MeasureString (Mix::Graphics::Utility::IFont *pFont, const wchar_t *pStr)
 指定したフォントと文字列で描画した場合のサイズを計測します More...
 
_MIX_DLL_API Mix::Sound::IManagerMix::Sound::GetManagerPtr (void)
 マネージャのポインタを取得します More...
 
_MIX_DLL_API Boolean Mix::Sound::GetManager (Mix::Sound::IManager **ppManager)
 マネージャを取得します More...
 
_MIX_DLL_API Mix::Dynamics::IManagerMix::Dynamics::GetManagerPtr (void)
 マネージャのポインタを取得します More...
 
_MIX_DLL_API Boolean Mix::Dynamics::GetManager (Mix::Dynamics::IManager **ppManager)
 マネージャを取得します More...
 
_MIX_DLL_API Boolean Mix::Dynamics::TestRay (const Mix::Vector3 &rayFrom, const Mix::Vector3 &rayTo, const Mix::Dynamics::IObject *pReceiveObject, Mix::Dynamics::TEST_LOCAL_RESULT &result)
 レイとオブジェクトの交差判定を行います More...
 
_MIX_DLL_API Boolean Mix::Dynamics::TestSweep (const Mix::Dynamics::IShape *pCastShape, const Mix::Vector3 &castShapeFromPos, const Mix::Vector3 &castShapeToPos, const Mix::Dynamics::IObject *pReceiveObject, Mix::Dynamics::TEST_LOCAL_RESULT &result)
 スィープとオブジェクトの交差判定を行います More...
 
_MIX_DLL_API Boolean Mix::Dynamics::TestSweep (const Mix::Dynamics::IShape *pCastShape, const Mix::Quaternion &castShapeFromRot, const Mix::Vector3 &castShapeFromPos, const Mix::Quaternion &castShapeToRot, const Mix::Vector3 &castShapeToPos, const Mix::Dynamics::IObject *pReceiveObject, Mix::Dynamics::TEST_LOCAL_RESULT &result)
 スィープとオブジェクトの交差判定を行います More...
 
_MIX_DLL_API Mix::Scene::IManagerMix::Scene::GetManagerPtr (void)
 マネージャのポインタを取得します More...
 
_MIX_DLL_API Boolean Mix::Scene::GetManager (Mix::Scene::IManager **ppManager)
 マネージャを取得します More...
 
_MIX_DLL_API Boolean Mix::Initialize (const Mix::ENGINE_CONFIG &config)
 Mixを初期化します More...
 
_MIX_DLL_API void Mix::Finalize (void)
 Mixを終了します More...
 
_MIX_DLL_API HINSTANCE Mix::GetInstanceHandle (void)
 インスタンスのハンドルを取得します More...
 
_MIX_DLL_API Mix::IEngineMix::GetEnginePtr (void)
 エンジンのポインタを取得します More...
 
_MIX_DLL_API Boolean Mix::GetEngine (Mix::IEngine **ppEngine)
 エンジンを取得します More...
 
_MIX_DLL_API Int32 Mix::Sign (Int32 value)
 整数の符号を取得します More...
 
_MIX_DLL_API Float32 Mix::SignF (Float32 value)
 浮動小数点の符号を取得します More...
 
_MIX_DLL_API Float32 Mix::SqrtF (const Float32 &value)
 浮動小数点の平方根を取得します More...
 
_MIX_DLL_API Float32 Mix::InvF (Float32 value)
 浮動小数点の逆数を取得します More...
 
_MIX_DLL_API Float32 Mix::InvSqrtF (Float32 value)
 浮動小数点の平方根の逆数を取得します More...
 
_MIX_DLL_API void Mix::InitRand (void)
 乱数を初期化します More...
 
_MIX_DLL_API void Mix::InitRand (UInt32 seed)
 乱数を初期化します More...
 
_MIX_DLL_API void Mix::InitRand (UInt32 *seeds, UInt32 numSeed)
 乱数を初期化します More...
 
_MIX_DLL_API UInt32 Mix::Rand (void)
 整数の乱数を取得します More...
 
_MIX_DLL_API UInt32 Mix::Rand (UInt32 maxRnd)
 整数の乱数を取得します More...
 
_MIX_DLL_API UInt32 Mix::Rand (UInt32 r0, UInt32 r1)
 整数の乱数を取得します More...
 
_MIX_DLL_API Float32 Mix::RandF (void)
 浮動小数点の乱数( 0.0f〜1.0f )を取得します More...
 
_MIX_DLL_API Float32 Mix::RandF (Float32 maxRnd)
 浮動小数点の乱数を取得します More...
 
_MIX_DLL_API Float32 Mix::RandF (Float32 r0, Float32 r1)
 浮動小数点の乱数を取得します More...
 
_MIX_DLL_API Float32 Mix::LerpF (Float32 a, Float32 b, Float32 t)
 浮動小数点の線形補間をします More...
 
_MIX_DLL_API void Mix::PlaneSpace (const Mix::Vector3 &n, Mix::Vector3 &p, Mix::Vector3 &q)
 指定されたベクトルから2本の垂直なベクトルを求めます More...
 
_MIX_DLL_API Mix::Quaternion Mix::ShortestArc (const Mix::Vector3 &v0, const Mix::Vector3 &v1)
 指定された直行する2本のベクトルから最短の回転を求めます More...
 
_MIX_DLL_API Mix::Vector3 Mix::Project (const Mix::Matrix4x4 &viewMat, const Mix::Matrix4x4 &projMat, const Mix::Vector3 &worldPos, const Mix::Vector2 &screenSize)
 ワールド座標をスクリーン座標へ変換します More...
 
_MIX_DLL_API Mix::Vector3 Mix::Unproject (const Mix::Matrix4x4 &viewMat, const Mix::Matrix4x4 &projMat, const Mix::Vector3 &screenPos, const Mix::Vector2 &screenSize)
 スクリーン座標をワールド座標へ変換します More...
 

変数型

#define True   TRUE
 Boolean型の真値 More...
 
#define False   FALSE
 Boolean型の偽値 More...
 
typedef char Int8
 符号有り8ビット整数 More...
 
typedef unsigned char UInt8
 符号無し8ビット整数 More...
 
typedef short Int16
 符号有り16ビット整数 More...
 
typedef unsigned short UInt16
 符号無し16ビット整数 More...
 
typedef int Int32
 符号有り32ビット整数 More...
 
typedef unsigned int UInt32
 符号無し32ビット整数 More...
 
typedef long long Int64
 符号有り64ビット整数 More...
 
typedef unsigned long long UInt64
 符号無し64ビット整数 More...
 
typedef long Long32
 符号有り32ビット整数 More...
 
typedef unsigned long ULong32
 符号無し32ビット整数 More...
 
typedef float Float32
 32ビット浮動小数点 More...
 
typedef double Float64
 64ビット浮動小数点 More...
 
typedef int IntT
 符号有り整数 More...
 
typedef size_t UIntT
 符号無し整数 More...
 
typedef BOOL Boolean
 32ビットブーリアン More...
 

Detailed Description

共通インクルードファイル

Macro Definition Documentation

#define _MIX_DLL_API   __declspec( dllimport )

DLLインポート定義

#define True   TRUE

Boolean型の真値

#define False   FALSE

Boolean型の偽値

#define MIX_ASSERT (   cnd)
Value:
if( !( cnd ) ) \
{ \
char text[1024]; \
::sprintf_s( text, sizeof( text ), "File : \"%s\"\nLine : %d\nCondition : %s", __FILE__, __LINE__, #cnd ); \
::MessageBoxA( ::GetActiveWindow(), text, "Assert", MB_OK | MB_ICONSTOP ); \
*( ( int* )0x0 ) = 0x0; \
}

標準のアサート

#define MIX_ASSERT_EX_W (   cnd,
  mes,
  ... 
)
Value:
if( !( cnd ) ) \
{ \
wchar_t fmt[1024] = L"File : \"%s\"\nLine : %d\nCondition : %s\n\n"; \
wchar_t text[1024]; \
::wcscat_s( fmt, ( sizeof( fmt ) >> 1 ), mes ); \
::swprintf_s( text, fmt, __FILEW__, __LINE__, L#cnd, __VA_ARGS__ ); \
::MessageBoxW( ::GetActiveWindow(), text, L"Assert", MB_OK | MB_ICONSTOP ); \
*( ( int* )0x0 ) = 0x0; \
}

拡張アサート ( ユニコード )

#define MIX_ASSERT_EX_A (   cnd,
  mes,
  ... 
)
Value:
if( !( cnd ) ) \
{ \
char fmt[1024] = "File : \"%s\"\nLine : %d\nCondition : %s\n\n"; \
char text[1024]; \
::strcat_s( fmt, sizeof( fmt ), mes ); \
::sprintf_s( text, sizeof( text ), fmt, __FILE__, __LINE__, #cnd, __VA_ARGS__ ); \
::MessageBoxA( ::GetActiveWindow(), text, "Assert", MB_OK | MB_ICONSTOP ); \
*( ( int* )0x0 ) = 0x0; \
}

拡張アサート ( マルチバイト )

#define MIX_ASSERT_EX   MIX_ASSERT_EX_W

標準の拡張アサート

#define MIX_ERROR_W (   mes,
  ... 
)
Value:
{ \
wchar_t fmt[1024] = L"File : \"%s\"\nLine : %d\n\n"; \
wchar_t text[1024]; \
::wcscat_s( fmt, ( sizeof( fmt ) >> 1 ), mes ); \
::swprintf_s( text, fmt, __FILEW__, __LINE__, __VA_ARGS__ ); \
::MessageBoxW( ::GetActiveWindow(), text, L"Error", MB_OK | MB_ICONSTOP ); \
}

エラー ( ユニコード )

#define MIX_ERROR_A (   mes,
  ... 
)
Value:
{ \
char fmt[1024] = "File : \"%s\"\nLine : %d\n\n"; \
char text[1024]; \
::strcat_s( fmt, sizeof( fmt ), mes ); \
::sprintf_s( text, sizeof( text ), fmt, __FILE__, __LINE__, __VA_ARGS__ ); \
::MessageBoxA( ::GetActiveWindow(), text, "Error", MB_OK | MB_ICONSTOP ); \
}

エラー ( マルチバイト )

#define MIX_ERROR   MIX_ERROR_W

標準のエラーの通知

#define MIX_TRACE_W (   fmt,
  ... 
)
Value:
{ \
wchar_t text[1024] = L""; \
::swprintf_s( text, fmt, __VA_ARGS__ ); \
::OutputDebugStringW( text ); \
}

トレース ( ユニコード )

#define MIX_TRACE_A (   fmt,
  ... 
)
Value:
{ \
char text[1024] = ""; \
::sprintf_s( text, sizeof( text ), fmt, __VA_ARGS__ ); \
::OutputDebugStringA( text ); \
}

トレース ( マルチバイト )

#define MIX_TRACE   MIX_TRACE_W

標準のトレース

#define MIX_TRACELINE_W (   fmt,
  ... 
)
Value:
{ \
wchar_t text[1024] = L""; \
::swprintf_s( text, fmt, ##__VA_ARGS__ ); \
::wcscat_s( text, sizeof( text ) >> 1, L"\n" ); \
::OutputDebugStringW( text ); \
}

トレースライン ( ユニコード )

#define MIX_TRACELINE_A (   fmt,
  ... 
)
Value:
{ \
char text[1024] = ""; \
::sprintf_s( text, sizeof( text ), fmt, __VA_ARGS__ ); \
::strcat_s( text, sizeof( text ), "\n" ); \
::OutputDebugStringA( text ); \
}

トレースライン ( マルチバイト )

#define MIX_TRACELINE   MIX_TRACELINE_W

標準のトレースライン

#define MIX_DEBUGNAME   MIX_DEBUGNAME_STRUCT( __FILEW__, __LINE__ )

デバッグ名

#define MIX_DEBUGNAME_T (   title)    MIX_DEBUGNAME_STRUCT( title, __FILEW__, __LINE__ )

デバッグ名( タイトルあり )

#define MIX_IT_TO_I8 (   value)    Mix::IntT_ToInt8( value )

IntT から Int8 にキャストします

#define MIX_IT_TO_I16 (   value)    Mix::IntT_ToInt16( value )

IntT から Int16 にキャストします

#define MIX_IT_TO_I32 (   value)    value

IntT から Int32 にキャストします

#define MIX_IT64_TO_IT (   value)    Mix::Int64_ToIntT( value )

Int64 から IntT にキャストします

#define MIX_IT_TO_UI8 (   value)    Mix::IntT_ToUInt8( value )

IntT から UInt8 にキャストします

#define MIX_IT_TO_UI16 (   value)    Mix::IntT_ToUInt16( value )

IntT から UInt16 にキャストします

#define MIX_IT_TO_UI32 (   value)    Mix::IntT_ToUInt32( value )

IntT から UInt32 にキャストします

#define MIX_UIT_TO_UI8 (   value)    Mix::UIntT_ToUInt8( value )

UIntT から UInt8 にキャストします

#define MIX_UIT_TO_UI16 (   value)    Mix::UIntT_ToUInt16( value )

UIntT から UInt16 にキャストします

#define MIX_UIT_TO_UI32 (   value)    value

UIntT から UInt32 にキャストします

#define MIT_UI64_TO_UIT (   value)    Mix::UInt64_ToUIntT( value )

UInt64 から UIntT にキャストします

#define MIX_UIT_TO_I8 (   value)    Mix::UIntT_ToInt8( value )

UIntT から Int8 にキャストします

#define MIX_UIT_TO_I16 (   value)    Mix::UIntT_ToInt16( value )

UIntT から Int16 にキャストします

#define MIX_UIT_TO_I32 (   value)    Mix::UIntT_ToInt32( value )

UIntT から Int32 にキャストします

#define MIX_ALIGN (   n)    _declspec( align( n ) )

アラインメントを指定します

#define MIX_ALIGN_16   _declspec( align( 16 ) )

アラインメントを 16Byte で指定します

#define MIX_ADD_REF (   x)
Value:
if( x != NULL ) \
{ \
x->AddRef(); \
}

Mix::Release インターフェースを継承したクラスの参照カウンタをインクリメントします

#define MIX_RELEASE (   x)
Value:
if( x != NULL ) \
{ \
x->Release(); \
x = NULL; \
}

Mix::Release インターフェースを継承したクラスの参照カウンタをデクリメントします

#define MIX_SETBIT (   flags,
  bit 
)
Value:
if( ( flags & ( bit ) ) == 0 ) \
{ \
flags |= ( bit ); \
}

ビットをセットします

#define MIX_RESETBIT (   flags,
  bit 
)
Value:
if( ( flags & ( bit ) ) == ( bit ) ) \
{ \
flags ^= ( bit ); \
}

ビットをリセットします

#define MIX_TESTBIT (   flags,
  bit 
)    ( ( flags ) & ( bit ) )

ビットをテストします

#define MIX_PI   3.141592654f

円周率

#define MIX_2PI   6.283185308f

円周率 * 2

#define MIX_4PI   12.566370616f

円周率 * 4

#define MIX_HALF_PI   1.570796327f

円周率 / 2

#define MIX_QUARTER_PI   0.7853981635f

円周率 / 4

#define MIX_FLOAT_MIN   1.175494351e-38F

浮動小数点の最小値

#define MIX_FLOAT_MAX   3.402823466e+38F

浮動小数点の最大値

#define MIX_FLOAT_EPSILON   1.192092896e-07F

浮動小数点イプシロン

#define MIX_TO_RAD (   x)    ( MIX_PI * ( x ) / 180.0f )

指定された角度(度数法)をラジアン単位に変換します

#define MIX_TO_DEG (   x)    ( ( x ) * 180.0f / MIX_PI )

指定された角度(ラジアン)を度数法に変換します

#define MIX_FLOAT_IS_ZERO (   a)    ( ( -MIX_FLOAT_EPSILON < ( a ) ) && ( MIX_FLOAT_EPSILON > ( a ) ) )

浮動小数点の値が0かどうかを返します

#define MIX_FLOAT_EQUAL (   a,
 
)    ( ( ( ( a ) - MIX_FLOAT_EPSILON ) <= ( b ) ) && ( ( ( a ) + MIX_FLOAT_EPSILON ) >= ( b ) ) )

浮動小数点の値が等しいかどうかを返します

#define MIX_FLOAT_RECIPROCAL (   a)    ( ( MIX_FLOAT_IS_ZERO( a ) == False )? ( 1.0f / ( a ) ) : 0.0f )

a の逆数を求めます

#define MIX_FLOAT_DIV (   a,
 
)    ( ( MIX_FLOAT_IS_ZERO( b ) == False )? ( ( a ) / ( b ) ) : 0.0f )

a を b で除算します

#define MIX_FLOAT_SATURATE (   a)    ( ( ( a ) < MIX_FLOAT_EPSILON )? 0.0f : ( ( a ) > 1.0f )? 1.0f : ( a ) )

a を 0.0f〜1.0f に飽和します

#define MIX_CLAMP (   a,
  b,
 
)    ( ( ( b ) > ( a ) )? ( b ) : ( ( c ) < ( a ) )? ( c ) : ( a ) )

b <= a >= c になるように a を飽和します

#define MIX_MALLOC (   size)    Mix::Memory::Allocate( Mix::Memory::SECTION_USER, size, __FILEW__, __LINE__ )

メモリを、指定したサイズで確保します

#define MIX_MALLOC_T (   T,
  count 
)    static_cast<T*>( Mix::Memory::Allocate( Mix::Memory::SECTION_USER, sizeof( T ) * count, __FILEW__, __LINE__ ) )

メモリを、指定した型、数で確保します

#define MIX_ALIGNED_MALLOC (   alignment,
  size 
)    Mix::Memory::Allocate( Mix::Memory::SECTION_USER, alignment, size, __FILEW__, __LINE__ )

メモリを、指定したアライメント、サイズで確保します

#define MIX_ALIGNED_MALLOC_T (   alignment,
  T,
  count 
)    static_cast<T*>( Mix::Memory::Allocate( Mix::Memory::SECTION_USER, alignment, sizeof( T ) * count, __FILEW__, __LINE__ ) )

メモリを、指定したアライメント、型、数で確保します

#define MIX_REALLOC (   ptr,
  size 
)    Mix::Memory::Reallocate( ptr, size )

指定したメモリを指定したサイズで再確保します

#define MIX_REALLOC_T (   ptr,
  T,
  count 
)    static_cast<T*>( Mix::Memory::Reallocate( ptr, sizeof( T ) * count ) )

指定したメモリを、指定した型、サイズで再確保します

#define MIX_FREE (   ptr)
Value:
if( ptr != NULL ) \
{ \
Mix::Memory::Free( ptr, __FILEW__, __LINE__ ); \
ptr = NULL; \
}
_MIX_DLL_API void Free(void *ptr, const wchar_t *pSrcFile, Int32 srcLine)
メモリを解放します

MIX_MALLOC もしくわ MIX_ALIGNED_MALLOC によって確保されたメモリを解放します

#define MIX_DECLARE_ALLOCATOR ( )
Value:
inline void* operator new( size_t size, Mix::Memory::SECTION_TYPE secType, const wchar_t* srcFile, Int32 srcLine ) { \
return Mix::Memory::Allocate( secType, size, srcFile, srcLine ); } \
inline void operator delete( void* ptr, Mix::Memory::SECTION_TYPE secType, const wchar_t* srcFile, Int32 srcLine ) {} \
\
inline void* operator new[]( size_t size, Mix::Memory::SECTION_TYPE secType, const wchar_t* srcFile, Int32 srcLine ) { \
return Mix::Memory::Allocate( secType, size, srcFile, srcLine ); }\
inline void operator delete[]( void* ptr, Mix::Memory::SECTION_TYPE secType, const wchar_t* srcFile, Int32 srcLine ) {} \
\
inline void* operator new( size_t size, Mix::Memory::SECTION_TYPE secType, UInt16 align, const wchar_t* srcFile, Int32 srcLine ) { \
return Mix::Memory::AllocateAligned( secType, align, size, srcFile, srcLine ); } \
inline void operator delete( void* ptr, Mix::Memory::SECTION_TYPE secType, UInt16 align, const wchar_t* srcFile, Int32 srcLine ) {} \
\
inline void* operator new[]( size_t size, Mix::Memory::SECTION_TYPE secType, UInt16 align, const wchar_t* srcFile, Int32 srcLine ) { \
return Mix::Memory::AllocateAligned( secType, align, size, srcFile, srcLine ); } \
inline void operator delete[]( void* ptr, Mix::Memory::SECTION_TYPE secType, UInt16 align, const wchar_t* srcFile, Int32 srcLine ) {}
_MIX_DLL_API void * Allocate(UInt16 section, UIntT size, const wchar_t *pSrcFile, Int32 srcLine)
メモリを確保します
int Int32
符号有り32ビット整数
Definition: Common.h:65
SECTION_TYPE
セクションタイプ列挙定数
Definition: Common.h:567
_MIX_DLL_API void * AllocateAligned(UInt16 section, UInt16 alignment, UIntT size, const wchar_t *pSrcFile, Int32 srcLine)
メモリを確保します
unsigned short UInt16
符号無し16ビット整数
Definition: Common.h:62

クラスにアロケータの定義を追加します

#define MIX_NEW_T (   T,
  ... 
)    new( Mix::Memory::SECTION_USER, __FILEW__, __LINE__ ) T( __VA_ARGS__ )

新しいインスタンスを指定した、インスタンスの型、コンストラクタに渡す引数で作成します

#define MIX_ALIGNED_NEW_T (   align,
  T,
  ... 
)    new( Mix::Memory::SECTION_USER, align, __FILEW__, __LINE__ ) T( __VA_ARGS__ )

新しいインスタンスを指定した、アライメント、インスタンスの型、コンストラクタに渡す引数で作成します

#define MIX_DELETE_T (   T,
  ptr 
)
Value:
if( ptr != NULL ) \
{ \
ptr->~T(); \
Mix::Memory::Free( ptr, __FILEW__, __LINE__ ); \
ptr = NULL; \
}
_MIX_DLL_API void Free(void *ptr, const wchar_t *pSrcFile, Int32 srcLine)
メモリを解放します

MIX_NEW_T または MIX_ALIGNED_NEW_T によって作成されたインスタンスを削除します

#define MIX_DELETE_THIS_T (   T,
  ptr 
)
Value:
ptr->~T(); \
Mix::Memory::Free( ptr, __FILEW__, __LINE__ );
_MIX_DLL_API void Free(void *ptr, const wchar_t *pSrcFile, Int32 srcLine)
メモリを解放します

MIX_NEW_T または MIX_ALIGNED_NEW_T によって作成された自身のインスタンスを削除します

#define MIX_NEW_ARRAY_T (   T,
  count 
)    new( Mix::Memory::SECTION_USER, __FILEW__, __LINE__ ) T[count]

新しいインスタンス配列を指定した、インスタンスの型、配列の要素の数で作成します

#define MIX_ALIGNED_NEW_ARRAY_T (   align,
  T,
  count 
)    new( Mix::Memory::SECTION_USER, align, __FILEW__, __LINE__ ) T[count]

新しいインスタンス配列を指定した、アライメント、インスタンスの型、配列の要素の数で作成します

#define MIX_DELETE_ARRAY_T (   T,
  ptr 
)

MIX_NEW_T によって作成されたインスタンス配列を削除します

#define MIX_DELETE_PTR_ARRAY_T (   ptr)
Value:
if( ptr != NULL ) \
{ \
Mix::Memory::Free( ptr, __FILEW__, __LINE__ ); \
ptr = NULL; \
}
_MIX_DLL_API void Free(void *ptr, const wchar_t *pSrcFile, Int32 srcLine)
メモリを解放します

MIX_NEW_ARRAY_T または MIX_ALIGNED_NEW_ARRAY_T によって作成されたインスタンスのポインタ配列を削除します

#define MIX_NEW   new

新しいインスタンスを作成します

#define MIX_DELETE (   x)
Value:
if( x != NULL ) \
{ \
delete x; \
x = NULL; \
}

MIX_NEW によって作成されたインスタンスを削除します

#define MIX_DELETE_ARRAY (   x)
Value:
if( x != NULL ) \
{ \
delete [] x; \
x = NULL; \
}

MIX_NEW によって作成されたインスタンス配列を削除します

#define MIX_DELETE_THIS (   x)    delete x

MIX_NEW によって作成された自身のインスタンスを削除します

Typedef Documentation

符号有り8ビット整数

符号無し8ビット整数

符号有り16ビット整数

符号無し16ビット整数

符号有り32ビット整数

符号無し32ビット整数

符号有り64ビット整数

符号無し64ビット整数

符号有り32ビット整数

符号無し32ビット整数

32ビット浮動小数点

64ビット浮動小数点

typedef IntT

符号有り整数

typedef UIntT

符号無し整数

typedef BOOL Boolean

32ビットブーリアン