C/C++ゲーム製作総合スレッド Part5
レス数が1000を超えています。これ以上書き込みはできません。
0001名前は開発中のものです。
2014/01/16(木) 00:00:31.27ID:w6WW3hAo元スレ
DXライブラリ 総合スレッド その17
http://toro.2ch.net/test/read.cgi/gamedev/1383795645/
前スレ
C/C++ゲーム製作総合スレッド Part1
http://toro.2ch.net/test/read.cgi/gamedev/1337516528/
C/C++ゲーム製作総合スレッド Part2
http://toro.2ch.net/test/read.cgi/gamedev/1351015269/
C/C++ゲーム製作総合スレッド Part3
http://toro.2ch.net/test/read.cgi/gamedev/1357899040/
C/C++ゲーム製作総合スレッド Part4
http://toro.2ch.net/test/read.cgi/gamedev/1376262450/
0002名前は開発中のものです。
2014/01/17(金) 03:39:01.55ID:QAgCxBAj乙age
0003名前は開発中のものです。
2014/01/18(土) 12:03:19.53ID:7z1+2mVystatic constは最適化で#defineとパフォーマンス変わらないって何かの本て見たな
0004名前は開発中のものです。
2014/01/18(土) 18:22:04.52ID:buQ+bA4S名前空間が意味なくなってしまうからな。
0005名前は開発中のものです。
2014/01/18(土) 18:43:43.17ID:SuZ9UyBR0006名前は開発中のものです。
2014/01/18(土) 19:12:29.71ID:c/sT1tiz#define error -1 とかやると変なところで誤認されてしまうんだな
void hoge(Error* error)
0007名前は開発中のものです。
2014/01/18(土) 20:43:29.35ID:7z1+2mVy0008名前は開発中のものです。
2014/01/19(日) 00:57:25.91ID:wG94TV9xCやC++開発ってかなり減ってきてますよね?
募集見てもほとんど無いです。
やはり今後はあんまり需要がなくなるんでしょうか?
0009名前は開発中のものです。
2014/01/19(日) 01:01:35.84ID:dxh/zY+y0010名前は開発中のものです。
2014/01/19(日) 01:05:04.28ID:zArRV3lb業務アプリをC++で作ってるの? なんで?
みたいなのは淘汰される
0011名前は開発中のものです。
2014/01/19(日) 01:34:37.39ID:vj8v8wNWアホなうちは言語依存だけど、
C型、OOP、関数型言語、と一通り極めて1段階上になると
「未知の言語でも2週間いただければキャッチアップできます」
というレベルまで行けるからね。
そのレベルまで行ったら、C/C++が使えないとかあり得ない。
ただし、C++は書けるけど嫌い、って人はちょくちょくいる。
0012名前は開発中のものです。
2014/01/19(日) 01:40:39.93ID:a+8LLoOg0013名前は開発中のものです。
2014/01/19(日) 03:42:44.17ID:lmZ1h6sR興味本位で聞くんですが、なんで嫌いなんですかね?
0014名前は開発中のものです。
2014/01/19(日) 03:53:33.09ID:9enIkqX70015名前は開発中のものです。
2014/01/19(日) 04:23:41.52ID:Ln30iNfr速度重視の大概の言語でメモリー関係のバグは付きまとうのに
0016名前は開発中のものです。
2014/01/19(日) 04:25:28.46ID:9enIkqX70017名前は開発中のものです。
2014/01/19(日) 06:23:56.86ID:SxZuWeGh0018名前は開発中のものです。
2014/01/19(日) 06:41:21.11ID:aBX8WpM+慣れてしまうとC++が便利すぎて他の言語使う気になれないわ
0019名前は開発中のものです。
2014/01/19(日) 08:24:27.01ID:radEe2eLjavaが書けるけど嫌いって人はたくさんいるだろうな
0020名前は開発中のものです。
2014/01/19(日) 08:36:47.80ID:3k5X/H3zそれが「自分が書いたプログラムのせいで」とは限らんしのw
回避する能力がないんじゃない、回避する権限がないんだっつー。
0021名前は開発中のものです。
2014/01/19(日) 10:49:59.46ID:NnB84tXJ本当にこれ
まぁソースは社内で共有してるからドキュメントでここを直すように指示出すと「お前みたいな新入が生意気言うんじゃねぇ」って怒られる
ボクもう3年目なんだけど、いつまで新入社員って言われるんだろうか・・・
ちなみに社内ではCとC++とJavaを使ってる「C#は使うから勉強しといてね」って言われたまま1年過ぎてるんだけどいつ使うの?
0022名前は開発中のものです。
2014/01/19(日) 10:56:21.22ID:zArRV3lb生意気言うんじゃねぇって言いたくなる気持ち分かるわ
0023名前は開発中のものです。
2014/01/19(日) 11:11:40.48ID:dxh/zY+ystd::string str;
str << "i=" << i << std::endl;
あれ、できないじゃーん!?
ググル → stringstream? めんどくせーな
// GCなしだと不便な例
std::vector<Hoge*> list;
Hoge* add(){
Hoge* hoge = new Hoge();
list += hoge;
return hoge;
}
Javaは不細工だけど使いやすいよ
0024名前は開発中のものです。
2014/01/19(日) 11:26:08.74ID:NnB84tXJマジか・・・
今度から何も言わないようにしよう
0025名前は開発中のものです。
2014/01/19(日) 11:54:37.95ID:zArRV3lbいや、もっとおっさんになってから
ガキだったなHAHAHAって笑えばいい
0026名前は開発中のものです。
2014/01/19(日) 12:09:14.19ID:TJLqrM7y0027名前は開発中のものです。
2014/01/19(日) 12:26:00.28ID:r/kDygNKhttp://kohada.2ch.net/prog/
0028名前は開発中のものです。
2014/01/19(日) 14:14:56.82ID:Ln30iNfrMFCのCStringは扱いやすいよ
とりあえず自前で実装したが
0029名前は開発中のものです。
2014/01/19(日) 20:23:57.46ID:vj8v8wNWauto_ptr使えばよくね?
0030名前は開発中のものです。
2014/01/19(日) 20:49:07.44ID:dxh/zY+y0031名前は開発中のものです。
2014/01/21(火) 07:47:41.61ID:6mpa2LLJそーゆーのが嫌いな人には向かないのかもな
0032名前は開発中のものです。
2014/01/21(火) 10:53:50.44ID:k20gbOyK0033名前は開発中のものです。
2014/01/21(火) 20:38:32.81ID:ZBJojU/1そして個人利用フリーのゲームエンジンに触れて無意味だったと知る
0034名前は開発中のものです。
2014/01/21(火) 21:36:58.77ID:/+yIHRaDぜひ教えて欲しい。
0035名前は開発中のものです。
2014/01/21(火) 21:44:06.65ID:HN69ElltオレオレXML(DOM)、オレオレAutoPtr(スマートポインタ)、オレオレException
みたいなユーティリティクラスが満載なのはひどいよ
0036名前は開発中のものです。
2014/01/21(火) 21:51:16.31ID:wLwEpkEcツリー状のメモリー情報を簡単に記録でき、しかもフラグメンテーションを
起こさないスグレモノ
だったんだが、ちょいと重すぎた
0037名前は開発中のものです。
2014/01/21(火) 22:20:38.42ID:/+yIHRaDそれが最近になってようやく「少しはわかったかな?」って感じになってきて、
俺俺ライブラリ……と呼べるほど立派なものじゃないけど、ゲームの土台を俺俺で作ってるところだから、
こういう行為を無意味とか言われるとちょっと辛いw
0038名前は開発中のものです。
2014/01/21(火) 22:41:33.97ID:wLwEpkEcオレの場合、マルチスレッドのしっかりした使い方はマスター出来たし
データ構造も一般人には何を意味してるか分からないぐらいに複雑なモノを
扱えるようになったし、スクリプト言語も好きなように拡張出来るようになった。
ただ、肝心のゲームはまだ納得のいくものが出来てないわけだが・・・
0039名前は開発中のものです。
2014/01/22(水) 00:21:13.24ID:qXFTHavY具体的に教えて
0040名前は開発中のものです。
2014/01/22(水) 00:45:51.85ID:FwnXEaYsお勉強マシーンと揶揄されるパターンに嵌ってるな
俺も笑えない口だが、まあがんばれ
>>39
ロックしろ。使うのはクリティカルセクションだけで十分
0041名前は開発中のものです。
2014/01/22(水) 00:52:28.97ID:1GoepMJHUnityとかUREは個人で使う範囲なら無料ライセンスがある
まあロゴ出ちゃったりするけど
Unityは少しくらい儲けてもおkだったはず
0042名前は開発中のものです。
2014/01/22(水) 05:31:21.08ID:MUoEPc440043名前は開発中のものです。
2014/01/22(水) 07:22:25.22ID:OGkLlkIlんー、頑張る
あとロックする方法に関しては、自分はミューテックスとイベント使ってるな
ちなみにセマフォは使ってない
>>39
マルチスレッド 同期でぐぐってみ?
あと、DirectXでマルチスレッドと相性の悪い命令があるから、それにも注意した方がいい
0044名前は開発中のものです。
2014/01/22(水) 08:14:42.24ID:OGkLlkIlとりあえず、異なるスレッドが同じ変数にアクセスするとエラーになる場合がある事は理解してる?
0045名前は開発中のものです。
2014/01/22(水) 08:25:54.82ID:AONvqNdWと
「どうやって作るのかわかんないから既製品でいいや」
の間には絶対越えられない山脈が横たわる。
んで、一緒に既製品使ってたのにある日突然その山脈をヒョイっと越えてく人達がいるんだ。
0046名前は開発中のものです。
2014/01/22(水) 16:00:09.27ID:4ljV+t0J別のプロジェクトで再利用したりする機会が出てくると、
フリーのライブラリやミドルウェアを使ってるのが足かせになる場合が出てくる。
…ので、おれは自分で書けるものは自分で書くことにしてる。
0047名前は開発中のものです。
2014/01/22(水) 19:55:47.76ID:FwnXEaYsJavaとかC#やらん人は一度体験したほうがいい
0048名前は開発中のものです。
2014/01/22(水) 20:38:32.77ID:MuwJkdzbWindows95の頃からある古い技術だし
0049名前は開発中のものです。
2014/01/22(水) 21:25:45.67ID:wzTb147vいったいこの知ったかは何を言っているんだろう?
0050名前は開発中のものです。
2014/01/22(水) 21:46:05.00ID:FwnXEaYs覚えることなにもないんじゃないの?
多重起動防止でミューテックス使うかもしれんけど、
マルチスレッドじゃなくてマルチプロセス?の話だし、
セマフォやイベントもまるで出番ないなぁ
そんなわけで結城のマルチスレッド・デザインパターン本の知識とか
ゲーム内で使わないし、ファイルIO、BGM、ネットワークくらいかな、
スレッドが関連してるのは
0051名前は開発中のものです。
2014/01/22(水) 21:50:12.62ID:dtO4FDEt0052名前は開発中のものです。
2014/01/22(水) 21:54:50.35ID:y74k/mSd0053名前は開発中のものです。
2014/01/22(水) 23:46:51.66ID:FwnXEaYsOpenMPとかも保守性を落とすわりには、バッファコピーとかくだらない
並列化しかできないし、積極的にスレッド化してもリスクの方が多い
>>51
Direct3D10以降に出てきたマルチスレッド対応も
結局内部でクリティカルセクションやってるだけだろうから、
だったらswingみたいにシングルスレッドモデルやるほうが無難だと思う
0054名前は開発中のものです。
2014/01/23(木) 00:01:05.67ID:9bErv8vs低クロック動作省エネこそ正義の非力な組込システムとかなら
仕方なく中〜細粒度並列の形で書いたりもするけれど
ほら、パソコンってアメ車のマッスルカーじゃないですか
CPUリソース、余るんですよね。湯水の如く
なので>>50の言うように粗い粒度でなら取り入れるけど
ゲームの中核部、シミュレーション部については古式ゆかしい
シングルスレッド前提の簡潔なスタイルでラクチンです
0055名前は開発中のものです。
2014/01/23(木) 00:58:45.53ID:XQzipMrBあるいは他スレだったかな?
0056名前は開発中のものです。
2014/01/23(木) 01:15:55.11ID:f/NLGL86背景・マップの更新
カメラの更新
これで3つスレッド使える
0057名前は開発中のものです。
2014/01/23(木) 01:18:02.56ID:f/NLGL86同じデータ参照しちゃいけないなら
一番負荷のかかるキャラクター周り計算が終わってから描画開始しないといけないじゃん
0058名前は開発中のものです。
2014/01/23(木) 01:29:07.57ID:y0vYWKn+描画側の垂直同期で待つのを避けるためにデータの複製を更新したあとに
スレッド間でデータをコピーorスワップする方法はある
データ用のメモリを2倍も使ったり、対価となるコストも大きいがな
これは広大なマップをもつシムシティのような特殊なゲーム用だね
0059名前は開発中のものです。
2014/01/23(木) 01:35:10.24ID:f/NLGL860060名前は開発中のものです。
2014/01/23(木) 02:21:59.68ID:s/ECi/gl0061名前は開発中のものです。
2014/01/23(木) 02:43:04.45ID:s/ECi/gl0062名前は開発中のものです。
2014/01/23(木) 08:54:48.07ID:o//cFEYQややこしいな
0063名前は開発中のものです。
2014/01/23(木) 09:00:18.56ID:WQKAVBetできるだけセマフォ使う回数が減るようにしないと本末転倒だ。セマフォって本来は要らないモノだし。
0064名前は開発中のものです。
2014/01/23(木) 09:37:12.46ID:o//cFEYQ0065名前は開発中のものです。
2014/01/23(木) 09:44:44.32ID:8rbpDm/Cマルチスレッドで分散させて計算させるだけでも、
マルチコアの恩恵でかなり効果が出る。
モデルデータことにやれば、データのバッティングしないので管理も容易。
細分化して、親フレームからばらけた子フレームの計算を、
複数のコアに投げてもいいんだろうけど、さすがに面倒くさい。
0066名前は開発中のものです。
2014/01/23(木) 09:59:16.39ID:C/RQiWS+0067名前は開発中のものです。
2014/01/23(木) 10:28:58.88ID:aF2XRTqqIntel:「せっかく俺様が気を利かせて面倒を肩代わりしてやってんのに…
最適化をご所望なら弊社謹製の開発ツール群をお買い求め下さい」
0068名前は開発中のものです。
2014/01/23(木) 11:25:23.28ID:7+IY4GKU0069名前は開発中のものです。
2014/01/23(木) 12:09:27.48ID:9AoVHus1これ以外ではめんどくてマルチスレッドしないわ
0070名前は開発中のものです。
2014/01/23(木) 13:18:55.33ID:8rbpDm/C0071名前は開発中のものです。
2014/01/23(木) 14:01:36.18ID:sIh8uNuQ作業を増やさずに問題解決するに越したことはないし、
コンピュータを使わずに問題解決するに越したことはないし、
プログラムを組まずに問題解決するに越したことはないし、
並列処理を使わずに問題解決するに越したことはない。
上司に嫌がらせしたいんだったら、↑の逆に向かう理論武装に日々怠らなければ良いwww
0072名前は開発中のものです。
2014/01/23(木) 14:42:15.40ID:y0vYWKn+最新技術みたいな中二ワードで本を売る業者に騙されていりこむ信者もいる
彼らは自分が他人より技術があると信仰している
他の連中は技術がないからOpenMP使えないんだ、ヤレヤレと信仰している
0073名前は開発中のものです。
2014/01/23(木) 14:54:35.72ID:o//cFEYQ環境によっても変わるしな
0074名前は開発中のものです。
2014/01/23(木) 18:57:57.85ID:B/J3zYBR0075名前は開発中のものです。
2014/01/23(木) 19:35:48.55ID:XQzipMrB計測する技術がないから使えないだけじゃね?
0076名前は開発中のものです。
2014/01/23(木) 20:23:20.02ID:y0vYWKn+肝心な箇所のスレッド化は自前でやるんだから変なものは導入しないほうがマシ
Javaとか.Netランタイムは、何もしなくても勝手に
OpenMPでやるような単純なスレッド化ポイントを探して
やってくれるらしいから、そっちに期待したほうがまだ実りがあると思うよ
>>62
処理速度が目的ならあらゆる手段でロックを避けるのが基本
0077名前は開発中のものです。
2014/01/23(木) 21:23:37.19ID:AhrZfxvI何でも掲示板が2ch並みの不毛さになってんだがwww
0078名前は開発中のものです。
2014/01/23(木) 22:00:13.37ID:f/NLGL86俺も平穏な頃はお世話になったが代わりにそこの住人の心が荒れてしまった
0079名前は開発中のものです。
2014/01/23(木) 22:13:04.53ID:Gy4H0ec+0080名前は開発中のものです。
2014/01/23(木) 22:28:18.98ID:y0vYWKn+技能がないではなく知能がないやつが沸くのは初心者系の宿命さ
0081名前は開発中のものです。
2014/01/23(木) 22:41:55.18ID:AhrZfxvI初心者向けじゃ無くせばいいのにw
0082名前は開発中のものです。
2014/01/24(金) 00:19:10.71ID:GEmYWJ47ここの住民はその傾向強いけど
0083名前は開発中のものです。
2014/01/24(金) 01:13:55.26ID:Jcy2cywVバッドノウハウを叩き込む本も海外含めて出版されすぎ
パラノイアになるのもしかたあるまい
0084名前は開発中のものです。
2014/01/24(金) 01:19:36.77ID:2quQhFog俺にわかるように日本語で喋る
0085名前は開発中のものです。
2014/01/24(金) 02:38:13.12ID:75+tl8UCイージーなワードでトーク出来ない事がフーリッシュだとアンダスタンドしてないよね
0086名前は開発中のものです。
2014/01/24(金) 04:50:34.13ID:pN9eWABR0087名前は開発中のものです。
2014/01/24(金) 17:19:24.19ID:Jcy2cywV俺みたいな中3でノンブロッキングI/Oしてる野郎、他に、いますかっていねーか、はは
今日のクラスの会話
Boostシリアライズかっこいい とか DXライブラリ とか
ま、それが普通ですわな
かたや俺はデバッグ用のコンソールでカーネル・ウップスを見て、呟くんすわ
it's a 深刻なエラー.狂ってる?それ、ランタイム・エグゼプションね。
好きなFW MTフレームワーク(カプコン社員でもないのに!)
尊敬する人間 ジョエル・スポルスキー(ユダヤ・ジョークはNO)
0088名前は開発中のものです。
2014/01/24(金) 17:30:23.22ID:jYeepMxG匿名掲示板で自分の事を勝手に語り始めた
自分が特別な存在であり、周囲より目立って当然であるという厨二病症状が伝わってくる
そんな貴方に対し、先輩として一つ、大人の現実を教えよう
ゲームを作りたければ、プログラミングだけじゃ駄目だ
プログラミングと絵を練習しなさい
音楽が得意なら音楽にも手を付けなさい
絵が描けないまま大人になれば、辿り付く先はゲーム会社のディレクターではなく、過労のIT豚小屋企業だ
さぁ、若者よ、時間が無いぞ
今日からpixivに通うんだ
0089名前は開発中のものです。
2014/01/24(金) 17:59:26.14ID:Ak56Y4mX0090名前は開発中のものです。
2014/01/24(金) 18:36:58.01ID:z3bTrILf0091名前は開発中のものです。
2014/01/24(金) 18:57:08.80ID:8axgouAhそこのクラスは構造体とかのクラスにはしないんだ
0092名前は開発中のものです。
2014/01/24(金) 18:57:20.98ID:Jcy2cywVおめーゲーム作れねーくせに、2chの受け売りで知ったかかましてんじゃねーぞゴラァ!
無能なくせに、先輩風吹かして上から目線の説教する哲学者気取りには反吐がでるぜ!!
http://anago.2ch.net/test/read.cgi/gline/1311577271/l50
0093名前は開発中のものです。
2014/01/24(金) 19:00:30.40ID:Jcy2cywVあー、見落としたわ
0094名前は開発中のものです。
2014/01/25(土) 04:15:46.46ID:8r1nXkC0絵って・・・同人じゃないんだから専門の絵描きさんにお願いするだろ普通
0095名前は開発中のものです。
2014/01/25(土) 16:31:59.91ID:jy8SNfJbあっちで引き取ってもらおう
ニート、無職、フリーターがゲームを作るスレ6
http://toro.2ch.net/test/read.cgi/gamedev/1389441602/
0096名前は開発中のものです。
2014/01/25(土) 20:03:22.14ID:ErNorzVO0097名前は開発中のものです。
2014/01/25(土) 22:16:45.80ID:ykCYICO9これってもしかしてListにAddされたあと
スコープ抜けて寿命付きてListの中なにも残ってなかったりする?
0098名前は開発中のものです。
2014/01/25(土) 23:11:32.82ID:jy8SNfJbvector内でnew SCache()されたものであり、aiueo()ローカル変数SCache Cacheが
新しく生成されたインスタンスに対してコピーコンストラクタでコピーされるはず
だからたぶんコピーコンストラクタをprivateで定義しておくとコンパイルが通らないはずだ
SCache::SCache(const ©){}
一応自分で確認してくれ
0099名前は開発中のものです。
2014/01/25(土) 23:12:47.19ID:jy8SNfJbSCache::SCache(const SCache ©){}
0100名前は開発中のものです。
2014/01/26(日) 00:11:58.97ID:Iw5/1QMxありがとうございました
0101名前は開発中のものです。
2014/01/26(日) 00:17:49.78ID:wqDtdTDr例外ダイアログでvectorほにゃらら〜がでるとか、それ系なん?
0102名前は開発中のものです。
2014/01/26(日) 00:28:30.05ID:wqDtdTDrvectorの内部バッファが大きくなるとポインタが無効になる
std:: vector<Hoge> list;
Hoge* add(Hoge &obj)
{
list += obj;
Hoge* last = &list[ list.size()-1 ];
return last;
}
0103名前は開発中のものです。
2014/01/26(日) 08:53:27.52ID:Iw5/1QMx2000個ぐらいなんだけど、多い?
0104名前は開発中のものです。
2014/01/26(日) 09:28:31.24ID:+p1FZWASだから要素数がいくつだったらって話じゃないよ
0105名前は開発中のものです。
2014/01/26(日) 09:48:24.53ID:f2NeeHoK0106名前は開発中のものです。
2014/01/26(日) 12:46:34.63ID:WQN234w50107名前は開発中のものです。
2014/01/26(日) 15:37:26.70ID:1jTIwhcQ瑣末
0108名前は開発中のものです。
2014/01/26(日) 16:41:16.86ID:RpTDvif5STLコンテナにアロケータ設定できるのも知らんのか?
そもそもメモリコンパクションがどうとかいう話は
GC系言語ですらとっくに切り捨てた昔話だと思うが
0109名前は開発中のものです。
2014/01/26(日) 17:41:28.90ID:f2NeeHoKアローケーター操作するの面倒じゃね?
ある程度大きめにメモリーを取得しといて使い回す方が楽っぽいが
0110名前は開発中のものです。
2014/01/26(日) 17:56:52.23ID:RpTDvif5好きなようにやればいいさ
0111名前は開発中のものです。
2014/01/26(日) 18:42:00.91ID:f2NeeHoKあらかじめ取得しといた容量よりも大きなサイズが必要になったら倍のサイズに領域を拡張してる
0112名前は開発中のものです。
2014/01/26(日) 18:47:27.36ID:f2NeeHoKつーか>>102の場合はvectorよりもlist使った方が良くないかい?
0113名前は開発中のものです。
2014/01/26(日) 18:52:43.37ID:y8TPPY9Q実際ベンチマークを取るとvectorの方が速いことが多いので侮れない。
0114名前は開発中のものです。
2014/01/26(日) 18:59:37.83ID:f2NeeHoK0115名前は開発中のものです。
2014/01/26(日) 19:20:58.79ID:1jTIwhcQ>>114
やっぱり瑣末かと。換言すれば、取るに足らない、微レ存、取越苦労、枝葉、の話かと。
いや違う考慮に値するというなら問題が再現可能な状況を示してみればいいのでは。
異常な頻度で確保/再割当/解放を繰り返すような無理な状況設定が必要になるけど。
件の話なら適切にreserve使えばいいかと。それで解決しない問題ってあるかな?
0116名前は開発中のものです。
2014/01/26(日) 19:22:33.48ID:1jTIwhcQヒープ割当はフラグメンテーション回避で独自のメモリプールをーとかこの手の
取らぬ狸の皮算用になりがちな話題は何度目かというくらい既視感があったので
過去発言を適当に検索。関連ありそうなので貼り
> PCの場合、例えば平凡なDoug Lea Malloc(の亜種)を使うことについて
> 処理速度上の問題で難癖を付けるには、意図的に相当に意地悪な(過酷な)状況設定を
> 引っ張ってくる必要があると思うなぁ
> 例えば3D視点のゲームで、視覚効果に使う粒子状の短命オブジェクトが盛り盛り
> 無数に画面上に散りばめられてて、それらが何と一粒一粒馬鹿正直にヒープから
> メモリ割り当てされてて何の工夫もない線形リストに挿入されてて、毎フレーム
> 線形リストを馬鹿正直に巡回して一粒一粒更新したり削除即時解放したりとか
(この状況設定がなぜ意地悪かというと)
> 描画関数に渡すパーティクル用のデータ構造と明らかに違う状態だから
(不必要な)
> セットアップもあるしね。まぁ、いずれにせよ、何でそんな馬鹿な
> 想定を持ち出すんだと閉口するような話に持っていかないと処理速度上の
> 問題で横槍いれるのは難しいと思う
0117名前は開発中のものです。
2014/01/26(日) 19:24:03.74ID:y8TPPY9Qオレオレ用語じゃ意味が分からん。
おそらくその現象は君の脳内世界でしか発生しない。
0118名前は開発中のものです。
2014/01/26(日) 19:43:21.57ID:f2NeeHoK1jTIwhcQには意味が通じてるぞ?w
>>115
いや、そこまで分かってるなら特に問題は無い……な
ただ、ゲームの場合、ムチャなメモリーの使い方する事が多いから、
reserveを忘れる事も珍しくないのでは?と思ったんだが
まあ、些末な問題と言えば些末な問題か
0119名前は開発中のものです。
2014/01/26(日) 20:01:52.93ID:NBq5fzCq0120名前は開発中のものです。
2014/01/26(日) 20:31:03.96ID:q4s5e5oc初期化したときに必要な分確保しとけってことでいいの?
0121名前は開発中のものです。
2014/01/26(日) 20:59:04.35ID:RpTDvif50122名前は開発中のものです。
2014/01/26(日) 21:10:15.17ID:RpTDvif5コピーコンストラクタのコストが多数生じること、またコピーコンストラクタにおける
コピーの実装に関する適切さ(シャローコピー・ディープコピー)といった面倒が生じる
リスクを考慮すると、ポインタ型にすることを心がけた方が良いってのはあるかな
もちろん、プリミティブ型に関してはなんの心配も必要ない
0123名前は開発中のものです。
2014/01/26(日) 21:16:08.13ID:f2NeeHoK容量を十分確保しておけば、無効になりにくいだけで
0124名前は開発中のものです。
2014/01/26(日) 21:59:47.79ID:f2NeeHoK必要な分が分かってる場合はそれでいい
分かってない場合はポインタを取得し直す必要がある。
0125名前は開発中のものです。
2014/01/26(日) 22:16:48.30ID:QJMQDIrFソースのバックアップとレポジトリは取れってのをテンプレに入れないか?
0126名前は開発中のものです。
2014/01/26(日) 22:24:33.83ID:f2NeeHoK0127名前は開発中のものです。
2014/01/26(日) 23:17:21.24ID:lvnLOcR2参考:ゲ製におけるSTLの問題
ttp://i-saint.hatenablog.com/entry/20101012/1286822888
012836
2014/01/26(日) 23:44:04.69ID:UYS8+7kl処理が多少重いとはいえ、致命的な重さじゃないしな
処理を軽くする場合にはSTLを使うが、それもかなり拡張してあるしな
012936
2014/01/27(月) 00:09:52.23ID:H+nDAORl0130名前は開発中のものです。
2014/01/27(月) 00:16:52.22ID:EXjzd9fa0131名前は開発中のものです。
2014/01/27(月) 01:48:26.16ID:mugBVfcbEffective C++ とか与太本に洗脳されて全メソッドにinline修飾するようなもんだ
0132名前は開発中のものです。
2014/01/27(月) 02:09:19.06ID:4xmtC5j/0133名前は開発中のものです。
2014/01/27(月) 02:31:16.30ID:R0saBUqG配列の先頭や中間に挿入されたら
バグのもとになりやすい
0134名前は開発中のものです。
2014/01/27(月) 06:25:50.94ID:qr20Z00A「必要な分がわかっていない場合」を回避すればいいじゃない
0135名前は開発中のものです。
2014/01/27(月) 07:45:48.10ID:qHfddkTR0136名前は開発中のものです。
2014/01/27(月) 07:48:53.10ID:vLlLVDDe間違えた
×>自前すれば
○>自作すれば
0137名前は開発中のものです。
2014/01/27(月) 11:18:44.83ID:EXjzd9fa未来の自分にバグを押し付けるようなやり方は、あまり好きじゃないが……ま、人それぞれか
0138名前は開発中のものです。
2014/01/27(月) 12:25:27.76ID:qr20Z00A※元々の>>124の問題は、ポインタ再取得ってのもあったが
>>135
kwsk
>>137
話が見えんw
0139名前は開発中のものです。
2014/01/27(月) 14:38:03.04ID:LXwSCF8mvectorにインスタンスをaddした後
vectorが要素数増やそうとメモリ上の位置が変わってもnewしたメモリ位置は変わらないよね?
vectorが移動してるだけでvectorのメモリ上の参照してインスタンスを取ってくるわけじゃないから
newした時点でインスタンスのメモリ上の位置は変わらないんじゃないの?
0140名前は開発中のものです。
2014/01/27(月) 15:44:25.62ID:mugBVfcbvectorは配列を内部でもってるだけ
T* m_buffer = new T[buffer_size];
add(T obj)されると m_buffer[index] = obj; のようにコピーする
そしてバッファサイズが足りなくなると再確保してコピーするわけだ
int new_size = old_size * 2;
T* newBuffer = new T[new_size];
for(i < old_size)
{
newBuffer[i] = m_buffer[i]; // 構造体とかだと、ここのコピーコスト(大)
}
delete[] m_buffer; // <= ここで以前確保したポインタは無効
m_buffer = newBuffer;
0141名前は開発中のものです。
2014/01/27(月) 16:15:48.48ID:0NY/NAUW0142名前は開発中のものです。
2014/01/27(月) 17:01:18.91ID:mugBVfcb大した利点もなさそうだが、プリミティブはSTL::vector、
クラス・構造体はboost::ptr_vectorとか使い分けるのも悪くないと思う
メモリ断片化が〜とかいう話だったらもういいかげんにしろ
0143名前は開発中のものです。
2014/01/27(月) 17:57:35.18ID:HdFzU7eb値型(スタック型)を格納してるvectorから、
ある要素の参照(生ポインタ)を取り出しておいた場合、
vectorのリサイズが起きた後はその参照はアテにならなくなる。
っていう話だよな。
vectorに値型そのまま入れるなんて、自分で線形台数用のクラス(それこそ名前がVectorとかになりそうだが)
作ろうと思った時くらいじゃない?
0144名前は開発中のものです。
2014/01/27(月) 18:20:18.10ID:mugBVfcbもしプリミティブ型の意味が分からないとしたら、
int, double, float, long, char, short, wcharのことだからな
あらゆるポインタ型も実際はただのintだから同じノウハウで扱える
0145名前は開発中のものです。
2014/01/27(月) 18:35:32.27ID:HdFzU7ebヒープとスタックの話・・・というのも語弊があるか、
なんつーか、メモリ上への確保の仕方とかメモリレイアウト考えたらこうなるよねって話だったのよ、ごめん
0146名前は開発中のものです。
2014/01/28(火) 00:45:58.29ID:qfuPw86M0147名前は開発中のものです。
2014/01/28(火) 00:52:07.03ID:uQ48xUyE要素がでかくて頻繁に入れ替えが発生してインデックスアクセスがしたいならshared_ptrで包んでvectorにでも入れときゃいい
>>144
64bit環境だとintとポインタのサイズが同じとは限らないから泣くぞ
0148名前は開発中のものです。
2014/01/28(火) 01:18:23.07ID:ZKatshV9原文は「non desktop」なんだよな。
前から思ってたんだが、
限定されたハイエンドPC環境で「しょぼい」コンテンツを走らせられるからドヤ顔ってどうよ?
ゲ製道を究めようとしているワコウドを、間違った方向に導いてるって自覚あるか?
無策無能をアピールして幸せか?
0149名前は開発中のものです。
2014/01/28(火) 01:21:24.73ID:ZKatshV9正:「非PC環境」
くsっそおおおおおおおおお
0150名前は開発中のものです。
2014/01/28(火) 02:11:44.70ID:IvP/YXMv0151名前は開発中のものです。
2014/01/28(火) 10:18:11.91ID:GoTWhCD+0152名前は開発中のものです。
2014/01/28(火) 10:42:27.82ID:S18aQwZbそれで64ビット対応出来なかったorz
0153名前は開発中のものです。
2014/01/28(火) 12:23:39.88ID:OCGZ+qT0俺のメモリがサザエさんみてーだとっ!?
0154名前は開発中のものです。
2014/01/28(火) 21:43:15.57ID:29GW3hhm0155名前は開発中のものです。
2014/01/29(水) 17:24:08.73ID:zjmYRHvLおっちゃん、BeagleBone Blackとかで遊ぼうよ。なかなか楽しいよ?
0156名前は開発中のものです。
2014/01/30(木) 00:48:09.40ID:Ft4RSVu9Linuxいじるのも大概飽きたが、
画期的な商品開発にでも
いっちょう取り組んでみるか?
しかし発火とかしないよな?www
0157名前は開発中のものです。
2014/02/02(日) 08:52:27.78ID:txo1/+Rb何か良い組合せアイデアでもないもん加納おっぱいおっぱい
ゲ製だと教育、もしくは協力作業を通じた相性判定、もしくはお前ら童貞が最も好きなコンテンツ分野みたいなんになるんかねwww
0158名前は開発中のものです。
2014/02/02(日) 12:41:35.95ID:8PIr/JRW0159名前は開発中のものです。
2014/02/02(日) 14:11:43.15ID:HpiJy6Kg残念な人が棲み憑いてるんです
0160名前は開発中のものです。
2014/02/02(日) 19:49:39.87ID:HpiJy6Kg0161名前は開発中のものです。
2014/02/02(日) 20:11:53.27ID:8PIr/JRW88 :名前は開発中のものです。:2014/01/24(金) 17:30:23.22 ID:jYeepMxG
さすが中3だ
匿名掲示板で自分の事を勝手に語り始めた
自分が特別な存在であり、周囲より目立って当然であるという厨二病症状が伝わってくる
そんな貴方に対し、先輩として一つ、大人の現実を教えよう
ゲームを作りたければ、プログラミングだけじゃ駄目だ
プログラミングと絵を練習しなさい
音楽が得意なら音楽にも手を付けなさい
絵が描けないまま大人になれば、辿り付く先はゲーム会社のディレクターではなく、過労のIT豚小屋企業だ
さぁ、若者よ、時間が無いぞ
今日からpixivに通うんだ
0162名前は開発中のものです。
2014/02/03(月) 00:20:11.99ID:v+BnfntH他人に企画任せられる環境ならPGだけでいいが
0163名前は開発中のものです。
2014/02/03(月) 00:38:34.47ID:/+Ylube70164名前は開発中のものです。
2014/02/03(月) 08:14:19.87ID:Lht//rT6アスキーアート
ドット絵
ローポリ
リアルポリゴン
アニメシェーダ
イラスト
まあAAはほぼ完全に廃れたが
0165名前は開発中のものです。
2014/02/03(月) 09:48:24.68ID:2oQL0ulv3D素材は自分で作らないと厳しい。
0166名前は開発中のものです。
2014/02/03(月) 20:57:27.18ID:0M4cDuVxたいして才能の無い凡人が練習したくらいで通用するものなの?
0167名前は開発中のものです。
2014/02/03(月) 21:22:38.34ID:/+Ylube70168名前は開発中のものです。
2014/02/03(月) 21:51:26.39ID:svmXZgc+スキルに応じて仕事は分担されてるだろ
何でプログラマが絵を書かなきゃならんのだ
0169名前は開発中のものです。
2014/02/03(月) 22:07:10.79ID:eCQAtwWs自分の作りたいゲームを作りたいとか、分け前を増やしたいとか、動機は色々だが
0170名前は開発中のものです。
2014/02/03(月) 22:10:32.11ID:/+Ylube70171名前は開発中のものです。
2014/02/03(月) 22:11:53.17ID:eCQAtwWs0172名前は開発中のものです。
2014/02/03(月) 22:15:15.46ID:xlOVneBMチーム制作も1人で作ってるチームが大半だな
絵とか音楽とかのリソースはネットで拾うけどね
でもそれって結局のところは1人で作ってないよね
リソースまで全部っていう意味で1人で作ってる上で有名なのを作ってるんだとしたらただの天才だからどっかの企業に引き抜かれてろ
0173名前は開発中のものです。
2014/02/03(月) 22:27:34.48ID:eCQAtwWs好きに作らせてくれて、好きに売らせてくれるような、夢のような企業があるの?
むしろ、売れ行き重視で好きに作らせてくれない、
倫理観とかが大事で好きに売らせてくれない、
といった企業がほとんどじゃね?
0174名前は開発中のものです。
2014/02/03(月) 22:30:48.05ID:/+Ylube7趣味なんだから人それぞれのスタイルでいいだろう
0175名前は開発中のものです。
2014/02/03(月) 22:49:21.68ID:xlOVneBMうん、わかった
自分の生活費さえなんとかできるなら1人で自由に作ってな
0176名前は開発中のものです。
2014/02/03(月) 22:55:48.33ID:HKt11pxu0177名前は開発中のものです。
2014/02/03(月) 23:24:56.58ID:/+Ylube7もっと時間のかからない遊びに流れるのも手だけど
0178名前は開発中のものです。
2014/02/03(月) 23:32:32.16ID:eCQAtwWs0179名前は開発中のものです。
2014/02/03(月) 23:37:42.57ID:eCQAtwWs0180名前は開発中のものです。
2014/02/03(月) 23:49:11.10ID:Ny+RFe0l0181名前は開発中のものです。
2014/02/04(火) 00:08:11.00ID:uJ0GtlwQ金持ちに成りたいと考える事は悪い事だと思う?
0182名前は開発中のものです。
2014/02/04(火) 00:23:08.29ID:J1FJfMJW0183名前は開発中のものです。
2014/02/04(火) 00:33:58.33ID:uJ0GtlwQ【同人】作ったゲームを金にする その4
http://toro.2ch.net/test/read.cgi/gamedev/1336913652/
0184名前は開発中のものです。
2014/02/04(火) 19:06:59.83ID:uJ0GtlwQ昔のゲームはアスキーアートを絵として使ってたわけだが?
0185名前は開発中のものです。
2014/02/04(火) 19:09:55.94ID:uJ0GtlwQとはいえbeep音でwevファイルを再生させてた事もあるからあなどれん
0186名前は開発中のものです。
2014/02/04(火) 19:58:16.47ID:J1FJfMJWやれメンツが無能だとかいってたらきりが無いわけだ
0187名前は開発中のものです。
2014/02/04(火) 20:14:51.47ID:uJ0GtlwQそういやそれも一人で作るようになる理由の一つだったな
まあ、人数が増えると衝突も増えるからな
むしろあの頃は、DQ1が出る前までは独りで作るのが当たり前だったような……
0188名前は開発中のものです。
2014/02/04(火) 20:22:21.38ID:J1FJfMJWひゃあ!ゲーム爺は生涯現役だぜ
0189名前は開発中のものです。
2014/02/04(火) 20:27:51.59ID:uJ0GtlwQが、パソコン持ってないのにパソコン本を買ったりするぐらいに憧れてたな
0190名前は開発中のものです。
2014/02/04(火) 20:41:31.66ID:uJ0GtlwQ0191名前は開発中のものです。
2014/02/04(火) 20:55:24.69ID:G5JzxpFK0192名前は開発中のものです。
2014/02/04(火) 21:09:48.44ID:uJ0GtlwQ0193名前は開発中のものです。
2014/02/06(木) 07:38:03.22ID:Mklm8P+v中村光一氏がDQ抜けたのが悔やまれる。
お色気コンテンツに憤慨していたエピソードは笑える。
0194名前は開発中のものです。
2014/02/06(木) 20:33:21.38ID:wgo5Jh7Q0195名前は開発中のものです。
2014/02/06(木) 21:01:16.01ID:YaLd/g6Z0196名前は開発中のものです。
2014/02/06(木) 21:10:32.33ID:wgo5Jh7Q0197名前は開発中のものです。
2014/02/09(日) 03:20:30.53ID:yNPMLa+Y0198名前は開発中のものです。
2014/02/09(日) 03:48:09.82ID:n/hHVigC0199名前は開発中のものです。
2014/02/09(日) 03:53:10.61ID:CEeCxVwx燃え尽きた印象があるな
一発屋というより、沢山あった弾を同じ場所に撃ち込んじゃった感じ
0200名前は開発中のものです。
2014/02/09(日) 04:22:56.68ID:eECi/LC1あの時代にスクランブルを完全移植した情熱の炎は、そう簡単には消えないさ!
俺は信じてるぜ!
0201名前は開発中のものです。
2014/02/09(日) 16:33:33.68ID:Om4RLWnjとりあえずminiMax法で作ろうとしており参考にしているサイトのURLは
http://hp.vector.co.jp/authors/VA015468/platina/algo/2_2.html
です。
このサイトの
for(最初の子節点の手; 未評価の子節点がある; 次の子節点に移る)
という部分を見る限り先に子節点がいくつあるのか調べておく必要があると思うのですが
その解釈でよろしいですか?
0202名前は開発中のものです。
2014/02/09(日) 16:43:02.64ID:c5g9RcWt先に子節点を調べなくてもできるけど
先に調べておかないと置けないにも拘わらず置くかどうかを計算するから無駄な計算が増えるし、バグで置いた場合に何処でバグが発生してるのか調べるのが大変になる
0203名前は開発中のものです。
2014/02/09(日) 16:50:59.29ID:Om4RLWnjありがとうございます。
先に子節点を調べることにします。
調べる上で、次の子節点を調べるときにその前に調べた子節点以外から探す方法が
よくわからないのですが、どのような実装を行えばいいでしょうか
0204名前は開発中のものです。
2014/02/10(月) 08:15:56.04ID:EeAxagpY再帰処理で実装するといいよ
0205名前は開発中のものです。
2014/02/10(月) 16:50:10.78ID:r9rJHs9vスタックとはどのようなものかはわかりますが、実装法などは全くわかりません。
二分木なら
typedef struct node_t{
typedef struct node_t *left;
typedef struct node_t *right;
int data;
}NODE;
のようにすればいいと思うのですが、探索となると多分木になると思うので
同じようには実装できませんよね?
0206名前は開発中のものです。
2014/02/10(月) 17:57:20.00ID:zYS9MiyXstruct node_t *child;
struct node_t *next;
int data;
}NODE;
0207名前は開発中のものです。
2014/02/10(月) 18:19:16.50ID:r9rJHs9vつまり二分木と同じ実装法で見方を変えるということですか?
0208名前は開発中のものです。
2014/02/10(月) 19:22:37.65ID:zYS9MiyX要件は、多分木であることと、ルートから葉に向かって再帰的に処理できること、でしょ?
その要件に足るようなデータ構造で自分の使いやすいものを選択すればいい
0209名前は開発中のものです。
2014/02/11(火) 10:42:36.42ID:MuB9VwbG横回転は綺麗に回るんですが、縦回転がY軸しか動かず変な動きになります
分かりやすく解説してるとこは無いですか?
0210名前は開発中のものです。
2014/02/11(火) 14:18:07.24ID:EVFbkSHBクォータニオンで球面線形補間すると
理論はよく分からないけど何故かうまくいくよ
0211名前は開発中のものです。
2014/02/11(火) 14:32:23.80ID:pu0dsTgx0212名前は開発中のものです。
2014/02/11(火) 22:12:14.10ID:sWtHnyX5ありがとう、ちょっと見てみたんですが、
私のコードは三角関数メインなので行列の理解が追いつきませんでした
根本のコードの変更も考えてみます
0213名前は開発中のものです。
2014/02/21(金) 22:16:42.52ID:WPj1YKPYどういう考え方で波を作れば船が上下したり傾いたりするでしょうか?
波を表すメッシュの頂点にベクトルを紐付けて、それを隣の頂点に伝搬する・・・
みたいな事は想像してるんですが、あんまりうまくないというか、
あまり効率的ではないですよね?
いい方法ないですか?
0214名前は開発中のものです。
2014/02/22(土) 05:41:07.36ID:zZnD13Ju2分探索木を自分で作らなくても、ライブラリにあるでしょ?
B-Tree(self-balancing search tree)平衡2分探索木
B+Tree、赤黒木など
キューやスタックも、ライブラリにあるでしょ?
優先度つきキュー(priority queue)はよく使うよ
詳細はWikipediaなどで、調べて
0215名前は開発中のものです。
2014/02/22(土) 10:17:30.51ID:YdhdLZfzなんちゃって水面は基本的にはそういう作り方だよ。バネダンパの二次元格子。
お船は、近傍の格子の頂点や面に反発させてどんぶらこさせればいいやという。
トライアル&エラーでパラメータ適当にいじって見た目の調整。おしまい
あ、リアル志向のゲームは何やってるのか知らないよ。学生時代に数値流体
やってたけど、あっちに凝り出すと際限がないからみんなどっかで折り合い
付けて端折ってそれっぽく見せてるだけだと思うよ
0216名前は開発中のものです。
2014/02/22(土) 10:56:40.26ID:4BDQmNHU0217名前は開発中のものです。
2014/02/22(土) 11:39:42.84ID:YdhdLZfzDX7以前の頃だとテクスチャを2枚用意してマルチテクスチャにして
UV値の操作で各々のテクスチャを交差するように移動させると水面ぽく
見せられるよー的なやり方が多かったけど、あれをハイトマップにも
使う感じかな?
0218名前は開発中のものです。
2014/02/27(木) 22:01:09.66ID:XfV+syCM0219名前は開発中のものです。
2014/02/28(金) 02:45:29.15ID:WKCAf0/q鏡を見てため息をつけばいいと思う
0220名前は開発中のものです。
2014/03/01(土) 15:31:28.07ID:xOOTC3SX0221名前は開発中のものです。
2014/03/01(土) 15:36:42.26ID:ckzLhO0U0222名前は開発中のものです。
2014/03/01(土) 17:29:52.27ID:P6ZwcTGw0223名前は開発中のものです。
2014/03/01(土) 17:49:25.00ID:ckzLhO0Uメンバ関数にポインタ変数を渡して…何でここでコンストラクタ??って思った
0224名前は開発中のものです。
2014/03/01(土) 23:00:27.16ID:B/y6lyvXメンバにポインタ持たせてもいいし、相手クラスを継承してしまうとか、
その数値が必要になる関数の引数に、ポインタや参照で渡したり、
数値そのものを引数で渡すだけでも、好きなのでいいと思うよ
0225名前は開発中のものです。
2014/03/02(日) 01:12:07.39ID:One/ooAB0226名前は開発中のものです。
2014/03/02(日) 18:14:52.71ID:eSGAMgB8foobarとかhogeみたいに意味のない文字なのがベストなんだけど
既存で使われているdatとかsavだと既になんらかの関連付けが
されてしまってる場合がありえるよね
0227名前は開発中のものです。
2014/03/02(日) 18:30:57.68ID:RKme8rWA0228名前は開発中のものです。
2014/03/02(日) 18:34:29.49ID:eSGAMgB80229名前は開発中のものです。
2014/03/02(日) 19:12:19.16ID:odwxDc0wデータのバックアップを取りたいことあるだろうし。
0230名前は開発中のものです。
2014/03/02(日) 19:15:46.36ID:Oh6AuFJG0231名前は開発中のものです。
2014/03/02(日) 19:21:49.81ID:XPJItCw90232名前は開発中のものです。
2014/03/02(日) 20:11:55.85ID:uIAHAPdgマルチスレッドってオブジェクトリストの更新中に
オブジェクトリストを参照できないんだから意味なくないですか?
どうしてマルチスレッドで動作が軽くなるんですか?
セマフォをオブジェクト単位でかけてたらセマフォの処理で余計重くなるのでは
0233名前は開発中のものです。
2014/03/02(日) 20:20:19.85ID:9+Akgo4p0234名前は開発中のものです。
2014/03/02(日) 20:21:15.86ID:Oac8ta12http://oxygine.org/
0235名前は開発中のものです。
2014/03/02(日) 20:51:20.45ID:uIAHAPdg画面のチラツキを抑えるほうが出てきて、出てきても申し訳程度の説明しかない・・・
http://www.cs.tsukuba.ac.jp/~yas/cs/csys-2007/2007-12-14/
>◆ダブルバッファリング
> 整数を1つバッファに書き込むだけでロック/アンロックを行なっていると、 実際の並列処理では重たい。
> ロックの回数を減らすために、ダブルバッファリ ングと呼ばれる技術がよく使われる。読み手と書き手で別々にバッファをもうけ、1つのバッファの処理をしている間は、ロックを行なわない。
リストで1つのオブジェクトを更新してる間は「描画スレッドが使っちゃだめですよフラグ」でもたてるのか?
それを参照する時点でスレッドセーフじゃなさそうだけど
それともリスト内の全部のインスタンスのコピーを毎フレーム作るのか?
0236名前は開発中のものです。
2014/03/02(日) 20:59:31.72ID:uIAHAPdg0237名前は開発中のものです。
2014/03/02(日) 22:59:32.88ID:bJnQrcsZ0238名前は開発中のものです。
2014/03/02(日) 23:13:50.02ID:0kUNTeetBGM,効果音など
背景の処理、草や木が風でゆらゆらする
シェダー関係もそう
0239名前は開発中のものです。
2014/03/02(日) 23:15:24.40ID:YZ+wwGoZ・描画スレッドがAの状態を使用して描画している間、更新スレッドは
Aの状態をもとに更新後の状態をBに作成する。
・両方が完了したらAとBをスワップする
って方法かなぁ
>>232の図で言えば、Subスレッドが描画している間に
Mainスレッドがもう次のフレームの接触判定を処理し始めてる感じ
0240名前は開発中のものです。
2014/03/02(日) 23:23:34.37ID:bJnQrcsZなんで単純に出来ることを複雑にやろうとするんだ?
0241名前は開発中のものです。
2014/03/02(日) 23:31:43.29ID:Oh6AuFJG.binはlinuxの.exeって感じでデータっぽくない
0242名前は開発中のものです。
2014/03/02(日) 23:37:13.73ID:Oh6AuFJG面白そうだけど利用者ほとんどいないようだし、すぐに消えそうだな
cocos2dのほうが良いよ
0243名前は開発中のものです。
2014/03/02(日) 23:44:39.24ID:Oh6AuFJGそれって概念的には全てのインスタンスx2だけど、
描画スレッドは描画に関するデータ(それも画面内に入るもの)だけあれば良いから
実際には必要なメモリ量を削った実装で実現できるな
0244239
2014/03/03(月) 00:29:47.75ID:+ppeC4rH確かにそうだ
そして多分それが>>240が言っている
「計算したデータを描画用のバッファに積んで、描画処理に引き渡」す
ってのに近いのかも
この辺で思ったんだが、もしDirectX11を生で叩いてるなら
DeferredContextとか使うといいのかな

