ゲームプログラミング相談室【Part5】
■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものです。
02/11/04 20:41ID:a1Mhmm8N扱う話題のダイナミックレンジはやや広め。包容力高め。
他の初心者質問スレとの棲み分けを探りつつ
これからもマターリと活用しておくれ。
■前スレ
【Part4】http://game.2ch.net/test/read.cgi/gamedev/1005040025/
■旧スレ(プログラム技術板)
【Part1】http://piza.2ch.net/tech/kako/969/969984472.html
【Part2】http://pc.2ch.net/tech/kako/985/985540361.html
【Part3】http://pc.2ch.net/tech/kako/1002/10028/1002894129.html
■関連スレなど
>>2-5
0002名前は開発中のものです。
02/11/04 20:42ID:???○【初心者歓迎】スレを立てる前にココで質問を【その3】
http://game.2ch.net/test/read.cgi/gamedev/1032814540/
○物凄い勢いで誰かが質問に答えるスレ@ゲ製板 4つめ
(※第3スレ後半〜第4スレ前半は一時的な紛争地域)
http://game.2ch.net/test/read.cgi/gamedev/1035601681/
○鬱だ氏のう DirectX (DirectXに関する話題)
http://game.2ch.net/test/read.cgi/gamedev/1033920036/
0003名前は開発中のものです。
02/11/04 20:49ID:???0004あぼーん
NGNG0005名前は開発中のものです。
02/11/04 22:41ID:???0006名前は開発中のものです。
02/11/06 00:04ID:???0007名前は開発中のものです。
02/11/06 00:20ID:Hy1yMbKx0008名前は開発中のものです。
02/11/06 20:50ID:mrrgYg+ptruncated"と怒られる。どうも template がらみでできる weak object の配置に
失敗してるみたいだけど、解決策知ってる人います?
(確かに MIPS だとグローバルポインタ相対でアクセスするから、配置する箇所に
よってはグローバル変数といえどアクセスできなくなるよな。ld に喰わせるスクリ
プトファイル書けばいいのか?)
0009名前は開発中のものです。
02/11/07 01:44ID:???ふつう -G0
ってコンパイラ何使ってるかくらい書けヨ!
0010エックサー
02/11/07 19:03ID:O6dqrNtE0012名前は開発中のものです。
02/11/08 13:56ID:mLnGgDjl座標xyzをwで割るらしいのですが、xyzwの求め方がわかりません。
xyzはただの3D座標なのでしょうか? それとも何かの行列を
掛けたりしているのでしょうか?
wはどこからでてくるのでしょうか?
すみませんが 教えていただけませんか?
0013名前は開発中のものです。
02/11/08 14:34ID:???DirectD3なりのレンダリングエンジンを使うにしても
描画前に行列をセットしていると思うが何が分からないのか分からん
00148
02/11/08 21:31ID:???が .sdata セクションに配置されるのが問題なんだね。
教えてもらった -G0 を使って「全部 .data セクションに置く」方法に加えて、
問題になってる変数に個別に __attribute__((section(".data"))) 指定する
方法でも動きました。
しかし、何で __malloc_alloc_oom_handler などのクラステンプレート中で
定義された static 変数に限って .sdata に配置できないのかは謎です。
.sdata や.sbss 使い切るほど static 変数定義してないんだけど。
0015名前は開発中のものです。
02/11/08 21:41ID:???オブジェクトのローカル座標に、ローカル・ワールド変換行列、ワールド・ビュー
変換行列、ビュー・スクリーン変換行列(a.k.a 射影行列) と順にかけて、出てき
た座標を w で割れば良い。
行列だけど、DirectX 使ってるなら SetTransform() に
D3DTS_WORLD
D3DTS_VIEW
D3DTS_PROJECTION
という第一引数を指定して渡してるヤツ。
>>13
まぁ、サンプルコードを深く理解せずに copy & paste してるんでしょう。趣味
でプログラミングしてるなら、そういう態度もアリだとは思うよ。
0016名前は開発中のものです。
02/11/09 00:02ID:???gccって、vtblを.dataに吐いてたりしない?
0017名前は開発中のものです。
02/11/09 01:09ID:0QThSDojそーゆー奴ってさワールドからローカルへの変換ができねぇってことだろ?
動いてる物体にのれないのはもちろんのこと
スキニングも理解してできてねぇだろ?
逆行列はしっかり理解してから次のステップへいってもらいたいね。
俺も会社入るまえそうだっただけに応援したいね。
ローカルに直せるってだけでかなりできることが増えるね。
なにいってるかわかんなくなったね。
じゃあね
00188
02/11/09 01:16ID:???vtbl が配置されるセクションと、クラステンプレートの static 変数が配置される
セクションが違うと、何か問題がある? あと、今回の件に関しては STL のコン
テナが利用する allocator の話なんで、仮想関数は出てこないはず。
そもそも .sdata, .sbss に関しては、こういうことだと理解してるんだが、勘違い
があったら指摘して下さいな。
1. EE-core (っつーか MIPS) は 32bit 固定長命令を採用しており、アドレス
空間も 32bit ある。
2. したがって 1 命令で 32bit の任意のアドレスにアクセスすることはできない。
どうしてもアクセスしたければ
a) まず 16bit をレジスタの上位アドレスに読み込み
b) 次にオフセット付きメモリ参照命令を使って、メモリにアクセス
と 2 命令使う。
3. それだと効率が悪いので、汎用レジスタの一つ ($gp) をグローバルポインタ
として固定した値を入れて利用。static なデータは $gp から 16bit 相対で
アクセスできる範囲に入れておく。(これが .sdata と .sbss)
当然 16bit 相対でアクセスできる範囲は限られるから、そこから溢れたデータ
は効率悪くても 2 の方法でアクセスする必要がある。gcc は標準では 8byte
以下のデータは .sdata, .sbss セクションに、それ以上のデータは .data, .bss
セクションに格納する。この閾値は、必要に応じて -G オプションで変更できる。
00198
02/11/09 01:19ID:???そういうわけで gp がらみで問題になるのは
1. .sdata, .sbss が溢れるほど大量に static データを定義した場合
2. 翻訳単位によって、閾値が異なる場合。たとえば同一のグローバル変数を
参照するプログラムの片方を -G0 でコンパイル、他方を -G8 でコンパイル
とか。
3. $gp を書き換える場合。特に位置独立なコードを使うシェアードライブラリの
関数を呼ぶ場合。(ふつー Global Offset Table 用意して、$gp 書き換えた上
で関数を呼ぶスタブを作る)
といった場合。クラステンプレートの static 変数が関わるとは思えんのよ。
PS2 Linux だとなんの問題もなく動いたような気がするし。
002012
02/11/09 01:55ID:s6gdDMqCビュー行列 と 射影行列を掛けたものと、 3D座標を 掛けたの
ですが、でた xyzwで
x/w
y/w
z/w
をやってみたのですよ。
しかし、 値が1.0を超えているにもかかわらずスクリーンの端
にまで、 ラインが(この時二つの座標を線で結んでいました。)
届いてませんでした。
なので、 やり方が違うのかなとおもいまして・・・・
0021名前は開発中のものです。
02/11/09 01:58ID:???なんか微妙に日本語が変な気が。ありがちなのは行列をかける順番を
間違えてるとかだが。
> しかし、 値が1.0を超えているにもかかわらずスクリーンの端
> にまで、 ラインが(この時二つの座標を線で結んでいました。)
意味が良く分からん。
002212
02/11/09 02:14ID:s6gdDMqCすばやいレスありがとうございます。
2点をラインで描画しました。
ビュー行列 matView
射影行列 matProj
調べたい座標 Vec
計算後の値 v4
mat = matView * matProj
D3DXVec3Transform(&v4,Vec,mat);
Vecとmatを計算して求められた 値をwで割る
v4.x/v4.w
v4.y/v4.w
v4.z/v4.w
ここで スクリーン座標が求められるはずです。
スクリーン座標の値は xyに関しては -1〜1 zは 0〜1に なるはず
だけれど、 その値を超えたにもかかわらず そのラインは
画面の端まで届きませんでした。
mat = matProj* matView
でやってみても 値は変わりますが、 ラインが端まで届きません。
なので、計算の仕方が間違ってるのか、それか根本が間違っている
かどちらかだとおもうのです。
0023名前は開発中のものです。
02/11/09 03:22ID:gww9xFnI002412
02/11/09 03:44ID:s6gdDMqCすみません。 たしかに、 640,480のウインドウを値(1.0,1.0)に
する必要がありますが、 このビューポートを実際どのように
使えばいいのか。
002512
02/11/09 05:27ID:s6gdDMqCもとめられた値に windowのサイズの半分を掛けて
あげればよいのでしょうか?
640,480のウインドウなら320,240をそれぞれ掛けてあげる
x = x*320;
y = y*240;
それですと 一応それらしき値はでます。
0026名前は開発中のものです。
02/11/09 09:43ID:iuRz/9+A0027名前は開発中のものです。
02/11/09 14:55ID:9m0Zluol0028名前は開発中のものです。
02/11/09 14:59ID:???質問の仕方とか…ね。
0029名前は開発中のものです。
02/11/09 15:20ID:m4HooRjJ003012
02/11/09 17:41ID:s6gdDMqC>>ちゅーしんをあーわーせーろー。
中心ですか
どうやってあわせるのだろう・・・・・
視点と注視点から 角度を求めて それを 頂点に掛けて
あげるのでしょうか・・・
うーんでも、ビュー行列を掛けたときにすでに入っているような気も
しないでもないですね。
0031名前は開発中のものです。
02/11/09 21:43ID:???参考書でも読んで勉強したほうがいいと思うぞ。
0032名前は開発中のものです。
02/11/09 22:11ID:???試しに自力でライブラリ無しでポリゴン出してみなよ
ワイヤーフレームでいいからさ。いろいろ分かると思うよ
0033名前は開発中のものです。
02/11/10 00:18ID:laxcwGaC目的地をみさーだーめーていっちーょくせんでりろーんはそーれーかーら
かーんーがえーるーのがーすーきーだ。
ちーなーみーにーちゅうーしーんをもとーめるーとゆーんは、
たーすーだーけーだーよ?あ?
で、あーとーはーじぶーんでなーんとかしれー
0034名前は開発中のものです。
02/11/10 00:32ID:???誰なのかわかりますた ヽ(´ー` )ノ
初期化してないstatic class memberが
.bssに入らないで.dataセクションに
入っちゃうみたいだけど、それじゃない?
それが正しいのか間違ってるのかしらないけど。
http://chapuni.com/topics/psx/
でも、やっぱ -G0
003512
02/11/10 03:52ID:CLex+uUH私も とりあえず、足せば良いのかなと思いやってみたのですが
うまくいきませんでした。
>あーとーはーじぶーんでなーんとかしれー
いろいろご指導ありがとうございました。
いろいろ試して見たいと思います。
0036名前は開発中のものです。
02/11/10 07:26ID:???求まったxとyを使えば良いんじゃねーの?
その時、原点は画面中央、640×480の場合、xが0なら
画面中央320って事じゃないの?
…漏れの環境だとね。
zはカリングで使うじゃない?マイナスだとカメラの後ろに来てるって事。
0037名前は開発中のものです。
02/11/10 11:38ID:???static class menber でも、問題が出るものと出ないものがあります。
普通のクラスの static member object -> 問題なし
テンプレートクラスの static member object -> relocation truncated ... でリンク時エラー
普通のクラスとテンプレートクラスで異なる点は、nm で見た限りだとシンボルが
weak か否かという点。テンプレートクラスの static member は複数の翻訳単位
でインスタンス化される可能性があるけど、リンク後には実体を 1 つにせにゃな
らんので weak object になってる。
それで weak object + .sdata セクションという組み合わせが悪いのかと思ったの
だけど、違うのかなぁ。(これ以上は binutils のソース読まんと解決しないような
気がしてきた)
> でも、やっぱ -G0
らじゃ。
0038名前は開発中のものです。
02/11/10 17:12ID:X0lDMmpo>オブジェクトのワールド座標ににプロジェクション行列の逆行列をかけて
>求まったxとyを使えば良いんじゃねーの?
これですと 値が変動するときは プロジェクション行列が変わった時だけ
なのでうまくいかないと思います。
003936
02/11/10 19:10ID:???こっちの環境だと、独自クラスのカメラてのがあって
毎フレーム、視錐台の変更って感じでやっているから出切るんだわ。
0040前編
02/11/10 20:19ID:JSg4/5lDまず変換したいワールド座標にカメラの逆行列をかけます。
これはDIRECTXではGetTransなんとかでとれるあたいそのままです。
つぎにプロジェクションマトリクスをかけます。
これは大抵の環境で同じです。
それからビューポートの変換です。
これは640X480の場合は
0041後編
02/11/10 20:29ID:JSg4/5lDY=(Y/W)*-240+240
で終了です。
これはDIRECTXのヘルプにものっています。
ヘルプでビューポートで検索をかけるとみつかります。
これでできなかったら少し実際にものをだして動かしてみてはどうでしょうか?
004237
02/11/11 20:55ID:???.gnu.linkonce.s セクションのデータを $gp 相対でアクセスできそうなところに
配置しろ、ってことで。
(結局 gcc のソースを読む羽目になったよ……)
0043名前は開発中のものです。
02/11/12 00:59ID:???そんなんでgccのソース読む羽目になったの?
マップファイル見たらすぐわかりそうなのに。
0044名前は開発中のものです。
02/11/12 01:18ID:???それは「.gnu.linkonce.s セクションって何、どういう条件で作られるの?」っつー
のが、分からなかったから。推測はついたけど、裏をとらないと困るっしょ。
0045名前は開発中のものです。
02/11/12 01:35ID:???そこまで見たあんたに尋ねるが、ソノ環境で、vtblは何処に出てる?
.gnu.linkonce.d.vt とか、そんなんだと思う。
なんか、gccのデフォルトで、.dataの一部として吐かれるみたいなんだけど、
書き込み可能なセクションに吐く理由がわからなくて気になってるんだ・・・。
0046名前は開発中のものです。
02/11/12 21:24ID:???確かに .gnu.linkonce.d.__vt_なんちゃら セクションに書かれてる。
gcc/cp/class.c を読むと
#ifndef WRITABLE_VTABLE
TREE_READONLY (decl) = 1;
#endif
みたいな記述があるから .gnu.linkcode.r に配置されそうなもんだが。謎。
0047名前は開発中のものです。
02/11/13 00:43ID:???おお、そのマクロでしらべてみたら、なんかでてきたよ。
ありがとん。
で、デフォルトでそんなマクロは定義されないらしいのだが・・・。やはり謎。
0048あぼーん
NGNG0049名前は開発中のものです。
02/11/16 22:06ID:???| ここでおしまい |
|________|
∧∧ ||
( ゚д゚) ||
/ づΦ
0050名前は開発中のものです。
02/11/16 23:26ID:VL8Oafejはやまるなー
0051名前は開発中のものです。
02/11/21 03:03ID:277H+gCD0052名前は開発中のものです。
02/12/06 07:52ID:c2Ro9O0h0053あぼーん
NGNG0054名前は開発中のものです。
02/12/09 22:53ID:gy0Rwv2m丁度プロジェクトのハザマで暇なので
ツール作成でもしてみなさい、と上司に言われました。
イチから作成する根性もやる気もないのでとりあえず
VRAMを眺めるツールでも改造してみようかと思うんですが
どう改造したら勉強になるのか見当がつきません。
どうせ改造するならためになるほうがいいんだけど・・
ハードはGBAです、どなたかお知恵を。。
0055あぼーん
NGNG0056名前は開発中のものです。
02/12/10 09:19ID:JzMo+9Nzアイタタ
0057あぼーん
NGNG0058名前は開発中のものです。
02/12/23 20:03ID:CHDaAJj80059名前は開発中のものです。
02/12/23 22:42ID:frBmN/bA精妙なあたり判定を作りたいときは大小の四角を何個か組み合わせればいいのかな?
0060名前は開発中のものです。
02/12/23 22:45ID:mYrEUkS2具体的なビットマップだったり、矩形だったりするが
それはゲーム依存。
当たりを判定して、何に使うかというのもポイントだったりするので
そのへんもデザインしよう。
0061名前は開発中のものです。
02/12/23 22:57ID:frBmN/bA0062名前は開発中のものです。
02/12/23 23:53ID:OrL+tItn0063あぼーん
NGNG0064名前は開発中のものです。
02/12/25 01:36ID:06ow8SQ/ex・・・敵機X座標、ey・・・敵機Y座標、exa・・・敵機幅、eya・・・敵機Y幅
if ( (mx<ex+exa)&&(mx+mxa>ex)&&(my<ey+eya)&&(my+mya>ey) ) ...
シューティングのオーソドックス?な当たり判定はこんな感じのやり方しか
知らないんだけど他にはどんな方法がありますか?
ゲームやハードに依存しててもいいからいろんな判定の仕方が知りたいYO!
0065名前は開発中のものです。
02/12/25 02:21ID:fYJY+WkTcEnemy…敵管理クラス。
cEnemy* hitRect[40][30];
cEnemy* pHitList = hitRect[mx/16][my/16];
while(pHitList != NULL){
if( pHitList->IsHit(mx,my) ) printf("どっかーん");
pHitList = pHitList->GetNext();
}
0066名前は開発中のものです。
02/12/25 02:33ID:BLeCLBHq0067名前は開発中のものです。
02/12/25 02:44ID:e+neG+8zどちらにしろ定数にしておくべきだと思うが…。
0068名前は開発中のものです。
02/12/25 03:27ID:BLeCLBHq0069あぼーん
NGNG0070名前は開発中のものです。
02/12/25 07:56ID:dIcCINXPマジックナンバー使わんでくらはい(´д`;)
大きな判定の場合はどうするの?
複数のエリアに登録する?
0071名前は開発中のものです。
02/12/25 10:40ID:vBfJXHZb高速弾だとすり抜けが多発しそうだが、その辺は考慮に入れてあるのか?これ。
0072名前は開発中のものです。
02/12/25 10:48ID:Bqxu+V45たとえ弾幕系でも2Dシューティング程度の判定量で
んな小細工する必要皆無だと思うけど。
0073名前は開発中のものです。
02/12/25 11:18ID:ufF3sG4T1000個の弾との判定にかかるのは3万クロックだな。
60fpsで判定すると180万クロック。
1GHzのCPUなら0.2%で、2ミリ秒/秒だな。
安直にできそうなところはさっさとスルーしたほうがいいと思った。
0074あぼーん
NGNG0076名前は開発中のものです。
02/12/25 16:58ID:dIcCINXP計算量を、O(n^2)からO(nlog2n)までもっていけるらしい。
0077名前は開発中のものです。
02/12/25 19:40ID:RXUO2PKHまず何から作り始めると良いでしょうか?
0078名前は開発中のものです。
02/12/25 19:40ID:/cDNIeOU0079あぼーん
NGNG0080名前は開発中のものです。
02/12/25 21:16ID:ocB35uV6まずあなたがどこまでできてるのかがわからないことには・・・。
>>78
http://www.campus.ne.jp/~ishigami/CREATION/
ここの下のほうに解説ページがあるよ。
0082名前は開発中のものです。
02/12/25 21:37ID:Kq2zu9Npまずマップチップ(背景データの素材)を用意して
それを配置したマップデータを用意して
マップデータから1画面分のデータを読み込んでマップチップを貼り付けて
それをスクロールさせる(読み込み位置を変化)ところから。
グラフィック関係はBitblt関数でやってもいいしDirectX使ってもいいし。
素材が無いと気合入らない事もあるし・・・
2Dアクションって・・・シューティング以外の格闘系だったりする?・・・
0083名前は開発中のものです。
02/12/25 21:43ID:ocB35uV6マップ上にキャラクターの絵を置いて、キーボード操作によって
キャラの位置を動かすのをやってみるといいかも。
習作としてはシューティングが最適だったりするんだよね。
重力の概念とか考えなくていいし。
0084名前は開発中のものです。
02/12/25 21:45ID:C+V8gp8bどんな教科書だ?
008581
02/12/25 21:59ID:RXUO2PKHサラマンダみたいなやつの背景をうごかせるようになればいいのか。
CとDirectX、どっちが関数使いやすいですかねぇ。
>>84
C言語の本で確か「初めてのC」って名前でした。
0086あぼーん
NGNG0087名前は開発中のものです。
02/12/25 22:06ID:Kq2zu9NpCでDirectXを操作するのだよ。DirectXは言語じゃない。
0088名前は開発中のものです。
02/12/25 22:09ID:qyObx7qFうむ。
っつか素の ANSI C だとグラフィック関係を制御するライブラリ関数ないし。
0089名前は開発中のものです。
02/12/25 22:13ID:Kq2zu9NpC言語の関数でやってみてからDirectXに移行した方がいい。
グラフィックを扱う部分は大した量じゃないから後ですぐ移行出来る。
009085
02/12/25 22:15ID:RXUO2PKH勘違いしてました。
今手元にあるヴィジュアルCはグラフィック関係を制御できますか?
0091名前は開発中のものです。
02/12/25 22:26ID:Kq2zu9NpVC持ってるんならここのスクリプトを使えばいい。
ここの講座もためになる。
0092名前は開発中のものです。
02/12/25 22:40ID:qyObx7qF> C言語の関数でやってみてからDirectXに移行した方がいい。
要らぬ誤解を招かぬように「まずは Win32 API (GDI)」とでも言っておいた方が
良いと思われ。
標準 C ライブラリ関数には GUI 関係は全く既定ないから。(それどころか CUI
のスクリーン制御さえ既定ないわけだが)
> 今手元にあるヴィジュアルCはグラフィック関係を制御できますか?
もちろん。
Win32 API でプログラム組みたいなら、「プログラミング Windows」って本がバイ
ブル。分厚い本だが、懇切丁寧に書いてあるから読むのは難しくない。
0093名前は開発中のものです。
02/12/26 03:31ID:sowo2pdCWindows95 APIバイブル1も一冊あるとかなり便利。
ただ、ヘルプを読んでれば十分という話も。
0094あぼーん
NGNG0095名前は開発中のものです。
02/12/26 11:15ID:9T0jKzmaVC++ == MFC みたいな
0096名前は開発中のものです。
02/12/26 12:11ID:FD9iJ3tpC++は言語
0097名前は開発中のものです。
02/12/26 12:12ID:LkNUpvkb0098名前は開発中のものです。
02/12/26 13:16ID:u+QTkfIN0099あぼーん
NGNG010090
02/12/26 19:37ID:kDKABYvSVC++の使い方が分かりません。
0101名前は開発中のものです。
02/12/26 21:26ID:KKaDaCig0102名前は開発中のものです。
02/12/26 21:29ID:bqU4KP+U拡張機能多いからな。インラインアセンブラ, typeof, 可変引数を使える #define と
か便利。
話が変わるが、頂点ブレンディング。剛体変換を行う複数の行列 M1, M2, ... と、
頂点毎に重み w1, w2, ... を用意して
M = Σwi * Mi (ただし Σwi = 1)
で出した M を使うってのは分かるんだが、当然この M って剛体変換じゃない
よね。
頂点変換は良いとして、法線ベクトルの計算をどうしたものかと思ってるんだが、
o 法線ベクトルの算出も M を使う。
o ただし法線と M の積を求めた後で、出てきたベクトルをノルムが 1 になるよう
に正規化する。
で良いのかね。
0103100
02/12/26 22:09ID:kDKABYvSまずはVC++の使い方から調べます。
0104名前は開発中のものです。
02/12/26 23:04ID:hDb5j8vT0105103
02/12/26 23:14ID:kDKABYvSVC++を立ち上げて新規作成を選んでファイルのところに
C++ソースファイル
HTMLページ
SQLスクリプトファイル
とか色々あるのでどうすれば良いのか分からなくなってます。
0106名前は開発中のものです。
02/12/26 23:31ID:u+QTkfINヘルプに「チュートリアル」があるので、
まずはそれを一通りやってください。
0107名前は開発中のものです。
02/12/26 23:50ID:5pSEx7R5VCの本を買えばプロジェクトの作り方から実行方法までは迷うことはないです。
その金も惜しむなら、検索エンジンで
猫でもわかるプログラミング
で検索をかけてください。
0108名前は開発中のものです。
02/12/27 03:00ID:8wDhiAR8君はここじゃなくてプログラム板の初心者質問スレッドで
聞いたほうがいいよ。
0109あぼーん
NGNG0110105
02/12/27 10:18ID:CvRh/hw0がんばります。
0111名前は開発中のものです。
02/12/27 10:19ID:3lURIe+n「素人は数値や文章を打ち込む事をプログラムだと勘違いしている」
「数値や文章なんて、プログラムと切り離してエクセル等でササーっと打ち込めば済む事」
といった類の事を耳にしました。
テキストエディタのマクロを使う事くらいしか思いつかず、
どういやって切り離すのかまったくイメージ出来ません。教えてください。
あと、「そんな事はスクリプトを組んでスクリプトにやらせるべきで、逐一書くのなんて作業効率悪すぎ」
なんて事もどこかで読みましたが、ここで言うスクリプトって言うのは関数の事で合っていますか?
0112名前は開発中のものです。
02/12/27 10:27ID:USn1psUAいいえ。
0113名前は開発中のものです。
02/12/27 12:00ID:njWlRsrn遅レスだけど、
>if ( (mx<ex+exa)&&(mx+mxa>ex)&&(my<ey+eya)&&(my+mya>ey) )
こーやったほうが処理が稼げると思ふ。。。
if( mx > ex+exa ) goto HIT_CHECK_END;
if( mx+mxa < ex ) goto HIT_CHECK_END;
if( my > ey+eya ) goto HIT_CHECK_END;
if( my+mya < ey ) goto HIT_CHECK_END;
// 当たったヨ
アボーン;
HIT_CHECK_END:
// 当たらなかったヨ
ヤレヤレ;
0114名前は開発中のものです。
02/12/27 12:38ID:lBLepIDxコンパイルかけたら同じ出力になると思う。
0115あぼーん
NGNG0116名前は開発中のものです。
02/12/27 14:55ID:V5zq1+E8即レスありがとうございます。用語辞典読んでも実感が沸かない。
スクリプト==サクラエディタで言う所のマクロだと理解していいんですか?(秀丸マクロとか)
「そんな事はスクリプトを組んでスクリプトにやらせるべきで、逐一書くのなんて作業効率悪すぎ」って言うのは、
せんし・300/150/150/50
ぶとうか・200/160/70/150
ゆうしゃ・2500/140/140/140
と打ち込んだテキストをスクリプトにかけてCの書式にする方が、
逐一ステータスをCで記述して行くよりも圧倒的に速い。って事ですか?
0117あぼーん
NGNG0118名前は開発中のものです。
02/12/27 19:33ID:USn1psUAそんな感じ。
ただし実際には素の C まで落とさずに、中間言語に落として、プログラム側では
中間言語を解釈するインタプリタを用意することが多い。こうすると、パラメタやら
イベント処理を変えても再コンパイル不要になるからプログラマの手間・データを
変更してから実際に動かして試すまでのタイムラグが減る。
0119名前は開発中のものです。
02/12/27 23:28ID:1/oKDJhPオレが悲しい 年末2ちゃん
当方C++歴5年、DirectX歴1年、4月から新人プログラマ
がっくり。
0120名前は開発中のものです。
02/12/28 01:08ID:w/8XZg/Yバイナリを吐いて、それを解釈しつつ実行というのが多いと思う。
UCSD PASCALみたいな感じか。
0121あぼーん
NGNG0122名前は開発中のものです。
02/12/28 16:40ID:XAkUMvyT私は最近Cをはじめた者です。一つ疑問があります。
アプリケーションなどを開発するのと
ゲームを開発するのは、まったく同じものと考えてよろしいのでしょうか?
使用する言語が同じだとしましても、アプリとゲームを開発するのでは、
何か違いがあるのでしょうか?最近非常に悩んでおります。
専門学校などでも、アプリ開発の学科もあれば、「ゲームプログラム学科」
というのもありますし、何か違いがあるのかと思いまして質問させて
頂きました。よろしくお願いいたします。
0123名前は開発中のものです。
02/12/28 16:55ID:6+UzED5V違いは無い。
0124122
02/12/28 16:58ID:XAkUMvyTありがとうございます!
コレで悩みが全て飛びました。
気がねなく勉強できます。ありがとうございました!!
0125名無しは開発中
02/12/28 17:36ID:6v0StEIP0102aabb...とかいう16進数なのです
プログラム中では定数をあてはめます。
#define command_1 0x01
#define command_2 0x02
.....
command_kaiseki(int no){
switch(no){
case command_1:
1の処理
break;
case command_2:
2の処理
......
}
}
0126名前は開発中のものです。
02/12/28 17:45ID:9/qiHtylyaccやlexを使えるようにしておくと楽でいいかもね。
あと、参考スレ
http://game.2ch.net/test/read.cgi/gamedev/1005114698/
0127名前は開発中のものです。
02/12/28 21:35ID:a5KU/+oB0128名前は開発中のものです。
02/12/28 21:43ID:LbjIcZ3v0129名前は開発中のものです。
02/12/28 22:26ID:Q6tgt9eh男の子もキボーン (笑)
0130名前は開発中のものです。
02/12/28 23:56ID:/o2fnhX+0131あぼーん
NGNG0132名前は開発中のものです。
02/12/30 13:32ID:KFhb8kwQ大きく人生を狂わせるような発言では?
0133名前は開発中のものです。
02/12/30 13:48ID:c0Wr5svx0134名前は開発中のものです。
02/12/30 23:20ID:9kumBzuaロックマン知らなくてもどんな人でもいいので少しでも手助けを
脳内ロックマンを作るスレ
http://choco.2ch.net/test/read.cgi/nanmin/1033731222
0135あぼーん
NGNG0136名前は開発中のものです。
03/01/04 14:14ID:Oaz/Glfr敵の出現場所を定義するのがすごい面倒なんですよ。
ファイルに、敵が現れる時間、場所、種類などを書いて、それを読み込ませて
るんだけど、ちょっと間に敵を追加したいと思ったら、それ以降の敵の時間を
全部ずらさなければいけなくなります。
みなさんはどんなフォーマット使っていますか?
0137名前は開発中のものです。
03/01/04 14:18ID:RYWMO7ZD適切なツールを作るのが賢明じゃないかなあ。
0138名前は開発中のものです。
03/01/04 14:19ID:Pe6gSFnI直前の敵との相対時間
0139名前は開発中のものです。
03/01/04 14:36ID:Oaz/Glfr相対時間ならそれはそれで、面倒になることはないかな…
一応やってみますか。
0140あぼーん
NGNG0141名前は開発中のものです。
03/01/04 14:41ID:Siq0Vq2wこれだとペンティアム4のハイパースレッド機能という奴を使わないといけないのでしょうか?
最近PCをX68000からWindowsXPに変えたばかりなのでよろしくお願いします。
0142あぼーん
NGNG0143名前は開発中のものです。
03/01/04 14:59ID:RYWMO7ZDmainloop()
{
一人目のキー処理();
二人目のキー処理();
時間を進める();
描画();
}
>PCをX68000からWindowsXPに変えたばかり
ナントカ山口に騙されてたクチか?
0144名前は開発中のものです。
03/01/04 15:02ID:HHCJx2guまぁマルチスレッドで処理するという手もあるが、見たところゲーム製作は
初心者(失礼)っぽいので、擬似タスクから勉強したほうが良いと思うよ。
参考URL
http://www.hh.iij4u.or.jp/~peto/Games/games_top.html
0145あぼーん
NGNG0146名前は開発中のものです。
03/01/04 19:09ID:b7FiLgbbキー入力の処理とそれとは、まったく関係ないが…
0147名前は開発中のものです。
03/01/04 19:19ID:b7FiLgbb手を抜きたければ配列ってのもあり。
static unsigned int enemys[] = {
1, 0, 0, 0, 0, 0, 1, // 0 frame目
0, 0, 0, 1, 0, 0, 2, // 60 frame目
0, 0, 0, 0, 0, 0, 2, // 120 frame目
..
};
1 行 60 frame 単位で処理して、出現座標の x 座標に対応したところに
敵出現情報を埋めておく。0 で敵なし, 1, 2, 3, .. が敵の種類とかさ。
少し凝った処理が必要(たとえば 30frame で出したい)とかになったら、
上位 24bit をパラメタとして敵出現関数に渡して、そっちで細かい処理
をさせる。
0148名前は開発中のものです。
03/01/04 19:25ID:Sa70MEqMキー入力とは関係ないが、
> これだとペンティアム4のハイパースレッド機能という奴を使わないといけないのでしょうか?
こんなことを言ってる様だと、擬似タスクの勉強からはじめろって言いたくなる
気持ちもわかるだろ。
それじゃあーハイパースレッド機能のないX68000では二人用のゲームは
作れないのか?と問いたくなるけど(w
>>141 はキー入力のことは一旦置いといて、ゲーム制作の基本中の基本を
解説しているサイトを検索して読み漁った方がいいかと思うけどね。
0149あぼーん
NGNG0150名前は開発中のものです。
03/01/04 20:57ID:iAU/RP0wゲームのメインループとキー入力の関係を教えた方が百倍為になる。
0151名前は開発中のものです。
03/01/04 21:19ID:tSU5Xw8/昔のようなハードウェアを 1 つのプログラムで占有できる環境なら
ポーリングさせれば良いんだが、今時の環境についてマジに理解しよ
うとすると、割り込みと OS 側の処理に関する知識が必須になる。
とりあえず「DirectInput では現在のキー入力状態を取得する API
が提供されてるから、それを使えば良い」ぐらいの理解で済ませてお
いて、細かい話は必要になるまで忘れといた方が幸せじゃないかね。
>>141 にちょい追加だが
mainloop()
{
キーボード入力状態のスナップショットを取得(); // 細かいことは Win32 にお任せ
一人目のキー処理();
二人目のキー処理();
時間を進める();
描画();
}
0152名前は開発中のものです。
03/01/04 21:31ID:mQYZkk6z0153148
03/01/04 21:41ID:Sa70MEqM> ゲームのメインループとキー入力の関係を教えた方が百倍為になる。
ハァ?何それ?・・・って感じですがなにか?
>>151
141のレベルを推測するとそこまで考える必要は全然ないと思われ。
そんなのは逆に知識ひけらかせてるだけにしか見えないが。
そもそも質問にマジレスするとなると、まずほとんどの二人用ゲームで
「同時に処理する必要はないし、厳密にはできない」だな。もちろんこれだけで
141がきちんと理解できるのか疑問だけど、それ以上のことは141自身が
言ってないので答えようがないな。
0154名前は開発中のものです。
03/01/04 21:59ID:tSU5Xw8/そもそも「同時」ってのが何を指してるのか考えないといかんよな。
>>141
現実世界だと時間は連続して流れてるわけだが、ゲームではふつー 1/60 秒なり
何なりの適当な間隔でゲームを進行させる。だから、入力を処理するのも「押し
たらすぐ」ではなくて、押したらそれを覚えておいて、次のゲーム進行のタイミ
ングで処理すれば良い。
…ってのがすべての基本かね。
0155名前は開発中のものです。
03/01/04 23:09ID:UD5seDi4なるにはどうしたらいいんだ!?
人生の先輩達よどうか教えておくれ・・・
0156名前は開発中のものです。
03/01/04 23:20ID:9YV/5Oa6マジレスすると、ゲーム以外のことを沢山勉強すべし。
0157名前は開発中のものです。
03/01/05 01:16ID:BX37WwrGあと数学と物理と英語。
0158名前は開発中のものです。
03/01/05 02:04ID:Y2P5Wwxzゲーム制作をさせてくれる会社に入りましょう
0159141
03/01/05 03:22ID:GM2t1dvX0160あぼーん
NGNG0161名前は開発中のものです。
03/01/05 07:23ID:cPL0Ma17プログラマになりたいなら、大学までプログラムは放って置いて
高校までに英語をネエティブ並みに話せる、書ける、読めるようになっておきたい。
俺が。
0162名前は開発中のものです。
03/01/05 20:39ID:XJftI3rc俺漏れも
0163名前は開発中のものです。
03/01/05 21:51ID:+ZilYbBVならんぞ。まぁ、英語も読むぐらいはできないと困るが。
0164名前は開発中のものです。
03/01/17 11:54ID:zxXu494p( ´∀`)< 糸冬 !!
/, つ
( ((_(_, )) )
しし'
0165名前は開発中のものです。
03/01/23 12:30ID:B/UbhrUo0166si
03/01/29 11:03ID:03M+lMkZC言語で希望です。
0167名前は開発中のものです。
03/01/29 13:57ID:2TLqok57http://www.vector.co.jp/soft/dos/game/se000996.html
0168あぼーん
NGNG0169名前は開発中のものです。
03/01/29 21:03ID:SdJpN0Xoちょっと疑問に思ったので質問させてください
たとえば、飛行機を表すタスクがあって、飛行機が移動しますね。
で、3Dのゲームだとカメラから描画の順番とか決めたりする処理がきて、で、そのあとに描画本体が来ますね。
とうぜん、飛行機の描画処理は飛行機タスク自体がおこなっていると思うのですが、ここで疑問が生じました。
飛行機タスクは、1フレームの中で優先順位が変わるたびにリストの中を移動しているのでしょうか?
それだとリスト中の位置を特定するのにいちいちサーチをしているのでしょうか?
それとも、「飛行機」を表す複数のそれぞれ優先順位の違うタスクで一つの「飛行機」を構成している?
それだとデータをどのように共有しているのでしょうか?
おしえてください。
0170名前は開発中のものです。
03/01/29 21:18ID:fBpSUHac>飛行機の描画処理は飛行機タスク自体がおこなっていると思うのですが
ダウト
0171名前は開発中のものです。
03/01/29 21:26ID:SdJpN0Xoそいでは、どうやって描画してるのでしょう?
飛行機描画関数に飛行機を渡しているのかな?
0172名前は開発中のものです。
03/01/29 21:36ID:SdJpN0Xo要するに、
1.タスクはリストの中を移動することがあるのですか?
Yes -> 2 / No -> 3
2.リストの中をどうやって移動するのですか?
3.そしたら(描画をするのが飛行機タスクじゃないにしても)どうやってタスク間で情報を共有していますか?
0173名前は開発中のものです。
03/01/29 23:11ID:KEqojg40移動するとか考える必要ないんじゃない?
あと、タスク間での情報の共有って? 各タスクから共通の関数呼べば済むのでは?
0174名前は開発中のものです。
03/01/30 00:37ID:L8+k5MAr描画をタスク自身が行うとは考えにくい。
タスクというレベルにまで到達しているなら、
「描画専門タスクに描画を依頼する」
という方式になっていると思う。
描画されるものとしての飛行機と、
アプリ内でのオブジェクトとしての飛行機を、
区別することが肝要だと思う。
0175名前は開発中のものです。
03/01/30 02:17ID:BqRtFvdb2方向リスト処理ですよね。この場合、私の質問は、STLで書いちゃうと
std::list<task *> tasklist;
tasklist.remove(this);
tasklist.insert(newpoint, this);
の newpoint の位置をどうやってチェックしてるんですか?っていう意味だったのです。
listの先頭から全部なめていくのかなー・・・、それとも別の頭いいやり方があるのかな〜と。
情報の共有というのは、もし飛行機が
struct 飛行機 {
actor * a1, * a2;
}
で構成されるものだとして、a2 はどうやって a1 の中の変更した情報をチェックするのだろーとか考えてました。
いちいち new 飛行機 とかすると、(速度的な面で)疑似タスク使ってる意味がありませんよね?
>>174
なるほどです。
描画されるものとしての飛行機っていうのは、単純に飛行機のスプライトとか3Dモデルとかでいいですか?
0176名前は開発中のものです。
03/01/30 02:20ID:ZJQj5onMそのページの概念は処理順が安定している内部処理に絞られた物なので、
描画には向かないです。つーか勝手に用語用法決められても(汗
描画系で言ったら、
フレーム毎に「TCBアドレス+カメラ距離のセット」のリストを作成し、
距離基準にソーティングした後、リストを順になめて描画をする
様な処理が必要です。(実際にはマルチパスレンダやらなにやらで、優先度
の基準は色々追加されていく)
0177名前は開発中のものです。
03/01/30 02:26ID:BqRtFvdb「飛行機作るときに、a1 に a2 へのポインタかませば良いんじゃないの?」
っていうのは、飛行機を構成する疑似タスクがたくさんになってくると、メモリ領域の中身が
ポインタだけで埋まっちゃう・・・とか思ったので、使わないんじゃないかなとおもいました。
0179デフォルトの名無しさん
03/01/30 03:38ID:dIfJNfqdnewpointの位置
「ここから先は敵タスク」みたいな目印用のタスクを何個か加えて、
それのポインタをグローバルで持たせてる。
それ使って大雑把にサーチした後に細かく見てる感じでやってるけど… 他に良い方法あるのかな
情報の共有
基本的に、子が親のポインタを持つのみ。
親から子に何かさせたい時は、親が自分のフラグを変えて、子がそれを見に行く。
子同士で何かさせたい時は、子が親のフラグを変えて、他の子がそれを見に行く。
補足
タスクの移動は、タスクを管理している側で操作したほうがいいと思う。
自分で移動するとnextが変わっちゃうので、他タスクがスキップされたり2回処理されてしまう。
情報の共有は、親は自分が参照されているかどうか、調べる必要があるかも。
子が持っているポインタが開放されたタスクを指していることがないように。
0180>>169
03/01/30 03:47ID:Lo8nF9w1「3D描画エンジン(仮名)」というような割合高機能なクラス(もしくは関数群)を作って、
それに描画を依頼する形で考えると良いのでは。
1.各物体オブジェクト(タスク)は、「3D描画エンジン」に指定位置での指定3Dモデルの
描画を依頼する。
2.「3D描画エンジン」は、それらの情報(位置、方向+モデル)を総合してソートなどして
描画順などを決め、一気に描画する。
つまり、描画順は各物体オブジェクト(タスク)にとっては知ったこっちゃねぇと。
描画エンジンが面倒みてくれるよと。こゆわけです。
だから描画順によってリストを移動などしなくて良いのです。
0181名前は開発中のものです。
03/01/30 07:34ID:xfHNFz6rタスクは結局ステートを変更するだけに過ぎない。
0182171
03/01/30 13:02ID:BqRtFvdb>情報の共有
子同士で何かするときのイメージなんだけど、親を掲示板に見なして、
A「なんかすっぜ」
B「おー」
B「おれはやったぜ」
A「そかりょかーい」
B「うぃ」
みたいな感じでいいのかな?
タスクの移動に関して「nextが変わっちゃう」問題は、タスクを取ってきたときに
nextを保存しておくのはダメですか?
>>180
なるほどです。
0183名前は開発中のものです。
03/01/30 14:45ID:U9i8fY1r俺は、ポインタに1クッションおく「ハンドル」を使ってる。
Windowsのウインドウハンドル(HWND)なんかと概念は同じ。
ポインタを直接持たずに、ハンドルからポインタを得る。
安全だけど、面倒くさい。
参考URL
http://www2.tky.3web.ne.jp/~yosshin/memo/000213.html
0184あぼーん
NGNG0185名前は開発中のものです。
03/01/30 21:45ID:L8+k5MAr破滅的な状態を回避するには有効だと思う。
0186名前は開発中のものです。
03/01/31 10:15ID:6VWpyBYm0187名前は開発中のものです。
03/01/31 11:35ID:4bR+Vd+qCGIはサーバ&クライアントの関係を用いて
データのやり取りとりを行いデータの読み出しや書き込みをしていますよね?
ではGAMEではどのようにしてセーブをおこなったりしているのですか?
ゲームボーイやファミコンの本体にサーバとクライアントの機能が
備わっているとは思えないのですが…。
どのような仕組みで保存(セーブ)をしているのでしょか?
0188名前は開発中のものです。
03/01/31 11:37ID:6ynLwhZoGAMEって例えば?
0189名前は開発中のものです。
03/01/31 11:40ID:4bR+Vd+qドラクエでもなんでもデータセーブ機能がついているゲーム。
サーバ&クライアントの関係を使わないとしたら
どのようにして保存をするのですか?
どのような言語で書かれたプログラムを使うのかとかおしえてください。
あとできればその理論が知りたいです。
0190名前は開発中のものです。
03/01/31 11:40ID:H1fkys7Oマルチうぜぇ
消えろ
0191名前は開発中のものです。
03/01/31 11:41ID:NYWMKE8k0192名前は開発中のものです。
03/01/31 11:45ID:4bR+Vd+qこの時間では書込みが少ないと思いマルチにしてしまいました。
おしえてください。。。
0193名前は開発中のものです。
03/01/31 11:50ID:Oks/Mlfbそのような abuse 行為は善意に支えられたネットワークにとって
最大の敵であることを知りなさい。
恥知らず。
0194名前は開発中のものです。
03/01/31 11:57ID:yMAewiuoそれも一度や二度ではなく。URLなんか覚えてないけどね。
ただし、質問者がマルチポストした先の答えをまとめて、
全ての回答者にこれこれこーなりました、ありがとーと言って回るならばっておまけ付き。
0195名前は開発中のものです。
03/01/31 12:07ID:Q0GDcsquなんでサーバ・クライアントの話が出てくるのか分からないんだけども
0196名前は開発中のものです。
03/01/31 12:46ID:yMAewiuoんっとさー、おーざっぱに答えるから嘘ついてるかもだよ。
コンピューターっていうのは CPU と メモリ とそれらをつなぐバスっていうのが最低限の要素なんだよね。
ファミコンっていうのは、メモリをつけてないコンピュータを売りつけて、
遊ぶためにはメモリ(ROMカセット)を買ってくださいって仕組みだったんだよ。
で、ROMカセットの中に RAM も入れて、電池で連続起動しておけばセーブシステムのいっちょあがり。
0197名前は開発中のものです。
03/01/31 13:30ID:nYsHWhwS0198あぼーん
NGNG0199名前は開発中のものです。
03/01/31 19:18ID:qsXaXa9vGame Programming Gems以外に何か参考になる図書はありませんでしょうか?
よろしくお願いします。
0200416 ◆quHoSW/FCI
03/01/31 19:49ID:2OuKlzSK認識がヘン。
CGIやネットゲームのようなサーバ&クライアントの関係がある環境でも、
それは単に、サーバ側にデータを保存させているか、クライアント側に保存させて
いるかの設定の違いに過ぎない(CGIやとクラ側保存は・・・クッキーがあるか)。
データ保存が可能な環境と、保存命令があれば可能。サーバ&クライアントの
関係はぜんぜん関係無い。
0201名前は開発中のものです。
03/01/31 21:13ID:2op7A3hN限定的な環境でちょこっとかじっただけなんでしょ。
一生懸命説明しても無駄だと思う。
0202名前は開発中のものです。
03/01/31 22:13ID:2ZzIvraxずっとその例示を引きずるのは頭悪いな
0203名前は開発中のものです。
03/01/31 23:02ID:vCqXldk60204名前は開発中のものです。
03/01/31 23:36ID:qsXaXa9vインベーダーゲームみたいな2Dの簡単なソフトです。主にシューティングを中心に作りたいです。
0205名前は開発中のものです。
03/01/31 23:51ID:B3NC8eT4ゲームプログラミング遊びのレシピ―アルゴリズムとデータ構造
http://www.cmagazine.jp/books/recipe/
http://www.amazon.co.jp/exec/obidos/ASIN/4797316535/ref=pd_bxgy_text_1/t/249-7245941-5470719
は、どーでしょうか。
本屋さんでよく見かけるので、立ち読みしやすいと思う。
C++Builder&Delphiなのでそのままでは使いにくいけど、
日本語での解説部分はアルゴリズムの参考にはなるかと。
0206名前は開発中のものです。
03/02/01 00:33ID:JG1cEAZ6ありがとうございます。参考になりました。
0207あぼーん
NGNG0208名前は開発中のものです。
03/02/02 16:57ID:6i0/vwvmまずどのようなものを勉強すればいいのでしょうか。
キーワードとかってあります?
0209名前は開発中のものです。
03/02/02 17:02ID:9DYxK8loどうもイメージ沸かない・・・
0210名前は開発中のものです。
03/02/02 17:05ID:fhT0wplm階層構造,ローカル座標系
IK,FK
ここまでは3Dでもいっしょ
2Dなら画像の回転も必要かな
0211名前は開発中のものです。
03/02/02 17:11ID:zcwy9VYW手足にそれぞれ黒い棒がついてて、関節がおかしな方向に平気で曲がる紙人形。
0212名前は開発中のものです。
03/02/02 17:12ID:zcwy9VYW「多関節キャラによる格闘ゲームを作るスレ」その2
http://pc2.2ch.net/test/read.cgi/gamedev/1015771528/l50
0213名前は開発中のものです。
03/02/02 19:02ID:DGXzuX3G0214名前は開発中のものです。
03/02/02 19:32ID:t6/9t4TG0215名前は開発中のものです。
03/02/02 19:59ID:DGXzuX3G0216名前は開発中のものです。
03/02/02 23:29ID:ngVInDbvFK(フォワードキネマティクス)の方が簡単だから
IKよりFKをやってみては?
0217名前は開発中のものです。
03/02/03 07:46ID:JqqWIodKB宗(v += a)な私には、フレーム処理を 5ms 毎に実行して、それを V-Sync で描画するぐらいしか想像がつかないんだけどー。
0218名前は開発中のものです。
03/02/03 08:53ID:0/huq5OJリフレッシュレートに関する論争
http://matsuzak.pobox.ne.jp/directx/faq/refresh-rate.html
0219あぼーん
NGNG0220名前は開発中のものです。
03/02/06 00:54ID:2WnqR6mARPGの主人公がマップ上を歩くときに、手足が動いたりするのですが、
タイマーをかけて、stateを1,2,3,4,1,2,...って変えていって、
stateの値ごとに描画を変えるのがいいですか?
それだと、アニメーションが複雑になると、プログラムも汚くなるのですが、
もっと見やすくていい方法ってないですか?
0221名前は開発中のものです。
03/02/06 01:11ID:yacnI+6dアニメーションデータを表すデータ構造を作れ。
そしてそれを解釈して描画するプログラムを作れ。
これなら、アニメーションが複雑になってもプログラムに影響は無いぞ。
さらに、アニメーションデータを編集するツールを作るともっといい。
0222あぼーん
NGNG0223名前は開発中のものです。
03/02/07 00:53ID:WYEzYilN>もっと見やすくていい方法ってないですか?
きちっとした設計できれいにコーディングをする
いやマジです
関数とか構造体とかクラスってわかります?
0224名前は開発中のものです。
03/02/08 23:35ID:B2NmrZjg状態遷移のクラスを作って、定期的にそいつから
アニメーションパターンの数字を取得するようにする。
描画するときは、その数値に対応した絵を表示させるだけ。
0225名前は開発中のものです。
03/02/08 23:49ID:He/KRUT1すいません。想像しづらいのですが、
クラスのインターフェースを書いてもらえますか?
0226名前は開発中のものです。
03/02/09 00:43ID:EKddfl4f甘えるなゴルァ
「有限状態オートマトン」で検索するか、
"Game Programming Gems 1" の 「3.1 有限状態マシンクラス」を読んでくれ。
(全然難しい内容ではないが、まあ、一応)
0227名前は開発中のものです。
03/02/09 00:45ID:yUWb7xod0228名前は開発中のものです。
03/02/09 01:09ID:gYbNlh+mttp://210.143.102.80/upload/source/d/0685.txt
0229あぼーん
NGNG0230名前は開発中のものです。
03/02/10 16:24ID:FAmepXpSフレームを飛ばさないのに、処理落ちするって、どういうことですか?
処理は落ちてないんじゃないですか?
0231ぽぷり
03/02/10 16:27ID:6VC5i/Ltあと2箇所に書き込んだマルチだが良かったら質問よろしく頼みます
いまFF4のパクリ作ってるんだけど戦闘の曲を.wmaで作った。
で、これをループでエンドレスで流すわけだが
そのまま初めのフレーズ(ダダダダ、ダダダダ・・・・)に戻ってしまう。
この曲は1分54秒まであるんだが
俺としては0:00から1:54まで流した後
ループは0:00からではなく00:53あたりからにしたい。
どうしたらいいかな?誰か賢い奴教えてくれ。
流れとしては・・・・
戦闘開始(音楽スタート)
0:00→1:54→0:53→1:54→0:53→・・・・・戦闘終了(音楽終了)
っていう感じにしたいです
0232デフォルトの名無しさん
03/02/10 16:28ID:sFeXOrcIキャラクターの移動などがズルッズルッと遅くなる。
これが処理落ちしているという状態。
時間内に処理が終わらないのを「落ち」といっているのでしょう。
この場合処理はとばしていません。
パソコンでよく見られるのが、処理が重いときに処理をスキップする
やつです。画面の更新がなめらかでなくなってカクカクして見えます。
0233あぼーん
NGNG0234あぼーん
NGNG0235名前は開発中のものです。
03/02/10 17:15ID:xlyrLNILDirectShowでも、DirectSoundでも、MCFでも、プログラム上で制御は可能だが…。
0236名前は開発中のものです。
03/02/10 17:25ID:VY6anJSfマルチウゼー
http://pc2.2ch.net/test/read.cgi/gamedev/1028183728/60
http://pc2.2ch.net/test/read.cgi/gamedev/1035601681/922
0237ぽぷり
03/02/10 20:03ID:6VC5i/LtHSPでは無理かな?
プログラム上の制御って、どんな項目で検索したらいいでしょうか?
0238名前は開発中のものです。
03/02/10 21:04ID:pyEAMejp処理落ちとコマ落ちについても >>218 のリンク先に
書いてるから読んでみ。
0239名前は開発中のものです。
03/02/10 22:04ID:n899aQqE>>235が十分なくらいキーワードだしてるよ。
MCI(MCFは間違いだよな?)、DirectSound、DirectShow
HSPはよく知らないが、
MCIはWindowsAPI、DirectSound、DirectShowはCOMが扱えれば大丈夫。
HSPがそれらを扱うのが難しい言語ならば、
他の人が作ったライブラリを使う手もある。
# HSPといえどもDLLぐらい使えるだろ?
0240名前は開発中のものです。
03/02/10 22:09ID:n899aQqEこんな方法もあるようだ。
http://www.google.co.jp/search?hl=ja&inlang=ja&ie=Shift_JIS&q=HSP+DirectShow+%83%8B%81%5B%83v%95%94%8D%C4%90%B6&lr=
0241名前は開発中のものです。
03/02/10 23:15ID:+EgLsXBkマジで氏んでくれ。
0242235
03/02/11 00:32ID:OEwInXkJ何やってんだ、俺。
0243名前は開発中のものです。
03/03/02 11:58ID:1UsFLoT70244名前は開発中のものです。
03/03/04 22:15ID:QU9Qm2YP雰囲気としては一度敵機の近くでゆっくり動き、目標に向かって
早い曲線を描こうと思っています。おそらくゆっくり部分と狙撃部分の
2つのルーチンを使用するかとおもいますが、問題が2つほどありまして、
1)曲線が目標位置によってイビツになる。
2)レーザー表現を座標引き渡しで20個ほど丸オブジェクトを使用
したので、処理が遅い。
何か良い方法はないのでしょうか?
0245名前は開発中のものです。
03/03/08 01:35ID:AeESF41/座標を四十五度回転させてから上下半分に潰して表示している為に、見た目上上下の移動が遅く、左右の移動が早く見えてしまいます。
こういう場合、みなさんどうしていますか?
0246デフォルトの名無しさん
03/03/08 01:52ID:omw6bur7遅レスだけど。
1)
float f = atan2(目標とのyの差, 目標とのxの差) - (現在の進行方向);
while (f<-3.14) f += 3.14*2;
while (f>3.14) f -= 3.14*2;
(新たな進行方向) = (現在の進行方向) + f*(曲がり具合0.0〜1.0);
とかやってみる。符号とか間違ってるかも。
よく状況がわからないけど、変化量が急に変わらないようにすればいいんじゃないかな。
2)
直線で繋ぐとか。
0247名前は開発中のものです。
03/03/08 01:58ID:Qzt+JfAG画像にかけた、縮尺を移動量にもかける。
上下が左右の50%なんだろ?
じゃあ、移動量も50%でいいじゃん。
つーか、それ
クォータービュー風表示で、内部がトップビューって言うか?
一瞬意味が分らなかった。
0248あぼーん
NGNG0249245
03/03/08 03:30ID:AeESF41/お返事有り難う御座います。
内部でのベクトルも表示時には四十五度回転しているため、
それではうまくいかないのです……。
(内部的に下にすすめが表示上は左下に、右に進めば右下に進んでいるように見えます)
内部のマスは正方形ですが、表示時は菱形なので移動量がおかしくみえるということなのですが……。
0250名前は開発中のものです。
03/03/08 04:03ID:Qzt+JfAGその処理だと、クォータービューって言わないじゃん。
つまり、クォータービューって斜め見下ろし型でしょ?
君の言ってる移動処理は、トップビューでただ45度回転してるだけだよ。
それでは、描画と移動処理が噛合う訳が無いよ。
普通は、トップビューと同じ処理で、横長の菱形MAPchipやなんかを
用意してキャラをMAPchipより手前にずらして立たせて
完全2D処理で、擬似クォータービュー見たくするもんだが…
ベクトルとか言ってるなら、それは3D処理が必要。
つまり、菱形を潰して描画してるだけなのだろうが
それって普通に見た場合(3D視点)、奥行きがあって
斜めに見下ろしてるから左右は広く、手前と奥で縮まる訳だ。
君の言ってる事を解析すると、移動処理は2次元ベクトルを平面で45度回転しただけ。
MAPchip描画は上下に潰しただけ。しかし、そのMAPchipは見た目には奥行きがあって斜めに見た様に見える。
その噛み合わせが不自然って訳だ。当然かな。
解決策として、大道は移動ベクトルと描画用MAPchipに同じ3D処理をする。
もう一つは、その処理を止めて違う処理に変える。
そんな感じじゃない?
0251あぼーん
NGNG0252名前は開発中のものです。
03/03/08 04:10ID:tiy6mV84すると、君のプログラムでは、正方形が出来上がるわけだ。
ところが現実には円になることが期待される。
君のプログラムは、内部的には「円を正方形で近似している」んですよ。
そのまま表示すれば、移動方向によって速度に変化が生じるのは当たり前。
対策は、内部のプログラムを書き直して円を円として扱うようにするか、
あるいは円を八角形で近似するように書き直すか、
グラフィックを表示するときに縮尺を変えて正方形を円に近くなるようにごまかすか、
そんなものしか考えようがないでしょう。
0253252
03/03/08 04:12ID:tiy6mV84無視してください。
0254名前は開発中のものです。
03/03/08 04:32ID:Qzt+JfAG君の描画処理って45度回転して上下に潰すっていてるよね?
その言ってる正方形ってのがMAPなんだろうが、
移動ベクトルにも同じ処理してないじゃん。
上下に潰すって事は、Y軸方向にスケールをかけてる訳だ。
そのY軸方向のスケールを、移動ベクトルにもかけてるか?
つまり、移動ベクトルはX成分はそのままで
Y成分が縮まる(上下に潰れる)ってやれば整合性が取れるじゃん。
…そうじゃ無いってなら言ってる意味がもう分らないよ…
0255名前は開発中のものです。
03/03/08 06:00ID:MKbGXKwx0256245
03/03/08 09:51ID:AeESF41/真面目にレスいただき、ありがとうございます。
意味がわからない面も多々あり、申し訳ありません。
画像は用意したいと思うのですが、よかったらどうかお待ちください。
マップ自体は見た目上だけクォータービューで、
(画像は潰しておらず、べた表示です)
キャラクタの表示する座標だけを描画時にマップの端を軸に45度回転させて、
上下に半分潰すことでクォータービュー風(移動)にみせています。
要するに内部的に上に進めば
表示座標上は(45度/2の傾斜がついた)左上に進んでいることになるわけで、
内部のY軸方向のスケールと、
描画時のY軸方向のスケールは45度/2ずれているわけです。
なので内部的にY軸だけに補正をかけると、
描画時にはX成分にも影響を与える訳です。
勿論、内部的には円を近似した移動値で書かれているのですが、
その、円の移動値(−X-Y)〜(+X+Y)のスケールだけが
描画時には半分に潰されてしまっているわけなのです。
よって、内部的には正円ではなく、楕円に進む必要があるのか、と考えています。
すこし妙な感じがするのですが。
0257245
03/03/08 10:29ID:AeESF41/http://www.geocities.co.jp/SiliconValley-PaloAlto/7551/topview.jpg
な感じです。
マップの描画などは全く視野に入れません。
0258名前は開発中のものです。
03/03/08 11:16ID:tiy6mV84そりゃああた、パースを考慮に入れてないからっす。
普通の二次元画像を斜めにして単純に潰すと、絵としておかしくなる。
だから、その絵としておかしいMAPの上で正しくキャラを動かしても絵としてはおかしくなる。
この世には遠近法というものがあって、遠くのものは小さく、近くのものは大きく見えるのが世界の常識です。
実際には遠近法を考慮しなくてもそれなりに綺麗に見えるものなのですが、
奥行きが深い場合はちょっと不自然に見えます。
0259名前は開発中のものです。
03/03/08 11:18ID:Qzt+JfAGやっぱり247と254で言ってる通りじゃんよ。
で、君の言ってる事が意味が通って無い。
まず、最後に潰そうが何しても、移動量ベクトルの”大きさ”は
四方向で”同じ”だ。差なんて無いじゃん。
つまりベクトルで言うと
上(0, 1)
右(1, 0)
下(0, -1)
左(-1, 0)
が、45度回転して(-PI/4)
上(-0.7071, 0.7071)
右(0.7071, 0.7071)
下(0.7071, -0.7071)
左(-0.7071, -0.7071)
で最後にYにスケール(Y:1/2)をかけるても
上(-0.7071, 0.3535)
右(0.7071, 0.3535)
下(0.7071, -0.3535)
左(-0.7071, -0.3535)
って四方向は、”方向”が違うだけで”大きさ”は同じだが?
…ベクトルって言い出したのは、君の方なので
ベクトル自体は扱えるよな?
0260名前は開発中のものです。
03/03/08 11:24ID:HkNGp/2b>>245
>見た目上上下の移動が遅く、左右の移動が早く見えてしまいます
上下と左右の見た目スケールが違うんだから、
そう見えてしかるべきなんでは?
見た目で同じスピードにすると、
実マップ上での移動速度がヘンになる(軸により偏りがでる)けど
それでいいのかな。
0261デフォルトの名無しさん
03/03/08 11:38ID:omw6bur7内部の座標から見て、「上下左右」と「斜め」の移動に差がある。
…あってるのかわからんけど。
それなら、内部座標から見た「斜め」方向への移動を減らせばいい。
なんか、気持ち悪いけど。
リロードしたら>>260と同じだった…
さらに読み返すと、楕円に進む と同じようなこと言ってる気もする。
0262245
03/03/08 11:54ID:9W7WzJNL>>255
パースは一応理解しているのですが、
2Dとして不自然でないように取り入れるにはどうしたらいいのかと思いまして。
>>256様
そうですね、内部的なベクトルの大きさは同じです。
でも、見た目上の(プレイしている側からしてみれば)違っているように見えてしまいますよね。
これを正したいと思ったのです。
>>260、>>261
そうですね、中身が移動量が異なると気持ち悪いと思います。
そして、見た目上も正しいと思うのですが
クォータビューなゲームで
上下と左右の移動量が違う(ように見える)と何だか変な感じを受けたりしませんか?
これをうまく解決したい、と思ったのですが……。
うまく言えなくてもうしわけないです。
0263名前は開発中のものです。
03/03/08 13:03ID:HkNGp/2bヘンには感じないと思う。そう印象付けるような画面構成にするといい。
車の後ろから見るレースゲームで、等間隔にオブジェクトを配置したり
等間隔に地面に模様をつけるのは、走ってるという感覚を引き出すための
基本テクニックだったりする。のっぺりしてると速度感が沸かないのよ。
クオータービューについてもそういう工夫があっていいんじゃないかなあ。
0264あぼーん
NGNG0265416 ◆quHoSW/FCI
03/03/08 16:20ID:s3TXU6Pqもしかして、トップビューで言うところの斜め移動をさせてない? トップの
上下左右はクォーターでは斜め45度だが、トップでの斜めはクォーターでは
真横とかになるよね。
移動がマス方式のクォータービューでは斜め移動はそう見える。A列車3、4で
列車が真横に移動するのと、斜めではえらく差があるように。
0266あぼーん
NGNG0267あぼーん
NGNG0268名前は開発中のものです。
03/03/13 14:53ID:x1k2yze2描画周りは一通り出来たのですが、ここで疑問が・・・
キャラが動いたときの描画なのですが、
既に配置済みの背景の中を、ビュー行列を変えて移動させるのと
ビュー行列据え置きで、キャラ周りの背景を移動するたびに配置換えする
一般にどちらが良いのでしょうか?
前者の方が簡単そうにみえ、今はそちらなのですが、
MatrixのFLOATで補えないくらい広いマップとかは、どうなるのかなどと考え出したら・・・。
お馬鹿な質問ですが、よろしければマジレスいただけると嬉しいです。
0269あぼーん
NGNG0270名前は開発中のものです。
03/03/13 22:12ID:M64nHos+Ys3って横から見たような画面構成だっけ?
PC88やPC98はマップチップを組み合わせて画面を構成してたと思うけど、
(つまり後者)それほど難しくないよ。
0271名前は開発中のものです。
03/03/14 00:05ID:1VLZD/pCレスありがとうございます。やはり後者でしたか_| ̄|○
PC88やPC98ではと言うことですが、今はあまりこういう手法は用いないのでしょうか?
しかし、やはり効率的な描画方法っていうのは、今も昔も変わらなそうですね。
画面は仰るとおり、横から見たようなのです。
私はこれとリンクの冒険が大好きで・・・。どっちも一般にはアレですが・・・。
0272名前は開発中のものです。
03/03/14 00:06ID:1VLZD/pCスクリプト荒らし来ちゃうかな・・・。
0273名前は開発中のものです。
03/03/14 01:24ID:41+v9X+WGBとかのBG面があるゲーム機は今でもそんな感じ。
背景がモデルならば仕様次第な気もするけど、似たような事をやらなくも無い。
0274あぼーん
NGNG0275名前は開発中のものです。
03/03/14 03:08ID:MgAhF4Kvによると、PS3はプロセッサ72個を使用するらしい。
PS2のcoreとVU0,VU1の三つでも、効率の良い並列プログラムは
難しいのに、72個ものプロセッサを使いこなせるプログラマは
果たして存在するのか?
0276名無し募集中。。。
03/03/14 05:14ID:fXoEalJMもう一つで効果音などのサウンドを担当。
残りはすべてポリゴンの座標計算
0277あぼーん
NGNG0278あぼーん
NGNG0279名前は開発中のものです。
03/03/15 03:20ID:i28WpAET0280名前は開発中のものです。
03/03/15 11:30ID:dtuvcX+vbool func( Vector p1, Vector p2, Vector p3, Vector l1, Vector l2);
こんなかたちで、p1,p2,p3がポリゴンの頂点、l1,l2が直線の両端座標です。
Vectorは構造体かクラスで、x,y,zの座標を持っています。
交差してたらtrue、してなかったらfalseを返すというものです。
お願いします。
0281名前は開発中のものです。
03/03/15 12:13ID:CBUe4G93プロセッサ間の同期処理だけでほとんどのCPU時間が消費されそうな予感
並行処理できるならハナっからそういう単位で仕事をする
高速なプロセッサに分けてくれたほうがマシと思う
>>280
アルゴリズムを書いてくれたら、関数を書くよ。
できるだけ詳しく頼む。
0282名前は開発中のものです。
03/03/15 12:39ID:FEgToVwJどうすればいいですか?
カメラを移動させて試行錯誤しておおまかには合ってきたのですが
どうしても左上が(0,0)、右下が(639,479)にビシっとあってくれません
0283ひよこ名無しさん
03/03/15 12:41ID:5k0LvKxN(,,゚Д゚)http://www.geocities.co.jp/HeartLand-Yurinoki/3749/dustbox.html
0284名前は開発中のものです。
03/03/15 13:17ID:dtuvcX+vはじめから2dスプライト使えばいいのでは・・・
DirectXでテクスチャ貼って使うなら
柔軟な頂点定義でトランスフォーム済み頂点を持つの定義して
ポリゴン2つ作って貼ればいいのでは?
0285名前は開発中のものです。
03/03/15 14:42ID:P8D5lOXq昔Cマガでそれを実現する記事があった。
http://www.cmagazine.jp/contents/200110.html
俺はこれを参考にしたよ。
0286名前は開発中のものです。
03/03/15 18:02ID:FEgToVwJ>>285
ありがとうございますっ!!
2Dスプライトを3Dオブジェクトに置き換えたかったんです
説明不足スマソ
Cマガジン持ってたので解決できそうです
やりたいことがほぼそのまま載ってました
ありがとうございました
0287名前は開発中のものです。
03/03/15 18:02ID:G8v9XCRO/⌒~~~⌒\ ( ,,) (,,・Д・)
/ ( ゚>t≡ )y─┛~~ 〜(___ノ 〜(___ノ ,γ_
(_ ノγ U ∩_∩) THANK YOU 2ch ┌───────┐ \
α___J _J and (| ● ● | ヽ
/ ̄ ̄ ̄ ̄\ GOOD-BYE 2ch WORLD! /.| .┌▽▽▽▽┐ .|____|__||_| ))
/ ● ●、 ( ┤ .| | .|□━□ )
|Y Y \ またどこかで会おうね \. .└△△△△┘ .| J |)
|.| | .▼ | | \あ\ | ∀ ノ
| \/ _人|∧∧∩゛冫、 .∧_∧ | \り.\ . | - ′
| _/)/)/( ゚Д゚)/ ` . (´∀` )..ヽ(´ー`)ノ \が\ . | )
\ / 〔/\〕 U / ∩∩ ( ) (___) \と.\ .|/
| | | c(*・_・) | |ヽ(´ー`)ノ_| | | | |〜 /\.\う\| (-_-)
(__)_) UUUU /∪∪ (___)(_(__) ◎ ̄ ̄◎─┘ .└──┘.(∩∩)
0288名前は開発中のものです。
03/03/15 18:37ID:dtuvcX+v0289あぼーん
NGNG0290名前は開発中のものです。
03/03/16 08:39ID:fbjaAIcC0291名前は開発中のものです。
03/03/16 09:24ID:zCeAM5Bbオレも全く同じ事思ったが、
スクリプト荒らしを擁護してるように思えたから、書き込みは控えてたよ( ´∀`)
0292名前は開発中のものです。
03/03/16 10:04ID:SkJQDRqnブレードの衝突判定がうまくできません。
普通に判定すると連続ヒットになるので
当たったキャラに無敵時間をつくったらショットがすり抜けてしまいました。
ブレード判定外へ敵をヒットバックさせれば解消できるんですが
それだとブレードコンボ(連続技)が表現できない…
仕方ないので最初に戻ってブレード攻撃力を低く設定し直したら
当たり方によってダメージがばらつく。
そして無限ループ…
漏れ…アフォでつか(´・ω・`)
0293名前は開発中のものです。
03/03/16 10:21ID:rJlwcwidこれをブレード?への判定無効フラグにすればいいんじゃなかろうか。
0294名前は開発中のものです。
03/03/16 12:05ID:SUE/S+f7のNonameSTGを参考に
0295名前は開発中のものです。
03/03/16 16:18ID:FATlrtEb/DelphiヽADA\【ANUBIS格ゲーはいだラッシュ!】を作りませんか?
l:;:;:;:ハノヽ).ノリ));:;! 家ゲ板ANUBISスレでは優秀なドッター、プログラマーを
iヘ;:| ゚ -゚ノ/. ゚ -゚ノ;:;! 募集しています。ANUBISが好きで暇をもてあそんでる方、
( つ旦Olつ旦O;| 是非、http://game4.2ch.net/test/read.cgi/famicom/1047656046/
=o〜と_)_)レ'__)_)レ' までお越しください。お待ちしております。
0296名前は開発中のものです。
03/03/16 16:52ID:KY0wD066方法1)
D3DXSPRITEを使う。
方法2)
TLVertexを使う。D3DFVF_XYZRHWが含まれてる奴ね。
ヘルプに詳しく書いてあるから読んでみれ。
0297292
03/03/16 18:15ID:uI5iL2i7即レスありがとうゴザイマス(´Д`;)ヾ
STGしかつくった事がなかったので
ブレード→自機を追従するレーザー、多段&複数ヒット
ショット→当たると消える、多段ヒットしない
としか認識してませんですた。
つーか…漏れアフォケテーイ(;´Д`)
>294
ブレードゲーって意外に多いんでつね。
ともかくソース公開に感謝!
ゲームの方はナゼかパッドが使えなかったです…
リプレイのやり方も知りたかったので解読してみまつ。
0298あぼーん
NGNG0299名前は開発中のものです。
03/03/17 06:06ID:my0aeB3mブレードとショットで別々の無敵タイマーを持てば良いんじゃないの?
で、それぞれで無敵タイマーが無敵無効の状態の時のみ当たる事にして、
当たったら無敵タイマーセット。
0300名前は開発中のものです。
03/03/19 18:36ID:GS4b6rrW─╂\_) (__/╂─ ┏━━━━━━┓
┃ illlli ┃ ┃ _THE END. _ ┃
┃ (・∀・ )/ † ┃⊆三三三三⊇┃
─╂╂ 」⌒l ''' つ」⌒l ‡== ┃|l※※※※※l|┃
┌╂/ ̄ ̄ヽ / ̄ ̄ヽ †]| ┃|l※※※※※l|┃
│┃|(・∀・) |l| (・∀・)|┃ ┃|l※※※※※l|┃
、ヾ`゛""'ソ' 。ノ'> ┣╋ヽ__/''ヽ__/┻┓ ┃|l※※※※※l|┃
ミ ,__/ ゚ノ>。゚ ヾ`゛゛""' ━━━━┛
=,(#・∀・) // ヽ__ 彡 _。。。。。。
'(\__ /フ/∈,) 、ヾ`゛"'ソ' (・∀・#)ミ ) _/`'’
\_)</ ミ ,_/ (\∪",、/ミ)
/( ,__ン\ =,(#・∀・)○┳ `◆-' </
(_)ヽ_ノ (_) ノ'(9 __ ヘつ┃ /((,,,) ,つ\
〉~ yヘ∩┃ (_)ヽ、ノ (_)
/ ̄ ̄ ̄/ヽ /ヘ ̄ ̄ ̄ヽ /ヘ ̄ ̄ ̄ヽ
|____|_/ _/|_\_|____| \_|____|
/\/\/\/ \/\/\/\/\/\/\/\
シュウリョウー!! オワッタラカエレ!!!カコイイ!! コノスレハブジニシュウリョウシマシター!!!!ジ・エンド!!!!
\/\/\/\/\/\/\/\/\/\/\/\/
0301名前は開発中のものです。
03/03/24 12:16ID:mmzhvCyjなんて仕様が来たことがあったな(なぎはらうっぽい動作で)
その時は、当たった敵をリストに追加して判定してたけど。
0302名前は開発中のものです。
03/03/25 01:44ID:geV3sJ5n目標につくっているのですが
どうも自分のはあまり綺麗になりません。
どんな風にやってるのでしょう?
これです。
ttp://forgamedev.zombie.jp/uploader/up5/img/135.lzh
0303追記
03/03/25 01:53ID:geV3sJ5nアンチエイリアスがかったようにラインがとても綺麗な
ところをいってます。
0304名前は開発中のものです。
03/03/25 02:42ID:aCstEDxO0305あぼーん
NGNG0306名前は開発中のものです。
03/03/25 06:35ID:w7OmxNqv0307名前は開発中のものです。
03/03/25 12:21ID:to5h5iKv「らじおぞんで」というwindowsで動くフリーの2Dシューティングです。
0308名前は開発中のものです。
03/03/25 12:58ID:to5h5iKv0309
03/03/25 13:21ID:gZec8/NNAプレイヤーとBプレイヤーと背景で3等分しているんでしょうか?
それとも背景は若干小さくしているとか?
たとえば、SNKの格闘ゲームはどのような配分なんでしょうか?(ちょっと前の画廊とかサムスピとか)
僕が考えているのは320*320が2枚でAとBプレイヤーのキャラパターンを格納し、
残りの160*640に背景を置くという感じなんですが、キャラパターン用のスペースは出来るだけ多くとりたいし、
背景用はそれほどでもないので、。
0310あぼーん
NGNG0311名前は開発中のものです。
03/03/25 13:33ID:c6oq96BT本気でいってるの?
0312名前は開発中のものです。
03/03/25 13:35ID:/TrSZt8o. |(・∀・)|
. | ̄ ̄ ̄ ジサクジエン共和国
△
△l |
__△|_.田 |△_____
|__|__門_|__|_____|____
0313あぼーん
NGNG0314名前は開発中のものです。
03/03/25 17:18ID:LewSLoG30315名前は開発中のものです。
03/03/25 19:00ID:gw39IESj俺もワロタ
0316あぼーん
NGNG0317名前は開発中のものです。
03/03/25 22:14ID:OH59+Xxk今、ユーザーが入力したキー情報を分析して、コマンド技のコマンドとして解釈させる
部分を考えているのですが、やって見るとコマンドの解析というのは結構奥が深い事
が分かってきました。
あれこれ考えてるうちにこんがらがってきたので、この辺のことをまとめてあるページ
とか無いでしょうか。コマンド入力なんて昔からありますし、何か定石があるんじゃない
かと思っているのですが・・・
0318名前は開発中のものです。
03/03/25 22:27ID:z0a9/rP0http://pc2.2ch.net/test/read.cgi/gamedev/1035601681/439
0319名前は開発中のものです。
03/03/25 22:45ID:OH59+Xxkレスどうもです。
もうちょっと詳しく書いてある奴無いでしょうか。これくらいなら思いつくんですけど、
例えば
↓\→(PK)
みたいに、コマンド中に同時押しが有った場合とか、同時押し判定とコマンド判定を上手くやる
必要がありますよね・・
実は今、全部の技をコマンド技として扱うようにしようとしています。小パンチは、Pだけで出る
コマンド技、しゃがみキックは下レバー入れながらKで出るコマンド技、という扱いにしてしまお
うかと。
そうすると、単に連続して押されたデータを解釈するだけじゃなくて、「レバー入れながら」とか
を考える必要が出てきますよね
あと、Pで小パンチ、Kで小キック、PK同時押しで強攻撃だとします。
小パンチは出が早い技なので、Pを押した瞬間にパンチモーションに入ります。
ですが、同時押し判定許容時間内にKが押されたら、パンチモーションをキャンセルして
強攻撃に移る必要があったりしますよね。
こういう事を色々考えてるとウワーッワカンネエエってなってきてしまいます・・・
「マンド入力総まとめ」みたいな都合のいいページがあれば嬉しいのです!
0320あぼーん
NGNG0321名前は開発中のものです。
03/03/25 22:55ID:NWBR/7Ke個々のプログラマが実現したい現象を元に自分なりにプログラムを書いている状態。
私だったら、コマンドのデータ列をあらかじめ配列か何かの形で作って、
コマンドの進み具合を示すポインタをコマンドの種類ごとに一つ定め、
ポインタの次の動作に該当したらポインタを進めて、該当しなければポインタを初期位置に戻す、
という方法で実装するなぁ。
318が提案するような比較に比べると判定が少し早そうなんだよね。
0322名前は開発中のものです。
03/03/25 23:32ID:AfPryGzZで、配列二次元とかで二つつくって
単位時間
123456789十・・・
キー配列
↑→→→→→↓\→→・・・
ボタン配列
無無P無無無無無P無・・・
ってやったらどうでしょ
んで、技チェックはボタンが押された瞬間から。
なんとなくボタンとキー同時押しができそうな気がするんですが。
0323322
03/03/25 23:34ID:AfPryGzZP以外にも各ボタン用の配列が必要でした。
0324322
03/03/25 23:45ID:AfPryGzZ例・単位時間7秒のデータ
上位8ビット …↓ = 0100000 (ビット対応キー最上位が↑、以下↓←→\・・・)
次8ビット で…無 = 1000000 (ビット対応キー最上位(9ビット目が無、以下PK・・)
(ボタンの場合、同時押しになると01100000 とかで判断。無が立って無い&P&K&立ってない・・・)
こういう変換をすると
16ビットデータ配列
[0]10000000 10000000 もちろん出力は10進で可能。
[1]00010000 10000000
[2]00010000 01000000
[3]・・・・・ みたいなのが出来あがって・・・
・・・・・
各キャラの技表データもバイナリで定義しておけば。
同時押しもできる気がさらにします。
0325あぼーん
NGNG0326名前は開発中のものです。
03/03/26 09:03ID:NtlD3GhAレスどうもです!
>うーん、統一された手法とか、定石というのはまだ確立されていないんじゃないかな?
そうなんですか。。ストリートファイターの時代からある物ですから、何か一般的なやり方
があるのかと思ってたんですけど、そうでも無いんですね。
提示いただいた方法も、参考にさせていただきます、ありがとうございます。
>>322
なるほど、それぞれのキー動作を別々にキューイングするやり方ですか・・・なんか新しい
考え方ですね。
>>324
ははあ、なるほど、これなら確かに同時押しが定義できますね・・・
しかも少ないメモリで安上がり。いいですねえ、、、参考にさせていただきます。
0327名前は開発中のものです。
03/03/26 09:04ID:NtlD3GhAに、連続ボタン入力間の許容時間もセットで持っておくというのはどうでしょうか。つまり、
同時押しは、「非常に短い時間で入力する必要のある連続ボタン入力」と扱うわけです。
こんな風にテーブルを持っておきます
↓(10フレ)\(10フレ)→(10フレ)P(3フレ)K(10フレ)
PとKが逆に入力されるかもしれませんから、入れ替えたテーブルも持っておくのです
↓(10フレ)\(10フレ)→(10フレ)K(3フレ)P(10フレ)
また、通常のしゃがみパンチは許容時間を非常に長く設定しておいて
↓(0x7FFFFFFFフレ)P(10フレ)
こうすれば「下押しながらPでしゃがみパンチ」がコマンド技として定義できるんじゃない
ですかね!?
0328あぼーん
NGNG0329名前は開発中のものです
03/03/26 13:47ID:nm8sE5JYhttp://pc2.2ch.net/test/read.cgi/gamedev/1018670878/l50をみると
つらくなったデス。
0330名前は開発中のものです。
03/03/26 13:52ID:2PAV6tNS0331あぼーん
NGNG0332名前は開発中のものです。
03/03/27 23:07ID:ZxdJ8rEG0333名前は開発中のものです。
03/03/27 23:09ID:ZxdJ8rEGまあどっちにしろ、318ので十分できるわけだが。
# なにがわからないのだろう
0334名前は開発中のものです。
03/03/27 23:09ID:ZxdJ8rEG同時押しと似た入力のコマンド
0335名前は開発中のものです。
03/03/28 00:42ID:MVSWTKVq0336名前は開発中のものです。
03/03/28 02:58ID:q0sPFLKXコマンドの解釈だけならそれでいけるけど、一旦確定して発動しかかってる技を
キャンセルして別の技に移行するのがプログラム的に複雑。
例としては、↓\→+P(波動拳)と、↓\→+PK(EX波動拳)など。
安直な解決法としては、同時押し入力の猶予期間中はコマンドの確定を先送りするとかか。
0337あぼーん
NGNG0338名前は開発中のものです。
03/03/28 18:34ID:RcnMP0iX理解した。
321の方法だとキャンセル可能だな。
0339名前は開発中のものです。
03/03/28 19:59ID:eMBHUQuF> 安直な解決法としては、同時押し入力の猶予期間中はコマンドの確定を先送りするとかか。
これやってるのがKOFシリーズだったと思う。今もそうかはしらないけど。
全ての技に同時押し判定の猶予期間を設けてあるので
小パンチであっても、ボタンを押したと同時に出るわけではない。
この方法だと微妙にレスポンス悪く感じると思う。
カプコンゲーだと、同時押し確定前の技をキャンセルする形で出る。
例えば移動を伴う技と、同時押しの技を組み合わせると、
微妙に前に進んでから同時押し技が出ることになる。
スト3サードだとこれは戦略に組み込まれるくらい重要なテクニックらしいね。
0340あぼーん
NGNG0341ヒヨコ戦艦 ◆15H9tTXa7s
03/03/29 02:36ID:+0LzXIM5宇宙戦艦ヤマトの≪世界観≫で、無料オンライン・ゲームの製作を進行中
まだ仕様を練る段階なのですが、ヒマがあったら覗いて見て下さい
http://members.goo.ne.jp/home/yamato-r メールyamato-r@mail.goo.ne.jp
http://game3.2ch.net/test/read.cgi/netgame/1047469688/l50
【スルー対象事項】http://game3.2ch.net/test/read.cgi/netgame/1047469688/481
「Winny方式:相互サーバー化システムによるネットゲー製作に挑戦。ご意見募集中」
「プログラマへの報酬を捻出する手段(ソフト内に広告入れ等)について、ご意見募集中」
0342名前は開発中のものです。
03/03/29 02:43ID:Yw8R0hhL0343あぼーん
NGNG0344aaa
03/03/31 18:37ID:XAKZeAF50345あぼーん
NGNG0346名前は開発中のものです。
03/04/02 00:31ID:CmhZDGS+まあ、上のほうにも挙がっているが・・・
0347ヒヨコ戦艦 ◆15H9tTXa7s
03/04/02 07:12ID:v8Faio8o宇宙戦艦ヤマトの≪世界観≫で、無料オンライン・リアルタイムシミュレーションゲーム製作を進行
http://game3.2ch.net/test/read.cgi/netgame/1049216232/7-8n
まだ仕様を練る段階なのですが、ヒマがあったら覗いて見て下さい
公式サイトhttp://members.goo.ne.jp/home/yamato-r メールyamato-r@mail.goo.ne.jp
「Winny方式:相互サーバー化システムによるネットゲー製作に挑戦。ご意見募集中」
「無料ソフト プログラマへの報酬を捻出する手段(ソフト内に広告等)を、ご意見募集中」
パッチ(付加変更プログラム)を充てて様々な作品世界を反映させると、
商用ソフトでの販売が可能なほどの完成度を目指します。
「銀河戦国群雄伝ライ」「戦国自衛隊」「聖戦士ダンバイン」「装甲騎兵ボトムズ」「宇宙戦艦ヤマト」
「信長」「太平洋戦争」「第二次世界大戦ドイツ」「ガンダム」「スターウォーズ」「機甲創生モスピーダ」
「マクロス」「銀河英雄伝説」「戦闘メカ・ザブングル」「エルガイム」「太陽の牙ダグラム」
「ハーメルンのバイオリン弾き」「スタートレック」
これらの作品パッチも合うかも!(パッチは著作権者の許可を取り各自で自作して下さい)
0348名前は開発中のものです。
03/04/03 00:56ID:xKN2yNRL/⌒~~~⌒\ ( ,,) (,,・Д・)
/ ( ゚>t≡ )y─┛~~ 〜(___ノ 〜(___ノ ,γ_
(_ ノγ U ∩_∩) THANK YOU 2ch ┌───────┐ \
α___J _J and (| ● ● | ヽ
/ ̄ ̄ ̄ ̄\ GOOD-BYE 2ch WORLD! /.| .┌▽▽▽▽┐ .|____|__||_| ))
/ ● ●、 ( ┤ .| | .|□━□ )
|Y Y \ またどこかで会おうね \. .└△△△△┘ .| J |)
|.| | .▼ | | \あ\ | ∀ ノ
| \/ _人|∧∧∩゛冫、 .∧_∧ | \り.\ . | - ′
| _/)/)/( ゚Д゚)/ ` . (´∀` )..ヽ(´ー`)ノ \が\ . | )
\ / 〔/\〕 U / ∩∩ ( ) (___) \と.\ .|/
| | | c(*・_・) | |ヽ(´ー`)ノ_| | | | |〜 /\.\う\| (-_-)
(__)_) UUUU /∪∪ (___)(_(__) ◎ ̄ ̄◎─┘ .└──┘.(∩∩)
0349名前は開発中のものです。
03/04/22 12:07ID:1mJOFZGP0350名前は開発中のものです。
03/04/22 12:23ID:GMTONYN9/. ――┤. -=・=- -=・=- | | ∧ ∧{´ ◎ `}____( ´∀`)\ う \
./(. = ,= | ∧∧ ∧_∧ | | ( ´ー`) ):::/´∀` ;:::: \ヽ(`Д´)ノ゛\ ま\
|||\┏┓/∫ (=゚ω゚)ノ~ ( ´Д`)// \ < .∧|∧ /::::::::::| .¶_¶. \い\
V/ ∧,,∧ ∬ 〜( x) / / ,一-、(´ー`) /:::::|::::::| (ΦдΦ)/~ \棒\
|| ミ,,゚Д゚ノ,っ━~~ U U / /| / / ̄ l⊂ヽ \/|:::::::::|::::::| γ__ ∧w∧ 旦∬
人 ミ ,,, ~,,,ノ .n THANK YOU 2ch ■■-っ ┌───────┐ \ ( ゚Д゚ )∩゛
( ゚ー゚)と..ミ,,,/~),ヽ(凸)ノ~ and.. ´∀`/. | ● ● | ヽ ノ
/ ̄ ̄し'J\[Y] GOOD-BYE 2ch WORLD! /| .┌▽▽▽▽┐. |____|__||_| ))
/ ● ●、ヽ (. ┤ .| |. |□━□ ) (゚Д゚)?
|Y Y \ またどこかで会おうね.. \. └△△△△┘. | J |)∧_∧
|.| | .▼ |∀゚) |\あ\ | ∀ ノ " , 、 ミ
| \ /■\ _人 |∧∧∩゛∧_∧∩゛∧_∧ | \り.\ | - Å′ ゝ∀ く
| ( ´∀`)___/( ゚Д゚.)'/ ( ´∀` )/ (・∀・ ),. |. \が\. | ). \ Λ_Λ
\ ( O ) 冫、 U / ( / ⊂ ⊂.)ヽ(´ー`)ノ゛ \と.. ∧_∧/(´Д`;)<丶`∀´>
|││ │ ` | | ∪ | | ( ( ( ( へ (゚д゚)〜⌒(゚ー゚*) (-_-) (・ω・` )
(_(__(__)(・∀・) ∪~∪ (_(__) (_(_) く ⊂⌒~⊃。Д。)⊃⊃⊃(∩∩)(∩ ∩)
0351名前は開発中のものです。
03/04/22 13:16ID:AO5VRxm/というか、MMORPGはもろC/Sだと思うんだが…
0352名前は開発中のものです。
03/04/22 19:57ID:1mJOFZGP中央集権型+分散型。
無論、旧来のC/S型もあるんだが。
0353名前は開発中のものです。
03/04/22 21:49ID:AO5VRxm/いつの間にか俺の知らない世界に突入してたのかな。
最近のMMORPGはポートあけなきゃいけないのが普通?
0354名前は開発中のものです。
03/04/23 08:12ID:tjblka46少なくとも主なヤツにはない気がするが
0355名前は開発中のものです。
03/04/23 17:22ID:10QNqlCXマッチアップ機能を持ったMOの場合マッチアップ鯖とはC/S、ゲームはP2Pってことで
ハイブリッドともいえなくもない。
Diabro2(BattleNet接続)やPSOはチート防止用のアイテム管理機能みたいなのもあるから
単純なマッチアップよりは高度なことをしてますね。
もちろんDiablo2もPSOもMMOではなくてMOですが。
0356355
03/04/23 17:25ID:10QNqlCXボイスチャット(オプション)だけP2Pなので
ハイブリッドともいえなくもない...
0357名前は開発中のものです。
03/04/30 13:02ID:SNLFnav7プログラミングについて罵倒でもなんでも良いから意見くれ。
0358名前は開発中のものです。
03/05/06 00:29ID:H/yOgU6Rみたいな事言ってたのはどうなったんだろう。
凄く興味があったんだけど、
スレはDAT落ちしてるわ公式ページはただのヤマトオタページになってるわ・・・
0359名前は開発中のものです。
03/07/25 12:22ID:IYGrsOja0360さいたま
03/07/29 22:33ID:JsIf0Yyfいろいろなミニゲームを詰め込んだ、
たると・わーるどというゲームを完成させたぞ。
まあバグはそれなりにあるわけだが、
まずはゲームとしての形が出来上がったということで、俺的には満足。
んまあ、デバッグはしなきゃな。
せっせとバグフィックスも。
漏前らも頑張れ!
0361名前は開発中のものです。
03/07/30 01:15ID:sGoZhaBl0362名前は開発中のものです。
03/07/30 18:56ID:C9H8Oh+V抜いても抜いても また勃起しまくり・・・
↓ ↓ ↓
☆★☆★ 海外サイトだから安心無修正 ★☆★☆
http://upbbs.s2.x-beat.com/linkvp/linkvp.html
http://upbbs.s2.x-beat.com/linkvp/linkvp.html
☆★☆★ 本気汁丸出しのお○○こが! ★☆★☆
0363名前は開発中のものです。
03/07/30 19:37ID:O8k7wl+cいろいろな解説ページを見て思ったんですけど
一周を256,512,1024・・・などに分割するのは分かるんですけど
そのときに SinTbl[256 + 64]などのように
+90度分するのはなぜですか?
0364名前は開発中のものです。
03/07/30 20:04ID:ozJAZ4aW符号が反転するけど、Yが上向きの数学的な座標軸から、Yが下向きの
スクリーン座標軸への変換も同時に行っているのかもしれない。
0365名前は開発中のものです。
03/07/30 22:22ID:r1JwZyt00366名前は開発中のものです
03/08/02 14:14ID:cQ9XMcdqcosは、sinの90度ずれたものなのでそうしておけば、sin、cos両方で兼用できる。
これじゃ364と同じ説明だな、スマソ。
0367名前は開発中のものです。
03/08/02 20:00ID:iv+RaiJ0りさちゃんですっ☆みんな元気ぃ?夏だねっ!
あたしね、今アメリカにいるんだけど、、、えへっ(*>▽<*)
アナタに逢いたくて、こんなバイト始めちゃったヨ♪
りさに逢いに来てくれたら、7日間も会費無料サービスしちゃうし、
さらにさらに10分間も無料なんだよ! Σ(@o@)!!
アナタにだけの特別大っサービス♪絶対来てね!
二人っきりでたっくさん楽しいことしようよ♪まってるよ(^.^)/
☆ ☆ ☆ http://www.gals-cafe.com ☆ ☆ ☆
0368安全地帯
03/08/02 21:26ID:/+zTW8yh0369名前は開発中のものです。
03/08/04 13:23ID:ocrIoYN43DアクションのFPSでMOなものをいつか作りたいです
鯖を選んで、ログインして、森や町の中で索敵して
狙って撃つ。て感じのです
出来ればブラウザで開くだけで、専用クラをインストをせずに
OSに関係無く気軽に始められるものがいいです
3Dがそれなりに使えて、OSに依存しないで
鯖に接続あたりが充実してるプログラム。何を覚えるべきでしょう?
分かってる範囲で。Java(アプレット
)、少し遅い。機種依存がけっこうある。
3Dは出来ないことはないけど、大変らしい。
ShockWave、3Dゲム作ってる人多いので有力候補?
プラグインが入ってれば環境依存すくなそう
C++、ふつーのプログラミングなら有利だけど、
自分の目的では、OS別にクラをリリースしないとダメ
で、何がお勧めなんでしょうか?
0370名前は開発中のものです。
03/08/05 01:24ID:AVt1Ve06色々な意味で無理ですからあきらめなさい
0371名前は開発中のものです。
03/08/05 10:21ID:huJHSa+J0372名前は開発中のものです。
03/08/05 11:51ID:+8EsI2Mi0373名前は開発中のものです。
03/08/05 12:41ID:clXaP2EN0374名前は開発中のものです。
03/08/05 19:28ID:JQrb+f/v>出来ればブラウザで開くだけで、専用クラをインストをせずに
ここさえなければそれなりに現実的なので
トレードオフというやつを考えて
逆にそこを外せないなら
>3Dがそれなりに使えて(略)鯖に接続あたりが充実してる
というのが非現実的になってくる
それと3DゲームでOSに依存しないというのはほぼ無理
そもそも3D描画の手段が用意されて無いOSもあるわけで
自分でOpenGLドライバとか組めるほどの技術がなきゃ無理
更にWin/Linux互換までは簡単だが
Macintosh互換までいくとまた難しい
0375名前は開発中のものです。
03/08/06 17:35ID:MxFQ2kVeサンクスコ
おとなしくWinで作れってことですね
手近な山(丘)からゆっくり登っていきまつ
0376名前は開発中のものです。
03/08/06 22:58ID:O4yO5Rriブラウザって縛りがなければSDLでない?
win,linux,mac,beOS
3DはOpenGLに対応してる
非対応hardならsoft側で処理してくれるとか
net関係のライブラリもあるし
なによりタダ
0377名前は開発中のものです。
03/08/06 23:36ID:aF4kdC5r0378名前は開発中のものです。
03/08/09 00:32ID:HrZMFzRrお手軽なミニゲーム作るならJavaでアプレットってとこかな?
JavaってJDK1.4になってからとんでもなく画面更新が早くなって
2Dのゲーム動かすならJAVAで十分だとおもうんだけどどう思いますか?
0379名前は開発中のものです。
03/08/09 12:15ID:1QmqaJBeフリーのソフトはありますが解説が少ないので…
プログラムの学習用はVB.NETとVC++.NETのどちらが良いですか?
0380名前は開発中のものです。
03/08/09 12:24ID:B5VyROWZ言語はC。理由はこれを使ってないところはまずないから。
んなわけで学習用にはVC++.NET。
0381名前は開発中のものです。
03/08/09 12:47ID:1QmqaJBeありがとうございます、買う決心がつきました。
買って来ます。
0382_
03/08/09 13:13ID:S+GKUahg0383名前は開発中のものです。
03/08/09 19:55ID:sSIjT8eKVC#.NetでIPを使った1対1の簡単なチャットのようなものを作る場合、
どのような方法を使えばいいですか?
IPでの双方向リンクの仕方が全く分からなくて参考書も探したのですが、
あるのはWebアプリの作り方ばっかりで…どなたか教えて頂けませんか
あるいはそのことが乗っている本を紹介して頂けませんか?
0384名前は開発中のものです。
03/08/09 19:56ID:sSIjT8eKIPチャットが可能であれば1対1のネットゲームも作れるかもしれないと思いまして…
すいませんです
0385名前は開発中のものです。
03/08/09 20:44ID:44BF5mIM過去の現象見ても、事務機としての普及が第一だろうね。
はっきり言ってLinux/UNIXは汎用的な事務機としてはロクなもんじゃない。
基本的に計算機の玄人が使うようにできてるからな。
事務屋にゃ扱える代物じゃねーんだよ。
ただ、つけいる隙はあると思うね。
Linux/UNIXはUIの取り換えがきくから、専用機として作り込むのにはWindows
なんかより断然いいだろう。
そこらへんのじじばばが何気に街角で触ってる機械が実は誰も知らないけど
Linuxでしたなんて現象はこれからどんどん増えるだろうね。
事務機としてもマルチウィンドウが必要なところってのは実はあんまり無い。
その証拠にほとんどのWindowsユーザはアプリケーションを最大化して使って
るじゃない。
Xなんか使わなくてもDOS時代のUIを思い出せば充分使えるものになるだろうね。
むしろその方が混乱が無いだろう。アクティブウィンドウが切り替わっただけ
で「パソコン壊れたー!」ってパニック起こす連中を嫌と言うほど見て来た。
パソコンとしてもそれに適したUIが出て来れば使う人はいるだろうね。
そのへん頑張ってるのがKDEやGnomeだが、こっちはさほど利点が無いから難し
いな。
NECや富士通が気合い入れて自社UIを作って出しゃいいんだがな。KDEやGnome
ベースでもいいからさ。
0386名前は開発中のものです。
03/08/09 22:23ID:3r+YGxL4誤爆?
0387名前は開発中のものです。
03/08/13 10:49ID:BCiRQ/m1このあたり?
Microsoft.DirectX.DirectPlay
System.Net.Sockets.TcpClient
System.Net.Sockets.TcpListener
System.Net.Sockets.UdpClient
0388山崎 渉
03/08/15 08:02ID:IMRBSWHe│ ^ ^ │<これからも僕を応援して下さいね(^^)。
⊂| |つ
(_)(_) 山崎パン
0389名前は開発中のものです。
03/08/16 10:03ID:2rCICvIncos,sinは角度を使って作ればいいのはわかるんですが、
atanの添え字って一体何を基準に用意しているんでしょうか?
tanの逆関数なのでsin/cos(?)と思っても、
どんな範囲で値を用意すればいいのか。
ここを参考にしてるのですが、
ttp://www.sun-inet.or.jp/~yaneurao/intensive/tips2.html
肝心のテーブルが作れないのです。
0〜1までの範囲で自分の好きな少数で
<math.h>のatan()から求めて256段階に
スケーリングすればいいだけでしょうか?
頭が悪いのは重々承知しておりますので、
何卒ヒントを(;´Д`)
0390名前は開発中のものです。
03/08/16 10:06ID:2rCICvInすみません好きとか関係ないですね。
0〜1までの256段階の少数(float 0/255〜255/255)で、
という意味で受け取ってください。
0391名前は開発中のものです。
03/08/16 13:23ID:dCYb1D0yこの範囲ではθとtan(θ)はほぼ比例関係にあるから、単純な補間ですむ。
残りの角度についてはこのテーブルの参照方法を工夫するだけ。
0392名前は開発中のものです。
03/08/17 09:28ID:jm7zYaU+そうそれそれ!
そのネットソケットに関する、なにか参考書ないですか?
■ このスレッドは過去ログ倉庫に格納されています