ゲームプログラムなら俺に聞け24at TECH
ゲームプログラムなら俺に聞け24 - 暇つぶし2ch5:デフォルトの名無しさん
12/05/23 14:44:45.21
遠景は一枚絵にするけど海岸から水平線まで海が続いてるとき、近くのリアルな海面から一枚絵に切り替える境界はどうやって滑らかにすればいいんだろう

6:デフォルトの名無しさん
12/05/23 16:52:06.45
100キロくらい先なら境界もあまり気にならないだろ。
後は普通に色の問題。

7:デフォルトの名無しさん
12/05/23 18:47:17.68
>>5
クロスフェードじゃダメかな

8:デフォルトの名無しさん
12/05/23 22:09:45.74
100キロとか描画範囲にしたら激重じゃね

9:デフォルトの名無しさん
12/05/23 22:15:25.72
適当でいいだろ
どうせ敵とか出すんだろ?
みんな敵をひっぱたくのが忙しくてそこまで見ないって

10:デフォルトの名無しさん
12/05/23 22:32:39.25
>>9
そういうのが日本人ゲーム関係者の良いところでもあり、
同時に悪いところでもあるんだよな。

影の話も似たようなもので、適当でいい、
何故ならプレイ中そこまで見ない、と。

海外のゲーム関係者はそういう所をぬかるのをとても嫌う。
リアルな画ならリアルに見えるように境界を真面目に考えるし、
コミカルな画ならコミカルに見うるように境界を真面目に考える。
あっちはプレイヤー以外の視線「も」気にするから、適当でいいとは考えない。

だから、>>5 は本気で考えたいなら、
海外のゲーム製作関係の掲示板で訊いた方が良いよ。
俺も含めて、ここの連中には荷が重すぎる課題だ。
適当で、そこそこで良いならここが適切だけどね。

11:デフォルトの名無しさん
12/05/24 00:04:37.08
製品ならともかく、ここで聞いてる連中は趣味でやってるだろうから
そこまで頑張らなくて良いと思うぞ
つーか趣味でそこまで考えてたら時間がいくらあっても足りない

12:デフォルトの名無しさん
12/05/24 02:33:47.74
>>7,>>10
ありがとう

クロスフェードで検索しても音関係しか出てこないけど、なんとなく雰囲気は分かった。透過か合成でグラデーションかけてポリゴンから一枚絵になめらかに繋げる感じだよな。ちょっとやってみる

13:デフォルトの名無しさん
12/05/24 02:35:37.80
そうだね

14:デフォルトの名無しさん
12/05/24 04:29:22.01
Direct3Dのテクスチャロード関数とかって
ビデオメモリにロードしてんの?

15:デフォルトの名無しさん
12/05/24 07:14:13.89
どこに読み込むか指定できるようになっているだろ。
なんでヘルプに目を通すぐらいの最低レベルのことができなんだ?

16:デフォルトの名無しさん
12/05/24 15:53:09.76
オンボードVGAならメインメモリ
グラボさしてるならグラボのメモリ
だと思ってたけど。

17:デフォルトの名無しさん
12/05/24 16:30:07.73
知らんけど指定できないと思ってる

18:デフォルトの名無しさん
12/05/24 20:01:33.35
とりあえずできないに1票

19:デフォルトの名無しさん
12/05/24 20:54:11.52
ヘルプが読めないヤツはプログラムなんて組めないんだから、
そもそも気にする必要が無い。

20:デフォルトの名無しさん
12/05/25 00:11:43.73
そう思いたいならそう思ってていいんじゃね?

21:デフォルトの名無しさん
12/05/25 00:39:46.49
ヘルプ読んでるとストレス溜まるから読んだことないけど
データのロード先なんて選択できると思うぞ
PC上のデータ処理で不可能なことなんてないし

22:デフォルトの名無しさん
12/05/25 01:43:52.92
> PC上のデータ処理で不可能なことなんてないし
史上最強のハッカー発見

23:デフォルトの名無しさん
12/05/25 10:40:44.23
なんでアイちゃんがテンプレ入ってるの?

24:デフォルトの名無しさん
12/05/26 09:31:53.10
二つ聞きたいことがあります。プログラムは大学の授業ですこしやった程度です。

一つは、トラビアンというネトゲのTSUというのがあって、それは、ネトゲ上で
人口と、人口の伸びを、随時記録して一覧にして、ネット上で誰でも閲覧できる
ようにしたサイトです。

これをやるのは、人力では不可能なので、ソースからロボットを走らせて
表をつくったと思うのですが、こういうのを作るのはソースにロボットを
走らせるにはどうすればいいんでしょうか?

