トップページgamedev
1001コメント372KB

DirectX総合スレ (Part5)

■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものです。2006/09/08(金) 23:56:42ID:0F5D1JWX
言語はC++
他の言語使ってる奴はいますぐ消えろ
0202名前は開発中のものです。2006/09/16(土) 19:47:35ID:LjBp93/T
>>201
>メッシュの隙間をちょうど通ってなにもヒットしなかったら
だから、隣接情報がいるだろ?w
0203名前は開発中のものです。2006/09/16(土) 20:25:41ID:q7N2QBcJ
点や線ではなく、面でガードすれば多い日も安心。
0204名前は開発中のものです。2006/09/16(土) 20:31:20ID:x7V8Yxct
なんかだんだん見えて来たが、ハイト厨とそれをベースに議論してる奴らって
隙間を抜けるとか隣接情報がどうのこうのとか言ってるってことは
キャラの接地判定を点座標かそこからの垂線かなんかで処理してるんだな?
それなら議論が噛み合わないのもわかる。漏れはマップとの当たり判定も
球コリジョンでやってるからな。その方が壁とか天井とか他キャラとの押し合い
とかも全部同じコリジョンで判定できるんで楽なんだよ。

三次元の世界で未だにマップチップ敷き詰めた二次元マップと変わらない
実装してる時点で、ロートルという指摘は間違っていなかったようだ。
0205名前は開発中のものです。2006/09/16(土) 20:37:34ID:LjBp93/T
>>204
球判定は解決になってねぇ気がする。
俺もヒットの範囲をでかくもつってのは対策としてやったことがあるけど
結局、ヒット後の戻す位置が不安定になるからキャラがガクガクする箇所がでたからその方法はボツった。
0206名前は開発中のものです。2006/09/16(土) 20:44:04ID:NCgixR60
ハイトマップの代替にするならバウンディングボックスだと思う。
0207名前は開発中のものです。2006/09/16(土) 20:51:36ID:mR0GXmuR
アルゴリズムに拘ったものに限って退屈でツマラナい糞ゲームだらけだからな。
処理負荷が高いだけで何の利点もない。やるだけ無駄。
0208名前は開発中のものです。2006/09/16(土) 21:00:25ID:XwJAVNiB
球コリジョンの人は床とか壁にも球コリジョンを敷き詰めるってこと?
ほんといろんなやり方があるもんだね
0209名前は開発中のものです。2006/09/16(土) 21:07:57ID:x7V8Yxct
>>208
おまえはハイト厨の仲間かw
>>205も>ヒット後の戻す位置が不安定になるからキャラがガクガクする
とか言ってるけど、球と平面の交差判定と最近接点の求め方も知らないのか?
ttp://www.amazon.co.jp/exec/obidos/ASIN/493900791X
これでも読んどけハゲども。

>>206
まさかバカ正直に表示用モデルのメッシュのポリゴン1つ1つと判定するとでも?
たしかにモデラーにメッシュ作ってもらえとは言ったが、そのぐらい想像しる。
0210名前は開発中のものです。2006/09/16(土) 21:12:18ID:LjBp93/T
>>209
いや、普通に↓の状態のどっちの平面を優先するか?って方法が難しいだろ・・・

       \○/
0211名前は開発中のものです。2006/09/16(土) 21:21:07ID:NCgixR60
>>209
> 平面
平面?

> 表示用モデルの
バウンディングボックスとか球コリジョンとか言ってるのに
どこから表示用モデルの話が?
0212名前は開発中のものです。2006/09/16(土) 21:46:28ID:XwJAVNiB
>>209
全部本に書いてあるだけの知識なんだったらなんでそんなに人を見下した態度になれるのか
よくわからn
0213名前は開発中のものです。2006/09/16(土) 22:09:09ID:x7V8Yxct
1から10まで全部実装方法説明しないと理解してくれないのか…

>>210
あれか、ヒット検出するたびにオブジェクトの位置更新する方法なのか。
漏れはヒット検出だけ先にがーっとやって良い位置を見つけてから動かしてる。
まさか更に後ろから追突されてる場合どうすんだ?とか聞くんじゃないだろうな?

これはもう>>187の言うとおり、想定してる実装が大幅に違うので
これ以上議論する必要はないな。ずっと平行線だろう。

