- 1 名前:デフォルトの名無しさん mailto:ライシンマハケン [2008/07/17(木) 13:50:04 ]
- 1 名前:デフォルトの名無しさん[sage] 投稿日:2008/04/09(水) 09:55:56
※回答する人も、質問する人も必ず読んでください これらに当てはまる人のための質問スレです。 1.C/C++は多少理解している。 2.最近DirectXを始めたばかり 3.SDKを見ても、Googleで検索しても、いまいち理解できない人 4.余計な雑談は不要ですよ 【 回答してくださる方 】 ・ できるだけ優しく質問に答えてあげてください。 ・ 優しく教えるのが嫌でしたら、解決するためのヒントだけでも結構です。 「ググれ」「SDK見れ」以外の回答でおながいします。 ・ 神ですら理解不能な質問は無視して下さい。 【 質問する方 】 ・ どんな事で躓いているのか明確にしよう。 ・ 長くならないなら躓いている部分のコードを晒してみれ。 ・ 解決した場合、お礼を言うのは当然だが、何をどうしたら解決したかを明確に書こう。 ・ 回答して貰ったら、出来るだけお礼もしよう。 【C++】 DirectX初心者質問スレ Part17 【C】 pc11.2ch.net/test/read.cgi/tech/1207702556/
- 57 名前:デフォルトの名無しさん mailto:sage [2008/07/27(日) 18:58:28 ]
- 1枚のテクスチャに30〜60枚分の画像を収める
サイズにもよるけど
- 58 名前:デフォルトの名無しさん mailto:sage [2008/07/27(日) 19:44:13 ]
- インタラクティブな場所でないならムービー化
- 59 名前:デフォルトの名無しさん [2008/07/27(日) 21:37:36 ]
- すいません 質問させてください
directshowがdirectx9の後半(?)から使用できないっていうんで しかたなくdirectx8でdirectshowやってるんですが 3dの描画にはdirectx9を使用しています directx9と8の両方が使用されているゲームをPLAYするには 9,8両方のランタイムが必要になるのでしょうか・・・ 教えてくださいm(_ _)m
- 60 名前:デフォルトの名無しさん mailto:sage [2008/07/27(日) 21:56:57 ]
- 9のランタイムが入っている=1〜9のランタイムが入っている
- 61 名前:デフォルトの名無しさん mailto:sage [2008/07/27(日) 22:00:19 ]
- 1〜9?アホか?
- 62 名前:デフォルトの名無しさん mailto:sage [2008/07/28(月) 00:11:29 ]
- 【狂育部】ソフトウエア興業11【業無部】
science6.2ch.net/test/read.cgi/infosys/1216289288/599 C++の洒落プログラムを落としただけで炎上したんだがwww 読むとかなり面白いw 世の中こんな会社もあるから気をつけてくれw マジで!
- 63 名前:デフォルトの名無しさん mailto:sage [2008/07/28(月) 04:55:59 ]
- DirectSoundでループ再生を行う場合に再生開始は曲の開始からでも
ループした際は曲の途中から再生したいんですが、こういうのって やはり、再生が終わった事を検出して自分で再生位置を指定して…っていう やり方になるんでしょうか? それともループ再生用のパラメータ等が存在するのでしょうか?
- 64 名前:デフォルトの名無しさん mailto:sage [2008/07/28(月) 05:23:24 ]
- 回答どうもありがとうございます。
>>56 ちょっと違うけど、「アクションゲームのキャラ絵」という表現が近いです。 扱いとしてはキャラのモーションとかゲームのエフェクトとかになると思います。 やっぱり諦めるしかないですかねー… >>57 小さい画像なら、それでいけそうですね。 大きい画像(200x200とか)の場合はどうしようもなさそうですが… >>58 コーデック必須にしたくないので、たぶん無理かと思われます… 無圧縮にするくらいなら、画像全部メモリに持ってろって話になると思いますし。
- 65 名前:デフォルトの名無しさん mailto:sage [2008/07/28(月) 10:40:53 ]
- >>64
画像を一気に読み込むとして、 どれぐらいのメモリが必要か計算してみると良いよ。 システムメモリで行けそうだったらシステムメモリに確保すればいい。 200x200ピクセル で 60fps、30秒だと 200MB ぐらい。きついね。 ムービーが無難。 無責任なことを書くと、メモリマップドファイルでベタで画像情報をファイルにしておくとか? 出来たとしても速度は出ないと思うけど。
- 66 名前:デフォルトの名無しさん mailto:sage [2008/07/28(月) 11:31:46 ]
- >>64
そういうときは普通ポリゴンモデルを使うんじゃねぇの。 毎フレーム分の画像なんてアホな事普通やら無いぞ。 2Dアクションならせいぜい5フレとかで間引くし。 コーデックが云々いうがWindows95とかターゲットにしない限り MPEG1が再生できない環境なんてないと思うが。
- 67 名前:デフォルトの名無しさん mailto:sage [2008/07/28(月) 20:09:33 ]
- もろに2Dゲームが無くなった理由そのものだしな
3Dに比べて、使うメモリに対して表現能力が少なすぎる>2D
- 68 名前:デフォルトの名無しさん mailto:sage [2008/07/28(月) 21:44:11 ]
- スパロボのカットインのようなことがやりたい、に100万ペソ
- 69 名前:デフォルトの名無しさん mailto:sage [2008/07/28(月) 23:26:37 ]
- そんとき読み込むので十分だろwあんなのw
- 70 名前:デフォルトの名無しさん mailto:sage [2008/07/29(火) 00:27:58 ]
- スパロボのはおもいっきり解像度落としてるし、
そもそもツール上でキーフレームアニメのエディットしてるだろ。 全フレーム画像もってるわけがねえ。
- 71 名前:デフォルトの名無しさん mailto:sage [2008/07/29(火) 02:23:56 ]
- 多数のmeshをマテリアルの設定だけを変えてDrawSubsetしているのですが
描画するmeshの数が1000くらいあってDrawSubsetを一回ずつ呼び出して描画 すると重くなってしまって困っています. 一回のDrawSubsetで一度に描画できたり,あるいはその他の方法で あまり負荷をかけずに描画するにはどうすればいいか教えてください
- 72 名前:デフォルトの名無しさん mailto:sage [2008/07/29(火) 06:12:52 ]
- >>71
カメラにmeshは全部入るの? カメラに入らないmeshはちゃんと省けてる?(=視錐台カリングはちゃんとできてる?)
- 73 名前:デフォルトの名無しさん mailto:sage [2008/07/29(火) 06:39:24 ]
- >72
はい.カメラに入るメッシュだけDrawSubsetしてます
- 74 名前:デフォルトの名無しさん [2008/07/29(火) 07:26:32 ]
- 質問です。
DirectX で描画した上に、ウィンドウコントロール(具体的にはテキストエディット)をおきたいと思っています。 そこで、描画が終わったら必ずウィンドウコントロールも再描画されるように、 下のような感じのメインループを書きました。 for (;;) { if (PeekMessage(&msg, 0, 0, 0, PM_REMOVE)) { if (msg.message != WM_QUIT) { TranslateMessage(&msg); DispatchMessage(&msg); } else { break; } } else { Render(); RedrawWindow(コントロールのHWND, NULL, NULL, RDW_INVALIDATE); } } しかし、まだコントロールがちらつくことがあります。 DirectX の描画と WM_PAINT のタイミングの問題のような気がしているんですが、 こういうとき、どの辺をチェックすればいいでしょうか?
- 75 名前:デフォルトの名無しさん [2008/07/29(火) 07:39:09 ]
- >>73
それで1000個? ハードにできないことやろうとしてない? 最適化してやっと動く程度ならやらんほうがいいかもよ マップチップとかなら一つに纏めるとはやいって聞くけど それがどのくらいかわからん なんていうかそもそも仕様がハードに合っているか っていうのから考えたほうが良さげ
- 76 名前:デフォルトの名無しさん mailto:sage [2008/07/29(火) 08:28:03 ]
- >>73
一つのメッシュは何ポリゴンぐらい? 1フレーム当たりの描画ポリゴン数を計算してみた?
- 77 名前:デフォルトの名無しさん mailto:sage [2008/07/29(火) 09:32:33 ]
- >>73
DrawSubsetというかDrawPrimitiveは非常に重い処理。 流石に1フレームに1000回はかなり無茶なレベルだぞ。 まったく同じモデルを複数表示してるならジオメトリインスタンスを使え。
- 78 名前:デフォルトの名無しさん mailto:sage [2008/07/29(火) 10:42:52 ]
- >>74
GDIとDirect3Dの共存は基本的には無理。 GDIはGDIサーフェスという固定のバックバッファに対してしか描画しないが、 Direct3DのフルスクリーンモードではFlipにより画面に表示されるバッファが 入れ替わり、GDIサーフェス以外のバックバッファが表示されたりする。 ただし、SetDialogBoxMode(TRUE)を使えば一応可能。 ウインドウモード限定なら、WS_CLIPCHILDRENスタイルを指定すれば、 コントロールが上書きされなくなるので再描画も必要ない。
- 79 名前:74 mailto:sage [2008/07/29(火) 11:08:32 ]
- >>78
ありがとうございます! WS_CLIPCHILDREN を知りませんでした。ためしてみます。
- 80 名前:デフォルトの名無しさん mailto:sage [2008/07/30(水) 00:21:14 ]
- >>79
全部DirectXで書く方が早いし楽だと思うが・・・
- 81 名前:デフォルトの名無しさん mailto:sage [2008/07/30(水) 00:30:10 ]
- 文字描画の方法を知らないからコントロール叩いてるんだろな
- 82 名前:デフォルトの名無しさん mailto:sage [2008/07/30(水) 10:16:23 ]
- デバッグビルドにはd3dx9d.lib、リリースビルドにはd3dx9.libといったようにリンクすると思うのですが、
これはコンパネから変更できるDirectXランタイムのデバッグ/リテールとは関係ないのですか? リリースする時にはリリースビルドに下上で、ランタイムをリテールにしてビルドしなければいけないのでしょうか?
- 83 名前:デフォルトの名無しさん [2008/07/30(水) 11:20:24 ]
- pow2textureとnonpow2の違いってなんなんでしょうか?
- 84 名前:デフォルトの名無しさん [2008/07/30(水) 13:32:32 ]
- 質問です。
ゲームでログイン時やチャット時などのテキスト入力する箇所って Win32APIのエディットコントロールを利用してるのでしょうか? それともDirectX側でそのような機能が用意されてたりするのでしょうか? SDKのサンプルを調べてみようと思っていたのですが 自分の環境だとサンプルで使う用のプラットフォームSDKの インストールが上手く行かずコンパイルが出来ず調べ辛く、 そういったUI部分をDirectXで実装する事を詳しく紹介してる サイト・書籍などあれば教えていただけると助かります。 (「DXUTを使え」とかじゃなしに、SDKを利用した実装方法が知りたい)
- 85 名前:デフォルトの名無しさん mailto:sage [2008/07/30(水) 13:44:14 ]
- 自力でキー関係のウィンドウメッセージを処理し、(必要によっては)IMEを呼び出し、文字を描き、
あたかもエディットコントロールかのような動作を実装している
- 86 名前:デフォルトの名無しさん mailto:sage [2008/07/30(水) 13:44:46 ]
- >>77さんの言われているジオメトリインスタンスについて載っているサイト等教えていただけませんか?
探しているのですが、探し方が悪いのか見つかりません。
- 87 名前:デフォルトの名無しさん mailto:sage [2008/07/30(水) 14:26:53 ]
- msdn.microsoft.com/en-us/library/bb173349(VS.85).aspx
- 88 名前:デフォルトの名無しさん mailto:sage [2008/07/30(水) 16:46:28 ]
- 質問です。
「任意軸による回転」のプログラムってどんな時に使うのが理想なのでしょうか? 実装はできましたが、いまいち面白い使い方がわかりません・・・。 ググってみましたが、調べ方が下手なのか任意軸で回転させる行列の作り方ばかりで 具体的な使用箇所等は見つかりませんでした。
- 89 名前:デフォルトの名無しさん mailto:sage [2008/07/30(水) 17:12:42 ]
- 「任意軸による回転」が1つあれば、「X軸の回転」「Y軸の回転」「Z軸の回転」を3つ別々に作らなくて済む
- 90 名前:デフォルトの名無しさん [2008/07/30(水) 17:17:30 ]
- メモリ上にあるxファイルのバイナリデータを読み込む関数ってありますか?
D3DXCreateTextureFromFileInMemoryExみたいな感じで
- 91 名前:デフォルトの名無しさん [2008/07/30(水) 17:21:26 ]
- ( ^ω^)なんというD3DXLoadMeshFromXInMemory
- 92 名前:デフォルトの名無しさん mailto:sage [2008/07/30(水) 17:21:57 ]
- ボールが転がるようなの作るのときに使ったよ
まっすぐ転がすだけならX軸回転だけでいいが、途中で横に転がるなんて場合に便利
- 93 名前:デフォルトの名無しさん [2008/07/30(水) 17:27:23 ]
- ( ^ω^)D3DXLoadMeshFromXInでググッてでてこなかったからあきらめて質問してしまった、さんくすなり
- 94 名前:デフォルトの名無しさん mailto:sage [2008/07/30(水) 17:30:51 ]
- >>64
・全アニメーションの前半部分(最初の10フレ分とか)だけをメモリにおいておき、 それを再生中に残りを読む。 ・リングバッファでデータを持っておき、1度読みこんだものはしばらく解放しない。 ・使用頻度の高いもの、即時応答が必要なもののみを事前ロード →対戦格闘なら待機モーション+そこから派生する最初の動作のみ。 ・圧縮してメモリに置いておく。使用する度に解凍する。 詳しい仕様が解ればもっとネタ出せるかも。
- 95 名前:88 mailto:sage [2008/07/30(水) 17:49:25 ]
- 回答ありがとうございます。
知らないことが多いので非常に参考になります。 >>89 マジですか、現状D3DXMatrixRotationを3回使って行列作ってますから それだけコスト掛かってるって事になりますね。 やり方はわかりませんが、ちょっと調べてみます。 >>92 まだ任意軸の仕様がきっちりわかっていませんでしたが、 ちょっと考えればなんとなく分かりました。 つまりボールの移動しているベクトルと(0,1,0)のようなベクトルと 外積をとればXZ方向で回転させたい方向のベクトルがとれるってことですね。 なるほど、非常に参考になりました。
- 96 名前:デフォルトの名無しさん mailto:sage [2008/07/30(水) 17:54:15 ]
- えーと・・
- 97 名前:デフォルトの名無しさん mailto:sage [2008/07/30(水) 22:12:11 ]
- >>95
任意軸回転は3軸それぞれ回転するくらいの処理負荷は普通に食うぞ。 それにそこまでやるならもう四元数使え。めんどうくせえ。
- 98 名前:デフォルトの名無しさん mailto:sage [2008/07/31(木) 01:03:05 ]
- >>97
分かりました。 ちょうどそのあたりの本も揃えたので、やってみようと思います。 ありがとう!
- 99 名前:デフォルトの名無しさん mailto:sage [2008/07/31(木) 06:59:29 ]
- >dsound.hのコンパイルが通らないので、どうにかしたい
[環境]WinXP(sp2) VC++2005(pro) DirectXSDK(oct 2006) PlatformSDK(?最新) [設定]ツール>オプション>VC++ディレクトリ>インクルード、ライブラリ、Bin の設定をPlatform>DirectXの順にして設定。※DirectXSDKのライブラリはx86を指定 [ソース] #pragma comment(lib, "dxguid.lib") #pragma comment(lib, "dsound.lib") #pragma comment(lib, "winmm.lib") #include <windows.h> #include <dsound.h> int _tmain(int argc, _TCHAR* argv[]) { return 1; } [エラー] c:\program files\microsoft directx sdk (october 2006)\include\dsound.h(230) : error C4430: 型指定子がありません - int と仮定しました。メモ: C++ は int を既定値としてサポートしていません c:\program files\microsoft directx sdk (october 2006)\include\dsound.h(230) : error C2143: 構文エラー : ';' が '*' の前にありません。 以下省略 エラーの場所:typedef const WAVEFORMATEX *LPCWAVEFORMATEX; [備考] mmreg.hでWAVEFORMATEXが宣言されていいて、PlatformSDKに含まれている。 PlatformSDKの設定を失敗している?? 参考にしたURL:ttp://www.cppdrive.jp/vc/sdk/index1.html 上記、問題解決へのヒントなり参考サイトなり紹介していただければと思います。
- 100 名前:74 mailto:sage [2008/07/31(木) 07:02:13 ]
- >>84 さんとは別人ですが、やりたいことは同じでした。
Win32API を使って文字入力をしているゲームはあんまりないですね。 IME とかを使っていると、変換中の文字が画面の左上にでてきたりするし。 >>85 さんの言うように全部実装するという手もありますが、 IME や右クリックしたときのコンテキストメニュー、 その他もろもろを実装するのはあんまり現実的じゃないかなと。 この辺はユーザビリティにどの程度重きを置くかで選択が変わってくると思います。
- 101 名前:99 mailto:sage [2008/07/31(木) 08:20:20 ]
- >追記 ※半分解決※
新規プロジェクト>Win32プロジェクト>空のプロジェクト でプロジェクトを作成するとコンパイルが通ります。 通常のWin32のテンプレート(空のプロジェクトではない場合など) を使ったプロジェクトでは >>99 同様エラーが出ます。
- 102 名前:デフォルトの名無しさん mailto:sage [2008/07/31(木) 08:33:07 ]
- >>99
プロジェクトのプロパティで、 Configuration Properties→Advanced→Show Includes を Yes にしてからコンパイルすると、 インクルードしている順番とかがわかるので、 それでなにかわかるかも。
- 103 名前:99 mailto:sage [2008/07/31(木) 09:02:26 ]
- >>102
レスサンクスです。 早速やってみたのですが、、、順番として dsound.hの前にmmreg.hがあるか確認したのですが、、、 そもそもmmreg.hが読み込まれていません、、、orz
- 104 名前:デフォルトの名無しさん mailto:sage [2008/07/31(木) 10:49:49 ]
- >>100
チャットの文字とかそういうのもコピペできるようにしたいの? IMEの制御と入力中の文字のコピペぐらいで良いと思うんだけどね。 コンテキストメニューは無しで。
- 105 名前:デフォルトの名無しさん mailto:sage [2008/07/31(木) 11:31:22 ]
- >>103
とりあえず、これ入れてみては? #include <mmsystem.h>
- 106 名前:デフォルトの名無しさん mailto:sage [2008/07/31(木) 11:50:17 ]
- ちょっとやってみたよ。
stdafx.h の中の↓の行、消すかコメントにしてみ #define WIN32_LEAN_AND_MEAN // Windows ヘッダーから使用されていない部分を除外します。
- 107 名前:デフォルトの名無しさん mailto:sage [2008/07/31(木) 11:52:20 ]
- ってプリコンパイルヘッダ使ってないのか。
まあ、WIN32_LEAN_AND_MEAN のdefineがどっかにあると思うけどな。
- 108 名前:99 mailto:sage [2008/07/31(木) 12:38:34 ]
- レスサンクスです。
>>105 >#include <mmsystem.h> なぜか、大量のエラー(88個)が出ました、、、。 [エラー文] 構文エラー : ';' が、識別子 'MMVERSION' の前に必要です。 以下略 [エラー内容 mmystem.h] typedef UINT MMVERSION; 以下略 >>106 #define WIN32_LEAN_AND_MEAN を消してみましたが、 >>99 と同様のエラーが発生してダメでした。 みなさんの助言ありがとうございます。 もう少し自力で調べてみます。
- 109 名前:デフォルトの名無しさん mailto:sage [2008/07/31(木) 12:39:26 ]
- あったのか、、
消したらリビルドな
- 110 名前:デフォルトの名無しさん mailto:sage [2008/07/31(木) 12:41:56 ]
- あと空のプロジェクトだとうまくいくって書いてたが、
そのうまくいくやつのwindows.hをincludeする前に #define WIN32_LEAN_AND_MEAN してごらん。
- 111 名前:99 mailto:sage [2008/07/31(木) 12:46:19 ]
- >>109
も、申し訳ありません、、、。 コンパイル通りました。 大変失礼いたしました。 #define WIN32_LEAN_AND_MEAN についてこれより詳細に調べます。
- 112 名前:99 mailto:sage [2008/07/31(木) 13:26:29 ]
- レスサンクスです。
>>110 うまくいかないときと同じ症状になりました、、、。 おっしゃるとおり#define WIN32_LEAN_AND_MEANが原因でした。 追記(同じ過ちを繰り返さぬよう) #define WIN32_LEAN_AND_MEAN をはずした後に、今まで組んでいた部分と合体したら、 winsock(winsock2.h)関係でエラーがいっぱいでましたが、 stdafx.hでwinsock2.hを読み込ませることで回避できました。 (windows.hより先にwinsock2.hを読ませないといけない) 諸兄のご尽力により、無事解決となりました。 スレ汚し大変失礼いたしました。
- 113 名前:デフォルトの名無しさん mailto:sage [2008/07/31(木) 14:14:09 ]
- >>100
DirectX SDKにあんたのやりたいこと全て、ソースコード付きで入ってるよ。 まぁ、そのままだと微妙に使い物にならないから、少し手直しが必要だが。
- 114 名前:デフォルトの名無しさん mailto:sage [2008/07/31(木) 14:50:29 ]
- >>113
Samples\C++\Direct3D\CustomUI だね 日本語だと確定するまで違うところに表示されるのはしょうがないのかね
- 115 名前:デフォルトの名無しさん mailto:sage [2008/07/31(木) 15:17:38 ]
- >>114
そのサンプル触った上で言ってるの?
- 116 名前:デフォルトの名無しさん [2008/07/31(木) 16:56:43 ]
- >>74
コントロールの位置が分かってるなら マスクかければいいじゃn
- 117 名前:デフォルトの名無しさん mailto:sage [2008/07/31(木) 17:23:02 ]
- >>115
よく見てなかった
- 118 名前:64 mailto:sage [2008/07/31(木) 23:59:47 ]
- >>65
200Mだと、メモリに置いてもツライ量ですね… メモリマップドにしても、結局ディスクから読むので変わらないのかな… >>66 全くもってその通りなのですが、どうしても2Dでやりたいのです。 MPEG1は検討してみます。ありがとうございました。 >>94 色々とありがとうございます。 リングバッファは試してみる価値があると思います。 前半だけメモリにおいておくのは、結局止まってしまうので メモリも食うし、中途半端になってしまうかも… 圧縮もありかもしれませんね。 ディスクから読み込むのと、展開するのとどっちが重いかにもよりますが… 詳しい仕様は…そうですね、エフェクトに使うと思ってもらえればいいと思います。 1〜2秒のエフェクトが30個ほどあり、どれがいつ必要になるかわからないという状況です。 (実際には少し違いますが) 色々試したところ、どうも重くなるのは初回のみなので、あらかじめ確保→開放して キャッシュにいれておくなんて手法もありかもしれません。 (問題は人によってキャッシュの大きさがまちまちな点ですが…)
- 119 名前:デフォルトの名無しさん mailto:sage [2008/08/01(金) 00:07:24 ]
- 家庭用機でもメモリに置いといて解凍してVRAMに展開とかはやると思う
この場合はCPUの速度が固定なのでやりやすいとは思うんだが それでもPCから比べればかなり貧弱でも十分に出来ると思う もちろんPCの場合はどんなCPUつんでるかは不明だから間に合わないってケースも出てくるだろうけど それでも大よそのケースで間に合うと思うけどな どんな絵かはわからんが、20%ぐらいの圧縮率とかにはなるんじゃね? エフェクトに使うってことで非可逆でも構わないならそれこそかなり圧縮できると思う
- 120 名前:デフォルトの名無しさん mailto:sage [2008/08/01(金) 00:23:08 ]
- エフェクトならそれこそ3Dで作って2Dで描画しろよ、ってレベルだな
- 121 名前:デフォルトの名無しさん mailto:sage [2008/08/01(金) 00:24:31 ]
- とりあえず 30fps にするんだ。メモリ消費は半分だ。
- 122 名前:デフォルトの名無しさん mailto:sage [2008/08/01(金) 00:28:23 ]
- >>120
2Dエフェクトを作るツールの使い勝手の良さ考えると それと同じレベルのを3Dで作るにはかなり敷居高いと思うが
- 123 名前:デフォルトの名無しさん mailto:sage [2008/08/01(金) 00:41:26 ]
- >>122
似たようなもんだろ はじめの選択ミスがひきづってるだけの話でしょ? 次はきっと彼もうまくやれるさ
- 124 名前:デフォルトの名無しさん mailto:sage [2008/08/01(金) 00:56:17 ]
- >>122
結果的にそれ以上の苦労を実機側でしているのだから意味がない
- 125 名前:デフォルトの名無しさん mailto:sage [2008/08/01(金) 01:02:33 ]
- エフェクト作ってるのが自分じゃなければ
その苦労は単純に比較できないんでは? 見てる限りだと圧縮で解決する感じがするけど
- 126 名前:デフォルトの名無しさん mailto:sage [2008/08/01(金) 01:12:29 ]
- いいたくはないけど、仕様のミスだよ、明らかに。
メモリをちゃんと計算しなかったのが原因。
- 127 名前:94 mailto:sage [2008/08/02(土) 10:09:14 ]
- なんていうか、お題だけを考えれば
「大容量のアニメーションをスムーズに再生するには?」 というだけなのに、設計とかを否定するのはどうかと思う。 仕事でゲーム開発してれば、こんな難関はいくらでもやってくる。その度に プログラマーの強権発動して「仕様的に無理」っていきなり言っちゃうのは 怠慢だと思う。(そして、ある日隣のプログラマーに「○○すれば簡単にできますよ♪」 とか言われて肩身が狭くなっちゃう。)まずは色々考えてみようよ。 どれかで上手くいくかもしれないし。まぁ仕事じゃないけどさw 個人的には>>119の意見を支持。不可逆で圧縮が可能なら楽にいけそう。 ってかこんな展開シェーダー誰かが作ってそう。 キャッシュに頼るなら、事前にその場では使わないヤツを全部解放しておくと ちょっと親切かも。
- 128 名前:デフォルトの名無しさん mailto:sage [2008/08/02(土) 10:22:14 ]
- WMVの7ならXP以降は標準搭載されているし、
DVD並の画質なら展開しつつテクスチャに転送しつつ再生しても、 CeleronM程度の型落ちCPUでも問題なく動くが、 お前らはいったい何を気にしているんだ?
- 129 名前:デフォルトの名無しさん mailto:sage [2008/08/02(土) 10:25:49 ]
- アルファ抜きとかかな
- 130 名前:デフォルトの名無しさん mailto:sage [2008/08/02(土) 11:01:33 ]
- >>127
でも、会社の職場で 「3Dでやってればもっとたくさん表現できたよね?」 って言われたらどういいわけするの? いっとくけどデザイナさんにとっては3Dで作ろうが2D作ろうが あんまり労力は変わらないかもしれないよ こんなことも提示できないでデザイナさんにひたすら作らせた後 「ごめんなさい、やっぱこの仕様だときついかもしれません」 とかいうの? こんな不安要素を抱えてしまうぐらいなら安全策をとるべきでしょ 趣味でやってるなら自由にやればいいと思うけど 会社でやったら恨まれますよ〜(みんな表だっては言わないけどねw)
- 131 名前:94 mailto:sage [2008/08/02(土) 11:32:46 ]
- >>130
それはプログラマーとして提言しても決定することはないんじゃない? 表現の仕方や方向性はデザイナーや企画が決めるんではないかと。 会社によって方針(力関係w)が違うだろうから解んないけど。 >>130の言いたいことは良く解る。リスクを抱える開発はプログラマーとしては褒められない。 しかしながら、やりたい事はそれに矛盾する。 「では、できるかどうか検証してみましょう。」 というのが今この場ではないかと、勝手に思ってるんだけども。 もちろん「できない。」と迅速に判断して次にいくのもあり。 「いやいや、方法はあるんでない?」というのが俺の意見。 判断は難しいけどねw
- 132 名前:デフォルトの名無しさん mailto:sage [2008/08/02(土) 11:47:51 ]
- >>131
そう? 他のゲームはどうなってんだろ? って解析できるのもプログラマだけだと思うけどね エフェクトがいるアクション・イベントを3〜4に絞る仕様だってできるわけじゃない?(テイルズ方式) こんな無理目なことに時間かけてそれに対するリターンはどれほどよ? って相談までしたんかどうなんか気になるが まあ、「やってみるけど時間くれる?」まで言ってるならなにもいうべきことはないな 存分に研究してみろ ただ、決断はしなきゃいけないな 無理なら無理でしっかりいうんだぜ (もちろんこの期間でこれこれこんなことを試してみたんですけど 試してみた範囲ではこの仕様は実現できませんでした。的なことが必要だ) と初心者スレだし言ってみるテスト
- 133 名前:デフォルトの名無しさん mailto:sage [2008/08/02(土) 12:57:14 ]
- やる前に、かかる工数を見積もって(難しいだろうけど)
予算と相談しないとな
- 134 名前:デフォルトの名無しさん mailto:sage [2008/08/02(土) 13:37:15 ]
- 今回の内容は見積もりがどうこう言うほど難しい作業じゃないぞ。
どれだけ技能が低いんだよ。
- 135 名前:デフォルトの名無しさん mailto:sage [2008/08/02(土) 13:45:21 ]
- そういう考えがスケジュールの遅延を招く。
たとえどんなものでも仕事として発生するなら ちゃんとスケジュールに組み込んで管理するのが基本。
- 136 名前:デフォルトの名無しさん mailto:sage [2008/08/02(土) 14:02:24 ]
- 能力が低いと見積もりが積もり積もって大変だよな。
- 137 名前:デフォルトの名無しさん mailto:sage [2008/08/02(土) 14:05:15 ]
- 比較対象で出ている、3Dでエフェクト作るっていうのは具体的にはどうやればいいのでしょうか?
モデルにモーション付けてもらってそれを再生するという感じ? 例えば爆発のエフェクトであれば、炎や火の粉をアニメ付きのモデルで大量に表示とかになるのでしょうか?
- 138 名前:デフォルトの名無しさん mailto:sage [2008/08/02(土) 14:08:52 ]
- 能力の高さとスケジュール管理は別のスキルだろう。
仕事が溢れそうならマネージャーに相談して溢れる分を他に振るなり増員なりで解決する。 ギリギリになってからやっぱり終わりませんとか言ってきたらマジで回し蹴りだ。 >>137 ビルボード/パーティクル等など いくらなんでも1個1個モデル表示なんてしないぞ。
- 139 名前:デフォルトの名無しさん mailto:sage [2008/08/02(土) 14:20:54 ]
- ビルボードやパーティクルで作るというのは、そういうツールみたいなのがあるのでしょうか?
- 140 名前:デフォルトの名無しさん mailto:sage [2008/08/02(土) 14:32:53 ]
- そういうツールを作ればよい
- 141 名前:デフォルトの名無しさん mailto:sage [2008/08/02(土) 15:15:10 ]
- そのツールを作ってデザイナーに使いこなしてもらう手間考えれば・・
とか思ったけど、もしかしてどこでも当たり前にそういうことやってて今更議論するような程でもないってぐらいのことだったりしますか?
- 142 名前:デフォルトの名無しさん mailto:sage [2008/08/02(土) 15:24:12 ]
- 初心者質問スレという意味合いではそんなツール作れるかよ!
プロと言う意味ではPG的にはその程度のツールもないのかよ! デザイナー的にはその程度のツールも使えないヤツはいらない。
- 143 名前:デフォルトの名無しさん mailto:sage [2008/08/02(土) 16:37:33 ]
- そして多くの開発ではコンバータを作成し、
バージョン互換を恐れて古いツールを使い続ける。。。
- 144 名前:デフォルトの名無しさん mailto:sage [2008/08/02(土) 17:48:58 ]
- >>142
仕様はよく考えられてても、UIがコマンドラインだったり、 フォーマットの変更まで考えました、とかいって、 死ぬほど使いづらいツールを作ってきたりする奴もいるからな。 そして、そういうツールに限って不安定。ちょっとテキストファイルに ゴミ文字が入ってただけで落ちたりしてな。
- 145 名前:デフォルトの名無しさん mailto:sage [2008/08/02(土) 18:02:49 ]
- >>144
それはツールを作る人間の技量の問題。 その程度のヤツにツールを作らせる人的リソースの不足も問題。
- 146 名前:デフォルトの名無しさん mailto:sage [2008/08/02(土) 18:27:25 ]
- とりあえずUndoがないツールは糞
- 147 名前:デフォルトの名無しさん mailto:sage [2008/08/03(日) 02:02:44 ]
- は?んなツール作らなくてもとりあえず
デザイナさんがモデリングした通りに出してみたらどうよ? 適当にボーン入れてアニメーションさせたモデルを加算半透明ではってみりゃ 立派なエフェクトのできあがりっしょ 何に手間かけようとしてんだ こういうところからプラグイン使えたら便利かなとかそういう考えが浮かんでくるんだぜ モデリングツールでできることは極限まで活かせよ まずは、モデルをアニメーションさせるところから説明しないと駄目なほど馬鹿でもないだろ? こんなところに手間かけてるからお前等苦労ばっかりしてろくなゲーム作れないんだぞ
- 148 名前:デフォルトの名無しさん mailto:sage [2008/08/03(日) 02:18:16 ]
- モデルでエフェクト作るのも結構手間だと思うけど
既存の2D系のエフェクト作成ツールでエフェクト作って それ表示って方のがある程度のレベルまでは時間もかからずに合理的だと思うんだが 個人で作ったショボイツールなんぞよりも何倍も良いものできると思うぞ 最終的に出来ることが3D>2Dだとしても そこまで行かなければ、使いやすいツールのある環境のがいいものできると思う それに気の利いたパーティクルツールなんてどこにでもあるようなものとは思えないが 上で出てた爆発みたいなのって爆発のパターン絵描きが書いてプログラマが適当に飛ばして終わりってのが多いんじゃね? その上で初心者スレってこと踏まえれば この方法って間違いとかとは全然思えないんだが >>142 デザイナーにとっては使いこなすに値するツールかどうかだろう これはプログラマーの次第だと思う
- 149 名前:デフォルトの名無しさん mailto:sage [2008/08/03(日) 08:19:52 ]
- >>148
3Dで爆発なんてそれっぽいもやもやを拡縮するだけで終わりってのも考えられるんじゃね? しかもそれはモデリングのアニメーションで設定できる話で プログラマはそれを再生すれば終わりでしょ? だからこれはアニメーションモデルの再生でしかないと思うんだけど? 3Dの何が手間なの? 勝手な想像で手間だと思ってるだけじゃない?
- 150 名前:デフォルトの名無しさん mailto:sage [2008/08/03(日) 15:51:26 ]
- >>149
旧世代のキノコの成長の早回しです、 みたいなドン臭い爆発だったらプログラマーの負荷は少ないけど、 パーティクルを使って云々ってやってると結構めんどくさいよ。
- 151 名前:デフォルトの名無しさん mailto:sage [2008/08/03(日) 17:21:22 ]
- >>150
そうか? それもモデリングツールにちょちょっと細工して モデルのアニメーションで出るようにしたら終いな話でしょ? 3Dで苦しくなるような想定ばっかしててもしょうがないと思うんだけど?
- 152 名前:デフォルトの名無しさん mailto:sage [2008/08/03(日) 17:32:14 ]
- まぁゲーム内容次第だべ。
CoD4の手榴弾みたいなリアルな爆発が欲しい時と GCのゼルダみたいなアニメ調のが欲しい時では話が違うんだし。
- 153 名前:デフォルトの名無しさん mailto:sage [2008/08/03(日) 17:39:46 ]
- 大抵モデリングツールからの出力をそのままだしゃいいのに
くっだらないイレギュラー想定して発言を潰す作戦ですか?
- 154 名前:デフォルトの名無しさん mailto:sage [2008/08/03(日) 17:58:19 ]
- それらのやり方にパーティクルイリュージョンほどの使い勝手があるとは思えないんだけど
- 155 名前:デフォルトの名無しさん mailto:sage [2008/08/03(日) 18:26:19 ]
- >>151
パーティクルやったこと無いんじゃない?
- 156 名前:デフォルトの名無しさん mailto:sage [2008/08/03(日) 19:42:54 ]
- >>155
あるある うちのモデリングツールのプラグインに吐き出す奴あるもん テクスチャアニメーションで粒子を表現するタイプと 頂点シェーダで吐き出してくれるタイプがあるよ どっちもモデルのアニメーション扱いでいけるようになってる
- 157 名前:デフォルトの名無しさん mailto:sage [2008/08/03(日) 19:47:42 ]
- 手間がかからず実装できるとかじゃなくて会社にあるツール自慢を初心者スレでされても・・・
|

|