二つ目は、ネトゲにおいて、プログラムを直接みたり、あるいは、ネトゲの
値を変更するということはプロのハッカーなら可能なんでしょうか?

ハッカーはそうとうすごいことができそうなので、プロならネトゲのプログラム
をいじることくらいはできそうな気がするんですが、どうなんでしょうか?



25:デフォルトの名無しさん
12/05/26 10:39:31.31
そもそもロボットはいらない。

26:デフォルトの名無しさん
12/05/26 13:23:49.28
>>24
値の変更はネトゲにもよる
鯖で計算が行われているものに関してはほとんど無理

27:デフォルトの名無しさん
12/05/26 15:08:48.71
ここでゲーム作ってる奴らって最先端のゲームを作ろうとする割にはパイオニアにはなろうとしないよね。
ネトゲが最先端だからそれを作ろうとする割には
それより先のジャンルを開拓していこうとしないよね。
何で?

28:デフォルトの名無しさん
12/05/26 15:14:26.83
>>27
そういうの趣味じゃないから

29:デフォルトの名無しさん
12/05/26 15:28:07.92
>>27
やりたければ他人にとやかく言う前に自分でやればいい。
自分で出来ないのなら、胸に手を当てれば理由が分かるだろう。

30:デフォルトの名無しさん
12/05/26 15:31:43.37
ある程度形になって発表するならともかく、メシの種になりそうな事をタダでバラまいてなんの特になるの
ここはプログラム板だし、企画房はよそでやってくれって話になる

31:uy
12/05/26 23:59:13.25
>ここでゲーム作ってる奴ら

いや、作ってないち
このスレは所詮、同人ノウハウ板や、
ゲ製作板についていけない落ちこぼれの集まり
ム板にこういうスレ1個くらいあってもいいんじゃね?的な感じでスレおいてるだけで雑魚しかいないだろ

32:uy
12/05/26 23:59:32.47
>いや、作ってないち
何語wwwwww


作ってないだろ

33:デフォルトの名無しさん
12/05/27 03:16:47.79
>>32
作ってないっちゃって言いたかったんじゃないか?

34:デフォルトの名無しさん
12/05/27 09:56:37.65
ヒットエフェクトっぽいのが作れたぜ

URLリンク(www42.atwiki.jp)

35:uy
12/05/27 22:09:58.59
俺の中に15歳の女子中学生3年生、もうすぐ高校1年中学生最後の今春休み中みたいな人格もあるから時々おかしくなる

36:デフォルトの名無しさん
12/05/28 19:18:46.37
-----------まとめ----------
「馬鹿は死なねば治らないのであり、だからこそアナトール・フランスは
『愚かな者は、邪悪な者よりも忌まわしい』と言ったのだ。
 邪悪な者は休むときがあるが、愚かな者はけっして休まないからである。」
(ホセ・オルテガ・イ・ガセット 1883~1955)
>>247
>ゲームは作らんから知らんが、
224 == 247 == 704 == 717
口癖はコンポジション
>>772
>ゲーム作らなくてもお前よりマトモ
タスクの実行順序を意識しないとゲームが作れない(笑)
>>767
敵機 → プレイヤー の順序でタスクを実行するとタスクがぶっ壊れる
OOを得意げに語っているつもりが、やっている事が20年前のC言語だったという事実
バイナリの書き換えがわからない
コンパイラ言語のことをコンパイル言語とか言っちゃう
タイプミスの数々
スレリンク(tech板:190番)
スレリンク(tech板:297番)
スレリンク(tech板:837-839番)
スレリンク(tech板:318-320番)
スレリンク(tech板:332-334番)
スレリンク(tech板:818番)


37:デフォルトの名無しさん
12/05/29 10:26:35.59
2dRPGのマップについてなんだけどスクロール処理ってみんなどうやってんだ


38:デフォルトの名無しさん
12/05/29 11:09:54.31
カメラを動かせば普通にスクロールすると思うが、何が問題なんだ?

39:デフォルトの名無しさん
12/05/29 15:41:36.65
2Dゲームだとカメラの概念は無いんじゃ?
マップチップの位置を動かせばいいだけだけど。


40:デフォルトの名無しさん
12/05/29 16:47:05.33
「上」から平行投影で描画したほうが楽じゃね?
そういうのができない特殊な環境なら仕方ないけど。

41:デフォルトの名無しさん
12/05/29 19:41:32.45
>>39
今はマップチップでやる意味ないだろ


42:デフォルトの名無しさん
12/05/29 20:21:24.64
えっ?
一枚絵用意すんの?

