オブジェクト指向は本当に正しいのか? → YES!×2
レス数が1000を超えています。これ以上書き込みはできません。
0001デフォルトの名無しさん
2012/05/04(金) 18:14:59.06オブジェクト指向は本当に正しいのか?
http://toro.2ch.net/test/read.cgi/tech/1331443855/
0002uy
2012/05/04(金) 18:17:44.94Firefoxからパーサ部分を取り出すのは10分で出来る
ミサイルとホーミングミサイルを多態化で表現してくれる奴まち
オブジェクトの状態の変化とは、ライフポイントの変化のことである
クラスとBoostとCOMの関係性とは
0003デフォルトの名無しさん
2012/05/04(金) 18:18:27.08Firefoxからパーサ部分を取り出すのは10分でコピーペースト出来る
なw
0004デフォルトの名無しさん
2012/05/04(金) 18:20:15.78773 名前:uy[sage] 投稿日:2012/05/04(金) 01:57:56.50
あ、変化をライフポイントって文字入れてみたらしっくりきたwwwwww
これは俺の負けでいいわwwwwwwwww
>>673
>自分自身をライフポイントを変化させる、新しいオブジェクトを生成する
>>668
>オブジェクト自身がライフポイントを変化する。
>オブジェクトのライフポイントを変化と生成に対応していれば、なんでも対応できるよ。
>>655
>それぞれ衝突情報を元に、自分自身のライフポイントを変化を記述すれば良い。
>自分自身がライフポイントを変化してもいいし、新たなオブジェクトを生成して
----
774 名前:デフォルトの名無しさん[sage] 投稿日:2012/05/04(金) 01:58:08.22
0005デフォルトの名無しさん
2012/05/04(金) 18:23:00.831000ならuyは童貞wwww
998 名前:デフォルトの名無しさん[sage] 投稿日:2012/05/04(金) 18:22:09.64
>>994
継承でいいのかなー?
999 名前:デフォルトの名無しさん[sage] 投稿日:2012/05/04(金) 18:22:29.40
uy、図星だからって必死だなw
1000 名前:uy[sage] 投稿日:2012/05/04(金) 18:22:31.62
| |/)+}∠..ノ: :+:∠: : +: ∠: :+:!: :.! |
| Lノノ: :+: :(.../ゝ: : /_:_:_:_.ノ∠L |
| ノ 厂 ̄ ̄ ̄厂 ̄ノ ハハ:.!ヽ: : : : :\|
. |/ ー=彡' : : : :/: : :/:.:./ ! `トハ l: :.厂 !
. / /: : ノ: /: :∠../∠厶イノ 」ノ__」ハハ. | ハァーーーーー?
/ 厶イ: ://______ー ´弋ン{ |/
. / |: : { ヽ 弋Zソ ー''^| |,′
/ /|: : | ^''ー一' , 八 .!
. / /‐|: : | /、___, /|:::ヽ', __ .、
{`ヽ`ヽ. /ム|: : |`ト . { ∨ ..イ: |::::::/) // ノ
. (`ヽ「ヽ \i`ヽ /く:.:.:!: : !、\` ヽ..__,ノ .イヽj: :|:::/ ムイ/ /ノ
\ | i ヽ \ \.> |: : |:.\ ` ーニ二厂「 r=ミ.|: :|/ //ノ
/∧ ゝ、 ヽ.!: : ! :.:.:.\ イ:.: :l Vノヘ: :| /
. // \ }: : l:.:.:.:.:.:.:.\ ノ:.:.:/ \|: :| . イ
0006デフォルトの名無しさん
2012/05/04(金) 18:23:54.470007uy
2012/05/04(金) 18:25:02.680008デフォルトの名無しさん
2012/05/04(金) 18:26:28.480009デフォルトの名無しさん
2012/05/04(金) 18:26:52.29アニオタなのかよ Orz
0010デフォルトの名無しさん
2012/05/04(金) 18:27:29.930011デフォルトの名無しさん
2012/05/04(金) 18:28:14.19>>662
いや想定しろよw
どんだけ経験ないのにしゃべってんだよ
雛形のスケルトンプログラムっていうのがあるよな?
ゲームを作る時には、基本的にそこからやっていくわけだけど
何度も作っていくうちにその雛形は進化していかなきゃおかしい
経験がないから「想定」が甘いんですよ
0012 ↓
2012/05/04(金) 18:28:49.11あ、変化をライフポイントって文字入れてみたらしっくりきたwwwwww
これは俺の負けでいいわwwwwwwwww
0013デフォルトの名無しさん
2012/05/04(金) 18:30:48.160014uy
2012/05/04(金) 18:31:52.810015デフォルトの名無しさん
2012/05/04(金) 18:33:29.66そんなんで特定になるわけないだろう
0016デフォルトの名無しさん
2012/05/04(金) 18:33:42.230017uy
2012/05/04(金) 18:35:38.130018デフォルトの名無しさん
2012/05/04(金) 18:35:51.900019デフォルトの名無しさん
2012/05/04(金) 18:36:07.04まさに
> どんだけ経験ないのにしゃべってんだよ
0020デフォルトの名無しさん
2012/05/04(金) 18:36:33.96ただし、OOPL以外で使うのは面倒。
0021デフォルトの名無しさん
2012/05/04(金) 18:37:18.24ただし、OOPL以外で使うのは面倒。
さらに、OOPL以外で作るのも面倒。
0022デフォルトの名無しさん
2012/05/04(金) 18:40:30.99同意。
未だ実際の事件現場に関わった事がないようだな。
0023デフォルトの名無しさん
2012/05/04(金) 18:42:50.540024デフォルトの名無しさん
2012/05/04(金) 18:43:20.840025デフォルトの名無しさん
2012/05/04(金) 18:44:44.170026デフォルトの名無しさん
2012/05/04(金) 18:46:17.010027デフォルトの名無しさん
2012/05/04(金) 18:46:58.40これから始まるんだよヽ(;▽;)ノ
0028デフォルトの名無しさん
2012/05/04(金) 19:01:29.320029uy
2012/05/04(金) 19:02:41.45>VC++は使わないのでよくわかりませんね
↓
>>26脳内変換
↓
VC++知らない
0030デフォルトの名無しさん
2012/05/04(金) 19:05:17.58参加資格:読解力が欠落していること
0031デフォルトの名無しさん
2012/05/04(金) 19:10:07.47COMをVC++から使うときの面倒さを知らない点で
VC++碌に知らないって判断されたんだよ
本当に読解力ないなw
0032uy
2012/05/04(金) 19:15:24.57>COMをVC++から使うときの面倒さを知らない点で
だったらRubyから使えばいいじゃん・・・w
http://jp.rubyist.net/magazine/?0003-Win32OLE
何を言っているんだ?
なぜわざわざ面倒なオワコン言語とオワコン開発環境で、面倒な方法でCOM使わなくちゃいけないんだ?
0033デフォルトの名無しさん
2012/05/04(金) 19:17:46.30”面倒”ってw
0034デフォルトの名無しさん
2012/05/04(金) 19:19:01.97そんな理由でRuby選ばねえよ。VC++言ってる時点でわかれ
Rubyはあくまでおまけ道具。それがRubyの立ち位置だ
0036デフォルトの名無しさん
2012/05/04(金) 19:26:39.300037デフォルトの名無しさん
2012/05/04(金) 19:27:51.250038デフォルトの名無しさん
2012/05/04(金) 20:01:20.96オマエは現実世界から乖離しているなぁ。
パンが無けりゃケーキを食べれば良いのと同じ発言だぞ。
現実世界では開発環境を決めるのはお金を出すクライアント様だ。
0040デフォルトの名無しさん
2012/05/04(金) 20:12:47.75プロは銭儲けに繋がらないRubyでOOなんてしないからな。
Rubyやる時間があれば飯にありつけるjavascriptをやるw
0041デフォルトの名無しさん
2012/05/04(金) 20:20:49.78いつから仕事の話がマ板になったんだ?
0042デフォルトの名無しさん
2012/05/04(金) 20:22:34.31わかってるの?
2ちゃんねる初心者かい?
0044デフォルトの名無しさん
2012/05/04(金) 20:25:25.62そんなにいぢめてやるなw
0045デフォルトの名無しさん
2012/05/04(金) 20:34:24.54お前の大好きなRubyを作ったのも
プログラマだよ。
いいのかい、そんな事言ってw
0046デフォルトの名無しさん
2012/05/04(金) 20:35:20.26オマエは世の中が超不況なのを知らないのか。
親のスネかじりは良いな。
0047デフォルトの名無しさん
2012/05/04(金) 20:36:40.610048デフォルトの名無しさん
2012/05/04(金) 20:46:48.65たぶん以前から精神か脳に何らかの問題を抱えてると思うよ
最近はまだ安定してるほうだと思われる
0049uy
2012/05/04(金) 21:08:05.400050デフォルトの名無しさん
2012/05/04(金) 21:09:25.440051デフォルトの名無しさん
2012/05/04(金) 21:10:45.470052デフォルトの名無しさん
2012/05/04(金) 22:07:44.18オレたちゃデジタルドカタだ。
0053デフォルトの名無しさん
2012/05/05(土) 04:42:10.70「誰かに全部書いてもらわないと誰かに説明してもらわないと理解できない」んじゃ
理解しても意味ないだろ。仕事にならん。
要は「誰がそのコードの管理者であるべきか」だよ簡単だろ
んで正解は1つじゃない
そういう状況に応じた最適解を早く見つけるスキルこそ
オブジェクト指向を理解するってことなのさ
0054デフォルトの名無しさん
2012/05/05(土) 09:36:07.03ソフトバンクの自然エネルギー事業会社SBエナジーから太陽電池モジュールの供給企業に選定されたと明らかにした。
SBエナジーが建設を進める徳島県内の2カ所の太陽光発電所に
太陽電池モジュール5600キロワット分を供給する。
SBエナジーは徳島空港臨空用地と小松島港赤石地区に
出力規模がそれぞれ2800キロワットの発電所を7月までに建設する計画。
ハンファソーラーワンの関係者によると、日本の太陽光発電市場で
海外の企業が太陽電池モジュールを供給するのは初めてという。
ソース:
http://japanese.joins.com/article/525/151525.html?servcode=A00§code=A10
0055デフォルトの名無しさん
2012/05/05(土) 18:00:55.480056デフォルトの名無しさん
2012/05/05(土) 18:07:00.700057デフォルトの名無しさん
2012/05/05(土) 18:12:03.020058デフォルトの名無しさん
2012/05/05(土) 18:16:43.60その中で呼ばれる関数では関数型を使う。
0059デフォルトの名無しさん
2012/05/05(土) 18:18:00.400060デフォルトの名無しさん
2012/05/05(土) 19:22:29.520061デフォルトの名無しさん
2012/05/05(土) 19:30:16.33kwsk
0062デフォルトの名無しさん
2012/05/05(土) 19:32:41.49普通にオブジェクト指向で書いたほうが素直だし保守しやすい罠
0063デフォルトの名無しさん
2012/05/05(土) 19:55:02.240064デフォルトの名無しさん
2012/05/05(土) 22:39:19.840065デフォルトの名無しさん
2012/05/06(日) 07:26:59.340066デフォルトの名無しさん
2012/05/06(日) 08:39:10.950067デフォルトの名無しさん
2012/05/07(月) 15:50:02.41頭が悪い奴は使わないでください。
0068デフォルトの名無しさん
2012/05/07(月) 16:18:17.660069デフォルトの名無しさん
2012/05/07(月) 20:35:46.560070デフォルトの名無しさん
2012/05/07(月) 21:34:33.70また何の役にも立たない言葉引っ張ってきたもんだ
0071デフォルトの名無しさん
2012/05/07(月) 23:40:51.610072デフォルトの名無しさん
2012/05/07(月) 23:48:14.880073デフォルトの名無しさん
2012/05/08(火) 00:15:49.82確かにオブジェクト指向ネタで公理的意味論は何の役にも立ちません。
しかし契約による設計は静的型付けと同じようにバグの発見に役立ちます。
とある契約の備忘目録。契約による設計(Design by Contract)で信頼性の高いソフトウェアを構築しよう。
http://d.hatena.ne.jp/zecl/20100131/p1
0074デフォルトの名無しさん
2012/05/08(火) 00:29:38.98DbCが役立つことが、このスレにどんな関係があるんだ
0075デフォルトの名無しさん
2012/05/08(火) 00:39:50.130076デフォルトの名無しさん
2012/05/08(火) 10:36:47.160077デフォルトの名無しさん
2012/05/08(火) 12:25:20.65ミサイルとホーミングミサイルってどう違うの?
0078デフォルトの名無しさん
2012/05/08(火) 13:50:49.95ホーミングミサイルはその派生クラスのひとつ、じゃねえの?
0079デフォルトの名無しさん
2012/05/08(火) 22:55:38.54MissaileBaseという抽象クラスがあって
MissaileBaseを継承したMissaleと
MissaileBaseを継承したHomingMissaleを
作るかもしれないな。
0080デフォルトの名無しさん
2012/05/08(火) 23:51:46.090081デフォルトの名無しさん
2012/05/08(火) 23:52:56.150082デフォルトの名無しさん
2012/05/09(水) 00:05:07.260083デフォルトの名無しさん
2012/05/09(水) 00:06:50.860084デフォルトの名無しさん
2012/05/09(水) 08:53:16.180085デフォルトの名無しさん
2012/05/09(水) 10:06:23.03俺はその場合でもMissileでなくStandardMissileとかにするなあ
Missileだと総称と紛らわしいから
0086デフォルトの名無しさん
2012/05/09(水) 13:38:42.770087デフォルトの名無しさん
2012/05/09(水) 14:32:10.05そういう話なら"無誘導"いらなくね?
0088uy
2012/05/09(水) 21:07:32.71ミサイル(笑)とかロケット(笑)とかセンスを疑うわ
0089uy
2012/05/10(木) 01:54:24.080090デフォルトの名無しさん
2012/05/10(木) 07:41:07.55これから通院ですか?お大事に。
0091uy
2012/05/10(木) 12:47:09.220092uy
2012/05/10(木) 14:09:58.51ホーミングしかつくってねーわ
レーヴァティンうめえええええええええええええええええええええええええええええええええええええええええええ
0093uy
2012/05/11(金) 02:06:15.03二週間かけてようやくホーミングみさいるをOOで作れた
俺すげえ
0094uy
2012/05/12(土) 00:48:11.78いつの間にか残っている。ボケたかな
0095デフォルトの名無しさん
2012/05/12(土) 18:51:41.00その基本さえあれば何のパターン使うか自ずと分かる。
0096デフォルトの名無しさん
2012/05/12(土) 19:21:45.850097デフォルトの名無しさん
2012/05/12(土) 21:09:07.320098uy
2012/05/13(日) 13:53:19.10そのレスも
どうでもいいから
グラフIFが欲しい
http://toro.2ch.net/test/read.cgi/tech/1335361193/854-n
誰かじっそうたのんだ
0099デフォルトの名無しさん
2012/05/13(日) 14:29:58.19他人に期待するのはIT土方のすること
0100uy
2012/05/13(日) 15:50:57.360101uy
2012/05/14(月) 02:38:57.78クズの集まりだな
0102uy@本物
2012/05/15(火) 17:29:16.03もういいから
ほうっといてください
ゲーム製作 12日目
あ、順調ですよ
多分これ、最低でも2,3ヶ月かけることになる(プログラム関連だけで)
uyの名前で公開はしないから、
はい
バイバイ
0103デフォルトの名無しさん
2012/05/15(火) 17:54:46.660104デフォルトの名無しさん
2012/05/15(火) 18:11:40.70uyという人物がいるのではなく、これまでのuyらしき人物による書き込みやuyに対する噂から形成されたuyのイメージそのものがuyの定義である
そうすれば本物だ偽者だというのは問題ではなくなる
0105デフォルトの名無しさん
2012/05/15(火) 22:08:59.18なまえをuyにするのが作法
0106本物の伝説のuy
2012/05/16(水) 05:01:48.14俺のここ12〜15日間の生活スタイル
朝、4時起きる
ぷろぐらみンぐ開始する、→12時、昼食べながらぷろぐらミんぐする
15時ごろ、ちょっと疲れたのでコンビニにでもいく
15時→22時、ラストスパートかけてぷろぐらミんぐする→風呂&夕飯たべてすぐ寝る23時→4時〜5時 起きる
これで衰弱しないわけないじゃんアホなの俺本当は7〜8時間ねないとダメなはずなのに、
頭を活発に働かせすぎてるせいか、長く眠れない
0107uy
2012/05/16(水) 05:23:45.12やばい
でも設計の上で、実際に書かなければならない手続きコードは完璧とは程遠くなる
その処理部分の手続きコードをどこまで簡略化するかだ
君たちはその、手続きコードでかいたほうがいい処理部分を、何故かオブジェクト指向で書いたりするけど
それは間違ってるよ
とある処理を書く為に、新しくクラスやらを何個も作ってメソッドを用意して、OOを考えてなんて
そんなの開発が遅すぎる
オブジェクト指向、などという概念を入れるのは、「設計全体」だけだ
枝葉の末端のコードは、一番最適なのはどうせ結局OOも関数型もない手続き型のコード
0108デフォルトの名無しさん
2012/05/16(水) 05:45:24.01オブジェクト指向は保守と再利用なんだよ
0109uy
2012/05/16(水) 05:56:28.90せいぜいファイルorモジュール分け、クラス分け、処理分け
だけやってれば出来る
再利用に関しては、熟練すればどんな形のコード書いていようと再利用は出来る
0110uy
2012/05/16(水) 06:15:21.08@つきのメンバ変数使わなくちゃいけなくなってソース汚れるんだよね
そこをRubyは認めなければならない
lambdaを上手く使うと@つかない変数使って、クラスで書くのと同義のことは出来るから、俺はライブラリの半分はそうかいてるけど
ソースがカオスになってる
よく考えないで書くと、クラスになって@使いまくりの(俺から見たら)ひどいソースになる
客観的に見たら普通のOOだけどなそれ
Rubyでself.extended とか
object.define_singleton_method :func do 〜 end
なんて直に呼び出して使ってる奴は俺くらいだと思う
0111uy
2012/05/16(水) 06:31:01.75ライブラリの一部はクラスではなくこうなってる
つか今見直したけどわざわざOpenStructにsingleton_method追加してるのはアレか
lambdaの再帰が出来ないからこうしてるんだった
lambdaの再帰マジ重要
0113uy
2012/05/16(水) 08:42:41.501、ソースの質を上げる
2、自分自身がそのソースコードの全体把握に努める
結局どんなソースコードをかいたとしても、2が優れていれば別に何の問題もなく作業は進む
むしろ逆に、1ばかりをどうにかしても、2がダメであれば何やってもダメだ
100万行のソースコードを1年見続けてきた奴と、
↑のソースを50万にまで減らしたしたソースを1ヶ月しかまだ見続けていない奴
どちらが全体把握しているというのか
多分前者だよ
0114デフォルトの名無しさん
2012/05/16(水) 12:47:03.620115uy
2012/05/16(水) 13:58:46.51uniq_sym
「プログラム中、絶対にかぶらない文字列(シンボル)」を返す関数を
オブジェクト指向的に書いてみてよ
俺様の実装は実は中途半端
自分1人で使う分には良いけど、本当はこれだとかぶる可能性もある
:misaka_0001
というシンボルを uniq_sym で作ったとしても、
uniq_symじゃない場所で :misaka_0001 をもしかしたら作ってしまっている可能性があるから
これではダメなんだ
だけどSymbol.all_symbolsをみて新たに生成するとかしたら遅いじゃん
0116デフォルトの名無しさん
2012/05/16(水) 14:06:22.560117uy
2012/05/16(水) 14:09:48.36かけよコラ
ちなみにlet over lambdaに”文字列”版の答えは書いてあったな
シンボルで、高速にそれを行うにはどうしたらいいかちょっとまだ見えてこない
別に完璧じゃなくても動いてるから委員だけど
0118uy
2012/05/16(水) 14:14:32.42木構造でのタスク生成のとき、タスクにつける名前
だから、同じ階層に同じ名前がないシンボルであれば
>>111
こういう風にrand 10000 やって後は、同名のシンボルがないかチェックしてから
生成する感じでとりあえず何とかなってる
でも全階層中、どこのシンボルとも絶対にかぶらないシンボルを返すメソッドというのはまだ作れていない
なくてもいいんだけどあるとちょっとうれしい
>>111は中途半端実装だからあまり積極的には使ってない
あーメモリ番地とかでシンボル作る手もあったか
0119デフォルトの名無しさん
2012/05/16(水) 14:20:00.42bashでの$$、DBでのsequence、tmpfile()、mutex&static変数カウンタ、javaでnew Object()をキーに、
とか用途で変わると思うけど
0120デフォルトの名無しさん
2012/05/16(水) 14:33:46.08p "test_" + A.uniq_sym()
p "rrrr_" + A.uniq_sym()
p "rrrr_" + A.uniq_sym()
p "rrrr_" + A.uniq_sym()
test_1
test_2
rrrr_3
rrrr_4
rrrr_5
でええやん、なんで連番にしたいん?
0121デフォルトの名無しさん
2012/05/16(水) 14:34:57.650122120
2012/05/16(水) 14:54:05.55>uniq_symじゃない場所で :misaka_0001 をもしかしたら作ってしまって
何でだよw
指定API使う保証無いなら文字列じゃなくてクラスにしろよ
UUIDクラスってあるじゃん、そんな感じで
UYIDって
0123uy
2012/05/16(水) 15:09:52.86ゲームでエフェクトオブジェクトを作る時などに
裏でエフェクトのひとつひとつにユニークな名前をつけてる
ハッシュで管理してるから、名前がかぶると同じオブジェクトとして扱われてしまう
>>122
プログラム中にuniq_symとは関係なくシンボルを使う事はあるだろ
そのどれともかぶらない物を生成したい
0124デフォルトの名無しさん
2012/05/16(水) 15:12:55.48ここまでの話だと、無意味どころか余計遅くなる使い方をしてる可能性高いなw
0125uy
2012/05/16(水) 15:13:23.70少しはこの問題を知っているようだな
俺様設計はプログラム全体が1つの木構造だから
その木構造の範囲の中でしか、そのシンボルを必要としない上に
オブジェクトが破棄されたらシンボルも破棄されるから俺様設計ではシンボル名にメモリ番地割り当てても大丈夫だという事に気づいた
それでもuniq_sym以外で生成したシンボルとはかぶる可能性はあるけど
rand(10000)とかやるよりはマシなアルゴリズム
0126デフォルトの名無しさん
2012/05/16(水) 15:17:18.37それにデータは木構造じゃないのかよ
フラットなハッシュに全部ぶち込むくらいなら普通に参照のまま扱えよw
0127uy
2012/05/16(水) 15:19:05.45混入しねーよ
完璧なアルゴリズムじゃないけど
俺様1人が使う分には何とかなってるって言ってるだろ
ただ気持ちよくないってだけ
木構造だっつってんだろ
ハッシュの木構造
0128uy
2012/05/16(水) 15:22:08.11Object[:game_data].task[:scene_data].task[:option]
Object[:game_data].task[:scene_data].task[:hiscoe]
Object[:game_data].task[:debug].task[:main]
Object[:game_data].task[:debug].task[:sub]
こういう事だよ で、エフェクト周りは
Object[:game_data].task[:scene_data].task[:menu].task[:effect_1〜10000辺りで適当に生成]
こういうのがずっとネストしていくのが俺様のプログラミング
0129デフォルトの名無しさん
2012/05/16(水) 15:25:08.49・・・って、感じみたいだなあ。
ちゃんと調べてみればいいのに?
0130uy
2012/05/16(水) 15:25:31.08:player
とかまでuniq_symでシンボル生成して
:player_3254
とかなっちゃうとアクセスしにくいから
手動で名前付けをするのだよ
で、そういうのがあるから
def uniq_sym str = "_rb_uniq_" , n = rand(10000)
tmp = "#{str}_#{n}".to_sym
if self.task.include? tmp
return uniq_sym str , n + 1
else
return tmp
end
end # def
こうやって、現在のtaskが持っているシンボルとの確認を取らないといけなくなって、わずかに無駄処理をしてる
0131デフォルトの名無しさん
2012/05/16(水) 15:25:37.160133uy
2012/05/16(水) 15:32:43.27表示不可能文字を混ぜた文字列を作って、絶対にかぶらないシンボルを生成してたはず
ただの表示不可能文字だともしかしたら万が一作られてしまう可能性もあるから
その可能性をなくす為に
バックスペースの制御文字を混ぜたシンボルだっけ? よく覚えてないが
文字列だったらそうやってかぶらないシンボルを作る手段はある
0134デフォルトの名無しさん
2012/05/16(水) 15:42:28.63コードに出てくる部分を見ただけじゃ、本当の構造を知った事にはならないんですよ。
低レベルな言語だと言われるC言語ですら、ある程度の抽象化が入ってるしさ。
0136デフォルトの名無しさん
2012/05/16(水) 15:45:46.56uyid("player") -> uplayer
uyid() -> y1
uyid() -> y2
uyid("y1") -> uy1
0137デフォルトの名無しさん
2012/05/16(水) 15:53:07.70だれうま
0138デフォルトの名無しさん
2012/05/16(水) 15:53:46.66まあ、別に>>128の構造でも、(遠回りなだけで)ハマったりはしないだろうけど、実際の中身を知ればもっといい方法が思いつくと思うんよ。
そろそろC言語で学んでみない?
かなり低レベルな言語で、実際の処理や構造を想像しやすいから、色々な最適化手法を学べる。
きっと今まで以上にプログラミングできるようになるだろうよ。
・・・なんだかんだでヒントあげまくってるな俺ww
0139uy
2012/05/16(水) 15:56:06.700140uy
2012/05/16(水) 16:06:01.40そんなアニメの仮想現実内の言語だか、古代言語だかをあげられましても
今を生きるuyにとって関係なさすぎ
http://www.ftnk.jp/~fumi/cl/2007-11-24-1.html
RubyってたったこれだけでTCP通信できるんだぜ、
おそらくネット対戦のやり方は、リプレイみたいにリアルタイムで入力データを保存しつつ
あとはゲームカウントを、お互いにリンクさせて同期させる感じかね
オブジェクト指向は今日も涙目
0141デフォルトの名無しさん
2012/05/16(水) 16:10:48.140142デフォルトの名無しさん
2012/05/16(水) 16:42:59.04普通はシンボルが欲しいのなら、シンボルってクラスを作るよな。
シンボルが欲しいのだから。
0143デフォルトの名無しさん
2012/05/16(水) 16:46:59.370144デフォルトの名無しさん
2012/05/16(水) 17:09:30.62同値なら同一参照になるやつ
これの実装のためプールを持ってるだろうけど
弱参照みたいな仕組みでちゃんとGC対象になるんだろうか
ならないならシンボル自動生成に伴ってメモリ消費が増え続けるような気が
0145144
2012/05/16(水) 17:13:43.820146uy
2012/05/16(水) 17:17:26.67現実世界の話をして欲しい
>>http://www.ftnk.jp/~fumi/cl/2007-11-24-1.html
俺ならこうする
TCPServer.create_thread 12345 do | gs |
addr = gs.addr
addr.shift
printf("server is on %s\n", addr.join(":"))
loop do
s = gs.accept
print(s, " is accepted\n")
puts(s.gets)
print(s, " is gone\n")
s.close
end
end
0147uy
2012/05/16(水) 17:20:00.55メモリ増え続けるとかいっても
100万作っても別に平気だろ
問題は作りすぎると遅くなるライブラリとかがあるとかいう話は聞いた
しかしそんなものは遅くなってから考える
0148uy
2012/05/16(水) 17:26:12.09でみてみると1921個のシンボルが最初から宣言されてる
ライブラリ等のヘッダを全て読み込んだ後だと
4000個以上になった
ヘッダでこれだけ使ってるなら10万個くらいは宣言しても平気だろ多分
0149デフォルトの名無しさん
2012/05/16(水) 18:58:13.270150uy
2012/05/16(水) 19:58:59.00A{
B_loop {
Dの処理
}
C_loop {
ここにもDの処理が欲しい
}
}
ていうか無理なんだよ
lambdaだから、CのところでDの処理が欲しいとかいっても、Bのところが最低でも1回は実行されてない限り
そもそも、オブジェクトやメソッドが作られてないからCからはDを参照しようが無い
これは木構造になってる設計を視覚化したものをそのままソースコードに当てはめるのが目的で
こんな事やってるから
崩してしまうと色々と意味がなくなる
0151uy
2012/05/16(水) 20:04:07.69最初に全部のオブジェクトや処理をlambdaで作っておいて
最後にそのlambadで木構造のソースを作る形にすればメソッド呼び出しでも何でも出来るけど
流石にそこまでやろうというやる気はない
それは今度だな・・・・・・・・・・・・
0152uy
2012/05/16(水) 20:15:03.66ゲーム内容なんて何にも出来てないのにネットワーク接続の仕組みはつくったった
テキストエディタにログが表示されて流れるよwwwwwww
ゲームにテキストエディタなんて実装してんじゃねえよしねカス
クソゲのネット対戦ができるよ!やったね!wwwwwwwwwwwwwwwwwwwwwww
0153uy
2012/05/16(水) 20:42:11.18今日はちょっと作業進み過ぎてうれしくてついやってしまった
もうUPはしない
今まで1日300行程度しかソース増えてなかったのに1500行もいきなり増えて5000行に到達
ソースが増えていくのもこの辺りまではうれしい
1万超えると増えるのが鬱陶しくなる
ファイル数は40を超えた
requireしているファイルは全てで50くらい
やばいよこれ
ゲームの中身作り始めたらrequireするファイル数200くらいいきそう
完成に向かってるはずなのに仕様がどんどん膨らんで完成が遠くなってる気がする
正直ここまでの規模のプログラム書いて
なおかつちゃんとまとめられてるから、OOとかもう何もかもどうでもいい
絵と音楽とストーリーと、その他色々すべて
とにかくプログラム以外の工程が遅れすぎてる
俺は何を作ってるんだろ、これ何
もうだめだ
0154uy
2012/05/16(水) 21:17:33.74それを改修しないと、まともに他所への流用は出来ない
今日一晩ねながら考え、明日改修する
OSのAPI使うとかなしで作る場合に
オブジェクト指向厨だったらどうやってエディタつくんの?
今のところ今のゲームプログラムでの必要なエディタは、
1 数字しか入力できないエディタ
2 IPとport番号しか入力できないエディタ
3 ハイスコアで名前入力しか出来ないエディタ
などが思いつく
俺様が今思いついているのは
キーボードの1個1個をコマンドとして考えて作る方法
具体的には、「Z」キーがおされたら、該当メソッドに
lambda do
文字addメソッドを呼び出し、「z追加」
end
などというlambda(コマンド)を送るような感じの設計
なんか俺もうlambdaのない言語でプログラミング絶対に出来ないと思う
lambda使ってない奴ってlambdaなしでどうやってプログラミングしてんの・・・
0155デフォルトの名無しさん
2012/05/16(水) 21:21:48.350156uy
2012/05/16(水) 21:41:26.33リアルでもネットでも会話しないのはつらいんだよ
ああいいよもうこねえよ
0157uy
2012/05/16(水) 21:46:56.58一日中、絵を描いてるだけなら別に人恋しいとかなくなるよ
不思議だよね
究極ぼっちはプログラマじゃなくて絵師
0158uy
2012/05/17(木) 01:17:21.60俺って根性ゼロ
次にまた俺がレスするようなことあったら頃してくれ
0159uy
2012/05/17(木) 07:05:22.41誰も何も書いていないな
オブジェクト指向厨はエディタ作れないって事でいいですかね?
俺は一晩かけて構想をまとめてきたぜ
まず、エディタのアクションノメソッドを作る
そして、キーと、そのアクションをつなぎ合わせる形を思いついた
けど、1キーじゃなくて、 SHIFT+INSERTとか、そういうのも必要だから
やっぱり、lambdaでIF文のような条件を送る事になった
やっぱりlambdaのない言語ってどうやってプログラミングしてんの?
0160uy
2012/05/17(木) 07:08:37.41追記、
[VK_SHIFT , VK_INSERT]とかいう配列を送るのでも大丈夫な気もするが
キーボードって、押しっぱなしの時の連打性能とか
押しっぱなしにしたときに何ミリ秒後に連打されるかとか細かいものが必要なんだ
そこら辺まで入力関連関数は既に作ってあるのでカスタマイズできる
楽に実装するにはlambdaでIF文の条件を送るのが最適だった
オブジェクト指向涙目.............
0161デフォルトの名無しさん
2012/05/17(木) 07:59:04.47漢字変換もundoもできないもの作ってどうすんのかね
1回くらい最後まで完成したの作ってみろよ
0162uy
2012/05/17(木) 08:39:41.77エディタっつうか
ゲーム内のテキストBOX
漢字変換はともかく、アンドゥリドゥとかそんな実装簡単なものはどうでもいい
つうか、やたら変なデータを入力されても困るから
ただのテキストボックスじゃなくて、色んな入力制限をかけたテキストボックスにしなくちゃいけないんだよ
0163uy
2012/05/17(木) 09:19:54.81ちょっとアルゴリズム的に難易度上がるとすぐに話題についてこなくなる
そりゃそうだよ
手続き型で書くよりも、オブジェクト指向は難しいし、時間がかかる
君たちは「手続き型」で書く前の段階からいきなりwww「オブジェクト指向」で書こうとするから
ちょっと難しいアルゴリズムなると全然何も出来なくなる
オブジェクト指向というのはリファクタリングの1つに過ぎない
最初は手続き型でソースをかいて、
必要であれば、リファクタリングをするだけの事
一度オブジェクト指向(笑)なんてもので変な形に纏め上げてしまうと
後からのリファクタリングが困難になる事に気づくが良い
0164uy
2012/05/17(木) 09:50:55.310165uy
2012/05/17(木) 09:56:58.570166uy
2012/05/17(木) 12:21:38.01俺の方が正しいのに
0167uy
2012/05/17(木) 12:39:48.19リファクタリングが困難になる
だからオブジェクト指向は使いものにならない
と結論づけていいはずだ
0168uy
2012/05/17(木) 12:40:47.81俺天才
0169uy
2012/05/17(木) 14:30:06.550170デフォルトの名無しさん
2012/05/17(木) 16:15:58.530171デフォルトの名無しさん
2012/05/17(木) 16:19:08.780172デフォルトの名無しさん
2012/05/17(木) 18:03:57.290173uy
2012/05/17(木) 19:03:15.96152 でうpしてる http://s1.gazo.cc/up/s1_23360.jpg
どうみても自前だろ
今できるのは文字入力、バックスペースキー、デリートキー、SHIFTおして大文字
HOME END とかCTRL+HOME CTRL+ENDの動き
PageDown PageUP あとクリップボード貼り付け
マウスは対応してない
これ以上機能を追加する前に改修して完全なるカスタマイズ性能にしないといけない
でも最低限のカスタマイズは出来るようになったから、しばらくエディタの開発はここでやめて
もう今はゲームの別の部分の作成に入ってる
0174uy
2012/05/17(木) 19:11:31.03あのソースからの流用
その気になればウィンドウシステムも持ってこれるけど
あれってハッシュの並び替えによってウィンドウの重なり表現してるヤバめのソースだから
再実装したい
流石にいくらRubyといえどもネストされまくったイテレーション中のハッシュの並び替えとかすると
意味不明な現象が起こる、俺様が理解していないのかRubyの動作がおかしいのか、突き止める前にやめた
ウィンドウシステムもってくるなら再実装しなくちゃいけないからそれもまた今度
ゲーム内エディタとして完成させるならやっぱりウィンドウ化してマウスで動かせるようにしたい
連日連夜Programing一日中やってるせいで流石に体力がキてる
今日は2chで遊びすぎたのもあるけど全然さぎょうすすんでねえアホだ俺
0175uy
2012/05/17(木) 19:25:36.18自作のウィンドウシステムの内部で動くエディタの話とかになると
絶対ついてこないよね
ああもういいよ
別にDirectX直で触るなら、そういうライブラリではじめっからあるし
俺はただ自分でアルゴリズムを解いて、自作のものを動かしたいだけの話
エディタはeval使っていくとかなり短いコードで実装できる気がするんだよな
その気になれば2chに書き込める文字数以内に収まるかもしれない
こういうネタには、絶対についてこないんだろ、GUIアプリっていったらC#やJAVAでのポトペタしかできないもんねお前ら
ああ、いいよ 一人でProgramingするので
役立たず共が
0176デフォルトの名無しさん
2012/05/17(木) 19:38:54.31役立つことやれよw
0177デフォルトの名無しさん
2012/05/17(木) 19:48:45.27おれらが高校生の時はすでにシューティングゲーム作って雑誌に載ってた
0178uy
2012/05/17(木) 21:18:27.28そもそも、俺がプログラミングするのは目的が違うし
俺が自作ゲーム作って、それを雑誌で紹介されたり、同人ゲとかだして一儲けしたいとか思ってるように見えるのか?
俺は有名になりたいとか、名声や名誉が欲しいわけじゃない
基本的に忙しいんだよ
ブサキモネクラヒキコモリプログラマー共と、友達にもなりたくない
お前らみたいのと会話するのも、ネット越しに話すので限界なんだよ
リアルで絶対に話かけるなよ鳥肌ヤバイから
そして何かを作りたいわけでもない
しいていうなら俺は、二次元の世界の保守要員だよ
俺が何も作れないとしても、名声を得られないとしても、俺様の人生で二次元に1ミリ貢献できればそれで良い
過去すべての二次元キャラのデータベースを作りたいとさえも思ったりする
死ぬというのは、誰からも忘れ去られる事
完全に忘れ去られた二次元キャラクターはそのときに死ぬ
すべての二次元キャラの名前を暗記したい
プログラミングをやってる半分の動機はストレス発散
何か作れるように見えるのかね?
ああ忙しいっわ
0179uy
2012/05/17(木) 21:41:56.090180uy
2012/05/17(木) 21:51:12.26役立つよ
自前のアルゴリズムを開発しておけば
言語が変わっても環境が変わっても早急に実装できる
そもそもDirectX直接触ればっていったけど
dxruby越しに触ってる時点で
DirectXの他ライブラリを使う事によって競合起こしたりしそうだから
dxruby使ってる以上、無い機能は自前で実装しかない
でも俺にとってはそっちほうが面白い
ゼロからかくのは得意
0181デフォルトの名無しさん
2012/05/17(木) 22:55:50.250182デフォルトの名無しさん
2012/05/17(木) 23:22:23.29むしろそういうやつのほうがいくらでもいるんだよな
0183uy
2012/05/17(木) 23:30:11.16ていうか本当にもうついてこないんだね、エディタの話題で完全に人が散った
毎回こうだよこの板
ちょっと難しいアルゴリズムの話題、はったりの利かない部分になると人がいなくなる
散々Rubyをディスっててもこの類の事をやるならRubyが一番いい
速度遅いとかいってもちゃんとしたアルゴリズムでエディタ書けば
横に10万文字入れようと10万行入れようと、Rubyの速度でも重くならないからね
つーか1億行あっても重くならない方法も今思いついたw
Rubyだったら実装に30分かからないな
OO(笑)のドカタ言語だと1日かかるんだろ?よくやってるよ
C++でエディタかいても、普通にかいたら1億行は読めないしな
あれ?実装簡単なRubyのほうがあらゆる面でいいんじゃね?
今の時代に言語の速度なんてのを必要以上に気にしてる奴は
自分には高速なアルゴリズムがかけないといっているようなものだと思う
俺はもうお前たちを見くびるしかないよ
だってお前らソースアップしねーもん
アップしたと思ったら中身も何もねークラスとか。どこの大学1年生だよと。
はっきりいって2chにきててリアルが忙しいとか他所で忙しいとか仕事が忙しいとか
そんなに関係ねーだろwwwwww
忙しいとかいっていないで2chにきているんだったら遊べばいいだけ、何が忙しいとか名無しのリアル事情なんてしらねえし
忙しいからエディタ作れない、そんな暇は無い_? 俺も忙しいよ 忙しい中2chで遊んでいる
uyは時間あっていいな〜とか思ってるのだろうか?? 俺はかなり忙しいよ 時間だけは平等だ
0184uy
2012/05/17(木) 23:32:04.52>>182
もうそういうのいいから
かいてみろよ
ソースをアップしない、アルゴリズムについて全く触れない時点で俺と対等じゃない
それと、
「そういうやつのほう」ってなんだ
「そういうやつじゃないほう」っていうのもいるのか?
「そういうやつじゃないほう」っていう奴は、何ができる奴なんだ・・・
ドカタ言語でポトペタが得意な奴って事?
2週間のお勉強で現場投入されてる奴らのことかね?
雑魚共が
0185デフォルトの名無しさん
2012/05/17(木) 23:44:22.52もっと早くにやっとくべきだった
0186uy
2012/05/17(木) 23:49:56.14たまに重要情報を垂れ流す事はあっても、
99.9%が駄レスで読む価値はない
0187uy
2012/05/17(木) 23:52:10.33流石にuyは初心者wwwwww とか言い出す奴もいなくなってきた
uyの事を技術がある者として認め、その上でuyに煽られ、叩かれるというのは
耐え難いものがあるのかもしれない
大丈夫だ、安心するがよい、uyは10割が冗談でできている
俺くらいのレベルになりたいなら1年くらい必死になればなれると思うよ
むしろ人生の中で、全てのことを置き去りにして1つの事に集中した期間というのを
持っているか持っていないかって全然違う
俺は数ヶ月のプログラミング集中と、数ヶ月の完全ブランクを交互に行って、ここまできた
ブランク空けのごとに考えがリセットされて、新たな発見だらけになる
そうやってブランクを作りたいからこそ本職になりたくないんだよね
毎日のようにプログラミングしていたら、ボケるというのを、本能的に知っている
知識量は、毎日やってればつくだろうが、思考速度が落ちる
だから本職には絶対ならないし、プログラミングと金儲けを、俺はつながりを持たせない
多分俺はプログラミングでストレス発散といった、ストレス発散でしかないんだ
プログラムを組むという事は俺様の生理現象の一つ、
つうか今は何も考えてないのかもしれない、ただ思いついたものを片っ端からひとつのプログラムに実装しているだけ
ゲームとかほざいてるけど実際ゲームじゃない、ゲームらしき何かだ
しいていうなら、・・・わざとバランスの悪いブロックで、倒れないように建物を作っている感じだ
でもそんなたて方でも、「普通にたてるよりも効率よくたてる」事を目指す、楽しいじゃんそれ
上手くいったときに最高に最高な気分になれる
そんなバランスの悪いたて方で建物を建てられるのは、世界で一人だけ、 楽しいではないか
0188uy
2012/05/17(木) 23:53:50.940189デフォルトの名無しさん
2012/05/17(木) 23:59:56.63オブジェクト指向に弊害はない。メリットのみ
http://toro.2ch.net/test/read.cgi/tech/1335361193/
こんなかんじ
class GameObject
class Missile : GameObject
class HormingMissile : Missile
0191189
2012/05/18(金) 00:28:22.96class Field
{
List<GameObject> Objects
}
ここまでの関連は46氏の書いたとおり
0192uy
2012/05/18(金) 00:42:08.92特定した
http://toro.2ch.net/test/read.cgi/tech/1325246820/837-839
0193uy
2012/05/18(金) 00:53:57.39実際そこら辺の設計だけソースだしたって意味なくね?
他の部分のソースコードが、その設計に見合ったものでなければなんとも言えない
散々俺もその話題については煽りまくったけど
本音を言えば根幹部分の設計など人の好みでしかない
ゲーム作り始めたら根幹部分がどうなってるとか意識する事はほとんどない
せいぜいシーンやオブジェクトの生成手順が違う程度の差
0194デフォルトの名無しさん
2012/05/18(金) 02:18:19.720195uy
2012/05/18(金) 03:59:38.95興味があるなら期間限定でソース公開してもいいけど、
別に興味とかないんだろ
仕事で使うOOだけできれば十分なんだろ貴様ら
俺が世界を、生きるついでに変えてやるからそこで座って待ってろ
0196uy
2012/05/18(金) 04:07:57.040197uy
2012/05/18(金) 05:07:36.660198uy
2012/05/18(金) 10:17:31.65もういいよそれ
貴様らは今日1日を生きるので精一杯なんだろう
だったら人生に余裕のある奴が
世界に対し何かをしないといけないのかもしれない
0199uy
2012/05/18(金) 11:28:34.00オブジェクト指向に興味が出てきた
一体、オブジェクト指向()で、どこまでやれるのか
0200デフォルトの名無しさん
2012/05/18(金) 11:45:14.63http://www.ruby-lang.org/ja/
0201uy
2012/05/18(金) 12:27:17.70俺は今までまるでわかってなかった。
0202デフォルトの名無しさん
2012/05/18(金) 12:28:47.16チラウラ日記うぜえ
おまえは最低限の知性もないのか?
専用スレ立ててそっちでやれ
ここにはくるな
0203uy ◆XyI.y.UDsI
2012/05/18(金) 13:54:14.63このゴミカス過疎スレを使いたい奴がいるようだ
以降書き込み禁止
0204uy ◆XyI.y.UDsI
2012/05/18(金) 14:00:09.930205uy ◆XyI.y.UDsI
2012/05/18(金) 14:34:22.4630分もまってやってんのに書き込み0か
0206デフォルトの名無しさん
2012/05/18(金) 14:38:43.380207uy ◆XyI.y.UDsI
2012/05/18(金) 15:10:46.940208デフォルトの名無しさん
2012/05/18(金) 18:29:33.01uyは精神不安定な感じ
また不安定になったらNGに突っ込むことになるさ
0209uy
2012/05/18(金) 18:42:47.54貴様らに伝えきれない
この今の、気持ちの高まり
理解しなくて良い
オブジェクト指向について語ってください
俺はオブジェクト指向に興味がある
0210uy
2012/05/18(金) 18:44:00.190211189
2012/05/18(金) 19:24:19.94class Field
{
CreateObject
DestroyObject
}
一方でGameObjectも自他のGameObjectを生成消滅させることができる
GameObjectはFieldにGameObjectの生成消滅を移譲する
class GameObject
{
CreateObject
DestroyObject
}
0212デフォルトの名無しさん
2012/05/18(金) 20:59:44.78GameObjectをあちこちで生成破棄できるようにするって事でおk?
それとも、実際の生成破棄はField任せ?
0213デフォルトの名無しさん
2012/05/18(金) 21:32:51.89良くあるように、ポインタや参照などを使っても手間は同じだと思うんだけど。
ユニークなシンボル名って言うけど、
実行時に適当に名前付けてもらうってことは、ソースコード上では直で指定することは無いんでしょ。
無名扱いなんだから、参照でのアクセスで良いんじゃないの?
実行時に割り振られたユニークなシンボルをやり取りすることと、
実行時に割り振られたユニークな参照をやり取りすることに、
本質的な違いが有るとは思えないんだけど。
0214uy
2012/05/18(金) 21:36:25.130215uy
2012/05/18(金) 21:56:14.11よくぞきいてくれたな
まず、シンボルの名前の付け方は、俺の場合3通りある
手動でかぶらないシンボルを代入
function :player # => :player
手動で適当なシンボルを代入した後、裏でユニークな番号をつける
function_uniq :enemy # => :enemy_03345
手動では何も引数を渡さず、裏で完全にユニークなシンボルをつける
function_uniq # => :uniq_sym_03345
>ゲームオブジェクトをハッシュで参照するメリットって何?
新規にクラスを作るほどでもないオブジェクトを同一のクラスや配列(リスト)で管理できること、よって変数やクラスが減る
(俺の場合はオブジェクト管理クラスとか1個しかないけど、そこまでは行かなくても良いとおもう)
>実行時に適当に名前付けてもらうってことは、ソースコード上では直で指定することは無いんでしょ
については、こんな感じでオブジェクト作ったとしたら、以下のように正規表現で探索して参照したり、直接ハッシュキーを指定して参照する
object_task = { enemy1: Object.new , enemy2: Object.new , boss1: Object.new , boss2: Object.new , player: Object.new , }
#正規表現で探索参照
object_task.my_search(/(enemy.*)/) # => [ enemy1 , enemy2 ]
object_task.my_search(/(boss.*)/) # => [ boss1 , boss2 ]
#直接参照
object_task[:player] # => player
正規表現での探索は遅いからゲームループ中には積極的にやるべきじゃない処理なので
シーンやオブジェクトの初期化時に済ませる
0216デフォルトの名無しさん
2012/05/18(金) 22:09:34.76オブジェクトに名前か属性か何か割り振っておいて、
それを元にサーチすればと思ってしまう。
0217uy
2012/05/18(金) 22:14:17.77新しい種類のオブジェクトには、新しい種類のメンバ変数やメソッドが必要になるけど
RubyだったらmoduleのMix-inと、OpenStructでそこら辺はどうとでもなる
C++でやってた頃は、STLのMapが今Rubyでやってる事の代用品になってたな
ただし俺はシーンだけはクラスを別に作る事にしてる、
@のついてるクラス内では割とスコープの自由なメンバ変数と、
ネームスペースが欲しいからその為だけのクラスといった感じ
ここまでなら別に静的言語でもついてこれる範囲だからあっちのスレにも書いた
少なくとも一人でプログラムかくならゲームの全オブジェクトを1クラスで管理したほうが効率的だとおもう
ーーーここからハイレベルーーー
結局、エフェクトにしても、敵オブジェクトにしても、その違いなんてのは
当たり判定処理行うか行わないか、指定フレーム後に勝手にオブジェクト消滅するか、フェードアウトするか、
その程度の差だから、
そういうものは全部引数で何とかなるんだ
Rubyの場合はハッシュ引数というものが存在するので、引数の数とか、大体フルで指定したら俺のソースの場合はもう30個以上になるな
デフォルト引数のようなものもあるので実際に指定するのは、x,y,Image,symbol,function、
そしてフェードイン、フェードアウト、画像の傾き、画像の拡大縮小、 ← そしてこれらの動作を引数で制御する為に
0218uy
2012/05/18(金) 22:16:30.08それでもいいけど、
Rubyは速度厳しいから:player のように、ユニークなシンボルがわかりやすい物は
配列などからサーチするよりもハッシュとして1回で[:player]とアクセスするなどしての高速化が必要だった
0219uy
2012/05/18(金) 22:21:46.06続き、
制御する為に、こういったカウントするためのライブラリ機構を作り
http://codepad.org/uZ2KTm0y
それをこのようにハッシュ引数を渡してオブジェクトを作ってる
def _effect2 hs = Hash.new
o = self
remi = Count_Lib.count_limit_create 0 , 255 , 1
o.node_task_template2({
x: rand(600) , y: rand(400) , d: Image.new(40,40,[100,140,200]),
sym: hs[:sym] ,
alpha: ({ type: :loop_rev, start: 0 , limit: 250 , add: 3 }) ,
rot: ({ type: :loop_rev, start: 0 , limit: 40 , add: 1 }) ,
scalex: ({ type: :loop , start: 1 , limit: 4 , add: 0.01 }) ,
scaley: ({ type: :default , start: 1 , limit: 4 , add: 0.01 }) ,
}) do | o |
o.delete if remi.call == 255
Window.drawFont(o.x, o.y, "sample_effect2", Yuyuko.font)
end # temp
end
このソースは
remi = Count_Lib.count_limit_create 0 , 255 , 1 で0から1ずつ255までカウントさせるカウンタをつくり
o.delete if remi.call == 255 それに達したらオブジェクトを消す
0220デフォルトの名無しさん
2012/05/18(金) 22:27:33.17おい、うざい
スレタイよめ。
おまえにはそれがooに見えるか?
0222デフォルトの名無しさん
2012/05/18(金) 22:29:28.57断る
Rubyスレでやれ
関係ねーんだから
0223uy
2012/05/18(金) 22:30:45.76これでもきいて待機してて
0224デフォルトの名無しさん
2012/05/18(金) 22:44:54.30そこを高速化するから楽しいんじゃないの?
自動でインデックスが作られるようにしたりさ。
テキストエディタの実装よりは楽しいと思うよ。
0225224
2012/05/18(金) 22:46:00.86>>218
そこを高速化するから楽しいんじゃないの?
自動でインデックスが作られるようにしたりさ。
テキストエディタの実装よりは楽しいと思うよ。
0226uy
2012/05/18(金) 22:59:55.36話のレベルが極端に低い、それはC言語とかの話してんの?
高速な配列は、最終的にはハッシュになるだろw
別にそれを「楽しい」とおもうなら君はその実装してればいいけど
ゲームプログラムの話じゃなかったのかね???????????
俺はもう遊びでプログラミングやってんじゃねえんだよ
別にエディタ実装が楽しいからやってたとかじゃなくて
作らなくちゃいけないから作っただけ
ゲームでテキストボックスが必要だからエディタとしても使える汎用クラスをついでに実装したまでの事
0227189
2012/05/18(金) 23:01:18.75GameObjectを生成破棄する主体はFieldとGameObject両方が考えられる。
しかしループ中にリストを変更することは好ましくないため生成リストと破棄リストをFieldに持たせて
インスタンス化とは別に管理上の生成と破棄を全てのGameObjectの処理を終えた後に行う。
CreateObject()とDestoryObject()はそれぞれのリストにオブジェクトへの参照を追加する。
class Field
{
List<Object> objects, create_objects, destory_objects
Do()
{
foreach o in objects { o.Do() }
foreach o in destory_objects { objects.Remove( o ) }
destroy_objects.Clear()
foreach o in create_objects { objects.Add( o ) }
create_objects.Clear()
}
CreateObject( GameObject o ) { create_objects.Add( o ) }
DestoryObject( GameObject o ) { destory_objects.Add( o ) }
}
0228uy
2012/05/18(金) 23:09:21.32もっと先の話に以降しようよ
オブジェクト指向的に、発生から255フレーム後に消えるゲームエフェクトオブジェクトとかってどうやって作るの?
俺はハッシュ引数でAlpha,scalex,rotなどの引数を全部渡して生成するよ
ハッシュ引数のない言語ってそこら辺どうしてんの?
0229デフォルトの名無しさん
2012/05/18(金) 23:13:35.13ハッシュを使えば良い。
0230デフォルトの名無しさん
2012/05/18(金) 23:15:38.830231デフォルトの名無しさん
2012/05/18(金) 23:17:14.210232224
2012/05/18(金) 23:17:35.03必ずハッシュになるとは限らないかと。
object_task = { player: Object.new, enemies: Array.new, }
たとえば↑のようにすれば、敵の検索はする必要ないし、
ユニークなシンボル名も要らない。
>>288
obj = new_game_obj(); //デフォルトのオブジェクトを作成
obj->set_alpha();
obj->set_scale_x();
obj->set_rot();
0233uy
2012/05/18(金) 23:20:32.89>>231
他の言語って、ゲーム開発するのって
C++かC#かJAVAだろ、何でもいいからかいてみてそれ
Python以外で
0234デフォルトの名無しさん
2012/05/18(金) 23:23:27.760235デフォルトの名無しさん
2012/05/18(金) 23:24:05.640236uy
2012/05/18(金) 23:24:50.55>object_task = { player: Object.new, enemies: Array.new, }
つうか何でもいいよ
213がきいてきたから俺の方法を教えただけで
もろオブジェクト指向だな
でもそれって、alpha値とかが徐々に変化していく場合ってどうするの?
俺の場合は カウントタイプと、start limit add という引数を渡してる
0237デフォルトの名無しさん
2012/05/18(金) 23:31:00.23ほう。それは糞設計だな
0238uy
2012/05/18(金) 23:32:38.19なんで俺しかいつも具体的なソースさらさないの
0239224
2012/05/18(金) 23:36:30.77いや、>>232 == >>213 なんだがな。まぁどうでも。
>>236に書いてあることそのまま書き下すと
obj->set_count_type( count_type );
obj->begin_count( start, limit, add ):
こんな感じかねぇ。まーどうとでもなりますわね。
0240デフォルトの名無しさん
2012/05/18(金) 23:38:02.33本気でわからんの?
ここ何のスレかわかってる??
0242uy
2012/05/18(金) 23:44:23.17alpha += add とかやっちゃうと最適化効かなくなったりするだろうから
C++厨はまずこういう設計にはしてないと思う
俺は元々、高負荷ゲーは作らないつもりで自ライブラリ設計したこうなってる
0243224
2012/05/18(金) 23:54:59.30たとえC++厨でも、そんなの実行速度には何の影響も無いから気にしないね。
てか一度ネイティブ系の開発環境でプログラミングしてみたほうが良いかもな。
何にどれくらいの実行コストがかかるか感覚的に良く分かってないんじゃないかな。
0244uy
2012/05/18(金) 23:59:28.22今もRubyメインC++補助に使って開発してるよ
C++は速度出すための言語だから俺がC++使うときは最速コードを心がける
君のエフェクトオブジェクト生成方法を知りたい
0245224
2012/05/19(土) 00:04:05.75def new_game_obj(); nil end
def new_hoge()
obj = new_game_obj()
class << obj; attr_accessor :player end
class << obj; attr_accessor :enemies end
obj.enemies = Array.new
return obj
end
こうやって書いてくと一応RubyでもインスタンスベースのOOは出来るみたいだね。
コード補完が効かなくなるから果てしなく微妙だけどね。
0246uy
2012/05/19(土) 00:15:35.85お前自身のやってる方法は?って聞いてるのに
お前もハッタリなの?
0247224
2012/05/19(土) 00:32:17.29ゲームは作らんから知らんが、俺はOO厨ではないので、
少なくともエフェクトオブジェクトっていう言い方はしないし、
エフェクトオブジェクトも作らないね。
エフェクトって言ったって千差万別だし、
そんな中途半端なクラス作ったって意味ない予感がする。
拡大したりフェードアウトしたりのコードがそこまで面倒だとは思わないし、
都度都度自由に書けたほうが良いんじゃないのかね。
ツクール使ってるわけじゃないんだからさ。
シーケンシャルな処理にそこまで気を使わなくても大丈夫だよ。
やりたい事をやりたい順にダラダラ書いてけば良いじゃない。
今専ら問題なのはシーケンシャルにならない処理をどう書くかだろうね。
みんなそうだと思うよ。マルチスレッドを如何に隠蔽するかは楽しい話題だね。
0248uy
2012/05/19(土) 01:03:25.42はい、解散
>そんな中途半端なクラス作ったって意味ない予感がする。
だからすっげー大変だから、他の奴がどうしてるかを聞きたかったんだよw
やっぱりお前もはったりなんじゃん死ねば? ねえ死ねば?
なんかおかしいと思ったよゲーム作ってる奴でC++使いなら速度関係にはシビアなはずなのに
最適化されるケースとかわかってねーし
>拡大したりフェードアウトしたりのコードがそこまで面倒だとは思わないし、
>都度都度自由に書けたほうが良いんじゃないのかね。
ほとんどの奴はそうだろうね
でもそれやっていくと、ありえないくらいにソース総量が増えていくのは覚悟しないといけない
俺も一部エフェクトオブジェクトは作らずにエフェクト書くこともある
ただし大半はエフェクトオブジェクトを作る形で10行程度で終わらせる
実際、ゲームを何作も作ってるうちには流石に毎回都度都度かいてられないからまとまるんだよ、はい、終了
0249uy
2012/05/19(土) 01:06:30.35マルチスレッドとかさあ
「普通」はつかわねーよ
普通はタスクシステム
マルチコア環境を想定して、かつ速度が欲しい時にマルチスレッド
ゲームオブジェクトはゲームの種類によっては数千、数万いくんだから
それら全部をネイティブスレッドとしてでも作っちゃうわけ?
ねーーーーーーーーだろwwwwwww
もうマジで いいや
0250224
2012/05/19(土) 01:30:49.97普通にfor文などで良いでしょう。
マルチスレッドはゲームの場合は専らデータの裏読みですかね。
読み込みが終わるまでは低解像度のテクスチャで置き換えたり、
画面手前側から読み込まれるようにスケジューリングしたりと、
結構面倒そうだ。そして楽しそうでもある。
そうはいっても、裏読みは相互作用が少ないからまだ隠蔽しやすい方だろうね。
でも、個人レベルではまずメモリに載り切らないほどの絵を用意できないし、
裏読みの必要はないだろうね。
というわけで、マルチスレッドを使う必要もないし、
リッチなシェーダーや描画エンジンを書くわけでもないし、
当たり判定や物理周りもライブラリに丸投げするなら、
ゲーム作りで話題に挙げる技術要素はまるで無いわけで。
その意味でuyは他人に迷惑をかけているんだと思うよ。
0251uy
2012/05/19(土) 01:45:15.19ずっとやってきた奴が「こうしたほうがいい」っていってるその意見を
何の根拠もなく、経験もないのに否定して、思わせぶりな妄想垂れ流すなって話だと思うよ
俺が今まで何千時間とやってきた上での設計を、
経験0時間の奴が否定するって
冷静にそれを考えろよ
お前は教わる立場、設計について語れるフィールドにきてない
初心者がおおそうだから、その為にゲームプログラムスレに、わざわざハッシュについてそろっと書いて
ここでも教えたんだよ
>当たり判定や物理周り
を、 これwwをwww再発明したって何の意味もねーだろwwwwww
ゲーム作りでもっとも大変なのは仕様変更に強くする設計作りだカス
そして次に開発速度
大勢で開発する手法が、
個人でもっとも開発効率の出せる手法だと勘違いするな
個人ゲーム開発であれば自分専用の設計にカスタマイズしない限り
まともな規模のゲームは個人で絶対に作れない
普通にオブジェクト指向()とかでかいてたら、どれだけの時間がかかるか知れよマジで。OO厨共 じゃあな
0252uy
2012/05/19(土) 01:47:23.24OOは間違い
0253デフォルトの名無しさん
2012/05/19(土) 01:57:46.73おまえには無理だね
もう来るな
0254224
2012/05/19(土) 02:19:55.63さっさと絵と音と音楽作ればよい。
そうすればこの板に来る用事もないだろう。
0255uy
2012/05/19(土) 02:24:09.51>>253
お前もどんだけだよ、
マジで本当に再確認した
どんだけハッタリかまわしてレスしてんだよこの板の奴は・・・
俺は早いところ技術の伝承をしたいんだよ
この重荷は一人で背負うには重い
何を知ったか、わかってくれとはいわないが、「ある事を知った」事は、わかってくれ
途中でどこかで俺が死んだら、多分この技術が途切れる
そう思うと1秒たりと時間を無駄には出来ないような気分になるし、さっさと、他の奴にもこの荷を背負って欲しい
きついんだよこれ、人は数字に弱いけど、再帰構文にはもっと弱い
もういい
十分ソースはばらまいたし、誰かには伝わっただろか
0256デフォルトの名無しさん
2012/05/19(土) 02:25:44.200257uy
2012/05/19(土) 02:26:20.20マジでふざけすぎ・・・
0258uy
2012/05/19(土) 02:29:55.070259224
2012/05/19(土) 02:38:52.02何で自分ばかりって。
0260デフォルトの名無しさん
2012/05/19(土) 07:07:46.54ふむ、やっぱりそういう基本的な所はみんな同じように考えるのねw
適当に引っ張りだしてー・・・
http://ideone.com/xBod4
0261uy
2012/05/19(土) 09:15:50.93Rubyでいうイテレータのdelete_if、reject、selectの仕組み
何を必死に劣化実装について良し悪し言ってんだよ
C++使うにしたって、RubyにあるイテレータがC++にあるかないかとか、
rubyと同じようにイテレータ実装しようとか考えろよ
ペチパーみたいな実装だよそれ>>227
雑談スレや初心者スレで会話してろってレベルだアホ
0262デフォルトの名無しさん
2012/05/19(土) 09:25:25.230263uy
2012/05/19(土) 09:27:46.89次に俺と話す事があったら
C++だったらせいぜい1万行は超えるソースを
シーン構造とタスクシステムは実装されてるゲームを作ってから話しかけろよ
経験0の奴でいつまでも開発始めない奴に何かを教えれるとは思ってない
0264uy
2012/05/19(土) 09:29:13.94レスにもなってねーよそれ
勝ち誇ってるように見えるなら、お前は巻け誇っちゃったのか?
ただ教えてやってるだけに過ぎない
Rubyやった事ないんだろ
はいはい、さっさと開発いって問題を知れと
すべての話はそれからだ
これ以上は無意味
0265uy
2012/05/19(土) 09:55:14.23俺から何も教えられる事はなかったよ
同じように間違えてる奴をみて安心するな
まず213で質問してきたのはなんだったんだって話
技術が欲しかったんじゃないのかと
土日なんだから何か作ってみれば、
どの言語でも読めるから、ソース晒すなら採点してやるよ
0266デフォルトの名無しさん
2012/05/19(土) 10:06:57.81商品レベルのものを作らないとダメですか?
0267デフォルトの名無しさん
2012/05/19(土) 10:25:45.470268デフォルトの名無しさん
2012/05/19(土) 10:29:58.690269デフォルトの名無しさん
2012/05/19(土) 11:31:38.71> 人は数字に弱いけど、再帰構文にはもっと弱い
そうだな、おまえのまわりではそうなんだろう。おまえのまわりではな。
0270uy
2012/05/19(土) 11:33:22.65OOは俺には10年早かった
もう来ませんわ
0271uy
2012/05/19(土) 13:19:20.09>ゲームは作らんから知らんが
ここで終わってるwwwwwwwwww
0272uy
2012/05/19(土) 13:20:52.84ゲームは作らんから知らんが、俺はOO厨ではないので、
ゲームは作らんから知らんが、少なくともエフェクトオブジェクトっていう言い方はしないし、
ゲームは作らんから知らんが、エフェクトオブジェクトも作らないね。
ゲームは作らんから知らんが、エフェクトって言ったって千差万別だし、
ゲームは作らんから知らんが、そんな中途半端なクラス作ったって意味ない予感がする。
ゲームは作らんから知らんが、拡大したりフェードアウトしたりのコードがそこまで面倒だとは思わないし、
ゲームは作らんから知らんが、都度都度自由に書けたほうが良いんじゃないのかね。
ゲームは作らんから知らんが、ツクール使ってるわけじゃないんだからさ。
ゲームは作らんから知らんが、シーケンシャルな処理にそこまで気を使わなくても大丈夫だよ。
ゲームは作らんから知らんが、やりたい事をやりたい順にダラダラ書いてけば良いじゃない。
ゲームは作らんから知らんが、今専ら問題なのはシーケンシャルにならない処理をどう書くかだろうね。
ゲームは作らんから知らんが、みんなそうだと思うよ。マルチスレッドを如何に隠蔽するかは楽しい話題だね。
Complete(0)
ゲームは作らんから知らんが、
0273uy
2012/05/19(土) 13:22:26.75ゲームは作らんから知らんが、普通にfor文などで良いでしょう。
ゲームは作らんから知らんが、マルチスレッドはゲームの場合は専らデータの裏読みですかね。
ゲームは作らんから知らんが、読み込みが終わるまでは低解像度のテクスチャで置き換えたり、
ゲームは作らんから知らんが、画面手前側から読み込まれるようにスケジューリングしたりと、
ゲームは作らんから知らんが、結構面倒そうだ。そして楽しそうでもある。
ゲームは作らんから知らんが、そうはいっても、裏読みは相互作用が少ないからまだ隠蔽しやすい方だろうね。
ゲームは作らんから知らんが、でも、個人レベルではまずメモリに載り切らないほどの絵を用意できないし、
ゲームは作らんから知らんが、裏読みの必要はないだろうね。
ゲームは作らんから知らんが、というわけで、マルチスレッドを使う必要もないし、
ゲームは作らんから知らんが、リッチなシェーダーや描画エンジンを書くわけでもないし、
ゲームは作らんから知らんが、当たり判定や物理周りもライブラリに丸投げするなら、
ゲームは作らんから知らんが、ゲーム作りで話題に挙げる技術要素はまるで無いわけで。
ゲームは作らんから知らんが、その意味でuyは他人に迷惑をかけているんだと思うよ。
Complete(0)
ゲームは作らんから知らんが、
0274uy
2012/05/19(土) 13:26:18.46とか思ってるなら
ゲームPGでも確実に苦戦するキーコンフィグ画面を作ってみろよwwww
0275デフォルトの名無しさん
2012/05/19(土) 13:40:30.420276uy
2012/05/19(土) 13:46:02.05キーコンフィグ
ネット対戦
シーンの管理
仕様変更できる柔軟性
入力関連
当たり判定
このあたりがゲームの難関
>>275
は?
いいから作ってみろよ「キーコンフィグ画面」を。GUIで。
1P、2P、決定キー、キャンセルキー、あとキーコンフィグ設定ファイルw
設定保存しますか? はい いいえ のダイアログ
で、決定キーとかZだけじゃなくて、RETURNやPADの1キーにも対応させたりしないといけないから
そのKeyMapなんちゃらも改良して、Arryをまず引数に取れるようにして、
ああきりがない
0277デフォルトの名無しさん
2012/05/19(土) 13:53:29.020278デフォルトの名無しさん
2012/05/19(土) 13:55:22.91とても低いところにハードルがあるんですね。
0279uy
2012/05/19(土) 15:46:26.24仕様:
複数プレイヤー用(コンフィグファイルいくらでも追加可能な事)
ボタン6個 + 十字キー
パッドの上下左右とキーボードのUPDOWNLEFTRIGHTを同期させる事(その逆も)
どんなキーコンフィグを行われたとしても、RETURNキーとESCAPEだけは決定とキャンセルに使えるようにさせる事
ユーザーにわかりやすい操作方法と、GUIを作る事
キーコンフィグはゲーム内GUIで「まともなもの」を作るのはマジで難関
だからゲームプログラムとは別に、キーコンフィグ設定プログラムを付属してキー設定させたりするんだよ
そっちほうがはるかに楽になるから
月曜までに作っとけよ
0280デフォルトの名無しさん
2012/05/19(土) 15:56:46.950281uy
2012/05/19(土) 15:58:03.65俺は今日の午前中にもう8割終わってる
0282uy
2012/05/19(土) 16:02:35.170283uy
2012/05/19(土) 16:07:59.69お得意のオブジェクト指向でやっていいよ
class (笑い) KeyConfig {
int key;
}
0284デフォルトの名無しさん
2012/05/19(土) 16:26:13.41普段何作ってんの?
0285デフォルトの名無しさん
2012/05/19(土) 16:26:56.02商品レベルのものを作らないとダメですか?
0286uy語録
2012/05/19(土) 16:32:42.48車輪の再発明、意味無い。
>では、何を作っているのですか?
エディットボックスです。
一から実装しています。
ポトペタな君たちとは違います。
0287デフォルトの名無しさん
2012/05/19(土) 16:40:25.680288uy
2012/05/19(土) 16:47:30.17技術的なレスのない人形に話かけるのも飽きてきた
割とまた忙しくなってきたわ
気持ちの方が
0289デフォルトの名無しさん
2012/05/19(土) 16:51:04.58煽りたいだけなら、お前が月曜日までに物を出せばいいんだ。
出せれば煽り放題、出せなければ口だけのクズ。
じゃ、がんばってねw
0290デフォルトの名無しさん
2012/05/19(土) 16:56:52.71核心ついちゃったな
0292uy ◆XyI.y.UDsI
2012/05/19(土) 17:37:06.08言っとくけど、俺はこれだけプログラミングは出来ても
技術者とかプログラマとかいう部類にはいない
普段作ってるもの?
そんなものは、プログラム以外のものだよ
プログラム関連でゲ製作以外にやってる事といったら
クラック関連になる、何も作りはしない ただ気に入らなかったら壊すだけ
0293デフォルトの名無しさん
2012/05/19(土) 17:40:45.890294uy ◇XyI.y.UDsI
2012/05/19(土) 18:02:51.020295デフォルトの名無しさん
2012/05/19(土) 20:26:21.71それはすなわち
素人ってことですか?
いや、見れば分かるのですがw
0296189
2012/05/19(土) 20:29:42.46ただFieldによるGameObjectに対する操作をインターフェイスを介して行うことで
インターフェイスを実装していないオブジェクトに対しては処理をスキップすることができる
class GameObject
{
Location location
}
interface IMovable
{
UpdateLocation()
}
class MovableObject : GameObject, IMovable
{
Velocity velocity
UpdateLocation()
}
class Field
{
Do() { foreach IMovable i in objects { i.UpdateLocation() } }
}
0297224
2012/05/19(土) 21:01:36.05スキップするなら始めからリストを分けとけば良いじゃない。
std::list< HogeInterface * > hoges;
std::list< PiyoInterface * > piyos;
ゲーム以外の普通のアプリもこうやって書くものだし、
そうしない意味がわらないね。
0298デフォルトの名無しさん
2012/05/19(土) 21:04:25.360299uy
2012/05/19(土) 21:36:04.18http://toro.2ch.net/test/read.cgi/tech/1336122899/190
http://toro.2ch.net/test/read.cgi/tech/1336122899/297
http://toro.2ch.net/test/read.cgi/tech/1325246820/837-839
その前にタイピングできてないみたいなんだけど、なんなのこいつ
0300uy
2012/05/19(土) 21:41:23.45つもり(偽者)からでも実力はつく場合はある
俺の今日の教訓は
偽者のほうが圧倒的に価値がある
そこに本物になろうという意思があるだけ
偽者のほうが本物よりも本物だ
このタイミングで偽者語みたのはやばかった
技術的には本物になってしまった俺よりも、
より本物らしくレスをしようとしているお前らの方が本物だよ
よかったな・・ 本物よ
0301224
2012/05/19(土) 21:41:25.66みんなに同じ指摘受けるから、全員同じ人だとか思っちゃったの?
0302uy
2012/05/19(土) 21:43:07.17http://toro.2ch.net/test/read.cgi/tech/1336122899/297
http://toro.2ch.net/test/read.cgi/tech/1325246820/837-839
>>301
嘘つくな
これ、全部お前だよ
なんでタイプミスこんな頻度でするの
0303デフォルトの名無しさん
2012/05/19(土) 21:44:07.37てか、コテやめてくんない?
発言もたいしたことないし
プログラムなんてそんな好きじゃないのにじみ出てて気分悪いんだけど?
荒らし以外の効果産んでないから
名無しに戻って発言で差をつけるようにしてよ
0304uy
2012/05/19(土) 21:45:05.00人差し指でもケガしてんのか
0305uy
2012/05/19(土) 21:47:03.70よし、ここはお前のスレだ
自由に使っていいぞ
偽者は退散しよう
それと、プログラム言語1個しか覚えてねーようなガキんちょがあんまり本物相手にほえるなよ
力の差を知れ雑魚が
0306デフォルトの名無しさん
2012/05/19(土) 21:50:36.37本物だ!
0307224
2012/05/19(土) 22:05:03.47いや、残念ながら違う人だよ。
少なくとも、その中で俺の書き込みは>>297だけ。後は知らん。
もっとも、脳内世界の住人の君にとっては、
正しく現実世界を認識することは興味の範疇でないだろうが。
0308デフォルトの名無しさん
2012/05/20(日) 00:11:56.410309デフォルトの名無しさん
2012/05/20(日) 02:53:05.98>>uy
>てか、コテやめてくんない?
>発言もたいしたことないし
真実すぎてわろた
0310uy
2012/05/20(日) 08:49:29.76切実すぎて心を動かされたwwwwwwww
0311uy
2012/05/20(日) 08:50:17.21スレ速が遅いから俺が書き込む暇を与えてんだよ
書き込めカス
0312デフォルトの名無しさん
2012/05/20(日) 11:03:20.300313デフォルトの名無しさん
2012/05/20(日) 11:32:51.290314デフォルトの名無しさん
2012/05/20(日) 12:42:17.750315デフォルトの名無しさん
2012/05/20(日) 12:50:37.350317デフォルトの名無しさん
2012/05/20(日) 15:17:25.270318デフォルトの名無しさん
2012/05/20(日) 18:59:09.46それはプログラムで省略すべき箇所を間違えてないかな?
ホーミングミサイルの例もそうだけど共通化する意味ないじゃない
オブジェクト指向の受け取り方にもよるんだけど
ゲームの個々のオブジェクトが出揃ったらシーン内でのオブジェクト同士の関連まで
サポートしてくれないだろオブジェクト指向は
クラス設計を拡大解釈しちゃったけど
そもそもその目的が明確になってないからオブジェクト指向っていう
謎な概念だけが一人歩きしてわけのわからないシステムになっちゃった感じ
実際、すべてのインスタンスを管理する神クラスなんて作ってもなんらメリットない
逆にごった煮なんかにした分今度は仕分けるのがやたら大変なだけっていう・・・
0319デフォルトの名無しさん
2012/05/20(日) 19:01:37.65レス先間違えw
0320デフォルトの名無しさん
2012/05/20(日) 19:02:08.48スレから違ったw
0321uy
2012/05/20(日) 19:05:52.46http://toro.2ch.net/test/read.cgi/tech/1336122899/297
http://toro.2ch.net/test/read.cgi/tech/1325246820/837-839
http://toro.2ch.net/test/read.cgi/tech/1336122899/318-320
おまえさぁ
0322uy
2012/05/20(日) 19:11:49.400324uy
2012/05/20(日) 19:27:17.240325デフォルトの名無しさん
2012/05/20(日) 19:33:56.330326uy
2012/05/20(日) 20:00:36.190327189
2012/05/20(日) 20:13:29.79class MovableObject : GameObject, IMovable
class Missile : MovableObject
class HormingMissile : Missile, IIntelligent
とすれば
Do() {
foreach IMovable i in objects { i.UpdateLocation() } // MissileもHormingMissileも移動する
foreach IIntelligent i in objects { i.Operate() } // HormingMissileだけ演算する
}
という風に書ける。
後で新しいインターフェイスを追加するにはforeachを書き加えるだけですみ、
更にこれをデリゲートにして動的に差し替えるようにすれば実行中にルールを変更できる。
0328uy
2012/05/20(日) 20:27:55.49何度もいってるけど 「バランス」 だからね?
そこの実装が224方式でも189方式でも別にかまわない
そこの実装をそういう風にすることによって、別の場所が
それに見合った設計やコードになっているかどうかが重要なわけで
一箇所だけの書き方でごたごたいっても無意味
そして極めつけは
>>247
>ゲームは作らんから知らんが、
さて、、、おれはそろそろいかねば
0329uy
2012/05/20(日) 20:31:41.200330デフォルトの名無しさん
2012/05/20(日) 20:56:51.22なんか意味あるの?それ?
0331uy
2012/05/20(日) 20:59:47.80189は成長途中
これからもゲームプログラムについて考え続ける気があるなら、多分3ヵ月後の
189は全然違う事言ってるはずだよw
0332デフォルトの名無しさん
2012/05/20(日) 21:59:30.00目的は
開発工数の削減なのか、
シンプルな記述なのか、
使用者に分かりやすいインターフェイスの提供なのか、
実行速度なのか、
・
・
・
なんの目的も達成してないもの作られても反応に困る
0333224
2012/05/20(日) 22:35:55.76どうしても面倒だったら、こういう手もある。
template< typename t >
std::list< t * > &ty_col() //type collection
{ static std::list< t * > lst; return lst; }
template< typename t >
struct auto_type_collector
{
typename std::list< t * >::iterator itr;
auto_collector(){ ty_col<t>().push_back( (t *)this ); itr=--ty_col<t>().end(); }
~auto_collector(){ ty_col<t>().erase( itr ); }
};
struct my_interface{};
struct game_obj
:public auto_type_collector< game_obj >
,public my_interface, public auto_type_collector< my_interface >{};
0335uy
2012/05/20(日) 22:42:08.52224
おまえさあwwwwwww
まずゲーム作ったことねーんだろ
さらに、何そのC++勉強中ですみたいなコード
少なくとも189のほうがお前より上だよ
0336uy
2012/05/20(日) 22:47:05.88ゲームプログラムの設計で試行錯誤で成長途中の189
の初心者同士のハッタリwwwカマかけあいwwwwwwww
みてて痛々しいからもうどっちか引っ込めよwwwww
今の時代にC++でテンプレート使ってイテレータ使ってSTL使ってゲーム作ってる奴なんていねーよ
最低でもC#だろバカwwww
いるとしたら、ただの老害か、過去のC++遺産が多いからC++やってるだけの奴
流されるなよガキんちょ
0337uy
2012/05/20(日) 22:49:53.95なんで、こんな頻度でタイプミスや安価ミスしてるんだよ
ちょっとオカシイぞお前
http://toro.2ch.net/test/read.cgi/tech/1336122899/190
http://toro.2ch.net/test/read.cgi/tech/1336122899/297
http://toro.2ch.net/test/read.cgi/tech/1325246820/837-839
http://toro.2ch.net/test/read.cgi/tech/1336122899/318-320
http://toro.2ch.net/test/read.cgi/tech/1336122899/332-334
0338デフォルトの名無しさん
2012/05/20(日) 22:56:15.78お前は>>247 ここで終わってるんだよ
0339デフォルトの名無しさん
2012/05/20(日) 23:49:55.36おまえうざい
チラウラならブログ作ってやれ
0340デフォルトの名無しさん
2012/05/20(日) 23:52:35.48しねーよーな対策を施せないのはまずい
0341uy
2012/05/20(日) 23:54:16.40流石に
224、189の、会話してる両方が両方とも初心者でブチギレた
でも189は初心者っつっても、ゲームプログラムを作っている事は事実
そして設計について考え込んで(今は考え込みすぎて設計がカオスになって)いることは努力してきたって事
でも224
お前はちがうよ
>>247ここでwwww作ったことありませーんw 宣言してるのに、なんで先人の教えをちゃんと聞いてないんだよ
それじゃいつまでたっても技術つかねーよお前
0343デフォルトの名無しさん
2012/05/21(月) 00:53:37.790344デフォルトの名無しさん
2012/05/21(月) 02:31:41.43どうしてこうなった
0345uy
2012/05/21(月) 10:14:11.23聞き手に周ったらこうなった
明らかに俺の方がまともな設計書けるのに、それを無視し
それよりもはるかに下にいる奴ら同士で意味不明なやり取りして何がしたいんだろうか
そして、どのような答えでまとまるのかw
興味深いので観察をしているところ
0346デフォルトの名無しさん
2012/05/21(月) 10:16:11.14臭い口トジトケ
コミュ障
0347デフォルトの名無しさん
2012/05/21(月) 10:17:57.75一つ助言しとこう。
おまえが数ヶ月一言もレスせずさえいたら
スレはマトモな流れになるぞ。
理由はわかるな?
0348uy
2012/05/21(月) 10:30:12.540349uy
2012/05/21(月) 10:41:36.01つーか
お前マジでこんなソースでゲーム作ろうとしてんの?
何か感じない?俺がRubyであげたソースと比べて何かさぁ・・・
ほんとにC++は害悪だな
あ、「学習用」としては悪い言語じゃないよ
そこまでお前が突っ走った事は、別言語に乗り換えたときに良い経験になってるw
お前は、C++やめてそろそろ迂回したほうがいいよ
取り返しがつかなくなる前に
uy優しすぎワロタ
0350デフォルトの名無しさん
2012/05/21(月) 10:41:45.570351デフォルトの名無しさん
2012/05/21(月) 11:28:59.070352uy
2012/05/21(月) 12:28:45.84仕様変更に強いゲームソースを書こうとすると
全てのパラメータを変更できるようにしなくちゃならなくなるから
どこかのメソッドにまとめてそれを呼び出すって事が出来ない
それをやろうとすると、メソッドに対しての引数がどんどん増えていく、普通に
全ての仕様変更に対応させようとすれば、それが20とか30とかになっていくというか、仕様が増えるたびに引数が増える
ハッシュやオブジェクトで渡すとしても、新しいメンバ変数が増えるのならメソッド側に処理を追加なので
どんどんヤバイ事になって古いコードとの結合がとれなくなってくる
ので、それは多分絶対にやっちゃいけない
それをやった場合は、仕様変更はもう「ある程度」、しか出来ないと考えるべき
だから最終的には1回1回その場にパラメータは書くことになるけどかなり冗長する
個人製作ゲームの場合って、仕様変更は自分の意思だから、
仕様変更に多少弱くしてでもソースコード量減らすべきかな
どうでしょう?
0353デフォルトの名無しさん
2012/05/21(月) 12:30:07.270354uy
2012/05/21(月) 12:34:28.48思ったんだけど、「たった1人でそこまで全部のパラメータいじってゲームバランス調整なんてできっこない」www
いくらパラメータいじれるといっても、人1人の作業量には限度ってものがあった
少しずつ仕様変更などをあきらめていくべきなのかどうか
なんらかの処理に対して、特に指定しなければデフォルトの処理とか、いくつかの
テンプレートを作り、雛形の処理を選択式っていうのも有りではあるんだけど
多分それは、後々テンプレートは全て無駄になる事と、せっかく仕様変更に強くしたのに自分から弱くするコードを書く意味
けれど、ほぼ99%くらいの確率で
こんな膨大なソースコードのバランス調整などまずしない気がしてきた
1箇所の変更で多くの場所も全部変わってしまうような、仕様変更に弱いプログラムの方が
作業時間は減る
さてこまった
仕様変更対応力と、作業効率
今は仕様変更対応力のほうを強くしたソース
もう少しこのままでいく予定
0355uy
2012/05/21(月) 12:35:29.39オブジェクト指向関係ない
ゲーム全てのパラメータを孤立させてる
どこと、どこのゲームパラメータも連動していない
だから仕様変更には強い
でも作業時間が足りない
これは、いくつかを連動させるべきかという話だ
0356uy
2012/05/21(月) 12:41:49.980357デフォルトの名無しさん
2012/05/21(月) 13:07:22.920358デフォルトの名無しさん
2012/05/21(月) 13:39:31.680359デフォルトの名無しさん
2012/05/21(月) 13:51:42.060360uy
2012/05/21(月) 15:17:22.750361uy
2012/05/21(月) 15:41:55.59俺は、今回は昔のドット絵とか
すべて流用なしで作る気だから、そこからだわ
ソースコードは6000行を突破、ファイル数50
立ち絵を、最低78枚描かないといけない、 1/78終わって2枚目に入ってる
ドット絵の数は、何枚かくんだろうな
とりあえず自機ドット絵の3枚が描き終わったところ
一応、背景や効果音はフリー素材で埋め合わせしてるけど後で全部自作するつもり
効果音は作れるとしても
BGMだけが問題だな
で、貴様らはどのくらいすすんでんの
0362デフォルトの名無しさん
2012/05/21(月) 15:56:20.370363uy
2012/05/21(月) 16:17:43.74もういろいろ
やばい
0364デフォルトの名無しさん
2012/05/21(月) 16:46:45.850366224
2012/05/21(月) 20:41:35.16コレクションを用途や目的で使い分ける→必然的にインターフェースごとに「も」分かれる
だよ。
「ああする」リストには「ああする」インターフェースが入ってるはずだし、
「こうする」リストには「こうする」インターフェースが入ってるはずだからね。
>それは詳細設計書が目の前にある場合のセオリーだろう
むしろ詳細な仕様が無いからこそインターフェースで纏める必要がある。
そうしないと本当にカオスになるから。
逆に仕様がガチガチに固まっているのなら、
ハードコーディングだろうが型スイッチだろうが構わないだろう。
ダウンキャストは型スイッチだから、君の方式は後者だね。
0367uy
2012/05/21(月) 21:13:10.29「親子関係を持つタスクシステム」今度は書いてみ
0368uy
2012/05/21(月) 21:14:43.27立ち絵2枚仕上げてきた
はあ死ぬ
あと最低76枚くらい
0369uy
2012/05/21(月) 21:24:57.24ゲームプログラム()程度ではなく
OSレベルの「本当に本格的な」タスクシステムを実装したいのであれば
まずウィンドウを作って、その中でゲームを動かす事を考えてみ
複数のウィンドウを表示して、複数のゲーム起動 まで出来るなら
その設計は正しいよ
マジレスしてしまうと
個人で作成するゲームプログラム()ごときで、完璧なタスクシステムはいらない
適当に実装して適当にその上にゲーム内容作ればゲーム完成するよ
でも君たちはゲームを作る為にタスクシステムを考えてるんじゃなくて完璧なタスクシステムを実装したいんだろ?
だったらゲーム()ごときのフィールドで考えてないでOSのウィンドウシステムを考えろ
0371224
2012/05/21(月) 23:19:02.47それ、型スイッチって言って、大昔のC言語のプログラミングしタイルだよ。
0372デフォルトの名無しさん
2012/05/21(月) 23:49:55.91どの程度の調整について話しているのか分からないので、的外れかもしれないけれど……。
ゲームバランスの調節にパラメータを弄るのなら、それ用のDSLを作るなり、
XML・CSVなどのテキストファイルを弄るようにしないかな?
0374デフォルトの名無しさん
2012/05/22(火) 07:09:15.24たとえばRPGやらSLGやらなんやら
「途中でセーブ」する場合、全部シリアライズしなきゃならないわけじゃん?
ということはすべてのオブジェクトを1リストに列挙するわけだけど
逆に、実際にゲームを動かす時は
種類別のリストとか、ツリー状に展開するわけじゃん?
0376uy
2012/05/22(火) 09:47:57.52それはC++の場合(普通の場合)
スクリプト言語ではあまりそれをやる意味がない
XMLよりrubyのほうが簡潔にかけるし
どうしても外部にデータ置くとしてもrubyスクリプト
0377uy
2012/05/22(火) 09:57:19.09いつまでそこで立ち止まってる気だ?キチガイ共が
ネトゲみたいなのは別として
普通のゲームプログラムごときで多機能なタスクシステムいらないから
完璧なタスクシステムを実装したい欲求あるならゲームじゃなくてOSのウィンドウシステムで考えろ
0379uy
2012/05/22(火) 16:01:49.39http://togetter.com/li/217552
我々が技術を身につけるのにどれだけの熱意を持ち、時間と労力を費やし、
実装するためにどれだけのアイディアを捻り出してきたかを、ほんの少しでも想像すれば、
自分に技術がないことで我々に仕事を押し付けようという態度は許容できないだろう
---
語尾にキリッつけたくなってきた
俺様としては、プログラミングなどネタだと思うのだ
俺様は決して自分がプログラミングできるからといって
素人相手にマジにはならない
ネタで煽りまくる事はあってもな
0380デフォルトの名無しさん
2012/05/22(火) 16:38:58.450381デフォルトの名無しさん
2012/05/22(火) 17:45:17.270382デフォルトの名無しさん
2012/05/22(火) 20:00:56.830383デフォルトの名無しさん
2012/05/22(火) 20:01:29.060384デフォルトの名無しさん
2012/05/22(火) 22:46:21.300385デフォルトの名無しさん
2012/05/23(水) 00:05:03.87出す課題出す課題まったく解決できないクズばっかりだったな
やれやれw
0386デフォルトの名無しさん
2012/05/23(水) 00:11:10.93NGできないだろ?
0387デフォルトの名無しさん
2012/05/23(水) 00:15:23.50リツイートしろよヘタれ
0388uy
2012/05/23(水) 00:24:35.62俺、内心ではrubyかなり応援してるからさ
Matzの邪魔になるような事はやらないよ
0389デフォルトの名無しさん
2012/05/23(水) 00:30:34.30ヘタレは言い訳ばっかだな
リツイートしろ
0390uy
2012/05/23(水) 00:45:28.02さほど関係はないし
2.0に期待してる
今の俺様の人生の中でruby2.0がいつ来るかっていうのは、かなり上位に来る
楽しみのひとつだ
例大祭や、東方の新作より楽しみ
やっぱ俺はこっちの人なのかなと思ってしまう
2.0に繰り上がるって事は、とりあえずMatzの中でやりたい事に一区切りがついたって
事だと思うから
俺はMatzの考え出した答えの区切りであるような、その2.0が見たい
0391uy
2012/05/23(水) 00:47:51.71直接Matzを煽る気はない
ツイッター()とか、そもそもやってねえし
何が楽しいんだよ
ツイッターやブログなんて自己顕示欲の塊じゃねーか
0392デフォルトの名無しさん
2012/05/23(水) 00:47:59.66さっさとリツイートしろヘタれ
0393デフォルトの名無しさん
2012/05/23(水) 00:48:30.37ヘタれはもう来るな
0394uy
2012/05/23(水) 00:51:04.53ツイッターのIDってどうやってとうろくするんですか^^;;;;
0395デフォルトの名無しさん
2012/05/23(水) 00:51:39.290398デフォルトの名無しさん
2012/05/23(水) 01:01:16.56なあ、お前邪魔だからRubyスレに帰れ
0399uy
2012/05/23(水) 01:05:40.61前スレも、このスレも最初から俺のスレだろうが
で、俺がROMってたとしても189と224の意味不明な低レベルのやり取りが繰り返されるだけだろ?
何かあのやり取りって双方にとって意味あんのかよwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww
0400uy
2012/05/23(水) 01:07:16.50>ゲームは作らんから知らんが、
224 == 247
作った事もないのに得意げにゲームタスクの作り方語っちゃってるテメーはなんなんだっていう
189も初心者++程度だが、論外初心者の224は発言権ねえよ
0401デフォルトの名無しさん
2012/05/23(水) 01:09:02.13おまえうざい。死んでくれない?
0402デフォルトの名無しさん
2012/05/23(水) 01:10:31.890404デフォルトの名無しさん
2012/05/23(水) 01:12:49.10同意ならさっさと死ね
0405uy
2012/05/23(水) 01:15:29.41コンパイルエラーでも取れないのか
そりゃC++とかかいてたらなぁ・・・
俺、初心者に対してC++はやっとけってよく言うけど
やりすぎてハゲるくらいならやんないほうがいいよw
0406デフォルトの名無しさん
2012/05/23(水) 01:15:42.19uyは頼むからもう来ないでくれないか
0407デフォルトの名無しさん
2012/05/23(水) 01:16:43.060408デフォルトの名無しさん
2012/05/23(水) 01:19:49.13何か期待してる奴がいることが驚きだ
まあネタなんだろうけど
0409デフォルトの名無しさん
2012/05/23(水) 01:20:54.570410デフォルトの名無しさん
2012/05/23(水) 01:21:12.570411デフォルトの名無しさん
2012/05/23(水) 01:22:39.910412uy
2012/05/23(水) 01:25:13.97http://mozilla.jp/blog/entry/3800/
0413uy
2012/05/23(水) 01:34:46.93どうせ1.9からそこまで劇的には変わらないだろう
ただ、どういった形で2.0リリースになるのか、どうまとめあげるつもりなのか
そこに興味がある
君らにはわからないよね、期待してる場所がすっげー変な部分だとは認識してる
でもずっと前から楽しみにしてる
俺がはじめてrubyに出会ったのは自分のやりたい事の出来る言語がないか探してる最中だった
そして無かったら作ろうとしているその最中、rubyに出会い
やりたい事の9割は出来た、
そしてまだその言語は成長中だと知ってテンションあがってきた
俺のやりたかった事の10割,つまり100%と、もしかしたら101%目に、rubyはいってくれて
俺の知らないものを見せてくれるのではないかとマジでちょっと、アレだぜ
まぁ、たとえ91%や100%だとしても落胆はしないさ
俺様の「同意」を得られる言語を作れる人間が、この世界に存在したっていう事実だけで
もうかなり満足してるw
速度とかそんなもん後からどうにでもなるんだよね
重要なのは言語設計のセンス、俺はそこしか見てない
0414デフォルトの名無しさん
2012/05/23(水) 01:45:37.19肝要なところはErlangです ^^
0415デフォルトの名無しさん
2012/05/23(水) 01:47:04.55uyはウザい
まで読んだ
0416デフォルトの名無しさん
2012/05/23(水) 01:47:34.51なんでRubyスレにいかないの?
0417デフォルトの名無しさん
2012/05/23(水) 01:52:59.290418uy
2012/05/23(水) 01:53:26.50プログラミング以外のことにも多くの時間を割けるようになった
vipで祭りが起こってる時とかに、
rubyでさっとコードかいて文章の整形して書き込みとかもやったりする
こんな芸当rubyだから出来るんだと思うよ
手動で文章整形よりもrubyでコードかいて文章整形したほうが速い
俺の中のrubyは、日常的に2chで遊ぶツールとしても使われてる
0419uy
2012/05/23(水) 01:54:35.07スレ使いたいのか?
じゃあ使えよ
ほら、書き込め ただし、 224と 189の無意味な会話は終了な
無意味な会話を続けるな、次の話題にいけ
0420デフォルトの名無しさん
2012/05/23(水) 01:54:37.52なんでRubyスレにいけないの?
0421デフォルトの名無しさん
2012/05/23(水) 01:54:53.590422デフォルトの名無しさん
2012/05/23(水) 01:55:26.740423デフォルトの名無しさん
2012/05/23(水) 01:55:53.080424デフォルトの名無しさん
2012/05/23(水) 01:56:37.380425uy
2012/05/23(水) 01:59:00.21次の話題はなんだ
0426デフォルトの名無しさん
2012/05/23(水) 01:59:00.25class Missile : GameObject
class HormingMissile : Missile
OO使いならこう書いて始めて一人前
0427uy
2012/05/23(水) 01:59:37.58もうその話題はいいからwww飽きたwww次いけ
0428デフォルトの名無しさん
2012/05/23(水) 02:01:23.73それすら出来ない奴が発狂するからやめれ
0429デフォルトの名無しさん
2012/05/23(水) 02:01:58.930430デフォルトの名無しさん
2012/05/23(水) 02:03:40.430431デフォルトの名無しさん
2012/05/23(水) 02:04:36.120432デフォルトの名無しさん
2012/05/23(水) 02:06:17.29アイスクリームをモデリングせよ
バニラとかストロベリーとかレモンとか
半球のスプーンでぽこぽこ積み立てるアレね
0433デフォルトの名無しさん
2012/05/23(水) 02:09:28.170434デフォルトの名無しさん
2012/05/23(水) 02:09:32.23そういうのがOO脳なんじゃないの?
単に物をモデリングしているわけじゃないんだよ。
機能をモデリングしているわけで。
0435uy
2012/05/23(水) 02:12:43.920436uy
2012/05/23(水) 02:18:29.790437デフォルトの名無しさん
2012/05/23(水) 02:33:06.27それを考えるところにセンスが求められてるんだよ
0438デフォルトの名無しさん
2012/05/23(水) 02:33:42.07class Missile : GameObject
class HormingMissile : Missile
やはりコレだな
0439デフォルトの名無しさん
2012/05/23(水) 02:34:17.05キチガイをモデリングせよ
0440デフォルトの名無しさん
2012/05/23(水) 02:34:39.50そういうのがOO脳なんじゃないの?
単に物をモデリングしているわけじゃないんだよ。
機能をモデリングしているわけで。
0441デフォルトの名無しさん
2012/05/23(水) 02:36:35.30キチガイには使い道がないので
その質問は却下とさせてください
0442デフォルトの名無しさん
2012/05/23(水) 04:07:19.202)それぞれのクラスは機能が固定される(剣Aクラス、ポーションBクラス)が、
クラスメンバーとして指定すれば複数の子あるは子の配列を持つことができる
3)親子関係は双方で参照でき、必ず相互から参照していなければならず、
片方からのみ参照することを許してはならない
他から参照されない孤立したインスタンスもゲームオブジェクトとして使用する
4)リフレクションを使わずにすべてのオブジェクトをバイト列に変換、また復元できる
もちろん参照=親子関係も復元しなければならず、
ビルドの違いにより読めなくなってもいけない
と、こんな感じで組んでみたけど
デザパタとT4テンプレート使いまくらないと書けなかったよ
0443デフォルトの名無しさん
2012/05/23(水) 09:30:41.130444uy
2012/05/23(水) 09:49:41.28また俺の得意分野振っただけだよ、 そしてお前らOOのフラットなソース書いてる奴らの不得手な分野
普通のタスクはこうだけど、
object_list.each { |i| i.function() }
木構造にすると、まずそこが再帰になる(概念的には)
def task_system object_list
object_list.each { |i|
if i.task.size > 0
task_system i.task
end
i.function()
}
end
まぁ俺はこんな直接的に再帰は使ってない
もっと多くのメソッドを仲介した再帰になってる
勿論人間に流れが追えるとか思ってない
木構造はそういう世界
でも木構造にしないと、ソース総量増えるし「お互いを参照」する為の変数や、親子関係を表す変数や
最低でも3つが必要になって、オブジェクト生成にそれらを毎回、正しい引数を与えて作らないといけない
さぁ泥沼へようこそ
0445デフォルトの名無しさん
2012/05/23(水) 10:03:43.360446デフォルトの名無しさん
2012/05/23(水) 12:36:04.530447uy
2012/05/23(水) 12:37:44.54ゲームごときで完璧なタスクシステムは必要にならない事と
完璧なタスクシステムは木構造であり
慣れないととても流れを追うことは出来ない、非実用的な代物だという事
0448uy
2012/05/23(水) 12:39:03.76ここまでオブジェクト指向でも実装できる
やれると思うならやってみろ
お前も化けることが出来るかもしれないぞ
0449デフォルトの名無しさん
2012/05/23(水) 12:42:17.540450デフォルトの名無しさん
2012/05/23(水) 12:42:37.490451デフォルトの名無しさん
2012/05/23(水) 12:43:14.990452デフォルトの名無しさん
2012/05/23(水) 12:44:54.160453デフォルトの名無しさん
2012/05/23(水) 13:01:31.670454デフォルトの名無しさん
2012/05/23(水) 13:29:12.330455uy
2012/05/23(水) 13:29:27.340456デフォルトの名無しさん
2012/05/23(水) 13:35:04.640457デフォルトの名無しさん
2012/05/23(水) 13:39:47.970458デフォルトの名無しさん
2012/05/23(水) 13:40:14.770459デフォルトの名無しさん
2012/05/23(水) 13:41:03.63さっさとやれ
0460デフォルトの名無しさん
2012/05/23(水) 13:41:32.41早く
0461デフォルトの名無しさん
2012/05/23(水) 13:41:59.630462224
2012/05/23(水) 13:53:13.37変な基底クラス作ってupdateの自動呼出しとかしてたら地獄だが、
アルゴリズムとデータ構造を分けて考えられる頭があれば地獄にはならない。
0463デフォルトの名無しさん
2012/05/23(水) 15:56:53.180464uy
2012/05/23(水) 16:03:35.17フィールドオブジェクトの下にあるのは自機オブジェクトで
自機オブジェクトの下にあるのは自機ショットなのだから
んで本来、グローバル変数や引数にしなければならない類の
敵オブジェクトや自機オブジェクトの両方から参照しなければならない共通データ
それはフィールドオブジェクト、つまり自機や敵機オブジェクトの1個上のタスクにあるので
参照が容易になり、
グローバル変数も引数もいらなくなるという仕組み
わかったか?ゴミカス
フラットなタスクシステム書いてる時点でヘタレ
0466uy
2012/05/23(水) 16:18:23.36そんな話してねえからさっさとやれ
出来る出来ないとか聞いてねえからさっさとかけよ
0467デフォルトの名無しさん
2012/05/23(水) 16:58:03.66ttp://marupeke296.com/DXCLS_MsgProcTaskTec.html
0468224
2012/05/23(水) 17:13:43.39敵の放った弾は、敵消滅後もUpdateが必要なので、シーンクラスがUpdateするのが適当。
逆に、敵の持ってる武器は、攻撃アニメーション後の武器が壁にめり込んだかどうか当たりを取って、
敵の位置を調節、もしくは攻撃のキャンセルなど、多彩な相互作用が発生するので、
敵自身がUpdateを担当する必要がある。
だから、オブジェクトが他のオブジェクトを持ってて明示的にUpdateを呼び出す場合は、
副作用の順番を明確にして濃密な相互作用をしたいってのが前提にあるから、
do_update( obj ) //子オブジェクトを全て更新
こんな外から与えられた画一的な再起関数一発で列挙→更新してしまっては、
列挙のされ方や更新順、前処理後処理、などなどを、
オブジェクトについてカスタマイズ出来ないので、おおよそ意味が無い。
せめて
obj->update() //子オブジェクトも全て更新
こうする必要がある。
0469uy
2012/05/23(水) 17:14:00.64どこの馬の骨かもわからんサイトを信じ込むんじゃなくて
ちゃんと優秀そうなプログラマのサイトから情報抜き出せ
一応オブジェクトをメッセージ駆動型にさせるのは90点の設計ではあるが
今、俺は100点の設計になる為の木構造について話してんだぞ
0470uy
2012/05/23(水) 17:36:34.99とりあえず。生成されたタスクの実行順序とタイミングは不定であっても動くようにしろ
そもそもタスクをまわしている
A〜Cオブジェクトがあったとして、
AオブジェクトがDオブジェクトを生成したっつっても
このときの動作は何種類かある
1 タスク(配列)にループに中にpushして、Cオブジェクトの次に生成されたDオブジェクトが動作する
2 タスクループ終了後にpushして、次回のループ時にDオブジェクトは動作する
3 またはA,B,Cの任意場所にDを追加、なので現在のループ中にDは実行されるかもしれないし、されないかもしれない
4 または、生成した直後に1度だけupdateも行い、次からはタスクループでupdate
4はかなり特殊
ここは普通にかいたら、A,B,Cの次にDが追加されるから
A→B→C A→B→C→D
このように、Aオブジェクトからみれば
Dオブジェクトは生成してから実行されるまでに1フレームの遅れが出来る
ちょっとしたタスクシステムの実装の違いでエラー吐くようなコードをかくくらいなら、
どんな順序でタスクシステムが動いていても動作するコードをかけ
0471uy
2012/05/23(水) 17:43:49.52なので
A→B→Cで動作してるタスクにおいて、AがDオブジェクトを生成したら
A→D→B→C と一度実行され
次回からは A→B→C→D となる
ただ別にここら辺は意識しないでもうごくコードを心がけてる
0472デフォルトの名無しさん
2012/05/23(水) 18:06:26.960473デフォルトの名無しさん
2012/05/23(水) 18:08:31.76スウェーデン「非実在青少年」裁判の当事者を直撃 過剰な表現規制が生み出す冤罪の構図とは
漫画は児童ポルノに該当するのか――。スウェーデンの最高裁判所で、日本のエロ漫画を
所持し逮捕された男性の裁判が5月16日から始まった。この事件、問題は単に漫画が児
童ポルノに該当するのかどうかということだけではない。日本でも導入を求める声がある
「児童ポルノ」所持の禁止がもたらす冤罪の可能性が現実になったものといえる。現在、
裁判を争う当事者の男性を取材した。
この男性は日本漫画の翻訳者で、スウェーデンでも指折りの漫画専門家として知られる
シーモン・ルンドストローム氏だ。
彼は「児童ポルノ」を所持していた容疑者として逮捕されてしまったのだが、
直接の逮捕容疑となったのは、彼がパソコンに保存していた 300枚あまりのエロ漫画の
ダウンロード画像だった。
警察は、保存されていた画像に描かれた女性キャラクターの胸の大きさに着目。
胸の小さな女性キャラクターを「児童」であると判断し、51枚を「児童ポルノ」としたのである。
(略)
■警察の児童ポルノ担当者まで有罪を非難
さらに驚くのは、ルンドストローム氏を逮捕した警察関係者からも有罪判決を非難する声が上がっていることだ。
「5月16日に最高裁の第一回目の裁判が開かれたのですが、その前日、スウェーデン最
大手新聞『Dagens Nyheter』で、スウェーデン警察の児童ポルノ担当のトップが『性的虐
待の被害に遭っている子どもたちを助けなければならないのに、イラストを捜査対象にし
ている場合ではない。被害に遭っている子どもたちと、空想のイラストで描かれたものを
同列に扱うのは、実際の子どもに失礼』と発言したんです。警察は、私の味方ですよ」(ルンドストローム氏)
最高裁が無罪判決を出す可能性も高そうだが、依然として予断を許さないのが現状だ。
「有罪にされても、スウェーデンが愚か者の国だったというわけですから、あまり気にし
ません。(有罪になったら)日本に行くことにします」(同)
0474デフォルトの名無しさん
2012/05/23(水) 18:19:27.160475uy
2012/05/23(水) 18:20:09.56こういうので国名が出るってすげー恥ずかしいな
0476デフォルトの名無しさん
2012/05/23(水) 18:20:49.85早めにやっとけよ
0477デフォルトの名無しさん
2012/05/23(水) 18:21:22.380478189
2012/05/23(水) 18:29:58.75class Explosion : GameObject, IExplosive
class Missile
{
Explode()
{
DestroyObject( this )
CreateObject( new Explosion() )
}
}
0479224
2012/05/23(水) 18:35:28.32手続き型言語は主に副作用で動作するから、実行順は極めて重要なわけで。
実行順が入れ替わっても動作するように書くことは、他との関わりを避けることを意味するが、
ゲームにしろ何にしろ、システマティックに他と連携して動くものなので、そんな議論は不毛だ。
極端に言えば、(2+3)*4と、2+(3*4)で答えが同じになるようにする意味は無い。何事にも順番はつき物。
>>444が良い例で、子を更新した後に親を更新しているが、
通常、座標系のことを考えると、親を更新してから子を更新するのが普通だ。
しかし、必ずしも常にそうとは言い切れず、
処理によっては、子を更新してから親を更新するのが妥当な場合もある。
そのほかにも、親処理A→子処理→親B処理、など、複雑な処理順になることも多々考えられる。
あくまで処理順は処理内容の依存関係で決まるものなので、依存関係が有るのなら、
>>444のように、画一的に木をたどって列挙→更新すればそれですむというものでは無いだろう。
予断だが、ヘボいタスクシステムのように、タスクに処理順番を割り振ってソートするなどは、もはや愚の骨頂。
0480デフォルトの名無しさん
2012/05/23(水) 18:45:27.850481uy
2012/05/23(水) 19:23:34.97意味しない
存在しているかどうかの確認コードを常に書く
>予断だが、ヘボいタスクシステムのように、タスクに処理順番を割り振ってソートするなどは、もはや愚の骨頂。
それは正解
えっと、ね評価順序については >>444の
def task_system object_list
object_list.each { |i|
if i.task.size > 0
task_system i.task
end
i.function()
}
end
のこれはたとえ
def task_system object_list
object_list.each { |i|
i.function()
if i.task.size > 0
task_system i.task
end
}
end
こうなったとしても別にたいした意味はない
生成タイミングの1フレームの問題がからむの親子関係の部分じゃない
0482uy
2012/05/23(水) 19:37:57.74存在しているか存在していないかは一目瞭然で問題は起こらない
問題は、木構造で別の枝から伸びてる末端のほうのオブジェクトだ
フィールドシーンオブジェクトの中でプレイヤーオブジェクトを生成したときに、
フィールドで、プレイヤーのx座標、y座標などを表示するロジックを最初から実行しようって言うときなどに
1フレームの遅れに泣く事になる
だから俺は>>470において4の方法をとってる
これにより深さ優先順に木構造をたどっているので
末端のオブジェクトから動く仕組みになり
最初からフィールドシーンオブジェクトは、自身の子タスクのプレイヤーのx,y座標を手に入れることが出来る
お前みたいに親タスクから実行しようとすると、まだ子タスクが生成されてない時に
自身のもってるタスクから親タスクがデータもって着たいときに1フレで泣く事になるんだよ
ここまで、わかるか?
お前が考えてる場所で問題は起こらず、問題はもっと別の場所で起こるから
いいから木構造で。そろそろ実際に書け
0483uy
2012/05/23(水) 19:40:03.84ここに対して意見をしたいのであれば自分でかいて自分の目で問題を見ろとしかいえない
0484224
2012/05/23(水) 19:53:06.01親を更新してから子を更新するのと、
子を更新してから親を更新するのとで、
子が参照する親の座標値が変わる。
後者の場合は、一フレーム前の親の座標を参照する羽目になる。
>問題は、木構造で別の枝から伸びてる末端のほうのオブジェクトだ
>フィールドシーンオブジェクトの中でプレイヤーオブジェクトを生成したときに、
>フィールドで、プレイヤーのx座標、y座標などを表示するロジックを最初から実行しようって言うときなどに
>1フレームの遅れに泣く事になる
設計が悪いだけじゃねーの?つまり、処理順に泣いてるわけでしょ?
そういう事態に陥らないように、明示的に処理順を記述しましょうっていってるわけで。
処理に依存関係が多い場合は、フレームワークで一括処理は役に立たん。
0485uy
2012/05/23(水) 20:09:40.290486uy
2012/05/23(水) 20:19:44.90お前がこれから躓くであろう1フレ問題を指摘してるだけ
処理順序によって正しく動作しないタスク()とか、アホか
そもそもハッシュでユニークなシンボルつけてタスクシステム作ってるって言ってるだろう
rubyは保存されるけど普通のハッシュは順序保存されない
0487uy
2012/05/23(水) 20:32:55.231フレっていうか
Aオブジェクトから、A-0オブジェクト生成(Aの子タスク)
A-0オブジェクト内のコードで、1度目の処理のときにA-0-0オブジェクトを生成(A-0の子タスク)
A-0-0オブジェクト内のコードで、1度目の処理のときにA-0-0-0オブジェクト生成(A-0-0の子タスク)
等をやっていく時に、
どうしても末端のほうのオブジェクト生成がネストするたびに1フレ、2フレと遅くなっていくんだった
記憶あいまいだが、1フレ問題までは>>444で子タスクを先に処理する事によって解決できて
2フレ以上からは>>470の4の方法にしない限り解決策がなかった気がする
hayakukaite
0488デフォルトの名無しさん
2012/05/23(水) 21:08:36.660489デフォルトの名無しさん
2012/05/23(水) 21:09:56.580490デフォルトの名無しさん
2012/05/23(水) 21:10:30.95はやくしろよ
0491デフォルトの名無しさん
2012/05/23(水) 21:10:56.910492デフォルトの名無しさん
2012/05/23(水) 22:09:42.86当たり判定の優先順位でまた同じ問題が起きるな
そして今度はプライオリティなんかでは到底解決できないような地獄を見る
酷い場合は動かない
0493デフォルトの名無しさん
2012/05/23(水) 22:29:31.190494デフォルトの名無しさん
2012/05/23(水) 22:36:36.54お前、火薬ヌキのミサイル当たってこいよ
感想文書いていかに痛くないか説明してみろ
0495デフォルトの名無しさん
2012/05/23(水) 22:47:35.34『愚かな者は、邪悪な者よりも忌まわしい』と言ったのだ。
邪悪な者は休むときがあるが、愚かな者はけっして休まないからである。」
(ホセ・オルテガ・イ・ガセット 1883〜1955)
0496デフォルトの名無しさん
2012/05/23(水) 22:48:36.37壁と敵と当たるならシーンに書いたほうがいいんじゃねーの?
基本的に2つの関連するものはどちらかに書いてしまうと
依存してしまうことになってしまうよ
自機、敵、弾とあったときに
シーンに自機しかいない状態
シーンに敵しかいない状態
シーンに弾しかいない状態(自機も敵も死んでシーンから消えた流れ弾)
自機も敵も弾も存在しないシーン
自機と敵の当たり
自機と弾の当たり
敵と弾の当たり
自機のクラスには敵も弾もシーンも入ってはいけない(他のオブジェクトも同様)
シーンが単体で必要なときに自機のソースがなければビルドができない状態にしたくないので
シーンクラスには自機も敵も弾も入ってはいけない
上記すべてを満たすためにはオブジェクトは独立させ(カプセル化)
それぞれの関連処理を書くクラスが別途必要となる
超綺麗に書くならねw
0497デフォルトの名無しさん
2012/05/23(水) 22:50:48.820498デフォルトの名無しさん
2012/05/23(水) 22:51:29.780499デフォルトの名無しさん
2012/05/23(水) 22:57:04.63そもそも1回で済まないときも多いしね
当たりの補正でまた当たりのチェックをしなければならない条件になんて簡単になってしまうし
当たりの優先順位なんてぶっちゃけ実行前にすでに決まってると思うんだけどね
そんなのまで動的に決めようとしたらなにも完成しない
0500224
2012/05/23(水) 22:57:14.79いってることがカオスだが、
A-0の中でA-0-0を作成したなら、A-0-0はコンストラクタで初期化済みな分けだから、
作成して直ぐに、もうアクセスできるし、遅延も糞も無いでしょ。
A-0-0-0に関しても、A-0-0が作成されてから0フレーム目ですでに存在して欲しいということは、
A-0-0のコンストラクタで作成されるわけだから、これも遅延は無いよね。
だけど、俺はそういった話を振ったわけではない。
子を先に更新してから親を更新すると、子が更新時に参照する親の座標値が、
更新前の値だから、一フレーム前の状態を元に更新してしまうよね、と。
だからと言って、親→子の順番で処理するのが常に正しいわけでもなく。
たとえば、子の当たり判定の結果を親にフィードバックして補正する場合もあるだろう。
この場合は子→親の順が適切。
もうすこし複雑化して、親処理A→子処理A→親処理B、なんてのも考えられる。
といったように、処理順は、処理内容の依存関係に左右されるから、
画一的に木をたどって列挙して更新すれば万事OKってわけには行かないでしょうと。
0502デフォルトの名無しさん
2012/05/23(水) 22:58:32.29ダメージはうけんの?
0504デフォルトの名無しさん
2012/05/23(水) 23:04:36.15順番狂いの流動性は真っ先にカプセル化しなければならないだろうな。
0506デフォルトの名無しさん
2012/05/23(水) 23:12:29.670507224
2012/05/23(水) 23:20:16.39流動性ってのは良く分からないが、
動的なものはまったく無いよ。いたって静的。
親::Update()
{
Update_A_Phase();
子->Update();
Update_B_Phase();
子->GetPiyo();
HogePiyo();
}
こんな感じで実行したい順に書いていけば何の問題も無い。
いたって普通のコンポジションだよ。ゲーム以外のプログラムも大体こんな感じだし。
依存関係のある処理を適切な順番に書き並べることで
プログラムは機能するわけだから、ごくごく自然な方式だね。
0508デフォルトの名無しさん
2012/05/23(水) 23:21:55.41辺り判定周りで問題おきたことはない
オブジェクト単位でやらせるのが綺麗だでも遅くなる(高速化ができない)から
今はシーンで辺り判定すべきオブジェクトを抽出し
当たりを判定をしてる
俺のソースは動いてる
安定化まですげー時間をかけた木構造タスクだから
実際200時間くらいかけたと思う
さっさとソースコードかいて苦労をしれよw
0509デフォルトの名無しさん
2012/05/23(水) 23:54:17.90それじゃ起きるよ
簡単に起きる
具体的なケースとして
壁の向こうの敵との当たりを先に計算しちゃって補正が起こって
壁当たりの計算を後にまわしちゃってバグる
どう?解決できないでしょ?
キャラの当たり判定はキャラが動くたび、補正が起こるたびにかけないといけない
だから処理の順番しかきにしてないその構造だと確実にバグるわけ
0510uy
2012/05/24(木) 00:50:33.99オブジェクトを木構造で管理する場合、
コンストラクタで初期化してるだけじゃダメなんだよ
子タスクAは、自身の生成とともに子タスクA-0を
生成しなければならないときに
まさかコンストラクタで子タスク作る奴はいないんだよ
コンストラクタではなく、君のいうupdate()メソッドでも、オブジェクトは生成するのだから
コンストラクタでは初期化だけを行い、updateのほうで子タスクとなるオブジェクトは生成するように
処理分けを(普通は)する。
>>509
今かいただろ
>今はシーンで辺り判定すべきオブジェクトを抽出し
>当たりを判定をしてる
抽出してるんだから順序とかどうにでもなる
が、当たり判定に関しても、「どんな順序で行っても大丈夫なように」作るべきものだよ
コーディング中に意識しなければならないものは減らせ
ていうかさっさと木構造かくが良い
0511uy
2012/05/24(木) 01:01:10.83メソッドの呼び出し順を意識しないとゲームが作れないとか
そこだけ何でC言語みたいな事になってんだよアホか、全てをやり直せ
何もかもを順不同で動かせるシステムをまず作れ
それが出来ないなら、フラットな管理で普通のタスクシステムでやって方がいいよ
あと
> Update_A_Phase();
> 子->Update();
> Update_B_Phase();
> 子->GetPiyo();
> HogePiyo();
こういうソースもなくせ
そこら辺のゲームサンプルは確かにみんなこんなソースだが
何で手動でこんなのを書かなきゃいけないかって、それを考えろ
てか、一人ゲーム製作用の最高効率の設計を考えてんの?それとも社畜ゲームPGがかいてるような設計を考えてんの?
一人ゲーム開発だったら俺みたいにトリッキーなソースに最終的にはなっていくけど、社畜ゲームPG設計を書きたいならスレチだよ
0512224
2012/05/24(木) 01:05:48.58フレーム中で生成したオブジェクトは、まだ誕生してから1フレーム経ってないのだから、
Updateはしなくて良いんだよ。時間が経過していないのだから。
時間が経過していないのにUpdateするのは変だろ。何のUpdateだって話。
もし、オブジェクトが誕生した0フレーム目から何らかの子を持つのであれば、
それは持って生まれたものだから、コンストラクタで生成するのが普通。
ただし、生成フレーム中でUpdateを行う必要は無いといっても、当たり判定は行う必要がある。
0歳の誕生日がコンストラクタで、1歳からは年を取るごとにUpdateが必要。
しかし、0歳の生まれた瞬間から、世間の風当たりはあるよね。
0513224
2012/05/24(木) 01:19:06.13>メソッドの呼び出し順を意識しないとゲームが作れないとか
>そこだけ何でC言語みたいな事になってんだよアホか、全てをやり直せ
>何もかもを順不同で動かせるシステムをまず作れ
もうこの時点でこの子だめでしょ。物事には何でも順序というものがあるわけで。
OOだろうが何だろうが、手続き型言語は副作用が有るから特に処理順は大切だし、
たとえ関数型言語でも、遅延評価はあれど、結合順位はあるわけで。
それに、処理順を記述するからプログラムって名づけられたんだよ。
運動会のプログラムってあるだろ。プログラムナンバー1番、開会式、とかのやつ。
http://ja.wikipedia.org/wiki/%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%A0
本質的にそういうもんなんだよ。
0514224
2012/05/24(木) 01:30:03.84a = 3*4; //A
b = 2+3: //B
この場合、処理Aと処理Bには依存関係が無いから、
どちらを先に実行しても構わない。
だけど、こんなゲームつまらないよね。
相互作用や依存関係がゲームのルールになるのだから。
クソゲー作りたいのなら別だが。
0515uy
2012/05/24(木) 02:00:08.12一人開発用のトリッキーなソース書きたいのか
大人数向けの社畜タスク書きたいのか
0516uy
2012/05/24(木) 02:06:41.56じゃあハッシュについてはどう思ってんだw
マルチスレッドは?
マルチプロセスは?
割り込み処理は?
「順序」正しく動作させなきゃまともに動かないゲーム設計なんてゴミでしかねーぞ
常に「順序」意識しながらゲームアルゴリズムかくのかよ
さっさと作り直せ
0517uy
2012/05/24(木) 02:11:57.83z座標いじれば描画順序などどうでもいいw
メソッドだってオーバーライドっていうものがある
本当にどうっっっしても処理順序が必要になるのであれば、
タスクを廻してるたった1つのメソッドをオーバーライドして書き直すだけで済む話
まずそんな事はしないけどな
さっさと、木構造のタスクかくか、ゲーム作りのスタートラインにたって進めよ
いつまで設計について考えて準備体操してんだよw
0518224
2012/05/24(木) 02:15:15.39なんだその二択ww
トリッキーなコードも書かんし、タスクも使わんわww。
普通なコードを普通に書くだけで十分満足です。
コードで自己主張せずに、ゲームルールetcのもっと別のところに注力すれば?
しかしあれだね。
自動化したがるのは結構だが、どうでも良いようなところならともかく、
ゲームのキモの大事なゲームロジックの制御フローまでテンプレ化してしまっては、
最早ゲームを作る意味は無いよね。売れるのなら別だが。
どうせコードの量はそんなに縮まないし、汎用性を失うだけだわ。
0519デフォルトの名無しさん
2012/05/24(木) 02:21:30.44『愚かな者は、邪悪な者よりも忌まわしい』と言ったのだ。
邪悪な者は休むときがあるが、愚かな者はけっして休まないからである。」
(ホセ・オルテガ・イ・ガセット 1883〜1955)
0520uy
2012/05/24(木) 02:25:59.79そこだけはオブジェクト指向でやったって100%違うから、よく考えろ
ボスキャラのオブジェクトZというものを生成しなければならないとして、
そのオブジェクトZは自身の持ってる子タスクが10個附属しているとしよう、たとえばボスキャラの持っている装備やそんなところ
オブジェクトZが生成されたら、その子タスクも同時に生成されていなければならない
そのオブジェクトZが子タスク10個を生成するタイミングを、君はコンストラクタでやるつもりか?
ありえないだろうwww
そもそもオブジェクトの生成っていうのはコンストラクタではなく、
通常のメソッドでタスクループ中にやるべきものだ(君のいうupdate)
コンストラクタ内でも「オブジェクトの生成処理」なんてものを混ぜてしまうと、
コンストラクタの中身と、updateメソッドの両方を見て、一体どちらでオブジェクトを生成したのか
その確認をしなければならない、スパゲッティっつうんだよそれ
コンストラクタはせいぜい「簡単な」最低限の初期化処理をまとめたメソッドで簡潔に書くべきもの
コンストラクタでやらなくても良い処理はすべて外部に出せ
OOもできねーのか
0521uy
2012/05/24(木) 02:29:25.68>トリッキーなコードも書かんし、タスクも使わんわww。
タスク使わんって、お前今さっきまですげー必死にタスクの設計について語ってたじゃん
ボケたか
>ゲームのキモの大事なゲームロジックの制御フローまでテンプレ化してしまっては、
>最早ゲームを作る意味は無いよね。売れるのなら別だが。
ゲームエンジンっていってわかるお前?
そもそもさ、プログラミングごときに対して時間を割かないようにする為に、
最低限の手間で作れるようにするんだよ
俺が教えるのはトリッキーな設計のみ ついてこないならこの話題は終了な
0522224
2012/05/24(木) 02:34:11.46ハッシュはコンテナなので、データ構造の分野だ。
今言ってるのは制御構造の話なので筋違い。
ハッシュから特定のデータを取り出してきて、順番に処理していくわけだからな。
結局順番が重要。
マルチスレッド、マルチプロセス、割り込み処理に関しては、
順序に依存関係が有る場合は待ちを入れる。
WaitForSingleObjectとかでな。
>>517
Zソートはゲームロジックに関わる相互作用が無いんだよ。気づかなかった?
もちろん、描画順については依存関係があって、順番がとても重要。
だからこそわざわざ並べ替えてるわけだが。
描画に関して、描画順が重要ってことは、そのまま
ゲームオブジェクトUpdateにおいて、Update順が重要ってことなのだが。
それから、メソッドのオーバーライドと処理順には何の関係も無い。
0523224
2012/05/24(木) 02:38:22.15>その確認をしなければならない、
何の確認だよそれ。
>タスク使わんって、お前今さっきまですげー必死にタスクの設計について語ってたじゃん
どこでだよ。
0524uy
2012/05/24(木) 02:39:49.15はいできたー満足ー終わりー。
じゃねえんだよ
舐めすぎだろ
今までに何作も作ってきたし、これからも何十作と作るんだよ俺は。
どんな設計だろうと、それなりの時間かけりゃゲームは作れるが、
そんな話はしていない
最高効率を出す方法を話してる
この設計だと○○の問題が〜〜〜WW なんていうのは、ゲーム全く作った事ない奴の発想
タスクの実装ごときでゲームプログラムが破綻するとか思ってるなら
そもそもゲームを作った事がないか、よほど腐った設計をしてる
別に根幹部分の設計なんてどんな風に実装してたって作れる
問題は、その根幹設計の上でゲームプログラムを作る時に、
どの程度の効率を出せるか? だ
処理順序を意識しながらソースコードをかかなきゃいけないとか論外に近いことは分かれ
作り直せ
0525224
2012/05/24(木) 02:42:30.53いわゆる二段階初期化だな。
p = new obj();
p->init();
どちらにしても最初から持って生まれるものを、update内で生成は無いわ。
0526uy
2012/05/24(木) 02:42:51.96タスクシステムを作る時の、リストや木構造は「データ構造」だろうがwww
つうか、まずそこから? Lispやれば。
>>コンストラクタの中身と、updateメソッドの両方を見て、一体どちらでオブジェクトを生成したのか
>>その確認をしなければならない、
>何の確認だよそれ。
今現在画面に映っているオブジェクトが、一体どこで生成されたものなのか
お前のソースコードだとコンストラクタとupdateの両方を見なければならない
まさか1000行程度のプログラムしかかいた事がないわけじゃあるまいな
とりあえずお前はゲームを作った事がなく、ハッシュを知らず、木構造を知らず、Lispを知らないところまでは確認できた
0527uy
2012/05/24(木) 02:46:58.87本来なら
task.store( :test , new obj() )
これで済むはずの物が
お前のソースだと
p = new obj();
p->init();
task.store( :test , p )
こうなるわけだ
全てのオブジェクトに、二段階初期化のためのinit()もたせる気か?
それとも「例外」を作り、init()が必要になるクラスだけ特別扱いでもすんのかね?
0528224
2012/05/24(木) 02:53:13.98だから、タスクシステムは使わないといってるのだが。
>今現在画面に映っているオブジェクトが、一体どこで生成されたものなのか
>お前のソースコードだとコンストラクタとupdateの両方を見なければならない
0フレーム目のUpdateだけ、武器の作成などの、
特殊な初期化処理をするほうが、むしろ奇妙だ。
変な書き方をしているからハマるのだ。そして変な解決方法を思いついて、
2chでバカな書き込みをするが、
他の人はそもそも、そんな問題を抱えていないという。
0529uy
2012/05/24(木) 02:53:20.47x,y座標や、その他のオブジェクトの詳細パラメータは
コンストラクタで初期化されても困るんだよw
内容を書かなきゃいけない実装部分とコンストラクタは遠すぎる
普通にメンバ変数にするまでもないupdate()メソッド内のローカル変数の初期化というのも
def update
a = 0
b = 32
c = 222
d = []
e = ""
end
こうやって冒頭に書かれる、
つうか場合によって
self.x ||= 100
self.y ||= 100
で、初期値をupdate()内に入れるぞ
俺の設計であれば、コンストラクタのときにxはnilの状態でもupdate内で初期化すればタイミングが間に合う
つまりコンストラクタで初期化してもいいし、update内で初期化してもいいのでどちらでもかける
お前の設計ではコンストラクタ内でしかかけない
設計上はきれいでもそれじゃ自由度が低いんだよ
0530224
2012/05/24(木) 02:58:41.62初回だけupdateを明示的に呼ぶ、お前のと変わりないじゃないかww
しかも初期化処理が何処なのか明示的で分かりやすい。
俺は二段階初期化しない人だけどな。
0531uy
2012/05/24(木) 03:04:43.67奇妙かどうかは問題じゃない
開発効率が出せるか出せないかって話、
お前の言ってる事は理想論であって、ゲームプログラムを完璧にかけるものと勘違いしてる
口だけで全く経験がないんだろう
プログラミング時のコーディングの自由度を高められる設計にはなっておらず
お前のはコーディングスタイルを束縛する設計だ
全ての場所で、全てのことを出来るようにさせろよw
>>530
全然違う
俺の設計上での「コンストラクタ」とは、全オブジェクト共通の初期化処理
オブジェクトごとに対しての初期化処理は、コンストラクタでは行わずオブジェクトごとに行う
つーかupdateの前に、
っていうかクラスじゃなくてlambdaだからね俺は。
->{
# ここがupdate前のコンストラクタ、つまりinit()
->{
# ここが本来のupdate
}
}
意味わかる? -> はrubyのlambda宣言
関数を返す関数を定義する事によって、lambdaがクラスの代用になるところまでは理解してるかね
0532デフォルトの名無しさん
2012/05/24(木) 03:13:27.890533デフォルトの名無しさん
2012/05/24(木) 03:15:56.320534デフォルトの名無しさん
2012/05/24(木) 03:18:55.350535uy
2012/05/24(木) 03:19:02.58話になってねーから
もしや1フレ問題に行く前の段階で挫折しちゃったか
ほんとマジレスしてやると、100人中100人に
A「タスクの処理順序を意識しなければ動かない設計」
B「タスクの処理順序は意識しなくても動かせる設計」
どちらが優れているか?
聞いたら、100人ともB選ぶだろ
>>513
>物事には何でも順序というものがあるわけで。
>OOだろうが何だろうが、手続き型言語は副作用が有るから特に処理順は大切だし、
この辺とかマジ、どこのC言語だよって思ったわ・・・
何作もゲーム作ってれば気づく場所なんだけどな「あれ?毎回同じことかいてね?」って。。。
作らないからそこが省略できる事に気づけないんだよ
>ゲームのキモの大事なゲームロジックの制御フローまでテンプレ化してしまっては、
>最早ゲームを作る意味は無いよね。売れるのなら別だが。
>どうせコードの量はそんなに縮まないし、汎用性を失うだけだわ。
これに対しても、汎用性を失わないようにゲームエンジン作るのが腕の見せ所なわけで、
タスクの根幹部分なんてゲーム内容と関係ねーし、テンプレ化できるだろ。そこは。って指摘しているのにわからないからって威張れる事ではない
0536デフォルトの名無しさん
2012/05/24(木) 03:19:50.790537uy
2012/05/24(木) 03:20:00.60>>247
>ゲームは作らんから知らんが、
224 == 247
0538デフォルトの名無しさん
2012/05/24(木) 03:26:33.500539224 アクセス制限食らった
2012/05/24(木) 03:30:00.95間に合わないから奇策を練ったんじゃなかったのかよ。普通に書け。シンプルイズベスト。
>つまりコンストラクタで初期化してもいいし、update内で初期化してもいいのでどちらでもかける
お前の方が何処で初期化してるか探すの大変じゃねーかよ。
よく >>526 書けたな。それとももう自分の書いた内容忘れたのか?
>>531
そんなコード書いてるから嵌るんだろ。
普通はそこには内部でしか使わない一時変数しか書かんものだ。
0540デフォルトの名無しさん
2012/05/24(木) 03:44:06.730541デフォルトの名無しさん
2012/05/24(木) 03:47:16.870542デフォルトの名無しさん
2012/05/24(木) 04:37:24.080543デフォルトの名無しさん
2012/05/24(木) 04:40:34.810544デフォルトの名無しさん
2012/05/24(木) 04:43:27.060545デフォルトの名無しさん
2012/05/24(木) 07:46:30.12衝突検証用マップかなんかにマッピングする
2)マップ自身がマップを走査して衝突判定をする
3)衝突したオブジェクト同士に「おまえこのオブジェクトとぶつかりました」と通知する
4)通知を受け取ったら相手オブジェクトの種別を参照して爆散かスルーを決める
5)爆散したら自分の爆散フラグを立てる
5’)マップから呼び出された時点では生きていたので相手の爆散フラグは見なくていい
最適化考えないならこんなんでいいじゃない
0546デフォルトの名無しさん
2012/05/24(木) 08:05:39.99\韓国の.../
(⌒) ピッ
/ ̄ ̄| ∧_∧
| ||. | ━⊂(´Д` )
\__| ======== \
| | /※※※※ゞノ,_)
 ̄ ̄ ⌒~⌒~⌒~⌒~⌒
\AKBの.../
(⌒) ピッ
/ ̄ ̄| ∧_∧
| ||. | ━⊂(´Д` ;)
\__| ======== \
| | /※※※※ゞノ,_)
 ̄ ̄ ⌒~⌒~⌒~⌒~⌒
