無料で俺がRPGを作れるようにするスレ

■ このスレッドは過去ログ倉庫に格納されています
03/07/26 20:18ID:PRWX91og
やる気だけはあるぞ。
260245
垢版 |
04/04/08 22:58ID:rdLQdFbl
ファイル操作の辺りって結構でかい壁ですよね。(俺だけかも)
いずれ絶対やらなきゃなんないし、かなり面倒くさそう。。。

今回はPCを矢印キーで操作して画面をスクロールできるようにしました。
ついでに当たり判定もつけました。
ttp://gamdev.org/up/img/439.zip

現状はまだ隣のマスへワープしてる状態なので、
つぎは滑らかに移動できるようにしたいと思います。
26198
垢版 |
04/04/09 00:11ID:vWYKL39D
俺もファイル操作で何回も挫折してます。
バイナリでの保存方法教えて。エロイ人。

>ついでに当たり判定もつけました
ダウソしてみたんですが、実行前の注意必読.txt読んだら
怖くて実行できなくなってしまったorz
262200
垢版 |
04/04/09 00:16ID:PDI25ArR
うぃっす。そのうち暇になったら俺も晒そうかな。今は忙しいが。

>>259
XMLはHTMLと同じようなマークアップ言語のことじゃないん?
だから出力形式としてはテキストorバイナリになると思うんだけど。
あと、ツール関係もC言語で作るって言うのはどうかと。
ツールは他の言語で作って出力データだけ使うのが良いと思われる。
テキストで出力するのであれば、マップチップ番号をカンマで区切って出力したり
すればいいんじゃない。
コレが有名なCSVファイルね。
ちょうど245の晒しているマップデータをカンマで区切ったような形式。
もちろん、出力するデータの桁が決まっていれば区切る必要はない。
バイナリはただ単に数値をそのまま出力しただけのデータ。
通常のテキストファイルは文字コードによって人間の理解できる文字になっているが、
コンピュータで扱っている数字はそのまま出力した場合、テキストファイルのように
数字を読み取ることは出来ない。
しかし、プログラムから読み込む場合は余計な数字>数値変換を行わなくて済むのと、
サイズが小さくなると言うメリットがある。
263200
垢版 |
04/04/09 00:23ID:PDI25ArR
発言が前後しちまったーヨ。
出力・・・猫でもわかるミレ
264245
垢版 |
04/04/09 06:14ID:PD92y+NK
>>261
何があるかわかんないので、一応、免責事項を書いておいたほうがいいかなと思って。
フリーソフトに限らず書いてあるのが多いので見習いました。
多分大丈夫だと思います。多分。。。(でもやっぱり責任はもてませんw)

>>262
CSVにしようと思ったんですけど、まんどくせのでとりあえずあんな感じに。
カンマとかって普通に文字列操作でくっ付けて〜.CSVでWilteFileすれば
出来上がるんですかね。そのうちやってみようと思います。

ちなみに私のほうはVC++でやってるので、
マップツールの方はダイアログベースで作るか
APIでクライアントにコントロール直張りにして作るか、
普通のクライアントウィンドウ+モーダレスダイアログで作る予定。
MFCは使わない。というか使い方知らない。
「猫でもわかる」に「MFCの使い方覚えてるうちにAPIで1000個くらいアプリ作れちゃう!」
とか書いてあるので、それを信じてひとまずMFCは放置しようかな、と。
ところで↓みたいに
ttp://www.nurs.or.jp/~urara/sbo/grp/sbo086.png
チップをスクロールバー付きで並べて表示して、
それを選択したりするようにするのって「リストビュー」をつかうのかなぁ、、、
↑のはどうやってやってんだろう。ここが難関。誰か教えてたもれ。
04/04/09 08:53ID:NNIXc1rk
>>261

バイナリファイル保存は、CreateFile()でファイルハンドルを作って
バイナリデータ(データを記録したバッファ)をWriteFile()で書き
出し、ファイルハンドルを閉じる、という流れでできます。
lpszFilePathをファイルパス、lpDataをデータの先頭アドレス、dwSize
をデータのバイト数とすればこんな感じ。

HANDLE hFile = CreateFile(lpszFilePath, GENERIC_WRITE, 0, NULL,
        CREATE_ALWAYS, FILE_ATTRIBUTE_NORMAL, NULL);

WriteFile(hFile, lpData, dwSize, &dwWrote, NULL);

CloseHandle(hFile);

ファイル操作は、標準関数よりAPIの方が楽ですね。
266200
垢版 |
04/04/09 18:37ID:PDI25ArR
>>264
VBとかもっとらんの?
VCしかもってなくて、C言語しかやってないっていうのなら、しょうがないけど。

