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

鬱だ氏のう DirectX (Part 7)

■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものです。02/12/10 17:34ID:tkEwMMYm
DirectXについてマターリと技術情報交換&雑談するためのスレッド。
初心者用相談室では扱わないような少し高度な話題も受け持つ。

■ 過去スレ
Part 1 http://piza.2ch.net/tech/kako/966/966655286.html (プログラム板)
Part 2 http://pc3.2ch.net/test/read.cgi/tech/997101556/ (プログラム板)
Part 3 http://game.2ch.net/gamedev/kako/1005/10051/1005119775.html
Part 4 http://game.2ch.net/gamedev/kako/1016/10162/1016276254.html
Part 5 http://game.2ch.net/test/read.cgi/gamedev/1027351925/
Part 6 http://game.2ch.net/test/read.cgi/gamedev/1033920036/
0126名前は開発中のものです。02/12/24 23:39ID:wBChHQUX
>>125
どこが激しいのか疑問。
ミップマップ以外は制限とは言えない程度のささいな事じゃん。
2^nであってもCLAMPにしたらテクスチャラッピングは使えないから、
実質的に制限は2つだけ。
0127名前は開発中のものです。02/12/24 23:54ID:sve9Duu3
>>126
使ったことないのに無理しないで。
あとサポートしてる環境を把握してる?
0128名前は開発中のものです。02/12/24 23:58ID:nM8z+tpm
>>126
痛い香具師ハケーン
0129名前は開発中のものです。02/12/25 00:28ID:5yYW1Zio
>>127
そういう自分こそ使ったことない&把握してないのでは?
あの制限のどこが問題になるのか説明してくれる?
0130名前は開発中のものです。02/12/25 00:41ID:o5sX+mEC
DirectX8でフルスクリーンにして、最小化して、元に戻そうとすると、
戻らないのですが、元に戻すには何かしなければいけないのですか?
0131名前は開発中のものです。02/12/25 00:56ID:C+V8gp8b
>>130
Resetが必要なんではないか。
詳しくはサンプルを参照。
0132名前は開発中のものです。02/12/25 01:06ID:loF3ndqX
DX9 でも D3DX は dll じゃないの?
0133名前は開発中のものです。02/12/25 01:23ID:MT7gu6YF
↑電波
0134名前は開発中のものです。02/12/25 03:30ID:PtOPqJI+
>>130
D3Ddevice 作り直さないとだめなのよ〜ん(タブン)
0135名前は開発中のものです。02/12/25 03:44ID:Km2eVg0y
んなこた〜ない
0136あぼーんNGNG
あぼーん
0137名前は開発中のものです。02/12/25 07:41ID:BoDn9JVh
5 REM
10 DEFINT A-Z:SCREEN 3,0,0,1WIDTH 80,25:CONSOLE 0,25,0,1:CLS 3
20 device = new Device(0, DeviceType.Hardware, this, CreateFlags.SoftwareVertexProcessing, presentParams);
30 RELEASE(device);
0138あぼーんNGNG
あぼーん
0139名前は開発中のものです。02/12/25 10:23ID:vBfJXHZb
最近、DirectX系のHPって見ないなぁ。
BBXも野郎BBSも閉鎖だし、ここはこんな風だし…