>>212
説明すんのめんどくせーから良書と言われてる本提示しただけだよw
0214名前は開発中のものです。2006/09/16(土) 22:13:30ID:+w/URioF
>>209
今はオマエの方が痛いやつだな・・
処理が重くて実装が面倒(初心者向けじゃない)な方法を出してきて
優越感に浸ってるんだからな・・・
初心者へのアドバイスとしてはハイトフィールドは正解だよ。

LjBp93/T が言ってる抜けとかガクガクのことは、心配しない方がおかしい。
どんな優れた判定でも厳密な実装をしたとしても、抜けの心配ってのは尽きない。
それを「球コリジョンの判定だから大丈夫」ってのはPGとして問題ありだぞ。
0215名前は開発中のものです。2006/09/16(土) 22:43:30ID:EvPmSf1c
お前らそろそろ↓こっちに移動しろよ・・・
【Collision Detection】
ttp://pc8.2ch.net/test/read.cgi/gamedev/1015484028/
0216名前は開発中のものです。2006/09/16(土) 23:32:15ID:mhwk2PCU
ハイトフィールドに関してはデータ量に比べて、
地形が無表情になると感じたので、眼中になかった。

メッシュに関しては隙間があるなんて論外だ。
そもそもそんなメッシュは生成しないか、
どうしても生成する可能性があるなら、
事前にチェックする処理を実装すべきじゃないだろうか。

メッシュの範囲内で抜ける可能性があるのは、
三角形の辺や頂点付近で、計算誤差の関係で、
どの三角形の範囲内とも判定されない場合だろう。

現状、俺の場合は地面にめり込むと即破壊なんで、
(流れに沿えなくて申し訳無いが)無視しても問題なさげだが、
いずれ地面を這いずる処理もする予定なんで、
判定のときに決定されるパラメータを基準に、
高度を決めるに相応しい三角形を決定するかな。。。


正直、19時くらいから友人に拉致られていた。
亀レスでも一向に反省しない。
0217名前は開発中のものです。2006/09/16(土) 23:49:35ID:XwJAVNiB
>説明すんのめんどくせーから良書と言われてる本提示しただけだよw
面倒くさいくらいで自暴自棄なってたらこの先生きのこれない
0218982006/09/17(日) 00:56:16ID:95SApkAm
なんだよ、もう。
土曜日がお休みの奴らだけで話を進めてさ!
0219名前は開発中のものです。2006/09/17(日) 02:17:56ID:kab63KmG
はいはい

>>98
3D格子を立方体見立てて、地形と判定して自動生成汁
0220名前は開発中のものです。2006/09/17(日) 04:11:16ID:xi1qMqr5
ちょっとここで質問するのはどうかとも思ったんですが・・・詳しい方が多そうなので。
モーションキャプチャで作成されたBVHフォーマットのデータ集があります。
これを読み込んでスキンメッシュに適用したいのですが、キャプチャされた人の体型と、
キャラクターの体型が違うと、あちこちで破綻しますよね(歩きで足がめり込む、剣を
持つ手がズレる等)。こういうデータの問題は、3DCGのソフトとかで編集して何とかする
モノなのでしょうか。キャラの形を演技者に合わせるのでしょうか。それとも心配する
ほど誤差は出ないのでしょうか・・・
どうするのが一般的なのか教えて下さい。
0221名前は開発中のものです。2006/09/17(日) 08:55:25ID:DxO0onxt
モデリングソフトで調整しないとどうにもならないだろう。
0222名前は開発中のものです。2006/09/17(日) 13:15:12ID:VB8rm0m6
>>220
最近の3Dソフトは、体型やボーン構造が違うモデルに
モーションデータを破綻せずに転写する機能があるものがあるから、
それを使うといいかも。
といっても万能ではなくて、ある程度は微調整が必要だけど。
0223名前は開発中のものです。2006/09/17(日) 14:12:34ID:xi1qMqr5
>>221>>222
Poserが安くてそんな機能を持ってるように見えますね・・・
人体のボーン以外のデータ(擬似カメラマン等)がどう処理されるのか謎ですが。
ちょっとCG板でも質問してみます。
ありがとうございました。
0224名前は開発中のものです。2006/09/17(日) 14:33:11ID:cEnlpKqK
そういえば、先週くらいまでPoserは古いバージョンを無料配布してたな。
0225名前は開発中のものです。2006/09/17(日) 16:23:16ID:UIgbxGdy
HLSLでモデルやら線やらを描画してるんですがそれぞれのモデルで描画方法を
切り替えるようにすればいいのかいろいろ試しているんですがいまいち綺麗になりません。
今やっている方法としてはモデルの描画タイプなるものを変数でもってそこにenumで
定義したライト有とか無とかを入れて。それに応じた関数を1つずつ作ってその中で
設定して描画という流れをとっています。ほかに何かいい方法ありませんでしょうか?
0226名前は開発中のものです。2006/09/17(日) 17:31:19ID:l4eSGZ3a
>>225
それで問題ないんじゃん?