43:デフォルトの名無しさん
12/05/30 07:57:25.64
そうだよ
ただし処理のために読み込むのは画面+αだけ

44:デフォルトの名無しさん
12/05/30 16:34:15.75
javaでシューティングゲームつくっていて
目標に向かって飛んでいくっていうメソッドをつくったんですけど
どうもうまくいきません。何がおかしいのかもよくわかりません。

目標Bに向かってAが進む

double speedX x座標の速さ
double speedY y座標の速さ
double unitSpeed ユニットの速さ
double theta aとbの角度
double targetX aとbのx座標の距離
double targetY aとbのy座標の距離

public void homing()
{
Point a = aの画像の中心;
Point b = bの画像の中心;
(targetX) = (double)(b.x - a.x);
(targetY) = (double)(b.y - a.y);
theta = Math.atan2(targetY,targetX);
speedX = Math.cos(theta) * unitSpeed;
speedY = Math.sin(theta) * unitSpeed;
}

わかりづらいかもしれませんが
アドバイスをいただけたら幸いです。

45:デフォルトの名無しさん
12/05/30 16:42:43.32
>>44
どこもおかしくありません。

> どうもうまくいきません。
うまくいかないとはどういうことか、うまくいくとはどういうことかを
うまく説明できれば何らかのヒントが得られるかもしれません。

46:デフォルトの名無しさん
12/05/31 12:35:41.75
>>45
Aが進む方向がBではなく別の方向に進み
ある地点まで到達したら、斜めに動くことがなくなり、
左右上下に動くことしかできなくなり
Bまでの動きとしては

A
___/
|
B

上のようになります。わかりますかね??汗
ちゃんとBに向かってまっすぐ動いてくれることもあるんですけど、
このように意味不明な動きをすることもあります

47:デフォルトの名無しさん
12/05/31 12:35:53.71
unitSpeed>=1なんだろ

48:デフォルトの名無しさん
12/05/31 12:54:10.80
>>44
> 何がおかしいのかもよくわかりません。

そういう時は、まず public void homing() の頭にブレークポイントを置いて、
そこを通る度に以下3つを丁寧に検証する。

・意図したデータが入力されているか
・意図した計算がなされているか
・意図したデータが出力されているか

終始意図通りの結果なら、homing 関数の問題ではないということだ。

49:uy
12/05/31 13:59:47.54
>>44
なんでjaverってこういうありえねーメンバ変数の使い方するんだよ死ねキチガイ

URLリンク(codepad.org)
def RadToDeg x
  x*180/Math::PI
end
def homing_angle x , y, x2, y2
  RadToDeg( Math.atan2( y2 - y , x2 - x ))
end
a = homing_angle x , y , 100 , 100
s = 3
x += (s * Math::cos(a * Math::PI/180 ))
y += (s * Math::sin(a * Math::PI/180 ))


50:デフォルトの名無しさん
12/05/31 14:10:11.69
>>46
考えられることとしては
1.AとBの間に見えない障害物がある
2.Aの位置に速度(speedX, speedY)を加算する式がバグってる
3.○の画像の中心、ってところがバグってる
4.b.x - a.x → 有効桁数が足りてないバグの可能性

51:デフォルトの名無しさん
12/05/31 19:44:08.11
>>46
atanとか使わなくても、普通に三平方の定理で計算できると思うんだが。

52:デフォルトの名無しさん
12/05/31 23:32:56.65
動きのおかしいときの各画像の位置とフレームごとの速度(x,y)はどうだったんだろう
最低そのくらいは調べてるだろうからそのデータもちゃんと載せて欲しい

53:uy
12/06/01 05:46:42.63

URLリンク(codepad.org)

つーかさあ
俺様もそれほど数学に詳しいわけじゃないけど
DegToRad とか RadToDeg のあるなしの差じゃねーの違うの?

54:デフォルトの名無しさん
12/06/01 06:47:59.83
x += (x2-x) / s
y += (y2-y) / s でいいじゃん



55:デフォルトの名無しさん
12/06/01 10:49:31.83
>>54
sって何?

56:デフォルトの名無しさん
12/06/01 12:41:44.36
>>54
たぶん、現在位置から目的位置へ近づく割合だろ(0.0 < s <= 1.0)
当然、フレーム間経過時間などを元に動的に決定されるものだと思うが

57:デフォルトの名無しさん
12/06/01 20:26:09.69
>>51 で FA だろ。
三平方の定理と相似で解ける。

    現在地
      / |
     / ̄|
   /   |
目標 ̄ ̄ ̄

斜辺の長さが速度になる相似三角形の底辺と高さを求めればよい。