チップセレクトは多分スクロールバーとBMPをあわせているだけだと思う。
スクロールされたらそれに合わせてプログラム内でBMPの表示位置を変えてるんじゃない?
267245
垢版 |
04/04/09 21:40ID:PD92y+NK
滑らかにスクロールするようになった。
けど、なんか無理矢理できてる感が強し。やたら重いし、
デバイスコンテキストとかこんなに何枚も作る必要あるのだろうか。。
hdc//一番表。ディスプレイ
hdcMem//一枚裏。ここにいろいろ合成して最終画像を作る。
hdcMap//マップの画像ファイル読み込んでおいておく所。
hdcChr//キャラの画像ファイル読み込んでおいておく所。
hdcFld//マップデータにしたがってマップを描く所。スクロールに備えて一マスでかい。

ttp://gamdev.org/up/img/443.zip

次はNPCを勝手に歩き回らせようと思います。
次回はきつそうだからソース晒して助けを求めることになるかも。

>>266
リストビュー使ってないんですかねぇ。
でも使ってもできそうな感じです。なんとなく。
26898
垢版 |
04/04/09 22:43ID:Hsbv26Yj
>>262
>ツール関係もC言語で作るって言うのはどうかと
C++以外だとJavaScriptしか使えないです。保存できない・・・

>>265
ありがとうございます。バイナリと思われる意味不明な文字列で保存までできますた。
読み込みもたぶんできそうです。

>>267
特に重いとは思いませんでした。
つか、あと2,3日で追い抜かれそうな気がしてきたorz

269245
垢版 |
04/04/10 18:02ID:rQAMSH7v
適当に動くNPCを追加して、キャラの余白は透過するようにしました。
ttp://gamdev.org/up/img/447.zip

次はキャラ同士で当たり判定をつけて、
NPCの数を動的に増やしたり減らしたりできるようにしようかと思ってますが、
めんどいだけで特に得るものは無さそう。。。
でも見た目楽しそうなのでやってみようと思います。

>>つか、あと2,3日で追い抜かれそうな気がしてきたorz
ふぉぉぉぉぉぉおおおお!!!
27098
垢版 |
04/04/11 21:26ID:ih6xwcUu
>>269
左移動・上移動はいいんですが、右移動・下移動の時の画面に現れてくる部分の描画が遅いような感じです。


・エンターキーを押すとコマンドが出るようにした。
・マップデータはバイナリのまま読み込むようにした。
・ソースを修正しやすいように修正した。
http://www.geocities.co.jp/SiliconValley-Bay/2736/zz101.txt
http://www.geocities.co.jp/SiliconValley-Bay/2736/rpg_a10.zip

次はスクリプトを使ってNPCと話せるようにしようと思う。
271245
垢版 |
04/04/11 22:41ID:OD43hm2K
今日はハマリ中でうpできそうにない・・・

>>270
試してみてもらえたようで、ありがとうございます。
起動時のままのウィンドウサイズでも変になってますか?
家でもウィンドウを広げると確かに下とか右の方の描画が変なんですが、
一応起動時のサイズが標準なので、普通だったら見えないところだから
そのままでいいやと思って直してなかったんですが、
標準サイズのままでおかしくなってるとしなら直さないといけませんね・・・

ちなみにソース拝見しましたが、APIのCreateWindowでゲーム内ウィンドウを
作ってるのが新鮮ですた。こういうのって自力で原始的に作んなきゃならないと
思い込んでたので作るのを逃避してきたのですが、
APIのウィンドウを使えるならマウスドラグで位置移動とかサイズ変更とか
もできそうですね。
27298
垢版 |
04/04/12 00:16ID:A/n3T6P2
>>245
あ、起動時のままなら問題ないです。

>APIのCreateWindowでゲーム内ウィンドウ
自力で描画っていうのもやってみたんですが、いろいろ問題があったので
子ウィンドウにしました。

ただ、子ウィンドウを使うとウィンドウが無効になったときの処理が
面倒だったりするので自力で描画したほうが楽なのかもとか思ってます。
04/04/12 00:35ID:4A1duCG6
君らまだまだ先は遠いぞ
274245
垢版 |
04/04/12 01:08ID:+oNLbu0z
>>272
環境によってウィンドウの出方とか違うのかと思ってましたが、
よかったです。安心しました。

>面倒だったりするので自力で描画したほうが楽なのかもとか思ってます。
そうですか。。。今の課題をクリアしたら私も色々テストしてみるとします。

段階的学習っていうの見てますが、もっと先のレベルも欲しい所ですね。
別に無くてもやらなきゃならないことは山ほど見つかりますけど、、、
275245
垢版 |
04/04/12 18:29ID:+oNLbu0z
キャラ同士に当たり判定をつけ、移動するとき向きを変えるようにした。
NPCをテンキーの+-キーで増減できるようにした。(お遊びで。でも予想外に辛かった。。)
なぜか12,3体辺りでバグるので10体までに制限してあります。
ttp://gamdev.org/up/img/471.zip