要は描画タイプをもっとスマートに設定したいってことだと思うんだけど、
俺はモデルのファイル名とかテクスチャのファイル名で区別するようにして
ロードする所で自動的に描画タイプ(に相当するもの)を設定してるよ。

あとは、モデルデータの中に情報を埋めこめられたらそれがベストだろうし、
あまり使われない emissiveColor とかに判断するための情報入れても良いし。
0227名前は開発中のものです。2006/09/17(日) 21:02:11ID:kVaTVo9Q
>>225
綺麗に実装したいということであれば、シーングラフとうい単語について調べてみるといいかも。
簡単に言えば、描画のための属性情報をデータに埋め込むための方法のひとつ。
ただ、一般的に極端に柔軟な構造になっていて(属性一つ一つが別オブジェクトとか)逆に
わかりにくくなってたりするので、その辺は差っ引いて考えたほうが良い。
0228名前は開発中のものです。2006/09/18(月) 16:38:09ID:nebAij1L
VC++6でDirectGraphicsを初期化するだけのサンプルコードって
どこかにありませんか?
0229名前は開発中のものです。2006/09/18(月) 16:53:16ID:hPW3CvLZ
>>228
オマイは初期化だけすれば満足なのか?

サンプル見れば初期化だけじゃなく色々処理してて楽しいぞ!
0230名前は開発中のものです。2006/09/18(月) 16:56:42ID:3J7XaVed
>228
それ欲しい気持ち分かるかも。
サンプルは短いほど良い。
初期化なら初期化のみのサンプルが欲しくなるけど何故か無いんだよね。
0231名前は開発中のものです。2006/09/18(月) 17:01:59ID:hPW3CvLZ
>>230 オマイもかw

ホラヨ↓

static LPDIRECT3D9 d3d = NULL;
static LPDIRECT3DDEVICE9 d3dDevice = NULL;

  // Direct3D生成
  if ((d3d = Direct3DCreate9(D3D_SDK_VERSION)) == NULL) {
    return E_FAIL;
  }

  // デバイス生成
  D3DPRESENT_PARAMETERS d3dpp;
  ZeroMemory(&d3dpp, sizeof(d3dpp));
  d3dpp.Windowed = TRUE;
  d3dpp.SwapEffect = D3DSWAPEFFECT_DISCARD;
  d3dpp.BackBufferFormat = D3DFMT_UNKNOWN;
  d3dpp.EnableAutoDepthStencil = TRUE;
  d3dpp.AutoDepthStencilFormat = D3DFMT_D16;
  if (FAILED( d3d->CreateDevice(D3DADAPTER_DEFAULT, D3DDEVTYPE_HAL, hWnd,
                  D3DCREATE_SOFTWARE_VERTEXPROCESSING,
                  &d3dpp, &d3dDevice) )) {
    return E_FAIL;
  }
0232名前は開発中のものです。2006/09/18(月) 17:02:02ID:YGVTfy8v
だってその後やりたいことによって初期化する内容が違うもの。
0233名前は開発中のものです。2006/09/18(月) 17:23:00ID:hyOjYwNq
つーか、今のDirectXは、VC++6.0 見捨てたんじゃなかったっけ
エラーでたような
0234名前は開発中のものです。2006/09/18(月) 17:25:42ID:hPW3CvLZ
確か VC++6.0 は見捨てられたはずなんだが、俺は最新のSDKでも
なぜか開発できてる。XPだと良かったとかあるんだっけ?
02352282006/09/18(月) 17:34:23ID:nebAij1L
ちょwwwwwwwwwwww
今のDirectXは、VC++6.0 見捨てたって本当ですかwwwwwwwwww
2年ぶりぐらいにゲーム作り再会しようと思ったけど
昔VC6で書いたコードがどっか行ったからまた一から書き直そうと思ってたんですけどwwwwwwwwww
0236名前は開発中のものです。2006/09/18(月) 17:48:58ID:hPW3CvLZ
>>228
せっかく再開しようと思ったんだから、とりあえずSDK入れてみなよw
ちなみにサンプルコードは、昔みたいにサンプルとして用意されてるんじゃなくて
Sample Browserっつーやつで欲しいやつをコピーして使うんだよ。