dx = x2-x;
dy = y2-y;
d = sqrt( dx*dx+dy*dy ); //斜辺の長さ
x += dx/d*v; //vは速度
y += dy/d*v;

58:デフォルトの名無しさん
12/06/01 22:13:42.76
ミサイルのスプライトを目標の方に向ける必要があるんじゃ?
その場合は角度求めないと。


59:デフォルトの名無しさん
12/06/01 22:47:32.02
目標に向かって動かすだけなら
比率さえあればx,y方向の1フレごとの移動量は求まるけど
その際に図形の回転を伴うなら確かに角度の算出が要るね

60:デフォルトの名無しさん
12/06/02 01:53:31.87
とりあえず質問者のコードは間違ってないように見える
他の部分にバグあるんじゃね?

61:デフォルトの名無しさん
12/06/02 09:09:45.15
javaがradとdegの混在命令だからだろ

62:デフォルトの名無しさん
12/06/02 12:25:09.79
>>61
それだ!
つか俺も時々ハマるw


63:デフォルトの名無しさん
12/06/02 15:57:00.51
質問者のコードは一応radで統一されてて
それも問題ないように思う

64:デフォルトの名無しさん
12/06/02 17:52:49.74
classリファレンスちゃんと読め
以上

65:デフォルトの名無しさん
12/06/02 19:49:46.35

ネットワーク対戦ゲームの基本概念を教えてください。
たぶんこのような過程があると思うのですがよくわかりません。

①同じゲームを起動してる人を探す。
②データを交換する相手のアドレスを取得する。
③そこにパケットでまとめたものを贈りつける。

RPCってやつでやりとりするのでしょうか?相手のIPアドレスを取得してパケットを贈りつければいいのでしょうか?

66:デフォルトの名無しさん
12/06/02 21:07:07.52
必要なデータを必要なときに送受信すればいいだけ。
送受信に何を使うかも、最適なモノを自分で選んで決めればいいだけ。
まずは思いつく方法を片っ端から試せ。
それで解決する。

67:デフォルトの名無しさん
12/06/02 21:10:10.47
どんなネトゲかによるだろう。

P2Pならだいたいそれで合ってる。
MMOならみんなが1台の鯖に接続する。
だけどP2Pだとルータでポート解放する必要があるから、
最近はP2PでできるようなものもMMOのように鯖を介してやることも多い。

68:デフォルトの名無しさん
12/06/03 15:59:47.45
ネットワーク対戦の難しさは、ネットワークの遅さだよ、
とだけはあらかじめ言っておいてあげる。

69:デフォルトの名無しさん
12/06/03 16:26:28.89
GBのLAN専用にしたって、面倒な手続きが簡単になるわけじゃ無いんだが、
偉そうに語り出す馬鹿が出現したな。

70:デフォルトの名無しさん
12/06/03 18:09:22.83
産業用みたいに
例えばタッチパネルとPLCのネットワークとかって
インターフェイスのアドレスマップだけ設計すれば
PLC側から見て単に内部メモリとしてプログラム出来る

その先のやり取りはハードが勝手に決まった時間内で更新してくれるだけ

こういうような仕組みがPCにも欲しい

71:デフォルトの名無しさん
12/06/03 18:53:23.96
欲しいも何もプログラムで一定の領域を定期的に同期させるように作ればいいだけの話。

72:デフォルトの名無しさん
12/06/03 19:19:22.73
だからプログラムで記述するのが古臭いんだよ

73:デフォルトの名無しさん
12/06/03 19:25:16.98
そういうフレームワークを使えばいい。

74:デフォルトの名無しさん
12/06/03 19:37:12.95
>>72
古臭いと何がマズいのか明確に言ってくれないと、
じゃあこういうのはとか、なるほどそうだね、とか何も言えないだろ

75:デフォルトの名無しさん
12/06/03 21:57:18.77
他人が組んでくれて自分の見えないところなら気にならないのに、
自分が組まないとなると文句をたれるんだよ。
つまりタダの怠け者、クズ。

76:デフォルトの名無しさん
12/06/03 23:45:14.20
>>75
ならお前はDOSからWindows作ってからやれ

77:デフォルトの名無しさん
12/06/04 00:06:27.90
「あれあったで使うが、なければないで文句は言わない」って考え方はないのかね
底辺教育受けてるとないんだろうなあ

78:デフォルトの名無しさん
12/06/04 00:09:56.05
> その先のやり取りはハードが勝手に決まった時間内で更新してくれるだけ
決まった時間内で更新できると思ってるようじゃネットワークを扱うのは無理。

79:デフォルトの名無しさん
12/06/04 00:16:51.68
だとさ。
>>69
ざまぁ