ちなみに前回のバージョンでは
キャラの透過転送にGetPixel,SetPixelをつかって原始的にやっていたんですが、
キャラの数が増えるとかなり重かったので今回はTransparentBltなる関数を使うようにしました。
でも環境によっては(Win98とか)リークを起こすいわく付きの関数らしいので
実行時は自己責任でおながいします。うちは2000ですが、特に問題ないです。
27698
垢版 |
04/04/12 22:51ID:Zs0PVIFw
>>275
XPですが、いい感じでした。
NPC増やすのって何気に難しそう・・・
04/04/13 00:14ID:MuenDC6+
>>252
オジサンはAPIで作るほうがめんどいと思いますorz...
278245
垢版 |
04/04/13 00:54ID:4GaN7j22
>>276
どもです。
あれをちょっと改良したらへぼいARPGみたいなのができそうかなという気が。
でもとりあえずなんかウィンドウを表示してみようかなぁ。
次に何をやるか迷い中です。

>>277
>オジサンはAPIで作るほうがめんどいと思いますorz...

まじですか。通りすがりなんていわないで、
オラのためにDX習得までの段階的学習目標を50段階くらい作って下さい。
お願いします。お願いします。

ところでDirectXの画面ってAPIのコントロール類って貼れないんでしたっけ。
04/04/13 01:19ID:MuenDC6+
>>278
では、DirectXのSDKを落としてきてインストール
デモをコンパイルして 三角形を回してみる。

とりあえずここまでかな。

280245
垢版 |
04/04/13 21:24ID:4GaN7j22
>>279
できました!サンプルをほんのちょっと改造して矢印キーで回転するようにしました。
実行時にカーソルが砂時計なのは何ででしょう。
支障ないみたいだけど激しく気持ち悪い。

ttp://gamdev.org/up/img/480.zip

次の、、次の課題をください!
それまで今までの2Dを改造してます。
04/04/13 22:39ID:qfExSMIG
>>280
それでは、頂点の数を増やしてみる
あとは5種類ある頂点の種類をそれぞれ試してみる。

次にこのサンプルはSDKが供給する「ライブラリソース」をインクルードしていますが
それを別フォルダにコピー(複製)して、自分用のライブラリファイルとすべし

自分用(スケルトン)フレームを作成する
28298
垢版 |
04/04/13 23:17ID:eA8EtTKv
DirectX早くやりたい(´・ω・`)

http://www.geocities.co.jp/SiliconValley-Bay/2736/zz105..txt
http://www.geocities.co.jp/SiliconValley-Bay/2736/rpg_a11.zip
・NPCと話せるようにした。
・タイトル画面をつけた
・スクリプトのメリットがよく分からないので使わなかった。
・ソースが多くなったせいか、汚いせいか、自分でも読みにくくなってきた。

次はNPCに話しかけたらエンディング、という流れを作ろうと思う。
あとはごりごり作っていけば完成しそう
283245
垢版 |
04/04/13 23:53ID:4GaN7j22
>>281
さっきうpした奴に頂点一個追加して正方形を表示するのはできました。
5種類ある頂点の種類っていうのが何をさしているかちょっとわかんないのですが、
トライアングルストリップとかトライアングルファンとかの事だとしたら
試してみて違いを確認しました。

>>282
なんかウィンドウ表示が変ですた。
NPCに隣接しててもしてなくても、コマンドを実行すると
下の会話ウィンドウにもコマンド一覧があらわれるみたいです。
古いバージョンがうpされてるのかも。。。
28498
垢版 |
04/04/14 00:12ID:ASstlwbG
>>283
ぁ、ほんとですね・・・タイトル画面作るのに集中してて気づきませんでした。
原因調査してみます
28598
垢版 |
04/04/14 00:54ID:ASstlwbG
やっとバグとれた('A`)
lpszClassNameがかぶってるのが原因でした。
今までかぶってても平気だったのは何でだろう・・・
04/04/14 05:41ID:EE4mRz9N
>>283
それですそれです。線分と点などもあると思います。
あるものは偶数しかNGなものもあります。
ではライブラリソースを自分用にしてください。
それを改造していきます。
287245
垢版 |
04/04/14 17:34ID:TCeeFkNf
>>親父PG

正直に言うであります。
意味が分からないであります!  壁| 〇 =3 | ̄|_
開発にはVCを使ってますが、
現在のソースでは、一つのヘッダファイル(d3dx9.h)を
SDKの入ってるフォルダからインクルードしてまして、
コンパイルしたら「外部依存関係」の所に他のヘッダファイルが色々追加されました。