日本のアマチュアゲーム開発は終了だな。(´・ω・`)ショボーン
0140名前は開発中のものです。02/12/25 10:45ID:N0hSeH2R
BBX閉鎖するの?
0141名前は開発中のものです。02/12/25 11:55ID:ztzHsFBr
if氏のHPってなんで閉鎖したのかな
0142名前は開発中のものです。02/12/25 11:58ID:srbFeJO+
>99
http://bbx.hp.infoseek.co.jp/cgi-bin/bbx.cgi

教えて欲しかっただけだろ?
0143名前は開発中のものです。02/12/25 11:58ID:cEvsDgEI
BBXもif氏のとこも閉鎖してないぞ
0144名前は開発中のものです。02/12/25 12:06ID:6xTmGeBz
[厨房法則]
調べることができない人間ほどBBSに頼りたがる
BBSに頼りたがる人間ほど移転しただけで閉鎖したと勘違いする
勘違いする人間ほど自分が頼るものを失った時点で全てのアマチュアプログラマが開発を終了したと思いこむ
0145あぼーんNGNG
あぼーん
0146あぼーんNGNG
あぼーん
0147名前は開発中のものです。02/12/25 16:10ID:o5sX+mEC
DirectXAudioについて聞きたいことがあるのですが、いいでしょうか。

自分のプログラムでは、MIDIを再生すると、リバーブ等のエフェクトが
最大になってしまいます。一度再生すると、全てのMIDIとWAVがこうなってしまいます。

そこで、エフェクトを削除する方法がわかったので、SetFX(0, NULL, NULL)で
エフェクトを削除したら、すでに再生しているMIDIがとまってしまいました。

で、もう一度MIDIを再生しようとすると、またエフェクトがかかってしまうのです。

エフェクトを削除したら、再生しているMIDIがとまったというのは、
工学社のサンプルでもそうだったので(コードも同じでした)、そういうもんなのだと思ったのですが、
では、どうすればいいのでしょう。

そもそもMIDIを再生した時点でエフェクトがかかるのが間違いですか?
0148あぼーんNGNG
あぼーん
0149名前は開発中のものです。02/12/25 18:50ID:srbFeJO+
( `∀`)オマエガナー
0150名前は開発中のものです。02/12/25 20:54ID:PzwC4Far
すつもん、よろしいでしょか?

メッシュにxファイルを読み込みたいのですが、
そのファイルはどこら辺に入れておいたらよいのでしょうか?
本を買って勉強しているのですが、その辺がどうもわからなくて、つい。
0151名前は開発中のものです。02/12/25 21:16ID:NnnYhCf/
>>150
カレントデレクトリ
0152あぼーんNGNG
あぼーん
0153あぼーんNGNG
あぼーん
0154名前は開発中のものです。02/12/25 22:05ID:PzwC4Far
>>151
 お返事ありがとう!
 …つまり、プロジェクトが入っているフォルダ?
0155名前は開発中のものです。02/12/25 22:09ID:NnnYhCf/
>>154
VisualStudioから実行した場合はたぶんそうだけど
普通はexeファイルがあるところ、
カレントディレクトリをゲットする関数(Win32)とかもあるんで
調べてみたらいいかも?
0156名前は開発中のものです。02/12/25 23:29ID:/fn3aOJD
DirectX8.1のSPRITE(LPD3DXSPRITE)を使って自分のライブラリを作ってるんだけど、
SPRITEで半透明ってできませんか?
0157名前は開発中のものです。02/12/25 23:29ID:lmj/8fOx
>>150
カレントディレクトリはプログラムの実行の仕方や、実行中の操作で変化
するから、できればフルパスで指定した方がいいよ。
でも、大抵の場合はカレントディレクトリから読み込んで問題無い。

VisualStudioから実行した場合は、デフォルト設定のままならプロジェクト
のある場所がカレントディレクトリになるけど、プロジェクトの設定の
作業用のディレクトリで変更できる。

ちなみに、実行中にファイル選択ダイアログを使う場合は、このダイアログ
がカレントディレクトリを変更してしまうので要注意。
0158_02/12/25 23:34ID:7ccBlzyE
>>154
どうやるのが一般的か知りませんが、自分は
char path[_MAX_PATH];
GetModuleFileName(hInst,path,_MAX_PATH);
で、exeファイルフルパスを取得したあと、邪魔なファイル名を削ってカレントディレクトリを取得しています。

実行ファイル名の削り方は、
char pDrive[_MAX_DRIVE+1];
char pDir[_MAX_DIR+1];
char pFname[_MAX_FNAME+1];
char pExt[_MAX_EXT+1];
_splitpath(path,pDrive,pDir,pFname,pExt);
でフルパスを分解してから、
string currentDirectory=pDrive+pDir;
currentDirectory+="\\";
くらいでいいのでは。

例えば、
Text.xというxファイルを、exeのあるフォルダにいれたとしたら、
ファイルを読み込むときに、
string filename=currentDirectory;
filename+="Test.x";
のようにかいて、それをファイルを読み込むメソッドの引数に入れるとか。
う〜ん、わかりずらいですね…。
015915802/12/25 23:37ID:7ccBlzyE
すまん。↑のコード
currentDirectory+="\\";
は必要なかった。
0160名前は開発中のものです。02/12/26 00:15ID:IJOtQDAy
悪いことはいわない。
ぜぇっっってぇーフルパスにしとけ。
なにがなんでもフルパスを使うくせをつけろ。
0161名前は開発中のものです。02/12/26 00:18ID:hDb5j8vT
>>156
テクスチャのα値をいじれば?
0162名前は開発中のものです。02/12/26 00:49ID:ZW5MFsfx
>156
DirectX8のスプライトはあまり良くないので、ポリゴンでスプライトの代用した方が
自由度が高いよ。
0163_02/12/26 00:52ID:p7bBeRQy
>>156
ID3DXSprite使ったこと無いけど、たぶん
ID3DXSprite::Drawの引数D3DCOLORのα値を指定するのかと。

例えば50%半透明なら、
D3DCOLORにD3DCOLOR_ARGB(128,255,255,255)を入れればいいと思う。

>>162
同意。ID3DXSpriteには、あまりいい噂はききませんね。
0164名前は開発中のものです。02/12/26 02:43ID:8elQi3d2
フルパスマンセーの奴がいるが、正気か?
exeのある場所を最初にカレントにして、そこから相対パスってのが基本だろ。
0165名前は開発中のものです。02/12/26 02:49ID:u+QTkfIN
> exeのある場所を最初にカレントにして、そこから相対パス

開発中はdebug\hoge.exeとかになってるぽ
0166名前は開発中のものです。02/12/26 03:48ID:9RUwBm5s
>>164
コモンダイアログのファイル選択ダイアログを使ったことがあれば
フルパスマンセーになるぞ。
ゲームならあまり使わないかもしれないがツールだとまず確実に使う。
0167名前は開発中のものです。02/12/26 05:51ID:AGlHM0EQ
>>166
ファイル選択ダイアログのフラグにOFN_NOCHANGEDIRつけとけばカレントディレクトリかわらないよ。

まあ、毎回元のディレクトリから始まるようになるので、
遠くのファイルを何回も選ぶ場合には面倒だけど。

嫌なら毎回ディレクトリ保存しておいて復元してもいいし。
0168あぼーんNGNG
あぼーん
0169名前は開発中のものです。02/12/26 07:04ID:ePwyo9mV
問題は開発の誰かがカレントを変更してしまうおそれがある。
ってのが一番面倒、ぶんなぐれ。
でかいツール作ってるときは誰がなにやってくれるかわからない。
ゲーム本体でもユーザーに保存場所を選ばせる場合だと必要になるから、いっそフルパスマンセーのが楽に逝ける。
0170名前は開発中のものです。02/12/26 07:08ID:oxPiSeR2
VCを個人で使ってるなら作業ディレクトリ設定できるからカレント云々は困らないけどね。
017115602/12/26 07:10ID:h8wBSWcJ
>>161,>>162,>>163
お、ちゃんとα描画できました。
SPRITEの方が簡単に作れると思ったのですが、やはり普通に
ポリゴンで扱ったほうがいいみたいですね…。
ありがとうございました(・∀・)
0172あぼーんNGNG
あぼーん
0173名前は開発中のものです。02/12/26 07:52ID:f4uAG8Os
お、ディレクトリ管理の話ですか。標準でついてるExporterが
Xファイルのテクスチャをフルパスで吐き出すのが困りものなのよね。

 ところで、フルパスからカレントパスを作るのも意外とめんどい
んだけどなんか良い関数ないもんですかね?
017415002/12/26 09:15ID:ik1sR7sq
 答えてくださった方、ありがとう。
 こんなにレスがつくとは思いもよりませんでした。
 

 本当にありがとうございます!!
 では引き続き作業を頑張ります。
0175名前は開発中のものです。02/12/26 09:53ID:8elQi3d2
nvidiaのサイトからcg_toolkitが落とせない。
どっか他にない?
0176名前は開発中のものです。02/12/26 11:22ID:8ZNjq3av
>>175
ftpからはおとせたYO!
ftp://download1.nvidia.com/developer/cg/
0177名前は開発中のものです。02/12/26 11:34ID:AGlHM0EQ
>>173
PathRelativePathToあたりどう?

環境(IEのバージョン?)によっては動かないかもしれないけど。
0178名前は開発中のものです。02/12/26 11:46ID:Tz6MkjNI
DirectX初心者です。
現在.hackの様な視点の3Dゲームを作ろうとしているのですが、
周りの物体が妙に傾いたように描画されてしまいます。
プロジェクションマトリックスのセットはこんな感じです、
D3DXMatrixPerspectiveFovLH(&mProj, 60*PI/180 , 1.0f , 0.5f , 640.0f);
何か解決策は無いでしょうか。
0179名前は開発中のものです。02/12/26 12:12ID:u+QTkfIN
引数三つ目のアスペクト比は1.0でいいの?
画面の縦横比をいれなきゃダメよ。
0180名前は開発中のものです。02/12/26 12:19ID:Tz6MkjNI
アドバイスありがとうございます。
早速アスペクト比をWIDTH/HEIGHTで入れたのですが、
やっぱり画面端に行くにつれ、木などが傾いてしまいます。
0181名前は開発中のものです。02/12/26 12:34ID:j+J1+fQK
1.0のところを変えてみたらどうでしょ。

ってか、連書き規制きびしすぎねえ?1時間以上経つのにかけなかったよ
0182名前は開発中のものです。02/12/26 12:40ID:W0NkvfZI
そういえば、アスペクト比でDirect X7かなんかの本のサンプルが逆になってたな
640*480の解像度で1.33333fとか入ってるの。
0.75だろうが!って突っ込みたかった。
0183名前は開発中のものです。02/12/26 12:47ID:+a+DZGj7
60*PI/180の60を減らしてみよう
0184名前は開発中のものです。02/12/26 13:18ID:u+QTkfIN
DXは横を1とした縦のサイズだったかな。
あとはfloatにキャストしてないとか
int W = 320;
int H = 240;
D3DX...( ... , W/H, ...);
じゃあダメよ。
0185あぼーんNGNG
あぼーん
0186名前は開発中のものです。02/12/26 16:50ID:rNK9GIom
>144

ありがちだな
0187名前は開発中のものです。02/12/26 17:30ID:Tz6MkjNI
みなさんのアドバイスを参考に、
D3DXMatrixPerspectiveFovLH(&mProj , 35.0f*PI/180 ,(float)WIDTH/(float)HEIGHT , 1.0f ,640.0f);
と、してみたところ結構マシになりました。
ありがとうございました。
0188名前は開発中のものです。02/12/26 17:39ID:u+QTkfIN
>>187
おめでとう。
あと、WとHが逆だったかもしれん。
0189名前は開発中のものです。 02/12/26 18:25ID:SuFqab0r
DirectX3Dにはフラットシェーディングとグーローシェーディング
があるそうですがどの関数で切り替えられれますか?
019018902/12/26 18:38ID:SuFqab0r
解決しましたが、フラットシェーディングとグーローシェーディング
では処理速度はフラットの方が速いでしょうか?
0191名前は開発中のものです。02/12/26 20:39ID:bqU4KP+U
>190
試してみるのが一番だ。
0192名前は開発中のものです。02/12/27 07:45ID:md1EDfNJ
>>190
激しく環境依存ってことも忘れずにね
0193あぼーんNGNG
あぼーん
0194名前は開発中のものです。02/12/27 12:24ID:7dHzV0a8
スプライトのBeginとEndの間に書ける処理って、
スプライトのDraw「だけ」なんですか?
ポリゴンを描画しようとすると、自分の環境では表示がおかしくなるのですが、
ほかにおかしそうなところが見当たらないので、そういうもんと認識しても
いいのでしょうか。
0195名前は開発中のものです。02/12/27 13:20ID:vFPVFOou
>>147
パフォーマンスの初期化のところでデフォルトのオーディオパス・タイプをみて
DMUS_APATH_SHARED_STEREOPLUSREVERBになってませんか?
DMUS_APATH_DYNAMIC_STEREOにすればエコーがなくなります。
019619502/12/27 13:22ID:vFPVFOou
// パフォーマンスの初期化
hr = g_pPerformance->InitAudio(
NULL, // IDirectMusicインターフェイスは不要
NULL, // IDirectSoundインターフェイスは不要
NULL, // ウィンドウのハンドル
/*DMUS_APATH_SHARED_STEREOPLUSREVERB*/DMUS_APATH_DYNAMIC_STEREO , // デフォルトのオーディオパス・タイプ
64,// パフォーマンス・チャンネルの数
/*DMUS_AUDIOF_ALL*/NULL, // シンセサイザの機能
NULL); // オーディオ・パラメータにはデフォルトを使用
if (FAILED(hr))
{
DXTRACE_ERR("DirectMusicPerformance8の初期化に失敗", hr);
return FALSE;
}
参考書コードの修正後ソース・・・この方が分かりやすいかと・・・
0197あぼーんNGNG
あぼーん
0198名前は開発中のものです。02/12/28 18:56ID:pcScEEbX
レベル低すぎ

終了
おまえら首吊れ
0199名前は開発中のものです。02/12/28 21:55ID:EVvwHmrD
シェーダ使えない環境でDirectX9のメリットってあるの?
0200名前は開発中のものです。02/12/28 23:48ID:KFOt0L7z
>>195
うわぁ〜。すごいすごい。
その通りやったら見事直りました。

ありがとうございました。
0201あぼーんNGNG
あぼーん
0202名前は開発中のものです。02/12/29 04:51ID:mxtUttMf
>>199
まともな製品作るならシェーダで突っ走るに決まってる。
糞ユーザーのためにシェーダ使わない選択するのは愚挙。
そういうときはソフトウェアで頂点シェーダ動かしてピクセルシェーダは放置
0203名前は開発中のものです。02/12/29 05:46ID:YZiM0Z3W
俺はWinXPに標準で載ってる8.1を選ぶぜ。

それは別として、DirectX 9の日本語HTMLヘルプがウィンドウサイズ記憶してくれない……。
どうなっとるんでしょうかこれわ。8のはちゃんと覚えてくれるのに。
0204あぼーんNGNG
あぼーん
0205名前は開発中のものです。02/12/29 09:23ID:UWWAc8w/
シェーダーマンセーな人に悪いけどそんなのありえないからね。
まあ、大手でサポートバッチリならいいけど、
それ以外なら駄目よ。
だってグラボを自分でつけかえないかぎりピクセルシェーダなんてついてこねーだろ?
ドライバだってとってくるとは思えない。
バンプだってまともに動くもんがすくないぞ
0206名前は開発中のものです。02/12/29 10:39ID:mxtUttMf
>>205
はいはい
別に使わなくていいよ

君はドライバ由来の不具合も自分の責任の範囲とする立派な方だ。
NECの98時代から受け継がれた日本の美徳だね。
0207名前は開発中のものです。02/12/29 11:25ID:BImKIoRD
なにこの人つっかかってんだろう。
理想はそうかもしれんが、ユーザーにドライバの不具合がどうたら言ってもなあ。
0208名前は開発中のものです。02/12/29 11:45ID:Yj/SuFlV
ピクセルシェーダが使えるビデオボード持ってるユーザー
日本にどのくらいいるんだろ…?
10万人いるのかな?
FF効果で結構増えたと思うが…。
0209名前は開発中のものです。02/12/29 12:02ID:Rd+l9s3F
>>203
うちもなぜかDirectX9のヘルプがウィンドウサイズ記憶しないので、仕方なく
MSDNに統合して使ってるよ。
http://www.sofarts.com/computer/env-soft/windows/app_programming/vs/vs-dx-msdn2.htm
0210_02/12/29 12:14ID:WzbQdq3y






http://freeweb2.kakiko.com/dengeki/indexe.htm




0211名前は開発中のものです。02/12/29 12:48ID:mFB76vnS
PCでゲームやる人はビデオカードくらい買い換えるでしょ。
一般ユーザーはPCでゲームなんてやらない(特に洋ゲーなんて)から、
シェーダー使いまくっても問題ないんじゃね
0212名前は開発中のものです。02/12/29 13:46ID:XzXpe3S+
>PCでゲームやる人はビデオカードくらい買い換えるでしょ。

どの程度買い換えると思うんだい。
ゲームだけのために何万円も出せるやつぁなかなかいないよ。
今ならGeForce2MXか4MXあたりで満足してるだろうな。
0213名前は開発中のものです。02/12/29 15:23ID:ZUUThS54
ヘルプより抜粋なんですが、

> D3DX8.CreateTextureFromFileInMemory メモリ内のファイルからテクスチャを作成する。
>
> object.CreateTextureFromFileInMemory( _
> Device As Direct3DDevice8, _
> SrcData As Any, _
> LengthInBytes As Long) As Direct3DTexture8
>
> SrcData
> テクスチャの作成に使用するメモリ内のファイル。

このメモリ内のファイルとは、どうやって作成するのですか?
0214名前は開発中のものです。02/12/29 15:36ID:ZUUThS54
抜粋する場所間違えました。
これのC++バージョンでお願いします。
0215名前は開発中のものです。02/12/29 15:42ID:Z7eWPCRp
ああ、まだわかってないやつがいるね。
グラボがどういうものかなんてちゃんと認識してかってるやつなんていないんだよ。
大抵は知ったか野郎の馬鹿ばっかと考えて、まず間違いない、
GForce4MX買ってきて動きませんとかいう質問が何百件ときてその一人一人に説明すんだぞおめ。
サポートがしっかりしてればべつね。
021621302/12/29 17:08ID:ZUUThS54
解決しました。
0217名前は開発中のものです。02/12/29 17:09ID:d5AOLlrA
普通はシェーダが使えなければそのぶん画質が悪くなるだけで
ゲーム自体が動かないようには作らない
0218名前は開発中のものです。02/12/29 17:30ID:+snDuV4e
本当にそんなことが可能なのか?
もし、その機能がなかったらこの機能を代わりに使うということを逐一考えて作るのか?
判定をミスると透過やフォグの類は最悪だぞ、
ラデオン7000ではフォグがきかずユーザーの画面には白い板がでてたそうな。笑
ピクセルシェーダはどうなるんだ?
透過が入ってくると無ければ使いませんとはいかないだろ
0219名前は開発中のものです。02/12/29 17:41ID:kj0kwrPh
同じルーチンを使いまわそうとするからいけないのでは?
手間はかかりますが有り無しを別々に作れば問題ありません
実際市販ゲームでは最低スペックの条件はあるにしても
最新機能の有り無しは速度と画質にしか影響してません
0220名前は開発中のものです。02/12/29 17:55ID:YfCnAzDb
skinnedmeshを詳しく説明してる日本語
サイト知ってる人いますか?
0221名前は開発中のものです。02/12/29 18:11ID:UWWAc8w/
一つ一つに手間をかけろということで?
でもそれなら、いっそ上はみないで低機能マシンでも動く範囲内で作りこんだほうが綺麗になるかも。
という結論になっちゃうよ。
だってモデルやテクスチャも動かないマシンむけと本物むけを用意しなくちゃいけないこともでてきそうだし。
0222あぼーんNGNG
あぼーん
0223名前は開発中のものです。02/12/29 23:58ID:fsGk3LPm
>>221
 言ってることが極端すぎないか?ようは低機能のマシン(といっても
限度があるだろうな。さすがにVirgeって事は無いはず)でちゃんと動く
ように作り、プラスアルファの部分として、ピクセルシェーダーのある
マシンなら使う部分がある、みたいにするんじゃないの?判定はできるんだし。

 ピクセルシェーダーの無いハードは、細かい機能の有無なんかチェック
しないで、低機能マシン汎用ルーチンで処理しちゃえばいいでしょ(もちろんこの
部分をちゃんと作る必要はあるんだが)。

 ちなみに頂点シェーダは、8.1までの機能なら、ノープロブレムで使えると
思ってる(CPUがちゃんとエミュしてくれる)けど、実際は問題があることも
あるのかな?個人レベルでは、そういう経験は無いんだけど。
0224名前は開発中のものです。02/12/30 00:58ID:9z/BycTF
現在.hackの様な視点の3Dゲームを作っていて、
モデルの全面検索で当たり判定をとって、避け補正を付けたのですが。

面ががT型に交わっているところに斜めに進入すると、
その面の向こう側に垂直に立っている面とも当たり判定を取ってしまいます。
何か良い回避方法は無いでしょうか。
0225名前は開発中のものです。02/12/30 02:16ID:q+UcSJ4d
低スペックマシン対応プラスαでピクセルシェーダをつけるのか
んな作業時間あるわけねーだす、大抵はプラスαをきって納品だす笑
頂点シェーダがどこまで可能かってのはやったことない。
やってみてくれ
もしを考えると恐くて使えないっす。無知ゆえの恐怖もあります

当たり判定は当たり自体のアルゴリズムをいじるより
判定をする当たりの絞り込み自体をなんとかしないとどうにもなりません。
一体自分の現在地からあたりうる当たりはどれだろう?、という判定に力をいれます。
■ このスレッドは過去ログ倉庫に格納されています