【C++】 DirectX初心者質問スレ Part25 【C】
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
2009/08/25(火) 22:50:20これらに当てはまる人のための質問スレです。
1.C/C++は多少理解している。
2.最近DirectXを始めたばかり
3.SDKを見ても、Googleで検索しても、いまいち理解できない人
4.余計な雑談は不要ですよ
【 回答してくださる方 】
・ できるだけ優しく質問に答えてあげてください。
・ 優しく教えるのが嫌でしたら、解決するためのヒントだけでも結構です。
「ググれ」「SDK見れ」以外の回答でおながいします。
・ 神ですら理解不能な質問は無視して下さい。
【 質問する方 】
・ どんな事で躓いているのか明確にしよう。
・ 長くならないなら躓いている部分のコードを晒してみれ。
・ 解決した場合、お礼を言うのは当然だが、何をどうしたら解決したかを明確に書こう。
・ 回答して貰ったら、出来るだけお礼もしよう。
【C++】 DirectX初心者質問スレ Part24 【C】
http://pc12.2ch.net/test/read.cgi/tech/1245675989/
0153デフォルトの名無しさん
2009/09/04(金) 01:28:39それにカメラの逆行列をかけてWで割ればワールド座標に戻る。
0154デフォルトの名無しさん
2009/09/04(金) 01:53:33それは全く別の問題。
普通に作る分にはfloatの精度なんて、あんまり気にしなくていいよ。
0155デフォルトの名無しさん
2009/09/04(金) 02:17:28検算したら、確かにビュー座標に逆変換出来た。
射影空間では、wは不定(ビューのz)だから変換は出来ないけど
ビュー以前なら、w=1だから変換出来るんだな。目から鱗。
0156デフォルトの名無しさん
2009/09/04(金) 02:38:07もし可能であればご教授ください。
0157126
2009/09/04(金) 04:51:12>150
なるほど!ありがとうございます!!
自分も目から鱗です
0158デフォルトの名無しさん
2009/09/04(金) 14:48:22ピクセルシェーダで
void psShadowDiffuseForFloor(
float4 Color : COLOR0
,float4 DepthFromCamera : TEXCOORD0
,out float4 outColor : COLOR0
,out float outDepth : DEPTH0
)
こんな感じで、カラーと深度値を同時に出力すると、どうにも画面が乱れてしまいます。
どちらか一方だけであれば問題がおきないのですが、カラーと深度値は同時にoutしてはダメなのでしょうか?
色々ぐぐって、同時に使っている例を探そうとしてみたのですが、1つも見つからないので、やってはいけない方法なのかと心配になりまして
0159デフォルトの名無しさん
2009/09/04(金) 15:10:35やろうと思えば出来なくはないが、というレベル。
普通は代わりに、IDirect3DDevice9::ProcessVerticesを使う。
もっと言えば、こんなメソッド使うより自前でやった方が
いろいろと楽。
0160158
2009/09/04(金) 15:27:32どうも原因は別にあったようです。
0161デフォルトの名無しさん
2009/09/04(金) 15:40:20深度バッファシャドウで、サイトなどでよく
o.Pos = mul(Pos, mWVP); //float4
o.Depth = outPos; //float4
と頂点シェーダでPOSをテクスチャとしてもっておき、ピクセルシェーダで
in.Depth.z / in.Depth.w;
として深度値としているのを見かけます。
一方、マイクロソフトのサンプルでは
o.Pos = mul(Pos, mWVP); //float4
o.Depth = outPos.zw; //float2
と頂点シェーダでPOSのzwをテクスチャとしてもっておき、ピクセルシェーダで
in.Depth.x / in.Depth.y;
としているようです。
そこで両方試したところ、結果が異なっているようです。
何故異なるのか、どちらが正しいのかがよくわかりません。
どなたか分かるかたいらっしゃいますでしょうか。
よろしくお願いします。
0162デフォルトの名無しさん
2009/09/04(金) 15:59:58両方とも同じ
結果が異なるとしたら別の要因
0163158
2009/09/04(金) 16:09:47別の要因ですか・・・。
デバッグDLLでも再現するので何かしら「ちゃんとミス」っぽいですね。
また質問をまとめなおします。
0164158
2009/09/04(金) 16:14:36うまくいくパターンと、いかないパターンがあるのですが
プログラム的には同じ結果を引き起こすつもりなのに、なぜ差が生まれるのかがわかりません。相談にのっていただけると幸いです。
■うまくいかないパターン
■Depthがfloat4である。最後の深度計算がDepth.z / Depth.wである
void vs(
float4 Pos : POSITION
,float3 Normal : NORMAL0
,out float4 outPos : POSITION
,out float4 outColor : COLOR0
,out float4 outDepth : TEXCOORD0
)
{
float3 L = vLightDir.xyz;
outPos = mul(Pos, mWVP);
outDepth = outPos;
outColor = max(0, dot(Normal, L)) + vLightDir.w;
outColor.w = 1;
}
void ps(
float4 Color : COLOR0
,float4 Depth : TEXCOORD0
,out float4 outColor : COLOR0
,out float outDepth : DEPTH
)
{
outColor = Color;
outDepth = (Depth.z + 0.01f) / Depth.w;
}
0165158
2009/09/04(金) 16:15:21■Depthがfloat2である。DepthにはPos.zwが入る。最後の深度計算がDepth.x / Depth.yである
void vs(
float4 Pos : POSITION
,float3 Normal : NORMAL0
,out float4 outPos : POSITION
,out float4 outColor : COLOR0
,out float2 outDepth : TEXCOORD0
)
{
float3 L = vLightDir.xyz;
outPos = mul(Pos, mWVP);
outDepth.xy = outPos.zw;
outColor = max(0, dot(Normal, L)) + vLightDir.w;
outColor.w = 1;
}
void ps(
float4 Color : COLOR0
,float2 Depth : TEXCOORD0
,out float4 outColor : COLOR0
,out float outDepth : DEPTH
)
{
outColor = Color;
outDepth = (Depth.x + 0.01f) / Depth.y;
}
0166デフォルトの名無しさん
2009/09/04(金) 16:18:45固定値としてoutColor = 1;
とした場合もうまくいきます。
具体的にどう「うまくいかない」のかと言いますと、
何も条件がかわっていない描画を続けているのに、(バイアスをかけず、カラーのみを出力するピクセルシェーダで描画している)他オブジェクトとの前後関係がチラチラと変化します。
挙動的には「メモリーリークなどでどこか壊したのでは?」というような内容です。
Debug.DLLで動かしてみましたが、現象はかわりませんでした。
また、特にエラーなども出力されませんでした。
以上です。
何か「お前こんなことすれば当たり前じゃん」といった部分があれば、ご指摘いただけると幸いです。
0167158
2009/09/04(金) 16:28:16Depthがfloat4である場合に、下記のような挙動が見られました。
成功
(1)Depth.x と Depth.y に、それぞれPos.z、Pos.wをいれて、ピクセルシェーダで割り算をする。
(2)Depth.y と Depth.z に、それぞれPos.z、Pos.wをいれて、ピクセルシェーダで割り算をする。
(3)Depth.x と Depth.w に、それぞれPos.z、Pos.wをいれて、ピクセルシェーダで割り算をする。
(4)Depth.y と Depth.w に、それぞれPos.z、Pos.wをいれて、ピクセルシェーダで割り算をする。
ダメ
(5)Depth.z と Depth.w に、それぞれPos.z、Pos.wをいれて、ピクセルシェーダで割り算をする。
どうしても、zとwを使った時だけ異常になるようです。
(とはいうものの、他の成功例も「成功したように見える」だけで、実際狂っている可能性はありますが)
0168158
2009/09/04(金) 16:52:51まず、>>167は、Depthの「値を入れていない要素」については0を代入していました。
(5)のパターンであっても、Depth.x と Depth.y にPos.zの値を入れておくと、正常に動作するようです。
最初、割り算の子の部分を Depth.zにしていなかったのかと思って再確認しましたが、間違い無く
z / w になっていました。
TEXCOORDは、それぞれの要素xyzw が個別に補間されるものだと思っていたのですが…。
0169158
2009/09/04(金) 17:31:42(5)の場合ですが、
outColor = Color;
outColor.y *= Depth.x;
outDepth = (Depth.z + 0.01) / Depth.w;
と、ほぼ無意味でもいい(完全に無意味だと、コンパイラが省略してしまうのでダメ)のでDepth.xを参照すると、正常化することがわかりました。
コンパイラの吐いたアセンブラ風シェーダのほうを読んでみましたが、
Depth.xに参照したからといって、特にDepth計算まわりの挙動が変わっていることはありませんでした。
(コンパイラのバグというのを期待?していたのですが)
何なんだろうこれ・・・
0170158
2009/09/04(金) 17:51:16TEXCOORD0
を使っていることのようです。
TEXCOORD1
に変えると、さまざまな不具合が解消されます。
確かに今描画しようとしているものには、UVが存在します。
ですが今回のシェーダでの描画では必要ない(ライトの陰影だけ書きだしたい)ので、頂点シェーダの引数としても受け取っていません。
このあたりが何か悪さをするのでしょうか?
試しに無意味でもと思って
, float2 Tex : TEXCOORD0
を頂点シェーダの引数に加えた(使わない)ところ、また少し違った「おかしな現象」が置きました。
意味がわからない・・・
0172デフォルトの名無しさん
2009/09/05(土) 11:42:55環境の不具合か自分のミスか切り分けるしかなさそうだね。
俺の場合、こういうときはハードの不具合と思いがちだったけど、
実際は自分のミスだったことが多かった気がする。
0173デフォルトの名無しさん
2009/09/05(土) 23:58:33アドバイスありがとうございます。
REFでも結果同じですね。
どうも色々いじった感じですと、TEXCOORD0のZとWに不具合がある気がします。
元のメッシュがUVを使っている場合、DrawSubsetの段階でfloat2なテクスチャ座標を使うとFVFなどで内部的に宣言されるわけですよね。
この時に頂点シェーダ>ピクセルシェーダ間でTEXCOORD0のZやWを使ってしまって良いものなのでしょうか。
今改めて考えてみると、頂点データの流し込みの時点では存在しないTEXCOORD1などを、
頂点シェーダ>ピクセルシェーダ時に新設してるのは合法なのでしょうか?
(今更合法でないといわれても困ってしまいますがw)
0174デフォルトの名無しさん
2009/09/06(日) 00:01:47月曜日にもう一度再現含めて試してみます。
0175デフォルトの名無しさん
2009/09/06(日) 02:03:43頂点はいい具合に動くんですが光源計算がうまく行きません。
法線も頂点と同様に行列かける以外違いってあるんですか?
0176デフォルトの名無しさん
2009/09/06(日) 02:12:460177デフォルトの名無しさん
2009/09/06(日) 03:56:20合法って・・別に法律に触れたりしないぞ・・・。
まぁ実際問題普通に頂点シェーダーで作ったデータをピクセルシェーダーに送るので
CPU→VSとVS→PSはまったく関係ないとおもっとけ。
0178175
2009/09/06(日) 07:17:22変換する行列に平行移動の成分があったらダメとか
Xファイルの法線は特別とかそういうのはないですよね?
0179デフォルトの名無しさん
2009/09/06(日) 09:09:52>合法って・・別に法律に触れたりしないぞ・・・。
お前の馬鹿さ加減に爆笑した
コーヒー返せ
0180デフォルトの名無しさん
2009/09/06(日) 09:35:12スキンメッシュ変換しおわった後に正規化だよ?
0181175
2009/09/06(日) 09:50:39//●頂点の変換と出力
float4 pos;
pos = mul(In.Position, BoneMat[ In.Bone[0] ]) * In.Weight[0] / 100.0f;
pos += mul(In.Position, BoneMat[ In.Bone[1] ]) * In.Weight[1] / 100.0f;
pos += mul(In.Position, BoneMat[ In.Bone[2] ]) * In.Weight[2] / 100.0f;
pos = mul(pos, WVPMat);
Out.Position = pos;
//●Diffuseの出力
float3 nor;
nor = mul(In.Normal.xyz, (float3x3)BoneMat[ In.Bone[0] ]) * In.Weight[0] / 100.0f;
nor += mul(In.Normal.xyz, (float3x3)BoneMat[ In.Bone[1] ]) * In.Weight[1] / 100.0f;
nor += mul(In.Normal.xyz, (float3x3)BoneMat[ In.Bone[2] ]) * In.Weight[2] / 100.0f;
//頂点法線のワールド変換
float3 vec =mul(normalize(nor), (float3x3)WMat);
//頂点法線と光の逆ベクトルとの内積を求める
float d = dot(vec, lightdirection.xyz);
//内積の結果と光の色を乗算する
Out.Diffuse.rgb = saturate(d * lightcolor.rgb + lightambient.rgb);
Out.Diffuse.a = 1.0f;
//●UVの出力
Out.TextureCoord0 = In.TextureCoord0;
Out.TextureToon = In.TextureCoord0;
return Out;
0182175
2009/09/06(日) 09:52:46アニメーション自体は正常に動作しており、
またメッシュの法線は正規化されております
0183デフォルトの名無しさん
2009/09/06(日) 10:51:130184デフォルトの名無しさん
2009/09/06(日) 12:27:35法線の変換なら駄目だろ、3x3の回転行列にしてみ
0186デフォルトの名無しさん
2009/09/06(日) 12:32:26シェーダー変数のライトディレクションはワールドの値だよね?
後は、ライトディレクションの向きは反対じゃないよね?
(内積取れる方向って意味)
0187デフォルトの名無しさん
2009/09/06(日) 12:34:00シェーダー定数に100倍したウエイト値を入れてるの?
0188デフォルトの名無しさん
2009/09/06(日) 12:36:100189デフォルトの名無しさん
2009/09/06(日) 12:38:39なんかキモイ処理に見えたw
0190デフォルトの名無しさん
2009/09/06(日) 12:49:25頂点はワールドに変換しなきゃいけないのに
ライトだけローカルにもってきてるお前のがレアじゃね?
0191デフォルトの名無しさん
2009/09/06(日) 13:24:00まあ頂点ライティングでそれを使うのはレアだとは思う
0192デフォルトの名無しさん
2009/09/06(日) 13:32:08それとは別に法線は法線でワールドにもってきてるわw俺のソースw
0193175
2009/09/06(日) 13:46:17あ すいませんコメントが間違ってました
ここがマイナスでもプラスでもライティングは失敗します
>>187
言われてみれば最初から100で割っておけば余計な手間が省けますね
>>188
やってみたらうまくいきました
ワールド空間座標に縮小はないんですがなんでだったんだろう…。
0194デフォルトの名無しさん
2009/09/06(日) 13:47:42あるんだろ多分
そんなのロードされるモデル次第じゃね?
0195デフォルトの名無しさん
2009/09/06(日) 13:59:47えっ・・・
0196デフォルトの名無しさん
2009/09/06(日) 14:02:240197デフォルトの名無しさん
2009/09/06(日) 14:15:18・固定小数点と三角関数テーブルで高速化、という10年前の知識を紹介してる5年前の本を読んだ
0198デフォルトの名無しさん
2009/09/06(日) 14:26:040199デフォルトの名無しさん
2009/09/06(日) 14:53:27そもそもそれなら乗算除算じゃなくてビットシフトしろっていう。
0200デフォルトの名無しさん
2009/09/06(日) 15:05:340201158
2009/09/07(月) 13:28:13問題の出た環境で再度、REFとそうでない状況でテストしてみたところ、
・REFでは正しく描画される
・REFでないとおかしくなる
のを確認しました。
もうこうなってくると、ドライバが悪いんだ!と思い、最新版にしてみましたが状況は変わりませんでした。
現象が起こる環境は
Intel(R) G33/G31 Express Chipset Family
です。
GF9600などでは再現しませんでした。
オンボだしなぁ…。
TEXCOORDは1を使うようにするかぁ…。
というのが今の結論です。
何かツッコミどころがあればご意見いただけると幸いです。
0202デフォルトの名無しさん
2009/09/07(月) 22:11:50ゲームの場合、文字列を描画するにはどういった方法が用いられるのでしょうか?
動的テクスチャの方法でしょうか?それとももっといい方法があるのでしょうか?
0203デフォルトの名無しさん
2009/09/07(月) 22:25:04ないよ
やることわかってんじゃん
さっさとやれ
0204デフォルトの名無しさん
2009/09/07(月) 22:35:390205デフォルトの名無しさん
2009/09/07(月) 22:47:29そこでDirectWriteですよ。
0206デフォルトの名無しさん
2009/09/08(火) 00:35:250207デフォルトの名無しさん
2009/09/09(水) 09:42:28負のカラーとはなんですか?
0208デフォルトの名無しさん
2009/09/09(水) 09:54:32なんでヘルプ読まないの?
This function returns the negative color value by subtracting 1.0 from the color components of the D3DXCOLOR structure, as shown in the following example.
pOut->r = 1.0f - pC->r;
0209デフォルトの名無しさん
2009/09/09(水) 14:12:29ショッキングな演出か
0210デフォルトの名無しさん
2009/09/09(水) 15:18:02頂点フォーマットをD3DFVF_XYZにして正射影でスクリーンに写して完全に表示を2Dにしたいのですが、
どうもサイズの調整がうまくいかなく読み込む画像自体のサイズとスクリーンに表示されるサイズが一致しません。
調整の仕方は画像の縦幅をスクリーン座標→ワールド座標へ変換した値でポリゴンの頂点を決めてやっています。
が、これだと変に画像が歪んで小さくなっちゃいます。
D3DFVF_XYZRHWは使いたくないので悩んでいます、どうすればいいでしょうか?
0211デフォルトの名無しさん
2009/09/09(水) 15:22:54おお! オレもちょうど同じ疑問に行き当たってる。
もっとも、2D画像に関してはスクリーン座標を使う形で対処できてはいるが。
まだZ値の管理をぜんぜんやってないんだな。(だから描画順で完全制御してる)
0212デフォルトの名無しさん
2009/09/09(水) 15:37:030213デフォルトの名無しさん
2009/09/09(水) 16:02:07WorldMatrix * ViewMatrix * ProjMatrix * ViewportMatrix = WVPV
スクリーン座標系の表示したい座標 = X = [ x, y, z, 1 ] ※zはviewportのzmin, zmaxの中間値
ワールド座標系の表示したい座標 = X' = [ x', y', z', 1 ]
X * WVPV^-1 = X'
このX'使ってる?
0214213
2009/09/09(水) 16:06:37これの結果と自前の結果、比較すればいいんじゃねーの
0215デフォルトの名無しさん
2009/09/09(水) 16:30:31馬鹿でも分かるように説明してよ
0216デフォルトの名無しさん
2009/09/09(水) 21:31:17ProjectionMatrixは正射影行列
WorldMatrixはキャラクターの座標で
World*View*Projectionでうつらなかったっけ
0217デフォルトの名無しさん
2009/09/09(水) 21:51:21RECT rect;
SetRect(&rect,0,0,640,480);
AdjustWindowRect(&rect, WS_OVERLAPPEDWINDOW, FALSE);
SetRect(&rect,0,0,rect.right-rect.left,rect.bottom-rect.top);
で640,480にならないのですが
どうしてですか?
0218デフォルトの名無しさん
2009/09/09(水) 22:04:570219デフォルトの名無しさん
2009/09/09(水) 22:06:04あたりまえじゃねーか。自分の書いたコードをよく見てみろ。
0220デフォルトの名無しさん
2009/09/09(水) 22:59:26なぜ?
0221デフォルトの名無しさん
2009/09/09(水) 23:01:510222デフォルトの名無しさん
2009/09/09(水) 23:07:09Windows7ってタイトルバーとかウィンドウの枠が無くなるんだっけ?
0223デフォルトの名無しさん
2009/09/09(水) 23:09:400224デフォルトの名無しさん
2009/09/09(水) 23:21:49同じにしたら作れた
0225デフォルトの名無しさん
2009/09/10(木) 07:25:47http://www.microsoft.com/downloads/details.aspx?FamilyID=b66e14b8-8505-4b17-bf80-edb2df5abad4&DisplayLang=en
Download details: DirectX Redist (August 2009)
http://www.microsoft.com/downloads/details.aspx?FamilyID=04ac064b-00d1-474e-b7b1-442d8712d553&DisplayLang=en
0226デフォルトの名無しさん
2009/09/10(木) 07:55:200227デフォルトの名無しさん
2009/09/10(木) 08:55:110228デフォルトの名無しさん
2009/09/10(木) 09:12:260229デフォルトの名無しさん
2009/09/10(木) 10:03:100230デフォルトの名無しさん
2009/09/10(木) 10:20:15Win7だとDX11用サンプルもある程度動くんだろう。
0231デフォルトの名無しさん
2009/09/10(木) 14:01:29いまいち要領を得ないので、本を一冊買ってそれで勉強しようと思うんですが、
おすすめの良書とかないでしょうか?
0232デフォルトの名無しさん
2009/09/10(木) 14:04:55てにはいらんと思うけど
0233デフォルトの名無しさん
2009/09/10(木) 14:47:57fx2.0のコードがコンパイル通らなくなったんだよね
今回の入れるか迷う
0234デフォルトの名無しさん
2009/09/10(木) 16:32:38付属のHelpを地道に覚えるのお勧め
遠いようで近道だったり
他にwebや参考書を使う場合でも、あくまでHelpのここが
分からないけどどういうことなのかな?っ手感じで
調べる時に使うのがいいと思う
そうするとHelpを中心としたDirectX脳内マップが出来上がります
0235233
2009/09/10(木) 16:49:49杞憂だったみたい
0236デフォルトの名無しさん
2009/09/10(木) 21:12:07絶版のようですね・・・
>>234
Helpですか。わかりました、ヘルプ覚える所からまた始めてみようと思います。
0237デフォルトの名無しさん
2009/09/11(金) 00:46:08日本語のHELPください><
0238デフォルトの名無しさん
2009/09/11(金) 03:34:15オンライン(こっちのが内容が2008年と新しい)
http://msdn.microsoft.com/ja-jp/library/cc411364.aspx
オフライン(2004年のは多分ここ)
http://www.microsoft.com/downloads/details.aspx?FamilyId=4B9B1752-6F6C-440E-816C-35D247570AE4&displaylang=ja
日本語だと分かりづらい事もあるから、そういう場合は同じ箇所の英語のHELPを探したり
逆に英語主体で読んでて分からなかったら日本語を見てみたりとかも有効かと
あと時々、全体を見渡してどの項にどういう事が書いてあるのかつかんで置くといいよ。
あと、サンプルブラウザから適当なサンプル探して解析するのが重要だよ。
勿論ここでも質問汁!
0239デフォルトの名無しさん
2009/09/11(金) 04:08:23何をやりたいかが明確なら他に参考書も挙げやすいかも
0240デフォルトの名無しさん
2009/09/11(金) 09:24:330241デフォルトの名無しさん
2009/09/11(金) 13:51:36つくってたんですが、http://lacc.biz/cpp/cpp11.htmこのページの
{
int joypad_state=GetJoypadInputState(DX_INPUT_KEY_PAD1);
if(((joypad_state& PAD_INPUT_A) !=0)&&(f_player_gun_flag==FALSE))
{
f_player_gun_flag=TRUE;
*p_player_gun_position_x= player_position_x ;
*p_player_gun_position_y= player_position_y ;
}
if(f_player_gun_flag==TRUE) *p_player_gun_position_y-=GUN_SPEED;
if(*p_player_gun_position_y<1) f_player_gun_flag=FALSE;
return f_player_gun_flag;
}
弾を飛ばすって関数、(ちなみにサイトのコピペです)
A を押すと弾が出るように記述されてると思うんですけど、コンパイル成功して
動かして、A押しても弾がでないです。
というかA以外にB,Cとかにしても動きませんでした。
実験で、プレイヤーは→←↑↓で上下左右に動かすのには成功してるので、
弾を撃つコマンドをAではなく、↑に設定してみると、弾がでました。
解決方法を教えてください。
0242デフォルトの名無しさん
2009/09/11(金) 14:08:11デバッガで止めて様子を見る。
0243デフォルトの名無しさん
2009/09/11(金) 14:10:450244デフォルトの名無しさん
2009/09/11(金) 15:14:20>PAD_INPUT_A // A(1)ボタンチェックマスク(Zキー)
まずはZキーを押してみる
0245デフォルトの名無しさん
2009/09/11(金) 15:43:30Z押したら出ました・・・
Aって書いてあっても。
対応キーが違うなんて、なんという罠。
とにかくありがとうございました!
0246デフォルトの名無しさん
2009/09/11(金) 16:04:10JOY PADのAボタンという意味で、
キーボードのAキーという意味ではない
0247デフォルトの名無しさん
2009/09/11(金) 16:45:17(DxtoryのFPSや録画ステータスが表示されているように、DirectX描画に割り込み描画する方法が知りたいです)
0248デフォルトの名無しさん
2009/09/11(金) 17:19:06それが自分の書いたアプリかそうでないかで話は全然変わってくる。
0250デフォルトの名無しさん
2009/09/11(金) 20:38:550251デフォルトの名無しさん
2009/09/11(金) 21:00:51俺もやりたい
0252デフォルトの名無しさん
2009/09/11(金) 21:16:19フック使うんじゃねーの
■ このスレッドは過去ログ倉庫に格納されています