0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

DXライブラリでエフェクシアを使う

Posted at

ダウンロードは以下のページから
https://effekseer.github.io/jp/

下準備

WinMain.cpp"EffekseerForDXLib.h"をインクルードする
DXライブラリと一緒にエフェクシアを初期化

// DXライブラリの初期化処理
	if (DxLib_Init() == -1)
	{
		return -1;    // エラーが起きたら直ちに終了
	}

	// Effekseerを初期化する。
	// 引数には画面に表示する最大パーティクル数を設定する。
	if (Effekseer_Init(8000) == -1)
	{
		DxLib_End();
		return -1;
	}

初期化後にエフェクシアの設定を行う

// DXライブラリのデバイスロストした時のコールバックを設定する。
	// ウインドウとフルスクリーンの切り替えが発生する場合は必ず実行する。
	// ただし、DirectX11を使用する場合は実行する必要はない。
	Effekseer_SetGraphicsDeviceLostCallbackFunctions();

	// Effekseerに2D描画の設定をする。
	Effekseer_Set2DSetting(SCREEN_WIDTH, SCREEN_HEIGHT);

エフェクシアの終了処理を行う

Effkseer_End();

使い方

"EffekseerForDXLib.h"をインクルードする

初期化時に以下を記入

// Zバッファを有効にする。
	// Effekseerを使用する場合、2DゲームでもZバッファを使用する。
	SetUseZBuffer3D(TRUE);

	// Zバッファへの書き込みを有効にする。
	// Effekseerを使用する場合、2DゲームでもZバッファを使用する。
	SetWriteZBuffer3D(TRUE);

エフェクトのハンドルを入手

mEffectHndle="Resources/Effect/Effect.efk";

Updateに以下を記入

mEffect = PlayEffekseer2DEffect(mEffectHndle);

SetPosPlayingEffekseer2DEffect(mEffect, PosX, PosY, 0);

UpdateEffekseer2D();

DrawDrawに以下を記入

//描画処理に記入
DrawEffekseer2D();

Finalizeに以下を記入

//終了処理に記入
DeleteEffekseerEffect(mEffectHndle);

これで使えるはず
正直処理が重くてあんまり使う機会はないかも

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?