これらを自分のプロジェクトのフォルダの方などにコピペするってことでしょうか。。。
こんなヘタレですいません。
04/04/14 19:01ID:EE4mRz9N
>>287
そうです。自分用のライブラリフォルダを作ってそこに複製します。
(元の位置のものは残しておかないと、他のサンプルが動かなくなる)
d3dapp.cppを覗くとフル画面モードの切り替えやウインドサイズの変更
ポーリングループの部分等があり、なかなか面白いものがありますよ。

289245
垢版 |
04/04/14 22:05ID:TCeeFkNf
>>親父PG
できました。一応、画像です。点とか線にもなりました。
d3dapp.cpp見てみましたが、かなりムズイです。そんなレベルです。
ですが、がんばって習得するので課題を、、課題を下さい!
ttp://gamdev.org/up/img/483.jpg

2DPRG、ちょっとだけ改造しました。
「+」キーを押すと適当なHPをもったNPCが発生します。
NPCに向かって「-」キーを押すとHPが減って、0になると倒せます。
けど連射が効いちゃってるので押しっぱで移動してるだけで事がすみます。
ttp://gamdev.org/up/img/484.zip
環境によって速度も一定じゃないし、ソースも描画部分とか入力部分とか
バラバラなのでその辺を一旦綺麗にできたらウィンドウを描画してみようと思います。
04/04/14 23:45ID:EE4mRz9N
>>290
ここのサイトを参考にしてポリゴンを貼ってみると良いですよ

ttp://www.realdigital.co.jp/densi2/index.html
291245
垢版 |
04/04/15 23:47ID:DNQtOokO
>>とうりすがりの親父PG
テクスチャ張れました。
http://gamdev.org/up/img/488.jpg

もっと、、、、もっと課題をください!
ShadowbaneとかWorcraftみたいなカッチョいいゲームを作りたいのであります!
04/04/16 00:28ID:HZnOSJqT
課題
フレームレートを一定に保ち、フレームスキップを実装せよ
293245
垢版 |
04/04/16 15:24ID:rC4Ao3Jo
とりあえずFPS測ってみました。
前の課題作ってるときから「どうも遅い」と薄々感じてたんですが、
DX9SDKに入ってるチュートリアルの三角が回るやつを改造して測ってみたら
案の定40fpsしか出てませんでした。
試しに、DX8に入ってる同じ三角が回るサンプルに同じ改造をして測ったら
400fpsとか出てる模様・・・
ビデオボードがGF2GTSだからDX9だとダメなのかなぁ。。。
8と9のサンプルで特別違う事をしてるとは思わないんですが、なんでですかね?
29498
垢版 |
04/04/16 18:11ID:Lk4Qkb2j
完成しますた。クソゲーです。
http://www.geocities.co.jp/SiliconValley-Bay/2736/zz109.txt
http://www.geocities.co.jp/SiliconValley-Bay/2736/rpg_a12.zip
全然ドラクエじゃねえ・・・・

次はDirectXやります。
295親父PG
垢版 |
04/04/17 01:25ID:N6rYd7aK
>>293
テクスチャ貼れましたか。頑張っているようですね。
ではスプライトもついでにやっておきましょう。
DirectXのほうが簡単という私の前の意見に、そろそろ納得していただけると思います。
さてこのサンプルでは高精度タイマーユーティリティが使われています。
どこに在るか確かめ、どのように使われているかを探し出せば、自ずと遅くなっている原因もわかるかもしれません。
296245
垢版 |
04/04/17 15:31ID:UZYSuoQB
>>親父PG
ありがとうございます。
fps抑えられてた原因がわかりました。(というか教えてもらいました)
危うくビデオボード買うところでした。スプライトも表示できました。
http://gamdev.org/up/img/498.jpg

楽なのかどうかはまだ慣れてないのではっきりと実感できないのですが、
はやく自由に使いこなせるようにがんがります。ので、ので、何か適当に課題を下さい!

>>294
ふぉおおおおぉおぉぉぉぉぉぉ!!俺も仕上げるぞー!
29798
垢版 |
04/04/17 17:56ID:lFucyLLi
三角形って
\Samples\C++\Direct3D\Tutorials\Tut02_Vertices\Vertices.cpp
↑これですか?そのままだとコンパイルできないんですが・・・

エラー E2209 Vertices.cpp 14: インクルードファイル 'd3d9.h' をオープンできない
エラー E2141 Vertices.cpp 22: 宣言の構文エラー  あと6行ほど続く。

もしかしてbccだとDirectX使えないっていうオチですか?
04/04/17 20:44ID:O0XDlP+3
http://therpg.sourceforge.jp/pukiwiki/index?%5B%5B%B3%D0%BD%F1%A1%A7BorlandC%2B%2B5.5%A4%C7%A4%CE%A5%B3%A5%F3%A5%D1%A5%A4%A5%EB%5D%5D
↑これやってみそ
04/04/17 22:47ID:mXcf9nch