>>239
スカラだけならともかく毎フレーム描画に必要な情報全てをnewするのか?
>>239
描画用のバッファを積む時にスレッドぶつかるかもしれないって話では?
class aiueo{
private:
Position* position;
Position* drawPosition;
public:
void func(){
position->setX(position->getX+1);
Position* tmp=position;
position = drawPosition;
drawPosition = tmp;
}
void draw(){
image.draw(drawPosition);
}
};
0246名前は開発中のものです。
2014/03/03(月) 07:13:32.62ID:mjyyGJWK引き渡したら描画を描画スレッドにやらせて、計算スレッドは次の計算に入ればいい。
なんで単純で簡単なことを複雑に考えるのか、さっぱり理解できない。
そもそも描画順序などを考えると、座標がすべて確定した後で無ければ、
描画処理なんて出来ないのに、なんで計算直後にチマチマ描画しようという発想になってるんだ?
毎フレームnewとかも、嫌なら最初からある程度の領域を作っておけばいいだけの話で、
そんな簡単に解決できるどうでもいいことをイチイチ聞く意味が分からない。
なにこの思考能力の欠如?
0247名前は開発中のものです。
2014/03/03(月) 07:44:19.21ID:+ppeC4rH
http://gyazo.com/7984315b649ca2378a5b63989ada2874.png
図で確認するとこんな感じ?
ロックの仕方がよくわからんけど、
メインスレッド側のバッファは描画スレッドに必要な情報(頂点とか)いらないからトントンになるのかな
そうすると、毎フレームnewするより保持してたほうが楽そう
描画スレッドはモデルの頂点の展開とかやらずに文字通りZバッファに登録するだけだったりする?
0249名前は開発中のものです。
2014/03/03(月) 14:38:46.71ID:7XSFdIT2意味不明
0250名前は開発中のものです。
2014/03/03(月) 20:28:03.25ID:+ppeC4rH使ってるライブラリ教えて
0251名前は開発中のものです。
2014/03/04(火) 00:42:30.15ID:tv4RC6nv処理の分割しないと複数コアの性能いかせないよね
>>238以外にも分割出来るところはあるんじゃないの
AIなんかのフレームと分けられる箇所が効果的だとは思うんだが
0252名前は開発中のものです。
2014/03/04(火) 00:54:00.93ID:Tkd6LlXd君はレベルが低すぎる。基礎的なことすら理解していないようだから
身の丈に合った技術で制作するべきだ
0253名前は開発中のものです。
2014/03/04(火) 01:01:46.35ID:Tkd6LlXdゲームロジックについてはゲームの性質次第だから汎用的な議論はできん

