• 締切済み

DirectXでの読み込みについて

「DirectXを使ってノベルゲームを作っていこう」と思い現在作成中です。 そこで『ノベル』なのでテキストをたくさん表示させる必要があるのですが、ここで分からない事があります。 外部ファイル(~.txtなど)に予めテキストを用意しておき、ソース中で必要なテキストを読み込み表示させる事は可能でしょうか?(←また、表示させたテキストを消し、次のテキストを表示させる方法も分かりません。) 出来るようでしたら参考になるサイト、もしくは関数等を教えて下さい。 宜しくお願いします。

みんなの回答

回答No.2

可能です。 スクリプトエンジンを作成するというのがやり方としては一番楽じゃないでしょうか。 DXライブラリを用いた、ノベル風文字表示の方法 http://homepage2.nifty.com/natupaji/DxLib/dxprogram.html#N6 ここのソースを参考にすれば分かりやすいかと。 この例では固定の文字列ですが、ファイルストリームでchar配列の中にテキストファイルの文字列を入れちゃえばいいだけです。 自分も同じことを昔思いついてやりましたが、その時はC++とluaと簡易自作スクリプト言語っていう形で書きました。 <name キャラ名><say テキスト><order clear>みたいな感じでテキストファイルに書いて、それをプログラムが読んで実行、っていう風にしたかなぁ… まぁプログラムは完成しましたが、シナリオが完成しませんでしたね… プログラム書くよりシナリオ書く方が何倍も難しかった…w

参考URL:
http://homepage2.nifty.com/natupaji/DxLib/dxprogram.html#N6
  • zwi
  • ベストアンサー率56% (730/1282)
回答No.1

DirectX以前に、まだとっかかりにも入っていない状態だと思いますがコンソール画面でノベルゲームを作ることも難しい状態じゃないでしょうか? DirectXでは無いですが、DXライブラリを使ったノベルゲームの講座サイトを紹介します。 http://karetta.jp/book-cover/game-programming ちなみにDXライブラリは、DirectXを内部的に使ったゲームを簡単に作れるようにしたライブラリです。 これでも内容的には、難しいかも知れません。