>>296
245さん お疲れさまでした。
さてここから先ですが、それは作る対象によって異なると思います。
今の状態でBGとスプライトが表示できるわけですから、最低条件である「表示」に関してはクリアできたわけです。

ではこの先何をすべきでしょう?。
純粋に表示能力を学習したいのであれば、3D表示>ピクセルシェーダー>キューブテクスチャ
他にランドスケープのライブラリを設計するなど

またRPG等などスクリプトが必要なシステムであれば、そちらの設計も必要です。

「マウスクリックの場所を検地した後、どのように振舞うか」この部分を内部でインラインで処理するか、
「処理データ-(外部ファイルの読み込み等)」によってコントロールするようにするか? など

また包括的なシステムというのも念頭において、全体のクラス設計も必要になります。

ということで、私が教えた?(実は何も教えていないw)事はここで一旦終了です。
DirectXの導入と実際にPGを組む事ができたという事で、当初の目的は達成できました。


おめでとう!


不詳、私もここの板でスレッドを立てていますので、おひまな時には覗いてみてください。
300245
垢版 |
04/04/17 23:39ID:UZYSuoQB
>>親父PG
今までありがとう!
まだまだ先は長そうですががんばります。Shadowbaneみたいなゲームを作るまで!
親父PGさんもたまには私の成長っぷりを見にきてください。

これからはまたシコシコ取り組みます。
とりあえずはハイトフィールドを歩けるくらいになるまでを大きな目標にしようかなぁ。
つうことでモーション無しXファイルを読み込んでみる事にします。

>>297
私が弄ってたのはそれです。DXがんばってマスターしましょう!
30198
垢版 |
04/04/18 20:41ID:6QlIhFIw
>>300
むしろ挫折しそうですorz

>>298
4.のmakeでCommand syntax errorというのが出てmakeできません。

で、bccは諦めてVC++が無料なのでインスコしてみたんですが、
clのパスはたぶん通ったんですが、ヘッダファイルのパスが通せなくて苦戦してます・・・
302245
垢版 |
04/04/19 00:12ID:3QCXa6Lb
ウチはVC++6使ってるんですが、

「ツール」→「オプション」→「ディレクトリタブ」内で、
「表示するディレクトリ」を「インクルードファイル」に指定し、
下のところの「新規作成」でDXSDKのIncludeディレクトリを追加。
同様に「表示するディレクトリ」を「ライブラリファイル」に指定し、
DXSDKのLibディレクトリを追加。

そしてプロジェクト毎の設定として、
「プロジェクト」→「設定」→「リンクタブ」内で、
オブジェクトライブラリモジュールのところに
d3d9.lib d3dx9.lib dxerr9.lib dxguid.lib
などを追加してます。

ウチと環境違ってたら私はヘタレなのでよく分んないです。スマソ。
30398
垢版 |
04/04/19 18:57ID:x8GMNOCf
無料版なので、dos窓でいろいろやらないとだめなんです・・・

VC++ ->DirectXどころか、coutすらまだ使えない状態(printfは使える)

bcc ->三角形をコンパイルしようとすると
     Fatal: オプションが必要 : LD:\directx9sdk\Lib\Borland といわれる。

ここを参考にしてみた。↓
ttp://www.geocities.co.jp/Milano/8000/bcc/
04/04/19 20:17ID:eJn0oU39
>303
VCでのライブラリモジュールのリンクは
#pragma comment(lib, "ライブラリ名.lib")
を使うと少し楽できるかも。(正しいやり方じゃないかもしれないけど・・・・)
305245
垢版 |
04/04/19 20:55ID:3QCXa6Lb
>>303
あぁ、無料のVC++ってなんだろうと思ってたら
コンパイラが無料配布されてるんですか。。。
お役に立てずに申し訳。
306親父PG
垢版 |
04/04/19 23:42ID:HvqP5Z0m
>>301
Visual Studio 6.0 を使う場合
インクルード ファイルの検索パス
ヘッダー ファイルのパスが正しいこと、DirectX のヘッダー ファイルのディレクトリがコンパイラに最初に検索されるパスになっていることを確認すること。
インクルード パスを確認するには、[ツール] メニューの [オプション] をクリックし、[ディレクトリ] タブをクリックする。これにより、次のようなダイアログ ボックスが表示される。

ここでリストの先頭に表示されているパスが、最新の DirectX のヘッダー ファイルを置いているフォルダになっていなければならない。
このデフォルト パスは、C:\DXSDK\Include である。このパスが表示されていない場合は、それをリストに追加し、[ディレクトリ] タブ内のツールバー コントロールを使ってそのパスをリストの先頭へ移動すること。
                   ↓
エヂエタ|タブ|デバック|互換性|ビルド|ディレクトリ|ワークスペース|||
プラットホーム
「WIN32」
ディレクトリ
C:\DXSDK\Include ←これ

