DXライブラリには2Dの当たり判定を行う関数はありません
マウスが指している座標のドットでの判定でしたら LoadSoftImage と
GetPixelSoftImage を使用するとご希望の処理が実現できると思います
サンプルを書いてみました
#include "DxLib.h"
int GraphX, GraphY ;
int GraphHandle ;
int SoftImageHandle ;
int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow )
{
int inp ;
int MouseX, MouseY ;
int r, g, b, a ;
// ウインドウモードで起動
ChangeWindowMode( TRUE );
// DXライブラリの初期化
if( DxLib_Init() < 0 ) return -1;
// 画像を読み込む
SoftImageHandle = LoadSoftImage( "Test1.bmp" ) ;
GraphHandle = CreateGraphFromSoftImage( SoftImageHandle ) ;
// 描画先を裏画面にする
SetDrawScreen( DX_SCREEN_BACK );
// メインループ(何かキーが押されたらループを抜ける)
GraphX = 320 ;
GraphY = 0 ;
while( ProcessMessage() == 0 )
{
// 画面のクリア
ClearDrawScreen();
// 画像の操作移動
inp = GetJoypadInputState( DX_INPUT_KEY_PAD1 ) ;
if( inp & PAD_INPUT_LEFT ) GraphX -= 8 ;
if( inp & PAD_INPUT_RIGHT ) GraphX += 8 ;
if( inp & PAD_INPUT_UP ) GraphY -= 8 ;
if( inp & PAD_INPUT_DOWN ) GraphY += 8 ;
// 画像の描画
DrawGraph( GraphX, GraphY, GraphHandle, TRUE ) ;
// マウスの座標を取得
GetMousePoint( &MouseX, &MouseY ) ;
// マウスが示している座標の色を取得する
GetPixelSoftImage( SoftImageHandle, MouseX - GraphX, MouseY - GraphY, &r, &g, &b, &a ) ;
// 色を表示する
DrawFormatString( 0, 0, GetColor( 255,255,255 ), "R:%d G:%d B:%d A:%d", r, g, b, a ) ;
// 裏画面の内容を表画面に反映
ScreenFlip();
}
// DXライブラリの後始末
DxLib_End();
// ソフトの終了
return 0;
}
マウスが指している描画画像上の座標の色を取得して画面に表示するプログラムです
この関数で得られる r, g, b, a の値からマウスとの当たり判定を行うことができると思います
因みに bmp ファイルはアルファ( A )値を含めることはできませんので、アルファ値で
判定したい場合は png 形式か tga 形式を使用する必要があります