>>250
DXライブラリです
0255名前は開発中のものです。
2014/03/04(火) 01:22:03.26ID:eUCtnBamそんなこと言わないで><
0256名前は開発中のものです。
2014/03/04(火) 01:45:49.24ID:MGr4iOMf0257名前は開発中のものです。
2014/03/04(火) 03:19:20.41ID:NSoGUl2dバグ生産しまくるのは得意みたいだがw
無視するに限るよ(ry
0258名前は開発中のものです。
2014/03/04(火) 03:24:44.21ID:6r8+3FgW満足するならなw
0259名前は開発中のものです。
2014/03/04(火) 09:14:16.41ID:Tkd6LlXd無理に背伸びした結果が「文字通りZバッファに登録するだけだったりする?」
格好ばかりつけて内容がなさすぎだろ
上で新技術OpenMPとかドヤってたやつといい、もう少し自惚れを抑えて
真摯な姿勢で学ばんと時間の無駄だよ
0260名前は開発中のものです。
2014/03/04(火) 09:15:50.51ID:A1Dcjr5j明らかにZバッファが何か分かってないだろ。
0261名前は開発中のものです。
2014/03/04(火) 12:24:51.64ID:VEfOUnzLZソートの機能があるライブラリって訳じゃ無いのね

>>261
アルファ値がある面だけZソートして、不透明な面の後から描画しています。
マルチスレッドの基礎はわかりませんが、
勉強目的で実装してみようかなと考えて、疑問点があったので質問しました。
質問の内容に戻りたいのですが、
メインスレッドではオブジェクトの座標だけ計算して、
描画スレッドでオブジェクトの座標からモデルの頂点等を展開すると
メインスレッドと描画スレッドが共有する値が少なくなっていいかなと考えたんですが、
実際に使われているスタンダードな方法とかあれば教えていただけると助かります。
0263名前は開発中のものです。
2014/03/05(水) 00:56:58.44ID:vvepHaRA....Image* image; // D3DMesh mesh でもFontSprite fontでもいい
....Rect bounds;
....Rect src;
....double angle;
};
struct Layer {
....int usingLength = 0;
....Chain<Node> chain; // std::list<Node>
/*
Chain<Node2DImage> chain1;
Chain<Node2DFont> chain2;
Chain<Node3DModel> chain3;
*/
....bool isUpdate = false;
};
0264名前は開発中のものです。
2014/03/05(水) 00:58:26.26ID:vvepHaRALayer g_layers[3]; // instance;
Layer *g_pFront = &g_layers[0];
Layer *g_pSwap = &g_layers[1];
Layer *g_pBack = &g_layers[2];
void threadFront(){ // GUI Thread = main thread
....while(true){
........g_sync.lock();
........if(g_pSwap->isUpdate == true){ // ロジック側がスワップした
............Layer *swap = g_pFront;
............g_pFront = g_pSwap;
............g_pSwap = swap;
............g_pSwap = false;
........}
........g_sync.unlock();
........render(g_pFront);
....}
}
0265名前は開発中のものです。
2014/03/05(水) 01:01:42.52ID:vvepHaRA....while(true){
........g_sync.lock();
........if(g_pSwap->isUpdate == false){ // 描画側がスワップした
............Layer *swap = g_pBack;
............g_pBack = g_pSwap;
............g_pSwap = swap;
............g_pSwap = true;
........}
........g_sync.unlock();
........update(g_pBack);
....}
}
class Scene {
public:
....virtual void update = null;
....virtual void render() = null;
}
0266名前は開発中のものです。
2014/03/05(水) 01:07:10.79ID:vvepHaRA....Sprite sprite;
public:
....void update(){
........sprite.x++;
....}
....void render(){
........sprite.render(); // g_pBackにデータを渡す
....}
}
Scene* g_pScene = new Game();
// Logic Thread update()
void update(Layer* layer){
....g_pScene->update();
....g_pScene->render();
}
問題は、GUIスレッドしかテクスチャーとかの生成と破棄ができないのだが、
ロジック側の要請をキューにしてメッセージパッシングするのは
少し複雑な実装になるこった。
0267名前は開発中のものです。
2014/03/05(水) 16:23:12.96ID:x8H/gaMj0268名前は開発中のものです。
2014/03/05(水) 20:45:55.74ID:6x2/6ZGn0269名前は開発中のものです。
2014/03/05(水) 21:47:30.12ID:6x2/6ZGnhttp://www.kumikomi.net/archives/2005/02/02multi.php?page=1
組み込みのサイトだけど基礎だからゲーム製作にも役立つかな
まあこれ見ても具体的な実装なんてさっぱりわからんけど
0270名前は開発中のものです。
2014/03/05(水) 22:22:10.31ID:vvepHaRA0271名前は開発中のものです。
2014/03/05(水) 22:28:07.13ID:xpm2EzP60272名前は開発中のものです。
2014/03/06(木) 22:54:49.68ID:wXpbFvTOミューテックスのロックとアンロックが一行でできる
0273名前は開発中のものです。
2014/03/06(木) 23:58:17.76ID:g6URqktg書いてくれて嬉しいですが、処理の流れが見えないですね・・・
swapは裏画面と表画面を入れ替えてるというのはわかるんですが
ロジック側も入れ替えるんですか?
layerとかchainとか何を指してるのかイマイチわからないです・・・
g_sync.lockというのはロック出来るまで待機すんるでしょうか?
そうするといい感じに交互に処理できそう?
0274名前は開発中のものです。
2014/03/07(金) 16:53:26.89ID:fjndePR8時間の無駄だから諦めたほうがいい

マルチスレッドで描画しているゲームで、FPSが60以上出るゲームがあるけど
あれって一秒間に60回以上オブジェクトの更新しているってこと?
それとも更新側も全力でループ回して、前フレームからの経過時間を測って処理落ちにも対応する感じ?
0276名前は開発中のものです。
2014/03/07(金) 19:37:40.45ID:fjndePR8すっげー爆速だー()
0277名前は開発中のものです。
2014/03/07(金) 19:48:26.65ID:DRlt5uyo16,000マイクロ秒だぜ
16,000,000ナノ秒だぜ
0278名前は開発中のものです。
2014/03/07(金) 20:16:57.82ID:fjndePR8俺もなんとなく50FPSで同期とってる
0279名前は開発中のものです。
2014/03/07(金) 21:10:47.46ID:p/ke0iDn0280名前は開発中のものです。
2014/03/07(金) 21:28:42.22ID:EnJ3GPFi見た目はそうだけど、例えば 当たり判定があるなら、見えない部分でも計算処理がなされる。
0281名前は開発中のものです。
2014/03/07(金) 21:44:38.99ID:Gh0ocgNAフレーム飛ぶだろ。
0282名前は開発中のものです。
2014/03/07(金) 21:54:40.27ID:5nTupHrf0283名前は開発中のものです。
2014/03/07(金) 22:08:10.09ID:7HkmM3vqあくまで精度を高めるための処理であって、フレーム飛ぶとかは関係なくね?
よくあるネタとして、毎フレーム32ドットで飛んでいく弾丸は、
大きさ30ドットの敵キャラをすり抜けちゃうとか、そういうやつ。
0284名前は開発中のものです。
2014/03/07(金) 22:42:09.70ID:fjndePR80285名前は開発中のものです。
2014/03/07(金) 22:50:16.12ID:fjndePR8一般的じゃないかな。アニメーションなんかでは。
ちなみにマウスを使ったお絵描きソフトをつくると60FPSでは
線が途切れてしまうわけだけど、こちらでは更新回数を増やすのではなく
前回の座標と今回の座標の差分から埋め合わせを計算するのが普通。
0286名前は開発中のものです。
2014/03/07(金) 22:53:06.64ID:EnJ3GPFi効率的にマルチスレッド化出来る事が限られている。
そして、CPUが4コアであっても 決して4倍には成らない。
0287名前は開発中のものです。
2014/03/07(金) 22:55:14.98ID:RMnLXnbR「あらゆる状況に対応できる」メリットを優先するってだけの話じゃ。
0288名前は開発中のものです。
2014/03/07(金) 22:56:53.08ID:Gh0ocgNA単にCPUに余裕があるって話なら分かるけど。
それと1000FPSになんの関係があるんだ?
処理を1000回やるのと1000FPSは意味が違うだろ。
0289名前は開発中のものです。
2014/03/07(金) 23:09:10.35ID:fjndePR8「マルチスレッドでCPU性能を限界まで引き出す(ドヤ」
これからはマルチスレッド・ボーイと名乗りなさい
0290名前は開発中のものです。
2014/03/07(金) 23:21:09.90ID:ZsI9fYzN0291名前は開発中のものです。
2014/03/07(金) 23:31:09.17ID:7HkmM3vqフレームという単位は、確かに元は映像や画像処理の世界の言葉だが、
ゲーム系では映像の出力の他にも、処理の単位(要はループ数)として使われることがある。
どっちの意味で言ってるかは文脈による。
0292名前は開発中のものです。
2014/03/07(金) 23:40:19.37ID:Gh0ocgNAマルチスレッド?jは?何言ってるの?
0293名前は開発中のものです。
2014/03/08(土) 00:03:16.81ID:C0+dE/Sc教えて君の相手をしていても進歩がなさそうだ
0294名前は開発中のものです。
2014/03/08(土) 00:06:45.46ID:GqQre2H1恥ずかしいやつだな。
こんな過疎スレで自演しても意味ないぞ
0295名前は開発中のものです。
2014/03/08(土) 00:11:20.12ID:C0+dE/Scまず、>>275が振った話題にレスが続いてること理解してる?
0296名前は開発中のものです。
2014/03/08(土) 00:14:00.22ID:GqQre2H10297名前は開発中のものです。
2014/03/08(土) 00:15:32.48ID:C0+dE/Scわかったら、敗者は立ち去られよ
0298名前は開発中のものです。
2014/03/08(土) 00:16:46.34ID:GqQre2H10299名前は開発中のものです。
2014/03/08(土) 00:20:10.92ID:9lZ7NGbh0300名前は開発中のものです。
2014/03/08(土) 00:21:58.27ID:C0+dE/Sc追い詰められて苦し紛れに「バーカ」とか「アーホ」と一行レスで煽ってるだけじゃんw
0301名前は開発中のものです。
2014/03/08(土) 00:24:33.75ID:GqQre2H10302名前は開発中のものです。
2014/03/08(土) 00:28:32.27ID:C0+dE/Sc「どのレスがそうなんですか?」と聞き返されて「お前馬鹿だろw」「つ鏡」などと
意味不明な返答を繰り返す。
わかったら、敗者は立ち去られよ
0303名前は開発中のものです。
2014/03/08(土) 00:31:28.03ID:X9SC3wUQ0304名前は開発中のものです。
2014/03/08(土) 01:44:30.85ID:Vx2VozQo0305名前は開発中のものです。
2014/03/08(土) 08:06:01.61ID:PSYFRGtR0306名前は開発中のものです。
2014/03/08(土) 09:53:27.60ID:tPkg4yd1@固定fpsで、リミッターにより fpsの上限で固定してしまうもの。
AV-SYNCによって固定する、ゲーム機などであり確実に固定する。
B可変fpsにし、fps値が変化しても同じ速度で挙動するもの。
ゲームエンジンが 一般的にゲームループを形成しており、
ループの回転数(fps)を計測する。
PCの処理速度が不安定であり、状況により常に変動している。
ゲーム内では処理の負荷変動に関係なく処理速度を一定にしたい。
@固定fps方法、設定のfpsを越えないように上限値を決める方法、
単純な解決方法です。設定fpsを下回る場合は処理落ちになる。
AV-SYNC方法、これはリミッターと同じですが、
画面の同期にハード的に合わせてリミッター処理します、
ですから、設定fpsが常に安定している。しかし、
画面同期が変更されると困る。ゲーム機などに多い。
B可変fps方法、これはゲームループの回転速度に反比例して
ゲーム内の速度を制御します。よって、fpsが変化しても
ゲームの速度に影響がありません。こうすると
非力PCでもささやかに動き、高級PCでも豪華に動く。
また、以上の組合せの方法もあり、条件によって選択が違ってくる。
0307名前は開発中のものです。
2014/03/08(土) 09:55:48.75ID:xv4QLBh40308名前は開発中のものです。
2014/03/08(土) 15:47:21.74ID:C0+dE/Sc0309名前は開発中のものです。
2014/03/08(土) 16:31:15.28ID:cTFUFLMT「ゲームプログラマーになる前に覚えておきたい技術」のページ127から140を読んでもらいたい
図書館にあると思う
0310名前は開発中のものです。
2014/03/08(土) 19:20:22.65ID:vzxofO6Yおそらく画面描画の単位としてのフレームと、処理の単位としてのフレームを混同してる
0311名前は開発中のものです。
2014/03/08(土) 20:06:53.16ID:C0+dE/Sc0312名前は開発中のものです。
2014/03/08(土) 20:50:35.38ID:YGGwUpNn死ね
0313名前は開発中のものです。
2014/03/08(土) 23:21:33.13ID:Sq36ONOT0314名前は開発中のものです。
2014/03/09(日) 00:09:52.59ID:IyeEnt/70315名前は開発中のものです。
2014/03/09(日) 00:18:56.78ID:zp5zMRCB0316名前は開発中のものです。
2014/03/09(日) 00:35:14.60ID:UV7RBW8A昔に作ったやつは特に深く考えることなく60FPS基準にしてて、
「このエフェクトは1秒間かけたいから設定値は60(フレーム)にしよう」
とかやってたけど、ゲーム内の時間と描画を切り離して考えてなかったから
倍速にしたいときにFPS120にして1フレごとフレームスキップするとか
トンチンカンなことやってたんだよね
(FPS設定値が描画回数と一緒にゲーム内の速度に影響してしまってた)
設定値は素直に、ゲーム時間としては「再生速度 * 秒数(ミリ)」で設定して
描画としてFPS(描画/秒)を使うべきだねぇ
0317名前は開発中のものです。
2014/03/09(日) 10:22:07.75ID:zp5zMRCB一般的だと思うぞ。
もっと原始的にやるなら、画面が50FPSだとキリがよくて、ロジック側もループ回数で
単純計算しやすいかなとは思うんだけど、その延長線上の考え方として
マルチスレッドで秒間100回更新するというのは止めたほうがよいね。
0318名前は開発中のものです。
2014/03/09(日) 12:52:15.87ID:n5K2fLn8EU圏のゲーム機でもなきゃわざわざ50を選ぶ理由ないけど
ロジックを高速にするならゲームパッドのサンプリング周期も考慮した方がいいかもね
マウスも非常に速いのあるけど画面とは綺麗な整数倍にならないし
0319名前は開発中のものです。
2014/03/09(日) 13:48:11.02ID:hgm9uEQE0320名前は開発中のものです。
2014/03/09(日) 15:16:30.96ID:a5thyH8B0321名前は開発中のものです。
2014/03/09(日) 15:55:13.60ID:UV7RBW8Aネトゲとかアクションじゃない限り、ゲーム内時間は現実のデルタタイムに
影響されないようにした方が混乱しないんじゃね?
Unityのチュートリアルなんかだと、「移動距離 = Δ * speed」みたいなやり方を見るんだが、
俺達みたいに自分でゲームループを制御する場合は、ゲーム内時間とリアル時間を結びつけるために
ループ内でSleep入れて、ゲーム内の「最小単位時間」は常に同一になるように調整した方がわかりやすいと思う
0322名前は開発中のものです。
2014/03/09(日) 16:30:12.84ID:zp5zMRCB常に17msの倍数でウェイトやアニメーションを行うことになるな。
別にそれはそれで単純でよいが、海外のゲームエンジンとかライブラリだと
デルタタイムでタイムライン処理するのがデファクトな印象ではある。
0323名前は開発中のものです。
2014/03/09(日) 17:36:09.54ID:UDo1KJJD0324名前は開発中のものです。
2014/03/09(日) 18:05:51.13ID:zp5zMRCBフレームワーク・ライブラリ整備されている前提でないと
むしろ手間かかるというのはあるな
SDLやDXライブラリでそのままでゴリゴリ書いちゃってるような状況なら
原始的な手法がいんじゃまいか
0325名前は開発中のものです。
2014/03/09(日) 22:16:48.95ID:ai4yRe813Dのゲームは大概処理落ちするとコマ送りになる気がするけど
0326名前は開発中のものです。
2014/03/09(日) 22:24:11.30ID:7BkgnOpl0327名前は開発中のものです。
2014/03/09(日) 22:29:21.55ID:YCVyyaL70328名前は開発中のものです。
2014/03/09(日) 22:49:06.01ID:LHzx02pPプロのくせに2chってキモイんで巣にお帰りください
0329名前は開発中のものです。
2014/03/09(日) 23:27:17.89ID:YCVyyaL7どこにプロ要素があったのか
0330名前は開発中のものです。
2014/03/10(月) 01:04:03.22ID:eMnEQH7w0331名前は開発中のものです。
2014/03/10(月) 18:57:16.49ID:u260dUyO0332名前は開発中のものです。
2014/03/10(月) 19:30:37.53ID:a4AxYrFNもう少しくわしく
なぜその方法ではダメなの?
どのような目的の為にその他の方法が必要なの?
0333名前は開発中のものです。
2014/03/10(月) 21:01:01.03ID:Y7tUpY4E0334名前は開発中のものです。
2014/03/10(月) 21:12:38.72ID:gaJAPo5eいったい何が聞きたいのかさっぱり分からない。
0335名前は開発中のものです。
2014/03/10(月) 23:29:14.20ID:Y7tUpY4E何が聞きたいのかわからないってアスペかよ
0336名前は開発中のものです。
2014/03/11(火) 03:02:43.10ID:IY9eaK2Hバーカバーカ
0337名前は開発中のものです。
2014/03/11(火) 03:58:39.95ID:UoOeSCjvいや、色んな当たり判定の取り方有るよ。
それに円、球、円柱などの単純図形による近似判定って処理が軽いだけで、
厳密な当たり判定を取りたい時の手法としては効率的ではないし。
凸包を使う方法とか、xyzそれぞれのベクトルの射影を取る方法とか、調べてみると面白い。
0338名前は開発中のものです。
2014/03/11(火) 12:42:21.97ID:IY9eaK2H精度の高い手法=厳密な当たり判定
0339名前は開発中のものです。
2014/03/11(火) 15:13:17.06ID:7WRcbbN40340名前は開発中のものです。
2014/03/11(火) 15:17:28.37ID:0J+S+2q70341名前は開発中のものです。
2014/03/11(火) 15:18:30.63ID:1Bb7Oz5Q0342名前は開発中のものです。
2014/03/11(火) 15:37:28.53ID:7aEkrhcXb2{x, y, z, r}
diff.x = abs( b1.x - b2.x )
diff.y = abs( b1.y - b2.y )
diff.z = abs( b1.z - b2.z )
distance = sqrt( sqrt( diff.x^2 + diff.y^2 ) + diff.z^2 )
distance > b1.r + b2.r → no collision
distance = b1.r + b2.r → contact
distance < b1.r + b2.r → collision
0343名前は開発中のものです。
2014/03/11(火) 15:55:58.02ID:AQe4Fl77しかしながら、プログラミングとしての最適化されていない。
最適化された解を述べよ、 ( 処理速度向上させよ )
0344名前は開発中のものです。
2014/03/11(火) 15:59:16.47ID:AQe4Fl770345名前は開発中のものです。
2014/03/11(火) 17:31:22.65ID:7aEkrhcX平方根の最適化はコンパイラに任せるとして、
distance = sqrt( sqrt( diff.x * diff.x + diff.y * diff.y ) + diff.z * diff.z )
とかじゃダメ?
0346名前は開発中のものです。
2014/03/11(火) 18:11:28.23ID:vsKfw8ZMdiff.y と diff.z も同様。
0347名前は開発中のものです。
2014/03/11(火) 21:03:50.46ID:Xqo2QxT0sqrtは重いからsqrt使わずにdistance^2と(b1.r+b2.r
)^2を比較する
0348名前は開発中のものです。
2014/03/11(火) 21:15:28.25ID:OqfIz8Zt平方根くらいええやん
0349名前は開発中のものです。
2014/03/11(火) 21:49:57.82ID:Xqo2QxT0ちなみ平方根の計算自体は近似値求める計算だから結構でかいよ
0350名前は開発中のものです。
2014/03/11(火) 22:49:56.48ID:Fzxm+mum計算して返すようにしておいた方がいいよ
0351名前は開発中のものです。
2014/03/11(火) 23:13:25.82ID:P/1Z0pOfhttp://www.intel.com/content/dam/doc/manual/64-ia-32-architectures-optimization-manual.pdf
http://topsecret.hpc.co.jp/wiki/index.php/%E5%89%B2%E3%82%8A%E7%AE%97%E3%81%AF%E9%81%85%E3%81%84
しかも割り算一回分レベルの速さ
割り算も遅いので遅いと言えば遅いんだろうけど、これならそれほど頑張って避けなくてもいい気もするね
0352名前は開発中のものです。
2014/03/12(水) 10:35:51.84ID:DWahuZKRdouble dSqrt, x, y, z;
long T, E;
x = y = z = 1.0;
T = clock();
for (i = 0; i<100000000; i++){
dSqrt = sqrt(pow(x, 2.0) + pow(y, 2.0) + pow(z, 2.0));
}
E = clock() - T;
printf("√( x^2 + y^2 + z^2 ) = %1.5f [%1.5f] sec\n", (float)dSqrt, (float)E / CLOCKS_PER_SEC);
T = clock();
for (i = 0; i<100000000; i++){
dSqrt = sqrt(sqrt(pow(x, 2.0) + pow(y, 2.0)) + pow(z, 2.0));
}
E = clock() - T;
printf("(√(√(x^2 + y^2) + z^2) = %1.5f [%1.5f] sec\n", (float)dSqrt, (float)E / CLOCKS_PER_SEC);
getchar();
return 0;
実行結果
√( x^2 + y^2 + z^2 ) = 1.73205 [0.60800] sec
(√(√(x^2 + y^2) + z^2) = 1.55377 [1.18600] sec
計算結果はゲームで使うなら誤差の範囲かな?
単純に sqrt 2回使えばほぼ 2倍の時間掛かるんで衝突判定するオブジェクトの数に拠りけり
秒間1億に近いから他の処理の重さと併せて考慮する感じだと思う
0353名前は開発中のものです。
2014/03/12(水) 13:43:31.76ID:KEnJWCWv0354名前は開発中のものです。
2014/03/12(水) 13:49:15.02ID:DWahuZKR0355名前は開発中のものです。
2014/03/12(水) 21:54:58.99ID:5WuRlcAH0356名前は開発中のものです。
2014/03/12(水) 21:59:51.24ID:5WuRlcAH0357名前は開発中のものです。
2014/03/12(水) 22:11:11.81ID:MjuHudryそれにdoubleよりfloat使わない?
0358名前は開発中のものです。
2014/03/13(木) 10:00:03.12ID:pSqzCZ7J0359名前は開発中のものです。
2014/03/13(木) 11:21:45.95ID:pSqzCZ7J一応検証の為に pow(x, 2.0) と x*x の比較したら最適化されないみたいです(VC++2013)
√( x^2 + y^2 + z^2 ) [4.25600] sec
√(x * x + y * y + z * z) [0.61000] sec
これまでのを総合すると、
float dist2 = x * x + y * y + z * z;
float rr = (r1 + r2) * (r1 + r2);
if (dist2 > rr) {
// no collision
}
else {
// touch or collision
float dist = sqrt(dist2); // 衝突位置の計算用
}
みたいな感じかな?
参考になりました、ありがとうございます
0360名前は開発中のものです。
2014/03/13(木) 20:12:09.07ID:U+Ob+Zph0361名前は開発中のものです。
2014/03/13(木) 20:37:28.97ID:gJhIi0KX0362名前は開発中のものです。
2014/03/15(土) 02:04:37.56ID:lh5cPZ7HplayMIDI
TextOut
ReleaseMIDI
など出てきたんですけどこれはygs2kで間違いないですかね?
ygs2kってゲ製では有名なんですか?
0363名前は開発中のものです。
2014/03/15(土) 02:30:50.42ID:3y1QMR7E0364名前は開発中のものです。
2014/03/15(土) 09:20:59.03ID:9NF5k3Jb0365名前は開発中のものです。
2014/03/15(土) 14:07:07.29ID:lh5cPZ7H0366名前は開発中のものです。
2014/03/15(土) 14:14:31.86ID:h6Za+Db1言ってることが支離滅裂。
なぜ、その名前だけでそのライブラリに行きつくのか。
ついでに言えば全然有名じゃないし。なんでゲ製でなの?
0367名前は開発中のものです。
2014/03/15(土) 14:58:29.14ID:FYDjzZLC0368名前は開発中のものです。
2014/03/15(土) 16:20:04.97ID:PgHQYT7S0369名前は開発中のものです。
2014/03/15(土) 17:08:57.60ID:h6Za+Db1ああ、彼のライブラリなのか。
結局、3Dは出来なかったな。能力的にも年齢的にも無理があったのだろうが。
0370名前は開発中のものです。
2014/03/15(土) 17:24:30.81ID:rzf5NJ5V0371名前は開発中のものです。
2014/03/15(土) 19:43:09.80ID:DtHIrGu20372名前は開発中のものです。
2014/03/15(土) 20:00:10.92ID:fItnBM/L0373名前は開発中のものです。
2014/03/15(土) 20:13:58.33ID:dxeJpeDA0374名前は開発中のものです。
2014/03/15(土) 20:44:18.33ID:7h3u1dFN0375名前は開発中のものです。
2014/03/16(日) 02:00:01.53ID:/lXYe85Y0376名前は開発中のものです。
2014/03/16(日) 12:04:58.86ID:45D5Boh60377名前は開発中のものです。
2014/03/16(日) 12:46:48.57ID:9fplCkXk方向は壁の法線方向に対して対称(反射)
※リアルさを求めるなら壁から加わる力から加速度をもとめるべき
0378名前は開発中のものです。
2014/03/16(日) 13:08:18.40ID:DbQzKXx20379名前は開発中のものです。
2014/03/16(日) 14:37:04.76ID:e720CN4Jただ、簡易スマートボール作ろうとしたときに>>377のやり方やってたら
曲面の壁に沿って滑らかに滑ってくれなくてエターなった思い出があるわ
0380名前は開発中のものです。
2014/03/16(日) 15:00:37.43ID:a7Z/sEsx0381名前は開発中のものです。
2014/03/16(日) 18:55:21.70ID:uPQCf7iIガツガツと壁を削りながらアグレッシブに攻めるゲームにしたいのか
スピンしてほぼ停止状態からやり直させるのか
ある程度の傾斜なら斜めに傾いたまま突っ走るロデオか
0382名前は開発中のものです。
2014/03/17(月) 00:57:39.15ID:VY0wetv00383 ◆UxQ8uxJMok
2014/03/17(月) 01:35:41.18ID:kdQ7tXJG>>182 :名前は開発中のものです。:2014/02/04(火) 00:23:08.29 ID:J1FJfMJW
> スレッドの主旨を考えてくれ。どっかのスレみたいに株の話をされても困る
おぃ、>>182ID:J1FJfMJW
手前ェは、一族根絶やし肉だるま処刑http://uni.2ch.net/test/read.cgi/entrance2/1369909044/119リスト入りだ。
0384名前は開発中のものです。
2014/03/17(月) 07:06:23.16ID:Do9zcgcc壁とぶつかりながら進む方
一応ライブラリ使えば球体とコースの当たり判定と交点を求めることは出来るんだけど、アクセルを踏み続けると当たってる時でも加速するし、減速する処理を書くと当たり続けて減速しすぎちゃうし・・・
0385名前は開発中のものです。
2014/03/17(月) 09:41:07.08ID:rpSVpHyCここまでは理解していると思うので、
挙動をどうするか決めておいて
そのようになるようにコードを書いてゆくのでしょう
0386名前は開発中のものです。
2014/03/17(月) 19:26:01.22ID:U3cX2N0O>>377 にあるようなゲームならではの調整が必要になるケースだと思うよ
壁に接触してから〇秒間は加速性能を〇〇%落とすとか、
壁から離れるような方向に謎の力が加わるとか
やってみて理想のゲーム性に近づくようにいろいろ試してみるしかないかと
0387名前は開発中のものです。
2014/03/18(火) 20:52:56.02ID:CMOj/Jcfこのスムーズに動くマップスクロールですが、最初にマップを動かしてからキャラを描画する形で
ソースが書かれています。
これを、画面端で、キャラだけ動いてカメラ画面(マップ)が動かないようにしたい場合、
画面を滑らかに動かすのではなく、キャラを滑らかに動かすような処理に
ソースを変更するしかないでしょうか?
0388名前は開発中のものです。
2014/03/18(火) 20:53:36.58ID:CMOj/Jcfアドレスはこちらでした。
0389名前は開発中のものです。
2014/03/18(火) 22:13:14.48ID:anUGUjWa0390名前は開発中のものです。
2014/03/19(水) 01:58:11.08ID:tk/WX1Vmリンク先をチラ見した程度じゃ、何をやってるか正しく把握してないし、
>>387の言わんとしてることもイマイチ分かりかねてるが、
方法としては、
昔ながらRPGみたく、
キャラの位置が画面端に近づいたら画面全体じゃなくて、キャラのみを移動にする方法や
完全にどこの位置でもキャラを移動させる方法、画面端(移動制限をしっかり)して描画に十分な余白
の3通りぐらいはあると思うよ。
他にも3D系のだと、画面端に近づくと縮尺が変わってとかもあるけど。
0391名前は開発中のものです。
2014/03/19(水) 04:13:25.51ID:GLn+gVinこんな事言って、例のkなんとかさんが激おこしないことを祈る。
>>387
現実世界で言うところの、スポーツ中継におけるTVカメラのようなものを想像して欲しい。
例えばマラソン中継。ランナーは常に走っているけど、カメラも同じ方向に動いている。
あるいは野球中継。ホームランボールをTVカメラが追いかけて、常に画面の中央にあるように撮影する。
被写体の動きに合わせてカメラを動かすことで、視聴者には被写体は停止し、背景が流れていくように見える。
カメラを動かすのをやめれば、逆に背景は停止し、被写体は移動する。やがて画面の外に消えてゆくだろう。
これをまとめると
(1)キャラクターは、画面表示に関わらず常に動かせ。
(2)マップは、画面表示に関わらず座標を動かしてはならない。
(3)カメラの位置は、状況に合わせて移動させろ。
ということになる。
0392名前は開発中のものです。
2014/03/19(水) 16:07:40.13ID:UvHVMI/Mその答えだと根本から作りなおせって事になるんじゃない?
0393名前は開発中のものです。
2014/03/19(水) 16:41:44.59ID:pluZ/2gm0394名前は開発中のものです。
2014/03/19(水) 17:00:07.58ID:o8V0VZ6Pぶっちゃけサンプルとしてはどうかと思うぞ。
キャラとカメラ両方に入れるか、キャラに入れるか。この二択でしょ。Dxlibの作者もなんでこんな
初心者いじめのようなサンプルを書いたんだろw
0395名前は開発中のものです。
2014/03/19(水) 22:07:24.67ID:rw0JuaTm0396名前は開発中のものです。
2014/03/20(木) 17:23:48.20ID:XEsROipC0397名前は開発中のものです。
2014/03/20(木) 17:51:07.52ID:yGIdDx3B「関数」のページに、おそらく「引数(ひきすう)」という項目が書かれてると思う。そこを読むんだ。
0398名前は開発中のものです。
2014/03/20(木) 17:55:02.77ID:XkJNKHnH引数、戻り値
0399名前は開発中のものです。
2014/03/20(木) 18:06:26.35ID:XEsROipCC++があやふやなのであれなんですが、Cで言えば構造体の中でxという宣言をすれば、
void main(){
}
0400名前は開発中のものです。
2014/03/20(木) 18:08:28.64ID:XEsROipC勉強したてであやふやなのであれなんですが、Cで言えば構造体の中でxという宣言をすれば、
Test test;
void main(){
test.x=1;
}
こんな感じにしてしまえば、xはグローバル宣言ではないということでしょうか?
0401名前は開発中のものです。
2014/03/20(木) 18:12:12.69ID:QQSkDL4kこのxはすでにグローバル変数ではなくて、ローカル変数だね
関数の中でしか有効ではない変数で、その関数を抜けるとその変数は破棄されるやつ
グローバル変数ってのはTest testってなってるやつのこと
0402名前は開発中のものです。
2014/03/20(木) 18:17:11.33ID:7FNS6Iq5Test test;
を関数外に書いてるからtestはグローバル変数
だからその中に保持されているxの値も関数抜けても維持されるよーじゃなくてさっさと入門サイト見てこいカス
0403名前は開発中のものです。
2014/03/20(木) 20:27:56.02ID:4y6T8wZlグローバル変数を使うことでバグを引き起こしたりメモリを圧迫する事が悪なのだ
要求機能満たして動くならグローバル使っても気にするこたぁない
0404名前は開発中のものです。
2014/03/20(木) 20:32:50.84ID:mbiTOjB0初心者のうちはグローバル=悪って覚えていた方が安全
0405名前は開発中のものです。
2014/03/20(木) 20:41:55.88ID:F5faASXsメモリ圧迫なんてヒープからnewしたのと同じだしスタックに積まれるよりまし
アクセス範囲や名前の衝突なんてのも関数でも起こるし
アクセッサーとか間違った使い方のシングルトンで
どこからでも参照できるようにしたら同じこと
0406名前は開発中のものです。
2014/03/20(木) 20:58:57.29ID:QQSkDL4k0407名前は開発中のものです。
2014/03/20(木) 21:49:50.24ID:F5faASXsローカルなクラス内のシングルトンもあるので間違えられると混乱の元
ゲームのデータクラスとして使うのは設計次第
0408名前は開発中のものです。
2014/03/20(木) 22:00:31.87ID:mbiTOjB0一人開発だとそんな気にならんけど規模でかくなると影響範囲の広い変数なんて地雷みたいなもんだからな
下手に修正すると全く関係ないところでエラーでたりしてトレース大変だったり
0409名前は開発中のものです。
2014/03/21(金) 18:13:16.93ID:VAKzG1ya呼び出し側は生成関数使うだけで初期化されてるか気にしなくていいとか楽チン仕様にできる
グローバル変数だけだとそうはいかんよね
0410名前は開発中のものです。
2014/03/21(金) 20:31:26.05ID:sV0Efmq2実際に使う前に確認しておきたいけどな
0411名前は開発中のものです。
2014/03/21(金) 22:38:50.59ID:4DgLw9n9初期化するタイミングを図らないといけないもので
それはシングルトンより適したデザインがあるのてはないか
0412名前は開発中のものです。
2014/03/23(日) 14:45:46.78ID:UqjjQ2/2そういう目的ならnamespaceを分ければよくねって話なら見た覚えがある
ググったら過去スレがひっかかった
http://toro.2ch.net/test/read.cgi/gamedev/1357899040/
シングルトンで検索すると面白い
0413名前は開発中のものです。
2014/03/24(月) 21:27:07.06ID:rE2XsGEWググっても場所がまちまちで
0414名前は開発中のものです。
2014/03/24(月) 21:41:34.76ID:AEJao4ULWindows8に標準でついてくるそうだ
0415名前は開発中のものです。
2014/03/24(月) 21:50:42.35ID:WjXmoSNL0416名前は開発中のものです。
2014/03/24(月) 22:39:54.92ID:PqJgwAnTそれかWindowsSDKに一緒に入ってる
この程度は自分で調べようぜ
0417413
2014/03/24(月) 22:44:31.69ID:rE2XsGEWありがとです
0418名前は開発中のものです。
2014/03/25(火) 09:41:15.88ID:KT+bOjyU↑ ↑ ↑ ↑ ↑ ↑
0419名前は開発中のものです。
2014/03/26(水) 11:37:26.78ID:+vTfvSPy1フレーム移動毎に、敵や敵の弾や壁との衝突判定をしていると
画面上に敵の弾が100個とかあったりするとかなり膨大な数ループ処理が必要な気がします。
一般的なゲームの場合、画面上で動いているオブジェクトは全て1フレーム毎に衝突判定をしているのでしょうか?
0420名前は開発中のものです。
2014/03/26(水) 13:20:48.84ID:47820mJUhttp://marupeke296.com/COL_2D_No8_QuadTree.html
0421名前は開発中のものです。
2014/03/26(水) 13:22:14.35ID:+vTfvSPyレスした後でそこ見つけたんだけど私の頭では理解が・・・(´・ω・`)
皆この概念でシューティングゲーム作ってるんですかね?
0422名前は開発中のものです。
2014/03/26(水) 13:23:52.42ID:ghUA5KPp今まで普通にやってたけど名前が付いてるの始めて知ったわ
ありがとう
0423名前は開発中のものです。
2014/03/26(水) 13:56:03.88ID:xWjmtvj1素人に解るレベルに噛み砕いてくれてるとこあればいいのに。
結局座標で判定して分割してたりする。俺。
0424名前は開発中のものです。
2014/03/26(水) 14:03:19.61ID:+vTfvSPyttp://flash.polig.daa.jp/?eid=1242167
今さっき見つけたけどここと同じやり方ですかね?
これならなんとなくわかる気がする。
0425名前は開発中のものです。
2014/03/26(水) 17:00:06.09ID:VxCnnAtl100個くらいなら問題にならないっていう指摘と
なぜ移動キーを押してる間しか当たり判定がないのかというツッコミと
0426名前は開発中のものです。
2014/03/26(水) 17:08:48.02ID:47820mJU0427名前は開発中のものです。
2014/03/26(水) 18:28:38.14ID:VxCnnAtl0428名前は開発中のものです。
2014/03/26(水) 20:24:20.53ID:Hvj0In47その嫌われ者キャラは素なの?
治した方がいいよ。この先も友達出来ないよ。
0429名前は開発中のものです。
2014/03/26(水) 20:29:33.08ID:fl0FfJGt時代やハードを問わない"基本"は力技というか、1フレームごとの全判定だと思うっす。
ベテランプログラマがざっくりと組んじゃうところじゃなければ、
とりあえずプロトタイプを作ってみて、そっから必要な機能を満たしつつ、
どんだけ不要な判定対象を省いて回数減らせるか、ってやり方が多い気はする。
負荷やループ数を気にしているのなら、最近の据え置き機や携帯ゲーム機の場合だけど、
C++使ってるなら、数万回のループ判定程度がボトルネックやオーバーヘッドになることは少なくて(余程複雑な判定をしてれば別)、
問題になるのは2D3D問わずグラフィックスコマンドの場合が圧倒的に多いと思う。
なので、研究目的とかじゃなくて今時のハードで遊べるものを作りたいというだけなら、
判定そのものはそこそこ効率化してれば十分だと思うお。
よくあるシューティング形式なら、>>423の考え方でも十分効率上がりまっせ。
0430名前は開発中のものです。
2014/03/27(木) 05:30:55.80ID:y42irIZJ>>423ならスクロールなし画面に入るサイズだから判定もせいぜい3000未満でしょ。
それなら普通にforループ回して十分だし、そこだけマルチスレッドにしても良い。
0431名前は開発中のものです。
2014/03/27(木) 05:42:21.29ID:66/qzmyK0432名前は開発中のものです。
2014/03/27(木) 10:43:42.33ID:LEeCMwpD「今どきのPCは高性能だからそんな事考えなくてもOK!」
じゃ会話にならないでしょ。
ていうか自分の環境を基準に考えるのは止めたがいいよ。
0433名前は開発中のものです。
2014/03/27(木) 11:05:32.54ID:tJdovPbY0434名前は開発中のものです。
2014/03/27(木) 12:17:49.28ID:68m9m0Mu私も>>425と同じ感想を持ったんだけど。
>>419が実際にそういう総当りをしてみて重かったから他のやり方を聞いてるなら>>432のいうとおりだけど、実際やってみたのかね?
そういう感じには読めなかったけど。
0435名前は開発中のものです。
2014/03/27(木) 12:21:35.48ID:3O8ksg+hあとは、シューティングゲームなら
「敵x敵、敵弾x敵弾、敵x敵弾の判定は不要だからしない」とかで
判定回数を減らせることがある
(もちろんその判定がシステム上必要ならやるしかないけど)
あと経験不足な人だと
A→Bの判定とB→Aの判定を別個にやっちゃってて
そのせいで速度が出ないってのもあるかも?
これを修正するだけで判定回数を半分にできる
0436名前は開発中のものです。
2014/03/27(木) 12:35:21.54ID:NuLp7Gqa馬鹿じゃないの?ほんと文章を文字通りにしか受け取れないんだね。
誰が100個限定の質問してんだか。どう見ても数多くのオブジェクトがあった場合の衝突判定の質問だろ。
お前以外は皆わかってそういう答え返してるのに、お前だけが100個という質問の中のどうでもいい部分に固執してるわけだがw
ここを10000個とでも書かないと分からんの?アホだろw
0437名前は開発中のものです。
2014/03/27(木) 12:56:33.60ID:68m9m0Muまじか。
想定されるオブジェクトの個数というのは重要な情報だと思ってるんだが、他の人はそうじゃないのか。
1個でも42億個でも対応できるようなやり方を毎回してるの?
100個って書いてあったらだいたい100個くらいを想定してるんだと思うのが普通だと思うが、そうでもないんだなぁ。
0438名前は開発中のものです。
2014/03/27(木) 12:59:39.14ID:LaHWZeJXつまり、相手するなカス荒れるから
0439名前は開発中のものです。
2014/03/27(木) 13:17:49.49ID:462b1dLf0440名前は開発中のものです。
2014/03/27(木) 14:43:18.93ID:0LKTz7/02Dの当たり判定の処理は軽いから、マンコでも同じ事。 やってみ
0441名前は開発中のものです。
2014/03/27(木) 15:10:53.94ID:2L1CAOZz0442名前は開発中のものです。
2014/03/27(木) 15:51:52.80ID:tJdovPbY1ループあたりの移動速度を半分にして、ループ数を2倍回す。
0443名前は開発中のものです。
2014/03/27(木) 19:51:32.13ID:D4N08/V9現在フレームをnとした場合、n-1フレームの情報を保持しておいて、nフレームとの線分を引く。
あるいは現在の位置と速度から予測されるn+1の未来予測位置とnフレームとの線分を引く。
この線分が障害物と接触していたら接触した際の処理へ移行するように書いておく。
0444名前は開発中のものです。
2014/03/27(木) 20:07:57.55ID:LEeCMwpDPCスペックを限定してないのにその回答は無意味だってば。
0445名前は開発中のものです。
2014/03/27(木) 21:19:31.28ID:tdrncXK10446名前は開発中のものです。
2014/03/27(木) 22:05:12.78ID:LEeCMwpD0447名前は開発中のものです。
2014/03/28(金) 00:17:11.93ID:49hdQnYh大丈夫かよ…
0448名前は開発中のものです。
2014/03/28(金) 00:45:18.83ID:1M6UES2K俺は>>442じゃないけど大丈夫だと思う、むしろよくある手法じゃない?
アクションの通信対戦で処理落ちする時の同期なんかで使われるのも似たようなやり方あるし
0449名前は開発中のものです。
2014/03/28(金) 00:52:56.05ID:bd0QOyAi「こいつら良いマシンで開発してるんだな…」って嫉妬してたw
最近はPCの性能頭打ちでそういうのなくなったからいいよねww
0450名前は開発中のものです。
2014/03/28(金) 00:56:09.52ID:cOG2DjHyスレチかもしれんがUnityの物理演算部分の判定は秒間1000ループが推奨されてるんだからわりと平気なんじゃね?
0451名前は開発中のものです。
2014/03/28(金) 12:11:43.53ID:/j8PQ+jUPoint before, after; // 前回の座標、今回の座標
int count = 8;
int ix = (after.x - before.x) / count;
int iy = (after.y - before.y) / count;
Point pos;
pos.x = before.x;
pos.y = before.y;
for(int i=0; i<=count; i++){
bool is = collision(pos.x, pos.y); // 当たり判定
if(is) break;
pos.x += ix;
pos.y += iy;
}
count, ix, iyの値をもう少しきちんと平方根使って計ったほうがいいけど
0452名前は開発中のものです。
2014/03/28(金) 12:15:19.93ID:/j8PQ+jU60fpsでマウス判定じゃ全然足りなくて線が破線になるし
0453名前は開発中のものです。
2014/03/28(金) 13:16:45.63ID:UXW64F/+あとそれバグ持ちだな
0454名前は開発中のものです。
2014/03/28(金) 22:13:02.97ID:LlNhW3Yyコピペとはいえ毎回見るのが嫌になってくるよな
ライブラリとかラッパー使えば済むんだろうけど理解するのは面倒だし
0455名前は開発中のものです。
2014/03/28(金) 22:28:44.11ID:cOG2DjHy会社では無理だけど自分で作るようなら短縮用のヘッダーと関数とか自作しない
理解すればいろいろと便利だし
0456名前は開発中のものです。
2014/03/29(土) 09:51:35.35ID:Pyp/eAfy都度調べてコピペするより精神衛生的に良い
0457名前は開発中のものです。
2014/03/29(土) 13:22:18.51ID:CYqmosk/老害にはコードスニペットの概念がないからなぁ。
0458名前は開発中のものです。
2014/03/29(土) 21:21:25.19ID:2TsE/LLz0459名前は開発中のものです。
2014/03/29(土) 21:48:25.68ID:fyBJTsa/0460名前は開発中のものです。
2014/03/30(日) 00:08:10.54ID:mb7Whzhesystem関数は使ってみたんですがdos窓も一緒に出てきてしまいます
0461名前は開発中のものです。
2014/03/30(日) 00:14:44.76ID:3L4NtrMFCreateProcessだとDOS窓出なかった気がする
0462460
2014/03/30(日) 01:27:38.78ID:mb7Whzheありがとうございます
0463名前は開発中のものです。
2014/04/01(火) 17:00:08.51ID:1bXVipahこれありすぎて吹く
0464名前は開発中のものです。
2014/04/01(火) 17:13:22.13ID:mqOcie7s「今回作ったシステム流用すればいくらでもゲーム作れるぜ!:
と毎回思うんだけど、毎回まるまる作り直してるという……。
0465名前は開発中のものです。
2014/04/02(水) 10:41:39.05ID:QH7QljdQ0466名前は開発中のものです。
2014/04/02(水) 11:13:17.38ID:gG8rIG0W0467名前は開発中のものです。
2014/04/02(水) 12:36:37.68ID:Y76EY8s4別にそういう専門知識もってないから経験則になるけど。
酔いやすい人と酔いにくい人がいるけど、酔いやすい人は三次元把握能力の高い人だと思う。これはどうしようもない。
俺は酔いにくい側の人間なんだけど、それでもあるゲームではめちゃくちゃ酔った事がある。
そのゲームはTPSなんだけど「キャラの背後に壁などの障害物があると、それが邪魔にならないよう自動でアングルが変わる」というものだった。
「背後の障害物が透明になる」なら酔わないのに「勝手にアングルが変わる」だと凄まじく酔う事がわかった。
車の運転でも、「運転してる人は酔わない」と言われてる。つ
まり「プレイヤー本人の意思とは関係なくアングルが変わる」と酔う事になる。
他にも、急激にアングルが変わる(目の処理が追いつかない)でも酔うと思われるので、ゆっくり視点を動かす工夫をすればいいのではないだろうか。
あと視点の方向を変えると遠景ほど早く動いて見えるから、遠景はあまり注視できないようにぼかすとか彩度を落とすとかするといいかもしれない。
0468名前は開発中のものです。
2014/04/02(水) 16:48:09.93ID:RKxy3xMo0469名前は開発中のものです。
2014/04/02(水) 17:07:31.12ID:05HXNQtD0470名前は開発中のものです。
2014/04/02(水) 20:57:32.09ID:SSqz5QAv0471名前は開発中のものです。
2014/04/02(水) 21:38:55.24ID:Y76EY8s4上でも言ったが俺は酔いにくい人間で、モニタに映る映像を「一枚の絵」としか認識してないんだよな。
頭のなかで3次元空間を構築しながら見ていない。
ガンブレードNYの動画を見てた時、ぐりんぐりん視界が動くのにまったく酔わなかったんだが、
ふと「一枚の絵としてしか認識してない自分」に気づいて、
頭のなかで方位を意識しながら(3次元空間を意識しながら)見なおしてみると、あっという間に気分が悪くなったw
でもこれは個人の話であってゲームをどうやれば酔いにくくできるかって技術とは別の話だよね。
0472名前は開発中のものです。
2014/04/02(水) 22:03:56.84ID:yy3b+VRk酔うのが不思議でならない
0473名前は開発中のものです。
2014/04/02(水) 22:29:30.77ID:sgFJO2N4カメラの位置と回転中心位置の関係が悪い
カメラ視野角の調整が悪い
カメラ回転の応答速度が遅い
0474名前は開発中のものです。
2014/04/02(水) 22:32:07.27ID:6rTn9j+mFoVが狭すぎてゲロゲロ
カメラの動きでゲロゲロ
この辺りは既に言われてるようなので、あとはレベルデザインかな。
ぐぐったら自レスが引っかかったのでリンクを貼っとく
http://unkar.org/r/gamedev/1223550808/423-452
> 452 : 名前は開発中のものです。[sage] : 2008/12/27(土) 00:34:33 ID:quq8i6DN
> >>423
> 遅レスで更に>>425、>>426と微妙にかぶる内容だが
>
> (1)FOVの問題
> 酔いの原因は様々だが、FOVの調整で改善される場合は多い
> プレイヤーの視野角を考えずに3D画面の投影変換行列を設定すると酔いやすい
>
> ・プレーヤー視点とディスプレイ間の距離
> ・ディスプレイの寸法
>
> 以上のパラメータから違和感の少ないFOVを探ることができる
> まぁ、既存FPSのFOV値を参考にするほうが手っ取り早いかもな
>
> (2)レベルデザインの問題
> 閉鎖空間を多用するマップは酔いやすい。これは(1)の問題との組み合わせでより悪化する
> FOVをどんなに調整しても吐く奴は吐く。対策としては開放空間(屋外)を多用する方法がある
> ただし、閉鎖空間の戦いをウリにするゲームではこの対策はとれない
>
> BFシリーズはオーケーだけどDOOM3とかHLシリーズは駄目、みたいな人に対処するのは困難
> 狭くて暗い閉鎖空間のスポーツFPSを作るつもりなら酔いやすいユーザーは切り捨てたほうが楽
0475名前は開発中のものです。
2014/04/02(水) 23:05:42.17ID:6rTn9j+m>カメラ回転の応答速度が遅い
これ、見落とされがちだけどあるよね
ARMAでマウススムージングがデフォルトでONだったので視線の動きに
遅延が生じて気分悪かった。スムージングを切ったら何ともなかった
0476名前は開発中のものです。
2014/04/03(木) 00:12:27.55ID:d8bZaMxb着地判定というか、移動する床みたいなのってどうやってるんだ?
飛行船が上に進んでる時に急制動で下向いたら飛行船に乗ってたキャラクターが跳ねるチンフワ現象を取り入れたいんだけど
素直に物理エンジンに託した方がいい?
0477名前は開発中のものです。
2014/04/03(木) 00:41:04.11ID:paQ+FHve正確じゃなくてもいいなら
飛行船が上に進んでいるときにキャラクターの下と飛行船の着地できる部分が接触してるか判定して
接触してるなら飛行船の上の移動量とキャラクターの上の移動量を比べて飛行船の移動量の方が大きいなら
キャラクターの上の移動量を飛行船の上の移動量に書き換える
こうすれば飛行船がいきなり止まったりしたときにふわって感じで浮くことは可能
ただ、違和感はある落ち方になると思うから物理エンジンをお勧めしとく
0478名前は開発中のものです。
2014/04/03(木) 01:07:35.19ID:d8bZaMxbわかったありがとう
0479名前は開発中のものです。
2014/04/04(金) 02:07:12.66ID:iGGKX1Rjさすがチンフワ総合スレッド
0480名前は開発中のものです。
2014/04/05(土) 17:41:08.13ID:Wu1wSHql関数分けまでは普通に出来るんだけど、メンバ変数がある以上クラス分けしたくても出来ないし・・・
0481名前は開発中のものです。
2014/04/05(土) 18:16:26.54ID:cqmzi82f○○をメンバ変数に置いて、○○を操作する関数をメンバ関数にしたクラスにする
ツッコミどころ多そうだけど大雑把にこんな原則で大体どうにかなるんじゃないかな
0482名前は開発中のものです。
2014/04/05(土) 20:43:25.01ID:nUDfpyEY1.判定対象を選択
2.判定対象の座標と大きさ、形を取得する
3.大きさや形に合わせて判定する
4.当たってたらhpをダメージ分引いたりノックバックさせたり双方の属性に合わせていくつかの処理に分岐する
5.繰り返し
クラスを使ってオブジェクト指向的に処理する
1.対象を選択
2.対象に「お前この判定対象と当たってなる?」と確認する
3.繰り返し
ここまで書いて何を言いたかったか忘れたのでこのまま投稿する
0483名前は開発中のものです。
2014/04/05(土) 20:58:16.49ID:TIaN2lJ/変数として持つデータに依存する部分はメンバ関数にしたいけど
std::stringみたいになんでも入れちゃうのと
マイナーな機能は引数を取る静的関数や別クラスに分けるかはまた悩む
0484名前は開発中のものです。
2014/04/05(土) 21:40:17.97ID:nUDfpyEYゲームなら特に
0485名前は開発中のものです。
2014/04/05(土) 22:14:07.33ID:k4ryh3Xyええー、そんな感じなの。想像してたのと違うなぁ。
あ、俺は480じゃないけど似たような問題に詰まってる者です。
0486名前は開発中のものです。
2014/04/06(日) 01:53:43.72ID:E+ECXvrWそれだけで厚めの本が出るぐらいだし・・・
0487名前は開発中のものです。
2014/04/06(日) 12:16:47.72ID:kDoD0j2F0488名前は開発中のものです。
2014/04/06(日) 16:07:09.03ID:4sjYlVDb>>480,>>485
完成させてからのリファクタリングの段階ということなら具体的に説明
できるだろうしコード片をうpってもいいだろうし、お話になるのでは
話の振り方次第ですお
0489名前は開発中のものです。
2014/04/06(日) 16:50:44.66ID:MlcK3xADclass Player
{
public:
Player();
void update()
{
aClass_.update();
bClass_.update();
}
private:
A aClass_;
B bClass_;
};
0490名前は開発中のものです。
2014/04/06(日) 16:51:17.53ID:MlcK3xAD{
public:
A();
void update()
{
//メンバ変数とBクラスのx_が必要
}
private:
int a_;
int b_;
int c_;
};
class B
{
public:
B();
void update()
{
//メンバ変数とAクラスのa_が必要
}
private:
int x_;
int y_;
int z_;
};
0491名前は開発中のものです。
2014/04/06(日) 17:03:11.51ID:sV4Btc1Cclass Aの前にclass B;を書けば良いんじゃね?
0492名前は開発中のものです。
2014/04/06(日) 17:10:52.22ID:7eM4W795とりあえず動作すれば良いってだけならクソ回答としてupdateの引数にそれぞれ渡してあげる
渡し方はゲッターとかクソだけど
0493名前は開発中のものです。
2014/04/06(日) 17:34:28.11ID:tqEQPRwfPlayerのupdateかprivateにupdateA,updateB作ってべた書きとか
AとBくっつけるとか
俺はどうしても他で必要にならない限り分けない、
enemyで必要とかになればそもそも一つ前にcharacterとか作って両方に持たせるとか
0494名前は開発中のものです。
2014/04/06(日) 19:31:11.73ID:3nuwa43PクラスAとBが相互依存してるから設計しなおす
0495名前は開発中のものです。
2014/04/06(日) 20:11:48.21ID:4sjYlVDb@AとBは合体だ!フュージョン!
AAとBで壁パスだ!ダブルディスパッチ!
BPlayerが面倒見ろ!メディエーター!
AとBが具体的に何なのか分からないとアレだよな
プレイヤーの所有物で、相互作用(値のやり取り)がある二つのもの。
しかし、プレイヤーとの間に作用はない。
ダウジングのアレとか?
0496名前は開発中のものです。
2014/04/06(日) 20:19:27.91ID:kDoD0j2Fトリガーとなるプレイヤー一人が発動したら周囲のプレイヤーの合体魔法用のメソッドを呼ぶ
メソッドの中ではそのプレイヤーのmpを減らしたりクールタイムを追加したり硬直したりする
トリガープレイヤーはそのメソッド呼ぶだけだから、もしかしたらプレイヤーによって処理は違うかもしれないが、とにかくそのプレイヤーは合体魔法に参加した
メソッドの返り値で成否を確認してもいい
その複数のプレイヤーの中心の座標に合体魔法を発動するなら、その計算処理はトリガープレイヤーがやる
0497名前は開発中のものです。
2014/04/06(日) 20:22:50.98ID:kDoD0j2FAとBの使用用途を書け
シチュエーションによって考え方が変わり、考え方に依存するからオブジェクト指向が最も効率いいとされて普及してる
0499名前は開発中のものです。
2014/04/07(月) 12:25:22.90ID:/OCJvUrMちゃんと.hと.cpp分けろよ
0500名前は開発中のものです。
2014/04/07(月) 20:27:14.10ID:bPq5EneUA…キー入力の処理
↑B.x_ ↓A.a_
B …キー入力後の移動処理と当たり判定
A→Bのデータの流れは分かるが、B→Aのデータの流れは何だ?
フォースフィードバック?
俺はこういう小出しの後出しジャンケンは別に気にしないけど
完成後のリファクタリングの段階なら「具体的に」書けるっしょ?
そろそろ誰かがキレると思うよ
0502名前は開発中のものです。
2014/04/09(水) 00:58:15.38ID:wd1GU5kL面倒くさくてもC++としてはちゃんとヘッダとソースは分けるべきだよ
0503名前は開発中のものです。
2014/04/09(水) 01:28:10.85ID:f0hevqdxあるべき論なんて一考にも値しない。
アホは、何故そう考えるのか理由を述べない。
0504名前は開発中のものです。
2014/04/09(水) 08:02:26.21ID:zim/sso+0505名前は開発中のものです。
2014/04/09(水) 10:52:16.89ID:uf/6C2tB経路探索だけで市販のゲーム風に出来るの?
0506名前は開発中のものです。
2014/04/09(水) 12:11:54.87ID:0loekIA0順番にそれを通過するように組む……というのが単純かな?
0507名前は開発中のものです。
2014/04/09(水) 12:53:17.52ID:HhpB/vqN0508名前は開発中のものです。
2014/04/09(水) 13:04:35.78ID:6ESwZ9mm多少ぶつかってもペナルティがほとんどないとか
ありえない速度でカーブ曲がってたりとか
0509名前は開発中のものです。
2014/04/09(水) 13:16:31.51ID:ZCvd+vVA0510名前は開発中のものです。
2014/04/11(金) 00:20:28.36ID:GEtB1yKl|∧
/
/
ただなぞるよりも (^o^)/
/( )
/ / >
(^o^) 三 選んだ自由に
(\\ 三
< \ 三
..\
(/∀・) 傷付くほうがイイ!
( /
/く
0511名前は開発中のものです。
2014/04/12(土) 22:13:32.52ID:Zyf8FLOE0512名前は開発中のものです。
2014/04/12(土) 23:44:55.21ID:0ybV74Ha0513名前は開発中のものです。
2014/04/13(日) 10:10:40.70ID:/fZAahnLググってもそれらしき情報が出てこないんだけど、具体的に方程式的なのってあるの?
0514名前は開発中のものです。
2014/04/13(日) 10:15:03.46ID:WZFk6ORNこれじゃないの?
0515名前は開発中のものです。
2014/04/13(日) 10:22:56.57ID:P+5kfwmh0516名前は開発中のものです。
2014/04/13(日) 14:11:27.24ID:8it2YQcZ0517名前は開発中のものです。
2014/04/20(日) 07:06:07.84ID:Lsg8M/g2出来るならどんな感じのソースになるのか教えてくれるとかなり助かる
0518名前は開発中のものです。
2014/04/20(日) 10:51:05.10ID:b2XGGGld0519名前は開発中のものです。
2014/04/20(日) 14:59:59.27ID:It9vI7xg0520名前は開発中のものです。
2014/04/20(日) 16:02:57.62ID:Lsg8M/g2それで大丈夫
まあさすがに回転してるのは無理だし・・・
0521名前は開発中のものです。
2014/04/20(日) 16:18:17.37ID:2PHJETXp上辺が相手の下辺をより上&&下辺が相手の上辺より下
を3軸分やればいいだけなのでは?
回転する直方体の衝突判定ってまるぺけになかったっけ?
0522名前は開発中のものです。
2014/04/20(日) 17:29:26.22ID:It9vI7xg直線上で線分同士が重なってるかどうか?という判定があって
単位、それを2回やったのが矩形同士の当たり判定だと考えれば良い。
そうすると、3次元や4次元(?)も、そのまま使えそうだろ?
0523名前は開発中のものです。
2014/04/22(火) 06:39:03.06ID:2qdEj7/z一応球体の当たり判定と線分の当たり判定でやってるんだけど、坂を下ろうとするとジャンプするように落ちていくっていう・・・
0524名前は開発中のものです。
2014/04/22(火) 07:04:26.37ID:Xs5gC1x8いいやつ教えてくれ。
0525名前は開発中のものです。
2014/04/22(火) 07:13:32.39ID:Ld5gvQeA斜めに移動させる
0526名前は開発中のものです。
2014/04/23(水) 20:54:31.77ID:wDU0qJca一つのループでswitchを使ってシーンを変えているのをいろんなサイトで見ますがこういう処理が当たり前なのでしょうか
0527名前は開発中のものです。
2014/04/23(水) 20:58:04.86ID:FTq0ixvH0528名前は開発中のものです。
2014/04/23(水) 21:00:21.88ID:zNP7HvPv理由は、ループは違っても共通のやること(キー入力とか画面出力処理)があって
そういうのを画面のループごとに別々に処理させてると管理が面倒だから。
(もちろん共通処理として関数化してはいたが、それでも面倒だった)
0529名前は開発中のものです。
2014/04/23(水) 21:36:36.02ID:wDU0qJcaなんですかそれ
>.528
なるほど
0530名前は開発中のものです。
2014/04/23(水) 21:48:10.54ID:a2O6zNfsループ自体は1つにして、そこから何らかの方法で振り分けるのが定番。
複数ループは即「やめとけ」って言われるレベル。
そこだけ守れば、あとはifで関数に投げるなり、switchで分けるなり、好きなようにすればいいと思うよ。
stateパターンについては、処理を振り分けるアルゴリズムの1つだけど
まあ、別にいいんじゃないかな。
0531名前は開発中のものです。
2014/04/23(水) 23:54:04.86ID:FTq0ixvHググれ
0532名前は開発中のものです。
2014/04/24(木) 08:45:54.28ID:wxyjU1yyYes
というか、君にループを分けるという発想を持たせた本かサイトか分からんが著者を呼んでこいぶっ飛ばしてやんよ
0533名前は開発中のものです。
2014/04/24(木) 09:15:53.69ID:1SkTvrzJ0534名前は開発中のものです。
2014/04/24(木) 09:46:36.37ID:XVAalfN1参考資料などがなかった場合、半分くらいは、
真っ先に思いつくのがループを個々に用意する方法のような気もする
0535名前は開発中のものです。
2014/04/24(木) 10:21:00.95ID:7sQk5lBbOSのフレームワーク含めてスレッドセーフな実装があまりない事にがっかりしたり
0536名前は開発中のものです。
2014/04/24(木) 11:59:52.01ID:1ftwUtauたかがシーン遷移でぶん回すループを、複数個所にコピペベースでおく意味がねー
0537名前は開発中のものです。
2014/04/24(木) 12:13:26.57ID:47DD1/Qn0538名前は開発中のものです。
2014/04/24(木) 12:53:05.17ID:1ftwUtau0539名前は開発中のものです。
2014/04/24(木) 13:22:18.45ID:fX1ni8oz0540名前は開発中のものです。
2014/04/24(木) 14:53:44.57ID:47DD1/Qn0541名前は開発中のものです。
2014/04/24(木) 16:29:40.03ID:LCot+zJdgoto?
0542名前は開発中のものです。
2014/04/24(木) 16:45:42.04ID:lgj86FWp0543名前は開発中のものです。
2014/04/24(木) 17:08:30.80ID:LCot+zJd0544名前は開発中のものです。
2014/04/24(木) 17:46:16.58ID:VQozCS4c0545名前は開発中のものです。
2014/04/24(木) 18:52:19.44ID:GSyZUE1jシーンの数が数十ってどんだけ大規模なゲーム作ってんのw
0546名前は開発中のものです。
2014/04/24(木) 19:03:46.70ID:AvrqiUr+ゲームというよりゲームエディタになってしまう
0547名前は開発中のものです。
2014/04/24(木) 19:18:31.92ID:wxyjU1yyゲームを作ってたつもりがエフェクトエディタが完成していた私のことをなぜ知っている
0548名前は開発中のものです。
2014/04/24(木) 19:23:13.77ID:47DD1/Qnドラクエ3程度
0549名前は開発中のものです。
2014/04/24(木) 19:36:08.29ID:7gC8mbT8その数十のループを1ソースにまとめるってとんでもないスパゲティだなw
完成すんのそれw
0550名前は開発中のものです。
2014/04/24(木) 19:54:33.85ID:1SkTvrzJ次回どのシーンを描画するのかポインタ返すってやり方の方がスマートじゃね?
0551名前は開発中のものです。
2014/04/24(木) 20:37:26.16ID:47DD1/Qn関数ポインタやクラスで分けるとあちこちに跳びまくるよね?ソレも嫌だから今のやり方でやってきた。
けどまあ、流れが判らなければ図を描けば済む話か。それでも、今の段階でやり直すのは……ん?
マップや戦闘のメインのシーンは今のままで良いな。サブのシーンの扱いは、直してみるかな?
ちょっと寝かしていたソースだが、色々と検討してみるか。
0552名前は開発中のものです。
2014/04/24(木) 20:41:28.50ID:XVAalfN1世の中にはディレクトリとか名前空間って概念があるから、便利なものよな
0553名前は開発中のものです。
2014/04/24(木) 20:55:45.26ID:7sQk5lBbクラス名なんて実装したいシーンの名前をそのままだから考える必要ないし
0554名前は開発中のものです。
2014/04/24(木) 22:24:05.32ID:/wenCDDH0555名前は開発中のものです。
2014/04/24(木) 22:35:04.46ID:1SkTvrzJ一人でコード組むなら図なんて書いたりしないからな
頭の中の仕様書通りにコード打つだけなんだから
0556名前は開発中のものです。
2014/04/24(木) 22:39:32.56ID:1SkTvrzJ0557名前は開発中のものです。
2014/04/24(木) 22:41:52.64ID:1SkTvrzJ背景に3Dフィールドを表示したまま半透明なステータス画面を描画したいとか
0558名前は開発中のものです。
2014/04/24(木) 23:29:46.37ID:/YmGGjJz0559名前は開発中のものです。
2014/04/24(木) 23:39:57.11ID:XVAalfN1その表現はちょっとおかしい気がする
いや言いたいことは分かるけどね?
0560名前は開発中のものです。
2014/04/25(金) 01:06:43.73ID:8lxSsrEc0561名前は開発中のものです。
2014/04/25(金) 06:16:12.48ID:GoYRAt3T0562名前は開発中のものです。
2014/04/25(金) 07:46:12.69ID:XsfFQEHlいいウィットだな
0563名前は開発中のものです。
2014/04/25(金) 09:30:36.62ID:jXAfeA6Fこういうのどうやって実装すんの?説明してるようなサイトがあったら教えてちょーだい
0564名前は開発中のものです。
2014/04/25(金) 09:42:20.41ID:XsfFQEHl0565名前は開発中のものです。
2014/04/25(金) 09:54:22.08ID:IVfFtFPzひらしょー本、セガ本
http://www.shuwasystem.co.jp/products/7980html/2118.html
http://www.shuwasystem.co.jp/gpro-sp/index.html
0566名前は開発中のものです。
2014/04/25(金) 10:04:41.29ID:jXAfeA6F「その本はプログラマになる前じゃなくてなった後に読む本だ」って言ってた
0567名前は開発中のものです。
2014/04/25(金) 10:18:56.59ID:cWxmDdU50568名前は開発中のものです。
2014/04/25(金) 12:50:45.98ID:bu2wQqL4というか、そもそもデバッガでソース追えないという話に帰結しそうなのだが。
関数の中とかに「飛ぶ」訳ですし。
今後の事もあるから、「飛ぶ」事に慣れるのが肝要だと思いますけどね。
0569名前は開発中のものです。
2014/04/25(金) 15:11:16.15ID:uQbX0MMa0570名前は開発中のものです。
2014/04/25(金) 15:22:16.96ID:5DdHErYn著者:大槻有一郎
http://www.rutles.net/products/detail.php?product_id=392
かなりの素人向け、図書館にあるかもしれない。
内容はこれ、http://www.rutles.net/download/217/
0571名前は開発中のものです。
2014/04/25(金) 16:40:46.26ID:jXAfeA6F流れの中で言ってたから、難しいというか本に頼らずともネットで情報集めてとにかく作れって感じだった。
その人自体もオブジェクト指向とか意味わからんでゲーム作ってるとか言ってるけど、
同人だけじゃなくコンシューマ機のゲームプログラムを1人で担ってるような人だし、
要は本見て文法覚えるより、汚くていいからとりあえず作品完成させろってことかと。
0572名前は開発中のものです。
2014/04/25(金) 17:46:46.24ID:WhIg+aCPとりあえず完成させろってのはその通りだな
ここでウンチク垂れ流してても自分の作品は完成させたことないってやつは多そう
そう、私の事ですorz
0573名前は開発中のものです。
2014/04/25(金) 18:37:51.58ID:kjeLMb9X0574名前は開発中のものです。
2014/04/26(土) 01:38:49.39ID:jf1SN+DQソースコードはネット上にあがってるぞ
0575名前は開発中のものです。
2014/04/26(土) 13:10:08.96ID:2tKTewnx0576名前は開発中のものです。
2014/04/26(土) 19:33:37.45ID:x5oOyDOe・フィールドシーン
・戦闘シーン
・アドベンチャーシーン
・シナリオ準備シーン
みたいな感じに大別されるよね
シーンはキー入力の挙動も変わるから
それも内包しないといけないよね
0577名前は開発中のものです。
2014/04/26(土) 19:37:39.56ID:IEmpvB3E0578名前は開発中のものです。
2014/04/26(土) 19:58:38.34ID:3cite/BRこれがPC98ロードランナーのチャートで、
イニシャライズ以下がゲームループになってる。
0579名前は開発中のものです。
2014/04/26(土) 20:05:42.07ID:2tKTewnx俺が思ってるデモ画面と別のものかもしれんけど。
>>576
当たり前っちゃ当たり前だけど、
フレームワークなりハードウェアなりから、キー情報を取り出したり使いやすいよう加工するのは共通部分で、
右キーで1マス動かすとか、そういう部分は各シーンのロジックで処理するのが良いんじゃない?
>>577
メニューって、「じゅもん」→「メラ」→「スライムA」 みたいな
シーン中に行われる多層型のメニューのこと?
0580名前は開発中のものです。
2014/04/26(土) 21:29:25.57ID:5LBrFF8V優先度とかそのキーで処理済みかの情報が欲しいから
シーンや入力が欲しいオブジェクトが欲しいキーを入力マネージャに登録しておいて
優先度の高い特殊なキーの組み合わせだけ先に処理して
あとは上位に位置するオブジェクトからキーを拾って処理して未処理は下に投げるとか
WindowsのWM_CHARを参考にしたキー処理終わってから各Updateみたいな事になってるけど
重複する事もあるキー入力の切り分けをシンプルに実装する方法ないかな
0581名前は開発中のものです。
2014/04/26(土) 22:11:57.41ID:x5oOyDOe0582名前は開発中のものです。
2014/04/27(日) 03:54:19.08ID:WYXfeo+Bclass Parent : UI {
UI* child;
void update(Event* e){
// 特殊キー
bool isCopy = Key::isHold(Key::LCtrl) && Key::isHold(Key::C);
// 子コンポーネント先
child->update(e);
// 子コンポーネントでキー入力が確定した
if(e->isKeyEvent == false) return;
// このコンポーネントのキー入力
bool isThis = Key::is ... ;
}
};
class Child : UI {};
0583名前は開発中のものです。
2014/04/27(日) 10:28:25.38ID:C+qpjQzlポップアップメニューはモーダルなインタフェースだから
ある1つのオブジェクト(または選択されたオブジェクト群)を集中して操作しているのに
関係がないオブジェクトを操作ができるのはおかしくない?
0584名前は開発中のものです。
2014/04/27(日) 10:46:42.01ID:w1gNzEbHfpsでよく利用されてるポップアップする選択形式のウィンドウの事でね。
wasdで移動しながらメニュー表示キーを押す事でソレが表示され、マウスカーソルでメニュー選択できる、みたいな。
とりあえず>>582で問題ないと思うけどね。
0585名前は開発中のものです。
2014/04/27(日) 18:14:34.21ID:Pq1XXwa+親は欲しくて子供では未使用のキー情報取りたくとも来なくない?
0586名前は開発中のものです。
2014/04/27(日) 18:30:43.78ID:ZxV1P0nx0587名前は開発中のものです。
2014/04/27(日) 18:38:37.60ID:Pq1XXwa+メニューの選択を動かす矢印やショートカット等の何らかのキー押したら
移動のキー処理が省かれ、結果移動が止まる
0588名前は開発中のものです。
2014/04/27(日) 19:14:17.90ID:ZxV1P0nxあんまりPCでゲームやらないので分からんのだけど、市販ゲームだとキーアサインはどうなってるのかな。
メニューを開いてない状態で使えるキー(デフォルトだとWASDとか?)は、メニュー画面で何の処理にも使われないような感じ?
0589名前は開発中のものです。
2014/04/27(日) 19:44:36.31ID:DG4EJccZ0590名前は開発中のものです。
2014/04/27(日) 19:59:45.12ID:8WD0svuP知らないとこにゲームを作るなんてアホなの
LINEをやったこと無いのにLINEスタンプを作って儲けようとするアホと一緒
0591名前は開発中のものです。
2014/04/27(日) 20:22:36.88ID:ZxV1P0nx全く意味は分からんが、何か気に触ったようなのでスマン
0592名前は開発中のものです。
2014/04/27(日) 21:47:11.67ID:zcnpepzc自キャラの位置と壁の位置を二次元配列で管理できるので作れるのですが、
アクションゲームのように、キーを1回押したら数ピクセルしか進まないような
ゲームの場合、マップチップエディタでマップを作った場合、衝突判定はどうするのでしょうか?
0593名前は開発中のものです。
2014/04/27(日) 22:33:28.11ID:vcLDHUdb0594名前は開発中のものです。
2014/04/27(日) 23:24:50.87ID:ZxV1P0nxソース見てみないと分からんけど、今まで1対1で対応するような当たり判定しかやってなかったので
そのままでは応用が効かないって話じゃない?
>>592
こういう場合に昼用となるのは、ある範囲とある範囲同士が、
座標上で重なっているかどうかをチェックする、という処理が必要となる。
少し前にも似たような話題があったが、
まず1次元上で、線分Aと線分Bが重なっているかどうかを判定する処理を考えてみよう。
+---- A ----+
0----------------------------------------X
+-------- B --------+
答えを言ってしまうが、Aの右端がBの左端より右側」にあり、Bの左端がAの右端より左側にあるとき
線分AとBは重なってると言えるのが分かる。
これで少なくともX軸から見た時に重なって見えるかどうかを判定することが出来る。
じゃあこれをもう一度、Y軸に対してやれば、結果として重なってるかどうか分かると思わないかい?
一応、この判定には欠点があったりするけど、そのへんは詳しい諸兄に任せる
0595名前は開発中のものです。
2014/04/27(日) 23:39:37.39ID:+r7oKZO8もっと複雑な話かと思った。
マップチップでブロック単位(要するに矩形判定のみ)しかしないんだったら
593の言うとおり2次元配列管理でいいんじゃないかな。
座標をマップチップのサイズ(ピクセル)で割れば配列の座標は出る。(小数点以下切り捨て)
たとえばマップチップのサイズが 16*16 でマップデータが二次元配列に格納されてるとしたら
(100,150) の部分は二次元配列でいう (6,9) の部分という事になる。
あとはRPGなどと同じように衝突判定すればいい。
0596名前は開発中のものです。
2014/04/27(日) 23:47:48.15ID:zcnpepzcありがとうございます!
>座標をマップチップのサイズ(ピクセル)で割れば配列の座標は出る
この考えが欠けてました。言われれば当たり前のことなのに1人で悩んでると全然思い浮かばない(´・ω・`)
0598名前は開発中のものです。
2014/04/28(月) 09:50:59.01ID:GzOhtwBz壁と自キャラが重ならないようにするにはちょっと工夫いるんじゃない?
例えば自キャラの上下左右全部で衝突判定するとか
0599名前は開発中のものです。
2014/04/28(月) 14:28:53.40ID:uu2sZY8y自分の位置より進行方向1ブロック分をチェックして障害物なら動かなくすればいいだけ。
0600名前は開発中のものです。
2014/04/28(月) 14:31:26.43ID:uu2sZY8y上と左に関しては進行方向1ピクセル分だった。
0601名前は開発中のものです。
2014/04/28(月) 19:55:37.77ID:BBr+Jrn/アクションゲームでそういう処理をするゲームは少なそうだが
0602名前は開発中のものです。
2014/04/29(火) 00:40:51.84ID:EMV53Qmd大昔にタスクシステムスレだったかSTGスレだったかにこんな感じのソース
(微妙に違うかもだが)を貼ったが、別にゴチャゴチャ言われなかったけどな
因みに同人STG
int APIENTRY _tWinMain(HINSTANCE,HINSTANCE,LPTSTR,int)
{
try{
boost::shared_ptr<GAMEENV> gameenv(new GAMEENV); //D3D,SOUND,INPUT,USERDATA,etc
boost::scoped_ptr<SCENE> logo(new LOGO(gameenv)); //ロゴ画面
boost::scoped_ptr<SCENE> demo(new DEMO(gameenv)); //デモ画面
boost::scoped_ptr<SCENE> title(new TITLE(gameenv)); //タイトル画面
boost::scoped_ptr<SCENE> config(new CONFIG(gameenv)); //コンフィグ画面
boost::scoped_ptr<SCENE> stage1(new STAGE1(gameenv)); //ステージ1
(…中略…)
boost::scoped_ptr<SCENE> stage8(new STAGE8(gameenv)); //ステージ8
boost::scoped_ptr<SCENE> ending(new ENDING(gameenv)); //エンディング
logo->Run(); //ロゴ画面再生
0603名前は開発中のものです。
2014/04/29(火) 00:42:06.52ID:EMV53Qmddemo->Run(); //デモ画面再生
switch(title->Run()){ //タイトル画面再生
case TITLEOPTIONTYPE_CONFIG: //オプション画面再生
config->Run();break;
case TITLEOPTIONTYPE_GAMESTART //ゲームスタート
do{
if(stage1->Run() == STAGESELECTTYPE_GAMEOVER)break;
(…中略…)
if(stage8->Run() == STAGESELECTTYPE_GAMEOVER)break;
ending->Run(); //エンディング画面再生
}while(0);break;
}
}
}catch(...){return EXIT_FAILURE;}
return EXIT_SUCCESS;
}
0604名前は開発中のものです。
2014/04/29(火) 01:03:59.54ID:T7NavjR1バカが書いたコードだと一目で分かる。
面接でこれ持ってきた奴がいたら不採用…と言いたいけど
この程度のバカが偏差値65クラスなわけで
次頭があれば徹底的に叩きなおすことを前提で採用、ってなるレベル。
0605名前は開発中のものです。
2014/04/29(火) 01:31:18.44ID:l2CWKjf4批判だけなら誰でも出来る
0606名前は開発中のものです。
2014/04/29(火) 01:46:17.29ID:EMV53Qmdhttp://pc11.2ch.net/test/read.cgi/gamedev/1227748699/181-
当時は高専の学生でしたので
0607名前は開発中のものです。
2014/04/29(火) 01:49:34.15ID:T7NavjR1あー、それわかる!
高専生感がぷんぷん臭う。
俺の職場は理系院生が採用の中心だから
君のコード見ると偏差値70以下!って判定を下しちゃうんだよね…。
0608名前は開発中のものです。
2014/04/29(火) 02:13:49.38ID:EMV53Qmd0609名前は開発中のものです。
2014/04/29(火) 02:16:22.74ID:ZoGLF8y+大してシーンも多くないゲームなら充分充分
パターンとかはもっと規模が大きくなって
制御構文使ってたら死ぬ時に使う物だと思うのだが
ということで誰かstateとstrategyの違いを教えてくださいな
ググってもイマイチ腹に落ちなくてなあ…
0610名前は開発中のものです。
2014/04/29(火) 03:18:14.89ID:51TE7qv/これが偏差値70以上の力だと言うのか・・・
0611名前は開発中のものです。
2014/04/29(火) 08:43:51.10ID:7WDDZUtTつまり>>528って事だろ。
ところでupdate()とdraw()に分けないのかな。
コンテンツロスト時の再描画とか、各シーンで個別に実装とかだるいっしょ。
0612名前は開発中のものです。
2014/04/29(火) 10:25:45.81ID:EMV53Qmd当時のソースは実家のPCに眠ってるのでうろ覚えなんですが、D3D9などの
デバイスロスト時の対応などはGAMEENVクラスに押し付けてました
描画と、ゲーム内時間発展のサイクルは独立。フレームスキップしてました。
描画は60⇔30⇔15[fps]の半固定。
時間発展の刻み幅は1/60[sec]固定。シミュレーション部分の計算自体は
とても軽かったので。あとはリプレイデータの都合。デバッグ時の巻き戻し
や早送り(任意時点へ移動)してたので
0613名前は開発中のものです。
2014/04/29(火) 10:41:35.55ID:EMV53Qmd>これdemo->Run()の中に別のゲームループがあるって事になるんだろ。
>つまり>>528って事だろ。
それぞれにゲーム内の時間発展を計算するサイクルがありましたね。
そういう意味ならそうなんだと思います。ゲーム固有の定石とやらは
よく知りません
0614名前は開発中のものです。
2014/04/29(火) 11:00:02.81ID:R32lOXpJ神様 綺麗なコードで完成させられる人
人間 汚いコードで完成させられる人
=================( 越えられない壁 )====================
家畜 汚いコードで完成させられない人
ハエ 綺麗なコードで完成させられない人
ハエに出来るのは人間の邪魔だけと言っていて、なるほどなとリスナー達感心しきりでした。
ID:T7NavjR1見ててこの事思い出しましたね
0615名前は開発中のものです。
2014/04/29(火) 11:23:57.20ID:k/FZV1V1std::unique_ptr<Scene> scene = new なんかのシーン();
while(1){
scene->update();
scene->draw();
if( scene->isEnd() ) {
scene = std::move(scene->getNext());
}
}
ってやってそれぞれのシーンが次の遷移先返すようにしました
switchを意地でも使いたくてこんな形になった
実際switchの方がよく使われるものなの?サンプル探してもswitch使っているのしか見当たらないから困ってる
0616名前は開発中のものです。
2014/04/29(火) 11:24:47.17ID:t5QADVCcやるじゃんw
0617名前は開発中のものです。
2014/04/29(火) 12:27:00.81ID:CXcBKCf+多分だけど、
if(関数に分けずそのまま羅列) → if(関数分け) → switch → stateパターン
……みたいに進化していくんだと思う。
単に自分がそういう順番でステップアップしたってだけなんだけどさ。
仮に自分が教えるなら、stateパターンによるシーン遷移は後回しにするかな
0618名前は開発中のものです。
2014/04/29(火) 12:35:06.95ID:CXcBKCf+シーン遷移をStateパターンで行う方法についてなんだけど、「シーン遷移しないとき」って、どうしてる?
(1) nullを返す
(2) thisを返す
(3) シーン遷移関数を用意しておき、それが呼ばれなかったとき
(4) その他
自分は(2)で、nullを返すときはゲーム終了ってことにしてる。
一般的なStateパターンなら(1)かなあ。
0619名前は開発中のものです。
2014/04/29(火) 12:40:34.16ID:5MYZPLM5なるほどthx. sceneの引数でgameenv貰ってるね。
シーン遷移の実装はシーン側は知る必要ないから、
その時の気分とかシーンの数とかで好きにやりゃいいと思うけどね。
Task的に入り組んだ作りしてないのなら、どれでもすぐ遷移図を思い描けるっしょ。
0620名前は開発中のものです。
2014/04/29(火) 16:14:29.11ID:R32lOXpJ曰く、
「クラス設計書貰うけど見ない。クラス流用して他のゲーム作ったことがないから意味がない」
「デザインパターン?何それ?」
「参考書は読んだことがないからオススメ本とか分かんない。ネットと、エラーが出たらググレカスで覚えた」
PSでほとんど1人でプログラム任される人の弁です
0621名前は開発中のものです。
2014/04/29(火) 16:19:59.07ID:NQBFYHJcすげぇ
俺そんなこと言ったことないけど、完全に俺だわ
ただ、作ってたのはPSじゃねぇけど
0622名前は開発中のものです。
2014/04/29(火) 16:20:18.05ID:KJKa8R89その人、協調性が無いから、単独でしか使い道が無い。
0623名前は開発中のものです。
2014/04/29(火) 16:27:51.48ID:NQBFYHJcゲー専卒で多少のコミュニケーションはできれば入れてる感じがする
8人中2人もう辞めてるし、てかそれ以前にDXライブラリをインクルードディレクトリへの追加方法わからねぇわ、プログラムが組めねぇわで最悪だわ
1人だけまともというかたぶん俺より組める奴居るけど
うちは研修する余裕なんてねぇってわかってんだろうが、去年入ったやつなんてもう最後の1人を何とか留まらせてるんだから、俺らに人事噛ませろよ
0624名前は開発中のものです。
2014/04/29(火) 16:27:58.51ID:lMFqMvqX一昔前の1500円のミニゲーム移植とかの人てことなんだろうか
0625名前は開発中のものです。
2014/04/29(火) 16:31:27.80ID:GSilIO8Hちょっとワラタ
0626名前は開発中のものです。
2014/04/29(火) 16:31:55.46ID:CPnqQaxXいっちょオブジェクト指向でも勉強するか、とやり始めた結果
もうずっと制作が滞ったままになっている。
なんでこんなにめんどくさいんだ……。
0627名前は開発中のものです。
2014/04/29(火) 16:33:29.90ID:t5QADVCc本読まずにPG覚えるとか想像もつかねえw
0628名前は開発中のものです。
2014/04/29(火) 16:59:24.66ID:CPnqQaxXそもそも本を書くような人は「本を読んだら解る人」だろうから、
本を読んでも解らない人でも解るような本を書けないだろうな。
0629名前は開発中のものです。
2014/04/29(火) 17:12:12.68ID:dd41HZLfとりあえず作ってみよう系のほうが理解しやすい
ここを弄ったらこう変わるみたいな
0630名前は開発中のものです。
2014/04/29(火) 17:21:14.92ID:5MYZPLM50631名前は開発中のものです。
2014/04/29(火) 17:40:38.04ID:lMFqMvqXだいぶ使いこなせるようになっても読めない初心者向けの本とかあるから性質が悪い
ゲーム用だけじゃないが初心者の頃はコードがのっててサンプルが作りたい物に近いから買ってみるけど…
Cマガも半分ぐらいしか理解できなかったがいま読み返すと消えてる技術も多くて笑える
0632名前は開発中のものです。
2014/04/29(火) 17:48:57.10ID:bM1HEdOIあと、AIとかそういうアルゴリズムも重視される?
0633名前は開発中のものです。
2014/04/29(火) 18:14:47.39ID:NQBFYHJcぶっちゃけ会社によって様々だからうちの会社で書くけど
新卒には特別な期待はしない
とりあえず、プログラムを作れれば良いや、ゲームまで作れたら儲け物って感じだな
後はただ、人間として基本的なことはできてればそれだけで良い
俺は現場だからこういうのを求めてるけど、人事は即戦力のゲームプログラマーとしてプログラムを作れないやつを入れてくるから何を見てるか同じ会社なのにわからん
とりあえず残業させてないのに毎年1ヶ月以内に1人、3ヶ月以内に半分になる新卒はゲーム作る気がないよね
0634名前は開発中のものです。
2014/04/29(火) 18:23:27.78ID:EMV53Qmd0635名前は開発中のものです。
2014/04/29(火) 18:25:53.36ID:R32lOXpJスーパープログラマさんかな?w
他の配信者も有名な人だよって言ってたし、多分在京で働いてる業界人なら知ってる人ですよ。
ちなみに、よくプログラマになるにはどうしたらいい?という初見リスナーのレスあるけど
「C++とDirectX(ライブラリ自作)で『完成した』作品を持ってこい」と言ってますね。
本人もデザインパターンを配信中にググって知ったみたいだし
オブジェクト指向とか関係ないんじゃないかと。とにかく完成品をよこせと。
0636名前は開発中のものです。
2014/04/29(火) 18:34:29.77ID:lKQHJo0LA 漫画を描けば漫画家です
プロになりたければ作った作品を持ち込んでください
Q ゲームプログラマになるにはどうしたらいいですか?
A ゲームを作ればゲームプログラマです
プロになりたければ作品を持ち込んでください
0637名前は開発中のものです。
2014/04/29(火) 18:38:17.18ID:NQBFYHJcこれ
でも、自分じゃなくて友人が作ったやつを持ち込むクソも居る
0638名前は開発中のものです。
2014/04/29(火) 19:08:58.63ID:WRxgjGJf0639名前は開発中のものです。
2014/04/29(火) 19:14:20.55ID:t5QADVCc0640名前は開発中のものです。
2014/04/29(火) 20:34:32.58ID:EMV53Qmd>制御構文使ってたら死ぬ時に使う物
>>615
>実際switchの方がよく使われるものなの?
>>619
>シーン遷移の実装はシーン側は知る必要ないから、
>その時の気分とかシーンの数とかで好きにやりゃいいと思うけどね。
>
>Task的に入り組んだ作りしてないのなら、どれでもすぐ遷移図を思い描けるっしょ。
同意です。実装の選択肢は色々あり、個々の状況に応じて選べば良い事かと。
>>602-603の例で言えば、振る舞い的に拡張する予定がなく、実際しなかった
部分なので別に問題なかったですね
元々HSP上がりの人間(周りも同様)だったので手続き型の記述のほうが平易
というのもありました
>>617
State Pattern
switch-case構文
0641名前は開発中のものです。
2014/04/29(火) 20:35:52.86ID:EMV53Qmd末尾の三行は消し忘れです。>>617さんごめんなさい
0642名前は開発中のものです。
2014/04/29(火) 20:52:06.90ID:CXcBKCf+何年か前に、画像表示、パッド入力、音声出力くらいまでは何とか作ったけど
途中で面倒くさくなって、結局DXライブラリに戻ってしまったという残念な経験しかないやw
0643名前は開発中のものです。
2014/04/29(火) 20:55:41.83ID:EMV53Qmd会社帰りにたまにボー●ーブ●イクでチャリンチャリンしてたんですが
転勤先にそれ置いてるゲーセンがなくて悲しみのあまり余暇にパチモン
作りで自分を慰めてるんですが、火器とかAIの部分はStateというかStrategy
というかそんな感じのコードはありますね。条件分岐でダラダラ書いてたら
流石に眩暈がしてきたので
0644名前は開発中のものです。
2014/04/30(水) 00:47:22.57ID:bEifU6C00645名前は開発中のものです。
2014/04/30(水) 01:21:27.75ID:3yGpFv6Bパーツとか持ち替えの武器とか大量にあると面倒くさいことになるよね
あの手のアセンゲーっぽいのは俺も好きだが作りたいとは思わないな
0646名前は開発中のものです。
2014/04/30(水) 09:11:19.42ID:JP5IUHRh0647名前は開発中のものです。
2014/04/30(水) 10:28:13.43ID:vrCaDxEcクラスからクラスを呼ぶときってどういう書き方が普通なんですかね?
class A {
public :
static A* me ;
int a ;
A() ;
}
A* A::me ;
A::A() {
me = this ;
}
ってやって A::me->a とかやってるけど、なんかスマートじゃなくて……。
0648名前は開発中のものです。
2014/04/30(水) 11:46:43.01ID:eqz1Of7Rクラスからメソッド直接使いたいとかなら、メソッドをstaticで定義してクラス名::メソッド名()だけど
0649名前は開発中のものです。
2014/04/30(水) 12:04:25.51ID:gNDB74Yvアクセス可能なオブジェクトを限定するのがオブジェクト指向の組み方だから
アクセスする必要があるクラスにポインタなり参照なり持たせたほうが良いんじゃない
0650名前は開発中のものです。
2014/04/30(水) 12:58:15.72ID:2hopiA0K0651名前は開発中のものです。
2014/04/30(水) 13:13:03.63ID:8+rqYap5最近c++触ってないから間違ってたらすまんけど。
// A.h
class A {
public:
static int a;
}
// A.cpp
int A::a = 10; // 初期化
// main.cpp
void main() {
A::a; // 利用
}
0652名前は開発中のものです。
2014/04/30(水) 13:38:55.27ID:MPxnDurN0653名前は開発中のものです。
2014/04/30(水) 14:23:59.95ID:bEifU6C0基本的に平面で移動するゲームなら2Dと大して変わらんしだろうし
キューブ状の座標(2Dで言うところのマス目)を移動するだけなら、移動方向に上下という選択肢が増えただけと考えられるし
ビルの中を探索するようなゲームなら、階段やエレベータでエリアを区切ればいい気がする。
0654名前は開発中のものです。
2014/04/30(水) 14:32:28.53ID:Uak2ZaC3複雑な地形での経路探索がわからんって話なら、地形の要点にポイント作ってダイクストラ法でいいんじゃないの
0655名前は開発中のものです。
2014/04/30(水) 14:35:02.75ID:Uak2ZaC30656名前は開発中のものです。
2014/04/30(水) 14:50:11.17ID:49atqyLwhttp://samples.jbpub.com/9781556220784/Buckland_AIExecutables.zip
Chapter 5 にあるように 経路探索する。
Chapter 8\Raven_CoarseGraph のようにグラフとして探索する。
0657名前は開発中のものです。
2014/04/30(水) 16:08:24.08ID:L0vWdcDzA*はダイクストラの拡張版で、基本アルゴリズムは重複する部分が大きいから、
大筋外してはいないよ
ゲーム用途の経路探索性能は、A*の方がより最適化されるみたいだけど
0658名前は開発中のものです。
2014/04/30(水) 16:47:29.58ID:IG+u4GlDhttp://ideone.com/gt21RS
そのコードが何か不明だがこういう振る舞いをするという事がわかってれば好きにしろ
0659名前は開発中のものです。
2014/04/30(水) 22:30:05.62ID:vrCaDxEcやりたかったのは、例えばコンフィグデータを一括管理するクラスを作って
他のクラスでそれを使う、ような事です。
例として挙げたソースは簡単に書いただけで直接書き換えたいというわけではありませんでした。
関係ない愚痴ですが、こうやれば動くからこれでいいのかな、と作り進めてても
やっぱりおかしいよな、とまた一から作り直す、を繰り返してて制作が全く進みません……。
0660名前は開発中のものです。
2014/05/01(木) 03:51:25.76ID:jedbV3SH↑ ↑ ↑ ↑ ↑ ↑
0661名前は開発中のものです。
2014/05/01(木) 05:10:34.61ID:z13QLsnTインスタンスは複数作れるけど、実体は同じものを作っている……っていうアルゴリズムあったよね。
>659の場合だと、その方法使えそうな気がするものの……名前が分からんので教えられん
0662名前は開発中のものです。
2014/05/01(木) 08:21:56.84ID:3d6d8Z4vそんなのグローバル変数でいいだろ
つまんないとこで止まってないで先進めよ
0663名前は開発中のものです。
2014/05/01(木) 09:19:18.98ID:OWwKad9r0664名前は開発中のものです。
2014/05/01(木) 11:26:20.56ID:HOcvGku/これをプログラムに直すとどうなるの?
大学数学はさっぱり分からないから誰か教えて
0665名前は開発中のものです。
2014/05/01(木) 12:30:19.75ID:Fm1fH+z1ダイクストラ法は大学数学関係ないぞ
Game Coding Gemsの1か2に解説とソースコードがある
0666名前は開発中のものです。
2014/05/01(木) 12:35:48.55ID:d2ShpQiQ図のアニメーションと解説を読めば分かると思うが…
難解な数学計算無し。少なくとも高校数学の域は逸脱してない。
記号の意味分からない子向けに手続きを文章で丁寧に解説してる。
下手すりゃ厨房でも「コンピュータってバカ正直な事なんだね…」
と感想を述べながら呆れ顔をしてくるレベル
0667名前は開発中のものです。
2014/05/01(木) 12:37:56.10ID:d2ShpQiQ○「コンピュータってバカ正直な事をやるんだね…」
0668名前は開発中のものです。
2014/05/01(木) 13:21:29.38ID:d2ShpQiQ同意
0669名前は開発中のものです。
2014/05/01(木) 13:56:28.60ID:z13QLsnT0670名前は開発中のものです。
2014/05/01(木) 14:18:18.47ID:d2ShpQiQ厨房の反応は楽しかったよ。「かあいい」「頭悪過ぎうー」「きゃはは」
「がんばれー」とかが大半だったけど、眼鏡っ子の厨房が模造紙の解説を
一所懸命に読んでて、繰り出す質問がなかなか賢すぎてこっちが呆れた
0671名前は開発中のものです。
2014/05/01(木) 14:26:30.17ID:0k+QrX5Jモノトーンだかそんなような名前だった覚えがあるけど
0672名前は開発中のものです。
2014/05/01(木) 14:27:47.22ID:d2ShpQiQ使ったことないが
0673名前は開発中のものです。
2014/05/01(木) 16:56:40.77ID:ZxuEhXPJ0674名前は開発中のものです。
2014/05/02(金) 00:13:50.98ID:5CvmG/6A2Dで同じようなことを考えてるのですが、描画管理クラスにリストを持たせ、
その管理クラスのメソッドを通してリストへ登録しようとしてます
XNAのSpriteBatchの形が近いです
しかしこの方法だと管理クラスを引数でどんどん渡していかなければいけなく、良い方法がないか探してます
2Dオブジェクトにstaticで管理クラス、または描画リストを持たせた方がいいのでしょうか
設計の話なので明確な答えがないのはわかってます
皆さんの考えを参考程度に聞きたいです
0675名前は開発中のものです。
2014/05/02(金) 00:48:59.22ID:DPIL44M1そこにパラメータ与えて、あとは自動的に描画されるような組み方してるん?
0676名前は開発中のものです。
2014/05/02(金) 01:19:41.25ID:ZlBT84m3>しかしこの方法だと管理クラスを引数でどんどん渡していかなければいけなく、良い方法がないか探してます
依存性があるなら明示する(例えばSetterやコンストラクタで注入するだとか)
というのはOO的には無難なお作法だと思うけど。なんか不都合あるの?
(いちいち記述するのがかったるい、だとか)
まぁ、あまりに広範に渡ってその依存性が確認されるなら、グローバルな
存在、グローバルなサービス、として提供してもいいのでは。尤も、描画
モジュールに依存するモジュールってゲームの中では限定的だと思うけどね
0677名前は開発中のものです。
2014/05/02(金) 01:31:13.85ID:Ru1dUuzyprivate IDrawable model;
private Vector2 pos;
private 表示するもの[] children;
public void Draw(描画管理クラス){
描画管理クラス.add(model,pos);
for child in child {
child.draw(管理クラス);
}
}
}
0678名前は開発中のものです。
2014/05/02(金) 06:36:13.80ID:Bq1H46te0679名前は開発中のものです。
2014/05/02(金) 07:18:20.71ID:DPIL44M1ある部屋から別のある部屋へ行く方法ってのは基本的に固定なので、最初に各パターンを計算しておけばいい。
上手く追いかけるように動かしたいってことなら、
有名なところで、パックマンの敵アルゴリズムの話がシンプルでわかりやすいと思う。
0680名前は開発中のものです。
2014/05/02(金) 07:57:10.51ID:gb8xd1Drみたいな表を作っておけば良いのか
0681名前は開発中のものです。
2014/05/02(金) 09:29:13.26ID:dzhB41LP2Dオブジェクトは座標、テクスチャを持ち、描画関数内で管理クラスのリストへ登録
という流れを考えてますので、自動的な描画はしません
>>676
やはりプログラムの最初にsetterで登録が一番無難ですよね
不都合はないのですが、2Dオブジェクト全てが
管理クラスのsetterを持つのが気持ち悪く思えてしまい・・・
描画モジュールに依存するものが限定的とは...ゲーム内では殆どのものが
描画されるものだと思ってましたが違うのでしょうか
オブジェクトを管理したりするものは別だと思いますが・・・
>>677
これは結局引数でどんどん渡していくのでは・・・?
0682名前は開発中のものです。
2014/05/02(金) 09:52:01.66ID:Ru1dUuzy引数で渡していっていいと思う
常に同じ描画管理クラス使うとは限らないし
0683名前は開発中のものです。
2014/05/02(金) 13:12:16.23ID:6RPuKXq0何故「気持ち悪い」のか言葉で説明できるようにしてみれば
どうすればいいのかわかるんじゃない?
0684名前は開発中のものです。
2014/05/02(金) 13:23:32.11ID:taHVwRQz登録するデータを戻り値にして呼び出し側で登録するとか
0685名前は開発中のものです。
2014/05/02(金) 19:21:58.74ID:dzhB41LPレンダーターゲットを変えた時などでしょうか
>>683
2Dオブジェクトは例えばスコアや、メニューなどに使用するのに
管理クラスのsetterを常に持ち続けてるから・・・?
>>684
list.add(pObj->draw()); という感じですか?
この場合複数のオブジェクトを描画する時はどうなるんでしょう
スコアクラスは1桁描画を複数回呼ぶと思います
そういう時は戻り値でデータを返せないのでは
結局引数で渡してリストへ登録
または2DObject自身がリストを保持し、そこへ各派生クラスが登録する
という形になってしまうのでしょうか
0686名前は開発中のものです。
2014/05/02(金) 20:24:35.53ID:tEs8rCVtプレイヤーの状態とかエフェクトとかシングルトンで管理していて今まではどこかのクラスから
Game::instance()->registerEffect(new Effect())
みたいにできたんだけどプレイヤーごとにGameを作るようにしたらこれができなくなって
ゲームのインスタンスをあちこちに渡さなきゃならなくなったんだけどこんなことしないでもできる方法ない?
0687名前は開発中のものです。
2014/05/02(金) 20:30:31.53ID:DPIL44M1renderer.add(PlayerObject); //プレイヤーキャラクターのオブジェクトを登録
renderer.add(EnemyObject); //敵キャラクターのオブジェクトを登録
…みたいなのとは全く別の話?
0688名前は開発中のものです。
2014/05/02(金) 20:32:36.22ID:DPIL44M1Gameクラスってなんじゃらほい?
いわゆるシーンとかシーケンスってやつ?
0689名前は開発中のものです。
2014/05/02(金) 20:37:30.44ID:Yjnja2zXシングルトンが用を足さない状態だからやめるのが手っ取り早いけど
とりあえずシングルトンインスタンスの取得にID等の引数もたせれば?
引数違いなら違うオブジェクトを返すてのは実装は容易でしょ
こういうどこでも使えるグローバル変数的な状況で使うシングルトンは嫌いだけどな
0690名前は開発中のものです。
2014/05/02(金) 20:42:33.50ID:Ru1dUuzyレンダリングターゲットを変えたときもあるかもしれないけど、
マルチスレッドで分割してトラバースするこもとあるし。
Direct3D11でコンテキストを複数作れるようになったしね
0691名前は開発中のものです。
2014/05/02(金) 20:45:40.07ID:Gu2dz6L1戻り値をVectorかなんかにしたら
>>686
instance()に引数渡して特定のインスタンス取得出来るようにする
これまでシングルトンだったのが複数必要になった時点で設計見直した方がいいような気もするけど
0692名前は開発中のものです。
2014/05/02(金) 20:54:53.01ID:tEs8rCVtEffectは別で管理している
シングルトンをやめるからどうするのが良いのかと思って聞いたんだ
ダブルディスパッチで敵の当たった処理とかしているんだけど
class Game {
Enemy enemy[];
}
class Enemy {
void hit() {
if( 死んだ ) { Effect::addEffect(new Effect()); }
}
}
みたいにしててどのエフェクトを使うかはEnemy側で決めるようにしたいからこうなったんだけど
GameにEffectのインスタンス持たせてEnemyにそのインスタンスの参照なりなんなり渡して
if( 死んだ ) { effect->addEffect(new Effect()); }
とかしても良いんだけどなんかしっくりこないんで気になったのよ
>>688
そうなんだけど実際あんまり関係なかった・・・
>>689
うまい設計思いつかなかったんよね
その方法手っ取り早いし良さそうです
0693名前は開発中のものです。
2014/05/02(金) 21:46:30.08ID:Yjnja2zXEnemyはどうしたってEffectへのポインタが欲しいわけで描画の関係からか複数存在してるとなると
初期化などでずっと持たせるのが嫌ならhitかそれ以上に位置するGameから呼ぶ関数に引数として渡すか
EnemyはGameクラスのポインタ位持ってるならGameのほうにAddEffect関数もたせてEnemyはそれを呼ぶか
スレッドセーフでない設計ならEffectポインタのグローバルか静的関数なGetterとSetter用意して
GameオブジェクトごとにEnemy更新前にSetterでGetterの戻り値となるポインタを入れ替え…止めた方がいいな
0694名前は開発中のものです。
2014/05/02(金) 22:17:39.20ID:DPIL44M1Enemy内から呼んでるんだよね?
0695名前は開発中のものです。
2014/05/02(金) 22:41:54.83ID:gb8xd1Drエフェクト番号とフラグを持たせれば良いんじゃない
0696名前は開発中のものです。
2014/05/03(土) 02:03:51.33ID:aTctHTqNそんな感じです
ですがそのrendererを渡そうか悩んでます
引数ですとかなり深い(?)ところまで渡す必要があるのではないかという感じです
>>690
引数で渡した方が自由が利きますね
めんどくささと柔軟性のどっちをとるかみたいな感じでしょうか
>>691
座標、テクスチャ、UV、色などのことを考えるとVectorかなんかだときつそうです
とりあえず引数で渡す方向で作ってみたいと思います
オブジェクト指向難しいです...
0697名前は開発中のものです。
2014/05/03(土) 06:24:50.92ID:aTctHTqN>>696
rendererを渡そうか×
rendererをどう渡そうか○
です
0698名前は開発中のものです。
2014/05/03(土) 14:23:28.87ID:yzrAO4fX0699名前は開発中のものです。
2014/05/03(土) 16:01:04.13ID:ZggXQf330700名前は開発中のものです。
2014/05/03(土) 18:27:55.89ID:Dtrz+is9A *a = new A();
f(*a);
こんな感じゃない
参照って殆ど使った事ないからあってるかどうかわからんけど
0701名前は開発中のものです。
2014/05/03(土) 19:07:15.30ID:hZKN3J0Pという本がオススメと言われたんですが、これ持ってる人いませんか?
役に立つ度合いとかアドバイスしてもらえたら嬉しいです
0702名前は開発中のものです。
2014/05/03(土) 19:31:10.25ID:R+meoZG601 この本はどんな本か
http://www.shuwasystem.co.jp/gpro-sp/
これを読みましたか?
0703名前は開発中のものです。
2014/05/03(土) 20:46:14.95ID:TVFyIiNSやっぱりそれぞれが持つしかありませんかねえ
呼び出し元をparentとかして持たせておくのって普通にやっていることなんですか?
この場合だとEnemy::parentにGameへの参照か何かを持たせるとか
>>694
はいそうです
0704名前は開発中のものです。
2014/05/03(土) 21:38:49.30ID:XwaCxcGs0705名前は開発中のものです。
2014/05/03(土) 21:46:57.91ID:XwaCxcGs各クラスがどのエフェクトを使うのか?というのをハッキリさせておいて
必要なものだけインクルードするようにすれば、そこまで気持ち悪いことにはならないんじゃないだろうか。
たとえばEnemyクラスは、Effect::GettingItem(アイテム獲得)とかEffect::PlayerDead(プレイヤー死亡)は不要だろう。
それすら気持ち悪いと思うなら(分からんでもない)、
ObserverとかListenerとかCallbackとかその辺に頼るとかでも良いんじゃない?
0706名前は開発中のものです。
2014/05/03(土) 22:35:18.25ID:Kqu7ExT3参照引数は「読むだけ」を意図してる場合が多いからconst付きが多いかな
>>703
>呼び出し元をparentとかして持たせておくのって普通にやっていることなんですか?
>この場合だとEnemy::parentにGameへの参照か何かを持たせるとか
その疑問は>>674-696のやり取りと同じ話っぽいね、俺も>>704-705に同意かな。
依存関係を明示すると違和感を覚えたり気持ち悪くなるのは、大抵の場合
依存関係の認識(or分析)が大雑把。依存関係を明示するとそれが露見しちゃう。
機能分割が大雑把。依存関係を詳細に分析すると広範に絡み合ってて一体でした。
とか。Gameへの参照は、恐らく要らん情報にアクセスする権利も与えてるから
依存関係の明示というより、広範に渡る権力へのアクセス権の譲渡なのかな?
君はこの世界に神になる。俺はいいと思うけどね。というか、はなっから
グローバルなサービスとして提供してしてもいいかもね。完成させてから
リファクタリングしたほうがいい
個人的な短期小規模開発(作り捨て)なら別に問題ない。完成と反省のサイクルよ
0707名前は開発中のものです。
2014/05/03(土) 23:45:58.24ID:yuGTooJm0708名前は開発中のものです。
2014/05/04(日) 00:03:34.32ID:4VZ37tn90709名前は開発中のものです。
2014/05/04(日) 00:09:25.10ID:LNtKUxSS電子版あるならそっちの方が捗りそうだ
0710名前は開発中のものです。
2014/05/04(日) 07:21:43.07ID:r1PwGAIh描画されるクラスはインターフェイスを実装
描画クラスはそのインターフェイスをリスト管理し順番に描画
ゲームクラスはデータクラスと描画クラスを管理し
必要に応じてデータクラスを作り、描画クラスに登録
ゲームクラスが当たり判定をして、エフェクトクラスをnew、描画クラスに登録
て感じじゃ駄目なの
0711名前は開発中のものです。
2014/05/04(日) 18:09:40.60ID:Oce/sxqqサンプルプログラムの修正版があるからそれ見て決めたら?
ちなみに独自のライブラリを使ってる
0712名前は開発中のものです。
2014/05/04(日) 21:44:57.67ID:o3zvQF1I飛行機乗客が減り、飛行場が苦労する
バス乗客が減り、高速道路が苦労する
結果的に、四国地方の経営破たん
0713名前は開発中のものです。
2014/05/06(火) 09:11:34.47ID:WKSS3LlW0714名前は開発中のものです。
2014/05/06(火) 10:42:16.25ID:2Ki+N293独自ライブラリですかー・・・
ありがとう。ちょっとどっかで立ち読み出来るまでは買い控えます。
0715名前は開発中のものです。
2014/05/06(火) 14:47:05.12ID:D61HzG9l本来スマートポインタはラクをするために使う。あとは好きにしろ
あと言語の使い方一般についての質問はプログラム板のほうがいい
【初心者歓迎】C/C++室 Ver.90【環境依存OK】
http://toro.2ch.net/test/read.cgi/tech/1395675954/
はい、次の方どうぞ
0716名前は開発中のものです。
2014/05/06(火) 15:47:49.53ID:C6PkJkWu0717名前は開発中のものです。
2014/05/06(火) 16:22:09.99ID:tFTEVnQVDirectXのAPIが32bit幅なのにSTLは64bitみたいに混在してて決め打ちしにくいんだけど
インデックスとして毎回32bitを64bit拡張と変数を32bitにstatic_castと
タイプ量はともかく実行時に効率いいほうにしたい
0718名前は開発中のものです。
2014/05/06(火) 16:27:40.04ID:D61HzG9l報告しなくていい。そういう感想は彼らに直に言ってあげな。陰口より建設的だろ
はい、次の方どうぞ
0719名前は開発中のものです。
2014/05/06(火) 16:28:53.69ID:D61HzG9lかぶったすまん
0720名前は開発中のものです。
2014/05/06(火) 16:44:38.90ID:C6PkJkWuそんな非建設的な事実上機能していないスレに誘導してどうするんだって事だよ。
はい、次の方どうぞ。
0721名前は開発中のものです。
2014/05/06(火) 17:21:27.34ID:D61HzG9l例えばループ変数については普通にint使ってるな
参考までに、科学計算系のライブラリでもそんな感じだったと思うよ
計算速度云々が問題になる場合、気にかける場所はもっと別の所かと
0722名前は開発中のものです。
2014/05/06(火) 20:22:43.10ID:HhBjBQsTあとむやみにunsignedにするとsignedにunsigned加算して警告でたり面倒のもと
0723名前は開発中のものです。
2014/05/08(木) 22:05:56.40ID:Np2Vdwsyconstもメンバ関数含めて相当あるけど
0724名前は開発中のものです。
2014/05/08(木) 22:48:55.29ID:v1IR+nQC「型が明らかである場合か、あるいは逆に全く意識してほしくない場合にのみ使う……とかにしておけば?
0725名前は開発中のものです。
2014/05/09(金) 09:00:26.26ID:3cnn0QfEイテレータの型書くの面倒くさい、位しか思いつかない
0726名前は開発中のものです。
2014/05/09(金) 09:04:31.69ID:7ikJMhxE0727名前は開発中のものです。
2014/05/09(金) 13:56:58.03ID:Kaaj65V1iteratorの記述を省略するための機能か
0728名前は開発中のものです。
2014/05/09(金) 17:15:23.11ID:htXiJh1L0729名前は開発中のものです。
2014/05/10(土) 00:22:59.13ID:6TirXj8H個人的にはイテレータを簡単に書けるメリットが一番大きいと思ってるが
それ以外で使うとしたら
auto f = new Foo(); //Foo型なのは明らか
とか
//交換
auto tmp = a; //型は明らかではないが意識する必要がない
a = b;
b = tmp;
とかかなあ。
後者は素直にtemplate関数にでも投げたほうが良さそうだけどね
0730名前は開発中のものです。
2014/05/10(土) 10:54:20.51ID:dAeX94+O0731名前は開発中のものです。
2014/05/10(土) 11:11:37.14ID:hKETio2L「スタックのアドレス」を「スタック上におかれた配列の要素を指すアドレス」と解釈したけど
ttp://ideone.com/yad3h1
その配列が生きている間は問題ない
0732名前は開発中のものです。
2014/05/10(土) 22:40:27.91ID:+R2ltZ7tvoid g()
{
auto t= f();
}
ってすると t は const T& 型になると思ってたけど
実はただの T 型でコピーコンストラクタでひどいことになったことあります
0733名前は開発中のものです。
2014/05/11(日) 18:46:58.77ID:8qR2WxrEint money[MoneyType.SIZE];
こういう宣言の仕方って出来ないの?
MoneyTypeはenumで
enum MoneyType {
GOLD,
DIA,
SIZE
};
0734名前は開発中のものです。
2014/05/11(日) 19:38:27.89ID:3XauxJKcっていうかその使い方わかりにくいしやめた方が
0735名前は開発中のものです。
2014/05/11(日) 19:44:07.91ID:3XauxJKcstatic_castでキャストすればいけるっぽい
0736名前は開発中のものです。
2014/05/11(日) 19:59:02.14ID:yHWGVGOF0737名前は開発中のものです。
2014/05/11(日) 21:01:42.40ID:KSscCZAlただこれだと再定義のエラーが前出たような気がする
0738名前は開発中のものです。
2014/05/11(日) 21:04:03.89ID:9RoLwWBRenum class MoneyType:int
{
GOLD,
DIA,
SIZE
};
int money[ MoneyType::Size ];
0739名前は開発中のものです。
2014/05/11(日) 21:06:37.47ID:KSscCZAl0740名前は開発中のものです。
2014/05/11(日) 21:14:58.11ID:9RoLwWBR将来お金の種類増えるかもしれないとか
配列使うぐらいならvectorにしとけとも思うが
0741名前は開発中のものです。
2014/05/11(日) 21:51:52.47ID:3XauxJKc0742名前は開発中のものです。
2014/05/12(月) 00:24:54.73ID:cE27KFFY例えば複数の種類のお金で買えるショップ機能を作りたい場合、
ショップ側でMoneyTypeという型と整数を持っておけば、処理が楽かなと思ったんだけど
0743名前は開発中のものです。
2014/05/12(月) 01:09:04.70ID:u2hQW3ha0744名前は開発中のものです。
2014/05/12(月) 14:46:27.12ID:Pch/P8kY(例えば主人公のデータとか色々な場面で使いそうなもの)
今まで単純にデータクラスの中に静的メンバ変数で定義してグローバル的にやってたけど、
たまたまシングルトンで管理してるソースを見つけて、色々あるのかなって思った
0745名前は開発中のものです。
2014/05/12(月) 18:22:11.56ID:cE27KFFY0746名前は開発中のものです。
2014/05/12(月) 18:22:35.24ID:gXmiaEA2それともクォータニオンで球面線形補間してる?
0747名前は開発中のものです。
2014/05/12(月) 20:18:49.99ID:u2hQW3haグローバル変数は可能な限り減らす、という理念の上でやってるなら、
それは実に正しい手法だと思うよ
0748名前は開発中のものです。
2014/05/12(月) 22:53:45.27ID:Qk7dokduその方向でプログラム書き直したところ、手間の物凄く増えて辟易。
やり方を間違ってるんじゃないか感が半端ない。
0749名前は開発中のものです。
2014/05/12(月) 23:01:55.91ID:Qk7dokduC++プログラムは人によってまるで違ってくる」とあったが本当みたいね。
本や解説サイトによって、サンプルがかなり違ってるようで混乱しまくるわ。
0750名前は開発中のものです。
2014/05/12(月) 23:39:44.01ID:4H1ieXj20751名前は開発中のものです。
2014/05/13(火) 06:24:12.16ID:hs5B6JyN一人で作ってるコンパクトなプログラムくらいだったら使いまくりでいいと思うわ
0752名前は開発中のものです。
2014/05/13(火) 10:40:34.58ID:lZBhyb5G複数のソースコードのあちこちに点在してるとそれが顕著になり
グローバル変数がクラスで依存関係があると動作保証が難しい
せめて組み込み型以外はポインタ型にして初期化の順序を決めちゃうのが安全
0753名前は開発中のものです。
2014/05/13(火) 11:22:50.82ID:i7OBK+99'MoneyType' is not a class or namespace
ってでる
visualstudio2010だと出来たと思うんだけど、
Eclipse4.3だと出来ない
C++のバージョンによってなんか変わったのかな
0754名前は開発中のものです。
2014/05/13(火) 12:15:46.52ID:D4assd32enum classはC++/CLIだからだろ
Cにそんな構文はない
俺はC++には詳しくないけど実はあるのかな
0755名前は開発中のものです。
2014/05/13(火) 13:16:16.22ID:LR5OHySp0756名前は開発中のものです。
2014/05/13(火) 22:03:52.41ID:VqkITLrD使うところでだけglobal.hをインクルードしてさ
grobal.cpp
int a;
groubal.h
#ifndef _GLOBAL_H_
#define _GLOBAL_H_
extern int a;
#endif
0757名前は開発中のものです。
2014/05/13(火) 23:05:24.12ID:RPOQlcBKわざわざ識別子を _ で始めるなんて沸いてるんじゃない?
0758名前は開発中のものです。
2014/05/13(火) 23:15:35.87ID:dsNPksM90759名前は開発中のものです。
2014/05/13(火) 23:46:55.80ID:VqkITLrDじゃあなんて書くんだ?
0760名前は開発中のものです。
2014/05/13(火) 23:51:06.96ID:dD8wYEBQ慣習的に
0761名前は開発中のものです。
2014/05/13(火) 23:59:25.01ID:VqkITLrDまじかよ
学校でこう習ったよ
何でそんな書き方教えるんだよ
まぁ開発はVSだから#pragma onceしか書かないから知らんかっただけっすけどね・・・
0762名前は開発中のものです。
2014/05/14(水) 00:50:31.19ID:qOCHvgWhつ>>663
ついでにnamespaceにぶち込んでもいいのよ
0763名前は開発中のものです。
2014/05/14(水) 00:53:50.93ID:qOCHvgWhgccでもいつの間にかpragma once使えたりするんだよな
あれ、サッサと標準仕様に盛り込めばいいのになと思うよ
0764名前は開発中のものです。
2014/05/14(水) 01:34:53.87ID:Bv7wzu+p0765名前は開発中のものです。
2014/05/14(水) 02:44:20.77ID:SkdpMvQeIDEによるかもしれん
0766名前は開発中のものです。
2014/05/14(水) 03:12:47.17ID:YePF79fhpragma once は処理系次第で最適化されてるからね。
複数のプラットフォームを想定するなら
安全策をとって両方記述するのがオススメ。
pragma once があれば効率的に処理してくれるかもしれないし、
もしpragma once を理解できない処理系でも
inlude guardは必ず処理してくれるからね。
0767名前は開発中のものです。
2014/05/14(水) 10:10:49.06ID:2wCAVOdx両方記述?寝言は寝て言えw
0768名前は開発中のものです。
2014/05/14(水) 10:25:37.80ID:vvdSHZVH自動生成したヘッダには#pragma onceと#ifndef-define-endifが
コンパイラバージョンによって自動で切り替わるように書かれてたと記憶している
その辺から考えても、両方書くのは無駄じゃない
0769名前は開発中のものです。
2014/05/14(水) 12:46:41.03ID:1doe1mvxtemplate argument 4 is invalidっていうエラーが出ます
具体的には
map<アイテムID(enum型),アイテムパラメータ(struct型)> aaaaa;
って感じです。
パラメータっていうのはその名の通りアイテムを装備するとstructのメンバの
addHPとかaddMPっていう変数の分だけ上昇する感じで、
使い方はプレイヤーはアイテムIDだけ持っておけば、あとは必要な時々で値だけ取得できるかなという感じです。
0770名前は開発中のものです。
2014/05/14(水) 13:13:18.32ID:CAIv9eLRstruct itemParam{int p1; int p2;};
itemParam param;
map<itemID, itemParam> m;
m.insert(make_pair(itemID::ID1, param));
こんな感じで動かない?
0771名前は開発中のものです。
2014/05/14(水) 13:15:39.85ID:Ocn3g8OS比較関数がないって怒られてるんじゃね
一つ目の型を enum型じゃなくて int に変更するわけにはいかないの?
0772名前は開発中のものです。
2014/05/14(水) 14:08:33.50ID:Ke2wFa7k>>733みたいな感じで配列で十分な気がするんだけど
0773名前は開発中のものです。
2014/05/14(水) 15:29:04.69ID:Ocn3g8OS0〜 イベントアイテム
10000〜 武器
20000〜 鎧
みたいに
0774名前は開発中のものです。
2014/05/14(水) 16:29:43.89ID:YPHrxvGY0775名前は開発中のものです。
2014/05/14(水) 21:01:01.54ID:qOCHvgWhそれ、>>770で動きますよ
>>772-774
仮に、実行時に追加削除更新等なし、静的、参照専用、の情報の集合
という前提条件であればstd::map(赤黒木)を使う合理性はあまりないかな
>>773のようにキー番号が連続してないのでれば、ハッシュマップの類の
ほうが向いてますね
http://research.preferred.jp/2011/07/stllike-containers/
補足:記事中のLoki::AssocVectorとほぼ同じものとしてboost::flat_map
もあります。でも、>>774の言う通り、結局vectorでおkにもできますね
ま、完成しない(動かない)事に比べればどれ選んでも瑣末な違いなので
(特に昨今のPCなら)好きなの選べばいいかと思います。身も蓋もないね
0776名前は開発中のものです。
2014/05/14(水) 23:37:56.68ID:XQ3tGmyBenumの最初を0と明示するだけで変わるんです?
0777名前は開発中のものです。
2014/05/15(木) 13:17:04.58ID:vi3A9MFw0778名前は開発中のものです。
2014/05/15(木) 17:35:02.68ID:CM4Haxt/コンパイラのバージョンとかで古いのだと駄目なのかな
0779名前は開発中のものです。
2014/05/15(木) 19:15:22.94ID:D0s76qwM0780名前は開発中のものです。
2014/05/16(金) 15:57:03.11ID:RLWXI/UA0781名前は開発中のものです。
2014/05/16(金) 23:45:36.07ID:bSd/X954ありますよ
navigation mesh pathfinding algorithm game waypoint graph search
など適当なキーワードでググるといいです。動画によるアルゴリズムの
解説も出てきますね。書籍ならAI Game Programming Wisdom 4 が
個人的にオススメです
0782名前は開発中のものです。
2014/05/17(土) 09:32:46.40ID:a+6vW56Rサンプルコードみても理解するのに時間がかかるわ
0783名前は開発中のものです。
2014/05/17(土) 10:01:46.81ID:ATk/Gp35最近の若者は読まないのか
0784名前は開発中のものです。
2014/05/17(土) 11:06:25.43ID:7UqYAydx英語が読めないのは脳が半分無いのと同じ。
それだけのこと。
0785名前は開発中のものです。
2014/05/17(土) 12:01:48.26ID:G1g9tldj0786名前は開発中のものです。
2014/05/17(土) 12:34:45.87ID:/WeYTHrmプログラムは勉強したところでコード書けないのが大半らしいな
元々作文が下手とかそういう次元ではなく理解できないとか
0787名前は開発中のものです。
2014/05/17(土) 12:40:03.20ID:o9p3b0z70788名前は開発中のものです。
2014/05/17(土) 13:44:47.33ID:7UqYAydx半年遅れで付いていく人間は残念ながら奴隷で終わるよw
英語ができて最先端に追従する奴、ときには自分が最先端を発信する奴に
「あ、こいつバカだなww」と思われながら生きる惨めな三流人生が待っている。
それで良ければ英語なんて学ぶ必要はない。
まぁ、普通は(普通の知性の持ち主は、という意味)
修士課程で英語の論文を死ぬほど読んで
「喋れないけど読める」という妙な英語力を身につけられるんだけどねw
0789名前は開発中のものです。
2014/05/17(土) 14:19:53.26ID:ZLhv9Phh0790名前は開発中のものです。
2014/05/17(土) 14:53:46.32ID:k3uAdR/A0791名前は開発中のものです。
2014/05/17(土) 17:55:58.84ID:ZLhv9Phh具体的に何をやってみてどこでつまずいてるのか話せば答えやすくなるかと
0792名前は開発中のものです。
2014/05/17(土) 18:02:04.88ID:G1g9tldjこれじゃあかんのか
0793名前は開発中のものです。
2014/05/18(日) 17:48:20.69ID:bAjzsQ9M0794名前は開発中のものです。
2014/05/18(日) 21:18:36.16ID:uYYY8hgNhttp://marupeke296.com/COL_2D_No8_QuadTree.html
これを3ビット毎にすれば出来ると思うんだがどうだろ
0795名前は開発中のものです。
2014/05/19(月) 04:39:02.31ID:XNC2jE/Yhttp://bituse.info/game/shot/11
for(int i=0;i<ENEMY_NUM;++i){
enemy[i]=new ENEMY(data[i].type,data[i].stype,data[i].m_pattern,data[i].s_pattern,data[i].in_time,data[i].stop_time,data[i].shot_time,data[i].out_time,data[i].x,data[i].y,data[i].speed,data[i].hp,data[i].item);
}
↑この文の enemy[i]=new ENEMYのイコールのところでオペランドと一致する演算子なんてねぇよって怒られます
原因として考えられるものってなんでしょうか?
for(int i=0;i<ENEMY_NUM;++i){
enemy = new ENEMY[i](省略);
}
だったらいけるみたいなんですけど、違いがよくわからないです・・・
0796名前は開発中のものです。
2014/05/19(月) 05:31:35.17ID:FdnDAUlP0797名前は開発中のものです。
2014/05/19(月) 10:00:14.39ID:hjxHIKHc正:ENEMY *enemy[ ENEMY_NUM ];
誤:ENEMY *enemy;
サイトを見ると省かれてるみたいだけど
敵を複数出すようにした時点で enemy を配列に変更しないといけない
0798名前は開発中のものです。
2014/05/19(月) 11:05:51.60ID:CSMuM09V無駄に読みにくいわ
0799795
2014/05/19(月) 11:33:54.01ID:XNC2jE/Yご指摘の通り、enemyを配列にしたら無事にコンパイルできました。
ちょっと私にはわかりにくいサイトだったようなので別のところで勉強してみます・・・
0800795
2014/05/19(月) 11:34:28.24ID:XNC2jE/Yご指摘ありがとうございました。
0801名前は開発中のものです。
2014/05/23(金) 00:32:00.04ID:61iiZtPGC++で作ったリアルタイムなネットワークゲームのオンラインサーバって
どういう環境で動いてんだべ?
ソシャゲならPHPでhttpでいいかもしんねけども、
ネトゲって実行ファイル動かし続けてんのかね
0802名前は開発中のものです。
2014/05/23(金) 00:34:30.27ID:BlMjMm70お前から感じるそのしったか臭は一体何なんだ?
0803名前は開発中のものです。
2014/05/23(金) 01:25:45.01ID:61iiZtPGそんなこと言っても知りたいってのは本当なんだけど
ていうかソシャゲってphpでhttp返してるって聞いたんだが違うのか
ソース3種類ぐらい別のところから聞いたからそうだと信じてたけど
0804名前は開発中のものです。
2014/05/24(土) 14:46:49.15ID:+A5Yp2pd0805名前は開発中のものです。
2014/05/24(土) 14:48:01.39ID:+A5Yp2pdスマートポインタ談義がすっぽり消えたなw
0806名前は開発中のものです。
2014/05/25(日) 20:49:24.73ID:oeSfMRxmC++で作ったゲームサーバーの話は聞かない
普通はPHPとかPerlで作ったHTTPサーバ
他にはUnity for Android製ゲームのサーバをD言語+vibe.dで書いたっていう例くらい
C++のHTTPサーバは国産のこれしか聞いた事無いし商用された話は見たこと無いなw
http://www.treefrogframework.org/ja/
0807名前は開発中のものです。
2014/05/25(日) 21:01:21.64ID:vsrsxORJ0808名前は開発中のものです。
2014/05/25(日) 21:10:04.84ID:NTyQi6H8速度優先だし。
>>806 は国産とか意味不明のこと言ってるし。ソーシャルゲームのことだろ。
0809名前は開発中のものです。
2014/05/26(月) 10:23:40.85ID:GZglaTlb↑w
0810名前は開発中のものです。
2014/05/26(月) 12:15:10.70ID:Pmy7lrM10811名前は開発中のものです。
2014/05/26(月) 23:19:43.69ID:NgiDAGf80812名前は開発中のものです。
2014/05/27(火) 00:18:29.37ID:E4+xEgMz卒論のためのプログラムをPerlで書いたんだよ。
「もしかして俺はアカデミズムの世界で生きられるほど賢くないのかもしれない」
そんな現実に気がつくころ、Perlも衰退を迎えてさ。
なんだか恥ずかしい青春の甘酸っぱい言語だよ。
0813名前は開発中のものです。
2014/05/27(火) 00:28:35.75ID:Cg0Gppa4一行一行、いちいち、ハテナ?と思わせる文章だな。
それが書けるのは>>806とお前くらいだよ。
0814名前は開発中のものです。
2014/05/27(火) 22:23:08.63ID:EKtsf5FUそれはさておき、サーバとクライアントとで同じ結果を出したいってときに、
Haxeを使ったってニュースなら見たことあるなあ
最終的に何言語になったかまでは覚えてないけど
0815名前は開発中のものです。
2014/05/30(金) 20:38:48.50ID:Z7hh6f//0816名前は開発中のものです。
2014/05/30(金) 22:00:59.71ID:3BKqOVuNwebブラウザ用の言語として生き残ってく予感しかしないんだが
0817名前は開発中のものです。
2014/05/31(土) 10:36:34.27ID:q6hYVMUhとうとうネットワークグラフ型に対応したstate machineを導入した。
状態遷移表を作ってみて、当初想定していた状態遷移仕様の複雑さに驚いた!
Game programming gemsの1巻を参考に実装したけど、
一定フレーム(もしくは時間)後に、自動的に遷移させるってどうやるのがいいんだろ。
0818名前は開発中のものです。
2014/05/31(土) 12:27:57.64ID:ROUPLRVK0819名前は開発中のものです。
2014/05/31(土) 13:53:36.95ID:q6hYVMUhレスthx
昔ドラゴンセイバーっていうゲームがあって、
射撃ボタンを押さずに放置すれば、溜め撃ちのエネルギーがたまって、十分にエネルギーがたまった状態で射撃ボタンを押すと、溜め撃ち弾発射っていう仕様があった。
この溜め撃ちを、有限状態機械的に表現すると、
・状態としては:「溜め撃ち不可能」「エネルギー溜め中」「溜め撃ち発射OK」「溜め撃ち発射中」
・入力としては:「射撃ボタン押し中」「射撃ボタン押さずに放置」
となって、
・「溜め撃ち不可能」状態で、「射撃ボタン押さずに放置」を入力すると、「ネルギー溜め中」状態になり、
・「ネルギー溜め中」状態で、さらに「射撃ボタン押さずに放置」を入力すると、そのまま「ネルギー溜め中」状態を維持して、
・「溜め撃ち発射OK」状態で、「射撃ボタン押し中」を入力すると、「溜め撃ち発射中」状態になる。
と適当に考えているんだけど、
問題は「ネルギー溜め中」状態から、「溜め撃ち発射OK」状態に遷移させるのはどうすればいいんだろう?
別途、「射撃ボタン押さずに放置(一定時間経過済み)」っていうFSM入力を新規に用意して、より上の層でタイマー管理して、入力を切り替えるのが良いのかな。
FSMとタイマーを融合させるいい方法はないかなあ。
遷移条件に最小連続入力回数を付け加えた上で、FSM入力の種類を増やして、連続入力回数もFSM入力させて、連続入力回数が、最小回数を上回っている場合だけ遷移させるとか・・・?
もしくは、そもそも上のFSMの定義がよろしくないのか・・・
0820名前は開発中のものです。
2014/05/31(土) 14:23:37.46ID:ROUPLRVKチャージ時間をパラメータとして持たせて不可から溜め中に遷移した時に初期化、ため中に放置で更新、一定値以上ならイベント起こしてOKの状態にする
みたいな感じじゃないとキツイ気がする
0821名前は開発中のものです。
2014/05/31(土) 14:26:46.71ID:TW8rxzzK0822名前は開発中のものです。
2014/06/07(土) 13:54:05.28ID:TPPcHjY+そうするとシングルトンや画面間で共有する変数とか無いってことだよね?
画面切り替わるたびに毎回HDDにセーブしてロードしてるの?
オブジェクト指向っていうとそうなりそうなんだけど
0823名前は開発中のものです。
2014/06/07(土) 14:11:15.61ID:Ug9B4jbc見た目=下部構造なんだな。
そのことを疑いもしない。
65越えるとようやく会話が成立するのだが。
0824名前は開発中のものです。
2014/06/07(土) 14:23:50.69ID:RywayQ4c0825名前は開発中のものです。
2014/06/07(土) 14:32:06.59ID:Hn3ULKCPもっとも会話自体する気無いように見えるけども
>>822
2行目の認識がちょっとずれてる気がする
シングルトンはオブジェクト指向プログラミングにおけるテクニックの一つだから
オブジェクト指向だとシングルトンが無い、なんてことにはならないと思う
共有したいデータは、複数の画面を管理するような寿命の長いインスタンスに入れておいて
各画面が都度アクセスするように作るかな、俺なら
プログラムって基本的に階層構造になってることが多いから、その上位階層で
下位階層で共有するデータを保持しておく、という感じで
0826名前は開発中のものです。
2014/06/07(土) 15:36:17.23ID:E1S3y9cEそれいちいち下位階層(各画面)のクラスに、共有データ保持クラスインスタンスへの参照メンバ変数を追加して、
さらにそれに参照を通すめのメンバ関数追加して、
場合によっては、そのメンバ関数を呼ぶタイミングに気を遣ったりと、面倒くさくない?
俺ならてっとり早くグローバル変数で解決だわw
しかし上記の様な構造が複数存在し得て、抽象化が迫られてるんだったら、
>>825の方法を取るかな
0827名前は開発中のものです。
2014/06/07(土) 16:19:22.33ID:TPPcHjY+これって俺に対して言ってるの?タイミング的にそうなんだろうけど
何言ってるのかさっぱりわからんこれが偏差値の壁か
0828名前は開発中のものです。
2014/06/07(土) 16:23:38.29ID:E1S3y9cEまだまだずっと先の話なんじゃないか
かなわないよなwww
0829名前は開発中のものです。
2014/06/07(土) 16:23:59.67ID:TPPcHjY+やっぱりメモリ上に保存するなら、共有したい階層の上で持つしかないよね
シングルトンはその最上位で必要以上の範囲で共有するから使うなって言われるのかな
0830名前は開発中のものです。
2014/06/07(土) 16:50:22.18ID:Hn3ULKCP「シングルトンを使うな」っていう人は
「グローバル変数は使うな」と言われる理由をよく理解しないで
さらにそれをシングルトンパターンまで勝手に拡大解釈してる人だと思って良いんじゃないかな
つまり聞き流しておk
0831名前は開発中のものです。
2014/06/07(土) 16:57:58.25ID:ZCBLR1T3そうなると、あえて使おうとも思わなくなる。
0832名前は開発中のものです。
2014/06/08(日) 06:13:59.13ID:SH3wdx83グローバル変数的な使い方は副次的な物
って解釈なんだけど
0833名前は開発中のものです。
2014/06/08(日) 09:00:11.27ID:CyDAhGQT0834名前は開発中のものです。
2014/06/08(日) 12:45:52.40ID:pvmKPe4Bあとはサウンド系だと思ってるけど
0835名前は開発中のものです。
2014/06/08(日) 12:47:12.67ID:5L4ensoLあとは自分の作ったクラスを他人が使う時にオブジェクトがひとつなのを意識させない、とか
その場合はモノステートの方がいいかもしれんが
0836名前は開発中のものです。
2014/06/08(日) 13:19:54.87ID:5L4ensoLそれをシングルトンと呼べるかどうかはわからんが
0837名前は開発中のものです。
2014/06/08(日) 13:50:50.16ID:+WMv8FJD3D空間じゃないからわざわざレイ飛ばすより画像のインスタンス見て回ったほうが早いと思ったんだけど
UIリストへの挿入時にソートするべきなのか?
なんか正解というのがピンと来ない
0838名前は開発中のものです。
2014/06/08(日) 14:02:34.45ID:pt28O8XW0839名前は開発中のものです。
2014/06/08(日) 14:07:29.29ID:tkJLCxRy画像のインスタンスを見るというのも意味不明。
0840名前は開発中のものです。
2014/06/08(日) 15:23:55.84ID:yGlWShIZ無駄過ぎて鼻水吹き出しそうな話だけど
画像のインスタンスって言ってんのはスプライトの事かな
0841名前は開発中のものです。
2014/06/08(日) 19:22:29.67ID:8RotVtW9画面を経由する必要があるほど不定形でぐにゃぐにゃしたUIなんだろうか
もしどうしてもやる場合は
俺ならオフスクリーンバッファにどのUIがトップかを書くかな
0842名前は開発中のものです。
2014/06/08(日) 22:43:04.22ID:vGgKRzGnと思ったけど、vramアクセスはパフォーマンス悪そうだな
0843名前は開発中のものです。
2014/06/09(月) 13:50:23.16ID:z2Jj9BRGスレチだったらごめん・・・
0844名前は開発中のものです。
2014/06/09(月) 15:07:01.85ID:F4+Sq4Or0845名前は開発中のものです。
2014/06/09(月) 15:12:29.18ID:HlN0nBf5物凄いレアケースでハードウェア絡みかもしれんが
もう一度コードを見直しが先決かねえ
0846名前は開発中のものです。
2014/06/09(月) 18:40:16.51ID:EHfKfPgC色構造体のバイトオーダー間違ってないか
0847名前は開発中のものです。
2014/06/09(月) 22:51:10.63ID:OtG7NFYQLIGHTINGやTEXTUREのEnable/Disableの切り替え忘れとかがありがちかなぁ
0848名前は開発中のものです。
2014/06/09(月) 23:44:28.20ID:hvcdW5Tu詳細に教えてなんて言わないんで、解説してくれているサイトを教えて下さい。
情報が少なすぎるのか、調べ方が悪すぎるかのどちらかで、アホな初心者にはできません。
0849名前は開発中のものです。
2014/06/09(月) 23:45:24.91ID:6mNjaANtvec3 out = in * texture2D(shadow, uv).rrr;
みたいにする。
0850名前は開発中のものです。
2014/06/09(月) 23:53:17.10ID:Cpf1syLL「exlipse DXLib」の検索ワードだけでゴロゴロ出てきたんだが?
0851名前は開発中のものです。
2014/06/10(火) 00:12:02.20ID:U4gTkVOfageてしまった。
それは以前にやったのですが、よく理解できませんでした。
ttp://moge32.jugem.jp/?eid=136
検索2位(1位は繋がらない)ここに書いてあることは直接Eclipseのことを書いてないように思うのですが、
これが必要最低限の情報だったりするんですか?
0852名前は開発中のものです。
2014/06/10(火) 00:57:17.61ID:SZhDftiM何か重くて表示されなかっただけでね。
キャッシュからも表示できたし。
0853名前は開発中のものです。
2014/06/10(火) 07:35:08.91ID:iWwQEe0Dライブラリのパスを参照設定するだけじゃないの?
他に、何かすることがあるの?
0854名前は開発中のものです。
2014/06/10(火) 10:32:37.64ID:+XEl/HM20855名前は開発中のものです。
2014/06/10(火) 10:47:00.49ID:WVu4972rきっとインストール権限ない環境かハードディスク残量の問題なんだろうね
0856名前は開発中のものです。
2014/06/10(火) 15:15:51.09ID:YWMLszVd0857名前は開発中のものです。
2014/06/10(火) 19:07:12.75ID:O01gD3CA棄教できなければ.NET framework神に詫びながら死ね。
0858名前は開発中のものです。
2014/06/10(火) 21:45:01.86ID:8Lf3BwfT0859名前は開発中のものです。
2014/06/11(水) 09:08:28.52ID:0bKjwM6R0860名前は開発中のものです。
2014/06/11(水) 09:16:03.77ID:WKLN/gkVでしたら、お好きな環境を選択されればよろしいとおもいますよ?
0861名前は開発中のものです。
2014/06/11(水) 09:21:09.41ID:0bKjwM6ROpenGLでいいでしょ
マルチプラットフォーム対象にするときどうすんの?
0862名前は開発中のものです。
2014/06/11(水) 09:25:44.99ID:WKLN/gkVてか、だから好きにすればいいよ
0863名前は開発中のものです。
2014/06/11(水) 09:27:05.23ID:x/9Nmlpuあと、プログラミング言語とかライブラリとか
そもそもUnityの会社だってあるし・・・
0864名前は開発中のものです。
2014/06/11(水) 09:47:50.90ID:z9TU/419MacのXCodeじゃないとiOS向けにコンパイル出来ないので
その環境でAndroidアプリも作るからeclipseも入れる
Unityも結局iOS向けはコンパイルにMac必要だからMacになる
Win向けはまあVisual Studioでしょ
コンシューマはわからんけど箱むけならVisual Studioなんじゃない
0865名前は開発中のものです。
2014/06/11(水) 09:54:53.44ID:EKg7DQSq0866名前は開発中のものです。
2014/06/11(水) 09:55:26.50ID:7EYJGMHzコンシューマは基本C++で、ライブラリはそれぞれのプラットフォーム用に作られたライブラリ使ってる。
Windows上でデバッグするときは苦肉の策でOpenGLとかで似たように作る。
0867名前は開発中のものです。
2014/06/11(水) 09:59:16.67ID:a2WXiZKM今なら、Unrealengine4とかCryengineとか。
開発環境ではなくてゲーム本体でPCなら圧倒的にwindows
0868名前は開発中のものです。
2014/06/11(水) 11:58:39.64ID:kbUVkmhqつまりVSはWindows用の開発以外は使えないって事?
個人開発ならそれでいいけどコンシューマ向けだとキツいと思うんだが
実際の現場ってどうなってんの
0869名前は開発中のものです。
2014/06/11(水) 12:36:38.52ID:0cMdPBr+0870名前は開発中のものです。
2014/06/11(水) 12:36:48.51ID:korZFgLAソニーはVisualStudioで動くやつとgccでのコマンドラインでの開発が選べるのが定番
0871名前は開発中のものです。
2014/06/11(水) 12:48:01.72ID:kbUVkmhqじゃあとりあえずVS使えればゲームプログラマにはなれそうな感じなのかな
0872名前は開発中のものです。
2014/06/11(水) 13:04:58.50ID:korZFgLAいや、VS使うだけなら出来て当然なので
あんま意味ない
使えればプログラムかけるかっつーとそんなことはないわけで
APIとかだいたい独自なので、マニュアル読んで理解して使いこなす能力がないとお話にならない
0873名前は開発中のものです。
2014/06/11(水) 13:42:18.25ID:7WXZfC9nプロなの? それとも聞きかじり情報?
0874名前は開発中のものです。
2014/06/11(水) 17:05:26.88ID:0icQ1bsR0875名前は開発中のものです。
2014/06/11(水) 19:56:24.00ID:ZrP26BdUどんな環境でもプログラム書いて動かすものが作れるっていうのが重要なわけで
弘法筆を選ばず
0876名前は開発中のものです。
2014/06/11(水) 21:51:51.20ID:WrX8Es+8OSX•iOSならXCode、Androidならeclipseで鉄板だし
コンシューマは各プラットフォームのライブラリ使えればVSで行けるみたいだし
学習するならとりあえずターゲット絞った方がいいと思うけど
ゲーム会社に就職するなら、だけど
0877名前は開発中のものです。
2014/06/11(水) 21:55:19.66ID:7WXZfC9n弘法じゃない凡人は一本の筆を使いこなせるようになるにも一苦労なので筆を選ばざるをえない。
0878名前は開発中のものです。
2014/06/11(水) 22:00:45.16ID:SywAyYwTどんなIDEでも基本的な操作は出来るようになるよ
0879名前は開発中のものです。
2014/06/11(水) 23:04:20.34ID:7MaR9GBnどうせ習得してはまた新たな壁にぶつかるという
ラッキョウの皮をむくようなことになるだけだけどな。
IDE らっきょ
0880名前は開発中のものです。
2014/06/11(水) 23:08:17.00ID:V2TD8ZeqXcode とかバージョンかわるたびに前のプロジェクトがうまく動かなくなるとかざらにあるので、求められるのは与えられたものを調べてすぐつかいこなす能力
0881名前は開発中のものです。
2014/06/11(水) 23:22:36.32ID:6wElIYFK0882名前は開発中のものです。
2014/06/11(水) 23:30:44.92ID:SywAyYwT言いたいことは分かるけど、
>ラッキョウの皮をむく
って例え、経験がないから分からんかったわww
通だなwww
0883名前は開発中のものです。
2014/06/12(木) 06:43:31.61ID:L8Vso62KできればVSで動くライブラリだと助かる
一応ゲーム制作経験はあるから、リファレンスがあれば作れると思う
0884名前は開発中のものです。
2014/06/12(木) 07:17:39.83ID:vRgUoWDI0885名前は開発中のものです。
2014/06/12(木) 07:39:46.78ID:WfpU2RZu個人に対しては制限された環境しか与えられていない
0886名前は開発中のものです。
2014/06/12(木) 07:56:48.31ID:0sQ/4i7b0887名前は開発中のものです。
2014/06/12(木) 09:00:44.47ID:E66MRmQEVITAのPSMもC#
0888名前は開発中のものです。
2014/06/12(木) 09:25:52.94ID:zPikE+yOライセンス料がいくらかは知らない
0889名前は開発中のものです。
2014/06/12(木) 10:16:44.91ID:eRzlOATi0890名前は開発中のものです。
2014/06/12(木) 14:02:33.71ID:CRNljBu4PSPならPSP版DXライブラリもあるし割となんでもできるんじゃね
0891名前は開発中のものです。
2014/06/12(木) 15:39:57.02ID:idpLfuQS一応きくけど作れたとしてそれを売ろうとしたらライセンス料いるって知ってる?
0892名前は開発中のものです。
2014/06/12(木) 17:13:06.20ID:EGqf6ecZmonogame辺りがフリーかな
PSMとかPS4も対応するみたいだけどライセンス大変そう
仕様はまんまXNAなんでそれらサンプルや資料がそのまま使える
開発活発はただしC#
0893名前は開発中のものです。
2014/06/13(金) 02:31:14.01ID:BxeyyLjbライブラリやエンジンの利用料をごっちゃにするな
売上なくても固定費取られるんだっけ?
0894名前は開発中のものです。
2014/06/13(金) 15:25:42.09ID:O3W0ptm6PS4のインディーはどうなってるのかな?
0895名前は開発中のものです。
2014/06/13(金) 23:11:27.36ID:NBfAH6Dj0896名前は開発中のものです。
2014/06/14(土) 01:29:28.56ID:u1apXmDd登録してくる
0897名前は開発中のものです。
2014/06/14(土) 08:02:38.08ID:cW1M/S3K\10,000前後で再配布無料だし
0898名前は開発中のものです。
2014/06/14(土) 14:15:25.01ID:6iOYhCEEclass "MapAnimationAdmin";
と前方宣言したんですが
forward declaration of 'struct MapAnimationAdmin'
という構造体と勘違いされているのかエラーが出て出来ません
VisualStudioだと出来たと思うんですが、Eclipseだと出来ないんでしょうか?
0899名前は開発中のものです。
2014/06/14(土) 14:40:49.76ID:37JUYTf32) #includeの順番がおかしい事に起因している → 順番を正しくする
チェックする場所はこんな所かな
0900名前は開発中のものです。
2014/06/14(土) 15:56:40.17ID:6iOYhCEE0901名前は開発中のものです。
2014/06/14(土) 17:18:02.71ID:uMwrWsOs0902名前は開発中のものです。
2014/06/14(土) 17:54:22.34ID:6iOYhCEE0903名前は開発中のものです。
2014/06/14(土) 18:46:03.04ID:37JUYTf30904名前は開発中のものです。
2014/06/18(水) 19:56:58.90ID:ma8cg4mpまだXP持っててもゲーム用じゃ使わないだろうし
0905名前は開発中のものです。
2014/06/18(水) 20:07:43.69ID:CzJGNNdhなかなか過去の遺産って捨てらんないよね…
0906名前は開発中のものです。
2014/06/18(水) 20:16:18.23ID:N8Tb0KHMDirectX12で軽量化やGPU活用の為にまた変わるみたいだし
直よりパフォーマンスは落ちるけどレンダラーだけ切り替えられるマルチプラットフォームの
グラフィックスライブラリやゲームエンジンも有り
0907名前は開発中のものです。
2014/06/18(水) 20:37:44.57ID:FAN59TRzDirectX9...古いけど十分、でも古い
DirectX11...現行なので普通はこっち、ゲームエンジンやプログラミングの学習も兼ねるなら迷わずこれ
OpenGL(CP3.2)...マルチプラットフォームなので他機種での動作が可能、ただしライブラリ設計がクソ、他のライブラリにかなり頼る
Ogre3D...将来性も情報量もなし、使うべきでない
Unity...上位機能を望まなければ簡単なプログラミングでゲームが作れる、簡単にゲームを作りたいだけならこれ
C#だがSharpDXやMonoGameもおすすめ
0908名前は開発中のものです。
2014/06/18(水) 23:31:34.64ID:a3SIvP3sって感じでシンプルだけどクソではないだろ
0909名前は開発中のものです。
2014/06/19(木) 00:13:10.79ID:nLPcoi9X0910名前は開発中のものです。
2014/06/19(木) 00:23:12.04ID:lO1Eej6Ehttp://cpplover.blogspot.jp/2014/05/opengl.html
XNAもかなりよかったんだが開発停止して昔のVisualStudioを使わないといけないから、もう古いな
0911名前は開発中のものです。
2014/06/19(木) 00:40:27.02ID:D4AdegVY12でまた同じような事するんだろうな
(・・・・もう覚えるの面倒です)
0912名前は開発中のものです。
2014/06/19(木) 01:05:20.37ID:6/D2oQWWそこに書いてあることを理由にクソと言い切るのは
ゲーム製作を始める初心者に誤解を招くだけ
0913名前は開発中のものです。
2014/06/19(木) 01:29:04.41ID:lO1Eej6EOpenGLも選択肢にはなるのは分かるけど……
なによりもオブジェクト指向な書き方ができないのがツラい
技術発表はOpenGLでの実装が多いから先端の技術に興味ある人はいいんだろうけど
0914名前は開発中のものです。
2014/06/19(木) 08:14:04.04ID:31au4KtMOgreが情報量少ないて何の冗談だ?将来性は今も開発進んでてIrrlichtよりマシだし
SharpDXとかMonoGameてDirextX9相当だし今時のシェーダーが組めない
0915名前は開発中のものです。
2014/06/19(木) 08:27:50.13ID:BMdZ3LEOお前こそ何言ってんだ
0916名前は開発中のものです。
2014/06/19(木) 08:49:07.49ID:6/D2oQWW自分でステータス管理、バッファ管理その他諸々の処理書けばオブジェクト指向で書けるじゃん
DirectXでもAPI直叩きは気持ち悪くて同じような処理書くことになるし
0917名前は開発中のものです。
2014/06/19(木) 09:03:30.40ID:31au4KtM0918名前は開発中のものです。
2014/06/19(木) 10:23:59.18ID:88xd9jEp0919名前は開発中のものです。
2014/06/19(木) 11:41:58.64ID:ioG87yMmOpenGLはラップしてると何故か気持ち悪くなる
0920名前は開発中のものです。
2014/06/19(木) 15:49:23.76ID:5ywlWImOキャラクターごとにクラス作るか、キャラクターというクラス作ってパラメーターとかモデルを登録する方式にするか迷うんだけどどうしますかね
0921名前は開発中のものです。
2014/06/19(木) 16:22:56.31ID:OzKIEc040922名前は開発中のものです。
2014/06/19(木) 19:46:32.64ID:OSALf3vF>>921が言うようにキャラクタークラス作ってパラメーターやモデルを登録する方式が良い
ただ、キャラクタークラスを継承したキャラクター毎のクラスが在ってもいいとは思う
0923名前は開発中のものです。
2014/06/19(木) 19:56:52.61ID:c9nisOjB0924名前は開発中のものです。
2014/06/21(土) 00:11:03.73ID:tuXXF6Tj個体複雑性に起因する条件分岐が増えるのをどう回避するか、か。
末端(=キャラ個体)に複雑さを集約するか、
流れ制御側(=タスクシステム、メインループ)に複雑さを押し付けるかだな
どちらも楽しそうだな
0925名前は開発中のものです。
2014/06/21(土) 00:30:22.54ID:EKUWcmyOロジックとして分かりやすく簡潔にかける方を選んどけ
速さを求めるのは衝突判定とか描画部分だけで良い
0926名前は開発中のものです。
2014/06/21(土) 07:10:24.87ID:5/Sd9UCE0927名前は開発中のものです。
2014/06/21(土) 11:22:51.25ID:iamZ/Ql4クラスに細分化した所で関数呼び出しがvtable一個分の呼び出しロスぐらいで
分岐は生成時位しかしなくない?
状況で変わるようなのはステートパターンだろうし
挙動だけ別クラスでキャラクタークラスに差し込みしても同じ程度だろう
0928名前は開発中のものです。
2014/06/21(土) 15:35:14.32ID:29GFkBgY0929名前は開発中のものです。
2014/06/21(土) 18:38:49.94ID:ATU6QwSf0930名前は開発中のものです。
2014/06/21(土) 20:19:11.38ID:tuXXF6Tj0931名前は開発中のものです。
2014/06/22(日) 01:29:43.57ID:0HERkbyf「早すぎる最適化は諸悪の根源である」ってやつだね。
そういうのは遅さが気になってから手をつける部分なのにね。
0932名前は開発中のものです。
2014/06/22(日) 08:34:06.04ID:csKh83iE0933名前は開発中のものです。
2014/06/22(日) 12:42:14.46ID:EwYApkfmやっぱりラムダ式をmapに入れてるの?
0934421
2014/06/22(日) 17:30:21.94ID:So0IxHSH拡大・角度・移動の情報を格納した構造体を3次元配列で保持したいです。
当初は
SAnimationNode animations[MOTION_NUM_SIZE][FRAME_NUM_SIZE][IMAGE_NUM_SIZE];
としていたのですが、よく考えたらキャラクターごとに画像の枚数やアニメーションのフレーム数が違いました
動的配列の部分をvector型にしようとしたら
vector< vector<SAnimationNode> > animations[MOTION_NUM_SIZE];
となったんですが、これは
SAnimationNode animations[FRAME_NUM_SIZE][IMAGE_NUM_SIZE][MOTION_NUM_SIZE];
こういう意味になってしまわないでしょうか?
0935名前は開発中のものです。
2014/06/22(日) 18:17:04.62ID:6teQhgwqvector< vector<SAnimationNode> > animations[MOTION_NUM_SIZE];
↓
animations[MOTION_NUM_SIZE][FRAME_NUM_SIZE][IMAGE_NUM_SIZE]
となるんじゃない?
0936名前は開発中のものです。
2014/06/24(火) 13:14:27.79ID:Uog3JQdrWindows上でUTF8,UTF16LE,CP932を相互変換したいんだけど、
マルチバイト?ワイド文字?で混乱
0937名前は開発中のものです。
2014/06/24(火) 13:33:03.26ID:IbY2i7BWwindowsでは単に、8ビット単位と16ビット単位で扱うかどうかの差。
0938名前は開発中のものです。
2014/06/24(火) 13:58:16.35ID:Uog3JQdrマルチバイト文字→ShiftJis,UTF8,EUCJP
ワイド文字→UTF16,UCS-2
でいいの?
0939名前は開発中のものです。
2014/06/24(火) 14:27:45.13ID:GPkpIMQJ同じサイズのワード値をつかうのがワイド文字
ワイド文字は固定長なのでプログラムが
単純になるので楽、というのが本来の想定
windows は歴史的に16bitのユニコード
(UCS2)を内部コード兼ワイド文字としてつかってたんだけど
ユニコードが拡張されて、16bit 可変長(UTF16)になってしまい、
ワイド文字自体は拡張せずそのまま16bitとしたのでの「ワイド文字」を使ってても
マルチバイトと同じことする必要があってプログラム上のメリットは薄れてしまってます
ワイド文字は環境固有の内部データで
統一仕様が無いので、外部とのやりとりは
かならずマルチバイト文字列を使うのが原則
Unix系だとワイド文字は普通32bitです
そういう意味では、そこにでてる名前は全部規格で仕様決まってるのでマルチバイトです。たまたま固定長なだけ
Win環境に限ればAPIで「ワイド文字」
というとUTF16のことで、変換関数で
指定のマルチバイトと変換できます。
UCS2は可変長部分をのぞけばUTF16と合致します
他のOSではそうとは限らないので注意が必要。
マルチバイトのファイルは共有できるけど、ワイド文字はあくまでプログラム内部でつかうもの。
完全に環境依存しないためには、
ポータブルな文字コード変換ライブラリの準備と、
ワイド文字仕様を自分で決めて対応する必要があります
0940名前は開発中のものです。
2014/06/24(火) 14:34:10.01ID:GPkpIMQJ指定のマルチバイト→ワイド文字→指定のマルチバイト
とすれば文字コード変換できることになります
0941名前は開発中のものです。
2014/06/24(火) 16:00:12.61ID:F5vPhfmG文字列はwstring型でUTF16で格納しておくのが最善策かな?
0942名前は開発中のものです。
2014/06/24(火) 16:03:01.31ID:IbY2i7BWUTF16を使ってるのはWindowsくらいで。
Windowsを使ってるならUTF16でいい。
0943名前は開発中のものです。
2014/06/25(水) 03:34:26.90ID:tRPy5vnQ0944名前は開発中のものです。
2014/06/25(水) 07:19:47.27ID:i6nom8bRググった感じだとICUってのが良さそうだけど、ライセンスがよくわからん
誰か要約してくれ
http://source.icu-project.org/repos/icu/icu/trunk/license.html
0945名前は開発中のものです。
2014/06/25(水) 23:42:32.69ID:sN1oXLi0全部コード書いてるって人は少なからずいる・・・よね・・・
0946名前は開発中のものです。
2014/06/26(木) 00:08:17.74ID:2eOLOr660947名前は開発中のものです。
2014/06/26(木) 00:12:12.19ID:G3Ghr1l9俺もそれしたいんだけど重くなりそうじゃないか?
もともと遅いのに素材の最適化効かないし
0948名前は開発中のものです。
2014/06/26(木) 01:31:37.50ID:KO+8FPHuすげぇな。
0949名前は開発中のものです。
2014/06/26(木) 04:40:53.24ID:BP57VnwG0950名前は開発中のものです。
2014/06/26(木) 05:42:45.22ID:AmOKqMVz0951名前は開発中のものです。
2014/06/26(木) 07:52:49.33ID:vdSX1b1yまぁ凝ったことするなら結局自分で実装しなきゃいけないけど
凝らないところはぺいぺいってできるよ
>>947
処理速度とかは自分ができる範囲でいいかな
商用じゃないなら製作者が好きなようにすればいいと思う
0952名前は開発中のものです。
2014/06/26(木) 08:15:53.02ID:rGvRjoREもはやプログラマーじゃないじゃん
コードを書いてなんぼだろ
マウスでぽちぽち画面操作してるだけでゲームができてしまうなんて許されんだろこれは
0953名前は開発中のものです。
2014/06/26(木) 08:29:15.09ID:RxAyclSt限界までパフォーマンス突き詰めるなら自分で書くしかないだろうけど、半端なスキルで自作しても汎用エンジンより低性能になるだけだろうな…
0954名前は開発中のものです。
2014/06/26(木) 08:32:54.24ID:a944jii7やるべき仕事の本質は変わらんべ
コード書く密度量が減っても
そのぶん規模が大きくなってる
昔からその繰り返しじゃん?
0955名前は開発中のものです。
2014/06/26(木) 10:31:17.39ID:HDqbSuB3企画書があってこそコード書いてなんぼな状況になる
しかしプログラマの多くは企画書が書けないので、簡素なものに頼ってる
0956名前は開発中のものです。
2014/06/26(木) 10:43:16.51ID:ROLnmccFunityの無料版は非同期ロードが出来ないみたいだね。個人的にはここが致命的かな。
だからといって有料版買おうと思うほど、高度にグラフィカルなゲーム作ってる訳でもないし。
要件と費用対効果がいい感じになるのなら便利なんだろうけどな。
0957名前は開発中のものです。
2014/06/26(木) 10:52:26.33ID:KO+8FPHuツールは固有の使い方を覚えないといけないから
物覚えの悪い俺には不向きだ……。
とはいえ最近はUnity使えるとそれだけで有利なんだよなぁ……
0958名前は開発中のものです。
2014/06/26(木) 15:00:55.14ID:BP57VnwGなんかすごい事になってるな
0959名前は開発中のものです。
2014/06/26(木) 22:20:03.49ID:vxlMCzXq流し読みした限りでは、ヒゲモジャ教祖のコピーレフトじゃないほうの
つまり緩いほうのフリーソフトのライセンスの典型的な文言かと。
ちょっと自信なかったのでFAQのほうも読んでみました
http://userguide.icu-project.org/icufaq
の「How is the ICU licensed?」によれば
>a simple, permissive non-copyleft free software license,
>compatible with the GNU GPL.
>The ICU license is identical to the version of the X license
という事なので、Xライセンス(MITライセンス)と同じみたいですね
0960名前は開発中のものです。
2014/06/26(木) 22:44:18.33ID:LTYq6LHZおお、要約サンクス
MITと同じって事は著作権表示しとけば好きに使っていいのか
ちょっと触ってみようかな
0961名前は開発中のものです。
2014/06/27(金) 00:21:52.45ID:ca0yLnFP0962名前は開発中のものです。
2014/06/27(金) 04:25:38.40ID:3FddD6R40963名前は開発中のものです。
2014/06/28(土) 01:52:31.46ID:Qml0dYMKプログラミング重視の会社・・・オブジェクト指向が出来ればいい
古さ重視の会社・・・C言語とUNIXが出来ればいい
だったらどれが一番多い?
0964名前は開発中のものです。
2014/06/28(土) 01:53:20.27ID:/Aw0cnXsちょっぴり大人さ
0965名前は開発中のものです。
2014/06/28(土) 01:59:32.24ID:qVQSlIJD0966名前は開発中のものです。
2014/06/28(土) 09:07:15.04ID:fYNbwyWmツールはつくれても面白いゲームは作れない会社・・・オブジェクト指向が出来ればいい
時代の流れに完全に取り残されてる会社・・・C言語とUNIXが出来ればいい
こうかな…さすがにCとUNIXだけってゲーム会社はもうないかな
0967名前は開発中のものです。
2014/06/28(土) 13:14:02.98ID:pkvK53ex私はpocoライブラリを使ってる都合で文字コード変換はしますけど
UTF-16⇔UTF-8のみなのでMSのAPIで済ませてます。簡便ですので
0968名前は開発中のものです。
2014/06/28(土) 13:30:50.89ID:UFXBTkrK使い方はよく分からんけど
0969名前は開発中のものです。
2014/06/29(日) 13:10:50.88ID:Yl1HyccO楽して儲かるゲーム作っといてそれを言うなよって感じ・・・
0970名前は開発中のものです。
2014/06/29(日) 15:05:01.46ID:OwKWjPKS大爆笑
0971名前は開発中のものです。
2014/07/01(火) 19:21:53.76ID:14799agU誰か無料のゲームエンジンの存在を教えてやれよ…
ゲームコーディングを知識ほぼ0の状態からスタートとか、挫折する未来しか見えない
0972名前は開発中のものです。
2014/07/01(火) 19:24:44.84ID:2U1HTXmR詳しくは月雫タクトで検索
0973名前は開発中のものです。
2014/07/01(火) 21:31:57.05ID:NbePC4/Bコイツのことだろ
C/C++ゲーム製作総合スレッド Part4
http://peace.2ch.net/test/read.cgi/gamedev/1376262450/481
一時期、前スレに湧いてた「kazuki」って奴だろそいつ
0974名前は開発中のものです。
2014/07/01(火) 22:44:05.97ID:bRWh4YXo0975名前は開発中のものです。
2014/07/01(火) 23:06:23.36ID:2U1HTXmR0976名前は開発中のものです。
2014/07/01(火) 23:09:44.15ID:2U1HTXmRttp://jbbs.shitaraba.net/bbs/read.cgi/game/49104/1355540267/l50
0977名前は開発中のものです。
2014/07/02(水) 00:54:00.05ID:hTKfgYQbこいつはすごいの?
0978名前は開発中のものです。
2014/07/03(木) 13:20:31.93ID:bmzuMbOZhttp://blogs.msdn.com/b/vcblog/archive/2014/07/02/graphics-diagnostics-in-visual-studio-2013-update-3-rc.aspx
0979名前は開発中のものです。
2014/07/05(土) 21:27:49.06ID:4rWl8Euu一生掛けてもテトリスすら作れなさそう
0980名前は開発中のものです。
2014/07/05(土) 22:33:05.40ID:mMkxAecd0981名前は開発中のものです。
2014/07/05(土) 22:37:30.46ID:VPCAfWy50982名前は開発中のものです。
2014/07/05(土) 23:15:37.36ID:CJTkk+Apもし他の人が言ってるようにkazukiなら行くいく詐欺で実際には行ってないことになる。
0983名前は開発中のものです。
2014/07/06(日) 00:52:20.23ID:crYRPTpb0984名前は開発中のものです。
2014/07/06(日) 01:25:59.86ID:LtkmUGY20985名前は開発中のものです。
2014/07/06(日) 09:18:10.68ID:/OKy/hLS自己啓発セミナーか何かに見えるんだよなぁ…
0986名前は開発中のものです。
2014/07/06(日) 10:10:14.99ID:/c1kpgiT0987名前は開発中のものです。
2014/07/06(日) 13:31:10.89ID:ij3Sb7R10988名前は開発中のものです。
2014/07/06(日) 19:13:55.67ID:0XE4ySRd2年ぐらいずっとゲーム中にインスタンス化してたわ
0989名前は開発中のものです。
2014/07/06(日) 23:36:27.31ID:aXYLrS//それをさせない、使わせない、徹底した指向などというものがあるなら、それは
単なる教条主義、カルト宗教、ゲーム作れないアタマでっかちの屁理屈。無価値
0990名前は開発中のものです。
2014/07/07(月) 22:37:43.59ID:eo+VXBvr0991名前は開発中のものです。
2014/07/07(月) 23:58:57.62ID:vAXNC/8j威張れるのは大学まで。
大学卒業後は他人の手駒としてキリキリこき使われる運命なのだ。
0992名前は開発中のものです。
2014/07/08(火) 00:07:38.81ID:5BHEJoHN>>988-991の会話の流れが全く理解できない
0993名前は開発中のものです。
2014/07/08(火) 00:21:10.51ID:4Hc5PqSd>>989「頭の固いお前が悪い」
>>990「オマエモナー」
>>991「人間に戻りたいです」
0994名前は開発中のものです。
2014/07/08(火) 06:37:39.35ID:ZcFfD8ry大概は設計から製造、テストまで一通りやらされる
プログラムだけの仕事はオフショアでやる
プログラムしかできないとかデバッグ要員にしかならん
0995名前は開発中のものです。
2014/07/08(火) 13:06:36.01ID:n3Bq3v3Y{
for(i=995;i<1000;i++)
std::cout << "埋め";
}
0996名前は開発中のものです。
2014/07/08(火) 13:18:07.15ID:qjtrVyE1こんな短いプログラムでミスするな。
0997名前は開発中のものです。
2014/07/08(火) 13:21:39.89ID:HOUfCYEJ0998名前は開発中のものです。
2014/07/08(火) 13:33:31.30ID:Lr0fEuau0999名前は開発中のものです。
2014/07/08(火) 14:41:48.07ID:aAa77qniどの程度真実なのかね。
1000名前は開発中のものです。
2014/07/08(火) 15:06:44.25ID:M09CLZ/Z,〜、
ヽ('∀`)ノ ノ_ζ
( ) 彡
/ω\
10011001
Over 1000Threadもう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。