関連するQ&A

  • DirectX

    ラトルズ株式会社から出版されている15歳からはじめるDirectX9ゲームプログラミングC++編の第5章の関数ライブラリを作成するところでサンプルのソースプログラムを全て打ち込んだにも拘わらずウィンドウが表示されなくて困っています。どなたか同じ本を持ってる方、もしくはDirectXに詳しい方が居ましたら教えてほしいのですがよろしいでしょうか。 開発環境はVisual C++ 2008 Express Edition、DirectX SDK(June 2007)でOSはVistaです。

  • DirectX9で文字を一文字ずつ表示

    現在、DirectX9の勉強のために簡単なノベルゲームを制作しています。 画像やテキストを表示させたりするといった事は出来たのですが、 ノベルゲームらしくテキストが一文字ずつ流れるように表示させたいのですが、 やり方がわからずに困っています。 自分なりに考えてみたのですが、こんなのしか思い浮かびませんでした・・・。 switch( ( timeGetTime() - nowtimedayo ) / 300 ){ case 3: strcpy(buff,"僕"); break; case 4: strcpy(buff,"僕は"); break; case 5: strcpy(buff,"僕はこ"); break; case 6: strcpy(buff,"僕はここ"); break; case 7: strcpy(buff,"僕はここに"); break; case 8: strcpy(buff,"僕はここにい"); break; case 9: strcpy(buff,"僕はここにいる"); break; } どうか、お力をお貸しいただけないでしょうか・・・。 宜しくお願い致します。

  • DirectXによるpmdファイルの読み込み

    質問なのですが、現在DirectXでpmdファイルを読み込むプログラムを作成しているのですが サンプルプログラムで使用されていたpmdファイルを読み込むことには成功したのですが、 自分が使いたいLat式ミクを表示しようとするとフォルダの中に存在しているテクスチャが 見つからないと表示されアクセス違反が発生してしまいます。 なぜか指定されたデータは存在するのにプログラム側で「指定されたテクスチャファイルが見つかりません。」 と表示されるのか原因がわからず困っております。 読み込みのプログラムはこちらのサイトのpmdモデルの表示を参考にしました。 http://www2.ocn.ne.jp/~mhage/PIC_Trap/ データはソースコードが置いてある場所にモデル用のフォルダを作成しその中にすべて データを入れてあります。 パスの指定の方法は"関数の引数に("フォルダ名/モデル名.pmd")で指定しております。 ちなみにフォルダ内のデータをすべてソースコードが置いてるフォルダ直下に移した場合は表示されております . 環境 Windows7 VisualStudio2008 DirectXSDK November2007を使用しております

  • 外部テキストの一行単位での読み込み

    flashでタイピングゲームを作成しています。 問題を外部テキストファイルから一行単位で読み込み、 それを配列に保存し、ランダムで出力するという仕様です。 外部テキストファイルの読み込み方、一行単位での配列への保存がわかりません。 外部テキストファイル名 elang.txt //////////中身////////////// FOOT HAND HEAD //////////////////////////// /////////読み込みソース////////////////// i = 0; //ループ変数 elangword = new Array(); //配列 ///////////////////////////////////////// 読み込みソースはここまでしかできていません。 問題出力ソースはできています。 外部テキストファイルの中身の変更、読み込みソースの 変更をしてもかまいませんので、どなたがご教授していただけたら幸いです。 どうかよろしく御願い致します。 補足 C言語の知識はある程度あります。 /////////開発環境///////////////// windows xp sp2 Flash Mx /////////////////////////////////

  • ActionScript3.0 でノベルゲーム

    今現在、Flash5.5 AS3 でノベルゲームっぽいの(正確には、ノベル形式の学校紹介) を作っております。 以下のページにより http://literal.jp/flash/flash_load_textfile/ 外部txtを使用して、文字を出すことには成功したのですが、私が次にやりたいのは ノベルゲームのように、矢印ボタンを押すと、次のテキストが出てくるようにしたいです。 一体どのようにすればいいのでしょうか? 回答よろしくお願いします。

    • ベストアンサー
    • Flash
  • DirectXについて

    僕は某オンラインゲームをインストールしました。 そして、動作環境を見てみるとどうやらDirectX9.0cが必要なようでこれと、DirectX エンド ユーザー ランタイム Web インストーラを外付けHDDにインストールしました。 そして、ゲームを起動しようとすると、なんか「コンピューターに d3dx10_43.dll がないため、プログラムを開始できません。」というエラーが出て来ます。   どうやらd3dx10_43.dllはDirectXの事らしいのですが、なぜちゃんとDirectX9.0cを入れてるのにこのようなエラーが出るのでしょうか?  DirectX9.0cやユーザーランタイムを外付けHDDにインストールしたからでしょうか?  あっ、そういえば元々PCにはDirectX11が入ってるのですが、それが原因ですかね? まあとにかくDirectX9.0cをしっかり入れてるのになぜコンピューターにないというエラーが出るのかを知りたいです。  *知ってる方は教えて欲しいですが、11から9.0cにダウングレード出来ますか? もし、出来ないならどうすればオンラインゲームはプレイ出来ますか? ちなみにオンラインゲームはあの有名なWOTというゲームです。 よろしくお願い致します。

  • 外部テキストの読み込み

    Flash lite1.1で、外部テキストの読み込みが実現できません。 text.txtファイルをswfと同じフォルダに作成し、中身を「text=あいうえお」にしました。 swfのほうでダイナミックテキストで変数を「text」にし、同じシーンのボタンに下のスクリプトを記述 しました。 // on (press) { loadVariables("text.txt",0); } // よろしくお願いします。

    • ベストアンサー
    • Flash
  • DirectX 9.0が使えません

    ネットのゲームに必要で、DirectX9.0をマイクロソフトのHPに頂きに参りましたが上手く行かない様です。 パソコンにあまり詳しくありません;見たままの説明をしますのでアドバイス宜しくお願い致します。家のパソコンはウィンドウズMeです。 マイクロソフトのDLページでDirectX 9.0c End-User Runtimeを選択して「続行」を押し「ダウンロード」選択、「開く」を選択。 「DirectXセットアップの開始」という窓が表示され「同意」→「次へ」を選択。「コンポーネントのインストール」で「次へ」を選択、98、Me共通コンポーネントのダウンロードが始まります。 Me用DirectX 9.0のダウンロードが始まり、初期化→ファイルを抽出とコピー→最終処理→インストール完了→ 再起動。 起動後「システムの設定を更新します」という小窓が出ます。が、 その後、DirectX 9.0はどこにいるのでしょう?(@@;) フォルダにそれらしい「dxwebsetup.exe」という、箱を開けた絵のアイコンがありますが、DirectX 9.0にはなっていません。これを「開く」とまた「DirectXセットアップの開始」の窓が出ます。 今の状態はゲームも開きません。もし何かエラーなら、「インストール完了」と出ない気がするのですが… あと、かなり何回もこの作業をしてしまったのですが、パソコンの頭がパンパンになったりはしませんか? 長文で申し訳ありません。宜しくお願いします。

  • DirectXについて

     僕は某オンラインゲームをインストールしました。 そして、動作環境を見てみるとどうやらDirectX9.0cが必要なようでこれと、DirectX エンド ユーザー ランタイム Web インストーラを外付けHDDにインストールしました。 そして、ゲームを起動しようとすると、なんか「コンピューターに d3dx10_43.dll がないため、プログラムを開始できません。」というエラーが出て来ます。   どうやらd3dx10_43.dllはDirectXの事らしいのですが、なぜちゃんとDirectX9.0cを入れてるのにこのようなエラーが出るのでしょうか?  DirectX9.0cやユーザーランタイムを外付けHDDにインストールしたからでしょうか?  あっ、そういえば元々PCにはDirectX11が入ってるのですが、それが原因ですかね? まあとにかくDirectX9.0cをしっかり入れてるのになぜコンピューターにないというエラーが出るのかを知りたいです。 よろしくお願い致します。

  • DirectX10のメリット

    近々、新しいノートPCを購入しようかと考えています。 BTOで、グラフィックカードが「ATI Mobility Radeon(TM) HD 2300」が選択できるのですが、調べてみたらDirectX10が未対応との事。 そこで改めて思ったのですが、DirectX10のメリットとは?との事です。 思いつくのが3Dゲームとかですが、私はほぼ3Dゲームはやりません。 ゲーム以外の用途でDirectX10が使われる事はあるのでしょうか? 私がグラフィックカードを選ぼうとしているのは ・VistaのAeroが動いてても重くなれなければいい。 ・動画を再生しても負荷が掛からなければいい。 と言った理由です。 3Dゲームをする予定がなければとりあえずDirectX10に こだわる必要はないのでしょうか? 詳しい片居たら、教えてください。よろしくおねがいします。

専門家に質問してみよう