- 1 名前:デフォルトの名無しさん [2012/08/18(土) 15:24:39.18 ]
- エロゲしか作ったことないけど
なんでも聞いてちょ 【前スレ】 ゲームプログラムなら俺に聞け24 toro.2ch.net/test/read.cgi/tech/1337706979/ このスレッドは天才チンパンジー「アイちゃん」が 言語訓練のために立てたものです。 アイと研究員とのやり取りに利用するスレッドなので、 関係者以外は書きこまないで下さい。 京都大学霊長類研究所
- 2 名前:デフォルトの名無しさん [2012/08/18(土) 15:28:33.24 ]
-
// | ___ ヽ──--.__ { | :.:|:.:.:.ノ:.:.|:.:リ,.=‐''  ̄ ` ヽ 、 __ ,r─弋ヽ :.V:. ,.r‐'´ ...:.:.:.:.. .. ヽ // ̄ ヽ // :.:ヾ / .:.:.:.:.:.:. V/ L :.:./ .:.:.:.:.:. .:.:.:.:.:.: .:.:.. / | :.:.:/ :.:.:.:.:.:.:__:.:.:.:.:.:.: / \:/ :.:.:.:.:.:.:./\///:.:.:. :.:.:. / :.:./ :.: :.:.:.:.:.:/ /へ/,イ:. .:.:.:.:. .:.:.:.. / :.:.:.:/ :.:.:.:.:.:./¨,ゞ 、/ i/゙ !:. :.:.:.:.:. .:.:. .. / ⌒ソ :.: :.:.:.:! :.:.:/:.:.:/ く:::::::::::ヽ | |:.:.:.:.:.:./i .:.:. ({ /:.:.: :.:.:.:.:.| :.:.:|:.:./ \っrへ レ'|:.:./ | 厶r/:.:.:.:.:.:.:ノ :.:∧:.| ` |:/ 、j/ /:.:.:.:.:.∠:.:| :/ jハ! ∨ __ {:.∧:.:.:./ | | ,へ:.:.:.:/ィ. .. ──=ニ f´ ̄¨Vー}:/ }/ ハ .:.:. ヽ::::::ヽ:. .:}...:. .:.. __ } | ,.r‐ ''プ :.:. ヽヽ :.:.:.:.:.:.:. :.:`Cr'' 〉:. .:.:. ´ ヽ V :.:.:.:.', .:. :.:.:.:.:.:.:.:.:.:.:.:.:.:.:.:.:.:.. :... .. :...: \} ____,.ム:.:.:.:.:.:.::.:.:.:.:.:.:.:.:.:.:.:....:.. .:.. .
- 3 名前:デフォルトの名無しさん mailto:sage [2012/08/18(土) 17:03:15.38 ]
- 推奨NGネーム: uY
- 4 名前:デフォルトの名無しさん mailto:sage [2012/08/18(土) 17:04:41.02 ]
- いやいやwいなかったらお前らネタ切れするくせに
- 5 名前:デフォルトの名無しさん mailto:sage [2012/08/18(土) 17:07:35.05 ]
- 前スレの>>999見たいなやつが出てくるから、やっぱトリはつけといた方がいいな
toro.2ch.net/test/read.cgi/tech/1337706979/999/
- 6 名前:デフォルトの名無しさん mailto:sage [2012/08/18(土) 17:10:32.91 ]
- だからだれかはよuY理論の解説頼む
マジで意味不明だから話についていけない 何を目的としていてどうやってどこまでできるものなんだ?
- 7 名前:デフォルトの名無しさん mailto:sage [2012/08/18(土) 17:12:30.26 ]
- >>6
気にしたら負け
- 8 名前:デフォルトの名無しさん mailto:sage [2012/08/18(土) 17:14:02.71 ]
- いや勝ち負けとかどうでもいいから教えてくれ頼む
- 9 名前:デフォルトの名無しさん mailto:sage [2012/08/18(土) 17:14:51.79 ]
- 前スレ>>1000
問題のコード > 900 :uY ◆gXFLM6waxs :2012/08/17(金) 19:27:30.51 > >>899 > お前程度でこれ何やってるかわかる? > 俺のいってた加速カウンタはこんな感じのメソッドがずっと続いていく > > def count_function > if @loop_wait > 1 > @loop_wait -= 1 > return @c > end > @c += @add > @add += @plus > @add *= -1 if @c >= @rrrr || @c <= @nnn > @c = @rrrr if @c >= @rrrr > @c = @nnn if @c <= @nnn > if (@c >= @rrrr) or (@c <= @nnn) > @loop_wait = @loop_wait_wait > end > if @loop_wait_ex.include? @c > @loop_wait = @wait_ary > end > return @c > end 1.uy STGのキャラの動きは「理論的には」全て上記を使用して書けると発言。お前らには理解は無理。 2.初期パラによって決まった数値が帰ってくる仕組みでは外の影響を考慮できないことを指摘される。 3.uy「理論的に」と言ったと発言。考え切れないとことか難しいところは直接書いていると発言。
- 10 名前:デフォルトの名無しさん mailto:sage [2012/08/18(土) 17:16:54.11 ]
- つまり、矛盾したことは言ってないということで
- 11 名前:デフォルトの名無しさん mailto:sage [2012/08/18(土) 17:16:56.23 ]
- で、なんでそのアルゴリズムですべて表現できんの?
- 12 名前:uY mailto:sage [2012/08/18(土) 17:20:07.34 ]
- 省略しすぎ
3つあるうちの1個のメソッド晒しただけでカウンタはあと2つある
- 13 名前:デフォルトの名無しさん mailto:sage [2012/08/18(土) 17:20:28.00 ]
- ふっほっ
- 14 名前:デフォルトの名無しさん mailto:sage [2012/08/18(土) 17:21:03.97 ]
- なるほど環境や入力は無視してて、引数にたいして必ず決まった数列が返ってくるのね
敵弾丸とかならそれでもいいかもしれないからそこは良いとしよう そんじゃあ、たとえばSinカーブとかexpカーブを出力するにはこれ初期値は何になるのか示してよ sin()とかexp()って書くより簡単になるんでしょ?ならなかったら意味ないもんな
- 15 名前:デフォルトの名無しさん mailto:sage [2012/08/18(土) 17:22:08.29 ]
- >>6
使用可能領域(uyの想定する古典ゲーム) ・スケジュールどおりの動作をするキャラ ・単純なパラパラ漫画型アニメーション 使用不可能領域(uyが想定しない自由度の高いゲーム) ・自キャラを追尾する ・凸凹地形を走行する
- 16 名前:デフォルトの名無しさん mailto:sage [2012/08/18(土) 17:23:07.03 ]
- >>14
uyの知らない関数挙げるなよかわいそうだろ
- 17 名前:デフォルトの名無しさん mailto:sage [2012/08/18(土) 17:27:00.00 ]
- >>9
追加で(>>907) > プログラミングにおいてのアルゴリズムのほとんどは > 1 , 2 , 3 と 1 , 2 , 3 , 1 , 2 , 3 と 1 , 2 , 3 , 2 , 1 のカウンタで表現できる ほとんどのアルゴリズムをカウンタで表現できると発言
- 18 名前:デフォルトの名無しさん mailto:sage [2012/08/18(土) 17:27:14.43 ]
- uY ◆gXFLM6waxs以外、uYの発言としては無効です
- 19 名前:デフォルトの名無しさん mailto:sage [2012/08/18(土) 17:28:53.69 ]
- >>14
えっ?今そういう話なん?
- 20 名前:デフォルトの名無しさん mailto:sage [2012/08/18(土) 17:28:59.65 ]
- >>9
1で実際には「理論的には」とは言っていなかった
- 21 名前:デフォルトの名無しさん mailto:sage [2012/08/18(土) 17:35:06.04 ]
- >>19
え?違うの? シューティング系ゲームのオブジェクトのうち決定的な軌道を出力するシステムで その表現力は多彩でパラメーターも簡潔で非常に再利用性が高いという話じゃないの? だから俺はどうやったらそんな簡単にいろんな軌道を思い通りに出せるか不思議でさ 試しに一番簡単そうなsinやexpの軌道を実際に出力してほしいなって思ったんだ
- 22 名前:uY mailto:sage [2012/08/18(土) 17:35:28.25 ]
- >>14
別にxやyに直接値を代入するしかやれないわけじゃない speedやangleに対しても可能 ac = func( 0 , 360 , 1 ) task_add { |o| o.speed = 1 o.angle = ac.call } やれば内部で勝手に動くようにしてる デフォルトではo.speedは0なので 根幹部分でsin,cosでキャラ動かす処理は通ってるけど、動いてないだけ 基本的に弾幕アルゴリズムにsinはあまり使わずspeedとangleの変更のみで作ってるし作れる
- 23 名前:デフォルトの名無しさん mailto:sage [2012/08/18(土) 17:37:47.97 ]
- 基本的に弾幕アルゴリズムは三角関数つかいまくりですが
uyの言う弾幕アルゴリズムはグラディウスあたりで止まってるのでしょう
- 24 名前:デフォルトの名無しさん mailto:sage [2012/08/18(土) 17:38:06.47 ]
- >>22
ごめん意味不明だわ funcの中身とか、内部で勝手に動くようにしてるとか曖昧に濁さないでちゃんと説明してください
- 25 名前:デフォルトの名無しさん mailto:sage [2012/08/18(土) 17:40:25.44 ]
- >>22
1 2 3 1 2 3 ... 1 2 3 2 1 2 ... はよ、この数列を合成してsinへ変換する方法教えてくれ
- 26 名前:デフォルトの名無しさん mailto:sage [2012/08/18(土) 17:41:17.70 ]
- >>22のuYは偽もん
- 27 名前:uY ◆gXFLM6waxs mailto:sage [2012/08/18(土) 17:45:21.96 ]
- funcは カウンターだよ
初期値 0 最大値 360 add 1 呼び出す度に 1,2,3,4,5,6,7,8,.............. 速度と角度を指定すれば、これだけで動くってこと task_add { |o| o.speed = 1 o.angle = 45 } 指定しなければ初期値が0だから非移動 >>25 わかってねーわ sinは、ゲームロジックでは使わない 全ソースコード中、sin,cosを使ってる場所は1つのメソッドだけって言えば分かる?
- 28 名前:デフォルトの名無しさん mailto:sage [2012/08/18(土) 17:45:27.85 ]
- >>25
多分count_functionで An = 1 2 3 4 ・・・ て数列作って x^(Ai * 2 - 1) / (Ai * 2 - 1)! でsin(x)を生成するんだと思う。
- 29 名前:デフォルトの名無しさん mailto:sage [2012/08/18(土) 17:46:56.88 ]
- >>27
その計算済みsin値を数列生成ロジックに適用してみろって話
- 30 名前:デフォルトの名無しさん mailto:sage [2012/08/18(土) 17:50:16.53 ]
- uYさんのゲームってどこに売ってるんですか?
- 31 名前:デフォルトの名無しさん mailto:sage [2012/08/18(土) 17:53:16.40 ]
- >>28
それって素直にsinって書けばいいじゃんって疑問はuYワールドではタブーなの?
- 32 名前:デフォルトの名無しさん mailto:sage [2012/08/18(土) 17:55:32.83 ]
- >>31
sinそのまま使ったらuyの根幹部分使う局面が減るじゃん 簡単な問題に難解なソリューションを、が俺すげーの源になるらしい
- 33 名前:uY ◆gXFLM6waxs mailto:sage [2012/08/18(土) 17:55:59.43 ]
- >>29
どんなデータ? 適用できるけど適用しない それは普通にかいたほうが良い だから、speed = 0 にして、x、yを直代入でキャラ移動させる方法と speed = 1 とかにしてangle指定でキャラ動かす方法の2つを用意してるんだよ sinカーブ作りたいならspeed = 0 にして x、y 直代入でいいだろ さらにいえば数列生成ロジックと呼んでるものさえ表現する1個の道具に過ぎない それに曲線を描くなら三角関数使わずとも xx = counter( 0 , 3 , 0.05 ) y += 1 x += xx.call こんな感じでもいけるのは分かるよね?
- 34 名前:デフォルトの名無しさん mailto:sage [2012/08/18(土) 17:58:59.40 ]
- sin使いたい時はsin関数使うのが普通だろ
重箱のすみばっかりつつきよって おまえらどんだけuY好きなんだよw
- 35 名前:デフォルトの名無しさん mailto:sage [2012/08/18(土) 17:59:36.80 ]
- ?x?
- 36 名前:デフォルトの名無しさん mailto:sage [2012/08/18(土) 18:00:01.61 ]
- 実際動いてるとこのキャプチャくれよ
とてもではないがこんな糞コードでゲーム作ってるなんて信じられん
- 37 名前:デフォルトの名無しさん mailto:sage [2012/08/18(土) 18:00:59.94 ]
- >xx = counter( 0 , 3 , 0.05 )
>y += 1 >x += xx.call ごめんなさい、僕これが曲線になるとは思えないんです
- 38 名前:548 mailto:sage [2012/08/18(土) 18:02:55.93 ]
- >>37
イメージだよ、イメージ ってごまかされるから無駄
- 39 名前:デフォルトの名無しさん mailto:sage [2012/08/18(土) 18:07:09.95 ]
- >>37
多分(x, y)を曲座標平面の座標と捕らえて、直行座標に変換すると曲線になるっていう意味だと思う
- 40 名前:デフォルトの名無しさん mailto:sage [2012/08/18(土) 18:10:47.24 ]
- ああ、それなら渦巻き型に曲線を描くね
- 41 名前:uY ◆gXFLM6waxs mailto:sage [2012/08/18(土) 18:10:58.20 ]
- >>37
↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓
- 42 名前:デフォルトの名無しさん mailto:sage [2012/08/18(土) 18:13:47.67 ]
- >funcは カウンターだよ
>初期値 0 最大値 360 add 1 >呼び出す度に 1,2,3,4,5,6,7,8,.............. >xx = counter( 0 , 3 , 0.05 ) ⇒呼び出す度に 1, 1.05, 1.10, 1.15,..............
- 43 名前:デフォルトの名無しさん mailto:sage [2012/08/18(土) 18:16:11.24 ]
- >>42
ん?でそのxxを足し込んでいくから曲線になるんでしょ? あんま馬鹿にしてっと馬鹿がばれるぞ
- 44 名前:uY ◆gXFLM6waxs mailto:sage [2012/08/18(土) 18:17:15.71 ]
- つうか、俺はもっとネストにネストして複雑な仕組みでやってて
それをどうにか理解されるように解凍しながらコード書いてたけどもう無理なようだな かいてるコードをそのまま載せる 既に俺は直接 インクリメントとか += とかは、かかないんだよ 実際に使ってるコードを載せるならこんな感じ s1.gazo.cc/up/s1_33634.jpg ↓ これを表現するコードはこれ def testtt o img = Image.new(20,20,[200,250,220]) spd = Counter.cc 0 , 5 , 0.01 ang = Counter.cc 90 , 875 , 1 pattern_4 o , img , spd , ang , 4 , 10 , 180 end
- 45 名前:デフォルトの名無しさん mailto:sage [2012/08/18(土) 18:19:26.83 ]
- その軌道じゃ複雑に書く意味が一ミリもないwww
- 46 名前:デフォルトの名無しさん mailto:sage [2012/08/18(土) 18:20:28.16 ]
- >>45
馬鹿にしてるやつは自分のも晒せや
- 47 名前:デフォルトの名無しさん mailto:sage [2012/08/18(土) 18:23:07.33 ]
- 結局優位性は見えないまま
- 48 名前:デフォルトの名無しさん mailto:sage [2012/08/18(土) 18:28:18.04 ]
- くだらないところで生産性削いで効率とかほざくならmoonscriptとluajitにして素直に書くほうが良くないか
- 49 名前:デフォルトの名無しさん mailto:sage [2012/08/18(土) 18:32:34.12 ]
- そうするとスクリプトに持ってかれるから俺すげーできなくてつらいんだろ
- 50 名前:デフォルトの名無しさん mailto:sage [2012/08/18(土) 18:34:56.56 ]
- おまえら馬鹿にすることしか楽しみがないんだな
かわいそうに
- 51 名前:デフォルトの名無しさん mailto:sage [2012/08/18(土) 18:37:12.59 ]
- >>50
根本的に問題だらけだから、目をつぶれというなら手放しで褒めることになるんだが
- 52 名前:uY ◆gXFLM6waxs mailto:sage [2012/08/18(土) 18:38:11.82 ]
- 元々これは
画像のalpha値を表現するためのカウンタとして作った フェードインやフェードアウトのときに n+= 1 if n > 255 n = 255 とか、こんなコードをなくすための単純なものだった 上のコードは今では n.call で終わり そこから少しずつ進化して、今ではあらゆる物が記述できるようになったに過ぎない
- 53 名前:uY ◆gXFLM6waxs mailto:sage [2012/08/18(土) 18:38:59.85 ]
- 誰でもいいから>>44 をsinか何かで表現してみてよ
かけますか?
- 54 名前:デフォルトの名無しさん mailto:sage [2012/08/18(土) 18:39:22.18 ]
- あらゆるもの記述できてないってさっき言ってましたやん岡村はん
- 55 名前:uY ◆gXFLM6waxs mailto:sage [2012/08/18(土) 18:40:17.90 ]
- >>54
7割
- 56 名前:デフォルトの名無しさん mailto:sage [2012/08/18(土) 18:40:28.61 ]
- >>54
('_')
- 57 名前:デフォルトの名無しさん mailto:sage [2012/08/18(土) 18:40:30.81 ]
- yaneuraoのyaneCounterじゃねえか
- 58 名前:デフォルトの名無しさん mailto:sage [2012/08/18(土) 18:42:17.32 ]
- >>53
sin使うまでもない <action> <fire> <direction type="sequence">23</direction> <bullet/> </fire> <wait>1</wait> </action>
- 59 名前:デフォルトの名無しさん mailto:sage [2012/08/18(土) 18:45:38.76 ]
- >>58
あれ、こっちのが短くねーか?
- 60 名前:デフォルトの名無しさん mailto:sage [2012/08/18(土) 18:46:11.76 ]
- >>57
何それ
- 61 名前:uY ◆gXFLM6waxs mailto:sage [2012/08/18(土) 18:46:29.66 ]
- >>57
え、そのソースみたいんだけど
- 62 名前:デフォルトの名無しさん mailto:sage [2012/08/18(土) 18:47:35.51 ]
- BulletML使えし
- 63 名前:uY ◆gXFLM6waxs mailto:sage [2012/08/18(土) 18:47:52.19 ]
- >>58
違うだろそれ sequenceは、前の弾幕との相対距離じゃなかった? カーブを表現するためのコードが入ってない
- 64 名前:デフォルトの名無しさん mailto:sage [2012/08/18(土) 18:48:39.27 ]
- ×距離
○角度
- 65 名前:uY ◆gXFLM6waxs mailto:sage [2012/08/18(土) 18:53:40.24 ]
- BulletMLしね
- 66 名前:デフォルトの名無しさん mailto:sage [2012/08/18(土) 18:55:30.24 ]
- 車輪再発明の努力をすべてBulletMLに否定されまた一人の男が散って逝った
- 67 名前:デフォルトの名無しさん mailto:sage [2012/08/18(土) 18:57:35.90 ]
- そろそろ休み終わるから有意義に過ごそうぜ
- 68 名前:uY ◆gXFLM6waxs mailto:sage [2012/08/18(土) 19:03:01.63 ]
- 相対って言う概念はまだ入れてないから
BulletMLみてsequenceは入れようかどうかは考え中 よくみたら>>58で>>44全然表現できてないし 速度の加速はどこいった? ソースコードとキャプ晒して欲しいんだよ
- 69 名前:デフォルトの名無しさん mailto:sage [2012/08/18(土) 19:15:20.07 ]
- >>67
そうだな、土日が明日で終わる
- 70 名前:デフォルトの名無しさん mailto:sage [2012/08/18(土) 20:12:01.18 ]
- >>67
ばぶー!
- 71 名前:デフォルトの名無しさん mailto:sage [2012/08/18(土) 20:36:20.86 ]
- トリつけて真っ向勝負したuYの勝ち
まあ、勝負してるつもりもないだろうけど
- 72 名前:デフォルトの名無しさん mailto:sage [2012/08/18(土) 20:38:23.34 ]
- >>71
よぉuy
- 73 名前:デフォルトの名無しさん mailto:sage [2012/08/18(土) 20:44:04.28 ]
- >>72
残念ながら違う 嘘だと思うなら2ch運営にリモホ訊いてご覧なさい
- 74 名前:デフォルトの名無しさん mailto:sage [2012/08/18(土) 20:53:08.88 ]
- で?
一生のうちで50回もないお盆休みのうちの1回をuyは車輪の再発明に使ったって?
- 75 名前:デフォルトの名無しさん mailto:sage [2012/08/18(土) 20:56:54.79 ]
- 再発明は先人に失礼だろ
- 76 名前:デフォルトの名無しさん [2012/08/18(土) 21:03:42.41 ]
- お盆休みに2ch。。。
- 77 名前:デフォルトの名無しさん mailto:sage [2012/08/18(土) 21:23:24.83 ]
- 効率性を求めるのが無駄とは言わんが
それより先に高速性や可読性のあるコードが先だと思うんだが・・・・。 効率性なんてそれこそスクリプト化すればいいし
- 78 名前:uY ◆gXFLM6waxs mailto:sage [2012/08/18(土) 22:10:06.67 ]
- 可読性でいったら俺にとってはXMLよりこれが読みやすいし
後からメタもしやすいんだよ それにこのカウンタは俺様Libの標準ライブラリだから 別にゲ製作でのみ使うものでもないし 2年前に作った機構
- 79 名前:デフォルトの名無しさん mailto:sage [2012/08/18(土) 22:19:31.19 ]
- それもう飽きたから次のネタ頼むわ
- 80 名前:デフォルトの名無しさん mailto:sage [2012/08/18(土) 22:23:17.38 ]
- そうだそうだ!
- 81 名前:デフォルトの名無しさん mailto:sage [2012/08/18(土) 22:23:53.72 ]
- てめーらuyに文句たれる割にはネタ切れとか、たまには自分で提供しろやw
- 82 名前:デフォルトの名無しさん mailto:sage [2012/08/18(土) 22:28:13.83 ]
- だってネタは真新しさかあるいはツッコミどこがないとダメだろ
俺ら程度の実力じゃ新しいネタはでてこないし 過去に議論され尽くした技術の話してもそうだねで終わる だからツッコミどこしかないuyのネタはありがたいんだよ話題としてはね
- 83 名前:デフォルトの名無しさん mailto:sage [2012/08/18(土) 22:31:31.04 ]
- モルピグ作りたいんだけど
普通のPCスペックのマシンを鯖にしたら何人くらい同時接続できるもんなの? 200人くらいいける?
- 84 名前:デフォルトの名無しさん mailto:sage [2012/08/18(土) 22:33:33.58 ]
- どうしてスクリプト=XMLと思ってるかは知らんが
自前のスクリプトというつもりで書いたんだけどな 「俺にとっては」ってのも結構危険な考え方だと思うが 余所様のやり方にいちいち難癖つけたとこでどうにもならんか
- 85 名前:デフォルトの名無しさん mailto:sage [2012/08/18(土) 22:37:49.47 ]
- MMORPGをモルピグって言うのどうなの?
- 86 名前:デフォルトの名無しさん mailto:sage [2012/08/18(土) 22:42:26.75 ]
- >>85
どうもこうも英語圏ではそう読む。
- 87 名前:デフォルトの名無しさん mailto:sage [2012/08/18(土) 22:43:15.95 ]
- 常識だよな
- 88 名前:デフォルトの名無しさん mailto:sage [2012/08/18(土) 22:48:40.08 ]
- >>83
100人くらいで先にネットワークが音を上げそうだけど 計測したことないから分からないな
- 89 名前:デフォルトの名無しさん mailto:sage [2012/08/18(土) 22:54:15.76 ]
- コンピュータネットワーク関連の学会とかだと
MMORPGが例として出されることがあるんだけど みんな「ッモルピグ」って読んでる たまに日本人の研究者がうっかり「えむえむおーあーるぴーじー」って読むけど 変な顔をされたりジョークの一種だと思って笑われたりしてるよ 日本国内に限定して言えば「えむえむおーあーるぴーじー」のほうが普及してるけど 本来の正しい読み方は「ッモルピグ」だよ ただ、日本人には「ッモ」の発音がかなり難しいから最初の「ッ」を取って「モルピグ」になってるんだろ
- 90 名前:デフォルトの名無しさん mailto:sage [2012/08/18(土) 22:56:40.73 ]
- 常識だよな
- 91 名前:デフォルトの名無しさん mailto:sage [2012/08/18(土) 23:39:02.14 ]
- それでッモルピグじゃなくてモルピグって読む奴が多いのか
- 92 名前:デフォルトの名無しさん mailto:sage [2012/08/19(日) 00:13:38.65 ]
- >>88
サンクス やっぱり作ってみるしかないか・・・
- 93 名前:デフォルトの名無しさん mailto:sage [2012/08/19(日) 01:08:34.01 ]
- 海外鯖だからリアルタイム性によっては堪えられないだろうけど
PhotonCloud/Serverなんかはトータルで安くなりそう
- 94 名前:デフォルトの名無しさん mailto:sage [2012/08/19(日) 01:58:02.82 ]
- >敵A が x座標 200からスピード1ずつ右へ移動しx座標400へ到達し、
>そこで100フレーム待機、その後左へ移動しx座標200へ戻り、到達したら100フレーム待機 >この動作をループさせたい > >c = func( 200 , 400 , 1 ) >task_add { |o| o.x = c.call } まあループは良いとして、 「そこで100フレーム待機、その後左へ移動しx座標200へ戻り、到達したら100フレーム待機」って どこに書いてあるの?
- 95 名前:デフォルトの名無しさん mailto:sage [2012/08/19(日) 02:28:27.61 ]
- きっと1動作終了後に100フレーム待機がデフォルトで、
移動後は元の座標へ戻るってのもデフォルト動作なんだよ
- 96 名前:デフォルトの名無しさん mailto:sage [2012/08/19(日) 02:46:41.37 ]
- それってどういう設計方針だってばよぉ
- 97 名前:uY ◆gXFLM6waxs [2012/08/19(日) 02:57:08.28 ]
- 細かいとこに気づくな
waitは抜けてた そのメソッドは元々ハッシュ引数を受け取るメソッドだったんだけど、 いちいちハッシュKeyの指定が面倒だから、数値だけでも指定できるようにしていただけで 正しく書くとこんな感じ func( :init => 200 , :end => 400 , :add => 1 . :wait => 100 , :loop_wait_ex => [200,400] , ) この場合、200と400は初期値と終点だから、 >:loop_wait => [200,400] , これなしでもwaitするけど 配列の要素増やせば200,400以外の場所でも止まれますよアピールです
- 98 名前:デフォルトの名無しさん mailto:sage [2012/08/19(日) 03:05:22.41 ]
- tweenの出来損ないにしか見えない
- 99 名前:デフォルトの名無しさん mailto:sage [2012/08/19(日) 03:07:43.50 ]
- >>98
文句だけは速いなw
- 100 名前:uY ◆gXFLM6waxs [2012/08/19(日) 03:08:26.40 ]
- 俺はすべてのメソッドのメソッド名と引数の順序覚えてるからハッシュ使わない
- 101 名前:デフォルトの名無しさん mailto:sage [2012/08/19(日) 03:16:10.57 ]
- >>97
俺はレガシC++で止まっているんで こういう抽象度が高い言語はわからないんだが、 例えば x=200での待機を10フレーム x=400での待機を100フレームにしたら そのコードはどう変わるの?
- 102 名前:デフォルトの名無しさん mailto:sage [2012/08/19(日) 03:23:14.54 ]
- >>101
おまえ>>9のコード読んだ上で言ってるだろ uyに誤れ!
- 103 名前:uY ◆gXFLM6waxs mailto:sage [2012/08/19(日) 03:27:15.59 ]
- >>101
その機能はまだ入れてない。入れようとはしたけど途中でやめた 結局コードっていうか、ただのメソッドへの引数だよ どういう引数を渡せば自分が >x=200での待機を10フレーム >x=400での待機を100フレーム こういう処理をかきやすいか&覚えやすいかってところ 今思いつくのはこんなもの :loop_wait_ex_ex => [ 200 => 10 , 400 => 100 ] , こういうのやって実装するのは簡単だけど、 実装コードが>>9 こんな風に"綺麗に書いても"、大変なことになってるのであまり触れたくない そして色んな場所でも使ってるカウンタだから、多機能にすればそれだけ全体処理が重くなる 現在のrubyの速度ならこんなもんだろうと思って実装は見送り中
- 104 名前:デフォルトの名無しさん mailto:sage [2012/08/19(日) 03:28:14.67 ]
- >>99
お前、uyのコードだけ見て育ったみたいな顔してるよ
- 105 名前:デフォルトの名無しさん mailto:sage [2012/08/19(日) 03:30:13.91 ]
- >>104
ちょっと何いってっかわかんないっすねぇ
- 106 名前:デフォルトの名無しさん mailto:sage [2012/08/19(日) 03:50:06.46 ]
- w
- 107 名前:デフォルトの名無しさん mailto:sage [2012/08/19(日) 03:51:29.67 ]
- >>103
だから一極集中せずに分割しろと・・・
- 108 名前:デフォルトの名無しさん mailto:sage [2012/08/19(日) 04:00:58.51 ]
- >>103
もう痛々しすぎてみてらんない 大口叩いて引っ込みつかなくなったのはもう十分解ったから もう諦めたら?
- 109 名前:デフォルトの名無しさん mailto:sage [2012/08/19(日) 04:04:44.29 ]
- >>108
おまえ友達いねーだろ。。
- 110 名前:uY ◆gXFLM6waxs mailto:sage [2012/08/19(日) 04:26:22.11 ]
- バカには無理
- 111 名前:uY ◆gXFLM6waxs mailto:sage [2012/08/19(日) 04:32:24.70 ]
- 実際これでも忙しくて
そのカウンタは自分がよく使う機能をまとめたに過ぎない もう少し付け加えたい機能はいくつかあるけど時間がない
- 112 名前:uY ◆gXFLM6waxs mailto:sage [2012/08/19(日) 05:08:46.57 ]
- なんだかんだいって実装した
ほかにも現在のカウンタの様子とか知らせるメッセージ用の変数も入れたいんだけどな 良い方法が思いつかないから見送り :loop_wait_ex => [200,400] ではwait固定 :loop_wait_ex => ({ 200 => 10 , 400 => 100 }) でwaitは各個指定 お前らに使えとかいってない >>101 func( :init => 200 , :end => 400 , :add => 1 , :loop_wait_ex => ({ 200 => 10 , 400 => 100 }) , )
- 113 名前:デフォルトの名無しさん mailto:sage [2012/08/19(日) 05:26:03.36 ]
- >お前らに使えとかいってない
じゃあ何がしてえんだよ ここはお前のブログじゃねーんだよ ブログ作っても誰もコメントしてくれないからここに書き込んでるんだろ 寂しいねえ
- 114 名前:uY ◆gXFLM6waxs mailto:sage [2012/08/19(日) 05:27:29.47 ]
- 念のためだけどお前らに使えとか言ってないから
3つあるカウンタも2個消して1個しか載せないけど お願いしますと敬語で懇願したら晒せないこともない けどどうせお前らには使いこなせない けど普段の書いてるアルゴリズムってもしかしたらuYカウンタで表現できるんじゃね!?とか思い返すくらいは良いと思う ideone.com/lpvts > 1 2 3 4 5 5 6 7 7 7 7 8 9 10 9 8 7 7 7 7 6 5 5 4 3 2 1 0 1 2 3 4 5 5 6 7 7 7 7 8
- 115 名前:デフォルトの名無しさん mailto:sage [2012/08/19(日) 05:28:16.72 ]
- >>109
痛いとこついてくるなそうだよ 大学でも一緒に遊んだりするやつは両手で数えられるぐらいしかいない 学内で暇な時しゃべるぐらいの密度薄いつながりならもっといるんだが友達に数えられるのは少なすぎててなけてくる
- 116 名前:uY ◆gXFLM6waxs mailto:sage [2012/08/19(日) 05:32:53.05 ]
- こんだけ友達いる
ttp://thwiki.info/?%C5%EC%CA%FD%A5%B9%A5%EC%C5%AA%A5%AD%A5%E3%A5%E9%BE%D2%B2%F0 俺様は明日からはもうこれない ゲ製作一区切りついた プログラムの作業は休止、すいっちがきりかわる
- 117 名前:デフォルトの名無しさん mailto:sage [2012/08/19(日) 05:34:58.87 ]
- 心へしおれたか
そりゃそうだよな
- 118 名前:デフォルトの名無しさん mailto:sage [2012/08/19(日) 07:40:28.96 ]
- アルゴリズムに自分の名前付けおったw
- 119 名前:デフォルトの名無しさん mailto:sage [2012/08/19(日) 08:00:05.45 ]
- ゲームの中にしかお友達いないの?(´・ω・`)
module名もなんか東方キャラできもいし・・・ あ、僕のライブラリもけいおんのキャラ名だった(´;ω;`)
- 120 名前:デフォルトの名無しさん mailto:sage [2012/08/19(日) 10:37:07.40 ]
- じゃあぼくちんゼロの使い魔キャラにする〜^^
- 121 名前:デフォルトの名無しさん mailto:sage [2012/08/19(日) 11:10:59.29 ]
- >>115
いや、そんだけいれば十分だ
- 122 名前:デフォルトの名無しさん mailto:sage [2012/08/19(日) 11:12:27.60 ]
- >>116
あららもう来ないのか、、寂しくなるねぇ おまえらがいじめすぎたからじゃねーか?ったく
- 123 名前:デフォルトの名無しさん mailto:sage [2012/08/19(日) 11:25:46.65 ]
- >>122
>>116
- 124 名前:デフォルトの名無しさん mailto:sage [2012/08/19(日) 11:30:14.46 ]
- 変な奴だったけどいなくなるとさびしくなるな(しんみり)
- 125 名前:デフォルトの名無しさん mailto:sage [2012/08/19(日) 12:01:17.58 ]
- いや明日からって話だからまだいるんじゃね
つかどうせしばらくしたらまたくるだろうし
- 126 名前:デフォルトの名無しさん mailto:sage [2012/08/19(日) 12:36:16.63 ]
- 使い方気をつけないと使えないってのはちょっとな…。
いやまぁ趣味でやっている分にはいいんだけど。
- 127 名前:デフォルトの名無しさん mailto:sage [2012/08/19(日) 13:30:46.62 ]
- だね
- 128 名前:デフォルトの名無しさん mailto:sage [2012/08/19(日) 15:09:27.69 ]
- ひゅーひゅー
- 129 名前:uy [2012/08/19(日) 22:33:47.12 ]
- 一文字メソッド名や連番のメソッド名ってなんでいけないの?
覚えれないから? じゃあ完全記憶能力保持者なら一文字や連番でいいじゃん
- 130 名前:uy [2012/08/19(日) 22:35:53.94 ]
- 気づかれてるとおもうけど俺それ
一回みただけで待ちゆく人の数、木にある葉の数 飛んでる鳥の数 すべて覚えてる
- 131 名前:デフォルトの名無しさん mailto:sage [2012/08/19(日) 22:35:57.85 ]
- 1文字:検索に引っかかりにくいから
連番:意味がわかりにくいから 変数名を適切につけることは難しいことではないのに わざわざ難読化する理由はオナニー以外の何者でもない
- 132 名前:デフォルトの名無しさん mailto:sage [2012/08/19(日) 22:47:16.63 ]
- >>129
にせuyはお引き取りください 偽とかなんとかいわれたくないならトリ
- 133 名前:デフォルトの名無しさん mailto:sage [2012/08/19(日) 22:50:51.57 ]
- 本物の天才はバイナリで理解するから識別子とか必要ない
- 134 名前:デフォルトの名無しさん mailto:sage [2012/08/19(日) 22:58:31.24 ]
- バイナリとれねーからいってんだろ
- 135 名前:デフォルトの名無しさん mailto:sage [2012/08/19(日) 23:17:27.75 ]
- うほっ
- 136 名前:デフォルトの名無しさん mailto:sage [2012/08/19(日) 23:22:07.20 ]
- おまえらつまらない
- 137 名前:デフォルトの名無しさん mailto:sage [2012/08/19(日) 23:22:25.90 ]
- わざわざ書き込まなくてよし、つまらんから
- 138 名前:デフォルトの名無しさん mailto:sage [2012/08/20(月) 00:29:32.44 ]
- さて、今年もやってきました CEDEC、逆から読んでも CEDEC
会場に行けない奴は、せめて気になるセッションだけでも 今のうちにニコ生のタイムシフト予約しとけよ
- 139 名前:デフォルトの名無しさん mailto:sage [2012/08/20(月) 01:38:03.05 ]
- ああ今年いけないや。
でもまあcedilで読めばいい話だけどな。
- 140 名前:デフォルトの名無しさん mailto:sage [2012/08/20(月) 13:43:07.21 ]
- ふっほっ
- 141 名前:uY ◆gXFLM6waxs [2012/08/20(月) 20:47:28.40 ]
- ツリーでゲーム内オブジェクト管理してる奴に聞きたいんだけど、違う管理方法してる奴は話しかけないでね
オブジェクトに識別子みたいな名前って付けるじゃん でもそれ、例えばこのAからツリー全体を検索する時に A │ ┌───────┐ B C │ │ ┌───┐ ┌───┐ D F D F DとFが名前同じな場合に、区別する方法ってどうすればいいの?
- 142 名前:uY ◆gXFLM6waxs [2012/08/20(月) 20:56:56.82 ]
- 基本的に識別子は、"同じ階層内"では重複しない識別子を規則に沿って与えてる
ツリー全体で絶対に重複しない識別子を与えると、 ちょっと設計の仕様的にまずい事が起こる可能性が高くてやばい ネスト回数でも与えるのが普通の手段ですか?
- 143 名前:デフォルトの名無しさん mailto:sage [2012/08/20(月) 21:04:06.22 ]
- ポインタで識別すればよくね
- 144 名前:デフォルトの名無しさん mailto:sage [2012/08/20(月) 21:06:14.88 ]
- あれ?
もう来ないんじゃなかったの?
- 145 名前:デフォルトの名無しさん mailto:sage [2012/08/20(月) 21:08:36.61 ]
- >>142
まずは全体で重複しない識別子にすると発生する問題を詳しく説明して なにがどうなって問題になるの?
- 146 名前:デフォルトの名無しさん mailto:sage [2012/08/20(月) 21:10:25.87 ]
- ふにー
- 147 名前:uY ◆gXFLM6waxs [2012/08/20(月) 21:18:35.06 ]
- >>145
全体で重複しない識別子にする方法は2種類だと思うけど 1 ツリー全体検索をかけて重複しないものを探す( 遅いから論外 ) 2 オブジェクト生成の度に違う文字列でも返しとく この2は出来なかった RubyのSymbolを使って識別子にしてたんだけど、Symbolは200万個ほど生成するとrubyが落ちることが発覚 未使用になったらSymbolの削除の方法をrubyスレに聞きに行ったけど多分誰も教えてくれない
- 148 名前:デフォルトの名無しさん mailto:sage [2012/08/20(月) 21:38:58.62 ]
- >>147
GUID使えばいいよ
- 149 名前:デフォルトの名無しさん mailto:sage [2012/08/20(月) 21:40:15.62 ]
- >>147
概算でいいからシーン中の全オブジェクト数は最大どれぐらいだ?
- 150 名前:uY ◆gXFLM6waxs [2012/08/20(月) 21:45:41.65 ]
- >>149
一度に表示するのはせいぜい500くらい 基本的に :effect_(連番) :eneny_(連番) という具合生成 でもエフェクトとかは生成と破棄がかなり行われるから 多分連番でつけてたらゲーム最後まで行く前に200万超えてる 起動しっぱなしで2週目されたら絶対アウト いまSymbolを使っちゃってる場所を少しずつ文字列で書き換える作業を・・・・・
- 151 名前:デフォルトの名無しさん mailto:sage [2012/08/20(月) 22:01:00.10 ]
- >>150
一度に500程度なら番号生成ロジックはこんなのとか que:空き番キュー。破棄された番号をキューイングしていく idx:連番の先頭 1.queが空でなければ先頭の要素を使用する 2.queが空ならidxを使用し、idxを+1しておく 3.破棄したら番号をqueの末尾に追加
- 152 名前:デフォルトの名無しさん mailto:sage [2012/08/20(月) 22:09:49.71 ]
- >>150
その程度なら整数をインクリメントしながらIDとして与えれば十分 たかが二百万だろ?整数の最大値からすればカスみたいなもんだ 使い終わったIDを処理する必要すらない
- 153 名前:デフォルトの名無しさん mailto:sage [2012/08/20(月) 22:16:43.93 ]
- アクション系のゲームでパフォーマンス絡むと適切かどうかわからないけど、
名前が同じなら絶対パスで比較するとかは? D == D and A.C.D == A.B.D 省リソース化は、Flyweightパターン等を参考にインスタンスを再利用するといいよ。
- 154 名前:uY ◆gXFLM6waxs [2012/08/20(月) 22:29:48.06 ]
- >>151
SUGEEE流石ゲームPGだ Thx!それ使わしてもらう >>152 いや使い終わったSymbolも処理されないのがruby 元々Symbolはオブジェクトとかに使っちゃいけなかったのかもしれない 一回でも :aa ってやったら処理系再起動するまで永久に残ると思う これセキュリティホールになりうる気がして仕方ない >>153 あー、そういう手もあった
- 155 名前:152 mailto:sage [2012/08/20(月) 22:51:42.23 ]
- >>154
いやSymbolじゃなくてただの整数をIDとして使うんだよ
- 156 名前:uY ◆gXFLM6waxs mailto:sage [2012/08/20(月) 23:01:16.03 ]
- いやだよ
書きえられる場所は文字列にした
- 157 名前:デフォルトの名無しさん mailto:sage [2012/08/20(月) 23:03:53.56 ]
- なんで嫌なんだよ?
個体識別には整数IDが正解だよ 意気地になってないでたまには素直に人のアドバイスも聞いたほうがいいよ
- 158 名前:デフォルトの名無しさん mailto:sage [2012/08/20(月) 23:20:25.99 ]
- オナニーできないアプローチを彼が取り入れるわけがない
- 159 名前:uY ◆gXFLM6waxs mailto:sage [2012/08/20(月) 23:43:46.72 ]
- rubyにはobject_idっていうものがついてて
格オブジェクトに勝手に数字割り振られてるから それだったら最初から出来てる 俺様がやりたいのは 文字列等で自分が分かる形での識別だし
- 160 名前:デフォルトの名無しさん mailto:sage [2012/08/20(月) 23:53:30.14 ]
- >>159
頭悪いんだなぁ だったらそのIDから文字列生成すればいいじゃないか ひょっとしてギャグで言ってない?
- 161 名前:uY ◆gXFLM6waxs mailto:sage [2012/08/21(火) 00:22:59.41 ]
- 死ね
- 162 名前:デフォルトの名無しさん mailto:sage [2012/08/21(火) 00:25:37.77 ]
- 複雑にしなきゃ気が済まないんだもん☆ぷんぷん
- 163 名前:デフォルトの名無しさん mailto:sage [2012/08/21(火) 00:46:23.74 ]
- 次の土日あたりには何食わぬ顔して戻ってくるんだろうと思ってたが
まさか1日もたないとは…
- 164 名前:デフォルトの名無しさん mailto:sage [2012/08/21(火) 00:50:53.90 ]
- いいんだよ、きてくれなきゃぽまいらもさびしいだろ
- 165 名前:uY ◆gXFLM6waxs mailto:sage [2012/08/21(火) 01:44:03.48 ]
- >>160
あ、きつい事いっちゃってごめんね object_idね、確かに良い手段だね 実装めんどくさいんだよアホが
- 166 名前:デフォルトの名無しさん mailto:sage [2012/08/21(火) 01:44:46.77 ]
- こんどはツンデレ系かよ
- 167 名前:デフォルトの名無しさん mailto:sage [2012/08/21(火) 01:49:52.77 ]
- すまんデレツンだった
おれもまだまだだな
- 168 名前:デフォルトの名無しさん mailto:sage [2012/08/21(火) 12:03:23.98 ]
- ____
/∵∴∵∴\ /∵∴∵∴∵∴\ /∵∴∴,(・)(・)∴| |∵∵/ ○ \| |∵ / 三 | 三 | / ̄ ̄ ̄ ̄ ̄ |∵ | __|__ | < うるせー馬鹿! \| \_/ / \_____ \____/
- 169 名前:デフォルトの名無しさん [2012/08/21(火) 14:45:06.26 ]
- rubyワラタ
- 170 名前:デフォルトの名無しさん mailto:sage [2012/08/21(火) 17:15:01.07 ]
- 3Dのゲームを作りたいのですが、ツクールのように作成できるツールはありませんか?
C言語の基礎くらいなら勉強しました。
- 171 名前:デフォルトの名無しさん mailto:sage [2012/08/21(火) 17:34:57.45 ]
- >>170
ほらよ tkool.jp/products/rpg5/
- 172 名前:デフォルトの名無しさん mailto:sage [2012/08/22(水) 23:58:34.51 ]
- 2Dアクション作るのにオススメの参考書とか教えて下さいな
- 173 名前:デフォルトの名無しさん mailto:sage [2012/08/23(木) 00:06:25.78 ]
- 2chはクズしかいない
- 174 名前:デフォルトの名無しさん mailto:sage [2012/08/23(木) 07:33:04.56 ]
- >>172
Programming 2D Games www.amazon.com/dp/146650868X/ 主に大学生を対象に書かれている。 ゲームエンジンを自作するところから、当たり判定処理などは当然として、 エフェクトやサウンド関係、ネットワーク処理まで扱っている。
- 175 名前:デフォルトの名無しさん mailto:sage [2012/08/23(木) 13:04:28.97 ]
- 日本語の本ないんですか?
- 176 名前:デフォルトの名無しさん mailto:sage [2012/08/23(木) 13:40:11.74 ]
- うらおのWebサイトでも見てろ
日本語の初心者向けゲーム開発本で当たりは無いよ だいたい初期化の呪文確認本
- 177 名前:デフォルトの名無しさん [2012/08/23(木) 14:48:11.83 ]
- あ〜あ…
- 178 名前:片山博文MZボット ◆0lBZNi.Q7evd [2012/08/23(木) 16:28:33.17 ]
- いいのがないと思ったら、自分で出版しなさい
- 179 名前:uy [2012/08/23(木) 17:57:26.81 ]
- 俺様的にC++での開発ならまずスマートポインタの作り方を本にかくべきだと思うけど手動でメモリ管理してるような書籍しか見たことない
ゲーム本かいてる奴のHP見に行ってももゲームなんて公開されちゃいないし手動解放してる箇所がソース中一カ所でもあったら初心者乙 って言いたくなるスマートポインタすらなかったらまず規模のあるゲームはバグだらけになって開発のスタートラインにすらたてない手動管理と手動解放はちがうだろかす
- 180 名前:uY mailto:sage [2012/08/23(木) 18:29:18.77 ]
- 作り方書いてある本はカス
使い方で十分
- 181 名前:デフォルトの名無しさん mailto:sage [2012/08/23(木) 18:30:53.25 ]
- タイムマシンの作り方
|

|