ゲームにおいて壁を設置したいのですが、真っ直ぐの壁は簡単に実装できるのですが、
斜めの壁の実装方法が分かりません。
これまでに色々なサイトを巡ってきましたが、全て失敗に終わりました。
斜めの壁の実装方法を教えてください。
#include "DxLib.h"
int pX = 320, pY = 240;
int pW = 16, pH = 16;
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow) {
ChangeWindowMode(TRUE);
if (DxLib_Init() == -1) return -1;
int player = LoadGraph("player.png");
int wall = LoadGraph("wall.png");
while (!ProcessMessage()) {
SetDrawScreen(DX_SCREEN_BACK); //描画先をMakeScreen用の画面から裏画面に変更
ClearDrawScreen(); //裏画面のデータを全て削除
if (CheckHitKey(KEY_INPUT_LEFT))pX -= 2;
if (CheckHitKey(KEY_INPUT_RIGHT))pX += 2;
if (CheckHitKey(KEY_INPUT_UP))pY -= 2;
if (CheckHitKey(KEY_INPUT_DOWN))pY += 2;
if (pX >= 400)pX = 400; //真っ直ぐの壁の実装
DrawModiGraph(400 + pH, 0, 640, 0, 640, 480, 400+pH, 480, wall, TRUE); //真っ直ぐの壁の描画
DrawModiGraph(0, 0, 200, 0, 70, 480, 0, 480, wall, TRUE); //斜めの壁の描画
DrawGraph(pX, pY, player, TRUE);
ScreenFlip(); //裏画面データを表画面へ反映
}
DxLib_End(); // DXライブラリ使用の終了処理
return 0; // ソフトの終了
}