ありがとうございます。HitCheck_Line_Triangleについては無事に作動するようになりました。
それともう一つ質問させてもらって申し訳ないのですが、HitCheck_Triangle_Triangleについて、
2つの三角形の当たり判定が常に0を示すのですが、これは仕様なのでしょうか?それともバグなのでしょうか?
#include "DxLib.h"
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow)
{
ChangeWindowMode(TRUE);
VECTOR Tri1, Tri2, Tri3, Tri4, Tri5, Tri6;
int Result2;
if (DxLib_Init() < 0) return -1;
float X = 0, Y = 0;
while (ProcessMessage() == 0) {
SetDrawScreen(DX_SCREEN_BACK);
ClearDrawScreen();
if (CheckHitKey(KEY_INPUT_RIGHT))X++;
if (CheckHitKey(KEY_INPUT_LEFT))X--;
if (CheckHitKey(KEY_INPUT_DOWN))Y--;
if (CheckHitKey(KEY_INPUT_UP))Y++;
// 三角形の座標をセット
Tri1 = VGet(200, 200, 0);
Tri2 = VGet(300, 200, 0);
Tri3 = VGet(200, 400, 0);
Tri4 = VGet(210+X, 210+Y,0);
Tri5 = VGet(290+X, 210+Y, 0);
Tri6 = VGet(210+X, 300+Y, 0);
Result2 = HitCheck_Triangle_Triangle(Tri1, Tri2, Tri3, Tri4, Tri5, Tri6);
DrawTriangle3D(Tri1, Tri2, Tri3, GetColor(255, 255, 255), 1);
DrawTriangle3D(Tri4, Tri5, Tri6, GetColor(255, 0, 0), 1);
DrawFormatString(0, 100, GetColor(0, 0, 255), "%d", Result2);
ScreenFlip();
}
DxLib_End();
return 0;
}