80:デフォルトの名無しさん
12/06/04 00:57:00.90
ちなみにこの世で一番速い光子ですら、一秒間に地球を七週半しか回れない。
つまり、光の速度で地球の裏側に行って返ってくると、それだけで、1/7.5秒かかる。
8FPS弱ってことです。この世最速の情報伝達媒体ですらこんなものです。
もちろんネットワークは光速よりずいぶん遅いです。
間にはいくつものサーバーが挟まりますし。
その辺のことを良く考えて書かないと、文字通り、「ガタガタ」になります。

81:デフォルトの名無しさん
12/06/04 08:23:31.04
>>78
いや実際のネットワークはハードが勝手にやってるし
ソフトが介入してやってるのはホンの先っちょだけ

82:デフォルトの名無しさん
12/06/04 08:30:15.97
>>78
同期専用のハードを作ろうが、信号に異常が出たら再送なりしないといけないんだから、
確実に定期実行できるとは限らない。
それを神の奇跡か何かと勘違い出来る時点で、頭が悪いにもほどがある。
そういう人間はあらゆるモノを扱うのに向いてないよ。

83:デフォルトの名無しさん
12/06/04 08:34:01.98
結局はエラーチェックと再送を誰が担当するのか、
平均的な同期速度がどの程度か、
遅延が発生する確率はどの程度か、
失敗した場合の処理はどの部分で補うのか、
精度と処理をする場所が異なるだけの話。

84:デフォルトの名無しさん
12/06/04 10:16:03.18
>>81
ホンの先っちょだけって言うにはIPスタック作るのは面倒すぎる。

85:デフォルトの名無しさん
12/06/04 15:24:53.76
作る順番としては?

鯖:各クライアントとの入出力配列+ゲーム処理データーベースを常時更新
蔵:鯖との入出力配列により画面表示を常時更新

これが出来たら
あとは入出力配列部分だけ参照更新するネットワークプログラムを作って終わり?

86:デフォルトの名無しさん
12/06/04 19:01:54.49
C言語で9999999ってなんですかね?

87:デフォルトの名無しさん
12/06/04 19:16:21.59
>>80
言いたいことはちゃんと伝わったが、一応指摘しておくと、
FPS の使い方がなんかおかしい

88:デフォルトの名無しさん
12/06/04 19:49:24.55
ファーストパーソンシューター厨は、遅延時間ならなんでもかんでも
フレーム毎秒でしか捉えられんのだろう。

89:デフォルトの名無しさん
12/06/10 09:19:40.14

-----------まとめ----------
「馬鹿は死なねば治らないのであり、だからこそアナトール・フランスは
『愚かな者は、邪悪な者よりも忌まわしい』と言ったのだ。
 邪悪な者は休むときがあるが、愚かな者はけっして休まないからである。」
(ホセ・オルテガ・イ・ガセット 1883~1955)

スレリンク(tech板:247番)
>ゲームは作らんから知らんが、
224 == 247 == 704 == 717 == URLリンク(logsoku.com)
口癖はコンポジション、ミサイルとホーミングミサイルの設計について1ヶ月間も考え続けてる
スレリンク(tech板:772番)
>ゲーム作らなくてもお前よりマトモ
タスクの実行順序を意識しないとゲームが作れない(笑)
スレリンク(tech板:767番)
敵機 → プレイヤー の順序でタスクを実行するとタスクがぶっ壊れる
OOを得意げに語っているつもりが、やっている事が20年前のC言語だったという事実
バイナリの書き換えがわからない
コンパイラ言語のことをコンパイル言語とか言っちゃう
タイプミスの数々、右手の人差し指と中指をケガしてる模様
スレリンク(tech板:190番)
スレリンク(tech板:297番)
スレリンク(tech板:837-839番)
スレリンク(tech板:318-320番)
スレリンク(tech板:332-334番)
スレリンク(tech板:818番)
スレリンク(tech板:956番)

90:デフォルトの名無しさん
12/06/11 20:42:13.55
ネトゲ開発初心者はまずオセロから作れって。
FPSみたいにわずかな遅延がゲームに致命的な欠陥を生まないし、
オンライン対戦ならAIを作る必要もない。
送受信もどこに石を置いたかのデータが中心だから設計も楽。

91:デフォルトの名無しさん
12/06/11 20:48:10.95
その理屈はおかしい。
彼は趣味でやってるんだろうに、
作りたくも無いオセロゲームを作れってのは趣味にならないだろ。
作りたいものを作ってこその趣味だよ。
仮に玉砕したとしても、それでよいんだよ。
暇つぶしなわけだから。


最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch