[過去ログ]
C/C++ゲーム製作総合スレッド Part2 (1001レス)
C/C++ゲーム製作総合スレッド Part2 http://echo.5ch.net/test/read.cgi/gamedev/1351015269/
上
下
前
次
1-
新
通常表示
512バイト分割
レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索
歴削→次スレ
栞削→次スレ
過去ログメニュー
1: 名前は開発中のものです。 [sage] 2012/10/24(水) 03:01:09.64 ID:oI68Vzqz ゲーム製作におけるC/C++全般に関するスレです。 元スレ DXライブラリ 総合スレッド その12 http://toro.2ch.net/test/read.cgi/gamedev/1330000532/ C/C++ゲーム製作総合スレッド Part1 http://toro.2ch.net/test/read.cgi/gamedev/1337516528/ http://echo.5ch.net/test/read.cgi/gamedev/1351015269/1
921: 名前は開発中のものです。 [sage] 2013/01/03(木) 13:51:09.12 ID:BC6tD7as ↑を、さっきのと同じ6コアCPU、Windows、VC++、x64、Releaseビルド(最適化無効)で 5〜6ms程度だ。testクラスなら7〜8ms。new/deleteをやめてk++にすると大方0msになる。 つまり1万回ではその1/10程度ということだ。 テストで生成しているオブジェクトの構造が単純であることを加味すると、十分に遅いだろ? なお※の様に配列の領域のサイズを不規則にしてやると、38〜40msかかる。 ちなみにコンソールアプリを空プロジェクトとして生成して、main.cppを追加して記述している。 確認方法は、デスクトップ環境でexeファイルをダブルクリックにより実行。 >>906の「目視平均で10ms程度」はいい加減だった。 http://echo.5ch.net/test/read.cgi/gamedev/1351015269/921
922: 名前は開発中のものです。 [sage] 2013/01/03(木) 14:10:16.45 ID:Qmf3rDAa つまりnewとdeleteとループ処理併せて一組0.00004ms=40ナノ秒 弾幕ゲーのように数フレームごとにオブジェクトの生成や消滅や数十個レベルで起こるとして、 それは使うとまずいレベルなのか? 結局自前で利用の有無をフラグの管理をするにしても、 ヒープからメモリを確保する場合と、利用有無フラグ捜索してポインタを返す場合と、 誤差以上の差が発生するプログラムが全く思いつかない。 http://echo.5ch.net/test/read.cgi/gamedev/1351015269/922
923: 名前は開発中のものです。 [sage] 2013/01/03(木) 14:36:33.04 ID:Hs6nIL6e PCの場合、例えば平凡なDoug Lea Malloc(の亜種)を使うことについて 処理速度上の問題で難癖を付けるには、意図的に相当に意地悪な(過酷な)状況設定を 引っ張ってくる必要があると思うなぁ 例えば3D視点のゲームで、視覚効果に使う粒子状の短命オブジェクトが盛り盛り 無数に画面上に散りばめられてて、それらが何と一粒一粒馬鹿正直にヒープから メモリ割り当てされてて何の工夫もない線形リストに挿入されてて、毎フレーム 線形リストを馬鹿正直に巡回して一粒一粒更新したり削除即時解放したりとか http://echo.5ch.net/test/read.cgi/gamedev/1351015269/923
924: 名前は開発中のものです。 [sage] 2013/01/03(木) 14:41:32.78 ID:Qmf3rDAa 座標計算だけならいけそうだが、粒子の描画に処理が持って行かれるだろうね。 http://echo.5ch.net/test/read.cgi/gamedev/1351015269/924
925: 名前は開発中のものです。 [sage] 2013/01/03(木) 14:45:10.24 ID:Hs6nIL6e 描画関数に渡すパーティクル用のデータ構造と明らかに違う状態だから そのセットアップもあるしね。まぁ、いずれにせよ、何でそんな馬鹿な 想定を持ち出すんだと閉口するような話に持っていかないと処理速度上の 問題で横槍いれるのは難しいと思う http://echo.5ch.net/test/read.cgi/gamedev/1351015269/925
926: 名前は開発中のものです。 [sage] 2013/01/03(木) 15:20:02.10 ID:BC6tD7as >弾幕ゲーのように数フレームごとにオブジェクトの生成や消滅や数十個レベルで起こるとして、 >それは使うとまずいレベルなのか? そういったありきたりの仕様だけを想定するなら、都度new/deleteもあつらえ向きだろうな。 しかし熱望する仕様を満たす可能性を最大化する作法には程遠い。 http://echo.5ch.net/test/read.cgi/gamedev/1351015269/926
927: 名前は開発中のものです。 [sage] 2013/01/03(木) 15:29:26.43 ID:Qmf3rDAa 認めはしたものの悔しいから含みを残す言い方で跡を濁す。 これもいつものパターン。 お疲れ様。 http://echo.5ch.net/test/read.cgi/gamedev/1351015269/927
928: 名前は開発中のものです。 [sage] 2013/01/03(木) 15:36:21.98 ID:1qjfamGg お疲れー、次誰かデザインパターン講座オナシャス http://echo.5ch.net/test/read.cgi/gamedev/1351015269/928
929: 名前は開発中のものです。 [sage] 2013/01/03(木) 15:41:51.72 ID:hxpfY6De 趣味でPCで作ってるならなんでもいいよ。 自分のPCで動けばいいんだから。 でもプロ目指すなら他のプラットフォームに 移植しやすい設計にしとけって話。 http://echo.5ch.net/test/read.cgi/gamedev/1351015269/929
930: 名前は開発中のものです。 [sage] 2013/01/03(木) 15:43:19.76 ID:BC6tD7as >>927 お前誰だよ?w、パターンて何だよ? 認めていないんだが。 仕様の話に向かわせているのはそっちだろ? 俺の時間を返せ。 新年早々、やれやれだぜ http://echo.5ch.net/test/read.cgi/gamedev/1351015269/930
931: 名前は開発中のものです。 [sage] 2013/01/03(木) 15:52:10.66 ID:Qmf3rDAa >>930 ヒープの使用が駄目だというのが分かる、自前のフラグ管理とやらのコードを提示すれば解決するよ。 本当に出たら間違いだったと認めるし、非礼を詫びもするよ。 ほら時間がもったいない。 と、こう煽るのもいつものパターンで、絶対に出てこないのもいつものパターン。 だいたい2chにいる人間ならこのパターンは見ているだろう。 ここであきらめの悪い人間のパターンは、コードを提示せずに延々と認めずにいいわけを繰り返すんだよね。 同一人物では無いと思うんだけど、なんでこうも同じテンプレートなんだろう? http://echo.5ch.net/test/read.cgi/gamedev/1351015269/931
932: 名前は開発中のものです。 [sage] 2013/01/03(木) 16:19:06.79 ID:BC6tD7as お前に礼儀など期待していない。思いあがるな。 同一人物とやらによろしくな。 http://echo.5ch.net/test/read.cgi/gamedev/1351015269/932
933: 名前は開発中のものです。 [sage] 2013/01/03(木) 16:27:39.34 ID:Qmf3rDAa >>932 私は間違いだと証明されたら認める用意はあるってだけだよ。 でも君は何があろうと絶対に認めるつもりは無いんだろう。 かといって対抗するソースを出すわけでも無く、 認めたくないからいいわけを繰り返す。 最初の方で言った通りのパターンになっただろう? 君は見事にそのテンプレートにはまった人間なんだよ。 これもお決まりパターンなんだけど一応。 断言する、いいわけは出ても絶対に実働するソースは出ない。 http://echo.5ch.net/test/read.cgi/gamedev/1351015269/933
934: 名前は開発中のものです。 [sage] 2013/01/03(木) 16:41:15.40 ID:1RVPLY2V 説明してることはまともそうなのに、余計な煽り語を入れて損するパターン。 http://echo.5ch.net/test/read.cgi/gamedev/1351015269/934
935: 名前は開発中のものです。 [sage] 2013/01/03(木) 16:47:17.14 ID:fDDq8dLI どっかのチャットで二人で話し合ってろよマジ迷惑 http://echo.5ch.net/test/read.cgi/gamedev/1351015269/935
936: 名前は開発中のものです。 [sage] 2013/01/03(木) 16:49:48.18 ID:Qmf3rDAa ろくに検証しもせずに、脳内ソースで嘘偽りを並べ立ててる人間を見ると すぐにカッとなるのはその通り。 得をすることは無いだろうね。 http://echo.5ch.net/test/read.cgi/gamedev/1351015269/936
937: 名前は開発中のものです。 [sage] 2013/01/03(木) 16:56:04.75 ID:BC6tD7as >>933 ソース出さなきゃ認めないって、ちょっと違うんじゃねえの。 しかもお前の提示したソースの原型は、非常に単純な例だったよな? 実際には継承もあれば包含もある。コンストラクタ・デストラクタも走る。 「想定範囲内の環境で、想定範囲内の仕様が満たせるから正しい」ってのは、 デメリットの及ばない範囲にとどめましょうってしてるだけだろ? つまりデメリットを認めてデメリットから逃げた仕様に収まってるんだよ。 http://echo.5ch.net/test/read.cgi/gamedev/1351015269/937
938: 名前は開発中のものです。 [sage] 2013/01/03(木) 17:04:02.50 ID:Hs6nIL6e 俺はこういう殺伐とした流れ好きだな。ノスタルジックな香り http://echo.5ch.net/test/read.cgi/gamedev/1351015269/938
939: 名前は開発中のものです。 [sage] 2013/01/03(木) 17:10:10.03 ID:1qjfamGg こういう俺にもわかるような話なら良いんだけど たまに自分には理解できないようなレベルが高そうな内容でドンパチやられると置いていかれる 勉強のチャンスでもあるから良いんだが http://echo.5ch.net/test/read.cgi/gamedev/1351015269/939
940: 名前は開発中のものです。 [sage] 2013/01/03(木) 17:15:03.03 ID:Qmf3rDAa >>937 ほら、ソースを出さずにいいわけパターンでしょ。 なんでそんなに期待通りなんだろう。 これだけ何度も今後の行動を書いてあったのに、 その通りにしか動けない悲しさ。 http://echo.5ch.net/test/read.cgi/gamedev/1351015269/940
941: 名前は開発中のものです。 [sage] 2013/01/03(木) 17:17:35.51 ID:Hs6nIL6e >>937 >「想定範囲内の環境で、想定範囲内の仕様が満たせるから正しい」ってのは、 >デメリットの及ばない範囲にとどめましょうってしてるだけだろ? >つまりデメリットを認めてデメリットから逃げた仕様に収まってるんだよ。 PCの場合、そのデメリットが及ぶ状況を引っ張ってくるのは難しいと思うなぁ 特にこのスレの場合、ざーっと流し読みしてみた限り、個人制作の学生さんが ターゲットぽいし。UEとか重量級のゲームエンジンを使わない古風というか こじんまりした素朴な組み方してそうなのが多いみたいだし http://echo.5ch.net/test/read.cgi/gamedev/1351015269/941
942: 名前は開発中のものです。 [sage] 2013/01/03(木) 17:34:59.31 ID:WKW52K/b >>941 逆に言えば個人製作程度のものならそんな意識する必要ないのかな パッケージで出すならパフォーマンスを最大限出す方法を使わない理由はないんだろうけど http://echo.5ch.net/test/read.cgi/gamedev/1351015269/942
943: 名前は開発中のものです。 [sage] 2013/01/03(木) 17:36:35.46 ID:ADeGFW0Z お前らまだやってたのか。 流し読みしたが話もかみ合ってねーし。 ほんと無駄に一日過ごしてしまったな http://echo.5ch.net/test/read.cgi/gamedev/1351015269/943
944: 名前は開発中のものです。 [sage] 2013/01/03(木) 17:46:53.13 ID:lNTqjEnd なんか、正月早々荒れてるなー。 まぁ白味噌のお雑煮でも飲んで落ち着け。 http://echo.5ch.net/test/read.cgi/gamedev/1351015269/944
945: 名前は開発中のものです。 [sage] 2013/01/03(木) 17:48:16.32 ID:1qjfamGg >>944 雑煮が味噌汁とかwww そっちの方が荒れるわ http://echo.5ch.net/test/read.cgi/gamedev/1351015269/945
946: 名前は開発中のものです。 [sage] 2013/01/03(木) 17:50:27.42 ID:Qmf3rDAa >>941 重量級のゲームエンジンなんか使ったら、 それこそヒープの確保なんて大海の米一粒になってしまうから、 あえてそういう想定にしたんだけどね。 http://echo.5ch.net/test/read.cgi/gamedev/1351015269/946
947: 名前は開発中のものです。 [sage] 2013/01/03(木) 17:56:03.83 ID:BC6tD7as >>941 確かに難しいみたいだな。 >>940 ああ、全くだ。 http://echo.5ch.net/test/read.cgi/gamedev/1351015269/947
948: 名前は開発中のものです。 [sage] 2013/01/03(木) 18:16:40.33 ID:BC6tD7as リンク間違えたwww >>940は>>943ねwww http://echo.5ch.net/test/read.cgi/gamedev/1351015269/948
949: 名前は開発中のものです。 [sage] 2013/01/03(木) 18:53:17.89 ID:WKW52K/b とりあえず断片化の弊害をひとつ int1億個分の配列用意して添字0~10万までインデントするプログラムと 添字を1000ずつ増やして10万回インデントするプログラムを比べると 断片化したときにどれくらい実行速度おそくなるか見れる かなり極端な例だけどねw http://echo.5ch.net/test/read.cgi/gamedev/1351015269/949
950: 名前は開発中のものです。 [sage] 2013/01/03(木) 19:09:21.48 ID:lNTqjEnd >>945 ほざきやがれ。白味噌こそ至高。超はんなり。 http://echo.5ch.net/test/read.cgi/gamedev/1351015269/950
951: 名前は開発中のものです。 [sage] 2013/01/04(金) 17:45:46.76 ID:oXJzELqx インデント・・・? http://echo.5ch.net/test/read.cgi/gamedev/1351015269/951
952: 名前は開発中のものです。 [sage] 2013/01/04(金) 18:50:01.70 ID:/Y1k54OE かなり極端なインクリメントだけどねw http://echo.5ch.net/test/read.cgi/gamedev/1351015269/952
953: 名前は開発中のものです。 [sage] 2013/01/04(金) 20:21:35.41 ID:1LQvHzZA >>951 素で間違えたわw http://echo.5ch.net/test/read.cgi/gamedev/1351015269/953
954: 名前は開発中のものです。 [sage] 2013/01/05(土) 05:55:13.90 ID:blAJcoX/ #include <iostream> class Inner{ public: void delete_self(){ //delete this; //自身をdelete //this = NULL; //自身をNULL(左はエラー) }; }; class A{ public: A(){obj = NULL;}; Inner* obj; }; int main(){ A a; a.obj = new Inner; //delete a.obj; //a.objをdelete //a.obj = NULL; //NULLを代入 a.obj->delete_self(); //a.obj内で自信をdelete,更にNULLを代入したい return 0; } クラスAのメンバInnerクラスをInnnerクラス内部からdeleteしてNULLを代入したいのですが そういったことはできるのでしょうか? できるのであれば記述方法を教えていただきたいです。 http://echo.5ch.net/test/read.cgi/gamedev/1351015269/954
955: 名前は開発中のものです。 [sage] 2013/01/05(土) 07:07:27.25 ID:jKk56rfs >>954 thisは自身のアドレスだから変更出来ないし、仮に出来たとしてもobjの値は変わらないから意味がない innerに**selfでも定義してobjのアドレス渡せば出来なくもないと思うけど 普通にA内でやればいいんじゃないの? http://echo.5ch.net/test/read.cgi/gamedev/1351015269/955
956: 名前は開発中のものです。 [sage] 2013/01/05(土) 10:39:03.29 ID:PaEmLOIH >>954 俺も>>955に同意だなぁ 文法的には可能だけど、人の道に外れてる http://echo.5ch.net/test/read.cgi/gamedev/1351015269/956
957: 名前は開発中のものです。 [sage] 2013/01/05(土) 10:40:40.98 ID:DL/1aMkT スマートポインタにしない理由が無い http://echo.5ch.net/test/read.cgi/gamedev/1351015269/957
958: 名前は開発中のものです。 [sage] 2013/01/05(土) 23:36:14.70 ID:6cav/N/u >>954 まずはメンバ関数名をgedatsu()にするんだ http://echo.5ch.net/test/read.cgi/gamedev/1351015269/958
959: 名前は開発中のものです。 [sage] 2013/01/06(日) 11:08:11.14 ID:gKY4QWAo >>954 その為のスマポじゃ? http://echo.5ch.net/test/read.cgi/gamedev/1351015269/959
960: 名前は開発中のものです。 [sage] 2013/01/06(日) 11:41:48.27 ID:wNZdSJOn スマートポインタっていうのは知らなかったです 調べてみますありがとうございました。 http://echo.5ch.net/test/read.cgi/gamedev/1351015269/960
961: 954 [sage] 2013/01/06(日) 11:43:32.66 ID:wNZdSJOn ↑ http://echo.5ch.net/test/read.cgi/gamedev/1351015269/961
962: 名前は開発中のものです。 [sage] 2013/01/06(日) 15:11:40.22 ID:jfHdCFct >>949 確かに3ms程度が計測出来た。 >>954 解決したのか。 >Innnerクラス内部からdeleteしてNULLを代入 って意図がよく分らんな。 親の変数を、子が直接いじれるとか、なんというか発想が「次世代型高級言語」だなw しかし、そもそもその例でも外部からトリガしてるじゃん。 http://echo.5ch.net/test/read.cgi/gamedev/1351015269/962
963: 名前は開発中のものです。 [sage] 2013/01/07(月) 12:37:52.55 ID:Ypj77PMX DWMに詳しい方いらっしゃいましたら教えてください。 DwmFlush()にて同期を取っているのですが ウィンドウサイズが一定以上になるといきなり30FPSに落ちてしまいます。 PCの性能的には余裕で60FPS出そうなのですが なぜこのように制限されてしまうのでしょうか? http://echo.5ch.net/test/read.cgi/gamedev/1351015269/963
964: 名前は開発中のものです。 [sage] 2013/01/07(月) 20:49:43.13 ID:McpttzCQ スマポは自殺したい場合の根本的解決にはならん気がするのだが サンプルソースからはなんで自殺したいのかがわからんから そもそも自殺する必要あるのかもわからんけど http://echo.5ch.net/test/read.cgi/gamedev/1351015269/964
965: 名前は開発中のものです。 [sage] 2013/01/07(月) 20:57:58.06 ID:0sh5Q82W 外部からメソッド呼んでるし自殺の意味が無いから管理をスマポに任せろて事だろ http://echo.5ch.net/test/read.cgi/gamedev/1351015269/965
966: 名前は開発中のものです。 [sage] 2013/01/07(月) 21:22:23.82 ID:l3WjGBS1 よう分からんけど、難しそう http://echo.5ch.net/test/read.cgi/gamedev/1351015269/966
967: 名前は開発中のものです。 [sage] 2013/01/08(火) 09:00:27.88 ID:z802fMcU 難しい http://echo.5ch.net/test/read.cgi/gamedev/1351015269/967
968: 名前は開発中のものです。 [sage] 2013/01/08(火) 09:52:47.14 ID:kZxqHJAA sharedとweakで安全に自殺出来ないかね? 自分自身のshared持っといて参照側はweak使うとか http://echo.5ch.net/test/read.cgi/gamedev/1351015269/968
969: 名前は開発中のものです。 [sage] 2013/01/08(火) 14:06:16.49 ID:ubaFj8tR thisをshared_ptrに変換できるクラスを作るには特殊な手順が必要だった気がする http://echo.5ch.net/test/read.cgi/gamedev/1351015269/969
970: 名前は開発中のものです。 [sage] 2013/01/08(火) 20:56:20.18 ID:qf9zAEDF C言語でゲームを作ってみようと思ってるんですが、 おすすめのゲームプログラムの本はありませんか? 私は8年くらい前にプログラムを少しだけやっていたレベルです。 今ではほとんど忘れてしまったので、 もう一度、初めからやろうと思っています。 http://echo.5ch.net/test/read.cgi/gamedev/1351015269/970
971: 名前は開発中のものです。 [sage] 2013/01/08(火) 21:05:48.29 ID:fs6IBqjX 初めからやるゲームプログラミングの本なんてない。 C言語本からやりなさい。 http://echo.5ch.net/test/read.cgi/gamedev/1351015269/971
972: 名前は開発中のものです。 [sage] 2013/01/08(火) 21:10:40.95 ID:uboPdkfh 14歳からはじめるわくわくゲームプログラミング http://echo.5ch.net/test/read.cgi/gamedev/1351015269/972
973: 名前は開発中のものです。 [sage] 2013/01/08(火) 21:14:23.55 ID:ubaFj8tR 昔やってたならどうかわからないけど CとC++の区別もわからない状態で「C言語でやる」って言ってるのであれば C++の概要を把握してもう一回どちらの言語でやるか考え直すべきだと思う それとは別の問題で、スキルアップや勉強目的ではないのに プログラミングやろうとするのは止めたほうがいいような気がする。 ただ単にゲームを作りたいだけならエディタを漁ってプログラミングにかける時間を ゲームデザインの勉強に割いたほうが良いと思われる。 その場合、プログラミングするにしても最悪C#にすべき http://echo.5ch.net/test/read.cgi/gamedev/1351015269/973
974: 名前は開発中のものです。 [sage] 2013/01/08(火) 21:23:35.20 ID:Ko64W/I0 ゲームプログラミングにもよるからなぁ。 まさかコマンドラインでは満足しないだろうから、 基礎を固めた後にDirectXとか最低でもWindowsSDKとか。 或いはC++/CLIとかUnityとか。 そう考えればルート選択が昔と比べて随分複雑になったなぁ。 http://echo.5ch.net/test/read.cgi/gamedev/1351015269/974
975: 970 [sage] 2013/01/08(火) 21:49:19.65 ID:qf9zAEDF 皆さんありがとうございます >>973の言った通り、一度言語の概要を把握してから考えて見ます。 私は資格を取るため勉強し、尚且つ趣味で新しく始めようと考えていました。 考えてる時、過去にC言語やってたからそれで行こうと軽い感じで思い今に至りました。 自分が考えてるより難しいこととは思ってもいませんでした。 http://echo.5ch.net/test/read.cgi/gamedev/1351015269/975
976: 名前は開発中のものです。 [sage] 2013/01/08(火) 22:14:46.98 ID:Ns3Bg3Mj 自殺するという手段にそれほどの合理性というか、価値があるとも思えないんだけど 例えばCOMなんかではそな仕組み上、delete thisは頻出のフレーズだったけど このスレであがってる自殺したいケースというと、例えば>>856あたりかな? あえて自殺するのは単に美醜の感覚なのかな http://echo.5ch.net/test/read.cgi/gamedev/1351015269/976
977: 名前は開発中のものです。 [sage] 2013/01/08(火) 22:18:08.22 ID:Ns3Bg3Mj ごめん>>976はアンカー忘れ。>>968宛て http://echo.5ch.net/test/read.cgi/gamedev/1351015269/977
978: 名前は開発中のものです。 [sage] 2013/01/08(火) 22:50:34.51 ID:OVw8/7Oj 実はフレームごとに生成・消去(自殺)するとか、 どういう構造で管理してるのかイマイチよくわからんかったんだが、 オブジェクトをdeque構造で管理しているならあり得るかとも思った。 それとも配列で、入れ替え&ループカウンタずらしでもしてるんかな。 マシン性能に依存したタスクシステムってわけだな。 http://echo.5ch.net/test/read.cgi/gamedev/1351015269/978
979: 名前は開発中のものです。 [sage] 2013/01/08(火) 23:01:47.84 ID:dU9PHmtG C言語ってことは組み込み系で働きたいの? http://echo.5ch.net/test/read.cgi/gamedev/1351015269/979
980: 名前は開発中のものです。 [sage] 2013/01/09(水) 03:22:46.66 ID:cCOUD0pQ >>975 趣味でやるならCとDXライブラリ使って >>972にもでてる本(昔のは誤植が多い)で とりあえずゲームを作ってみるのがいいと思う 作ってあとで >>974の言うようにいろいろある選択肢を選んでもいいし >>973のようにエディタを使うでもいいし 難しく考えるとなかなか前に進まず飽きてやめてしまう気がする 足りないと思った所をその都度足していけばいいと思う http://echo.5ch.net/test/read.cgi/gamedev/1351015269/980
981: 名前は開発中のものです。 [sage] 2013/01/09(水) 15:07:42.84 ID:1AzVNy17 >>979 あまり一般に知られてないけど、Unix系の業務インフラかもしれん http://echo.5ch.net/test/read.cgi/gamedev/1351015269/981
982: 970 [sage] 2013/01/09(水) 21:42:18.38 ID:+PQ0+evL >>959 趣味にしようと思っています。C言語を選んだのは、 昔、本屋でC言語の本を見つけ興味が沸き購入し、 C言語を少しやったからです。 >>980 とりあえず>>972の本を読んでみようと思います。 http://echo.5ch.net/test/read.cgi/gamedev/1351015269/982
983: 名前は開発中のものです。 [sage] 2013/01/09(水) 21:46:19.84 ID:FusMjSdm >>982 その本は俺もオススメだけど ポインタや構造体がわからないレベルなら入門書を買うべきだと思う http://echo.5ch.net/test/read.cgi/gamedev/1351015269/983
984: 名前は開発中のものです。 [sage] 2013/01/09(水) 21:50:40.72 ID:JGxAWztX ブックオフとか古本屋に200円とか300円とかでC言語の本売ってるよ http://echo.5ch.net/test/read.cgi/gamedev/1351015269/984
985: 名前は開発中のものです。 [sage] 2013/01/09(水) 22:17:23.62 ID:KXkEtFhK おや、こんなところに105円で入手したリッチなカニチャーハン本が。 http://echo.5ch.net/test/read.cgi/gamedev/1351015269/985
986: 名前は開発中のものです。 [sage] 2013/01/09(水) 22:19:39.47 ID:SHei6O4/ >>976-978 >>856のタスク処理ってのはよく知らんので、適当に当てずっぽうで敵とか弾とか 自機みたいなもの、ゲーム内のエンティティをC++で記述する話と推測してみると 恐らくゲーム内での外部入力(押し倒されただの何かぶっかけられただの)に対する ゲーム内での応答(振る舞い)を記述する部分だと思うんだけど、こういう部分って 自身のメモリ操作とか詳細な手続きにはあんま関心ないと思うんだよね 例えば、自身が生成された時にどのようにメモリを割り当てられたのか とか、どういうコンテナにどういう目的で自身が格納されたのか、とか 自身が役割を終える時はどういうコンテナから自信を削除するのか、とか 自身が割り当てられてるメモリは自身で開放してから処理返せよな、とか 裏方の仕事に深く関与→外部の仕組みを詳細に知りすぎ(アクセス権が強すぎ) 何でも詳細に記述できる代わりに、機能や責任が交錯・混乱してそうな予感は するね。もう少し機能分割(責任分担)できるんじゃないかなとは思うね http://echo.5ch.net/test/read.cgi/gamedev/1351015269/986
987: 名前は開発中のものです。 [sage] 2013/01/09(水) 23:57:51.86 ID:n2uU3mE6 削除する対象が結果として自分になるとか言ってるし わりと特殊なスタイルなんじゃないかなぁ http://echo.5ch.net/test/read.cgi/gamedev/1351015269/987
988: 名前は開発中のものです。 [sage] 2013/01/10(木) 03:02:30.39 ID:JHYtLrYV >>983 いやぁ、ポインタや構造体を理解するよりまず動くものを作れるようになるほうが モチベーションは保てると思う。 そこで満足しちゃうと俺みたいに成長しないけど。 http://echo.5ch.net/test/read.cgi/gamedev/1351015269/988
989: 847 [sage] 2013/01/10(木) 09:47:57.02 ID:PPN997+E 私の質問がまだ話題に残ってしまってるようなので、軽く事情を説明しといた方がよかったかな。 どういうときに自殺したくなるのかという話なんだけど、リストアップのときに必要になったんだ。 SLGで、世界がいくつかの地方に分割されている。各地方にはたとえば戦士、魔法使い、僧侶なんかの職業の人がいる。 ただしその地方にはある職業の人がいないかもしれないし、100人いるかもしれない。 で、その地方の詳細データを確認しようと思ったときに、各職業毎にまとめて一覧を表示したかった。 もちろん、その地方にその職業の人が何人いるかを確認して、結果を予測してからウィンドウを作り始めてもいいんだけど、それはちょっと気持ち悪い。 だから、とりあえず、「何人いるか知らないし、もしかしたらだれもいないかもしれないけど、適当に作り始めちゃってよ」ということにした。 それで、該当者が誰もいなかった場合にはその欄自体を消したかった。 もっと別な方法はあるだろうけど、該当者が多すぎた場合は新しい小ウィンドウつくって行を分けて表示したりとかの都合上、私の技術力だとちょうどいいレベルの方法だったんだ。 http://echo.5ch.net/test/read.cgi/gamedev/1351015269/989
990: 名前は開発中のものです。 [sage] 2013/01/10(木) 18:18:19.92 ID:+tuKUmyj ゲーム内のキャラクターに対応したオブジェクトに処理詰め込んでるような設計だと自殺したいこともあるんじゃないかな 例えば被弾して削除したいときに、被弾の処理をそのオブジェクト自身がしてたらそのまま自分消したいよね でも管理するクラスちゃんと作り込んでたら自殺する場面ってなさそうだな http://echo.5ch.net/test/read.cgi/gamedev/1351015269/990
991: 名前は開発中のものです。 [sage] 2013/01/10(木) 18:57:49.60 ID:nRd29hG1 管理クラスがリストで保持してるアクターの位置を1つずつ更新して 終わったら1つずつ衝突判定して衝突があったら衝突イベントを 衝突イベントキューに予約しておいて全部の判定が終わったら 予約したイベントの中で重複したり無意味になるものを排除してから キューのイベントを1つずつこなしていって消滅するやつがいるなら 消滅フラグをたててキュー内のイベントが全部終わったら消滅フラグが 立ってるやつを消滅させるとすると自殺させる暇がないな http://echo.5ch.net/test/read.cgi/gamedev/1351015269/991
992: 名前は開発中のものです。 [sage] 2013/01/10(木) 22:03:08.63 ID:NUTO9jIe どうでもいいが「自殺したい」とか読むとドキッとするw http://echo.5ch.net/test/read.cgi/gamedev/1351015269/992
993: 名前は開発中のものです。 [sage] 2013/01/11(金) 12:11:15.33 ID:pXVVNmWd 俺もビックリした、自キャラがか プログラミング切羽詰まって死にたくなっちゃったのかと http://echo.5ch.net/test/read.cgi/gamedev/1351015269/993
994: 名前は開発中のものです。 [sage] 2013/01/11(金) 13:33:24.75 ID:T8efEkTC 正確には自殺させたいだよな。 http://echo.5ch.net/test/read.cgi/gamedev/1351015269/994
995: 名前は開発中のものです。 [sage] 2013/01/11(金) 14:03:00.02 ID:1OLgzzOv それもイジメみたいで嫌だな http://echo.5ch.net/test/read.cgi/gamedev/1351015269/995
996: 名前は開発中のものです。 [sage] 2013/01/11(金) 14:15:12.07 ID:yWv9+M/A クラスのメンバーが自分の子を殺す、とか定番ジョークだよね http://echo.5ch.net/test/read.cgi/gamedev/1351015269/996
997: 名前は開発中のものです。 [sage] 2013/01/11(金) 18:22:09.14 ID:pM3KIWAz で、次スレは? 携帯で立てるのは面倒なんだな http://echo.5ch.net/test/read.cgi/gamedev/1351015269/997
998: 名前は開発中のものです。 [sage] 2013/01/11(金) 19:12:00.91 ID:xdIUMDA+ しょうがないにゃあ http://toro.2ch.net/test/read.cgi/gamedev/1357899040/ http://echo.5ch.net/test/read.cgi/gamedev/1351015269/998
999: 名前は開発中のものです。 [sage] 2013/01/11(金) 19:58:36.60 ID:TAS2BFVS ありがたいにゃあ http://echo.5ch.net/test/read.cgi/gamedev/1351015269/999
1000: 名前は開発中のものです。 [sage] 2013/01/11(金) 20:07:19.81 ID:niGMKkbJ 1000ならC++が廃れてもう少し普通の人間に扱い易い言語に置き換わる http://echo.5ch.net/test/read.cgi/gamedev/1351015269/1000
1001: 1001 [] Over 1000 Thread このスレッドは1000を超えました。 もう書けないので、新しいスレッドを立ててくださいです。。。 http://echo.5ch.net/test/read.cgi/gamedev/1351015269/1001
メモ帳
(0/65535文字)
上
下
前
次
1-
新
書
関
写
板
覧
索
設
栞
歴
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.012s