リンカの検索パス
リンカがリンク ライブラリを検索する際に使う検索パスと、その検索順を確認すること。リンクの検索パスのリストも、[ディレクトリ] タブで確認できる。
これを行うには、[ツール] メニューの [オプション] をクリックし、[ディレクトリ] タブをクリックする。ダイアログ ボックスが表示されたら、[表示するディレクトリ] ボックスの [ライブラリ ファイル] をクリックする。
これにより表示されたリストの先頭のパスが、最新の DirectX のリンク ライブラリを置いているフォルダになっていなければならない。このデフォルト パスは、C:\DXSDK\Lib である。

プロジェクトのリンク ライブラリ
サンプルと一緒に提供されたプロジェクト ファイルを使う場合は、この設定を確認する必要はない。この設定値はプロジェクト ファイル内で指定されている。
新しいアプリケーションをコンパイルする場合は、[プロジェクト] メニューの [設定] をクリックする。これにより、次のようなダイアログ ボックスが表示される。



30798
垢版 |
04/04/20 00:31ID:2oyWdrfK
>>304
#pragma comment(lib , "libcp.lib")
をつけてみたんですが、だめでした。
自分でもよく分からないんですが、環境変数いじってたらいつの間にか
coutが使えるようになってました。

>>305
clとかvccとか言ったほうが分かりやすかったですね

>>306
ありがとうございます。でもVisualStudioではないんです・・・


bccはDirectX8以上と相性が悪いらしいのでさっきアンインストールしてしまったんですが、
clでwindows.hが使えるようになったら再びインスコしてみます。
04/04/20 01:42ID:TlrWn8fZ
http://goldfly.ld.infoseek.co.jp/program/program.html#directx
ガイシュツ?
04/04/20 22:55ID:eL87iK8i
>307
私の環境では、インストール先のディレクトリに出来る”vcvars32.bat”と言うバッチファイルを実行しただけで、
環境変数がすべて設定されました。
31098
垢版 |
04/04/21 18:22ID:bfgLD/fX
>>308
やってみたんですが、
外部シンボル 'Direct3DCreate9' が未解決
というエラーが出ます。意味が分からないんですが、何がいけないんでしょうか?


>>309
そうだったんですか・・・必死に自分でやってましたorz


PlatformSDKも、XMLが読めないとか言われて落とせないので、
VC++(製品版)を買ったほうがいいような気もしてきました・・・
04/04/21 18:29ID:+YydXBKM
「プロジェクトの設定」のリンクのところで、d3d9.libをリンクすればいいハズ。
あと、必要に応じてほかのLibもリンクしてやる。
関数ごとに必要なLibはドキュメントに書いてある。
312311
垢版 |
04/04/21 18:38ID:+YydXBKM
>>310
BccDevの設定のことな。
これでDX9がBCCで使えるはずだが、
できたプログラムがDLLを導入した環境じゃないと動かないかも知れない。
試してないのでわからん。スマン。
31398
垢版 |
04/04/21 18:56ID:TkqwtIOq
>>311
コンパイルできました。
でもVertices.exeをダブルクリックしても何も起きないです。

