- 1 名前:名前は開発中のものです。 mailto:sage [2014/01/16(木) 00:00:31.27 ID:w6WW3hAo.net]
- ゲーム製作におけるC/C++全般に関するスレです。
元スレ DXライブラリ 総合スレッド その17 toro.2ch.net/test/read.cgi/gamedev/1383795645/ 前スレ C/C++ゲーム製作総合スレッド Part1 toro.2ch.net/test/read.cgi/gamedev/1337516528/ C/C++ゲーム製作総合スレッド Part2 toro.2ch.net/test/read.cgi/gamedev/1351015269/ C/C++ゲーム製作総合スレッド Part3 toro.2ch.net/test/read.cgi/gamedev/1357899040/ C/C++ゲーム製作総合スレッド Part4 toro.2ch.net/test/read.cgi/gamedev/1376262450/
- 173 名前:名前は開発中のものです。 mailto:sage [2014/02/03(月) 22:07:10.79 ID:eCQAtwWs.net]
- インディーズでは一人とかの少人数で作ってる事も珍しくないが?
自分の作りたいゲームを作りたいとか、分け前を増やしたいとか、動機は色々だが
- 174 名前:名前は開発中のものです。 mailto:sage [2014/02/03(月) 22:10:32.11 ID:/+Ylube7.net]
- 評論家専門君が憶測でそんな話をしてなんになる?
- 175 名前:名前は開発中のものです。 mailto:sage [2014/02/03(月) 22:11:53.17 ID:eCQAtwWs.net]
- 一人で作ってますよ?
- 176 名前:名前は開発中のものです。 mailto:sage [2014/02/03(月) 22:15:15.46 ID:xlOVneBM.net]
- 専門に在籍中だが確かに1人で作ってるな
チーム制作も1人で作ってるチームが大半だな 絵とか音楽とかのリソースはネットで拾うけどね でもそれって結局のところは1人で作ってないよね リソースまで全部っていう意味で1人で作ってる上で有名なのを作ってるんだとしたらただの天才だからどっかの企業に引き抜かれてろ
- 177 名前:名前は開発中のものです。 mailto:sage [2014/02/03(月) 22:27:34.48 ID:eCQAtwWs.net]
- なぜ企業に入らないといけないの?
好きに作らせてくれて、好きに売らせてくれるような、夢のような企業があるの? むしろ、売れ行き重視で好きに作らせてくれない、 倫理観とかが大事で好きに売らせてくれない、 といった企業がほとんどじゃね?
- 178 名前:名前は開発中のものです。 mailto:sage [2014/02/03(月) 22:30:48.05 ID:/+Ylube7.net]
- 俺はフリー素材+一部絵師に描いてもらってる
趣味なんだから人それぞれのスタイルでいいだろう
- 179 名前:名前は開発中のものです。 mailto:sage [2014/02/03(月) 22:49:21.68 ID:xlOVneBM.net]
- >>173
うん、わかった 自分の生活費さえなんとかできるなら1人で自由に作ってな
- 180 名前:名前は開発中のものです。 [2014/02/03(月) 22:55:48.33 ID:HKt11pxu.net]
- はやく仕事辞めてゲーム作りに没頭したい
- 181 名前:名前は開発中のものです。 mailto:sage [2014/02/03(月) 23:24:56.58 ID:/+Ylube7.net]
- それは言わないお約束だろ
もっと時間のかからない遊びに流れるのも手だけど
- 182 名前:名前は開発中のものです。 mailto:sage [2014/02/03(月) 23:32:32.16 ID:eCQAtwWs.net]
- しかし一番金になりそうな趣味がゲーム作りなんだよな
- 183 名前:名前は開発中のものです。 mailto:sage [2014/02/03(月) 23:37:42.57 ID:eCQAtwWs.net]
- 売れてからじゃないと仕事を辞められないのが難点だが
- 184 名前:名前は開発中のものです。 mailto:sage [2014/02/03(月) 23:49:11.10 ID:Ny+RFe0l.net]
- お前は金のことばっかりだな
- 185 名前:名前は開発中のものです。 mailto:sage [2014/02/04(火) 00:08:11.00 ID:uJ0GtlwQ.net]
- >>180
金持ちに成りたいと考える事は悪い事だと思う?
- 186 名前:名前は開発中のものです。 mailto:sage [2014/02/04(火) 00:23:08.29 ID:J1FJfMJW.net]
- スレッドの主旨を考えてくれ。どっかのスレみたいに株の話をされても困る
- 187 名前:名前は開発中のものです。 mailto:sage [2014/02/04(火) 00:33:58.33 ID:uJ0GtlwQ.net]
- そうだな……コッチに移るか
【同人】作ったゲームを金にする その4 toro.2ch.net/test/read.cgi/gamedev/1336913652/
- 188 名前:名前は開発中のものです。 mailto:sage [2014/02/04(火) 19:06:59.83 ID:uJ0GtlwQ.net]
- >>166
昔のゲームはアスキーアートを絵として使ってたわけだが?
- 189 名前:名前は開発中のものです。 mailto:sage [2014/02/04(火) 19:09:55.94 ID:uJ0GtlwQ.net]
- しかも音楽はbeep音だw
とはいえbeep音でwevファイルを再生させてた事もあるからあなどれん
- 190 名前:名前は開発中のものです。 mailto:sage [2014/02/04(火) 19:58:16.47 ID:J1FJfMJW.net]
- それくらい無いものの中でなんとかしてきたということだな
やれメンツが無能だとかいってたらきりが無いわけだ
- 191 名前:名前は開発中のものです。 mailto:sage [2014/02/04(火) 20:14:51.47 ID:uJ0GtlwQ.net]
- >メンツが無能だとか
そういやそれも一人で作るようになる理由の一つだったな まあ、人数が増えると衝突も増えるからな むしろあの頃は、DQ1が出る前までは独りで作るのが当たり前だったような……
- 192 名前:名前は開発中のものです。 mailto:sage [2014/02/04(火) 20:22:21.38 ID:J1FJfMJW.net]
- "あの頃"から制作してるの?
ひゃあ!ゲーム爺は生涯現役だぜ
- 193 名前:名前は開発中のものです。 mailto:sage [2014/02/04(火) 20:27:51.59 ID:uJ0GtlwQ.net]
- 作成はしてない!
が、パソコン持ってないのにパソコン本を買ったりするぐらいに憧れてたな
- 194 名前:名前は開発中のものです。 mailto:sage [2014/02/04(火) 20:41:31.66 ID:uJ0GtlwQ.net]
- というか今丁度ドラゴンクエストへの道って漫画を読み返していた所だ
- 195 名前:名前は開発中のものです。 mailto:sage [2014/02/04(火) 20:55:24.69 ID:G5JzxpFK.net]
- 伝説級の漫画だよなあれ
- 196 名前:名前は開発中のものです。 mailto:sage [2014/02/04(火) 21:09:48.44 ID:uJ0GtlwQ.net]
- うん、長編ゲームを作る人には是非とも読んで欲しい
- 197 名前:名前は開発中のものです。 mailto:sage [2014/02/06(木) 07:38:03.22 ID:Mklm8P+v.net]
- 読めば読むほど
中村光一氏がDQ抜けたのが悔やまれる。 お色気コンテンツに憤慨していたエピソードは笑える。
- 198 名前:名前は開発中のものです。 mailto:sage [2014/02/06(木) 20:33:21.38 ID:wgo5Jh7Q.net]
- ドラゴンナイトやカオスエンジェル以前のエロゲだよな?興味はあるな
- 199 名前:名前は開発中のものです。 mailto:sage [2014/02/06(木) 21:01:16.01 ID:YaLd/g6Z.net]
- 軽井沢なんとかのことだろうかw
- 200 名前:名前は開発中のものです。 mailto:sage [2014/02/06(木) 21:10:32.33 ID:wgo5Jh7Q.net]
- 複雑な操作や手抜きグラフィックに怒ったりしてた話やね
- 201 名前:名前は開発中のものです。 [2014/02/09(日) 03:20:30.53 ID:yNPMLa+Y.net]
- 中村光一って不思議のダンジョンシリーズ一発屋で終わったな
- 202 名前:名前は開発中のものです。 mailto:sage [2014/02/09(日) 03:48:09.82 ID:n/hHVigC.net]
- 高校時代から名作を生み出してる中村光一が一発屋……?
- 203 名前:名前は開発中のものです。 mailto:sage [2014/02/09(日) 03:53:10.61 ID:CEeCxVwx.net]
- まぁウィザードリィみたいに不思議のダンジョンを伝統化しようとして
燃え尽きた印象があるな 一発屋というより、沢山あった弾を同じ場所に撃ち込んじゃった感じ
- 204 名前:名前は開発中のものです。 mailto:sage [2014/02/09(日) 04:22:56.68 ID:eECi/LC1.net]
- ドアドアいまいちだったけど
あの時代にスクランブルを完全移植した情熱の炎は、そう簡単には消えないさ! 俺は信じてるぜ!
- 205 名前:名前は開発中のものです。 mailto:sage [2014/02/09(日) 16:33:33.68 ID:Om4RLWnj.net]
- 今C言語でオセロゲームを作成中なのですが、AIを作るところで行き詰ってしまいました。
とりあえずminiMax法で作ろうとしており参考にしているサイトのURLは hp.vector.co.jp/authors/VA015468/platina/algo/2_2.html です。 このサイトの for(最初の子節点の手; 未評価の子節点がある; 次の子節点に移る) という部分を見る限り先に子節点がいくつあるのか調べておく必要があると思うのですが その解釈でよろしいですか?
- 206 名前:名前は開発中のものです。 mailto:sage [2014/02/09(日) 16:43:02.64 ID:c5g9RcWt.net]
- >>201
先に子節点を調べなくてもできるけど 先に調べておかないと置けないにも拘わらず置くかどうかを計算するから無駄な計算が増えるし、バグで置いた場合に何処でバグが発生してるのか調べるのが大変になる
- 207 名前:名前は開発中のものです。 mailto:sage [2014/02/09(日) 16:50:59.29 ID:Om4RLWnj.net]
- >>202
ありがとうございます。 先に子節点を調べることにします。 調べる上で、次の子節点を調べるときにその前に調べた子節点以外から探す方法が よくわからないのですが、どのような実装を行えばいいでしょうか
- 208 名前:名前は開発中のものです。 [2014/02/10(月) 08:15:56.04 ID:EeAxagpY.net]
- 木構造の探索はスタック使うと楽
再帰処理で実装するといいよ
- 209 名前:名前は開発中のものです。 mailto:sage [2014/02/10(月) 16:50:10.78 ID:r9rJHs9v.net]
- >>204
スタックとはどのようなものかはわかりますが、実装法などは全くわかりません。 二分木なら typedef struct node_t{ typedef struct node_t *left; typedef struct node_t *right; int data; }NODE; のようにすればいいと思うのですが、探索となると多分木になると思うので 同じようには実装できませんよね?
- 210 名前:名前は開発中のものです。 mailto:sage [2014/02/10(月) 17:57:20.00 ID:zYS9MiyX.net]
- typedef struct node_t{
struct node_t *child; struct node_t *next; int data; }NODE;
- 211 名前:名前は開発中のものです。 mailto:sage [2014/02/10(月) 18:19:16.50 ID:r9rJHs9v.net]
- >>206
つまり二分木と同じ実装法で見方を変えるということですか?
- 212 名前:名前は開発中のものです。 mailto:sage [2014/02/10(月) 19:22:37.65 ID:zYS9MiyX.net]
- 多分木を表現できるデータ構造の一例ってだけだよ
要件は、多分木であることと、ルートから葉に向かって再帰的に処理できること、でしょ? その要件に足るようなデータ構造で自分の使いやすいものを選択すればいい
- 213 名前:名前は開発中のものです。 mailto:sage [2014/02/11(火) 10:42:36.42 ID:MuB9VwbG.net]
- 三角関数を使ったカメラの回転が上手くいきません・・・
横回転は綺麗に回るんですが、縦回転がY軸しか動かず変な動きになります 分かりやすく解説してるとこは無いですか?
- 214 名前:名前は開発中のものです。 mailto:sage [2014/02/11(火) 14:18:07.24 ID:EVFbkSHB.net]
- >>209
クォータニオンで球面線形補間すると 理論はよく分からないけど何故かうまくいくよ
- 215 名前:名前は開発中のものです。 mailto:sage [2014/02/11(火) 14:32:23.80 ID:pu0dsTgx.net]
- ビューの回転は注視点を移動させた後に組み直せばいい。
- 216 名前:名前は開発中のものです。 mailto:sage [2014/02/11(火) 22:12:14.10 ID:sWtHnyX5.net]
- >>210-211
ありがとう、ちょっと見てみたんですが、 私のコードは三角関数メインなので行列の理解が追いつきませんでした 根本のコードの変更も考えてみます
- 217 名前:名前は開発中のものです。 [2014/02/21(金) 22:16:42.52 ID:WPj1YKPY.net]
- 船のゲーム創りたいんですが、
どういう考え方で波を作れば船が上下したり傾いたりするでしょうか? 波を表すメッシュの頂点にベクトルを紐付けて、それを隣の頂点に伝搬する・・・ みたいな事は想像してるんですが、あんまりうまくないというか、 あまり効率的ではないですよね? いい方法ないですか?
- 218 名前:名前は開発中のものです。 mailto:sage [2014/02/22(土) 05:41:07.36 ID:zZnD13Ju.net]
- >>205
2分探索木を自分で作らなくても、ライブラリにあるでしょ? B-Tree(self-balancing search tree)平衡2分探索木 B+Tree、赤黒木など キューやスタックも、ライブラリにあるでしょ? 優先度つきキュー(priority queue)はよく使うよ 詳細はWikipediaなどで、調べて
- 219 名前:名前は開発中のものです。 mailto:sage [2014/02/22(土) 10:17:30.51 ID:YdhdLZfz.net]
- >>213
なんちゃって水面は基本的にはそういう作り方だよ。バネダンパの二次元格子。 お船は、近傍の格子の頂点や面に反発させてどんぶらこさせればいいやという。 トライアル&エラーでパラメータ適当にいじって見た目の調整。おしまい あ、リアル志向のゲームは何やってるのか知らないよ。学生時代に数値流体 やってたけど、あっちに凝り出すと際限がないからみんなどっかで折り合い 付けて端折ってそれっぽく見せてるだけだと思うよ
- 220 名前:名前は開発中のものです。 mailto:sage [2014/02/22(土) 10:56:40.26 ID:4BDQmNHU.net]
- DirectComputeのサンプルをみると、パーリンノイズから低周波成分を取り除いて地面全体に繰り返し、ハイマップとして地面に適用してるみたい
- 221 名前:名前は開発中のものです。 mailto:sage [2014/02/22(土) 11:39:42.84 ID:YdhdLZfz.net]
- >>216
DX7以前の頃だとテクスチャを2枚用意してマルチテクスチャにして UV値の操作で各々のテクスチャを交差するように移動させると水面ぽく 見せられるよー的なやり方が多かったけど、あれをハイトマップにも 使う感じかな?
- 222 名前:名前は開発中のものです。 mailto:sage [2014/02/27(
]
- [ここ壊れてます]
- 223 名前:木) 22:01:09.66 ID:XfV+syCM.net mailto: イケメンがいい []
- [ここ壊れてます]
- 224 名前:名前は開発中のものです。 mailto:sage [2014/02/28(金) 02:45:29.15 ID:WKCAf0/q.net]
- >>218
鏡を見てため息をつけばいいと思う
- 225 名前:名前は開発中のものです。 mailto:sage [2014/03/01(土) 15:31:28.07 ID:xOOTC3SX.net]
- c++で別のクラスの数値が欲しいときはメソッドに相手クラスのポインタ変数を持ってコンストラクタでポインタを渡せばいいのですか?
- 226 名前:名前は開発中のものです。 mailto:sage [2014/03/01(土) 15:36:42.26 ID:ckzLhO0U.net]
- コンストラクタ?
- 227 名前:名前は開発中のものです。 mailto:sage [2014/03/01(土) 17:29:52.27 ID:P6ZwcTGw.net]
- コンス卜ラクタはコンス卜ラクタなんじゃ…?
- 228 名前:名前は開発中のものです。 mailto:sage [2014/03/01(土) 17:49:25.00 ID:ckzLhO0U.net]
- ああ理解した、メソッド→メンバか
メンバ関数にポインタ変数を渡して…何でここでコンストラクタ??って思った
- 229 名前:名前は開発中のものです。 mailto:sage [2014/03/01(土) 23:00:27.16 ID:B/y6lyvX.net]
- >>220
メンバにポインタ持たせてもいいし、相手クラスを継承してしまうとか、 その数値が必要になる関数の引数に、ポインタや参照で渡したり、 数値そのものを引数で渡すだけでも、好きなのでいいと思うよ
- 230 名前:名前は開発中のものです。 mailto:sage [2014/03/02(日) 01:12:07.39 ID:One/ooAB.net]
- で、どこにゲーム関係あるの?
- 231 名前:名前は開発中のものです。 mailto:sage [2014/03/02(日) 18:14:52.71 ID:eSGAMgB8.net]
- 暗号化した外部ファイルとかセーブファイルの拡張子ってどうしてる?
foobarとかhogeみたいに意味のない文字なのがベストなんだけど 既存で使われているdatとかsavだと既になんらかの関連付けが されてしまってる場合がありえるよね
- 232 名前:名前は開発中のものです。 mailto:sage [2014/03/02(日) 18:30:57.68 ID:RKme8rWA.net]
- ユーザが開くことを前提としないなら気にしない。
- 233 名前:名前は開発中のものです。 mailto:sage [2014/03/02(日) 18:34:29.49 ID:eSGAMgB8.net]
- そうか、むしろ無しでもいいか
- 234 名前:名前は開発中のものです。 mailto:sage [2014/03/02(日) 19:12:19.16 ID:odwxDc0w.net]
- というか、ユーザーでもすぐ「あ、これがセーブファイルだな」と判るようにしておいたほうがいいだろ。
データのバックアップを取りたいことあるだろうし。
- 235 名前:名前は開発中のものです。 mailto:sage [2014/03/02(日) 19:15:46.36 ID:Oh6AuFJG.net]
- 何でも.dbにしてる
- 236 名前:名前は開発中のものです。 mailto:sage [2014/03/02(日) 19:21:49.81 ID:XPJItCw9.net]
- bin
- 237 名前:名前は開発中のものです。 [2014/03/02(日) 20:11:55.85 ID:uIAHAPdg.net]
- gyazo.com/c12e1b45288577f41bce47f9a3c3b457.png
マルチスレッドってオブジェクトリストの更新中に オブジェクトリストを参照できないんだから意味なくないですか? どうしてマルチスレッドで動作が軽くなるんですか? セマフォをオブジェクト単位でかけてたらセマフォの処理で余計重くなるのでは
- 238 名前:名前は開発中のものです。 mailto:sage [2014/03/02(日) 20:20:19.85 ID:9+Akgo4p.net]
- ダブルバッファで検索するんだ
- 239 名前:名前は開発中のものです。 mailto:sage [2014/03/02(日) 20:21:15.86 ID:Oac8ta12.net]
- 誰か使ってないですかねぇ
oxygine.org/
- 240 名前:名前は開発中のものです。 [2014/03/02(日) 20:51:20.45 ID:uIAHAPdg.net]
- >>233
画面のチラツキを抑えるほうが出てきて、出てきても申し訳程度の説明しかない・・・ www.cs.tsukuba.ac.jp/~yas/cs/csys-2007/2007-12-14/ >◆ダブルバッファリング > 整数を1つバッファに書き込むだけでロック/アンロックを行なっていると、 実際の並列処理では重たい。 > ロックの回数を減らすために、ダブルバッファリ ングと呼ばれる技術がよく使われる。読み手と書き手で別々にバッファをもうけ、1つのバッファの処理をしている間は、ロックを行なわない。 リストで1つのオブジェクトを更新してる間は「描画スレッドが使っちゃだめですよフラグ」でもたてるのか? それを参照する時点でスレッドセーフじゃなさそうだけど それともリスト内の全部のインスタンスのコピーを毎フレーム作るのか?
- 241 名前:名前は開発中のものです。 [2014/03/02(日) 20:59:31.72 ID:uIAHAPdg.net]
- あいや、これは循環バッファ?というやつでダブルバッファとは違うのか
- 242 名前:名前は開発中のものです。 mailto:sage [2014/03/02(日) 22:59:32.88 ID:bJnQrcsZ.net]
- 計算したデータを参照渡しせずに、値渡しすればいいだけの話
- 243 名前:名前は開発中のものです。 mailto:sage [2014/03/02(日) 23:13:50.02 ID:0kUNTeet.net]
- マルチスレッドを効果的に使う場面は、
BGM,効果音など 背景の処理、草や木が風でゆらゆらする シェダー関係もそう
- 244 名前:名前は開発中のものです。 mailto:sage [2014/03/02(日) 23:15:24.40 ID:YZ+wwGoZ.net]
- インスタンスのセットを2つ(AとBとする)作っておいて
・描画スレッドがAの状態を使用して描画している間、更新スレッドは Aの状態をもとに更新後の状態をBに作成する。 ・両方が完了したらAとBをスワップする って方法かなぁ >>232の図で言えば、Subスレッドが描画している間に Mainスレッドがもう次のフレームの接触判定を処理し始めてる感じ
- 245 名前:名前は開発中のものです。 mailto:sage [2014/03/02(日) 23:23:34.37 ID:bJnQrcsZ.net]
- 計算したデータを描画用のバッファに積んで、描画処理に引き渡せばいいだけ。
なんで単純に出来ることを複雑にやろうとするんだ?
- 246 名前:名前は開発中のものです。 mailto:sage [2014/03/02(日) 23:31:43.29 ID:Oh6AuFJG.net]
- >>231
.binはlinuxの.exeって感じでデータっぽくない
- 247 名前:名前は開発中のものです。 mailto:sage [2014/03/02(日) 23:37:13.73 ID:Oh6AuFJG.net]
- >>234
面白そうだけど利用者ほとんどいないようだし、すぐに消えそうだな cocos2dのほうが良いよ
- 248 名前:名前は開発中のものです。 mailto:sage [2014/03/02(日) 23:44:39.24 ID:Oh6AuFJG.net]
- >>239
それって概念的には全てのインスタンスx2だけど、 描画スレッドは描画に関するデータ(それも画面内に入るもの)だけあれば良いから 実際には必要なメモリ量を削った実装で実現できるな
- 249 名前:239 mailto:sage [2014/03/03(月) 00:29:47.75 ID:+ppeC4rH.net]
- >>243
確かにそうだ そして多分それが>>240が言っている 「計算したデータを描画用のバッファに積んで、描画処理に引き渡」す ってのに近いのかも この辺で思ったんだが、もしDirectX11を生で叩いてるなら DeferredContextとか使うといいのかな
- 250 名前:名前は開発中のものです。 [2014/03/03(月) 00:38:44.19 ID:/CdxWaD8.net ?BRZ(10000)]
- sssp://img.2ch.net/ico/u_01.gif
>>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); } };
- 251 名前:名前は開発中のものです。 mailto:sage [2014/03/03(月) 07:13:32.62 ID:mjyyGJWK.net]
- 一フレームぶんのバッファに積み終わってから引き渡せばいいだけの話。
引き渡したら描画を描画スレッドにやらせて、計算スレッドは次の計算に入ればいい。 なんで単純で簡単なことを複雑に考えるのか、さっぱり理解できない。 そもそも描画順序などを考えると、座標がすべて確定した後で無ければ、 描画処理なんて出来ないのに、なんで計算直後にチマチマ描画しようという発想になってるんだ? 毎フレームnewとかも、嫌なら最初からある程度の領域を作っておけばいいだけの話で、 そんな簡単に解決できるどうでもいいことをイチイチ聞く意味が分からない。 なにこの思考能力の欠如?
- 252 名前:名前は開発中のものです。 mailto:sage [2014/03/03(月) 07:44:19.21 ID:+ppeC4rH.net]
- 別の書き方は出来ないのかあんたは
- 253 名前:名前は開発中のものです。 [2014/03/03(月) 08:19:00.54 ID:/CdxWaD8.net ?BRZ(10000)]
- sssp://img.2ch.net/ico/u_01.gif
gyazo.com/7984315b649ca2378a5b63989ada2874.png 図で確認するとこんな感じ? ロックの仕方がよくわからんけど、 メインスレッド側のバッファは描画スレッドに必要な情報(頂点とか)いらないからトントンになるのかな そうすると、毎フレームnew
- 254 名前:キるより保持してたほうが楽そう
描画スレッドはモデルの頂点の展開とかやらずに文字通りZバッファに登録するだけだったりする? [] - [ここ壊れてます]
- 255 名前:名前は開発中のものです。 mailto:sage [2014/03/03(月) 14:38:46.71 ID:7XSFdIT2.net]
- >文字通りZバッファに登録するだけだったりする?
意味不明
- 256 名前:名前は開発中のものです。 mailto:sage [2014/03/03(月) 20:28:03.25 ID:+ppeC4rH.net]
- >>248
使ってるライブラリ教えて
- 257 名前:名前は開発中のものです。 [2014/03/04(火) 00:42:30.15 ID:tv4RC6nv.net]
- なんか描画スレッド分けるのがマルチスレッドみたいな流れになってるけど
処理の分割しないと複数コアの性能いかせないよね >>238以外にも分割出来るところはあるんじゃないの AIなんかのフレームと分けられる箇所が効果的だとは思うんだが
- 258 名前:名前は開発中のものです。 mailto:sage [2014/03/04(火) 00:54:00.93 ID:Tkd6LlXd.net]
- >>248
君はレベルが低すぎる。基礎的なことすら理解していないようだから 身の丈に合った技術で制作するべきだ
- 259 名前:名前は開発中のものです。 mailto:sage [2014/03/04(火) 01:01:46.35 ID:Tkd6LlXd.net]
- ゲームロジック以外については定番のパターンがあるわけで、
ゲームロジックについてはゲームの性質次第だから汎用的な議論はできん
- 260 名前:名前は開発中のものです。 [2014/03/04(火) 01:12:12.33 ID:eUCtnBam.net ?BRZ(10000)]
- sssp://img.2ch.net/ico/u_01.gif
>>250 DXライブラリです
- 261 名前:名前は開発中のものです。 mailto:sage [2014/03/04(火) 01:22:03.26 ID:eUCtnBam.net]
- >>252
そんなこと言わないで><
- 262 名前:名前は開発中のものです。 mailto:sage [2014/03/04(火) 01:45:49.24 ID:MGr4iOMf.net]
- 身の丈に合った技術で満足してたら俺みたいに全然成長しないままになるしいいんじゃね?
- 263 名前:名前は開発中のものです。 mailto:sage [2014/03/04(火) 03:19:20.41 ID:NSoGUl2d.net]
- 自称デキル人の大半はエセ
バグ生産しまくるのは得意みたいだがw 無視するに限るよ(ry
- 264 名前:名前は開発中のものです。 mailto:sage [2014/03/04(火) 03:24:44.21 ID:6r8+3FgW.net]
- >>256
満足するならなw
- 265 名前:名前は開発中のものです。 mailto:sage [2014/03/04(火) 09:14:16.41 ID:Tkd6LlXd.net]
- いまどきDXライブラリの初心者でマルチスレッドの基礎も理解してないのに
無理に背伸びした結果が「文字通りZバッファに登録するだけだったりする?」 格好ばかりつけて内容がなさすぎだろ 上で新技術OpenMPとかドヤってたやつといい、もう少し自惚れを抑えて 真摯な姿勢で学ばんと時間の無駄だよ
- 266 名前:名前は開発中のものです。 mailto:sage [2014/03/04(火) 09:15:50.51 ID:A1Dcjr5j.net]
- そもそもグラボの基礎から学びなおせ。
明らかにZバッファが何か分かってないだろ。
- 267 名前:名前は開発中のものです。 mailto:sage [2014/03/04(火) 12:24:51.64 ID:VEfOUnzL.net]
- >>254
Zソートの機能があるライブラリって訳じゃ無いのね
- 268 名前:名前は開発中のものです。 [2014/03/04(火) 21:19:35.34 ID:eUCtnBam.net ?BRZ(10000)]
- sssp://img.2ch.net/ico/u_01.gif
>>261 アルファ値がある面だけZソートして、不透明な面の後から描画しています。 マルチスレッドの基礎はわかりませんが、 勉強目的で実装してみようかなと考えて、疑問点があったので質問しました。 質問の内容に戻りたいのですが、 メインスレッドではオブジェクトの座標だけ計算して、 描画スレッドでオブジェクトの座標からモデルの頂点等を展開すると メインスレッドと描画スレッドが共有する値が少なくなっていいかなと考えたんですが、 実際に使われているスタンダードな方法とかあれば教えていただけると助かります。
- 269 名前:名前は開発中のものです。 mailto:sage [2014/03/05(水) 00:56:58.44 ID:vvepHaRA.net]
- struct Node {
....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; };
- 270 名前:名前は開発中のものです。 mailto:sage [2014/03/05(水) 00:58:26.26 ID:vvepHaRA.net]
- Lock g_sync; // winならクリティカルセクシ
- 271 名前:ョン、linuxならセマフォ
Layer 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); ....} } [] - [ここ壊れてます]
- 272 名前:名前は開発中のものです。 mailto:sage [2014/03/05(水) 01:01:42.52 ID:vvepHaRA.net]
- void threadBack(){ // Logic
....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; }
- 273 名前:名前は開発中のものです。 mailto:sage [2014/03/05(水) 01:07:10.79 ID:vvepHaRA.net]
- class Game : public Scene {
....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スレッドしかテクスチャーとかの生成と破棄ができないのだが、 ロジック側の要請をキューにしてメッセージパッシングするのは 少し複雑な実装になるこった。
|

|