ページ 11

Effekseerについて

Posted: 2014年8月04日(月) 00:41
by ゲーム卵
Effekseerを使いゲーム制作をしようとしています
ダイレクトX9.0を使った自作ライブラリー(自分が制作したものではない)を使い制作しております
VS2013を使っているのですが
どうも、うまいこといかない
一応をライブラリーは追加できてるはず

誰かお助けください

Re: Effekseerについて

Posted: 2014年8月04日(月) 01:01
by みけCAT
フォーラムルールをお読みください。
フォーラムルール さんが書きました:
「うまくいきません」という質問は大抵回答に困ります。
  1. 自分は今何がしたくて
  2. どう取り組んで(作ったプログラムはどれで
  3. どのようなエラーやトラブルで困っていて
  4. 自分は何が解らないのか、知りたいのか
  5. 今のCの知識はどの程度なのか
この5点をしっかりと明記して下さい。
環境に依存する場合やライブラリを使っているときは
使っているOS名・コンパイラ名・ライブラリ名も明記しましょう。
コンパイルエラーの質問時は必ず最低限のエラーメッセージも書きましょう。

Re: Effekseerについて

Posted: 2014年8月04日(月) 03:30
by ゲーム卵
お早いご回答ありがとうございます
掲示板での質問じたいが初めてでご指摘ありがとうございます

就職活動用のゲームを作成して
リンクを目標につくっており、剣やエフェクトを見栄えよくしたいと思いやっております

自作ライブラリーでエフェクトを再生したいです
プログラム歴は1年半、一通りC++はやりました、基本的なところです

/*
ここからプログラム
*/
#include <Effekseer.h>
#include <EffekseerRendererDX9.h>
#include <EffekseerSoundXAudio2.h>

#pragma comment(lib,"Effekseer.lib")
#pragma comment(lib,"EffekseerRendererDX9.lib")

#include "EffekseerTest.h"


EffekseerTest::EffekseerTest()
{
// 値をセット
Set();
}

EffekseerTest::~EffekseerTest()
{
// エフェクトの破棄
SAFE_RELEASE(g_effect);

g_manager->Destroy(); // エフェクト管理用インスタンスを破棄
g_renderer->Destory(); // 描画用インスタンスを破棄
}


// 情報をセット
void EffekseerTest::Set()
{
// 描画用インスタンスの生成
g_renderer = ::EffekseerRendererDX9::Renderer::Create(iexSystem::GetDevice(),EFFECT_MAX);


// エフェクト管理用インスタンスの生成
g_manager = ::Effekseer::Manager::Create(EFFECT_MAX);
// 描画用インスタンスから描画機能を設定
g_manager->SetSpriteRenderer(g_renderer->CreateSpriteRenderer());
g_manager->SetRibbonRenderer(g_renderer->CreateRibbonRenderer());
g_manager->SetRingRenderer(g_renderer->CreateRingRenderer());
g_manager->SetModelRenderer(g_renderer->CreateModelRenderer());

// 描画用インスタンスからテクスチャの読込機能を設定
//独自拡張可能、現在はファイルから読み込んでいる。
g_manager->SetTextureLoader(g_renderer->CreateTextureLoader());
g_manager->SetModelLoader(g_renderer->CreateModelLoader());

// 投影行列を設定
g_renderer->SetProjectionMatrix(
::Effekseer::Matrix44().PerspectiveFovRH(90.0f / 180.0f * 3.14f, (float)iexSystem::ScreenWidth / (float)iexSystem::ScreenHeight, 1.0f, 500.0f));

// カメラ行列を設定
g_renderer->SetCameraMatrix(
::Effekseer::Matrix44().LookAtRH(::Effekseer::Vector3D(1.0f, 2.0f, 20.0f), ::Effekseer::Vector3D(0.0f, 0.0f, 0.0f), ::Effekseer::Vector3D(0.0f, 1.0f, 0.0f)));

// エフェクトの読込
g_effect = Effekseer::Effect::Create(g_manager, (const EFK_CHAR*)L"DATA\\test.efk");



}

void EffekseerTest::Update()
{
//エフェクト調整
g_manager->SetLocation(g_handle, 0.0f, 1.0f, 0.0f);//位置
g_manager->SetRotation(g_handle, Effekseer::Vector3D(0.0f, 0.0f, 0.0f), 0.0f);//回転
g_manager->SetScale(g_handle, 1, 1, 1);//倍率

g_manager->Update(); // 更新処理
}

void EffekseerTest::Render()
{
g_renderer->BeginRendering(); // 描画開始処理
g_manager->Draw(); // 描画
g_renderer->EndRendering(); // 描画終了
}

いろんなサイトを見ながらやった結果
エラーは消えましたが、表示はされません
このcppとhをメインにincludeして
初期化、デリート、更新、描画を呼び出すだけです

何か気になる点があればどなだでもいいのでお願いします

Re: Effekseerについて

Posted: 2014年8月04日(月) 04:02
by dic
コンストラクタでSet()呼び出してますが、初期化されているの確認しました?

Re: Effekseerについて

Posted: 2014年8月04日(月) 07:30
by みけCAT
コードを提示するときはBBcodeを有効にした状態でcodeタグで囲み、
かつ適切なインデントをしていただけると、見やすくて助かります。