\Samples\C++\Direct3D\Binのファイルも半分ほど開けないので、
ビデオカードのせいでしょうか?
314311
垢版 |
04/04/21 19:08ID:+YydXBKM
Vertices.exeはハード依存ではないハズなので、
起動しないのはどこかがおかしいのかも。
俺も初心者なのでBinのプログラムやビデオカードについては正直わからん。
31598
垢版 |
04/04/21 19:33ID:TkqwtIOq
>>314
別のPCでやったら三角形が表示されました。
なんでだろう
316245
垢版 |
04/04/21 19:46ID:KyjgQXxH
意味があるかわかんないけど、
Windowsの「スタート」メニューから「ファイル名を指定して実行」で
dxdiagっていれるとDirect3dとかDrawの環境テストができますよ。
ダメだったらビデオボードのドライバを新しいのに更新してみるとか。
31798
垢版 |
04/04/21 23:45ID:HhcihRE8
>>316
テストしてみたんですが、問題なしでした。
ドライバを更新したら、今まで見れなかったサンプルが見れるようになったんですが、
Vertices.exeはまだ見れないです・・
31898
垢版 |
04/04/22 00:12ID:56TmnEhv
画面の色数のようなものをいじってたら見れるようになりました。
やっとスタートラインに立てました。
教えてくれた人ありがとうございます。
319311
垢版 |
04/04/22 00:31ID:bRXr1w99
おお、原因はわからんが(w、とりあえず動いてよかった。
これからもガンガレ!


320245
垢版 |
04/04/24 22:29ID:jIgXjODn
Xfileのロードができた。
今更ながらクラスをちょっと勉強したので、
一つのモデルを読み込み、オブジェクトとして沢山配置したり
位置とか向きを管理できるようにしてみようと思う。
04/04/25 13:27ID:kOXdBOhy
ある点のRGB値を取得するときに使うGetPixelってありますよね
あれのRの値のみ取得する方法ってあるんですか?
あったら教えてください
04/04/25 15:10ID:pLOIoMuL
GetRValue
323321
垢版 |
04/04/25 19:05ID:kOXdBOhy
>>322
マジありがと
32498
垢版 |
04/04/26 21:10ID:bAZf+D6a
サンプルのソース見ててもさっぱり分からん・・・
DirectXのお勧めの本とかサイトあったら教えてください
04/04/27 23:00ID:6oVtyqti
ところで気になるのですが、メモリ内に仮想的にDIBを造る方法をご存知ですか?

HDC hDC = CreateCompatibleDC( NULL );

DWORD* pBitmapBits;
BITMAPINFO bmi;
ZeroMemory( &bmi.bmiHeader, sizeof( BITMAPINFOHEADER ) );
bmi.bmiHeader.biSize = sizeof( BITMAPINFOHEADER );
bmi.bmiHeader.biWidth = ( int )tW;
bmi.bmiHeader.biHeight = ( int )-tH;//ここを-すると左上頂点のDIBができるマジお勧め
bmi.bmiHeader.biPlanes = 1;
bmi.bmiHeader.biCompression = BI_RGB;
bmi.bmiHeader.biBitCount = 16;//1 pixcel あたりのBit数
// Create a bitmap for the font
hbmBitmap = CreateDIBSection( hDC, &bmi, DIB_RGB_COLORS,( void** )&pBitmapBits, NULL, 0 );


これでメモリの中にDIBが作成されます。
先ほどからGetPixcel 関数の話が出ているので書き込みました。

画像を扱う場合は一気に転送がセオリーだと思います。
もし既出であればスレ汚しすみません
326親父PG
垢版 |
04/04/27 23:02ID:6oVtyqti
>>324
ttp://www.realdigital.co.jp/densi2/
32798
垢版 |
04/04/28 21:34ID:/L+BRof0
>>326
ありがとうございます。見てみます。
328名前は開発中のものです。
垢版 |
04/04/29 09:25ID:fKr8I6Zs
hoshu
32998
垢版 |
04/04/29 20:54ID:eFo7PbpH
三角形を、押したキーに応じてX,Y,Z軸について回転するところまでできました。

著作権とかよく分からないんですが、ほとんどサンプルの元の状態から変わってないんですが、
ソース公開しても大丈夫なんでしょうか?
330245
垢版 |
04/05/02 11:03ID:OAzbaBIZ
誰が書いてもほとんど同じになるような短いコードだし、
適当に改造しときゃ大丈夫じゃないですかね。コメントけしたり。
もちろん責任はもてませんが。
331名前は開発中のものです。
垢版 |
04/05/26 09:52ID:ZkbU9bqo
とまっちゃったよ?
04/05/26 10:16ID:RveiUJUf
ツクール買え
33398
垢版 |
04/06/01 00:42ID:51ZpkQEi
別のスレでゲーム作ってるのでこのスレは卒業します。
サイトも適当につぶしておきます。
334名前は開発中のものです。
垢版 |
04/06/01 18:51ID:TjtQoeyw
98の卒業祝いあげ
04/06/01 21:45ID:clhKLVnl
どこのスレに進学しましたか。
04/06/02 03:14ID:K5/c3qHf
廃人スレ
337尿 ◆TQRzkzBQz6
垢版 |
04/06/02 16:39ID:G5yOjIbE
.
338名前は開発中のものです。
垢版 |
04/07/15 22:01ID:X+w0MHvL
新入生募集上げ
339新入生
垢版 |
04/07/16 15:46ID:rveJEKqt
オレが応募します。
7月22日から開始します。
340245
垢版 |
04/07/16 16:23ID:+XSBeZ7m
ヒロシです。俺だけジャージの色が違います。
ヒロシです。みんな俺のことをさん付けで呼びます。
04/07/17 12:16ID:5LuAOAhe
ヒロシです
教科書の表紙が俺だけ違うとです。
342新入生2
垢版 |
04/07/28 14:45ID:5jDkoPBH
俺も応募していいですか?
C/C++とWINDOWS APIでRPG作りたいです。
343新入生2
垢版 |
04/07/29 15:33ID:+VMuaX4q
へんじがないただのしかばねのようだ・・・

んじゃ勝手に居座らせてもらいます。
とりあえず98氏のサイトで勉強してみます。

(´-`).。oO(人来ないかなぁ…)
04/07/29 15:52ID:+VpB19P6
ROMはたくさんいると思われ
345新入生2
垢版 |
04/07/30 10:12ID:zk8Gdi3K
良かった。見てる人いたのか。

では、まだそんなレベルまで行ってないんですが質問させて下さい。
マルチスレッドはRPG製作に使いますか(使った方が良いですか)?
そこの辺りはチョットしか勉強していないので…
04/07/30 11:09ID:5XdzxF19
普通にタスクシステムで十分だろ?
04/07/30 11:12ID:A0tDow7H
ネトゲだったら使う
348新入生2
垢版 |
04/07/30 11:43ID:zk8Gdi3K
そうですか。じゃあマルチスレッドの勉強はまた今度にします。
349新入生2
垢版 |
04/07/31 11:36ID:ypOdEBQi
DIB訳分からん
350新入生2
垢版 |
04/07/31 15:36ID:ypOdEBQi
すいません。DIBのところで質問させて下さい。
ttp://www.sm.rim.or.jp/~shishido/savebmp.html
では、バッファの1ラインの長さの計算に
if ((dwWidth*3) % 4==0) 〜という式を使ってますが、
ttp://www.sm.rim.or.jp/~shishido/dib24.html
では、if (iWidth % 4 == 0) 〜になっています。
この違いは何でしょうか?
351新入生2
垢版 |
04/07/31 15:40ID:ypOdEBQi
すいません。自己解決しました
04/07/31 19:47ID:YZJtdaLG
自己解決したら、内容を書いてくれると、後々の人のためになりますよ
# というか、自分の質問に責任もって下さい!
353新入生2
垢版 |
04/07/31 22:58ID:ypOdEBQi
>自己解決したら、内容を書いてくれると、後々の人のためになりますよ
上はビットマップの横の長さが4の倍数か見てて
下は横一列のバイト数が4の倍数か見てるんではないかと。
間違ってますか?

>というか、自分の質問に責任もって下さい!
結構悩んだので質問したんですが、その直後閃いたというか何というか…申し訳ない
354新入生2
垢版 |
04/07/31 23:01ID:ypOdEBQi
>上はビットマップの横の長さが4の倍数か見てて
>下は横一列のバイト数が4の倍数か見てるんではないかと。

逆だった…_| ̄|○

下はビットマップの横の長さが4の倍数か見てて
上は横一列のバイト数が4の倍数か見てるんではないかと。

です。ほんとごめんなさい。まじでごめんなさい。
04/08/01 11:09ID:b9uMxnzb
>>345
>マルチスレッドはRPG製作に使いますか(使った方が良いですか)?

今、マルチスレッド(メインスレッドの他にゲーム処理用スレッドを
もつ)でRPGを作っていますが、あちこちにメッセージポンプを仕込む
必要がなくなってなかなか良い感じかも。スレッド別に処理を明確に
切り分けられるのなら、マルチスレッド化する、という道もあるでしょ
うね。
ただ、これまでスレッドを使ったことがないのなら、RPGを作るために
わざわざスレッドを覚える、という必要はないと思いますが。

>>350-354
>この違いは何でしょうか?

深い意味はありません(^^;。
どっちでも同じなので。

>下はビットマップの横の長さが4の倍数か見てて
>上は横一列のバイト数が4の倍数か見てるんではないかと。

そうですね。
ビットマップの横幅が4の倍数であるか、と24ビットDIBピクセル列
の横幅が4の倍数であるか、は結果的には同じ(n % 4が0ならば、
(n * 3) % 4も0)なので、プログラムではn % 4 == 0で判定した方
がすっきりするでしょうけど。

私も以前は「ピクセル列の横幅を4の倍数に合わせる」意味を明確
にするためにiWidth * 3という書き方をしていた面もありますが・・。
356新入生2
垢版 |
04/08/01 11:38ID:gbRGZbfr
著者さん、わざわざレスありがとうございます。
サイトの方、いつも参考にさせて頂いてます。
この場を借りて感謝
357名前は開発中のものです。
垢版 |
04/08/06 15:31ID:vsNkeVch
夏季講習上げ
358新入生2
垢版 |
04/08/06 16:43ID:jaMpxEea
今、98氏のソースを見て勉強しているのですが、「NPC実装」のプログラム
ttp://www.geocities.co.jp/SiliconValley-Bay/2736/zz82.txt
をコピペして実行するとプログラム終了時に
Rum-Time Check Failure #3 - The variable 'lpDIB' is being used without being defined.
というエラーが出てしまいます。

一方、氏の「NPC実装 のEXE 」
ttp://www.geocities.co.jp/SiliconValley-Bay/2736/rpg_a6.zip
を実行しても終了時にエラーが出ません。
何故でしょうか?教えてください。

環境はWindowsXP、Visual C++ .NETです。
04/08/07 12:34ID:0vLmZFUE
今年の新入生は教えて君でだめだ。
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況