0547uy応援団
2012/05/24(木) 09:23:28.96がんばってください
応援しています
yu応援団
0548デフォルトの名無しさん
2012/05/24(木) 11:25:29.220549uy
2012/05/24(木) 11:44:48.13> 間に合わないから奇策を練ったんじゃなかったのかよ。普通に書け。シンプルイズベスト。
利点がわからないならお前はシンプルにかけ
>お前の方が何処で初期化してるか探すの大変じゃねーかよ。
話きいていないのか?
「全てのオブジェクトには共通のコンストラクタがあり」
オブジェクト単位ではコンストラクタではなくlambdaを利用(悪用)して初期化をする
お前の設計だとここで、一々オブジェクトごとにクラス定義をする設計
>そんなコード書いてるから嵌るんだろ。
>普通はそこには内部でしか使わない一時変数しか書かんものだ。
はまりまくるよ、俺が確認した限り木構造タスクシステムにおいて
「まともに動かせる」生存ルートは1つしかない
普通のフラットなタスクなら適当に書いても動くのに対してだ
1つだけというのは言い過ぎだろうが、そこら中が地雷だらけという事は理解しとけ
その代わりに得られるものは大きい
お前も結局、木構造タスクはかかないのな これだけ教えてやったのに
木構造って単語だすとすぐに逃げてしまう
フラットなタスクで今後も何年間も悩み続けるんだろう
0550デフォルトの名無しさん
2012/05/24(木) 11:44:55.84逆コンパイルなので定数,ジェネリクス,コメントは消滅
メソッド名などはMCPの人が解析して名前を付けているので未設定の名前もある
http://zombie-craft.googlecode.com/svn/trunk/sources/minecraft/net/minecraft/src/
0551デフォルトの名無しさん
2012/05/24(木) 11:45:31.38触手があるmob(Ghast)のレンダリングのソース
http://zombie-craft.googlecode.com/svn/trunk/sources/minecraft/net/minecraft/src/ModelGhast.java
攻撃されると周囲の仲間と共に襲ってくるmob(PigZombie)のソース
http://zombie-craft.googlecode.com/svn/trunk/sources/minecraft/net/minecraft/src/EntityPigZombie.java
0552uy
2012/05/24(木) 11:50:55.27あれをこーしたら動かない、あーしたら動かないとかねーから。。。
お前がテンプレ設計しか出来ずに、一般的なググれば出てくるソースコードの理解で
躓いて、これはいいこれは悪いとかグダグダやっているのは無駄だ
>>332
でもいってる奴いるけど、これだよ お前は何の用途のための設計をしようとしてるんだ?
そこらへんググればでてくるゴミ設計と同じ事やってそれで満足かwww
初心者レベルの入門からさっさと前にいけって言ってるんだよ
躓く場所そこじゃねーから、さっさと歩け
332 :デフォルトの名無しさん:2012/05/20(日) 21:59:30.00
自分の構築したシステムが一体なんであるか考える癖をつけたほうがいい
目的は
開発工数の削減なのか、
シンプルな記述なのか、
使用者に分かりやすいインターフェイスの提供なのか、
実行速度なのか、
・
・
・
なんの目的も達成してないもの作られても反応に困る
0553デフォルトの名無しさん
2012/05/24(木) 11:54:12.630554uy
2012/05/24(木) 11:54:12.72ゲーム話題でJAVAとかふざけてんか
0555uy
2012/05/24(木) 11:59:59.08素晴らしいレベルでハードコーディングしてんな
ゲームプログラムってそもそも静的言語で作る場合って
根幹システムは静的言語で作ってゲーム内容は動的言語で記述すべきものなのにこいつ全部JAVAでかいてんのか
JAVAでハードコーディングしている時点で仕様変更が全く出来ないソースなんだと思った
これとか何がやりたいんだよ、バカか
field_22260_e
public void func_22241_a(GuiButton guibutton)
{
field_22256_i
field_22257_h
int j1 = field_22263_b / 2 - 110;
}
int i3 = ((field_22260_e - field_22261_d) * (field_22260_e - field_22261_d)) / func_22245_b();
http://zombie-craft.googlecode.com/svn/trunk/sources/minecraft/net/minecraft/src/GuiSlot.java
0556デフォルトの名無しさん
2012/05/24(木) 12:01:52.99Androidのゲームも結構javaっすよ、NDKもあるけど
0557uy
2012/05/24(木) 12:04:21.65protected abstract void func_22242_a(int i, int j, int k, int l, Tessellator tessellator);
public GuiSlot(Minecraft minecraft, int i, int j, int k, int l, int i1)
これも地味にやばい
IDEの支援があればかけるだろうが、
こういう奴がJAVAで引数30個くらいあるメソッドとか定義するんだろうなって思った
ハッシュ引数や名前つき引数ない言語は終わってる
0558デフォルトの名無しさん
2012/05/24(木) 12:07:02.72だから>>550で定数は消滅、メソッド名なども未解析があるって言ったじゃないですかw
定数はコンパイル時にバイトコードに値が直接埋め込まれちゃうんですよ
ツッコミは逆コンパイルで読み辛くなった部分だけっすか?
0559uy
2012/05/24(木) 12:10:54.56http://zombie-craft.googlecode.com/svn/trunk/sources/minecraft/net/minecraft/src/MetadataChunkBlock.java
こいつのソースなんなの
ゲーム作る前に
プログラミング作法の問題じゃねーか
これも
http://zombie-craft.googlecode.com/svn/trunk/sources/minecraft/net/minecraft/src/PanelCrashReport.java.bak
なんっだこれww
このappendのあらし
そして今、絶望的なことをしった
http://zombie-craft.googlecode.com/svn/trunk/sources/minecraft/net/minecraft/src/WorldProvider.java
public boolean field_6478_e;
private float field_4217_f[];
field_なんとか〜ってたくさんあるなとおもったら、全部boolenじゃなくてfloatの配列も混ざってやがるwwwwwwwwwwwwwwwwwwwwwww
del "http://zombie-craft.googlecode.com/svn/trunk/sources/minecraft/net/minecraft/src/*"
終わり
0560uy
2012/05/24(木) 12:12:46.24ああこれ逆コンパイルしたやつなんだ
世の中にはこんなJAVERがいるのかと
マジで焦らされた
どちらにしろJAVAとか読む気ないけど
0561デフォルトの名無しさん
2012/05/24(木) 12:22:28.32それもコンパイラが変換したやつ
うん、javaに疎い人にjavaの逆コンパイルのソース見せた俺が悪かった
データモデルの構造とかクラス設計の話を期待しただけに
逆コンパイラへのコーディングレベルのツッコミで終わったのは残念
0562デフォルトの名無しさん
2012/05/24(木) 12:31:47.750563デフォルトの名無しさん
2012/05/24(木) 13:35:23.38どこみたらいいのかわからんだろ
伝説のuyがいちばんうんぬんいいたい部分のコードはベースクラスにあるんだし
0564デフォルトの名無しさん
2012/05/24(木) 14:36:11.33uyのそんざいがまちがい
0565uy
2012/05/24(木) 14:38:08.38なんなのかっていうのを示せよ
別に何もすごい事やってる箇所ねーじゃん
0566uy
2012/05/24(木) 14:40:02.57A 何も思わない
終わり
0567デフォルトの名無しさん
2012/05/24(木) 14:44:14.14普通に書いて実用十分ならそれでいいと思うぞ
オブジェクト指向は本当に正しいのか? → YES
0568uy
2012/05/24(木) 15:01:06.2770点程度の設計なんだけど
そうやって、何かひとつに思想を纏め上げるっていう事をやるっていうのは
プログラミング言語をひとつに統一したらITすげー勢いで発展するんじゃね?って思うものと同じで
オブジェクト指向をひたすら極め続けたら、それはそれでひとつの答えにたどり着く未来は来ると思うよ
根幹がどんなゴミカスだろうと、ラップし隠蔽しそしてメタしてしまえば関係ない
人間が、皮膚の内側に臓器やグロテクスなものをしまいこんでいるのと同じようにな
俺としては根幹部分はオブジェクト指向ではなく木構造でやる。世界全体でどんなコードをかいていようと
今まで数年間プログラミングしてきた結果そちらの方が効率がいいと判断している
これは、たとえるなアメーバのような単細胞生物のようなもの、ソースコード上において臓器とかそういうものはなく
細胞の1つ1つが自立してる
それで失うものは言語やIDEの支援と実行速度、
オブジェクト指向でかいていれば、クラス単位でのコンパイルや最適化の仕組みを作りこむ事は
可能だろう、俺のやり方では、ノウハウの蓄積がないから
誰もコンパイラや最適化手段を作りこんでくれない
なのでいずれOOがさらにさらに進化していくならば、この設計を超える可能性はある
しかしそれでも今現在、OOよりは俺のやり方の方が効率でるんだからしょうがないよね
一人プログラミングしてるんだから、一番の効率良い手段を使うだけの話だし、
お前らが知りたがっているなら、俺は暇つぶしに話してはやるけど
その技術を妄言だと決め付けて使わないか、やってみようと努力するかは貴様ら次第
OO以外の設計手法にそもそもの興味がないのであれば、uyなどNGしてしまえばいい
0569デフォルトの名無しさん
2012/05/24(木) 15:10:11.810570デフォルトの名無しさん
2012/05/24(木) 15:11:00.69クソコテのせい?
0571uy
2012/05/24(木) 15:12:35.43OOでやってる事は関数型でも出来るだろうが、ひっくり返せないだろうな
ひとつに統一したほうが良い
根幹部分をひっくり返すのは、余りいい事ではない
オブジェクト指向でしか通用しないオブジェクト指向専用の技術が
一気に無用のものへとなるからな
しかし、言っちゃ悪いけど関数型80点、OOは70点、 関数型プログラミングよりも概念的に
幼稚なオブジェクト指向が素晴らしいとか勘違いされていたら、そりゃ哀れに思うしかないのではないか
0572デフォルトの名無しさん
2012/05/24(木) 15:13:05.730573uy
2012/05/24(木) 15:15:13.26rubyですら限界キてるのに
静的言語で実装できたらかなり奇跡に近いけどな
俺はC++で書く気しないから、誰か書いて欲しいは
0574uy
2012/05/24(木) 15:44:28.51数年前まではC++やperl押せ押せだったのに、なんと忙しい事か
結局10年先もrubyを使っているかはわからない
実際動的言語と静的言語って区別も余り意味がないんだよなぁ
静的言語側の、言語の柔軟性を高める方向性に世界が動くか
動的言語側の、言語の実行速度を高める方向性に世界が動くか
その違いでしかない、両者はどんどん近づいていく
とりあえず俺は実行速度よりも開発効率が欲しいから動的言語側にいるわけだけど
静的言語側が動的言語並に柔軟になってくるのであれば使ってやっても良い
言語の柔軟性において静的言語は動的言語と比べ大きく差をつけられている
対して速度に関しては動的言語は部分的に型をつけてのコンパイルや、ライブラリをC実装にするなどで
高速化は計れる
動的言語側の方が今は優位に出てるとしか思えない
0575デフォルトの名無しさん
2012/05/24(木) 17:32:30.140576デフォルトの名無しさん
2012/05/24(木) 17:48:57.320577デフォルトの名無しさん
2012/05/24(木) 17:55:47.11言語仕様、速度、ライブラリ数で総合点つけたら
現時点最強はRubyで異存はない
0578デフォルトの名無しさん
2012/05/24(木) 17:58:52.01速度は遅いほど、
ライブラリは枯れていないほど
得点が高いんですね
0579デフォルトの名無しさん
2012/05/24(木) 18:11:19.15設計の選択肢がOOだけというのは
愚かなものだ
0580デフォルトの名無しさん
2012/05/24(木) 18:28:47.65というのはあるにしろ散々リソース注ぎ込んで研究しただけあってそのノウハウが書籍という形で手に入るというのは強みといえよう
0581デフォルトの名無しさん
2012/05/24(木) 18:40:39.39rubyは知らんけど?
「自分のコードなんだから好きに書きかえればいい
わざわざオーバーライドとかするとかバカだろwwww」
っていうんだろうけど
そういうやつに限ってテストコードなんて書いてないよね
バグが出るに任せるだけのコーディング
そんなの10年以上前のやり方じゃんね
0582デフォルトの名無しさん
2012/05/24(木) 20:00:35.21???
0583デフォルトの名無しさん
2012/05/24(木) 20:11:18.72それに君の使ってる言語がrubyかもしれない
0584デフォルトの名無しさん
2012/05/24(木) 20:11:28.86>バグが出るに任せるだけのコーディング
アホ〜w TDDが何かわかっていない。
0585uy
2012/05/24(木) 20:12:42.47使い物になるわけねーだろ
js君はHTMLに撲滅されるよ
0586デフォルトの名無しさん
2012/05/24(木) 20:14:48.07じゃあ聞くがきみらデバッグどうやってやってんの?
まさか何もなし? すごいな
0587デフォルトの名無しさん
2012/05/24(木) 20:18:47.45ステップ実行w テストとデバッグの区別も出来んのかw
0588uy
2012/05/24(木) 20:45:17.45親クラスに大量のデフォルト処理を提供するメソッドが用意されていて
実装の為のクラスは親クラスを継承し、
オーバーライドしていく方法なのかね
俺も昔それやろうとしたな、やめたけど。
やっぱり、根幹(内臓)が間違ってて、その上をきれいにラップしても、
それは、汚い臓器を皮膚や洋服で覆い隠してる人間と同じだ。
人間がこのまま、数万年後まで子孫維持できるかどうか。
オブジェクト指向は、とりあえずゾウリムシやアメーバではなく、本質的には人間と同じようになってる
なぜ人であったはずの俺がアメーバみたいな設計を思いついたのかは知らんけど、
単細胞生物アメーバと多細胞生物の人間は、どちらが進化した個体と言えるだろうか
俺は単細胞生物の方が無駄なものがなくて綺麗だと思うんだよね
そっちのほうにITは進んで欲しい、プログラミングの単細胞生物化、オブジェクトはアメーバ化して欲しい
だって、人間って、心臓とかはなくなったら生きていけないが、肺に関しては2つうち1つさえあれば
生きていけるんだもの、それってつまり、冗長したソースコードって事だろ
人間の体をみて、それどおりにプログラミングしてたら、冗長するよ
人間はイキモノとしては無駄なものがあちこちに多い失敗作なんだから
0589uy
2012/05/24(木) 20:48:52.37これさえあればjsってかなりいらない感じなんだけど
全然IEでしか動作しねーな
Firefoxもoperaもだめだ
IEの動作が遅いのは、いろんな仕様に対応させてるからかもな
jsしね
0590uy
2012/05/24(木) 20:52:49.93失敗作がここまで生き残り、妙な進化をしてるんだからな
水槽の中で、最初は世話してたけど途中から思うように成長しなくなって
完全放置されているのが人間
で、知らない間に、繁殖し、進化してる、 神の作った水槽の中でな きも
0591デフォルトの名無しさん
2012/05/24(木) 20:55:37.06曲がりなりにも動的言語ではrubyより有名どころなのに。
0592デフォルトの名無しさん
2012/05/24(木) 21:58:29.06『愚かな者は、邪悪な者よりも忌まわしい』と言ったのだ。
邪悪な者は休むときがあるが、愚かな者はけっして休まないからである。」
(ホセ・オルテガ・イ・ガセット 1883〜1955)
0593デフォルトの名無しさん
2012/05/24(木) 22:00:10.45俺の言ってること全然理解しないでレスしたのミエミエ
順番じゃどうにもならない
0594デフォルトの名無しさん
2012/05/24(木) 22:12:14.95頭の弱い子でFA?
0595uy
2012/05/24(木) 23:06:05.04結局ソースとしてあげない奴ばかりだな
実装もせずに起こりうる問題を憶測でレスしてるから間違うんだよ
0596デフォルトの名無しさん
2012/05/24(木) 23:28:23.56馬鹿のツリー構造だなw
0597uy
2012/05/24(木) 23:31:16.57社畜がちょっと1作だけゲーム作りたいって時にかくタスクシステム
↓
適当でいいよ。適当にかいてりゃ動くし、特に何も考えなくていいよ
B
これから何作か作ろうとしてる奴、ちゃんとしたゲームタスクシステムをかきたい
↓
とりあえず親子関係を持つタスクまでは書けるようになれ
C
最高効率をだしたい
↓
ヒント:木構造で実装やってみ
はい
0598デフォルトの名無しさん
2012/05/24(木) 23:32:14.540599uy
2012/05/24(木) 23:34:19.30>>247
>ゲームは作らんから知らんが
これなんだよね
ゲームを作った事もなく、ソースコードも書かず
これからもゲームを作る事はない、
そんな奴が設計語って出来たようなわかったような気分になる為のスレ
飽きた
0600uy
2012/05/24(木) 23:35:34.57>>247
>ゲームは作らんから知らんが、
224 == 247
え、しらねーのかよw
終了
0601デフォルトの名無しさん
2012/05/24(木) 23:55:12.720602デフォルトの名無しさん
2012/05/25(金) 00:27:11.20http://itpro.nikkeibp.co.jp/article/Watcher/20120523/398461/
0603デフォルトの名無しさん
2012/05/25(金) 00:29:38.700604uy
2012/05/25(金) 01:29:05.41情報操作怖すぎ
今度は金と匂いで人を集めようってんですか
そこら辺の零細IT企業が新人に年収1500万払えるとでも!?
ITはどんどん縮小されていく時代
0605デフォルトの名無しさん
2012/05/25(金) 01:44:14.29数年前にかなりの話題になってたが、その辺の会社がほいほい1500万も払えるとは到底
思えない。GREEやDeNAは確かに高給優遇してたけど、コンプガチャも崩壊しちゃったしね。
0606デフォルトの名無しさん
2012/05/25(金) 01:49:46.47仕事で使ってるよ。
struct task
{
task *pParent;
std::list<task*> child_list;
virtual Proc();
};
こんな感じ。
0607224
2012/05/25(金) 02:01:10.04普通にコンポジションで良いじゃん。
勝手にProcが呼ばれることに何のメリットも感じん。
0608uy
2012/05/25(金) 02:22:46.18マジか、失礼した
ちゃんとかける人もこのスレにいたようだ
技術わかってる人がこんな板に1人でもいる事に感動したんだけど
>>607
もう黙れば。
0609デフォルトの名無しさん
2012/05/25(金) 07:59:52.23『愚かな者は、邪悪な者よりも忌まわしい』と言ったのだ。
邪悪な者は休むときがあるが、愚かな者はけっして休まないからである。」
(ホセ・オルテガ・イ・ガセット 1883〜1955)
0610uy
2012/05/25(金) 13:05:08.65>>247
>ゲームは作らんから知らんが、
224 == 247
口癖はコンポジション
0611デフォルトの名無しさん
2012/05/25(金) 13:13:36.82『愚かな者は、邪悪な者よりも忌まわしい』と言ったのだ。
邪悪な者は休むときがあるが、愚かな者はけっして休まないからである。」
(ホセ・オルテガ・イ・ガセット 1883〜1955)
0612uy
2012/05/25(金) 14:16:54.20>>247
>ゲームは作らんから知らんが、
224 == 247
口癖はコンポジション
0613デフォルトの名無しさん
2012/05/25(金) 18:54:26.50操作仕様設計段階からOOは有用なんだな... インターフェースに人間味が出てくんだな、 こっこれが...
smalltalk創世からOOにタッチした仙人ライクな身ながら、日本では貧乏の極みに落ちたんだな!
アメにいた方が良かったんだな これが... おっ おにぎり食べたいな!
0614デフォルトの名無しさん
2012/05/25(金) 20:35:47.990615デフォルトの名無しさん
2012/05/25(金) 21:44:42.93『愚かな者は、邪悪な者よりも忌まわしい』と言ったのだ。
邪悪な者は休むときがあるが、愚かな者はけっして休まないからである。」
(ホセ・オルテガ・イ・ガセット 1883〜1955)
0616uy
2012/05/25(金) 22:02:38.17>>247
>ゲームは作らんから知らんが、
224 == 247
口癖はコンポジション
0617デフォルトの名無しさん
2012/05/25(金) 22:08:45.57『愚かな者は、邪悪な者よりも忌まわしい』と言ったのだ。
邪悪な者は休むときがあるが、愚かな者はけっして休まないからである。」
(ホセ・オルテガ・イ・ガセット 1883〜1955)
0618デフォルトの名無しさん
2012/05/25(金) 22:11:16.600619デフォルトの名無しさん
2012/05/25(金) 23:30:23.93ちなみにポインタは共有ポインタを使う。 functionとかと組み合わせれば任意の関数を寿命管理付で
コールバック的に呼び出すようにもできる。
戻り値boolにしてtrueならコールバック官僚とかね。
0620uy
2012/05/26(土) 02:16:11.51タスクがメッセージ待ちみたいになってるの?
0621デフォルトの名無しさん
2012/05/26(土) 02:54:17.55苦・・・
0622uy
2012/05/26(土) 11:17:13.29>>247
>ゲームは作らんから知らんが、
224 == 247
口癖はコンポジション
発狂しちゃったか
0623uy
2012/05/26(土) 11:27:24.20コテに自分の意見を否定されるのは耐えられても
名無しに否定されるのは耐性のない奴が多い
おそらく「uyがいってるからこれは間違ってるんだ!」と最初に決めつけ、それを変わらない大前提としてる
しかし、俺は最初にあえて突拍子もない勘違いを誘発するような発言をした上で
徐々に正しい意見へと推移させていく、最初に大前提を作ってしまった奴は
「uyが"今"は"正しい"」という事にさえ気づけず、否定レスをし続ける
そして徐々に劣勢になっていき、トドメは第3者の名無しからのレスだ
俺が議論相手の精神を殺してるわけじゃない、いつもトドメは第3者の名無しが殺してしまう
そこまで弱らせて、あと、糸を一本きれば死ぬような状態まで追い詰めているのが原因ではある
そこで相手は発狂し、くだんねーと言い残しスレに二度と現われなくなり、uyをNGリストへ追加する
NGへ追加という事は賢くもあるが、それなら最初からNGにしていればいいだけの話
煽られまくったあげくに議論で負けて、途中からNG追加など負けを認めた以外にないではないか
コンポジション wwwwww
初心者は、経験者が「ごく当たり前」のようにやっている技術の名前を平気で連呼してくるからすぐ分かるよなw
こんな、当たり前の基本的過ぎる操作に名前がついてるとか、まぁ技術文書書くときに事細かい操作にたいし名前はついてたほうが
いいけれど、連呼するものではないな C++しか出来ないそこの初心者はRubyやってみれば?
0624デフォルトの名無しさん
2012/05/26(土) 13:43:35.21場違いなところで持論を喚くだけ、これって軽度アスペじゃん
0625uy
2012/05/26(土) 14:19:25.37まで読んだ
0626デフォルトの名無しさん
2012/05/26(土) 14:19:51.74「馬鹿は死なねば治らないのであり、だからこそアナトール・フランスは
『愚かな者は、邪悪な者よりも忌まわしい』と言ったのだ。
邪悪な者は休むときがあるが、愚かな者はけっして休まないからである。」
(ホセ・オルテガ・イ・ガセット 1883〜1955)
0627uy
2012/05/26(土) 14:24:44.80とか、割とマジで考えてる
今はrubyでやっちゃってるから
この次のプロジェクトになるけどな
既存のゲームフレームワーク使って作るより
先人がほとんどいない言語とライブラリで
人柱になるほうがよっぽど技術いるのに何いってんだかお前は・・・
正直、木構造タスクも1年以上使い続けてたら飽きてきてる
効率は格段だとしてもね
新しい設計が欲しい
0628デフォルトの名無しさん
2012/05/26(土) 14:29:42.94617 名前:デフォルトの名無しさん [sage] :2012/05/25(金) 22:08:45.57
「馬鹿は死なねば治らないのであり、だからこそアナトール・フランスは
『愚かな者は、邪悪な者よりも忌まわしい』と言ったのだ。
邪悪な者は休むときがあるが、愚かな者はけっして休まないからである。」
(ホセ・オルテガ・イ・ガセット 1883〜1955)
0629uy
2012/05/26(土) 14:31:33.62使えねー
0630uy
2012/05/26(土) 14:32:29.36『愚かな者は、邪悪な者よりも忌まわしい』と言ったのだ。
邪悪な者は休むときがあるが、愚かな者はけっして休まないからである。」
(ホセ・オルテガ・イ・ガセット 1883〜1955)
0631デフォルトの名無しさん
2012/05/26(土) 14:33:07.94何勝手にリセットしてんだよ
しねよ
0632uy
2012/05/26(土) 14:34:02.571000行程度に収まるレベルならいいが
さらに増えてくるとヤバくなってくる事は事実
大体、俺の中で5000行くらいになってそのヤバさは現実のものとなった
俺は動的言語の方がゲームつくりが楽だから、流行らそうとしてたんだけど
これは無理だなぁって思い始めてる
rubyで作るのに向いてるゲームはオセロ将棋麻雀などのボードゲームや
テトリスなどのパズルゲーム
これらは速度がいらないし、規模も小さいのでrubyで作るのが最も効率良い
でも、、STGくらいになると、ちょっと作りこんでくるとヤバイ
やばいぜ
俺は作っていけるけど、なれない奴がやったら途中で破綻するだろうってのが少し分かった
そもそも、ocraがライブラリによってはexe化を正常にしてくれないから
そこら辺にも地雷があるし、dxrubyはマルチスレッドに弱いし
そこら中が地雷だらけ 勝手に地雷踏んでrubyはダメだダメだとか騒がれても迷惑だから、別についてこなくていいよ
0633デフォルトの名無しさん
2012/05/26(土) 14:36:11.040634uy
2012/05/26(土) 14:37:34.21-----------まとめ----------
>>247
>ゲームは作らんから知らんが、
224 == 247
口癖はコンポジション
0635デフォルトの名無しさん
2012/05/26(土) 14:37:53.96までよんだ
0636uy
2012/05/26(土) 14:38:19.10-----------まとめ----------
>>247
http://toro.2ch.net/test/read.cgi/tech/1336122899/247
>ゲームは作らんから知らんが、
224 == 247
口癖はコンポジション
0637デフォルトの名無しさん
2012/05/26(土) 14:39:02.090638デフォルトの名無しさん
2012/05/26(土) 14:39:33.520639デフォルトの名無しさん
2012/05/26(土) 14:41:14.480640デフォルトの名無しさん
2012/05/26(土) 14:45:42.530641デフォルトの名無しさん
2012/05/26(土) 14:46:39.270642デフォルトの名無しさん
2012/05/26(土) 14:52:20.23たとえば「色」のクラスと「形」のクラスがあったとして
「色と形」を持ったクラスを作りたいけど多重継承ができない
そういうときにメンバーに「色」と「形」を持って
そのメソッド・プロパティに橋渡しを用意して
2つの機能を同時に使えるクラスを作る
その橋渡しの手法のこと
0643デフォルトの名無しさん
2012/05/26(土) 15:05:11.680644デフォルトの名無しさん
2012/05/26(土) 15:05:55.60間違い。コンポジションは多重継承の代わりに使うものではない。
多重継承ができたとしても、継承関係(is-a)ではなく
has-a関係を作りたい時に、コンポジションを使う。
色を持ったカラーテレビは、"テレビ"であるが、
色を持ったカラーテレビは、"色"であるかね?
違うだろう。色ではないものを、色を継承して作ってはいけない。
「色と形」を”持った” といっているから自然とhas-a関係であることは
理解しているようだが、is-aである継承と区別できるようにがんばろう。
0645デフォルトの名無しさん
2012/05/26(土) 15:13:24.730646デフォルトの名無しさん
2012/05/26(土) 15:15:01.880647デフォルトの名無しさん
2012/05/26(土) 15:16:54.82恥ず
0648デフォルトの名無しさん
2012/05/26(土) 15:23:11.150649uy
2012/05/26(土) 15:23:27.67でも決して優れた言語だとは思っていないし
2chでその話をするつもりもない
今の時代に、時代遅れと化したC++言語の話題をC++スレ以外で展開しちゃう時点で迷惑だと気づけ
0650デフォルトの名無しさん
2012/05/26(土) 15:26:21.580651デフォルトの名無しさん
2012/05/26(土) 15:26:53.770652uy
2012/05/26(土) 15:28:28.17頭おかしいどころか
初心者突き抜けて未経験かよお前
-----------まとめ----------
>>247
http://toro.2ch.net/test/read.cgi/tech/1336122899/247
>ゲームは作らんから知らんが、
224 == 247
口癖はコンポジション
もしかしてプログラミング未経験
0653デフォルトの名無しさん
2012/05/26(土) 15:29:24.17『愚かな者は、邪悪な者よりも忌まわしい』と言ったのだ。
邪悪な者は休むときがあるが、愚かな者はけっして休まないからである。」
(ホセ・オルテガ・イ・ガセット 1883〜1955)
0654uy
2012/05/26(土) 15:29:43.38-----------まとめ----------
>>247
http://toro.2ch.net/test/read.cgi/tech/1336122899/247
>ゲームは作らんから知らんが、
224 == 247
口癖はコンポジション
0655uy
2012/05/26(土) 15:30:15.63-----------まとめ----------
「馬鹿は死なねば治らないのであり、だからこそアナトール・フランスは
『愚かな者は、邪悪な者よりも忌まわしい』と言ったのだ。
邪悪な者は休むときがあるが、愚かな者はけっして休まないからである。」
(ホセ・オルテガ・イ・ガセット 1883〜1955)
>>247
http://toro.2ch.net/test/read.cgi/tech/1336122899/247
>ゲームは作らんから知らんが、
224 == 247
口癖はコンポジション
0656デフォルトの名無しさん
2012/05/26(土) 15:31:27.80これがコンポジション
0657デフォルトの名無しさん
2012/05/26(土) 15:32:27.75そこは継承が正しい
0658デフォルトの名無しさん
2012/05/26(土) 15:38:13.20-----------まとめ----------
「馬鹿は死なねば治らないのであり、だからこそアナトール・フランスは
『愚かな者は、邪悪な者よりも忌まわしい』と言ったのだ。
邪悪な者は休むときがあるが、愚かな者はけっして休まないからである。」
(ホセ・オルテガ・イ・ガセット 1883〜1955)
>>247
http://toro.2ch.net/test/read.cgi/tech/1336122899/247
>ゲームは作らんから知らんが、
224 == 247
口癖はコンポジション
0659デフォルトの名無しさん
2012/05/26(土) 15:45:44.19コンポ゚ジシコンポ゚ジンコンポジジシコンポジショシコンホジジシコンポジンコンポション
コンホジジシコンポジジシコンポションコンポジシコンポジショシコンポションコンホジジン
コンポションコンポジショシコンホジションコンホジジンコンポジショシコンホジションコンポション
コンポ゚ションコンポションコンホジションコンポ゚ショシコンポ゚ションコンポ゚ションコンポジジン
コンポジジンコンポ゚ジシコンポ゚ジンコンポションコンホジショシコンポジジシコンホジション
コンポションコンポジショシコンポジジシコンポジショシコンポションコンポ゚ショシコンポジション
コンポ゚ショシコンポジジシコンポショシコンポ゚ジンコンポ゚ジンコンポジションコンホジション
コンホジションコンポ゚ションコンポ゚ジシコンポ゚ジンコンホジジシコンホジショシコンポ゚ジシ
コンポジシコンポ゚ションコンポ゚ションコンポジシコンポジシコンホジジンコンホジジシ
コンポジシコンポジジシコンホジジシコンポジジシコンホジションコンホジジンコンポ゚ジン
コンポジションコンポ゚
a="コンポジション"
b="コンポジション"
550.times do |x|
if rand(2)==0
print a[x%a.size]
else
print b[x%b.size]
end
n = (a.size*7)
puts if (x%n)==n-1
end
0660デフォルトの名無しさん
2012/05/26(土) 16:29:56.26これがコンポジション
0661デフォルトの名無しさん
2012/05/26(土) 17:10:36.08これが継承
0662224
2012/05/26(土) 17:57:05.64実行順をないがしろにするからそういう目にあう。
同じ失敗を何度繰り返したら気づくのだろうか。
0663デフォルトの名無しさん
2012/05/26(土) 19:40:31.64-----------まとめ----------
「馬鹿は死なねば治らないのであり、だからこそアナトール・フランスは
『愚かな者は、邪悪な者よりも忌まわしい』と言ったのだ。
邪悪な者は休むときがあるが、愚かな者はけっして休まないからである。」
(ホセ・オルテガ・イ・ガセット 1883〜1955)
>>247
http://toro.2ch.net/test/read.cgi/tech/1336122899/247
>ゲームは作らんから知らんが、
224 == 247
口癖はコンポジション
0664デフォルトの名無しさん
2012/05/26(土) 19:42:11.42-----------まとめ----------
「馬鹿は死なねば治らないのであり、だからこそアナトール・フランスは
『愚かな者は、邪悪な者よりも忌まわしい』と言ったのだ。
邪悪な者は休むときがあるが、愚かな者はけっして休まないからである。」
(ホセ・オルテガ・イ・ガセット 1883〜1955)
>>247
http://toro.2ch.net/test/read.cgi/tech/1336122899/247
>ゲームは作らんから知らんが、
224 == 247
口癖はコンポジション
タスクの実行順序を意識しないとゲームが作れない(笑)
OOを得意げに語っているつもりが、やっている事が20年前のC言語だったという事実
0665デフォルトの名無しさん
2012/05/26(土) 19:44:49.09-----------まとめ----------
「馬鹿は死なねば治らないのであり、だからこそアナトール・フランスは
『愚かな者は、邪悪な者よりも忌まわしい』と言ったのだ。
邪悪な者は休むときがあるが、愚かな者はけっして休まないからである。」
(ホセ・オルテガ・イ・ガセット 1883〜1955)
>>247
http://toro.2ch.net/test/read.cgi/tech/1336122899/247
>ゲームは作らんから知らんが、
224 == 247
口癖はコンポジション
タスクの実行順序を意識しないとゲームが作れない(笑)
OOを得意げに語っているつもりが、やっている事が20年前のC言語だったという事実
0666224
2012/05/26(土) 20:39:31.390667デフォルトの名無しさん
2012/05/26(土) 21:07:36.91これをOOで表現するとどーなるの?
0668デフォルトの名無しさん
2012/05/26(土) 23:30:13.75「馬鹿は死なねば治らないのであり、だからこそアナトール・フランスは
『愚かな者は、邪悪な者よりも忌まわしい』と言ったのだ。
邪悪な者は休むときがあるが、愚かな者はけっして休まないからである。」
(ホセ・オルテガ・イ・ガセット 1883〜1955)
>>247
http://toro.2ch.net/test/read.cgi/tech/1336122899/247
>ゲームは作らんから知らんが、
224 == 247
口癖はコンポジション
タスクの実行順序を意識しないとゲームが作れない(笑)
OOを得意げに語っているつもりが、やっている事が20年前のC言語だったという事実
0669デフォルトの名無しさん
2012/05/26(土) 23:35:43.800670デフォルトの名無しさん
2012/05/26(土) 23:37:56.68混ぜたいならScalaの方が遥かに出来がいい
0671uy
2012/05/26(土) 23:47:27.10柵がないだけで、
柵がなくても大丈夫な奴は大丈夫なんだよ
大丈夫だと思ってた奴でさえも事故る事はあるけど、
別にそんくらいいいんじゃね?
腕がよければ事故ってもすぐに立て直せる
型がないとプログラミングできない!(俺が!)
っていうのは、自分バカですと認めているようなもの
型がないとプログラミングできない!(周りが!)
だったらわかる
お前らはどっちの意味で、言ってる?ww
0672デフォルトの名無しさん
2012/05/26(土) 23:56:01.65無分別なバカがドヤ顏
0673デフォルトの名無しさん
2012/05/26(土) 23:58:04.84スレタイ位嫁な?
OOPLとしてRubyが劣等生なのは否定しようがない事実だ
0674uy
2012/05/27(日) 00:08:19.47これからPerlは完全に死に、Pythonもそろそろ限界で、
PHPは駆逐される運命にある
Web言語で生き残るのはRubyしかない
結局、あと数年でruby以外の選択肢なんてなくなるのに・・・
まぁ現状のrubyで静的言語で作っていた部分までrubyで書きなおせるとは思っていないよ
しかし何割かはrubyで書き直されているのが現状だろう
これから静的言語を使う場面はどんどん減ってくる
0675デフォルトの名無しさん
2012/05/27(日) 00:10:34.69おまえは黄金体験レクイエムの中にいる
0676uy
2012/05/27(日) 00:13:49.82ばら撒く意味でも開発してる
でも、ABAがD言語でてから一瞬でSTG作ってきた時みたいに
一人やる奴がいても、後ろが続かないと結局流行らないんだよな
そういう意味でrubyゲーム開発は"まだ"少し時期が速いような気はしてる
別に、1対1で環境構築手段と、rubyの癖について教えれるなら、初心者でも作れるだろうが
0677uy
2012/05/27(日) 00:18:49.18動的言語は、やはり扱うには少しセンスがいる
本当にこれでゲーム作るっていうのを流行らせるべきなのかどうかの迷いもあって、
あまり本気で流行らそうとかは思ってない
ゼロからかくならrubyの方が有利だけど、
ちゃんと設計してあって、そのソースコードが手元にあるならば
静的言語でゲームを作り、部分的にスクリプトの導入っていうのが
今はベストというように感じる
俺は別になくても大丈夫だけど
動的言語にはちゃんとしたデバッグ機能を何とかして作り、それを初心者に与えて欲しい
そうでなければ初心者には奨められない
0678デフォルトの名無しさん
2012/05/27(日) 00:20:35.79ゲームにRubyを選ぶ奴の頭には蛆がわいてる
0679デフォルトの名無しさん
2012/05/27(日) 00:21:50.550680デフォルトの名無しさん
2012/05/27(日) 00:23:16.82挫折したんですね。わかります
0681デフォルトの名無しさん
2012/05/27(日) 00:25:53.24なんか根拠あってrubyなんか信仰してんのかよ
トンチンカンな消去法以外になにかメリットいってみろ
言語なんか所詮手段でしかないだろ
はじめてから10年経つ前にc/c++からC#になっちまったけど
そんときに何が主流になってるかなんてわかんねーぞ
全く別の言語の可能性のが高いんじゃないか?
0682uy
2012/05/27(日) 00:27:43.20現状のpcスペ、rubyの性能、でも十分にゲームは作れる
実際のところ3Dゲーだって作れるよ
問題は速度ではなく、rubyでもなく
大規模な開発に動的言語を採用するには、ある程度はスキルが求められるってこと
ここのあたりを、放置していれば
いつまでも熟練者しか扱わず、よってこない
Lispコミュのようになっていく
初心者にも扱えるようにさせるのはrubyの本分とは違うのかもしれないが、
所詮は何をするにも人数だ
0683uy
2012/05/27(日) 00:29:12.61>そんときに
?
そんときっていつだよって話だが
rubyよりも効率を出せる言語があるのならば乗り換えるだけの話
現状rubyが最高効率なんだから、ruby使うに決まってるだろ
0684デフォルトの名無しさん
2012/05/27(日) 00:36:05.41他の言語の方がさらに速くて、未来でもずーっと相変わらずRubyは劣等生だわ
JSより遅いんだし
0685デフォルトの名無しさん
2012/05/27(日) 00:39:06.060686uy
2012/05/27(日) 00:52:24.25CPU、GPUの性能をフルに使ってるわけじゃないからね
C++で、CPUの性能の100分の1しか使わないゲームをかいてるくらいなら
ruby使って一瞬でゲームかけよって話
0687uy
2012/05/27(日) 00:53:40.82俺は初心者には優しく教えるが、
考えの凝り固まった老害に救いの手は差し伸べないから はやく死ね
0688デフォルトの名無しさん
2012/05/27(日) 00:56:19.05『愚かな者は、邪悪な者よりも忌まわしい』と言ったのだ。
邪悪な者は休むときがあるが、愚かな者はけっして休まないからである。」
(ホセ・オルテガ・イ・ガセット 1883〜1955)
0689デフォルトの名無しさん
2012/05/27(日) 00:56:48.910690デフォルトの名無しさん
2012/05/27(日) 00:57:11.34これがコンポジション
0691デフォルトの名無しさん
2012/05/27(日) 00:57:33.55これが継承
0692デフォルトの名無しさん
2012/05/27(日) 00:58:25.09これをOOで表現するとどーなるの?
0693uy
2012/05/27(日) 01:00:31.78じゃあな
0694デフォルトの名無しさん
2012/05/27(日) 01:02:25.730695デフォルトの名無しさん
2012/05/27(日) 01:34:47.02え?rubyのメリットってなんか書いてあった?
0696デフォルトの名無しさん
2012/05/27(日) 01:44:00.540697デフォルトの名無しさん
2012/05/27(日) 01:44:29.190698デフォルトの名無しさん
2012/05/27(日) 04:48:42.53巧妙なrubyネガキャンだろこれ
0699デフォルトの名無しさん
2012/05/27(日) 05:28:17.24これがコンポジション
0700224
2012/05/27(日) 07:58:31.31・処理順を意識しないように
→処理に依存関係が無い
→相互作用が無い
→クソゲー
自分では気づかずに、クソゲー方向に舵取りしてしまっている。
頭が悪すぎて、必要なものを必要とわからずに取り除く。
どうやってもダークサイドに落ちてしまうらしい。
0701669
2012/05/27(日) 13:51:54.60コンパイル言語では、バイナリ−レベルでのOCPが可能だが
スクリプト言語では、テキストベースしか出来ない。
このあたりの重要性は、実際に大規模開発・運用をやったことがある人間にしか理解出来ない。
0702デフォルトの名無しさん
2012/05/27(日) 14:11:42.18何の問題があるわけ?
0703デフォルトの名無しさん
2012/05/27(日) 14:26:47.520704デフォルトの名無しさん
2012/05/27(日) 14:50:16.27>何の問題があるわけ?
逆に何で問題が無いと思える?
既存部分が、前回と同じ動作する保証は?
>>703
素人は黙って読んでいろ、アホ。
0705デフォルトの名無しさん
2012/05/27(日) 14:55:19.86まあまあそう言わずに
0706デフォルトの名無しさん
2012/05/27(日) 15:02:47.47>既存部分が、前回と同じ動作する保証は?
これはアホっぽい。何年前からスリップしてきたんだ。
0707デフォルトの名無しさん
2012/05/27(日) 15:03:26.99イベントいっててまともにレス返してなかった
かえったらまとめてレスするわ
ほんとに可愛い子がコスプレしてくれるようになったなー
0708デフォルトの名無しさん
2012/05/27(日) 15:04:27.450709デフォルトの名無しさん
2012/05/27(日) 15:06:11.72これがデコレーター
0710デフォルトの名無しさん
2012/05/27(日) 15:12:46.91他の名無しに揚げ足取られるんだよ
何度目だ
0711デフォルトの名無しさん
2012/05/27(日) 15:36:24.65急にどうした?
涙ふけよ
0712デフォルトの名無しさん
2012/05/27(日) 15:42:04.15電波状態悪い場所からレスしてやってるだけありがたいと思え
0713デフォルトの名無しさん
2012/05/27(日) 15:47:55.17これがコンポジション
0714デフォルトの名無しさん
2012/05/27(日) 16:00:38.45何度泣かされれば気が済むのか
全力で勉強したとしても今から追いつけるのは3年先くらいだろう
どうせ全力じゃやらないから20年くらいかかるか
あ、そのころにはとっくにプログラミングやめてるわw
まともに議論したいならせいぜい3年以内には技術つけてこい
0715デフォルトの名無しさん
2012/05/27(日) 16:01:49.520716デフォルトの名無しさん
2012/05/27(日) 16:02:25.85『愚かな者は、邪悪な者よりも忌まわしい』と言ったのだ。
邪悪な者は休むときがあるが、愚かな者はけっして休まないからである。」
(ホセ・オルテガ・イ・ガセット 1883〜1955)
0717704
2012/05/27(日) 16:09:22.77何千箇所と使われている共通クラスがあったとする。
それをOCPで改修した場合、スクリプト言語だと全てに影響がでる。
バイナリレベルで拡張できる言語だと、必要最小限のモジュールで済む。
数十〜百名単位で造っているシステムでは、誰がどのクラス・メソッドレベルまで修正しているか
全員に認識させる事は非常に難しい。大規模になると、影響範囲の極小化が大事になる。
>>706,710お前らのようなアホには
この例が何を意味するか分からないんだから黙ってろよ、カス。
0718デフォルトの名無しさん
2012/05/27(日) 16:12:38.59おまえが時代遅れのバカだってことはわかった
0719デフォルトの名無しさん
2012/05/27(日) 16:15:10.54> それをOCPで改修した場合、スクリプト言語だと全てに影響がでる。
こいつ>>717 OCPの意味わかってないぞ
0720デフォルトの名無しさん
2012/05/27(日) 16:21:59.420721デフォルトの名無しさん
2012/05/27(日) 16:24:15.64だから、アホは黙れと。
0722デフォルトの名無しさん
2012/05/27(日) 16:25:17.17それのどこが「テキストベースでOCP出来てる」状態なんだよアホ
0723デフォルトの名無しさん
2012/05/27(日) 16:30:12.67あとはこいつの始末まかせるわ
コンポジション(笑)に突っ込まれすぎて何かレスしないと心が保てないらしい
0724デフォルトの名無しさん
2012/05/27(日) 16:32:05.65まじ……コスプレ
したい
0725デフォルトの名無しさん
2012/05/27(日) 16:38:53.98アホは何が言いたいのかわからん。
>OOPLとして何故Rubyが駄目なのかは、OCPを徹底出来ないこと。
と言っている俺に何を言っているんだ? いいかげんカスは黙ってろ。
0726デフォルトの名無しさん
2012/05/27(日) 16:39:49.05昔は女装というか汚装ばかりで現実から目を背けろと案に教えられてる気分だったが
まじやばい
ハンパない
ていうかコスプレ衣装は売られてるけどみんな微妙に違うし
自己アレンジしてんのかすごいな
俺はいつもああいう綺麗で可愛く楽しんでる奴らを見てると
いくら自分が引きこもって技術開発しても永久にかなわないなと思わされる
0727717
2012/05/27(日) 16:41:18.800728デフォルトの名無しさん
2012/05/27(日) 16:43:01.620729デフォルトの名無しさん
2012/05/27(日) 16:43:08.17テキストベースで出来るだけではダメだ、と言い出したのがアホのお前だから(>>701>>704参照)
それなのにテキストベースですら出来てない例出してるから馬鹿なの?と言われてる
そんなことも分からないからお前はアホなんだよ
0730デフォルトの名無しさん
2012/05/27(日) 16:44:24.960731デフォルトの名無しさん
2012/05/27(日) 16:46:46.86つまりコスプレしながら変なコードをダイレクト実行のほうが盛り上がるんだよ
0733デフォルトの名無しさん
2012/05/27(日) 16:51:56.91俺は別にRubyが好きでRubyやってるってよりまじめにRuby以外で出来ないからうざったいendに耐えながらRubyやってんだけど
0734デフォルトの名無しさん
2012/05/27(日) 16:53:29.15たぶんそいつ高校生くらいだからもう放置でいいよ
0735デフォルトの名無しさん
2012/05/27(日) 16:59:40.450736デフォルトの名無しさん
2012/05/27(日) 17:00:48.320737デフォルトの名無しさん
2012/05/27(日) 17:01:25.160738デフォルトの名無しさん
2012/05/27(日) 17:02:09.54おまえが頭悪いのはわかったから。もうくるな。
0739デフォルトの名無しさん
2012/05/27(日) 17:04:03.50『愚かな者は、邪悪な者よりも忌まわしい』と言ったのだ。
邪悪な者は休むときがあるが、愚かな者はけっして休まないからである。」
(ホセ・オルテガ・イ・ガセット 1883〜1955)
0740デフォルトの名無しさん
2012/05/27(日) 17:04:31.37実際は言語ごとに未解決の問題が多数あり
しばらく使わなければその言語に何の問題があるのかは見えてこない
静的言語をメインにしてた時期と動的言語をメインにしていた時期の両方がなければ
所詮はにわかって事だよ
0741224
2012/05/27(日) 17:05:12.82そのとおり。
Rubyが悪いのではなく、uyの頭が悪いだけだがな。
・処理順を意識しないように
→処理に依存関係が無い
→相互作用が無い
→クソゲー
自分では気づかずに、クソゲー方向に舵取りしてしまっている。
頭が悪すぎて、必要なものを必要とわからずに取り除く。
どうやってもダークサイドに落ちてしまうらしい。
0742デフォルトの名無しさん
2012/05/27(日) 17:05:17.000743デフォルトの名無しさん
2012/05/27(日) 17:07:42.470744デフォルトの名無しさん
2012/05/27(日) 17:09:02.14この時代にいんたーねっつを経験して古い人たちはこの習慣が埋め込まれたのだ
これがコンポジション
0745デフォルトの名無しさん
2012/05/27(日) 17:09:49.360746デフォルトの名無しさん
2012/05/27(日) 17:10:38.59uyの頭は悪いけど
だからといってRubyが悪くなくらるわけじゃない
0747デフォルトの名無しさん
2012/05/27(日) 17:12:18.49Principleはルールじゃないぞ?
おまえ本質がわかってないんだから黙ってろ
0748デフォルトの名無しさん
2012/05/27(日) 17:13:54.47これがコンポジション
0749デフォルトの名無しさん
2012/05/27(日) 17:15:06.26こいつは使い始めないと設計が慣れなくてイメージしにくいがすごく便利。
3Dシーングラフもツリー構造で対応した処理を同じ親を持つ構造にしてノード単位で
好きなように処理を構築することも出来て便利。
命令伝達系もデザパタとかオブジェクトメッセージとかにすると、不要なノードは省略するとかも可能。
0750デフォルトの名無しさん
2012/05/27(日) 17:15:13.62な?
正しくOOできているわけがない
20年前のC言語をOOだと思っているのだから
0751デフォルトの名無しさん
2012/05/27(日) 17:15:56.000752デフォルトの名無しさん
2012/05/27(日) 17:16:30.10ですよぬ
0753717
2012/05/27(日) 17:17:06.35>それなのにテキストベースですら出来てない例出してるから馬鹿なの?と言われてる
"出来てない例" どこが出来ていない例なんだ?
”どのモジュール”に対して「OCPが守られていない」と、どうしたら言える?
対象のモジュールだけを見るならOCPを適用出来ている。
俺が言っているのは、”全てのモジュール”が「OCPを守っているとは言えない」と言っている。
だから
>OOPLとして何故Rubyが駄目なのかは、OCPを徹底出来ないこと。
と言っている。
まっアホは言い過ぎた謝る。
>>732
お前はアホ。
0754デフォルトの名無しさん
2012/05/27(日) 17:24:20.34おまえに出来なくても
世の中の時計はとうに進んでるですよ
0755224
2012/05/27(日) 17:25:04.46その結果、間違った答えを掴んでしまう人も居るようだけどね。
手続き型言語なのに処理順が有ることを否定してみたり、
安易な制御の利かない木構造タスク作ってコンポジションを否定してみたり。
どうやら、頭が悪すぎて、必要なものを必要とわからずに
取り除いてしまうクセがあるらしい。
彼からしたら、人間性や知能も無駄なものなのだろう。
0756デフォルトの名無しさん
2012/05/27(日) 17:26:50.71バイナリーベースのOCP(笑)だと
問題出ないの?
0757デフォルトの名無しさん
2012/05/27(日) 17:32:07.23ちなみにプレイヤーと敵はどっちを先に処理しないと動かない設計?
0758デフォルトの名無しさん
2012/05/27(日) 17:33:18.250759224
2012/05/27(日) 17:34:16.24コンポジションで良いじゃん。
コンテナ使えば任意の数の子を持てるし、
複数のコンテナを使えば分類も出来る。
処理に依存関係がある場合は、そもそもコンテナを分けとく。
コンテナ内のソートも必要ないというわけ。
0760デフォルトの名無しさん
2012/05/27(日) 17:34:35.76なんでゲーム上に1個のツリーしか作れない前提になってんだよw
0761デフォルトの名無しさん
2012/05/27(日) 17:35:54.52でどっち?プレイヤーと敵のタスクはどっちを先に実行してんだよ
順序意識しないと動かないんだろ?
よくわからんけどさw
0762デフォルトの名無しさん
2012/05/27(日) 17:36:07.85任意の箇所に生成したり開放したりできます。
まあ、各種関数のキックは生成者が管理しなきゃならんがそんなもんは当たり前の話だしな。
子として作ってもいいし、別ツリーとして作ってもいい。
0763デフォルトの名無しさん
2012/05/27(日) 17:38:07.06いやその子ツリー1個すら作れない子だから
仮に1個作ったら力つきて絶命するんだろ
0764デフォルトの名無しさん
2012/05/27(日) 17:38:25.460765デフォルトの名無しさん
2012/05/27(日) 17:38:59.620766デフォルトの名無しさん
2012/05/27(日) 17:41:07.130767224
2012/05/27(日) 17:43:32.46こんなこと答えるのもバカらしいが、
もし敵がPlayerを追跡するタイプの場合、
敵→Playerの順で更新したら、
一フレーム前の(更新前の)Playerの位置情報を元に、
敵を更新してしまう。
序の口ですけどね。
0768デフォルトの名無しさん
2012/05/27(日) 17:45:33.64まあこんなレベルの子なんです
これでツリーとか理解できるわけが…
0769224
2012/05/27(日) 17:47:54.350770デフォルトの名無しさん
2012/05/27(日) 17:48:49.66247でゲーム作ったことありませんって自白してる224だからね。そこの低脳
0771デフォルトの名無しさん
2012/05/27(日) 17:49:31.63それは敵が位置スカラー情報だけを元にしてる設計が悪い
で、それを誤魔化すために未来の位置を元に動くみたいなことやるのがバカの発想な
追跡タイプなら速度ベクトルを元に追跡すべき
0772224
2012/05/27(日) 17:50:16.06ゲームが普通のアプリと違って特別ってことは無いんだよ。
0773デフォルトの名無しさん
2012/05/27(日) 17:51:37.10初心者煽るのおもしろすぎてやめられないw
帰り道でのいいひまつぶしになった
そろそろ家につく
俺はゲーム作りの続きをやるわ
0774デフォルトの名無しさん
2012/05/27(日) 17:51:59.330775デフォルトの名無しさん
2012/05/27(日) 17:52:00.12コンポジションで問題ない
0776デフォルトの名無しさん
2012/05/27(日) 17:53:22.04はい解散ーw
初心者相手につられちゃったのうwwww
0777デフォルトの名無しさん
2012/05/27(日) 17:55:24.44レベル低いとこんなことも楽しめるんだな
うらやましいぜ
0778デフォルトの名無しさん
2012/05/27(日) 17:55:56.630779224
2012/05/27(日) 18:00:45.72どうやったって一緒だよ。
更新前の古い情報を参照しちゃうことには変わりない。
手続き型言語には副作用があるから、何をどうしようが、
依存関係のある処理には順番が付きまとう。
簡単な解決方法は、呼び出しを順を明示的に書き並べること。
どうしても書き並べることが出来ない場合に限って、
タスクのようなコールバックを導入する。OSのタスク管理のようにな。
0780デフォルトの名無しさん
2012/05/27(日) 18:11:14.97少しは考えろよw
おまえが何でつまづいてるかサッパリだわ
速度ベクトルは古い情報たちを元に導くに決まってるだろ
未来の確定情報を元に追跡する、
みたいな決してありえないこと、に対しまず疑問をもてよ
0781uy
2012/05/27(日) 18:17:44.00木構造タスクでやってる人に聞きたいんだけど
シーンってタスクに含めてる?
俺はシーンまでタスクの一部というかオブジェクト化してるからタスクの一部になってんだけど
動いているものの若干、無理やりな設計な気がしてる
0782デフォルトの名無しさん
2012/05/27(日) 18:20:19.60ここはおまえのチラウラじゃねーよ
あっちいけ
0783デフォルトの名無しさん
2012/05/27(日) 18:21:29.73混ぜて欲しいなら日本語話せ
0784デフォルトの名無しさん
2012/05/27(日) 18:22:04.520785uy
2012/05/27(日) 18:23:38.31ゲームによってシーンは木構造ではなくグラフ構造なのだよ
オブジェクトは木構造で出来るのに
シーンはグラフ構造 という結論が俺の中で出ているので、
この両者は本当は混ぜちゃいけないものとなってる
混ぜられない事もないはずなんだけどな
0786デフォルトの名無しさん
2012/05/27(日) 18:25:15.610787デフォルトの名無しさん
2012/05/27(日) 18:43:37.140788デフォルトの名無しさん
2012/05/27(日) 18:45:38.820789デフォルトの名無しさん
2012/05/27(日) 18:46:13.700790uy
2012/05/27(日) 18:46:29.79木構造でもグラフでもなく平坦な管理
ああいいよどうせオブジェクトとシーンは別管理だろう、
もし同一管理でやってるとかなら、話を聞きたかっただけ
俺は無理やり同一管理でやっているが、いくつかの問題をクリアしてない
っと、初心者(224)の前でする話じゃないなこれ
0791デフォルトの名無しさん
2012/05/27(日) 18:46:49.230792224
2012/05/27(日) 18:48:53.18「最新の速度」=「最新の位置」−「ひとつ前のフレーム位置」
でしょ。最新の速度には最新の位置情報が必要なわけだが。
>未来の確定情報を元に追跡する
前フレームから今フレームまでの間に起こった変更点を適応するのが、更新でしょ。
「未来の確定情報」って何よ。
過去から現在だけで、未来は出てこないのだが。
0793uy
2012/05/27(日) 18:49:19.62-----------まとめ----------
「馬鹿は死なねば治らないのであり、だからこそアナトール・フランスは
『愚かな者は、邪悪な者よりも忌まわしい』と言ったのだ。
邪悪な者は休むときがあるが、愚かな者はけっして休まないからである。」
(ホセ・オルテガ・イ・ガセット 1883〜1955)
>>247
http://toro.2ch.net/test/read.cgi/tech/1336122899/247
>ゲームは作らんから知らんが、
224 == 247
口癖はコンポジション
>>772
>ゲーム作らなくてもお前よりマトモ
タスクの実行順序を意識しないとゲームが作れない(笑)
>>767
敵機 → プレイヤー の順序でタスクを実行するとタスクがぶっ壊れる
OOを得意げに語っているつもりが、やっている事が20年前のC言語だったという事実
0794デフォルトの名無しさん
2012/05/27(日) 18:49:36.35必要ない
おまえの頭は本当空っぽだな
0795uy
2012/05/27(日) 18:53:41.64タスクに2個のオブジェクトがあったら
敵 → プレイヤー → 敵 → プレイヤー → 敵 → プレイヤー
って交互に更新されていくわけだけど、
マジ順序とかどうでもいいんだよなw
224は、タスクループのところで「前処理」と「後処理」を入れるゴミカスC言語設計だからw
順序が必要になっちゃうんだけどさ
その「前処理」と「後処理」までオブジェクトとしてタスクの一部にしてさw
後処理&前処理 → 敵 → プレイヤ → 敵 → プレイヤー
ってやれば順序とか関係ないwwwwwwww
マジおまえC言語wwwwwwwww
0796uy
2012/05/27(日) 18:57:33.300797224
2012/05/27(日) 19:00:47.51>タスクに2個のオブジェクトがあったら
>敵 → プレイヤー → 敵 → プレイヤー → 敵 → プレイヤー
どこかに1フレーム分の区切りが入るわけで。
>後処理&前処理 → 敵 → プレイヤ → 敵 → プレイヤー
何これ意味わかんないww
俺の言ってることの意味が分からなかったからって妄想書くなよ。
0798デフォルトの名無しさん
2012/05/27(日) 19:37:02.29の自演はいいかげんウザい
0799デフォルトの名無しさん
2012/05/27(日) 19:37:53.76体当たりをした時、自分のヒットポイントの半分のダメージを与える、という能力をもった物同士がぶつかった時のプログラムを(擬似的に)書きなさい。
0800717
2012/05/27(日) 19:37:57.28>バイナリーベースのOCP(笑)だと
>問題出ないの?
アホか? お前はバイナリーを修正出来るのか?
バイナリーは拡張しか出来ないだろうが。
OCPとは
・拡張に対して開いて (open) いなければならず、
・修正に対して閉じて (closed) いなければならない
という設計上の原則だ、覚えとけ。
しかし
>>732
>言語機能では無いので、言語は関係ない。
224は一番のバカだなw
0801デフォルトの名無しさん
2012/05/27(日) 19:42:07.80それ処理順に依存してはいけない例だろ
0802224
2012/05/27(日) 19:45:17.38OCPはまるで関係が無い。
0803デフォルトの名無しさん
2012/05/27(日) 19:48:05.17たとえばプラオリティ付の制御を行いたい場合はタスクオブジェクトをwekptrあたりでリスト化して
制御クラスが処理を行う。
共有ポインタを使えば制御について悩む必要はまったくなく、初心者がおよそプログラムで苦労しているであろう
部分は100%解決する。
0804デフォルトの名無しさん
2012/05/27(日) 19:48:17.83「お互いにダメージを負う前のヒットポイントを参照する」のか
「片方がまずダメージを与え、それを参照する(この場合、どちらが先なのかをハッキリ決めなくてはならない)」のか
0805デフォルトの名無しさん
2012/05/27(日) 19:53:11.43ちがう。
使えば使う程にRubyって駄目だなと痛感することになるのはパフォーマンスですらない。
Rubyを学習し始めた頃は誰でもRubyは素晴しいと思うのだが、
数年も使えばそのどうしようもない互換性のなさにウンザリする。
1.4時代のコードが1.6になった途端に互換性がなくなり動かなくなることはあったが、
1.6→1.8ではそれが顕著になり、
1.9など何のエラーも出さずに前のコードが動く方が珍しいほど
それどころか1.9に行かずREEが海外ではデファクトになりつつある現状、
そして始まるPlain RubyとREEの方言問題
0806デフォルトの名無しさん
2012/05/27(日) 19:57:19.04バイナリーを修正出来ない言語ってどれよ?
あまえが無知だから出来ないとかなしで
0807デフォルトの名無しさん
2012/05/27(日) 19:59:03.22おまえさあ
コードが変更出来ないこと、がOCPに関係あると
思い込んでたりしないよね?
0808デフォルトの名無しさん
2012/05/27(日) 20:01:37.10結局あとで全部作り直さないといかん。
0809デフォルトの名無しさん
2012/05/27(日) 20:04:28.00>>717の意図がまったく理解出来ない俺はこの議論に参加しちゃいかんのだろうか?
0810224
2012/05/27(日) 20:05:35.63本当は、Rubyの問題点は実行速度とmatzの気まぐれって書こうと思ったんだけど、
矢が飛んできそうだったから止めたんだよ。
0811717
2012/05/27(日) 20:06:46.16アホw バイナリ−を修正出来る言語を言ってみろよ。
バイナリエディタで修正とかなしなw
>>807
アホw お前はコードに何を修正するんだ。
>>809
....
0813デフォルトの名無しさん
2012/05/27(日) 20:10:00.870814デフォルトの名無しさん
2012/05/27(日) 20:11:08.38おまえがOCPをまるで理解出来てないことはわかった
出直してこい
0815デフォルトの名無しさん
2012/05/27(日) 20:16:26.22仕様の変更に伴いコードを変更しても
クライアントコードには問題ない
改修の影響が何箇所もうんたら、みたいな発想は全くの的外れ
ましてやコードかバイナリーかといった配布方法も全く関係ない
>>717は無知な上に理解力もない
0816デフォルトの名無しさん
2012/05/27(日) 20:17:46.52俺は矢かw
0817デフォルトの名無しさん
2012/05/27(日) 20:17:56.00むしろ、そっちのほうがRuby使いでも納得する理由だよ。
0818717
2012/05/27(日) 20:22:25.57アホ認定の奴から無知だといわれてもねw
C++、Java、C#これ以外でも、何でもいいが
どの言語ならバイナリを修正出来るだw
>>815
>仕様の変更に伴いコードを変更しても
>クライアントコードには問題ない
またアホな事をw
”コードを変更”しちゃ駄目だという原則なのにw
0819デフォルトの名無しさん
2012/05/27(日) 20:25:11.10おまえの無知さには新人君でも呆れるぞ
Javaで出来ないと思った理由は?
0820デフォルトの名無しさん
2012/05/27(日) 20:26:53.87バイナリで配布すれば修正されない!
とか思い込んでる痴呆が紛れ込んでるのか
0821デフォルトの名無しさん
2012/05/27(日) 20:27:43.37個人的にメイヤーの方は、無駄に継承改装深くするリスクを負う、アホな方法だと思ってるけど。
0823デフォルトの名無しさん
2012/05/27(日) 20:28:50.54ぷぷぷ
0824デフォルトの名無しさん
2012/05/27(日) 20:30:12.31文盲か! >>819はJavaを挙げてるだろw
おまえレベル低すぎだから5年位ROMってろよ
0825デフォルトの名無しさん
2012/05/27(日) 20:32:19.22ソースきぼんぬ
0827デフォルトの名無しさん
2012/05/27(日) 20:32:56.94は?
おまえフレームってなんだと思ってるんだ
1フレームの区切り……
は?w
え?
0828224
2012/05/27(日) 20:33:17.65インターフェースが閉じてるなら、
実装コードを変更しても修正に対して閉じてるだろ。
0829デフォルトの名無しさん
2012/05/27(日) 20:39:15.56やっぱC++やってる奴って9割はずれだよね
0830デフォルトの名無しさん
2012/05/27(日) 20:40:40.99本当に無知だな
0831デフォルトの名無しさん
2012/05/27(日) 20:41:46.89方法論レベルの話にどんなソースをだせと・・・
てか、何が知りたいんよ?
0832デフォルトの名無しさん
2012/05/27(日) 20:43:19.80そっちのソースじゃねえw
情報ソースだよおおお
二種類あるってどこで誰が言ってるかに興味がある!
0833717
2012/05/27(日) 20:44:50.39>インターフェースが閉じてるなら、
>実装コードを変更しても修正に対して閉じてるだろ。
ポリモーフィックの方を勘違いしている、よくいるアホだなw
ポリモーフィックでもメイヤーでもコードを修正したら駄目なんだよw
>>830
無知だから早く教えてくれよ、バイナリを修正する方法をw
0834デフォルトの名無しさん
2012/05/27(日) 20:46:17.07ggrks
0835デフォルトの名無しさん
2012/05/27(日) 20:47:53.26しっかしC++でイテレータはかけてもこの論外レベルなんだもんな
適当なサイトからコピペしてきたのかもしれんけど
最初にあのコードを晒した瞬間から「あ、こいつ初心者だわ」ってわかってたよ
本当に今のC++は良い初心者ホイホイになってしまった
0836デフォルトの名無しさん
2012/05/27(日) 20:48:13.32な、何をするだァァァァ!
0837デフォルトの名無しさん
2012/05/27(日) 20:48:30.13とりあえずwikipedia。
http://ja.wikipedia.org/wiki/%E9%96%8B%E6%94%BE/%E9%96%89%E9%8E%96%E5%8E%9F%E5%89%87
後は適当に語を拾って自分で調べて・・・
0838デフォルトの名無しさん
2012/05/27(日) 20:49:03.07wikipediaですまんが
http://ja.wikipedia.org/wiki/%E9%96%8B%E6%94%BE/%E9%96%89%E9%8E%96%E5%8E%9F%E5%89%87
0839デフォルトの名無しさん
2012/05/27(日) 20:49:30.40みたいなことはいくらでもできるしC#やJavaはバイトコードの仕様が公開されてるから
耐タンパリング処理がされてない限り改変もできるけど
バイナリの修正というものが何を指すのかいまいちわからないけど何なんだろうね
0840デフォルトの名無しさん
2012/05/27(日) 20:50:04.25みんな知ってるよね
0841デフォルトの名無しさん
2012/05/27(日) 20:50:50.22メイヤーなOCP
ポリモーフィックなOCP
の二つってことか
�d
0842デフォルトの名無しさん
2012/05/27(日) 20:51:26.470843デフォルトの名無しさん
2012/05/27(日) 20:52:13.74別になんでもないと思うよ
何も反論が出来ないように言葉で押さえつけたら
変な場所から「バイナリ」とかいう単語がはみ出てきただけ
0844デフォルトの名無しさん
2012/05/27(日) 20:56:29.040845224
2012/05/27(日) 20:56:44.33コンポジションを否定してしまっては、もう先は無い。
0846デフォルトの名無しさん
2012/05/27(日) 20:58:58.39バイナリの話は終了かよ
0847デフォルトの名無しさん
2012/05/27(日) 20:59:46.080848デフォルトの名無しさん
2012/05/27(日) 21:00:23.86なんかそう書くとOCPが二つあるように感じるけど
拡張に対して開いて (open) いなければならず、
修正に対して閉じて (closed) いなければならない
OCPが指してるのはこれね
「実装を継承」とか「インターフェースを継承」とかはただの手段だから
0849デフォルトの名無しさん
2012/05/27(日) 21:01:18.58定期的にコンポジションコンポジション言ってるけど大丈夫かこいつ
0851デフォルトの名無しさん
2012/05/27(日) 21:07:59.620852デフォルトの名無しさん
2012/05/27(日) 21:08:51.45逆コンパイラにかけてソースコードレベルで改変してコンパイルしたっていいのよ
とりあえず草生やすのみっともないよ
0853224
2012/05/27(日) 21:11:24.00なんで、コンポジションは確かに良く使うけど。
けど、みんな使うでしょ。
今件に関していえば、木構造タスクよりコンポジションの方が便利で、
その理由は処理順の細かな制御が出来るから、
ってだけだが。
0854uy
2012/05/27(日) 21:12:09.55なんなのこいつ
0855uy
2012/05/27(日) 21:13:57.81その「当たり前」にやっていた技法に名前がついていたっていう事に驚いてる奴らばかりであろう
「当たり前」のようにつかっている技術の名称を
普通は、わざわざ連呼しない
つまり、、、お前にとって「コンポジション」は、
ああもうから死ねよ
0856デフォルトの名無しさん
2012/05/27(日) 21:15:48.800858717
2012/05/27(日) 21:19:53.56たしかに、それもコーディングだけどさ...
>>852
>ソースコードレベルで改変してコンパイルしたっていいのよ
ソースコードってw 結局コード修正かよw
なんかバイナリはアホな事を言っていた奴らが、逃げたからもういい。
0859uy
2012/05/27(日) 21:20:39.14だ、そうですよ
なんだこの、全く関係ない単語の組み合わせ反論
0860デフォルトの名無しさん
2012/05/27(日) 21:21:08.16少しはggrks
10年以上まえからちゃんとした手法がある
知らないのはたぶんおまえ一人だw
0861デフォルトの名無しさん
2012/05/27(日) 21:23:51.88というだけの話を>>717は何時まで引きずるのだろうか。
そもそもOCPはコードレベルでの話なんだから、バイナリレベルになったら関係無いのだけども。
0862uy
2012/05/27(日) 21:26:44.73701 :669:2012/05/27(日) 13:51:54.60
OOPLとして何故Rubyが駄目なのかは、OCPを徹底出来ないこと。
コンパイル言語では、バイナリ−レベルでのOCPが可能だが
スクリプト言語では、テキストベースしか出来ない。
このあたりの重要性は、実際に大規模開発・運用をやったことがある人間にしか理解出来ない。
このスレで最初にバイナリ言った奴はこれか
コンパイル言語 とか言っちゃう奴だもん
マジでなんなの これ。 何でこの板にいるんだこいつ
0863uy
2012/05/27(日) 21:34:54.54見ようとすりゃ見れるし
その気になればそれをDumpしてそれを変更して実行させる事も不可能ではないだろう
何いってんだこいつ
ってググったらあった
バイトコードを見るにはRubiniusで
バイトコードを直実行はこれ
http://d.hatena.ne.jp/ku-ma-me/20080523/p1
で、これが出来ると何かが変わるのか? 答え→何も変わらない
意味ねー議論展開させていないでさっさと死ね
0864uy
2012/05/27(日) 21:37:40.83http://toro.2ch.net/test/read.cgi/tech/1336122899/190
http://toro.2ch.net/test/read.cgi/tech/1336122899/297
http://toro.2ch.net/test/read.cgi/tech/1325246820/837-839
http://toro.2ch.net/test/read.cgi/tech/1336122899/318-320
http://toro.2ch.net/test/read.cgi/tech/1336122899/332-334
http://toro.2ch.net/test/read.cgi/tech/1336122899/818
0865717
2012/05/27(日) 21:39:27.58アホw
その10年以上まえからある手法を言ってみろw
>>861
>そもそもOCPはコードレベルでの話なんだから、バイナリレベルになったら関係無いのだけども。
だから、Rubyとかスクリプト言語はコードレベルでしか継承出来ないが
コンパイル言語なら中間コードやバイナリファイルからでも継承出来る(元のコードを必要としない)
>>862,863
スクリプト言語しかやったことがない者の未熟さだなw
0866uy
2012/05/27(日) 21:40:00.90「馬鹿は死なねば治らないのであり、だからこそアナトール・フランスは
『愚かな者は、邪悪な者よりも忌まわしい』と言ったのだ。
邪悪な者は休むときがあるが、愚かな者はけっして休まないからである。」
(ホセ・オルテガ・イ・ガセット 1883〜1955)
>>247
>ゲームは作らんから知らんが、
224 == 247 == 704 == 717
口癖はコンポジション
>>772
>ゲーム作らなくてもお前よりマトモ
タスクの実行順序を意識しないとゲームが作れない(笑)
>>767
敵機 → プレイヤー の順序でタスクを実行するとタスクがぶっ壊れる
OOを得意げに語っているつもりが、やっている事が20年前のC言語だったという事実
バイナリの書き換えがわからない
タイプミスの数々
http://toro.2ch.net/test/read.cgi/tech/1336122899/190
http://toro.2ch.net/test/read.cgi/tech/1336122899/297
http://toro.2ch.net/test/read.cgi/tech/1325246820/837-839
http://toro.2ch.net/test/read.cgi/tech/1336122899/318-320
http://toro.2ch.net/test/read.cgi/tech/1336122899/332-334
http://toro.2ch.net/test/read.cgi/tech/1336122899/818
0867224
2012/05/27(日) 21:45:31.200868デフォルトの名無しさん
2012/05/27(日) 21:48:23.57Pythonは普通にコンパイルして.pycファイル(バイトコード)作れるし
.pycファイルがあればソースファイル無くても実行できるし
継承もオープンクラスもやり放題だが、OCPと関係あるのかこれ
0869デフォルトの名無しさん
2012/05/27(日) 21:48:52.59PythonでもRubyでもCでクラス書いて継承できるよ
0870デフォルトの名無しさん
2012/05/27(日) 21:51:17.64>コンパイル言語なら中間コードやバイナリファイルからでも継承出来る(元のコードを必要としない)
それって結局、バイナリファイルの方は関係ないままでは・・・
>だから、Rubyとかスクリプト言語はコードレベルでしか継承出来ないが
JavaScriptだと外部に用意されたライブラリを継承することもできるんだけど、そのライブラリはバイナリで用意されていたりすることもある。
なんで、それは間違ってる。
0871デフォルトの名無しさん
2012/05/27(日) 21:51:25.13じゃあ、Cでクラス書いてください。
0872デフォルトの名無しさん
2012/05/27(日) 21:53:53.26見返りは?
0873717
2012/05/27(日) 21:55:27.80バイトコードなら、継承(”拡張”)は出来てもソースがないから”修正”は出来ないからOCP。
まっバイトコードを修正すると言い張っている奴もいるがw
0874デフォルトの名無しさん
2012/05/27(日) 21:55:48.61224って
http://d.hatena.ne.jp/fz6/20120310/1331381258
これじゃないよな
0875デフォルトの名無しさん
2012/05/27(日) 21:55:59.47>>869の書き込みの
説得力を得られる。
0876デフォルトの名無しさん
2012/05/27(日) 21:56:57.52> バイトコードなら、継承(”拡張”)は出来てもソースがないから”修正”は出来ないからOCP。
ソースコードを修正するって
それたんにパッチだろ?w
0877デフォルトの名無しさん
2012/05/27(日) 21:58:10.11修正できる言語って有るの?
関数の中の○行目を書き換えるとか。
0878uy
2012/05/27(日) 21:58:14.44間違った知識植えつけて勘違いさせた後に放置とか酷なことをする
0879デフォルトの名無しさん
2012/05/27(日) 21:58:21.21じゃあやらない。多少ぐぐればわかることだし
0880デフォルトの名無しさん
2012/05/27(日) 21:59:44.83じゃあ俺のターンで終わりってことだ。
0882デフォルトの名無しさん
2012/05/27(日) 22:02:53.73「馬鹿は死なねば治らないのであり、だからこそアナトール・フランスは
『愚かな者は、邪悪な者よりも忌まわしい』と言ったのだ。
邪悪な者は休むときがあるが、愚かな者はけっして休まないからである。」
(ホセ・オルテガ・イ・ガセット 1883〜1955)
>>247
>ゲームは作らんから知らんが、
224 == 247 == 704 == 717
口癖はコンポジション
>>772
>ゲーム作らなくてもお前よりマトモ
タスクの実行順序を意識しないとゲームが作れない(笑)
>>767
敵機 → プレイヤー の順序でタスクを実行するとタスクがぶっ壊れる
OOを得意げに語っているつもりが、やっている事が20年前のC言語だったという事実
バイナリの書き換えがわからない
コンパイラ言語のことをコンパイル言語とか言っちゃう
タイプミスの数々
http://toro.2ch.net/test/read.cgi/tech/1336122899/190
http://toro.2ch.net/test/read.cgi/tech/1336122899/297
http://toro.2ch.net/test/read.cgi/tech/1325246820/837-839
http://toro.2ch.net/test/read.cgi/tech/1336122899/318-320
http://toro.2ch.net/test/read.cgi/tech/1336122899/332-334
http://toro.2ch.net/test/read.cgi/tech/1336122899/818
0883デフォルトの名無しさん
2012/05/27(日) 22:03:16.76Cでクラス書いて下さいって
言っただけだよ。
0884デフォルトの名無しさん
2012/05/27(日) 22:04:40.24俺のターンとかよくわかんないけどそれでいいよ
0886uy
2012/05/27(日) 22:06:19.88知ったこっちゃないが
0888デフォルトの名無しさん
2012/05/27(日) 22:11:17.25バイトコードでもオープンクラス使えたら
"修正"出来てしまうけど
0889uy
2012/05/27(日) 22:18:37.96だからって泥水吸わせるのはどうかと思うけどな
0890uy
2012/05/27(日) 22:21:35.350891717
2012/05/27(日) 22:24:05.10本当にバイトコードを拡張じゃなく修正なんだよなw
>>889
お前もそんなことしか言えなくなってきたなw 224と同じだなw
0892デフォルトの名無しさん
2012/05/27(日) 22:39:01.42さっきからメリットらしいメリット1つもないじゃん
0893デフォルトの名無しさん
2012/05/27(日) 22:40:06.92他の言語を知ってなきゃ無理じゃん?
当然だよ。
0894デフォルトの名無しさん
2012/05/27(日) 22:43:28.370895デフォルトの名無しさん
2012/05/27(日) 22:47:46.30効率の良いものと効率の悪いものを提示しても
バカは効率が分からないのでどちらを選ぶかはランダムである
0896デフォルトの名無しさん
2012/05/27(日) 22:53:00.45名無しを挑発してソースださせるまではいいが
ちゃんと裏で学習してるよね?
してなかったら無意味だぞ
しっかしOOにはまってる時点でセンスないんだけどなあ…
初見でわからんか
わからんならやっぱバカだ
0897デフォルトの名無しさん
2012/05/27(日) 22:57:14.72バイナリの話題とか途中からわかってやってるだろ…
そして話し合いはいきなり終わり
勘違いしたまま話題終了wwww
おいその泥はやく吐き出せ
0898デフォルトの名無しさん
2012/05/27(日) 22:57:49.350899224
2012/05/27(日) 23:02:12.54え、俺がOOにハマってるって?ナイナイ。
特にC++などはマルチメソッドが無い時点で整合性皆無なんですよ。
メソッドが属すドメインが一つまでとはこれ如何に。
0900224
2012/05/27(日) 23:13:57.27C++などは実行効率の話もあるので、シングルディスパッチなのは仕方あるまい。
しかしRubyは動的言語で、しかもオープンクラスがあって、
クラスの外にメソッドを定義できるのに関わらず、なぜかマルチメソッドに対応していない。
おそらくMatzの目指しているものと、俺の見ているものはまるで違う。
俺からしたらシングルディスパッチは不自然だ。
0901デフォルトの名無しさん
2012/05/27(日) 23:15:07.83いつになったら気づくのか
0902デフォルトの名無しさん
2012/05/27(日) 23:17:09.53OOが落とし穴
おまえはuyにはなれないし
やっぱおまえじゃ一生追いつけないや
0903224
2012/05/27(日) 23:19:29.14勝手にアメーバの道へどうぞ。
0904デフォルトの名無しさん
2012/05/27(日) 23:25:49.43まぁなんつうかこの時点で知っている事の数が1つ違うわけだよ
オブジェクト指向がなぜ世界で最も使われているか?
関数型ごときにすら負けているにもかかわらず?
理由は1こ
オブジェクト指向は誰にでも出来るくらいに簡単だから…
0905デフォルトの名無しさん
2012/05/27(日) 23:26:25.42残念なお知らせがある
uyはたいがいだが、おまえよりはマシだ
同じように考えてる奴は結構多いと思うぞ?
0906デフォルトの名無しさん
2012/05/27(日) 23:32:32.320908デフォルトの名無しさん
2012/05/27(日) 23:34:44.330909デフォルトの名無しさん
2012/05/27(日) 23:36:19.62コ
ン
ポ
ジ
シ
ョ
ン
0910224
2012/05/27(日) 23:41:29.73俺は正解を握り続けるから、遠回りしたい人はどうぞ。
0911デフォルトの名無しさん
2012/05/27(日) 23:44:38.99224 知識不足、理解力不足、頭悪い
0912デフォルトの名無しさん
2012/05/27(日) 23:44:58.550913デフォルトの名無しさん
2012/05/27(日) 23:47:38.46二次絵をどうにかして自動で描けないかアルゴリズムを考えてる
顔や目や髪の毛くらいだったら可能ではありそう
ベクトル計算で髪は描ける目とかは相対座標
しかし体のポーズと構図はどうすんだこれ…
0914デフォルトの名無しさん
2012/05/27(日) 23:48:25.22OCPだが
メイヤー的な手段は現在では多分に理念的であるにもらかかわらず片手落ちで
現実的なバランスを欠いてると思われる
0915デフォルトの名無しさん
2012/05/28(月) 00:00:04.95そうすればポーズやものを持たせた絵はかけそうな
でも実際二次絵て物理法則を無視した記号が萌え要素だから
やっぱその物理法則無視した記号を混在させなきゃいけないが
記号の数と組み合わせはデジタル表現したらとんでもない数になるかもしれない
ある程度の雛形で描くことは出来ても本質的にそれは二次絵にはなりきれてない
萌え要素となる記号自体をアルゴリズムから生成したい
0916デフォルトの名無しさん
2012/05/28(月) 00:02:07.87組み合わせればいいんだよ
つまりコンポジション!
0918デフォルトの名無しさん
2012/05/28(月) 00:06:30.80それらを生成するには物理法則の乱れていないリボンを用意しパラメータからそれを二次絵にする
あ、できるけど
パラメータが多すぎてデジタル表現はマゾい
やっぱ絵はアナログなんかな
人間はパソコンよりもスペックの良い部分はあるから
そのパーツを芸術のために使ってるから二次絵は素晴らしい事になるのだろうか
人が普段無意識に計算している計算能力の断片
あー
マンガやアニメ絵ならいいけど
表紙絵とか一枚絵は機械生成は無理な気がしてきた、無理か
無理だった
0919デフォルトの名無しさん
2012/05/28(月) 00:09:32.290920224
2012/05/28(月) 00:15:19.87一応こういうものもあるけどな。萌えれるかどうかは知らんが。
0921デフォルトの名無しさん
2012/05/28(月) 00:24:57.182.6くらいまではきてるけど
は
こんなグダグダ考えてるあいだにもかけばいいんだ
2時間で1枚はかけるのに
0922デフォルトの名無しさん
2012/05/28(月) 00:26:11.60明日からもうこれなくなるけどいい?
死ね
0923デフォルトの名無しさん
2012/05/28(月) 00:28:32.890924デフォルトの名無しさん
2012/05/28(月) 00:46:06.570925デフォルトの名無しさん
2012/05/28(月) 00:53:14.85「馬鹿は死なねば治らないのであり、だからこそアナトール・フランスは
『愚かな者は、邪悪な者よりも忌まわしい』と言ったのだ。
邪悪な者は休むときがあるが、愚かな者はけっして休まないからである。」
(ホセ・オルテガ・イ・ガセット 1883〜1955)
>>247
>ゲームは作らんから知らんが、
224 == 247 == 704 == 717
口癖はコンポジション
>>772
>ゲーム作らなくてもお前よりマトモ
タスクの実行順序を意識しないとゲームが作れない(笑)
>>767
敵機 → プレイヤー の順序でタスクを実行するとタスクがぶっ壊れる
OOを得意げに語っているつもりが、やっている事が20年前のC言語だったという事実
バイナリの書き換えがわからない
コンパイラ言語のことをコンパイル言語とか言っちゃう
タイプミスの数々
http://toro.2ch.net/test/read.cgi/tech/1336122899/190
http://toro.2ch.net/test/read.cgi/tech/1336122899/297
http://toro.2ch.net/test/read.cgi/tech/1325246820/837-839
http://toro.2ch.net/test/read.cgi/tech/1336122899/318-320
http://toro.2ch.net/test/read.cgi/tech/1336122899/332-334
http://toro.2ch.net/test/read.cgi/tech/1336122899/818
0926224
2012/05/28(月) 01:30:30.160927uy応援団
2012/05/28(月) 09:30:40.48uy応援団はこれからもuyを応援します
がんばれ
0928デフォルトの名無しさん
2012/05/28(月) 09:55:54.740929717
2012/05/28(月) 12:54:54.47>コンパイラ言語のことをコンパイル言語とか言っちゃう
バカw
・コンパイラ コンパイルをするソフトのこと
・コンパイル バイナリに変換する機能の名称
文脈を考えろアホw スクリプト言語の対比がコンパイラかw
0930デフォルトの名無しさん
2012/05/28(月) 14:16:40.730931uy
2012/05/28(月) 14:31:53.08コンパイラ言語もコンパイル言語も間違い
0932デフォルトの名無しさん
2012/05/28(月) 14:51:48.20http://d.hatena.ne.jp/fz6/20120310/1331381258
こいつくらいしかいない
0933デフォルトの名無しさん
2012/05/28(月) 14:58:37.39頭が悪そうな単語
スクリプト言語はコンパイルしねーと思ってるんかって話
0934uy
2012/05/28(月) 15:24:41.22何が面白いかは分からない
悪くはないんだけど、自分から自分の絵への個性を量産絵に染めてしまうのはいかがなものか
とはいってもそのテンプレの中にはいると相乗効果で絵が上手いように見えるから
その流行の絵柄でいくのが最も売れる絵をかくための近道ではあるけど
絵の瞳の描き方とかも、大体影と光の使い方さえあってればどう描いても綺麗になる
でも綺麗だと感じるのは自分がその絵柄が好きだから綺麗だと感じてるだけで
他の人から見たら好みじゃない可能性もあって
つまり、需要を予知してそれに対して絵を描けるレベルじゃないのならば
自分の好きなように描いていくのが良いものと思われる
ある程度はその中で需要にあわせたり出来るようになると人気イラストレーター化するんだろうけど、
それを狙って出来る人は少なそう、大体は偶然自分の「好き」と周りの「好き」が偶然にも一致しているだけ
だからイラストレーターは短命なのだろう、需要に対して狙って絵を描ける奴なんてマジで殆どいないと思うから
俺様は、アニメ塗りとかそういう瞳の描き方ってあまりやらずカテゴリー的には厚塗りと呼ばれる塗り方でやってるが
それはアニメ塗りよりも時間かかってしょうがない2時間で描けるとかいっても、実際かなり急いでの2時間だし
アニメ塗りというかギャルゲ塗りのようなもので、効率よく絵を仕上げる描き方を考え中
しかし絵っていうのはデジタル的に瞳やフリルなどのテンプレを用意してそれを使ってもいいんだけど
そうやってデジタル的に資産を持つよりも、自分の中にアナログの記憶として瞳やフリルの描き方を覚えて
それを出力できるようにならないと、何かが厳しいような気がしてる まず、二次絵は顔の角度を真横にした時に世界が崩壊する
アニメ絵において、z座標とかも含めて、 0度 90度 180度 270度の絵を描こうとすると、atan2 domain error がでる
0935デフォルトの名無しさん
2012/05/28(月) 17:00:46.91「馬鹿は死なねば治らないのであり、だからこそアナトール・フランスは
『愚かな者は、邪悪な者よりも忌まわしい』と言ったのだ。
邪悪な者は休むときがあるが、愚かな者はけっして休まないからである。」
(ホセ・オルテガ・イ・ガセット 1883〜1955)
>>247
>ゲームは作らんから知らんが、
224 == 247 == 704 == 717
口癖はコンポジション
>>772
>ゲーム作らなくてもお前よりマトモ
タスクの実行順序を意識しないとゲームが作れない(笑)
>>767
敵機 → プレイヤー の順序でタスクを実行するとタスクがぶっ壊れる
OOを得意げに語っているつもりが、やっている事が20年前のC言語だったという事実
バイナリの書き換えがわからない
コンパイラ言語のことをコンパイル言語とか言っちゃう
タイプミスの数々
http://toro.2ch.net/test/read.cgi/tech/1336122899/190
http://toro.2ch.net/test/read.cgi/tech/1336122899/297
http://toro.2ch.net/test/read.cgi/tech/1325246820/837-839
http://toro.2ch.net/test/read.cgi/tech/1336122899/318-320
http://toro.2ch.net/test/read.cgi/tech/1336122899/332-334
http://toro.2ch.net/test/read.cgi/tech/1336122899/818
0936デフォルトの名無しさん
2012/05/28(月) 17:38:38.86「馬鹿は死なねば治らないのであり、だからこそアナトール・フランスは
『愚かな者は、邪悪な者よりも忌まわしい』と言ったのだ。
邪悪な者は休むときがあるが、愚かな者はけっして休まないからである。」
(ホセ・オルテガ・イ・ガセット 1883〜1955)
>>247
>ゲームは作らんから知らんが、
224 == 247 == 704 == 717
口癖はコンポジション
>>772
>ゲーム作らなくてもお前よりマトモ
タスクの実行順序を意識しないとゲームが作れない(笑)
>>767
敵機 → プレイヤー の順序でタスクを実行するとタスクがぶっ壊れる
OOを得意げに語っているつもりが、やっている事が20年前のC言語だったという事実
バイナリの書き換えがわからない
コンパイラ言語のことをコンパイル言語とか言っちゃう
タイプミスの数々
http://toro.2ch.net/test/read.cgi/tech/1336122899/190
http://toro.2ch.net/test/read.cgi/tech/1336122899/297
http://toro.2ch.net/test/read.cgi/tech/1325246820/837-839
http://toro.2ch.net/test/read.cgi/tech/1336122899/318-320
http://toro.2ch.net/test/read.cgi/tech/1336122899/332-334
http://toro.2ch.net/test/read.cgi/tech/1336122899/818
0937デフォルトの名無しさん
2012/05/28(月) 17:39:14.18「馬鹿は死なねば治らないのであり、だからこそアナトール・フランスは
『愚かな者は、邪悪な者よりも忌まわしい』と言ったのだ。
邪悪な者は休むときがあるが、愚かな者はけっして休まないからである。」
(ホセ・オルテガ・イ・ガセット 1883〜1955)
>>247
>ゲームは作らんから知らんが、
224 == 247 == 704 == 717
口癖はコンポジション
>>772
>ゲーム作らなくてもお前よりマトモ
タスクの実行順序を意識しないとゲームが作れない(笑)
>>767
敵機 → プレイヤー の順序でタスクを実行するとタスクがぶっ壊れる
OOを得意げに語っているつもりが、やっている事が20年前のC言語だったという事実
バイナリの書き換えがわからない
コンパイラ言語のことをコンパイル言語とか言っちゃう
タイプミスの数々
http://toro.2ch.net/test/read.cgi/tech/1336122899/190
http://toro.2ch.net/test/read.cgi/tech/1336122899/297
http://toro.2ch.net/test/read.cgi/tech/1325246820/837-839
http://toro.2ch.net/test/read.cgi/tech/1336122899/318-320
http://toro.2ch.net/test/read.cgi/tech/1336122899/332-334
http://toro.2ch.net/test/read.cgi/tech/1336122899/818
0938デフォルトの名無しさん
2012/05/28(月) 19:16:58.61「馬鹿は死なねば治らないのであり、だからこそアナトール・フランスは
『愚かな者は、邪悪な者よりも忌まわしい』と言ったのだ。
邪悪な者は休むときがあるが、愚かな者はけっして休まないからである。」
(ホセ・オルテガ・イ・ガセット 1883〜1955)
>>247
>ゲームは作らんから知らんが、
224 == 247 == 704 == 717
口癖はコンポジション
>>772
>ゲーム作らなくてもお前よりマトモ
タスクの実行順序を意識しないとゲームが作れない(笑)
>>767
敵機 → プレイヤー の順序でタスクを実行するとタスクがぶっ壊れる
OOを得意げに語っているつもりが、やっている事が20年前のC言語だったという事実
バイナリの書き換えがわからない
コンパイラ言語のことをコンパイル言語とか言っちゃう
タイプミスの数々
http://toro.2ch.net/test/read.cgi/tech/1336122899/190
http://toro.2ch.net/test/read.cgi/tech/1336122899/297
http://toro.2ch.net/test/read.cgi/tech/1325246820/837-839
http://toro.2ch.net/test/read.cgi/tech/1336122899/318-320
http://toro.2ch.net/test/read.cgi/tech/1336122899/332-334
http://toro.2ch.net/test/read.cgi/tech/1336122899/818
0939デフォルトの名無しさん
2012/05/28(月) 20:03:08.04uyさんは本物のプログラマーだと思います!
ファンになってしまいそう
0940717
2012/05/28(月) 20:12:37.58アホのお前が言うかw いろいろ見逃してやっていたのにw
お前自身が言語と言語処理系の区別がついていないんだよw
>>682
>>現状のpcスペ、rubyの性能、でも十分にゲームは作れる
>>問題は速度ではなく、rubyでもなく
>>初心者にも扱えるようにさせるのはrubyの本分とは違うのかもしれないが
お前の文章はいつも言語と言語処理系がゴチャゴチャなんだよ。
俺が修正してやる
>>現状のpcスペ、ruby(言語処理系)の性能、でも十分にゲームは作れる
>>問題は速度ではなく、ruby(言語)でもなく
>>初心者にも扱えるようにさせるのはruby(言語・言語処理系の両方か?)の本分とは違うのかもしれないが
お前は本当にアホだなw
これからお前だけは、ruby(言語)・ruby(言語処理系)・ruby(言語/言語処理系の両方)と正しく書けw
>>933
そこのバカ、インタプリタと言う言葉しっているかw
0941デフォルトの名無しさん
2012/05/28(月) 20:25:44.960942デフォルトの名無しさん
2012/05/28(月) 20:46:02.500943デフォルトの名無しさん
2012/05/28(月) 20:50:21.660944デフォルトの名無しさん
2012/05/28(月) 20:51:50.520945デフォルトの名無しさん
2012/05/28(月) 20:57:44.07Javaが言語でjavacが処理系じゃね
java(jvm)はJava言語そのものを解釈してない
0946デフォルトの名無しさん
2012/05/28(月) 21:20:10.51見ていて痛々しくなってきたんだが
0947デフォルトの名無しさん
2012/05/28(月) 22:38:00.25やっぱり釣れた・・・w
なんという単純なAIだ
0948デフォルトの名無しさん
2012/05/28(月) 22:43:36.63おまえは知識が圧倒的に不足しすぎていて
お話にならない
バカだという自覚がないから始末に困る
0949デフォルトの名無しさん
2012/05/28(月) 22:54:45.38こいつだろうな
0950デフォルトの名無しさん
2012/05/28(月) 23:02:42.15「馬鹿は死なねば治らないのであり、だからこそアナトール・フランスは
『愚かな者は、邪悪な者よりも忌まわしい』と言ったのだ。
邪悪な者は休むときがあるが、愚かな者はけっして休まないからである。」
(ホセ・オルテガ・イ・ガセット 1883〜1955)
>>247
>ゲームは作らんから知らんが、
224 == 247 == 704 == 717 == http://logsoku.com/thread/toro.2ch.net/tech/1335361193/46
口癖はコンポジション、ミサイルとホーミングミサイルの設計について1ヶ月間も考え続けてる
>>772
>ゲーム作らなくてもお前よりマトモ
タスクの実行順序を意識しないとゲームが作れない(笑)
>>767
敵機 → プレイヤー の順序でタスクを実行するとタスクがぶっ壊れる
OOを得意げに語っているつもりが、やっている事が20年前のC言語だったという事実
バイナリの書き換えがわからない
コンパイラ言語のことをコンパイル言語とか言っちゃう
タイプミスの数々
http://toro.2ch.net/test/read.cgi/tech/1336122899/190
http://toro.2ch.net/test/read.cgi/tech/1336122899/297
http://toro.2ch.net/test/read.cgi/tech/1325246820/837-839
http://toro.2ch.net/test/read.cgi/tech/1336122899/318-320
http://toro.2ch.net/test/read.cgi/tech/1336122899/332-334
http://toro.2ch.net/test/read.cgi/tech/1336122899/818
0951uy
2012/05/28(月) 23:09:58.56バイナリの書き換えがわからなかった
こいつはバイトコードを知らなかった
→ JAVA、C#などを知らない
スクリプト言語は例外なくインタプリトされてると思ってる
→ スクリプト系を1個も知らない
かろうじてコードをかけるのは初心者レベルのC++、D
ゲームが作れない
タスクシステムがかけない
バカ
0952uy
2012/05/28(月) 23:10:13.64「馬鹿は死なねば治らないのであり、だからこそアナトール・フランスは
『愚かな者は、邪悪な者よりも忌まわしい』と言ったのだ。
邪悪な者は休むときがあるが、愚かな者はけっして休まないからである。」
(ホセ・オルテガ・イ・ガセット 1883〜1955)
>>247
>ゲームは作らんから知らんが、
224 == 247 == 704 == 717 == http://logsoku.com/thread/toro.2ch.net/tech/1335361193/46
口癖はコンポジション、ミサイルとホーミングミサイルの設計について1ヶ月間も考え続けてる
>>772
>ゲーム作らなくてもお前よりマトモ
タスクの実行順序を意識しないとゲームが作れない(笑)
>>767
敵機 → プレイヤー の順序でタスクを実行するとタスクがぶっ壊れる
OOを得意げに語っているつもりが、やっている事が20年前のC言語だったという事実
バイナリの書き換えがわからない
コンパイラ言語のことをコンパイル言語とか言っちゃう
タイプミスの数々
http://toro.2ch.net/test/read.cgi/tech/1336122899/190
http://toro.2ch.net/test/read.cgi/tech/1336122899/297
http://toro.2ch.net/test/read.cgi/tech/1325246820/837-839
http://toro.2ch.net/test/read.cgi/tech/1336122899/318-320
http://toro.2ch.net/test/read.cgi/tech/1336122899/332-334
http://toro.2ch.net/test/read.cgi/tech/1336122899/818
0953uy
2012/05/28(月) 23:14:35.58>>232
239 :224:2012/05/18(金) 23:36:30.77
>>236
いや、>>232 == >>213 なんだがな。まぁどうでも。
>>236に書いてあることそのまま書き下すと
obj->set_count_type( count_type );
obj->begin_count( start, limit, add ):
こんな感じかねぇ。まーどうとでもなりますわね。
241 :uy:2012/05/18(金) 23:39:38.42
>>239
いや、どういうやり方がベストだと思うのか、その考えを聞きたい
247 :224:2012/05/19(土) 00:32:17.29
>>244
ゲームは作らんから知らんが、俺はOO厨ではないので、
248 :uy:2012/05/19(土) 01:03:25.42
>ゲームは作らんから知らんが
はい、解散
0954デフォルトの名無しさん
2012/05/28(月) 23:17:37.32それに拘るおまえの脳にはやはり蛆が湧いてるな
0955デフォルトの名無しさん
2012/05/28(月) 23:42:53.540956224
2012/05/28(月) 23:54:16.21一年後には木構造タスク解体して、
ごく普通のその他プログラムと同じように、
コンポジションで書き直しているか、
もしくは、自分の
やろうとしていたこと、やってきたこと、
が無意味と分かって
嫌気が差してプログラミング自体止めてるか、どっちだろうよ。
必要なものを必要と分からずに取り除いてしまうってのは、
若いころにはありがちなミスなのかもねぇ。
しかし、手続き型言語で処理順制御の排除は、さすがに痛いわ。
0957uy
2012/05/28(月) 23:54:55.09俺はナメクジのほうが好きだな
広東住血線虫っていう寄生虫がいてさ
本来は内臓に住み着く寄生虫なんだけどさ
人間に寄生した場合は脊髄を這って
そしてやがて脳に向かっていくらしい
治療方法は、存在しない
ナメクジは野菜を這ったりするから洗浄が足らない野菜や
生で野菜とかを食べてれば普通に口に運んでるよ、
ある程度ならば死にはしないが、その広東住血線虫がいっぺんに脳に押し寄せると昏睡状態に陥り死ぬ
まぁ何が言いたいかというと蛆が脳がいくようなケースは稀であろう
0958uy
2012/05/29(火) 00:03:54.01そういう病人にはリアルで頭に蛆がすんでいても不思議ではない
蛆は腐った肉を食べてくれる
木構造タスクのことを、俺は出来れば ナメクジと名づけたかったんだけど、ナメクジってあんな風体でも多細胞生物なんだよなぁ・・・
だからナメクジじゃなくてアメーバになってしまう、ナメクジは惜しかった
再三説明するけど、木構造タスクは「Rubyですら」まともには書けないからさ、
こういう設計もあるというのを示す為に提示したに過ぎないぞ
C++でまともなゲームを作る奴が作る木構造と、俺のruby木構造は
俺は一応わざと自分の設計を脳内で書き換えて、話を合わせてるけど本質的な部分はかなり異なる
ご推察の通り、公開する予定のrubyゲームのソースコードは普通に描いてるよw
あくまで木構造タスクのゲーム設計は、自分が使うためだけの開発用基盤という立ち位置になりつつある
>しかし、手続き型言語で処理順制御の排除は、さすがに痛いわ。
え、だからそれお前がやってるのは手続き型プログラミング
0959uy
2012/05/29(火) 00:08:01.74どっちだろうよ
どっち「か」だろうよ
お前ほんとに右手の人差し指か中指をケガでもしてんの? 指ちゃんと5本ある?
0960uy
2012/05/29(火) 00:08:54.85「馬鹿は死なねば治らないのであり、だからこそアナトール・フランスは
『愚かな者は、邪悪な者よりも忌まわしい』と言ったのだ。
邪悪な者は休むときがあるが、愚かな者はけっして休まないからである。」
(ホセ・オルテガ・イ・ガセット 1883〜1955)
>>247
>ゲームは作らんから知らんが、
224 == 247 == 704 == 717 == http://logsoku.com/thread/toro.2ch.net/tech/1335361193/46
口癖はコンポジション、ミサイルとホーミングミサイルの設計について1ヶ月間も考え続けてる
>>772
>ゲーム作らなくてもお前よりマトモ
タスクの実行順序を意識しないとゲームが作れない(笑)
>>767
敵機 → プレイヤー の順序でタスクを実行するとタスクがぶっ壊れる
OOを得意げに語っているつもりが、やっている事が20年前のC言語だったという事実
バイナリの書き換えがわからない
コンパイラ言語のことをコンパイル言語とか言っちゃう
タイプミスの数々
http://toro.2ch.net/test/read.cgi/tech/1336122899/190
http://toro.2ch.net/test/read.cgi/tech/1336122899/297
http://toro.2ch.net/test/read.cgi/tech/1325246820/837-839
http://toro.2ch.net/test/read.cgi/tech/1336122899/318-320
http://toro.2ch.net/test/read.cgi/tech/1336122899/332-334
http://toro.2ch.net/test/read.cgi/tech/1336122899/818
http://toro.2ch.net/test/read.cgi/tech/1336122899/956
そろそろ書ききれない
0961デフォルトの名無しさん
2012/05/29(火) 00:09:55.77「馬鹿は死なねば治らないのであり、だからこそアナトール・フランスは
『愚かな者は、邪悪な者よりも忌まわしい』と言ったのだ。
邪悪な者は休むときがあるが、愚かな者はけっして休まないからである。」
(ホセ・オルテガ・イ・ガセット 1883〜1955)
>>247
>ゲームは作らんから知らんが、
224 == 247 == 704 == 717 == http://logsoku.com/thread/toro.2ch.net/tech/1335361193/46
口癖はコンポジション、ミサイルとホーミングミサイルの設計について1ヶ月間も考え続けてる
>>772
>ゲーム作らなくてもお前よりマトモ
タスクの実行順序を意識しないとゲームが作れない(笑)
>>767
敵機 → プレイヤー の順序でタスクを実行するとタスクがぶっ壊れる
OOを得意げに語っているつもりが、やっている事が20年前のC言語だったという事実
バイナリの書き換えがわからない
コンパイラ言語のことをコンパイル言語とか言っちゃう
タイプミスの数々、右手の人差し指と中指をケガしてる模様
http://toro.2ch.net/test/read.cgi/tech/1336122899/190
http://toro.2ch.net/test/read.cgi/tech/1336122899/297
http://toro.2ch.net/test/read.cgi/tech/1325246820/837-839
http://toro.2ch.net/test/read.cgi/tech/1336122899/318-320
http://toro.2ch.net/test/read.cgi/tech/1336122899/332-334
http://toro.2ch.net/test/read.cgi/tech/1336122899/818
http://toro.2ch.net/test/read.cgi/tech/1336122899/956
0962224
2012/05/29(火) 00:19:34.73真のプログラムは何も書かないこと、とか世迷言書いて無かったっけか。
手続き型言語で手続きを否定するってのも同じノリだな。
はたまた人間なのに人間を否定してみたり(>>588)。
存在をマイナス要因と考えるから、存在価値が裏返る。
あべこべキチガイ人間。
天使がどうとか言ってたが、むしろ悪魔に魅入られてる。
0963224
2012/05/29(火) 00:23:47.03Rubyは手続き型オブジェクト指向プログラミング言語。
0964デフォルトの名無しさん
2012/05/29(火) 00:44:18.43引き続き>>224の負け惜しみ劇場をお楽しみください
------------------------------------------------------------
0965デフォルトの名無しさん
2012/05/29(火) 00:56:20.050966デフォルトの名無しさん
2012/05/29(火) 00:58:28.760967デフォルトの名無しさん
2012/05/29(火) 01:01:07.830968717
2012/05/29(火) 01:23:47.87質問
例えば小売業の日々変わる商品値段をOOで管理した場合はどうなる?
商品毎に価格のクラスを作る? それとも一つの価格クラス? それともまったく別の方法?
日々の値の設定方法は?
そうやって造ったものが他の手法よりOOがどのように優れていると思うか教えて。
俺には正解とかわからないけどw よかったら答えて。
0969デフォルトの名無しさん
2012/05/29(火) 01:31:30.03オブジェクト指向全く関係ないじゃんw
現時点でのデータを表すマスタクラスと
日々行われた処理をを表すトランザクションクラスが
できるだけ。
0970デフォルトの名無しさん
2012/05/29(火) 01:34:46.13過去のデータを適切に処理できるのは
過去の処理だけ。
たとえば過去のデータの税率計算処理は
過去のデータと共に保存しなければならない。
だからデータのみではなく処理も含めた
オブジェクトとして保存しておくのが適切である。
0971デフォルトの名無しさん
2012/05/29(火) 01:37:25.790972デフォルトの名無しさん
2012/05/29(火) 01:47:17.71エクセルでもつかっとけアホ
0973デフォルトの名無しさん
2012/05/29(火) 02:27:46.01「品番が増えたらクラス増やすの!?」とか
もうがっかりだよ
おれら小学生相手にしてんのかよ
0974uy
2012/05/29(火) 03:29:11.701 釣り
2 uy釣り
3 マジでバカ
4 煽られてバカにされて発狂しちゃった
まぁ、世の中には想像を絶する天才もいるように
想像を絶するこんなバカもいるんだろ
俺も結構見てきたよそういう奴、
なんか記憶や物事の応用自体が根本的に下手な奴
普通に会話する事がギリギリ可能なレベルで、例えるなら人間じゃなく獣のような印象を持つ
でもプログラミング界隈には少ないと思ってたんだけど
まさかこんなところでお目にかかるとは
そういう知り合いで一人、自分の頭の悪さとか人間的なスペックの低さを周りから酷く言われて
精神的に追い詰められて自殺した奴を見てる
生まれつきかなんなのか、頭も悪く5感も悪いような、そんな人間もいる事はいる
猫も5匹を出産すると、最後の1匹は生まれてくるべきじゃないような固体だったりするからな
健康である事はその時点でマシなんです
0975デフォルトの名無しさん
2012/05/29(火) 04:01:10.660976uy
2012/05/29(火) 04:11:56.600977デフォルトの名無しさん
2012/05/29(火) 04:22:04.89「馬鹿は死なねば治らないのであり、だからこそアナトール・フランスは
『愚かな者は、邪悪な者よりも忌まわしい』と言ったのだ。
邪悪な者は休むときがあるが、愚かな者はけっして休まないからである。」
(ホセ・オルテガ・イ・ガセット 1883〜1955)
>>247
>ゲームは作らんから知らんが、
224 == 247 == 704 == 717 == http://logsoku.com/thread/toro.2ch.net/tech/1335361193/46
口癖はコンポジション、ミサイルとホーミングミサイルの設計について1ヶ月間も考え続けてる
>>772
>ゲーム作らなくてもお前よりマトモ
タスクの実行順序を意識しないとゲームが作れない(笑)
>>767
敵機 → プレイヤー の順序でタスクを実行するとタスクがぶっ壊れる
OOを得意げに語っているつもりが、やっている事が20年前のC言語だったという事実
バイナリの書き換えがわからない
コンパイラ言語のことをコンパイル言語とか言っちゃう
タイプミスの数々、右手の人差し指と中指をケガしてる模様
http://toro.2ch.net/test/read.cgi/tech/1336122899/190
http://toro.2ch.net/test/read.cgi/tech/1336122899/297
http://toro.2ch.net/test/read.cgi/tech/1325246820/837-839
http://toro.2ch.net/test/read.cgi/tech/1336122899/318-320
http://toro.2ch.net/test/read.cgi/tech/1336122899/332-334
http://toro.2ch.net/test/read.cgi/tech/1336122899/818
http://toro.2ch.net/test/read.cgi/tech/1336122899/956
0978デフォルトの名無しさん
2012/05/29(火) 06:29:36.77「馬鹿は死なねば治らないのであり、だからこそアナトール・フランスは
『愚かな者は、邪悪な者よりも忌まわしい』と言ったのだ。
邪悪な者は休むときがあるが、愚かな者はけっして休まないからである。」
(ホセ・オルテガ・イ・ガセット 1883〜1955)
>>247
>ゲームは作らんから知らんが、
224 == 247 == 704 == 717 == http://logsoku.com/thread/toro.2ch.net/tech/1335361193/46
口癖はコンポジション、ミサイルとホーミングミサイルの設計について1ヶ月間も考え続けてる
>>772
>ゲーム作らなくてもお前よりマトモ
タスクの実行順序を意識しないとゲームが作れない(笑)
>>767
敵機 → プレイヤー の順序でタスクを実行するとタスクがぶっ壊れる
OOを得意げに語っているつもりが、やっている事が20年前のC言語だったという事実
バイナリの書き換えがわからない
コンパイラ言語のことをコンパイル言語とか言っちゃう
タイプミスの数々、右手の人差し指と中指をケガしてる模様
http://toro.2ch.net/test/read.cgi/tech/1336122899/190
http://toro.2ch.net/test/read.cgi/tech/1336122899/297
http://toro.2ch.net/test/read.cgi/tech/1325246820/837-839
http://toro.2ch.net/test/read.cgi/tech/1336122899/318-320
http://toro.2ch.net/test/read.cgi/tech/1336122899/332-334
http://toro.2ch.net/test/read.cgi/tech/1336122899/818
http://toro.2ch.net/test/read.cgi/tech/1336122899/956
0979717
2012/05/29(火) 12:26:27.62>オブジェクト指向全く関係ないじゃんw
個別の物(オブジェクト)の、値の操作だからOOに適していると思うが。
>>970
>だからデータのみではなく処理も含めた
>オブジェクトとして保存しておくのが適切である。
なるほど!! データだけじゃなく処理も保存か。
ステータスやフラグを記憶してオブジェクトやメソッドを制御するのではなく
”処理”自体を保存するという、発想はなかった。
勉強になったありがとう。
>>972
アホ
0980デフォルトの名無しさん
2012/05/29(火) 13:17:53.87「馬鹿は死なねば治らないのであり、だからこそアナトール・フランスは
『愚かな者は、邪悪な者よりも忌まわしい』と言ったのだ。
邪悪な者は休むときがあるが、愚かな者はけっして休まないからである。」
(ホセ・オルテガ・イ・ガセット 1883〜1955)
>>247
>ゲームは作らんから知らんが、
224 == 247 == 704 == 717 == http://logsoku.com/thread/toro.2ch.net/tech/1335361193/46
口癖はコンポジション、ミサイルとホーミングミサイルの設計について1ヶ月間も考え続けてる
>>772
>ゲーム作らなくてもお前よりマトモ
タスクの実行順序を意識しないとゲームが作れない(笑)
>>767
敵機 → プレイヤー の順序でタスクを実行するとタスクがぶっ壊れる
OOを得意げに語っているつもりが、やっている事が20年前のC言語だったという事実
バイナリの書き換えがわからない
コンパイラ言語のことをコンパイル言語とか言っちゃう
タイプミスの数々、右手の人差し指と中指をケガしてる模様
http://toro.2ch.net/test/read.cgi/tech/1336122899/190
http://toro.2ch.net/test/read.cgi/tech/1336122899/297
http://toro.2ch.net/test/read.cgi/tech/1325246820/837-839
http://toro.2ch.net/test/read.cgi/tech/1336122899/318-320
http://toro.2ch.net/test/read.cgi/tech/1336122899/332-334
http://toro.2ch.net/test/read.cgi/tech/1336122899/818
http://toro.2ch.net/test/read.cgi/tech/1336122899/956
0981デフォルトの名無しさん
2012/05/29(火) 13:18:17.220982デフォルトの名無しさん
2012/05/29(火) 13:24:05.940983デフォルトの名無しさん
2012/05/29(火) 13:49:15.540984デフォルトの名無しさん
2012/05/29(火) 13:59:20.920985デフォルトの名無しさん
2012/05/29(火) 14:30:20.010986デフォルトの名無しさん
2012/05/29(火) 15:00:22.27953 :uy:2012/05/28(月) 23:14:35.58
>>225
>>232
239 :224:2012/05/18(金) 23:36:30.77
>>236
いや、>>232 == >>213 なんだがな。まぁどうでも。
>>236に書いてあることそのまま書き下すと
obj->set_count_type( count_type );
obj->begin_count( start, limit, add ):
こんな感じかねぇ。まーどうとでもなりますわね。
241 :uy:2012/05/18(金) 23:39:38.42
>>239
いや、どういうやり方がベストだと思うのか、その考えを聞きたい
247 :224:2012/05/19(土) 00:32:17.29
>>244
ゲームは作らんから知らんが、俺はOO厨ではないので、
248 :uy:2012/05/19(土) 01:03:25.42
>ゲームは作らんから知らんが
はい、解散
0987デフォルトの名無しさん
2012/05/29(火) 15:00:41.65「馬鹿は死なねば治らないのであり、だからこそアナトール・フランスは
『愚かな者は、邪悪な者よりも忌まわしい』と言ったのだ。
邪悪な者は休むときがあるが、愚かな者はけっして休まないからである。」
(ホセ・オルテガ・イ・ガセット 1883〜1955)
http://toro.2ch.net/test/read.cgi/tech/1336122899/247
>ゲームは作らんから知らんが、
224 == 247 == 704 == 717 == http://logsoku.com/thread/toro.2ch.net/tech/1335361193/46
口癖はコンポジション、ミサイルとホーミングミサイルの設計について1ヶ月間も考え続けてる
http://toro.2ch.net/test/read.cgi/tech/1336122899/772
>ゲーム作らなくてもお前よりマトモ
タスクの実行順序を意識しないとゲームが作れない(笑)
http://toro.2ch.net/test/read.cgi/tech/1336122899/767
敵機 → プレイヤー の順序でタスクを実行するとタスクがぶっ壊れる
OOを得意げに語っているつもりが、やっている事が20年前のC言語だったという事実
バイナリの書き換えがわからない
コンパイラ言語のことをコンパイル言語とか言っちゃう
タイプミスの数々、右手の人差し指と中指をケガしてる模様
http://toro.2ch.net/test/read.cgi/tech/1336122899/190
http://toro.2ch.net/test/read.cgi/tech/1336122899/297
http://toro.2ch.net/test/read.cgi/tech/1325246820/837-839
http://toro.2ch.net/test/read.cgi/tech/1336122899/318-320
http://toro.2ch.net/test/read.cgi/tech/1336122899/332-334
http://toro.2ch.net/test/read.cgi/tech/1336122899/818
http://toro.2ch.net/test/read.cgi/tech/1336122899/956
0988デフォルトの名無しさん
2012/05/29(火) 15:16:45.35「馬鹿は死なねば治らないのであり、だからこそアナトール・フランスは
『愚かな者は、邪悪な者よりも忌まわしい』と言ったのだ。
邪悪な者は休むときがあるが、愚かな者はけっして休まないからである。」
(ホセ・オルテガ・イ・ガセット 1883〜1955)
http://toro.2ch.net/test/read.cgi/tech/1336122899/247
>ゲームは作らんから知らんが、
224 == 247 == 704 == 717 == http://logsoku.com/thread/toro.2ch.net/tech/1335361193/46
口癖はコンポジション、ミサイルとホーミングミサイルの設計について1ヶ月間も考え続けてる
http://toro.2ch.net/test/read.cgi/tech/1336122899/772
>ゲーム作らなくてもお前よりマトモ
タスクの実行順序を意識しないとゲームが作れない(笑)
http://toro.2ch.net/test/read.cgi/tech/1336122899/767
敵機 → プレイヤー の順序でタスクを実行するとタスクがぶっ壊れる
OOを得意げに語っているつもりが、やっている事が20年前のC言語だったという事実
バイナリの書き換えがわからない
コンパイラ言語のことをコンパイル言語とか言っちゃう
タイプミスの数々、右手の人差し指と中指をケガしてる模様
http://toro.2ch.net/test/read.cgi/tech/1336122899/190
http://toro.2ch.net/test/read.cgi/tech/1336122899/297
http://toro.2ch.net/test/read.cgi/tech/1325246820/837-839
http://toro.2ch.net/test/read.cgi/tech/1336122899/318-320
http://toro.2ch.net/test/read.cgi/tech/1336122899/332-334
http://toro.2ch.net/test/read.cgi/tech/1336122899/818
http://toro.2ch.net/test/read.cgi/tech/1336122899/956
0989デフォルトの名無しさん
2012/05/29(火) 15:19:18.850990デフォルトの名無しさん
2012/05/29(火) 15:20:04.42「馬鹿は死なねば治らないのであり、だからこそアナトール・フランスは
『愚かな者は、邪悪な者よりも忌まわしい』と言ったのだ。
邪悪な者は休むときがあるが、愚かな者はけっして休まないからである。」
(ホセ・オルテガ・イ・ガセット 1883〜1955)
http://toro.2ch.net/test/read.cgi/tech/1336122899/247
>ゲームは作らんから知らんが、
224 == 247 == 704 == 717 == http://logsoku.com/thread/toro.2ch.net/tech/1335361193/46
口癖はコンポジション、ミサイルとホーミングミサイルの設計について1ヶ月間も考え続けてる
http://toro.2ch.net/test/read.cgi/tech/1336122899/772
>ゲーム作らなくてもお前よりマトモ
タスクの実行順序を意識しないとゲームが作れない(笑)
http://toro.2ch.net/test/read.cgi/tech/1336122899/767
敵機 → プレイヤー の順序でタスクを実行するとタスクがぶっ壊れる
OOを得意げに語っているつもりが、やっている事が20年前のC言語だったという事実
バイナリの書き換えがわからない
コンパイラ言語のことをコンパイル言語とか言っちゃう
タイプミスの数々、右手の人差し指と中指をケガしてる模様
http://toro.2ch.net/test/read.cgi/tech/1336122899/190
http://toro.2ch.net/test/read.cgi/tech/1336122899/297
http://toro.2ch.net/test/read.cgi/tech/1325246820/837-839
http://toro.2ch.net/test/read.cgi/tech/1336122899/318-320
http://toro.2ch.net/test/read.cgi/tech/1336122899/332-334
http://toro.2ch.net/test/read.cgi/tech/1336122899/818
http://toro.2ch.net/test/read.cgi/tech/1336122899/956
0991デフォルトの名無しさん
2012/05/29(火) 15:20:34.47953 :uy:2012/05/28(月) 23:14:35.58
>>225
>>232
239 :224:2012/05/18(金) 23:36:30.77
>>236
いや、>>232 == >>213 なんだがな。まぁどうでも。
>>236に書いてあることそのまま書き下すと
obj->set_count_type( count_type );
obj->begin_count( start, limit, add ):
こんな感じかねぇ。まーどうとでもなりますわね。
241 :uy:2012/05/18(金) 23:39:38.42
>>239
いや、どういうやり方がベストだと思うのか、その考えを聞きたい
247 :224:2012/05/19(土) 00:32:17.29
>>244
ゲームは作らんから知らんが、俺はOO厨ではないので、
248 :uy:2012/05/19(土) 01:03:25.42
>ゲームは作らんから知らんが
はい、解散
0992デフォルトの名無しさん
2012/05/29(火) 15:21:12.49>>225
>>232
239 :224:2012/05/18(金) 23:36:30.77
>>236
いや、>>232 == >>213 なんだがな。まぁどうでも。
>>236に書いてあることそのまま書き下すと
obj->set_count_type( count_type );
obj->begin_count( start, limit, add ):
こんな感じかねぇ。まーどうとでもなりますわね。
241 :uy:2012/05/18(金) 23:39:38.42
>>239
いや、どういうやり方がベストだと思うのか、その考えを聞きたい
247 :224:2012/05/19(土) 00:32:17.29
>>244
ゲームは作らんから知らんが、俺はOO厨ではないので、
248 :uy:2012/05/19(土) 01:03:25.42
>ゲームは作らんから知らんが
はい、解散
0993デフォルトの名無しさん
2012/05/29(火) 16:39:25.61「馬鹿は死なねば治らないのであり、だからこそアナトール・フランスは
『愚かな者は、邪悪な者よりも忌まわしい』と言ったのだ。
邪悪な者は休むときがあるが、愚かな者はけっして休まないからである。」
(ホセ・オルテガ・イ・ガセット 1883〜1955)
http://toro.2ch.net/test/read.cgi/tech/1336122899/247
>ゲームは作らんから知らんが、
224 == 247 == 704 == 717 == http://logsoku.com/thread/toro.2ch.net/tech/1335361193/46
口癖はコンポジション、ミサイルとホーミングミサイルの設計について1ヶ月間も考え続けてる
http://toro.2ch.net/test/read.cgi/tech/1336122899/772
>ゲーム作らなくてもお前よりマトモ
タスクの実行順序を意識しないとゲームが作れない(笑)
http://toro.2ch.net/test/read.cgi/tech/1336122899/767
敵機 → プレイヤー の順序でタスクを実行するとタスクがぶっ壊れる
OOを得意げに語っているつもりが、やっている事が20年前のC言語だったという事実
バイナリの書き換えがわからない
コンパイラ言語のことをコンパイル言語とか言っちゃう
タイプミスの数々、右手の人差し指と中指をケガしてる模様
http://toro.2ch.net/test/read.cgi/tech/1336122899/190
http://toro.2ch.net/test/read.cgi/tech/1336122899/297
http://toro.2ch.net/test/read.cgi/tech/1325246820/837-839
http://toro.2ch.net/test/read.cgi/tech/1336122899/318-320
http://toro.2ch.net/test/read.cgi/tech/1336122899/332-334
http://toro.2ch.net/test/read.cgi/tech/1336122899/818
http://toro.2ch.net/test/read.cgi/tech/1336122899/956
0994デフォルトの名無しさん
2012/05/29(火) 16:40:44.19「馬鹿は死なねば治らないのであり、だからこそアナトール・フランスは
『愚かな者は、邪悪な者よりも忌まわしい』と言ったのだ。
邪悪な者は休むときがあるが、愚かな者はけっして休まないからである。」
(ホセ・オルテガ・イ・ガセット 1883〜1955)
http://toro.2ch.net/test/read.cgi/tech/1336122899/247
>ゲームは作らんから知らんが、
224 == 247 == 704 == 717 == http://logsoku.com/thread/toro.2ch.net/tech/1335361193/46
口癖はコンポジション、ミサイルとホーミングミサイルの設計について1ヶ月間も考え続けてる
http://toro.2ch.net/test/read.cgi/tech/1336122899/772
>ゲーム作らなくてもお前よりマトモ
タスクの実行順序を意識しないとゲームが作れない(笑)
http://toro.2ch.net/test/read.cgi/tech/1336122899/767
敵機 → プレイヤー の順序でタスクを実行するとタスクがぶっ壊れる
OOを得意げに語っているつもりが、やっている事が20年前のC言語だったという事実
バイナリの書き換えがわからない
コンパイラ言語のことをコンパイル言語とか言っちゃう
タイプミスの数々、右手の人差し指と中指をケガしてる模様
http://toro.2ch.net/test/read.cgi/tech/1336122899/190
http://toro.2ch.net/test/read.cgi/tech/1336122899/297
http://toro.2ch.net/test/read.cgi/tech/1325246820/837-839
http://toro.2ch.net/test/read.cgi/tech/1336122899/318-320
http://toro.2ch.net/test/read.cgi/tech/1336122899/332-334
http://toro.2ch.net/test/read.cgi/tech/1336122899/818
http://toro.2ch.net/test/read.cgi/tech/1336122899/956
0995デフォルトの名無しさん
2012/05/29(火) 16:47:39.36「馬鹿は死なねば治らないのであり、だからこそアナトール・フランスは
『愚かな者は、邪悪な者よりも忌まわしい』と言ったのだ。
邪悪な者は休むときがあるが、愚かな者はけっして休まないからである。」
(ホセ・オルテガ・イ・ガセット 1883〜1955)
http://toro.2ch.net/test/read.cgi/tech/1336122899/247
>ゲームは作らんから知らんが、
224 == 247 == 704 == 717 == http://logsoku.com/thread/toro.2ch.net/tech/1335361193/46
口癖はコンポジション、ミサイルとホーミングミサイルの設計について1ヶ月間も考え続けてる
http://toro.2ch.net/test/read.cgi/tech/1336122899/772
>ゲーム作らなくてもお前よりマトモ
タスクの実行順序を意識しないとゲームが作れない(笑)
http://toro.2ch.net/test/read.cgi/tech/1336122899/767
敵機 → プレイヤー の順序でタスクを実行するとタスクがぶっ壊れる
OOを得意げに語っているつもりが、やっている事が20年前のC言語だったという事実
バイナリの書き換えがわからない
コンパイラ言語のことをコンパイル言語とか言っちゃう
タイプミスの数々、右手の人差し指と中指をケガしてる模様
http://toro.2ch.net/test/read.cgi/tech/1336122899/190
http://toro.2ch.net/test/read.cgi/tech/1336122899/297
http://toro.2ch.net/test/read.cgi/tech/1325246820/837-839
http://toro.2ch.net/test/read.cgi/tech/1336122899/318-320
http://toro.2ch.net/test/read.cgi/tech/1336122899/332-334
http://toro.2ch.net/test/read.cgi/tech/1336122899/818
http://toro.2ch.net/test/read.cgi/tech/1336122899/956
0996デフォルトの名無しさん
2012/05/29(火) 16:59:08.61「馬鹿は死なねば治らないのであり、だからこそアナトール・フランスは
『愚かな者は、邪悪な者よりも忌まわしい』と言ったのだ。
邪悪な者は休むときがあるが、愚かな者はけっして休まないからである。」
(ホセ・オルテガ・イ・ガセット 1883〜1955)
http://toro.2ch.net/test/read.cgi/tech/1336122899/247
>ゲームは作らんから知らんが、
224 == 247 == 704 == 717 == http://logsoku.com/thread/toro.2ch.net/tech/1335361193/46
口癖はコンポジション、ミサイルとホーミングミサイルの設計について1ヶ月間も考え続けてる
http://toro.2ch.net/test/read.cgi/tech/1336122899/772
>ゲーム作らなくてもお前よりマトモ
タスクの実行順序を意識しないとゲームが作れない(笑)
http://toro.2ch.net/test/read.cgi/tech/1336122899/767
敵機 → プレイヤー の順序でタスクを実行するとタスクがぶっ壊れる
OOを得意げに語っているつもりが、やっている事が20年前のC言語だったという事実
バイナリの書き換えがわからない
コンパイラ言語のことをコンパイル言語とか言っちゃう
タイプミスの数々、右手の人差し指と中指をケガしてる模様
http://toro.2ch.net/test/read.cgi/tech/1336122899/190
http://toro.2ch.net/test/read.cgi/tech/1336122899/297
http://toro.2ch.net/test/read.cgi/tech/1325246820/837-839
http://toro.2ch.net/test/read.cgi/tech/1336122899/318-320
http://toro.2ch.net/test/read.cgi/tech/1336122899/332-334
http://toro.2ch.net/test/read.cgi/tech/1336122899/818
http://toro.2ch.net/test/read.cgi/tech/1336122899/956
0997デフォルトの名無しさん
2012/05/29(火) 17:19:05.38http://toro.2ch.net/test/read.cgi/tech/1333801607/l50
【アンチ】関数型言語は使えない【玩具】 2
http://toro.2ch.net/test/read.cgi/tech/1330429547/l50
0998デフォルトの名無しさん
2012/05/29(火) 17:19:18.49「馬鹿は死なねば治らないのであり、だからこそアナトール・フランスは
『愚かな者は、邪悪な者よりも忌まわしい』と言ったのだ。
邪悪な者は休むときがあるが、愚かな者はけっして休まないからである。」
(ホセ・オルテガ・イ・ガセット 1883〜1955)
http://toro.2ch.net/test/read.cgi/tech/1336122899/247
>ゲームは作らんから知らんが、
224 == 247 == 704 == 717 == http://logsoku.com/thread/toro.2ch.net/tech/1335361193/46
口癖はコンポジション、ミサイルとホーミングミサイルの設計について1ヶ月間も考え続けてる
http://toro.2ch.net/test/read.cgi/tech/1336122899/772
>ゲーム作らなくてもお前よりマトモ
タスクの実行順序を意識しないとゲームが作れない(笑)
http://toro.2ch.net/test/read.cgi/tech/1336122899/767
敵機 → プレイヤー の順序でタスクを実行するとタスクがぶっ壊れる
OOを得意げに語っているつもりが、やっている事が20年前のC言語だったという事実
バイナリの書き換えがわからない
コンパイラ言語のことをコンパイル言語とか言っちゃう
タイプミスの数々、右手の人差し指と中指をケガしてる模様
http://toro.2ch.net/test/read.cgi/tech/1336122899/190
http://toro.2ch.net/test/read.cgi/tech/1336122899/297
http://toro.2ch.net/test/read.cgi/tech/1325246820/837-839
http://toro.2ch.net/test/read.cgi/tech/1336122899/318-320
http://toro.2ch.net/test/read.cgi/tech/1336122899/332-334
http://toro.2ch.net/test/read.cgi/tech/1336122899/818
http://toro.2ch.net/test/read.cgi/tech/1336122899/956
0999デフォルトの名無しさん
2012/05/29(火) 17:19:39.19_,.-l::トミ:\// 斗.-―-..._
-=二__: :}:}: : ヾ}''": : : : : : : : : : : `ヽ、 __
/: :ノノ:/: : : : : : : :/: : : : : : : : :ミ=- 〃~》
,:': : : :{l{/:{: ゞ: : : : : / : : : : : : : : / : ∧≦≠ミx、
/: /: : :/:{: : : : / : : / : : /:/ : : : / : : : ∧ヽ,,x彡'
/:/: : :/i: : :i : : !: : :斗-/!:{ : : : /i: : : : : :ハ〃、
,:'/i : //{: ヘl: : :i: : :// i/i: : : / ト、:/ : } : }: :ト\
/ i 〈/: i{ i : : iィ { i: :/ j: ∧ :/: ノi: :i
i: : /:弋 i:l: : }iィ=ミ }/ レ : :/i :/l::|: }
}ノ {: リ`ii: : j!,,,,, =ミノイ: :i/: L| j!
∨ λ: リ、 r- 、' ,,,,/ : {: ト、 : : リ >>1死ね♪
,,_Y ノ}ヽ、 ー .......-‐<:i: :∧{ ヽ /
/{{''"´ ノ { `ーrァ、_ j/ ソ
j! {弋゙辷ヽ __r‐f/.: .: ヽ
λ }.: {トミト-にフ斗'".: .∧.: {
ノ.: `j.: .: }i ii 不、ii i{.: .: ゙、.: .:\
弋.: .:i.: .: {i /∧ }ll i) .: .: .}: .: .: 〉
\{.: .: .:}i〈ノ ソ ii }}.: .: .:i/.:/
1000デフォルトの名無しさん
2012/05/29(火) 17:19:57.73.>:.:/.:.\:.∨:.:.:.\>○-、
/:.://.:.:.:/.::.l :}:.|:.:|:.:.{⌒ヽ ○
:./:.:./:.:.:./'7777|:.:|:.:.|\_}人
/:.:.:.::|:.:.:/'//////レ'|:.:.|:.:|:.:.:.:.:.:.| | | ||
: /}:.:.|:.//////////|:.:ハ}:.:.:.:.:.:.| | |
/'/:.:.:V/ノ '////|/}:.:.:.:.:ノ:.:.:| | |
./:.:.}:.:|' f⌒ヽ }三7) }:.:.:.:| {
:./|.∧ ヽ ) / /イ:./:./ て ─┬┘
/:.:.:.:\  ̄ /ミニ7:.//:./ ' {. ‐─┼─
. /:.:.:/:.:.::.:>ー/=ミ/7^7´ ̄`ヽ. て |
/:./:.:./:.:_/ニミ:./ 人{ '、 く. ┘
:./ .:. ///:.:.:.:.:./ ノ \ '、' ‐┬┘
:.:.:.:./:.| /ニニミ}ト、< !? >. '、 |
:.:.:.:i:.:(__ノ:./ |:::| \} / ̄ ̄ ̄ ̄|
:.:.:.:i.:.:| ∨} V|:::|/ く⌒V::::::::::::::::::::::::| || /
:.:.:.:i:「 ̄`7 /:/_, \/ ̄ ̄ ̄ ̄| /
:.:.:.:i:ト、:/ _,{::{_ ∨ / \
:.:.:.:l:| / {::{ } 〈 〉
\:. |{ \}::} _ 〈 / ̄ 〈
∨ハ }::} / 〉
./ ヘ. }::} // \__ イ
_/ }丶 }}__/ /
〈 /::::\_ _/
10011001
Over 1000Threadもう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。