コピーされたやつは.NET的なプロジェクトなんでVC6.0ではそのままでは使えなくて
自前でプロジェクト作成して追加するか、中身だけコピペして使う。
0237名前は開発中のものです。2006/09/18(月) 18:11:28ID:nebAij1L
本棚にVC#.netがあったwwwwwwwwwwww
とりあえずこれに移行しようwwwwwwwwwwwww
version2002って書いてあるけどこれでいいのかなwwwwwwww
とりあえず>>231ありがとうwwwwwwwwwww
>>236もwwwwwwww
0238名前は開発中のものです。2006/09/18(月) 18:20:33ID:hPW3CvLZ
>>237
ちょwwwwww
VC#じゃ俺がさらしたコード意味なくね?w

それに、>>231>>236 も俺だwwww
0239名前は開発中のものです。2006/09/18(月) 18:37:41ID:u18krs0F
>>237
version2002って、それも古いよw

ttp://www.microsoft.com/japan/msdn/vstudio/express/
↑で「Visual C++ 2005 Express Edition」が(C# 2005も)
タダで配布されているから、これを使え。
ちなみに、MFCとかいくつか機能は削られてるけどね。
0240名前は開発中のものです。2006/09/18(月) 19:37:28ID:hx4aXYl5
ttp://msdn.microsoft.com/directx/XNA/gse/readme/default.aspx
0241名前は開発中のものです。2006/09/18(月) 20:02:41ID:nebAij1L
>>239
ありがとう
無料wwwwwwwwwwwww
>>240
ありがとう
英語わかんねwwwwwwwwwww
0242名前は開発中のものです。2006/09/18(月) 21:00:23ID:hqDoqF8g
>>239
windows.hが無いって言われてPSDK入れようとしたら解凍時にエラーが・・・orz
0243名前は開発中のものです。2006/09/18(月) 22:05:45ID:wQqaLVvp
DirectXを使用したライブラリをつくろおもてるんですがCVSとかで共有して皆が
簡単に触れるようにしておいたら結構アドバイスとかもらいやすいですか?
0244名前は開発中のものです。2006/09/18(月) 22:08:41ID:CKwMW6d1
cvsってサーバーはどうすんのさ
0245名前は開発中のものです。2006/09/18(月) 22:11:16ID:TsNNBYba
ん?専用スレにでも書いとけばいいんじゃないの?
0246名前は開発中のものです。2006/09/18(月) 23:09:43ID:hyOjYwNq
D3DUSAGE_RENDERTARGETでレンダリングターゲット作った後
pd3dDevice->Resetをかけて
pd3dDevice->Presentするとエラー出るんですが
回避方法あります?

Reset前にレンダリングターゲットReleaseしてもエラーでます;;
0247名前は開発中のものです。2006/09/18(月) 23:22:59ID:cmynSM1C
→Reset
→CreateVertexBuffer/CreateTexture
→BeginScene
→EndScene
→Present
の順でもエラーがでるん?
0248名前は開発中のものです。2006/09/19(火) 00:20:26ID:U6KIFbrr
サーバーは自分のPCでやろ、おもてます。
0249名前は開発中のものです。2006/09/19(火) 00:40:10ID:t7b8fFIa
ファイルのアップローダがあるだけで十分だろ。
0250名前は開発中のものです。2006/09/19(火) 00:56:56ID:SaZdkbYW
>>243
そもそもどんなライブラリを作るの?
単なるラッパーなら誰も相手にしないと思うよ。
0251名前は開発中のものです。2006/09/19(火) 00:57:12ID:1N/W0sXJ
今からライブラリ作るなら少なくともELやDXライブラリ以上のものを
目指さないと使ってくれる人居なさそうだねぇ。

使ってくれる人居ないと結局csvで触ってくれる人もアドバイスやら
要望やらも来なくなるし・・・
0252名前は開発中のものです。2006/09/19(火) 01:06:07ID:t7b8fFIa
まず、あれ、プログラムなんて組まないで、
どんな機能が必要でどうまとめたら上手くいくかスレ立てて考えろよ。
でも、どういうライブラリが欲しいのか方針はお前が決めろ。
みんな勝手な要望ぎしぎし詰め込んでも実際作れないだろ?
XFileが読み込めて、バンプ、環境、スキンメッシュ、フォグ、・・・対応しろとか言われても
これ、対応するだけで1年はかかりそうな勢いだぞ。

通常描画のスキンメッシュ
パンプ描画のスキンメッシュ
環境マップ使った描画のスキンメッシュ
 ・
 ・
 ・

ってやること同じくせに量だけは多いんだ。
会社で作ったときもかなり時間使ったし、まず、仕様を絞らんとどうにもならんぞ。

逆にライブラリなんて作らないで、仕様だけまとめておいて公開しておくってのも手だ。
もちろん、どんな経緯でそういう仕様に決まったのか書いてあると改善案も出しやすい。
結構、ライブラリの仕様を決めるのも一苦労だろ?
0253名前は開発中のものです。2006/09/19(火) 01:24:36ID:BOyyTazN
>>246
SetRenderTargetを使っているなら、それを元に戻した?
0254名前は開発中のものです。2006/09/19(火) 01:27:01ID:1N/W0sXJ
しかももうじきDx10リリースだしなぁ・・・
互換を考えてもDx9フル対応くらいの勢いがほしいねぇ。
0255名前は開発中のものです。2006/09/19(火) 01:36:21ID:oOnCYiGc
>>248
DirectXラッパー…自前鯖…オナニー…
 
>>252
>上手くいくかスレ立てて考えろよ
 
SourceForgeにプロジェクト立てる。これが正解。
オナニーが頓挫したら墓標のごとく未来永劫残す。カッコイー(・∀・)
0256名前は開発中のものです。2006/09/19(火) 01:45:48ID:KfiG372I
自宅鯖でCVSの話が出た時点で既に死相が出てるな。ネタ確定。
0257名前は開発中のものです。2006/09/19(火) 01:55:02ID:t7b8fFIa
そういやDirectX10が出ちまうから少しまってろよなw
0258名前は開発中のものです。2006/09/19(火) 01:55:43ID:oOnCYiGc
スレ立てるなら開き直って
最高に厨臭いDirectXラッパーを作るスレ
がいいな。潔くて好感度急上昇だな。
0259名前は開発中のものです。2006/09/19(火) 01:59:05ID:t7b8fFIa
もうちょっと真面目にDirectX以外の部分のゲームでよく使うクラスとかいいかな。
0260名前は開発中のものです。2006/09/19(火) 02:16:05ID:gf5/DDGm
>259
例えば
0261名前は開発中のものです。2006/09/19(火) 02:30:20ID:E+vk7FJ4
うんこ
0262名前は開発中のものです。2006/09/19(火) 07:30:08ID:t7b8fFIa
>>260
そんな想像力もない奴と話なんぞできん。
0263名前は開発中のものです。2006/09/19(火) 08:59:22ID:1N/W0sXJ
>>256
Lunaは自宅鯖でSubversion管理されてなかったか?w
0264名前は開発中のものです。2006/09/19(火) 17:33:32ID:9n1QZKMP
知恵を貸しておくれorz
HLSLで描画前にテクスチャ数を指定してシェーダが切り替わるようにしたいんだけど、
上手く切り替わらず、毎回テクスチャONの状態になってしまいます……。

エフェクトファイルは↓なんですが、合ってるかどうか見てくれませんか?
http://gamdev.org/up/img/7619.zip
0265名前は開発中のものです。2006/09/19(火) 18:35:40ID:n+W5xQne
つーか、エフェクトは特に問題なさそうなので実行してみたら
ちゃんと切り替わるじゃんYO
UseTexCntの値を入力してないんじゃね?
0266名前は開発中のものです。2006/09/19(火) 18:50:23ID:n+W5xQne
いや、逆か…
値を入力しないとテクスチャONにならないし、UseTexCntが1のままとかかな?
0267名前は開発中のものです。2006/09/19(火) 19:47:47ID:9n1QZKMP
確認ありがとうございます。エフェクトは合ってたのか……。
さっきGetInt()で確認したらUseTexCntの値はちゃんと描画前に0・1が切り替わっていました。
んー、何が原因なのかさっぱり分からない。orz ソースの方をもっっとよくトレースしてみます。
0268名前は開発中のものです。2006/09/19(火) 21:37:36ID:/6g1Cemc
243です。とりあえず
第1弾 ライブラリ機能を上げさせていただきます。
・テクスチャマネージャ
・シェーダマネージャ
・ファイルシステム
・インプットシステム
・オーディオシステム
・Xファイル(スキン)
・描画系はできる限りシェーダで行う
・算術関数
・フォント
・スクリプト
・カメラ
・視垂体による描画判定
・メモリマネージャ
・2Dスプライト
・パーティクル
・プロファイラ
・LOD
・カメラ位置からの距離によるミップマップ
・オーダリングテーブル(オブジェクトのソート)
0269名前は開発中のものです。2006/09/19(火) 22:56:41ID:t7b8fFIa
>>268
乙。
じゃあ、次は優先度を・・・。
0270名前は開発中のものです。2006/09/19(火) 23:18:58ID:PUi+Z24t
>>267
もう済んでるかもしれないけど、描画直前(BeginPass()後)に
パラメータいじった場合は、CommitChanges()呼ばないとだめよ。
0271名前は開発中のものです。2006/09/19(火) 23:47:57ID:SaZdkbYW
>>264
力になれなくて残念なんだが・・・

VertexShader/PixelShaderの配列を定義して
変数で切り替えられるのを初めて知った!!
ありがとう!! そして、頑張れ!
0272名前は開発中のものです。2006/09/20(水) 00:18:57ID:vxl0rQet
268です。
第2弾 優先決めました。
・1.テクスチャマネージャ
・6.シェーダマネージャ
・17.ファイルシステム
・10.インプットシステム
・11.オーディオシステム
・5.Xファイル(スキン)
・9.描画系はできる限りシェーダで行う
・2.算術関数
・3.フォント
・18.スクリプト
・4.カメラ
・12.視垂体による描画判定
・16.メモリマネージャ
・8.2Dスプライト
・7.パーティクル
・19.プロファイラ
・13.LOD
・15.カメラ位置からの距離によるミップマップ
・14.オーダリングテーブル(オブジェクトのソート)
0273名前は開発中のものです。2006/09/20(水) 00:25:00ID:37EIjtZt
>>272
見辛い・・(´Д`)

メモリマネージャとかファイルシステムを後回しして大丈夫か?w
「描画系はできる限りシェーダで行う」なのにシェーダマネージャが
Xファイルよりも後だし・・パーティクルとか妙にハエーしw

一応確認しておくが、DirectX使ったゲーム作ったことある?
02742642006/09/20(水) 00:25:09ID:sFU/X0hE
名前でパラメータを指定したらエラーが出たので良く確認したら、
別のエフェクトのパラメータに書き込んでましたorz

ハンドルで指定していたらエラーが出ないのね……。
0275名前は開発中のものです。2006/09/20(水) 00:26:16ID:8TG2Ez5s
・1.テクスチャマネージャ
・2.算術関数
・3.フォント
・4.カメラ
・5.Xファイル(スキン)
・6.シェーダマネージャ
・7.パーティクル
・8.2Dスプライト
・9.描画系はできる限りシェーダで行う
・10.インプットシステム
・11.オーディオシステム
・12.視垂体による描画判定
・13.LOD
・14.オーダリングテーブル(オブジェクトのソート)
・15.カメラ位置からの距離によるミップマップ
・16.メモリマネージャ
・17.ファイルシステム
・18.スクリプト
・19.プロファイラ
ソートしてやった
0276名前は開発中のものです。2006/09/20(水) 00:31:44ID:37EIjtZt
>>274
> さっきGetInt()で確認したらUseTexCntの値はちゃんと描画前に0・1が切り替わっていました。
これを信じて、そのオチはないと信じてました・・・(;´д`)
0277名前は開発中のものです。2006/09/20(水) 00:38:20ID:sFU/X0hE
ごめんなさい。
SetInt()をコピペしてGetInt()に変えて試してました・・・。
こんな単純なミスだと思わなかった。orz
0278名前は開発中のものです。2006/09/20(水) 00:45:56ID:37EIjtZt
俺ならこんな感じ
・フォント       // デバッグが楽になる
・メモリマネージャ   // まずコレ
・ファイルシステム   // テクスチャ読むため(早くも飽きてくる)
・テクスチャマネージャ
・2Dスプライト     // テクスチャ確認用(もう完成した気分)
・シェーダマネージャ  // モチベーション維持のため
・描画系はできる限りシェーダで行う
・Xファイル(スキン) 
・算術関数       // (惰性で開発を続け始めるころ)
・カメラ
・インプットシステム   // カメラを移動してみたい(もう限界)
※ここで開発終了の可能性高し※
・プロファイラ      // 以降のパフォーマンス確認のため
・LOD
・視垂体による描画判定
・オーダリングテーブル(オブジェクトのソート)
・カメラ位置からの距離によるミップマップ
・パーティクル
・スクリプト
・オーディオシステム
0279名前は開発中のものです。2006/09/20(水) 00:59:57ID:JLgKEs2/
>>275,278
なんか完成予想図がいつもどおりのラッパーだな。
完成してもゲーム作るの程遠いっつか夢がもてないw
これじゃ作ってもあんまり意味ないと思うんだけど・・・。

逆に考えてみね?
どんなゲームが作りたいか?
ってのをまず出して、そのためのライブラリを考えてみね?
0280名前は開発中のものです。2006/09/20(水) 01:03:24ID:8TG2Ez5s
>どんなゲームが作りたいか?
NTや95でも動くエロゲ
0281名前は開発中のものです。2006/09/20(水) 01:06:03ID:JLgKEs2/
>>280
そしたら迷わずGDI+を奨める。
0282名前は開発中のものです。2006/09/20(水) 01:07:13ID:JLgKEs2/
だめだ、うごかねぇか?>95 NT
0283名前は開発中のものです。2006/09/20(水) 01:08:33ID:JLgKEs2/
ま、1日じっくり考えてみようや。
0284名前は開発中のものです。2006/09/20(水) 01:09:08ID:a1eP4hFR
GDI+って、.NET?
95やNTでも動いたっけ?
0285名前は開発中のものです。2006/09/20(水) 01:11:59ID:JLgKEs2/
>>284
>GDI+ はWindowsXPから使えるようになった2DグラフィックAPIである。
>XP以前でも、gdiplus.dllを入れれば利用可能である。(98以降か、NT4.0sp6以降)
95は駄目っぽい。
0286名前は開発中のものです。2006/09/20(水) 01:12:42ID:8TG2Ez5s
冗談なのにマジレスされた。

多分動かない
XPか2000か忘れたけど、デフォルトのDLLにバグがあって
修正版同梱しなきゃいけないというか
GDI+は、あんまりいいうわさを聞かない。
というか95とかは、全部ソフトウエアレンダリングで。
0287名前は開発中のものです。2006/09/20(水) 01:19:58ID:vxl0rQet
どんなゲームが作りたいかと言われればPCゲームのトレンドがのっかるもの。
正直、上であげた機能+αあれば2Dのゲームはまぁ2Dエフェクト用のエフェクトファイル
みたいなものを作らなければいけないだろうけど大丈夫だと思ってます。
3DでもRPGとかアクションとかを考えていったらLODとかは必須だし、シェーダもほしいし、みたいな
ことを考えていくと結構いろいろあるに越したことはないし。DX10のことを考えればDX9バージョンで
ある程度しっかりしたものがあれば移行も楽になるし、当分の間はDX10バージョンとDX9バージョン
の両方のバージョンが必要みたいなことも考えられますのであえてこういったゲームが作りたいから
この機能が必要っていう流れよりある程度のどのジャンルでも必要なものは全部入れたい(願わくば)。
実は今もちょこっと作ってて結構いろいろ修正しなくちゃいけないもののソースはあります。
0288名前は開発中のものです。2006/09/20(水) 01:30:55ID:JLgKEs2/
>>287
ちがうわボケ。
具体的なゲーム名が欲しいね。
つまりさ

枝葉の部分に熱心で全然ゲーム作れそうにないじゃん。このライブラリ。

って言いたいのよ。
0289名前は開発中のものです。2006/09/20(水) 01:31:26ID:SMchqepX
俺ならこの順番だな。
ついでにメモも。

・1.メモリマネージャ          :メモリ管理はWindowsに任せたほうがよくないか?
・2.ファイルシステム          :できればソース変更無しにパックしたファイルからの読み込みも対応して欲しい
・3.テクスチャマネージャ        :何をマネージするん?
・4.2Dスプライト            :がんばれ
・5.フォント              :D3DXFontは使うなよ
・6.インプットシステム         :がんばれ
・7.オーディオシステム         :Oggの対応はしてないと結局外部のサウンドドライバ使う事になりそう
・8.描画系はできる限りシェーダで行う  :がんばれ
・9.シェーダマネージャ         :がんばれ
・10.算術関数              :Sin/Cosのテーブルでも作るん?コリジョン関係?
・11.カメラ               :がんばれ
・12.Xファイル(スキン)         :がんばれ
・13.パーティクル            :がんばれ
・14.視垂体による描画判定        :がんばれ
・15.LOD                :がんばれ
・16.オーダリングテーブル(オブジェクトのソート) :シーングラフとか最低でもオクトツリーくらいは欲しい
・17.カメラ位置からの距離によるミップマップ   :Direct3Dが自動的にやってる気がする。Mipmap使うより異方性フィルタの方が綺麗だけどね
・18.プロファイラ                :がんばれ
・19.スクリプト                 :Luaでよくね?

言っちゃなんだが列挙された機能だけ見るとLunaと大して変わらないな。
0290名前は開発中のものです。2006/09/20(水) 01:45:23ID:37EIjtZt
>>280
つJavaアプレット

>>287
DirectXそのまま使えよw
0291名前は開発中のものです。2006/09/20(水) 02:25:42ID:9pKZ8pjk
前スレで、
 DrawPrimitive 使って、128x128ぐらいのポリゴンを50枚ぐらい描画してます。
1回のDrawPrimitive で、1枚だけなので、50回DrawPrimitive を実行してます。
すると、ポリゴンがときどき変な形になるんです。
頂点がずれたように、斜めになったりとか。
そこで、一回DrawPrimitive を実行した後に、Sleep(3); を入れてやってみたんです。
すると、速度は落ちましたが、ポリゴンが変になることは無くなった。
てことは、前回の描画が済んでいない間に描画してる?
そこで、DrawPrimitive の最後の引数に、D3DDP_WAIT とかやってみたけどダメでした。
何が原因でどーやれば直りますか?

って書いた者ですが、Win32APIで頂点用メモリ確保したたのを、
D3Dの頂点バッファ使ったものにしたけど、結果は同じでした。
0292名前は開発中のものです。2006/09/20(水) 03:01:32ID:8TG2Ez5s
>>289

D3DXFontってやっぱ駄目なん?
0293名前は開発中のものです。2006/09/20(水) 03:36:56ID:8TG2Ez5s
メタセコで、反射光とかを強調した設定で
Direct3D描画とOpenGL描画を比べたけど
OpenGLのほうが細かく綺麗
OpenGLってええのん?
0294名前は開発中のものです。2006/09/20(水) 09:00:43ID:SMchqepX
>>292
そのそもユーザーがインストールしてないフォントは出せないし、
影、グラデーション、縁、とかをつけようしたら結局画像で持たなきゃでしょ。

あとFF11やPSUのキャラの名前みたいに3D空間に文字を表示するのは
D3DXFontなんかじゃやってられないべ。
0295名前は開発中のものです。2006/09/20(水) 12:07:45ID:ymA1aj6X
ライブラリなんかより特殊効果エディタがほしいんだよな
タイムラインとかあってテクスチャの位置とか透明度とか大きさのアニメをクニクニいじれるの
仕様を決めたら誰か勉強がてらつくってくれる?
0296名前は開発中のものです。2006/09/20(水) 12:30:13ID:Xs5BryGe
>291
エスパーを待てないならソースを晒せ。
0297名前は開発中のものです。2006/09/20(水) 12:40:17ID:evuW5ro9
腹減ったからついでにヤキソバも晒せ
0298名前は開発中のものです。2006/09/20(水) 14:44:46ID:+KfsWgDs
>>297
http://portal.nifty.com/2006/09/18/b/
0299名前は開発中のものです。2006/09/20(水) 15:19:51ID:fb5XSQAC
>>291
ドライバ
0300名前は開発中のものです。2006/09/20(水) 15:46:47ID:+KfsWgDs
>>294
デバッグ用、エロゲっぽいメッセージ用にD3DXFont版も持ってていいと思う
0301名前は開発中のものです。2006/09/20(水) 15:47:25ID:37EIjtZt
>>291
> って書いた者ですが、Win32APIで頂点用メモリ確保したたのを、
> D3Dの頂点バッファ使ったものにしたけど、結果は同じでした。

当然ポリゴン50枚分のバッファを用意して試したんだよな?
■ このスレッドは過去ログ倉庫に格納されています