ゲーム製作におけるC/C++全般に関するスレです。
元スレ
DXライブラリ 総合スレッド その18
http://peace.2ch.net/test/read.cgi/gamedev/1399459468/
前スレ
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/
C/C++ゲーム製作総合スレッド Part5
http://peace.2ch.net/test/read.cgi/gamedev/1389798031/
C/C++ゲーム製作総合スレッド Part6
http://peace.2ch.net/test/read.cgi/gamedev/1404815419/
探検
C/C++ゲーム製作総合スレッド Part7 [転載禁止]©2ch.net
■ このスレッドは過去ログ倉庫に格納されています
2015/01/11(日) 10:19:31.85ID:RDQlUyF+
2015/01/11(日) 10:39:11.80ID:lPY833F2
乙
2015/01/11(日) 18:56:29.39ID:Q8fjCZ3C
おつん
2015/01/12(月) 16:06:35.67ID:skthRk+e
基本的にゲーム内で使う文章を外に書くメリットはないよな?
で、セーブファイルは専用の構造体を用意して
そこに保存が必要な数値を片っ端からぶっこめばいいんだよな?
なら今のゲームでテキストファイルを使う場面って、
セーブデータ等のテキストデータのエクスポートくらいだと考えていいんだろうか?
で、セーブファイルは専用の構造体を用意して
そこに保存が必要な数値を片っ端からぶっこめばいいんだよな?
なら今のゲームでテキストファイルを使う場面って、
セーブデータ等のテキストデータのエクスポートくらいだと考えていいんだろうか?
2015/01/12(月) 16:37:57.91ID:7zQT7KO5
文章校正のたびにいちいちコンパイルすんの?
2015/01/12(月) 16:41:38.11ID:2JI68Ytd
海外のゲームやったことないのかね?
大抵テキストデータは外に置いてあって日本語化Modとか作られてたりする。
日本国内しか相手にしないならそれでも良いと思うけど
大抵テキストデータは外に置いてあって日本語化Modとか作られてたりする。
日本国内しか相手にしないならそれでも良いと思うけど
2015/01/12(月) 18:56:00.81ID:+4zBZCv5
テキストデータでデータ構造作っておくと色々と便利だよ
テキストエディッタ使えばデータを書き換えられるから、
わざわざ専用エディッタを作らなくてもいいし
テキストエディッタ使えばデータを書き換えられるから、
わざわざ専用エディッタを作らなくてもいいし
2015/01/13(火) 02:13:15.64ID:NQh/p/ub
lua,Squirrelなどを使って、シナリオ・文章などを、
読み込んだりしているんじゃないの?
これらを修正する度に、
コンパイルするのは時間の無駄
読み込んだりしているんじゃないの?
これらを修正する度に、
コンパイルするのは時間の無駄
2015/01/13(火) 02:51:46.58ID:z6JNQND6
ウチの会社では、基本的にゲーム内で使う文章は外のツールで作成してるな。
わざわざソース内に置くメリットがむしろ感じられない。誤字修正の度にプログラマが手を入れる必要が出てくるし、ビルドに時間もかかるし、別の言語に移植する際に面倒じゃないか。
あ、あと、文章の問題であればそのツールを開けばいいという、問題の修正箇所を局所化できるというメリットもあるから。
セーブは確かに専用の構造体(というかPODクラス)を用意して必要なデータをぶっこむ、シリアライズして吐き出す形だな。
それらの吐き出す形は結局単純なテキストではなく、何らかの形式に則ったバイナリ(テキストエディタで開いても意味不明な部分が交じるファイル)だけど。
わざわざソース内に置くメリットがむしろ感じられない。誤字修正の度にプログラマが手を入れる必要が出てくるし、ビルドに時間もかかるし、別の言語に移植する際に面倒じゃないか。
あ、あと、文章の問題であればそのツールを開けばいいという、問題の修正箇所を局所化できるというメリットもあるから。
セーブは確かに専用の構造体(というかPODクラス)を用意して必要なデータをぶっこむ、シリアライズして吐き出す形だな。
それらの吐き出す形は結局単純なテキストではなく、何らかの形式に則ったバイナリ(テキストエディタで開いても意味不明な部分が交じるファイル)だけど。
2015/01/13(火) 08:36:10.29ID:u897FUjW
プログラマ1人で造るミニゲームとかで、メニュー程度の文章量しかないなら
たしかにハードコーディングのほうが楽ではある
たしかにハードコーディングのほうが楽ではある
2015/01/13(火) 11:20:25.68ID:tklViF/V
2015/01/13(火) 12:40:45.14ID:x0mM86eW
4 :名前は開発中のものです。:1985/01/12(土) 16:06:35.67 ID:skthRk+e
基本的にゲーム内で使う画像を外に書くメリットはないよな?
で、描画手順は専用の構造体を用意して
そこに開始点・終了点の座標や塗る色の数値を片っ端からぶっこめばいいんだよな?
なら今のゲームで画像ファイルを使う場面って、
画面紹介等の画像のスクショくらいだと考えていいんだろうか?
基本的にゲーム内で使う画像を外に書くメリットはないよな?
で、描画手順は専用の構造体を用意して
そこに開始点・終了点の座標や塗る色の数値を片っ端からぶっこめばいいんだよな?
なら今のゲームで画像ファイルを使う場面って、
画面紹介等の画像のスクショくらいだと考えていいんだろうか?
2015/01/13(火) 18:27:31.65ID:u897FUjW
2015/01/13(火) 18:40:16.59ID:RKeKGf32
画像ファイルでそれやろうって奴はいないだろ…
テキストは定義された物を書き出すだけだからやろうって考える人がいるだけで
あと、MOD作ってもいいよとか多人数でやるよとか
追加含めて大量に書くよってんならテキスト外置きなんだろうけど、
逆に言えばこのどれにも当たらないならいらないかなって
一部でもオープンソースにする気はないって人もいるだろうし
壊せる壁って破壊済み相当の状態で床などに変化するオブジェクトだけど、
これはダメージを与えていくと壊せる物はマップチップ扱いなのかキャラクター扱いなのかよく分からない
キャラクターをマップチップに正確に重ねてチップを隠すんならいけそうだけど、
そうするとマップ情報をキャラクター生成部に送る必要があるんだろうか?
テキストは定義された物を書き出すだけだからやろうって考える人がいるだけで
あと、MOD作ってもいいよとか多人数でやるよとか
追加含めて大量に書くよってんならテキスト外置きなんだろうけど、
逆に言えばこのどれにも当たらないならいらないかなって
一部でもオープンソースにする気はないって人もいるだろうし
壊せる壁って破壊済み相当の状態で床などに変化するオブジェクトだけど、
これはダメージを与えていくと壊せる物はマップチップ扱いなのかキャラクター扱いなのかよく分からない
キャラクターをマップチップに正確に重ねてチップを隠すんならいけそうだけど、
そうするとマップ情報をキャラクター生成部に送る必要があるんだろうか?
2015/01/13(火) 19:39:05.23ID:MdTOZHze
2015/01/13(火) 22:57:29.48ID:RKeKGf32
それ、一部の場面でレイヤーの代わりに使ったりする物のことを言ってるんだろ?
描画画像を全部内部で0から生成なんかやってたらそのコードだけでものすごい量になっちゃうよ
逆にそれが部品として小さいなら、外に置かなくても組み込んじゃえってのはありだとは思うし
それを実行しているのが一行目ってわけだ
非現実的な案ではあるけど、できるんなら画像の隠蔽は完璧だな
あと、一部ならオープンソースじゃなくてシェアードソースね、おk覚えた
描画画像を全部内部で0から生成なんかやってたらそのコードだけでものすごい量になっちゃうよ
逆にそれが部品として小さいなら、外に置かなくても組み込んじゃえってのはありだとは思うし
それを実行しているのが一行目ってわけだ
非現実的な案ではあるけど、できるんなら画像の隠蔽は完璧だな
あと、一部ならオープンソースじゃなくてシェアードソースね、おk覚えた
2015/01/13(火) 23:22:24.12ID:tklViF/V
お前は勘違いをしている
2015/01/13(火) 23:48:10.98ID:QJSitgs3
ソース違い
2015/01/13(火) 23:48:23.40ID:yF9v46c2
たとえ話は
通じなかった時に双方ともに間抜けなことになるのが辛いな
通じなかった時に双方ともに間抜けなことになるのが辛いな
2015/01/14(水) 00:25:45.86ID:8sU4Ec1w
2015/01/14(水) 01:05:05.22ID:8sU4Ec1w
>>14
>壊せる壁って破壊済み相当の状態で床などに変化するオブジェクトだけど、
>これはダメージを与えていくと壊せる物はマップチップ扱いなのかキャラクター扱いなのかよく分からない
本来は、昔のゲーム機の仕様(例えばOBJとかBGがあるやつね)の様々な縛り
の中での話なので、今なら好きに定義して自由に作ればいいんじゃねーかな
見当がつかなくて何か参考にしたいんならツクールの類でも触ってみて
内部の仕組みを推測して真似てみたりすればいいんじゃねーかな
>キャラクターをマップチップに正確に重ねてチップを隠すんならいけそうだけど、
そういう手も当然ありだよね
>そうするとマップ情報をキャラクター生成部に送る必要があるんだろうか?
どういう機能分割をしてるのかイマイチ分からんけど、座標系の概念が
考慮されてないなら取り入れたほうがいいんじゃねーの
>壊せる壁って破壊済み相当の状態で床などに変化するオブジェクトだけど、
>これはダメージを与えていくと壊せる物はマップチップ扱いなのかキャラクター扱いなのかよく分からない
本来は、昔のゲーム機の仕様(例えばOBJとかBGがあるやつね)の様々な縛り
の中での話なので、今なら好きに定義して自由に作ればいいんじゃねーかな
見当がつかなくて何か参考にしたいんならツクールの類でも触ってみて
内部の仕組みを推測して真似てみたりすればいいんじゃねーかな
>キャラクターをマップチップに正確に重ねてチップを隠すんならいけそうだけど、
そういう手も当然ありだよね
>そうするとマップ情報をキャラクター生成部に送る必要があるんだろうか?
どういう機能分割をしてるのかイマイチ分からんけど、座標系の概念が
考慮されてないなら取り入れたほうがいいんじゃねーの
2015/01/14(水) 01:50:18.20ID:oy3qeLAO
え、俺はマップチップもキャラも一緒のオブジェクトなんだけど
お前らわざわざ分けてんの?
お前らわざわざ分けてんの?
2015/01/14(水) 18:32:13.33ID:b3+ap1tg
2015/01/14(水) 20:11:23.18ID:oy3qeLAO
>>23
同じオブジェクトで行けるってことは、似て非なる別物じゃないと思うが
同じオブジェクトで行けるってことは、似て非なる別物じゃないと思うが
2015/01/14(水) 20:25:50.33ID:mV/UlqnK
好きなようにすりゃええがな
あんさんの方法を否定してる奴なんて誰もおらん
あんさんは他人を否定したくて仕方ないかも知れないがな!
あんさんの方法を否定してる奴なんて誰もおらん
あんさんは他人を否定したくて仕方ないかも知れないがな!
2015/01/14(水) 21:38:06.89ID:0XojYraf
例えどんな方法でも実現可能だったとしても
複数の手法の中からベストな物を追求するのは良いことである
複数の手法の中からベストな物を追求するのは良いことである
2015/01/14(水) 22:19:18.87ID:oy3qeLAO
2015/01/14(水) 23:02:57.92ID:iwR4jgL6
当たり判定の範囲をなしを含む特有の定義にして、
一番最初に横たわるキャラクターオブジェクト それがマップ
他のキャラクターとは一部の要素が大きく違う分管理に差が出るし
無駄を承知で分けた方が分かりやすくはなる…かも
一番最初に横たわるキャラクターオブジェクト それがマップ
他のキャラクターとは一部の要素が大きく違う分管理に差が出るし
無駄を承知で分けた方が分かりやすくはなる…かも
2015/01/15(木) 21:04:25.90ID:v7OuMrqm
マップと言えば、マップチップタイプみたいな並びを記憶しておく必要があるマップは、
当然二次元配列を使うとして
たとえば現在の装備一覧のような、
同じ要素を指す数値の並びをしている物の塊も二次元配列にすべきなんだろうか
当然二次元配列を使うとして
たとえば現在の装備一覧のような、
同じ要素を指す数値の並びをしている物の塊も二次元配列にすべきなんだろうか
2015/01/15(木) 23:17:08.52ID:Q5DMCUO8
>当然二次元配列を使うとして
?
?
2015/01/16(金) 08:47:44.30ID:ZjU+PjG/
2015/01/16(金) 12:23:34.85ID:KH2Og/LD
二次元のビットマップ画像も普通一次元配列で確保するよな。
2015/01/16(金) 23:19:42.96ID:aIsA+egi
>>29
>たとえば現在の装備一覧のような(…中略…)二次元配列にすべきなんだろうか
一覧表示にも色々あるけど
要求(される操作)に応じて適切なデータ構造(コンテナ)選ぶものなので
二次元配列でおk(な要求)ならそれで作るのが一番いいんじゃねーの
要素数がたかが知れてる場合、配列(std::vector)使ってるからって
何か問題が生じるような事はまずないわけだし
>たとえば現在の装備一覧のような(…中略…)二次元配列にすべきなんだろうか
一覧表示にも色々あるけど
要求(される操作)に応じて適切なデータ構造(コンテナ)選ぶものなので
二次元配列でおk(な要求)ならそれで作るのが一番いいんじゃねーの
要素数がたかが知れてる場合、配列(std::vector)使ってるからって
何か問題が生じるような事はまずないわけだし
2015/01/17(土) 08:27:09.12ID:XHyVYcVD
2次元配列でOKなものは1次元配列でOK
わざわざ2次元配列を使うメリットは何も無い
わざわざ2次元配列を使うメリットは何も無い
2015/01/17(土) 11:40:55.67ID:vMwgaTo6
シンタックスシュガーでしかないもんねぇ
初心者に教えるなら積極的に使うけど
初心者に教えるなら積極的に使うけど
2015/01/17(土) 11:55:03.58ID:YJD7hT+O
一次元配列で確保した上で行(or列)先頭にアクセスするための
インデックス(LUT)を用意するような内部実装でも二次元配列
なんであってだな(>>32)
ターゲットも実装も不明ならメリットねぇとは断言できんよ
インデックス(LUT)を用意するような内部実装でも二次元配列
なんであってだな(>>32)
ターゲットも実装も不明ならメリットねぇとは断言できんよ
2015/01/17(土) 11:57:15.65ID:YJD7hT+O
>>35被ったスマン
2015/01/17(土) 17:31:33.18ID:KBPYDccT
たとえば縦スクロールSTGのマップとかで、
メモリ節約のためにマップを行ごとに細切れにして
表示範囲の上に一行足して下から一行引くような処理をしていたりする場合、
一行ずつ読み込んでるんだという事を示すためにわざとやるとか
試作段階で仕様が固まらなかった時の苦肉の策がそのままになっちゃったとか?
二次配列ってなんかあんまり使い道が浮かばない
メモリ節約のためにマップを行ごとに細切れにして
表示範囲の上に一行足して下から一行引くような処理をしていたりする場合、
一行ずつ読み込んでるんだという事を示すためにわざとやるとか
試作段階で仕様が固まらなかった時の苦肉の策がそのままになっちゃったとか?
二次配列ってなんかあんまり使い道が浮かばない
39名前は開発中のものです。
2015/01/17(土) 18:57:09.16ID:O8Io0R5L 3Dでキャラクターが技によって自由に地面の凹凸を操作できるようにしたいんですが
予め頂点を作っておかないとダメでしょうか?
キャラクターがここじゃーって指してる座標に一番近い面の上に
頂点をいい感じに窪ませるように配置して、
もともとあった面と入れ替わるような感じにしたいのですが、
当たり判定やハードウェアレンダリングしたいならやっぱり面倒ですか?
まぁハードウェアレンダリングなんてどうやればいいのかわからないですが
予め頂点を作っておかないとダメでしょうか?
キャラクターがここじゃーって指してる座標に一番近い面の上に
頂点をいい感じに窪ませるように配置して、
もともとあった面と入れ替わるような感じにしたいのですが、
当たり判定やハードウェアレンダリングしたいならやっぱり面倒ですか?
まぁハードウェアレンダリングなんてどうやればいいのかわからないですが
2015/01/17(土) 20:24:50.48ID:dqiO68fF
確かにあんまり、というか殆ど多次元配列使わないな
配列へのアクセス部分は、隠蔽する傾向にあるから、アクセス用インデックスが多次元でも、アクセスの内部仕様は1次元配列でやってることが多いな
また配列の次元数を増やすと、後から解読するのが難しくなって、可読性が下がる
だから次元が増える場合は、次元別にクラス定義して、一次元配列のメンバに下位次元を持たせるようにしてるな
そういやD3DMATRIXに2次元配列のメンバあるけど、自分で定義したものじゃないし、そもそもそのメンバって殆どアクセスしないなぁ
配列へのアクセス部分は、隠蔽する傾向にあるから、アクセス用インデックスが多次元でも、アクセスの内部仕様は1次元配列でやってることが多いな
また配列の次元数を増やすと、後から解読するのが難しくなって、可読性が下がる
だから次元が増える場合は、次元別にクラス定義して、一次元配列のメンバに下位次元を持たせるようにしてるな
そういやD3DMATRIXに2次元配列のメンバあるけど、自分で定義したものじゃないし、そもそもそのメンバって殆どアクセスしないなぁ
2015/01/17(土) 20:40:58.36ID:eRR0fEDj
std::vector<std::vector<int>>とかやるじゃん?
2015/01/17(土) 20:55:17.63ID:XHyVYcVD
Dictionary<Point, Tile> Mapしか使わん
2015/01/17(土) 21:10:19.92ID:dqiO68fF
2015/01/17(土) 21:23:58.77ID:j+s0LTMz
ベジェとか普通に書いたら多次元配列になるんじゃ…
2015/01/17(土) 21:56:16.62ID:ceElOD9E
2015/01/17(土) 22:50:59.20ID:Gl1ppQ6p
2015/01/17(土) 22:59:23.12ID:aI7crSKW
>>39
テッセレータを使ったらいいのでは?
凹ませたい領域を4頂点の単純なタイルで表現し、それをフィールドに敷き詰めておく。
凹ませるときは、該当するタイルに対しテッセレーション(最大64分割)して、
高さマップを与えてディスプレースメントさせる。
テッセレータを使ったらいいのでは?
凹ませたい領域を4頂点の単純なタイルで表現し、それをフィールドに敷き詰めておく。
凹ませるときは、該当するタイルに対しテッセレーション(最大64分割)して、
高さマップを与えてディスプレースメントさせる。
2015/01/18(日) 00:08:51.85ID:DJykD+cW
2015/01/18(日) 07:49:00.66ID:sJaCX/+8
長さ不定のに多重vectorはしないかな
2015/01/18(日) 12:34:52.67ID:W1O9uyd7
vector<vector<T>>は便利なときもあるけど、
コピーやトラバースのパフォーマンスがvector<T>に比べて著しく遅いんで、
そちらが重要なときは多少冗長でもvector<T>で扱うようにしてる。
コピーやトラバースのパフォーマンスがvector<T>に比べて著しく遅いんで、
そちらが重要なときは多少冗長でもvector<T>で扱うようにしてる。
51名前は開発中のものです。
2015/01/18(日) 12:40:46.60ID:beKeRz4L vector<vector<T>*>
2015/01/18(日) 12:44:37.58ID:sJaCX/+8
生ポインタ使うならdequeで良いだろ
とは言えないパフォーマンス差があるんだよな…
とは言えないパフォーマンス差があるんだよな…
2015/01/18(日) 13:35:03.38ID:yNPMG51i
vector<unique_ptr<T>>
2015/01/18(日) 14:23:19.06ID:J6J53lAj
null_ptr
2015/01/18(日) 15:20:17.44ID:W1O9uyd7
nullptrでは・・・
2015/01/18(日) 15:53:55.88ID:dWFx6RaG
相当昔にC++触って、今と環境がかなり違いそうなのですが、
タスクシステムを実装する時、昔は固定長のメモリを予め確保したうえで、そのメモリを
newすることによって使っていたのですが、今のゲームもこのやり方が主流ですか?
それともスマートポインタ+std::listでも速度出るのでしょうか?
スマートポインタとやらは、これはやってる事はガベージコレクションですよね?
速度に問題無しということですが、ヒープ領域から自由にnewdeleteして大丈夫なのかと不安になるのですが・・・
タスクシステムを実装する時、昔は固定長のメモリを予め確保したうえで、そのメモリを
newすることによって使っていたのですが、今のゲームもこのやり方が主流ですか?
それともスマートポインタ+std::listでも速度出るのでしょうか?
スマートポインタとやらは、これはやってる事はガベージコレクションですよね?
速度に問題無しということですが、ヒープ領域から自由にnewdeleteして大丈夫なのかと不安になるのですが・・・
2015/01/18(日) 16:23:04.34ID:6LkKK9Db
誰も使ってない
2015/01/18(日) 17:19:29.87ID:W1O9uyd7
>>56
スマートポインタはリソース管理の安全性を高めるだけで、
new、deleteのパフォーマンスを高めるわけではない。
むしろクラス被せる分、オーバーヘッドが嵩む。
現代のハードウェア環境においては、多くの場合そのオーバーヘッドは問題にならないというだけ。
スマートポインタはリソース管理の安全性を高めるだけで、
new、deleteのパフォーマンスを高めるわけではない。
むしろクラス被せる分、オーバーヘッドが嵩む。
現代のハードウェア環境においては、多くの場合そのオーバーヘッドは問題にならないというだけ。
2015/01/18(日) 18:04:36.15ID:WcZ4waH9
手動解放は、車で例えると
タイム短縮のためにわずかなエンジンパワーのロスも許されないプロレーサーや、
オートマはエンジンパワーが完全には伝わらないのでクソ
俺は完璧なギアチェンジ操作ができる(自称含む)のでマニュアルで通すんだって人向け
解放忘れてメモリリーク他の面倒な問題を起こしても泣かないなら全部手動で
それが嫌なら我々が作った処理班にぜひおまかせ下さい!
スマートポインタってそういうもの
shared_ptrやweak_ptr自体の書き忘れや循環参照などは防げないけど
>>54
ga
タイム短縮のためにわずかなエンジンパワーのロスも許されないプロレーサーや、
オートマはエンジンパワーが完全には伝わらないのでクソ
俺は完璧なギアチェンジ操作ができる(自称含む)のでマニュアルで通すんだって人向け
解放忘れてメモリリーク他の面倒な問題を起こしても泣かないなら全部手動で
それが嫌なら我々が作った処理班にぜひおまかせ下さい!
スマートポインタってそういうもの
shared_ptrやweak_ptr自体の書き忘れや循環参照などは防げないけど
>>54
ga
2015/01/18(日) 19:56:46.03ID:1ZXKy9PG
>>56
ここではWindowsならメモリ確保の負荷はそんなに問題にならないとしている
http://marupeke296.com/ALG_No2_TLSFMemoryAllocator.html
スマートポインタはGCってそれどういう意味だよ。
スマートポインタに使っている参照カウントはGCの方式の一つとは言えるが。
http://ja.wikipedia.org/wiki/参照カウント
ここではWindowsならメモリ確保の負荷はそんなに問題にならないとしている
http://marupeke296.com/ALG_No2_TLSFMemoryAllocator.html
スマートポインタはGCってそれどういう意味だよ。
スマートポインタに使っている参照カウントはGCの方式の一つとは言えるが。
http://ja.wikipedia.org/wiki/参照カウント
2015/01/18(日) 20:33:19.91ID:E2jV+3+x
おじさんは2万円前後の安もんの8インチタブ(CPU:Z3735G,RAM:1GB)を
即売会場でデモ機として使う都合で、バッテリー駆動でできるだけ長時間
ヌルヌル動かすために貧乏根性丸出しな組み方しちゃったけど、そういう
変な目的が無ければ自分の好きなようにやればいいと思うんだがな
○○のやり方が大丈夫なのか不安とか意味わかんねぇな。周りキョロって
ねぇで自分で決めた基準動作環境で自分でテストすればいいじゃんと
即売会場でデモ機として使う都合で、バッテリー駆動でできるだけ長時間
ヌルヌル動かすために貧乏根性丸出しな組み方しちゃったけど、そういう
変な目的が無ければ自分の好きなようにやればいいと思うんだがな
○○のやり方が大丈夫なのか不安とか意味わかんねぇな。周りキョロって
ねぇで自分で決めた基準動作環境で自分でテストすればいいじゃんと
2015/01/19(月) 05:04:21.05ID:xLKHfZFD
最近は底の方でも1GB
これなら多少雑に使ってもリークさえさせなければ問題ないな
なお512MB以下は爆死する模様
そんな化石がまだあるのかどうかは知らないが
これなら多少雑に使ってもリークさえさせなければ問題ないな
なお512MB以下は爆死する模様
そんな化石がまだあるのかどうかは知らないが
2015/01/19(月) 08:44:27.43ID:XDjCkDzP
全部起動時に読み込みとかやめて!
2015/01/19(月) 19:59:00.97ID:21R5SuXr
ふははは、貴様のセルを使うかどうかもわからない画像や音楽データで埋めてくれる!
読み込み時間といい、占有領域といい、ロースペにはある種のテロだな…
読み込み時間といい、占有領域といい、ロースペにはある種のテロだな…
2015/01/19(月) 23:27:21.97ID:U55o2asL
音楽やムービーのストリーム再生以外で、オンメモリでないゲームが作れるって凄いな。
そこまでリソースが用意できないよ。
そこまでリソースが用意できないよ。
2015/01/20(火) 00:33:47.17ID:KjcEBQWF
メモリ次第ではあるけど
常駐とブラウザ合わせたら警告食らうくらいのゲームならあるんじゃないの
常駐とブラウザ合わせたら警告食らうくらいのゲームならあるんじゃないの
2015/01/20(火) 01:29:50.61ID:VPdLWQW0
>>65
数年前、(旧)Android Marketに個人でゲーム出した時は機種依存の
バッドノウハウの量に本気で吐き気がしたけど、あれに比べたら
PCゲーは作りやすい思たよ。メモリフットプリント小さくするだけで
おkなら大したこたないと思える程にAndroidスマホはカオス
(だった。今はどうなってるのか知りません)
数年前、(旧)Android Marketに個人でゲーム出した時は機種依存の
バッドノウハウの量に本気で吐き気がしたけど、あれに比べたら
PCゲーは作りやすい思たよ。メモリフットプリント小さくするだけで
おkなら大したこたないと思える程にAndroidスマホはカオス
(だった。今はどうなってるのか知りません)
2015/01/20(火) 10:35:24.77ID:B8GspOPa
1080pの画像を一度に100枚読み込めばロード地獄間違いなし
1920*1080*4 /1024/1024 *100 = 791MBぐらい
スマホだとアプリが強制終了するかも
グラフィックの豪華なアプリのModern Combat 5でもメモリは512MBぐらいまでしか使わない
1920*1080*4 /1024/1024 *100 = 791MBぐらい
スマホだとアプリが強制終了するかも
グラフィックの豪華なアプリのModern Combat 5でもメモリは512MBぐらいまでしか使わない
2015/01/20(火) 22:05:53.74ID:GnwjxLXH
圧縮テクスチャ使えば1/5くらいにはなるんじゃね?
70名前は開発中のものです。
2015/01/21(水) 16:36:27.53ID:OnV6g/fE そういや、Appmethodってどうよ?ちょっと気になってるんだが使ってる奴居る?
2015/01/21(水) 22:17:40.75ID:1wPj2se9
タスクシステムで組む時、
・タスクリスト2つ用意して移動と描画分ける
・タスクリスト1つに移動も描画も入れる
どっちがいいのでしょうか?個人的には前者にしたいけど・・・
・タスクリスト2つ用意して移動と描画分ける
・タスクリスト1つに移動も描画も入れる
どっちがいいのでしょうか?個人的には前者にしたいけど・・・
2015/01/21(水) 22:19:47.80ID:CqaY5thk
前者にしたいのにできない要因を考えるのがよい
「みんながどうやってるか気になる」ってだけなら気にする必要はない
「みんながどうやってるか気になる」ってだけなら気にする必要はない
2015/01/22(木) 00:52:45.85ID:fqCV4qez
タスクシステムはバグった時に大変そうな印象
そりゃあ、バグれば大抵それなりに大変な目に遭うんだけどさ
そりゃあ、バグれば大抵それなりに大変な目に遭うんだけどさ
2015/01/22(木) 02:20:52.62ID:PxEmvatE
>>68
一般的なアプリは、数MB
一般的なアプリは、数MB
2015/01/22(木) 07:47:04.58ID:niGIPEW3
昔タスクシステムスレあったけど相手の主張への罵詈雑言だらけでいつの間にか消えたなw
2015/01/22(木) 16:27:46.03ID:pRLOyuNi
移動と描画両方持ってたほうがスマートだべ
2015/01/22(木) 16:50:32.20ID:MBqyL5iH
2015/01/22(木) 17:35:35.81ID:niGIPEW3
まあ個人でゲーム作る分にはどう作ろうが60FPS出てちゃんと動けば勝ちだからなw
会社とかで厳密にタスク管理されてるなら覚えなきゃならんのだろうけど。
会社とかで厳密にタスク管理されてるなら覚えなきゃならんのだろうけど。
2015/01/22(木) 18:57:21.14ID:gduwMt/g
タスクシステムw
馬鹿しか使わん
馬鹿しか使わん
2015/01/22(木) 21:08:37.90ID:9AIymZEw
>>79
なんで?
なんで?
2015/01/22(木) 21:13:16.12ID:ZmYkrSmS
2015/01/22(木) 22:06:24.79ID:MBqyL5iH
ほーら始まったw
スレ立ててそっちでやれw
スレ立ててそっちでやれw
2015/01/22(木) 23:18:22.87ID:MosgWt8b
たすくしすてむってなあに?
おいしいの?
おいしいの?
2015/01/22(木) 23:53:50.36ID:hRTvuKPH
ごめんなさい
反射してしもた
反射してしもた
2015/01/22(木) 23:56:43.23ID:U49zokjS
だーかーらー、ただのリストに大げさな名前付けんなや
2015/01/23(金) 00:49:17.98ID:jY3sOyRC
2015/01/23(金) 01:07:05.72ID:JihQada2
はじめからほとんど完成しているシステムに、
そのシステムの中枢部に触れないように要素を追加できるような実装を目指すなら有効
つまり、OSやエンジン作るならこれがいいかもしれない
が、そうでなければバグが修正困難だったり無駄な手続きが多いクソ
なんだ実行順って 必要になった時にやらせろオラァァ
そのシステムの中枢部に触れないように要素を追加できるような実装を目指すなら有効
つまり、OSやエンジン作るならこれがいいかもしれない
が、そうでなければバグが修正困難だったり無駄な手続きが多いクソ
なんだ実行順って 必要になった時にやらせろオラァァ
2015/01/23(金) 10:32:52.67ID:ZhBY7M7O
最近はどんな言語でもクロージャやジェネレータ (yield) をサポートするようになってきた。
タスクシステムとは呼ばれないけど、同じ目的には使えるんじゃないの?
描画に関しては、オブジェクトが自前で描画命令を発行するのか、
オブジェクトとは別にスプライトのような構造を用意して、描画はそちらに任せるかの差が大きい気がする。
巷のゲーム向けのフレームワークを見るに、後者のほうが可搬性は優れているんじゃないか?
タスクシステムとは呼ばれないけど、同じ目的には使えるんじゃないの?
描画に関しては、オブジェクトが自前で描画命令を発行するのか、
オブジェクトとは別にスプライトのような構造を用意して、描画はそちらに任せるかの差が大きい気がする。
巷のゲーム向けのフレームワークを見るに、後者のほうが可搬性は優れているんじゃないか?
2015/01/23(金) 10:52:38.49ID:ZpK8PG+c
オブジェクトが自前で描画って構造はゲームではあり得なくない?
ポーズ作るだけで一苦労じゃん
ポーズ作るだけで一苦労じゃん
2015/01/23(金) 16:09:48.65ID:gTjNx7m+
ネットに転がってるC++のゲームソースしっかりしたのはほとんどタスクシステムっぽいのばっかだから
そういうソースじゃないと読む気がしなくなったっていう(´・ω・`)
そういうソースじゃないと読む気がしなくなったっていう(´・ω・`)
2015/01/23(金) 16:29:50.12ID:Qg1gWf/N
単一のタスクだけで動かすと実によく機能するのに、
タスク同士を連動させようとすると途端にギクシャクする辺りが
実にぼっちらしくてよいが、
プログラムにそんなのやらせてどうするんだ
タスク同士を連動させようとすると途端にギクシャクする辺りが
実にぼっちらしくてよいが、
プログラムにそんなのやらせてどうするんだ
92名前は開発中のものです。
2015/01/24(土) 11:10:33.23ID:vN0iK6Pw >>89
cocos2dとかそんな感じじゃね
cocos2dとかそんな感じじゃね
2015/01/24(土) 13:26:12.19ID:AuIVSu3m
C++11のstd::asyncってのが便利そうだから使ってみた。
確かに簡単に別スレッドに非同期に仕事をさせられる。
だが、どうも処理結果を受け取ってスレッドを終了するのに膨大なコスト(500msくらい)がかかるようだ。
代わりに、std::threadで常時スレッドを走らせておいて、std::mutexで同期を取りながら
データのやり取りをするようにしたらとてもスムーズに動くようになった。
しかし、std::asyncを使った場合と比べて、煩雑な記述が避けられない。
スレッド終了のコスト高杉。
確かに簡単に別スレッドに非同期に仕事をさせられる。
だが、どうも処理結果を受け取ってスレッドを終了するのに膨大なコスト(500msくらい)がかかるようだ。
代わりに、std::threadで常時スレッドを走らせておいて、std::mutexで同期を取りながら
データのやり取りをするようにしたらとてもスムーズに動くようになった。
しかし、std::asyncを使った場合と比べて、煩雑な記述が避けられない。
スレッド終了のコスト高杉。
2015/01/24(土) 13:34:42.36ID:0N2Bqsd3
TBBやPPL使っとけ
2015/01/24(土) 16:36:58.01ID:l++ObWZB
>>93
Windowsの話だよな?
Windowsの話だよな?
96名前は開発中のものです。
2015/01/24(土) 20:09:43.23ID:Js5qaCaY C11使っとけ
2015/01/24(土) 22:06:18.60ID:SL/s5qpu
1タスクごとにスレッドそのものを開始終了するとコストが高いので
想定するCPUのコア数だけワーカースレッドを用意して
それらにタスクを投げるのが定石じゃないかな。
・キューにタスクがない時はスレッド待機。
・タスクをキューに投げたら全ての待機スレッドを励起。
・いずれかのスレッドがキュー上のタスクを取得して実行、他は再び待機。
・タスクが完了してもスレッド完了せず、次のタスクを確認する。
デザインパターンにあったはず。
想定するCPUのコア数だけワーカースレッドを用意して
それらにタスクを投げるのが定石じゃないかな。
・キューにタスクがない時はスレッド待機。
・タスクをキューに投げたら全ての待機スレッドを励起。
・いずれかのスレッドがキュー上のタスクを取得して実行、他は再び待機。
・タスクが完了してもスレッド完了せず、次のタスクを確認する。
デザインパターンにあったはず。
2015/01/24(土) 22:12:29.49ID:VTrvOh2Q
>>70
居ないのか……ま、いいや
居ないのか……ま、いいや
100名前は開発中のものです。
2015/01/24(土) 22:16:34.35ID:VTrvOh2Q スレッドの使い分けは適切に使わないと工数が意味もなく増殖するからな……
101名前は開発中のものです。
2015/01/24(土) 22:31:57.37ID:AuIVSu3m102名前は開発中のものです。
2015/01/25(日) 21:12:51.89ID:vXlhEd/U タスクシステムよりシーン管理の方がよっぽど複雑だと思うの
103名前は開発中のものです。
2015/01/25(日) 21:27:30.87ID:16a+UuyX シーンって「タイトル画面とキャラ選択画面とゲームのメインループその他」の意?
それとも「メインループ中の各シーン」のことかな。
>>101
標準テンプレートとか使える程度に技術のある人なら余裕で実装できるよ。
それとも「メインループ中の各シーン」のことかな。
>>101
標準テンプレートとか使える程度に技術のある人なら余裕で実装できるよ。
104名前は開発中のものです。
2015/01/25(日) 23:16:44.80ID:ZTrWlyYJ シーンったら状態遷移のことでは つまり両方
105名前は開発中のものです。
2015/01/25(日) 23:53:06.16ID:5N9PH1z0 >>98
ワーカースレッドが、キューに何もないことを確認して、
眠ろうとしているところに、
キューにタスクが入って、ワーカーに起きるよう指示を出す。
ワーカースレッドはその後寝てしまう。悪いことに全ワーカーが同じ状態。
次のキュー挿入で起きるけど。
なんかこんなこと考えると、こんがらがってきます。
ワーカースレッドが、キューに何もないことを確認して、
眠ろうとしているところに、
キューにタスクが入って、ワーカーに起きるよう指示を出す。
ワーカースレッドはその後寝てしまう。悪いことに全ワーカーが同じ状態。
次のキュー挿入で起きるけど。
なんかこんなこと考えると、こんがらがってきます。
106名前は開発中のものです。
2015/01/26(月) 15:41:45.19ID:VjIajR+F >>105
キュー操作そのものにミューテックスで排他かけるから
「寝る」一連の動作と「起こす」一連の動作は複数のスレッドで並行に起こらない。
「寝て大丈夫かキューを確認したらタスクがあるから寝ずに実行」か
「完全に寝る→即座に次のタスクがキューにある状況で起こされる」のどちらか。
.NETだとWait()とPulseAll()、Javaならwait()とnotifyAll()で
簡単に実装できるけど、Win32APIだと少し面倒だった。
まずは上記2つのどちらかを調べて流れを掴んで、
それをC/C++用のAPIで書き表すことを考えてはどうかな。
キュー操作そのものにミューテックスで排他かけるから
「寝る」一連の動作と「起こす」一連の動作は複数のスレッドで並行に起こらない。
「寝て大丈夫かキューを確認したらタスクがあるから寝ずに実行」か
「完全に寝る→即座に次のタスクがキューにある状況で起こされる」のどちらか。
.NETだとWait()とPulseAll()、Javaならwait()とnotifyAll()で
簡単に実装できるけど、Win32APIだと少し面倒だった。
まずは上記2つのどちらかを調べて流れを掴んで、
それをC/C++用のAPIで書き表すことを考えてはどうかな。
107名前は開発中のものです。
2015/01/26(月) 16:22:24.05ID:MFO6WL+3 >>106
condition_variable
condition_variable
108名前は開発中のものです。
2015/01/26(月) 17:05:42.55ID:u+eqsmYT *0.5の乗算と/2の除算
表す物はまったく同じだけど、前者の方が早いんだろうか?
表す物はまったく同じだけど、前者の方が早いんだろうか?
109名前は開発中のものです。
2015/01/26(月) 17:06:44.50ID:plLWVR07 /2の除算
110名前は開発中のものです。
2015/01/26(月) 17:08:38.36ID:U+7vhN1O シフト演算
111名前は開発中のものです。
2015/01/26(月) 17:36:32.42ID:nJhOAZkT 整数ならそもそも結果が違うな
浮動小数ならコンパイラが最適化してくれるだろ
浮動小数ならコンパイラが最適化してくれるだろ
112名前は開発中のものです。
2015/01/26(月) 17:48:01.99ID:u+eqsmYT 2のn乗倍しかできないじゃないですかー!やだー!
書き方が悪かったのは認める
書き方が悪かったのは認める
113名前は開発中のものです。
2015/01/26(月) 18:30:30.51ID:pS9kEcva >>112
浮動少数なら変わらないんじゃ?
浮動少数なら変わらないんじゃ?
114名前は開発中のものです。
2015/01/26(月) 21:04:49.69ID:J7eP3rC5115名前は開発中のものです。
2015/01/26(月) 21:13:32.54ID:nJhOAZkT116名前は開発中のものです。
2015/01/26(月) 21:19:26.58ID:thceLWWx #ifndef〜#endifの組み合わせと#pragma onceの違いがよく分からない
前者は明確なインクルードガードだけど、後者は?
前者は明確なインクルードガードだけど、後者は?
117名前は開発中のものです。
2015/01/26(月) 21:45:22.75ID:OIbLNO60 前者はガード以外にも使える
後者はガード専門
後者はガード専門
118名前は開発中のものです。
2015/01/26(月) 21:45:26.06ID:eI0emMfH >>116
一回だけincludeしてねとコンパイラに言う
一回だけincludeしてねとコンパイラに言う
119名前は開発中のものです。
2015/01/26(月) 21:57:36.77ID:MFO6WL+3 ついでに言うと#pragma onceは非標準
だけど主要コンパイラで実装してないものがないほぼデファクトスタンダード状態
だけど主要コンパイラで実装してないものがないほぼデファクトスタンダード状態
120名前は開発中のものです。
2015/01/26(月) 22:06:02.39ID:J7eP3rC5121名前は開発中のものです。
2015/01/26(月) 23:14:24.34ID:thceLWWx122名前は開発中のものです。
2015/01/27(火) 02:06:38.39ID:m3LjzbYT そもそも#pragma自体が、コンパイラ独自実装な機能で使うタグみたいなのじゃなかったっけ
まあ今となっては大抵のコンパイラで使えるみたいよ
http://en.wikipedia.org/wiki/Pragma_once
まあ今となっては大抵のコンパイラで使えるみたいよ
http://en.wikipedia.org/wiki/Pragma_once
123名前は開発中のものです。
2015/01/27(火) 05:50:27.53ID:v0Ke9Ofm #pragma で始まるものは、互換性がない
124名前は開発中のものです。
2015/01/27(火) 09:41:49.82ID:kpJLUqPw >>123
リンク先見た?
俺もVCだけの互換の無い機能と思っていたが、互換してないのはIBMの一種(世の中のコンパイラを網羅してるわけではないけど)だけだったよ
標準仕様が〜とかよりも便利なモノは取り込まれてくんだと思った
リンク先見た?
俺もVCだけの互換の無い機能と思っていたが、互換してないのはIBMの一種(世の中のコンパイラを網羅してるわけではないけど)だけだったよ
標準仕様が〜とかよりも便利なモノは取り込まれてくんだと思った
125名前は開発中のものです。
2015/01/27(火) 15:08:16.08ID:m3LjzbYT まあ#pragma comment(lib, "...")とか、ガチでVC独自の機能もあるし
>>123の考えが自然だと思う
>>123の考えが自然だと思う
126名前は開発中のものです。
2015/01/27(火) 17:35:37.67ID:OmLGS6W/ C++14の新機能ってラムダ式にautoが使えるくらい?
127名前は開発中のものです。
2015/01/27(火) 22:54:28.14ID:k1Z1zLml >>125
なぜ comment なのだろう…
なぜ comment なのだろう…
128名前は開発中のものです。
2015/01/27(火) 23:27:04.08ID:Ow2H94g+ 互換と呼ばれるパクリ・盗用
129名前は開発中のものです。
2015/01/27(火) 23:51:44.84ID:mO8GdU7r パクりパクられないインタフェースに存在意義は無い
130名前は開発中のものです。
2015/01/28(水) 00:13:05.10ID:5x2afQiV ただのガラパゴス仕様だからな…
131名前は開発中のものです。
2015/01/28(水) 08:57:20.61ID:DPC05MEk C++は消える運命
132名前は開発中のものです。
2015/01/28(水) 10:44:43.26ID:SOs+ZJbg C++は地盤担当だから消えはしない。見えなくなるだけ。
133名前は開発中のものです。
2015/01/28(水) 16:49:43.54ID:/ZB0USJc 土台のしっかりしている家は頑丈だからな
しかし最近、犬小屋程度の建物にビルのような土台を作ってどうすんだ?
と思うようにもなってきた
しかし最近、犬小屋程度の建物にビルのような土台を作ってどうすんだ?
と思うようにもなってきた
134名前は開発中のものです。
2015/01/28(水) 17:10:45.12ID:dUb4vLHi ウサギ小屋と呼ばれる日本の家をバカにするな!
135名前は開発中のものです。
2015/01/28(水) 19:20:53.89ID:nasZb7nZ 最近ホント、この板でこじつけで日本の風習をバカにする奴が増えたな。
レガシで安定したものはラップして使い回すのが鉄板なのに、
横からうまく吹き込んで全部潰して一から作り直そうとさせる。
それだけ、相手の発展を遅らせることができる。
レガシで安定したものはラップして使い回すのが鉄板なのに、
横からうまく吹き込んで全部潰して一から作り直そうとさせる。
それだけ、相手の発展を遅らせることができる。
136名前は開発中のものです。
2015/01/28(水) 19:28:52.88ID:tBFCEOiA 古いからといってバグが無いとは限らないけどな。
特に昔のコードは脆弱性対策が練られてない事が多い
特に昔のコードは脆弱性対策が練られてない事が多い
137名前は開発中のものです。
2015/01/28(水) 20:15:35.81ID:RgnZVm9M FirefoxはJavaScriptの速度がChromeを超えたとか言われている割にもっさりしている感が否めない
後発のChromeの方が速い
後発のChromeの方が速い
138名前は開発中のものです。
2015/01/28(水) 20:18:09.19ID:t3hT+Wje >>137
感覚でなく実測で。
感覚でなく実測で。
139名前は開発中のものです。
2015/01/28(水) 20:33:36.08ID:RgnZVm9M ブラウザの使用感はスクリプトの実行速度だけで決まるわけじゃないからな
読み込み時間の短縮も大事
v8の方がバイトコードを通さず直接マシン語を生成するから読み込み速いんじゃないか
全体の速度はTom's Hardwareが調べていたが
スコアを合計したら何かFirefoxが速いという結論になっているのが理解できなかった
どんな計算をしたのやら
http://www.tomshardware.com/reviews/chrome-27-firefox-21-opera-next,3534.html
古い記事だけど
読み込み時間の短縮も大事
v8の方がバイトコードを通さず直接マシン語を生成するから読み込み速いんじゃないか
全体の速度はTom's Hardwareが調べていたが
スコアを合計したら何かFirefoxが速いという結論になっているのが理解できなかった
どんな計算をしたのやら
http://www.tomshardware.com/reviews/chrome-27-firefox-21-opera-next,3534.html
古い記事だけど
140名前は開発中のものです。
2015/01/28(水) 20:35:32.45ID:GO27aJnJ 関係ないけど体感速度を速く感じさせるって大事な事だね
Chromeはメモリの使い方や優先順位の割り振りが上手いんじゃないかと
Chromeはメモリの使い方や優先順位の割り振りが上手いんじゃないかと
141名前は開発中のものです。
2015/01/28(水) 21:30:30.57ID:zOtKlcou chromeはメモリ馬鹿食いするしな
ブラウザしか起動しないならそれでもいいんだが
ブラウザしか起動しないならそれでもいいんだが
142名前は開発中のものです。
2015/01/28(水) 23:41:47.26ID:gWUJCc9x わずかな妥協さえ許さずチューニングに血道を上げ
DNSの応答時間すら惜しむ
そりゃ比べる相手が悪すぎる
DNSの応答時間すら惜しむ
そりゃ比べる相手が悪すぎる
143名前は開発中のものです。
2015/01/29(木) 00:04:26.59ID:iAJNBuYX 0.3を0.1にする前に,10が1になるツールを作ろう
144名前は開発中のものです。
2015/01/29(木) 08:56:31.18ID:KH1X7ZAq メモリが多めのマシンだとChromeが最速だろうね
逆にChromeでメモリ不足に陥るマシンなら最速はFirefoxセーフモードかと
逆にChromeでメモリ不足に陥るマシンなら最速はFirefoxセーフモードかと
145名前は開発中のものです。
2015/01/29(木) 09:36:37.60ID:6+mjNHtZ FirefoxはブックマークとかタブとかRSSあたりが使いやすい
あとはDuckDuckGoに対応してたりとか
まあ好きな方使えばいいんじゃない?
あとはDuckDuckGoに対応してたりとか
まあ好きな方使えばいいんじゃない?
146名前は開発中のものです。
2015/01/29(木) 10:09:11.55ID:c6VwBThb Chromeの最低動作環境は一応メモリ512MB
タブをいくつ同時に開けるのか分からないが
タブをいくつ同時に開けるのか分からないが
147名前は開発中のものです。
2015/01/29(木) 11:20:16.55ID:XKuc65oW JavaScriptとブラウザの速度が一緒くたにしてる。
ChromeはJavaScript不使用であってもメモリ食う。
ChromeにIE,FirefoxのJavaScriptエンジン搭載したらメモリ消費が減ると思えん。
ChromeはJavaScript不使用であってもメモリ食う。
ChromeにIE,FirefoxのJavaScriptエンジン搭載したらメモリ消費が減ると思えん。
148名前は開発中のものです。
2015/01/29(木) 13:39:58.83ID:c6VwBThb ブラウザ全体が確保したメモリを使いまわしているのだろう
新しいのページ等はHTML5で書かれているので実質JavaScriptを完全にオフにはできない。
v8もメモリが十分にある環境だとメモリ使用量が200MBを超えたぐらいにならないとGCされない。
新しいのページ等はHTML5で書かれているので実質JavaScriptを完全にオフにはできない。
v8もメモリが十分にある環境だとメモリ使用量が200MBを超えたぐらいにならないとGCされない。
149名前は開発中のものです。
2015/01/29(木) 13:45:00.34ID:au4Qd8+o C++でブラウザゲーム開発?
150名前は開発中のものです。
2015/01/29(木) 15:54:12.53ID:PqqQ3LUQ ただの荒らしでは?
151名前は開発中のものです。
2015/01/29(木) 19:20:51.28ID:QDO0WN3U >>149
emscripten?
emscripten?
152名前は開発中のものです。
2015/01/30(金) 17:01:12.20ID:1O7TniCL 「国産フリーゲームの舞台をPCスタンドアロン(主にC++)から
ブラウザゲーム(クラウド、HTML5)やスマートフォンアプリ(非C++多)に移行」
させようという思惑を、最近この板でひしひしと感じる。
ブラウザゲーム(クラウド、HTML5)やスマートフォンアプリ(非C++多)に移行」
させようという思惑を、最近この板でひしひしと感じる。
153名前は開発中のものです。
2015/01/30(金) 17:49:20.89ID:Uwc5t0gr エサに飢えたスマホ厨や企業やその信者のステマ工作員だろ ほっとけ
154名前は開発中のものです。
2015/01/30(金) 17:52:07.48ID:9l7Lplvm スマホはAppmethodというC++環境もあるが?
155名前は開発中のものです。
2015/01/30(金) 18:28:39.45ID:cceEvulu 一般企業 : C++って難しいんでしょ?
奴隷商人 : 新しいxx言語やツールを使えば簡単ですよ
奴隷商人 : C++なんか使う必要ありません
奴隷商人 : 素人でもちょっと勉強すれば使えますよ
奴隷商人 : わが社では優秀なxx言語エンジニアを多く確保しています
奴隷商人 : 非常にリーズナブルな値段で派遣できますよ
一般企業 : じゃあxx言語とツールで開発するからnn人派遣して
奴隷商人 : まいどw
奴隷商人 : さてと在庫減ったし新しいボンクラ雇うかな、安い金でw
奴隷商人 : Appmethod? ボンクラがC++使えるわけねーだろw
奴隷商人 : うちは安さが売りなの
C++プログラマ : 仕事ないすか?
一般企業 : うちはxx言語とツールで開発するからC++いらないよ
一般企業 : C++高くつくし
ユーザ : みためはそれなりだけど、手抜き感ありありのクソゲー増えたな
ユーザ : 今売れてる○○なんか△△をパクッて版権キャラゲーにしただけだし
ユーザ : そのくせバグが多くて元の△△より面白くない
奴隷商人 : 新しいxx言語やツールを使えば簡単ですよ
奴隷商人 : C++なんか使う必要ありません
奴隷商人 : 素人でもちょっと勉強すれば使えますよ
奴隷商人 : わが社では優秀なxx言語エンジニアを多く確保しています
奴隷商人 : 非常にリーズナブルな値段で派遣できますよ
一般企業 : じゃあxx言語とツールで開発するからnn人派遣して
奴隷商人 : まいどw
奴隷商人 : さてと在庫減ったし新しいボンクラ雇うかな、安い金でw
奴隷商人 : Appmethod? ボンクラがC++使えるわけねーだろw
奴隷商人 : うちは安さが売りなの
C++プログラマ : 仕事ないすか?
一般企業 : うちはxx言語とツールで開発するからC++いらないよ
一般企業 : C++高くつくし
ユーザ : みためはそれなりだけど、手抜き感ありありのクソゲー増えたな
ユーザ : 今売れてる○○なんか△△をパクッて版権キャラゲーにしただけだし
ユーザ : そのくせバグが多くて元の△△より面白くない
156名前は開発中のものです。
2015/01/30(金) 18:54:29.18ID:8M4ey3DN まいどw
157名前は開発中のものです。
2015/01/30(金) 19:11:37.72ID:WJ9MDokc >>155
C++でも買い叩かれる
C++でも買い叩かれる
158名前は開発中のものです。
2015/01/30(金) 20:07:26.54ID:eOqAWtJ/ (給与だけなら)Python最強、C++は微妙
プログラミング言語別求人給与額の第2位はRuby、第1位は? | 開発・SE | マイナビニュース
http://s.news.mynavi.jp/news/2014/11/04/084/
プログラミング言語別求人給与額の第2位はRuby、第1位は? | 開発・SE | マイナビニュース
http://s.news.mynavi.jp/news/2014/11/04/084/
159名前は開発中のものです。
2015/01/30(金) 20:33:11.20ID:8M4ey3DN160名前は開発中のものです。
2015/01/30(金) 21:50:27.80ID:xDmuU9zY 民度が高過ぎる(笑)。
自分は案件減や開発コスト軽減からC#やPHPに日和ってしまってるけど
やっぱりちゃんとC++で「アセンブラレベルで何が起こってるか」意識した
プログラムしないとダメになっちゃうかもね。
自分は案件減や開発コスト軽減からC#やPHPに日和ってしまってるけど
やっぱりちゃんとC++で「アセンブラレベルで何が起こってるか」意識した
プログラムしないとダメになっちゃうかもね。
161名前は開発中のものです。
2015/01/30(金) 23:02:06.31ID:8M4ey3DN >>160
C++は遣り甲斐があるぞ〜、と誘惑してみるw
C++は遣り甲斐があるぞ〜、と誘惑してみるw
162名前は開発中のものです。
2015/01/30(金) 23:29:11.58ID:lEERAgAH 正直C++もC#も言語使用は簡単でしょ?
問題はオブジェクト指向とかアルゴリズムじゃないの?
問題はオブジェクト指向とかアルゴリズムじゃないの?
163名前は開発中のものです。
2015/01/30(金) 23:48:33.71ID:mPLLQnOv ラインパーティクルみたいな細長くて透明な部分があるテクスチャが
交差するときって
どうすればいいですか?
というか、Zソートってテクスチャが貼られた面の重心を使ってやるんですか?
交差するときって
どうすればいいですか?
というか、Zソートってテクスチャが貼られた面の重心を使ってやるんですか?
164名前は開発中のものです。
2015/01/31(土) 00:04:49.27ID:XljQIOh1 メモリを意識して書かないといけないのはC/C++くらいでないの
メモリアドレス扱う言語って他になんかある?
メモリアドレス扱う言語って他になんかある?
165名前は開発中のものです。
2015/01/31(土) 00:15:01.69ID:vx9WzsVv >>162
C++は根底にCとしての組み込み系やら、ドライバとかの知識が有るかどうかでかなり変わると思う
まーもうニッチな世界になってしまってるけど、ゲームに絞るとコンシューマとかで何かを極めようとしたときに需要は有るかと
C++は根底にCとしての組み込み系やら、ドライバとかの知識が有るかどうかでかなり変わると思う
まーもうニッチな世界になってしまってるけど、ゲームに絞るとコンシューマとかで何かを極めようとしたときに需要は有るかと
166名前は開発中のものです。
2015/01/31(土) 00:23:27.83ID:08SnV/iE ZソートってZバッファのかわりに遠い方から描くって意味?
厳密にやるなら、ポリゴンを無限平面とした場合に交差する他のポリゴンを
交差する線で分割する処理をすべてのポリゴンにして
って文章で書いてもわかりにくいな。
分割のあとは2分木のクイックソートで、あるポリゴンの面から見て
別の比較するポリゴンが手前側か向こう側でソート判定する。
多分それなりに有名な方法と思うから検索すれば見つかると思うけど
手法の名前は知らない。
あと、赤黒木でもできるのかしらない。
厳密にやるなら、ポリゴンを無限平面とした場合に交差する他のポリゴンを
交差する線で分割する処理をすべてのポリゴンにして
って文章で書いてもわかりにくいな。
分割のあとは2分木のクイックソートで、あるポリゴンの面から見て
別の比較するポリゴンが手前側か向こう側でソート判定する。
多分それなりに有名な方法と思うから検索すれば見つかると思うけど
手法の名前は知らない。
あと、赤黒木でもできるのかしらない。
167名前は開発中のものです。
2015/01/31(土) 01:24:39.63ID:vx9WzsVv プレステやらサターンの時のZソートなら、重心か頂点の順番忘れたが二頂点のZ値を加算したものでソートしてたよ
でも組み込み方としては実際にソートではなく、リスト構造で管理してたと思う
だから解像度が低いとバキバキになってた
wソートってのも出たけど、流行る前にZバッファでパフォーマンス出るようになって無くなったと思う
でも組み込み方としては実際にソートではなく、リスト構造で管理してたと思う
だから解像度が低いとバキバキになってた
wソートってのも出たけど、流行る前にZバッファでパフォーマンス出るようになって無くなったと思う
168名前は開発中のものです。
2015/01/31(土) 01:26:13.53ID:H+AZbHjO169名前は開発中のものです。
2015/01/31(土) 02:31:32.35ID:MYAY0/XK >>161
じつはC#でXNAやってたんよ。
C++に戻るということは、ここ数年で作った自分ライブラリと
そこから呼び出しているXNAライブラリをDirectXに移植することを意味する。
けっこう大変だったり。
あとMonoGameが実用に足りるようになったらC#のままの方が楽というのも
正直、ある。C++でクロスプラットフォームの3Dライブラリがあれば
別なんだけど…。
じつはC#でXNAやってたんよ。
C++に戻るということは、ここ数年で作った自分ライブラリと
そこから呼び出しているXNAライブラリをDirectXに移植することを意味する。
けっこう大変だったり。
あとMonoGameが実用に足りるようになったらC#のままの方が楽というのも
正直、ある。C++でクロスプラットフォームの3Dライブラリがあれば
別なんだけど…。
170166
2015/01/31(土) 02:34:23.55ID:08SnV/iE > 手法の名前は知らない。
多分、BSPツリー法だと思う。wikipediaにバイナリ空間分割でのってる。
wソートってどんなのかちょっと興味あるけど、説明されても難いと読まないだろうなw
多分、BSPツリー法だと思う。wikipediaにバイナリ空間分割でのってる。
wソートってどんなのかちょっと興味あるけど、説明されても難いと読まないだろうなw
171名前は開発中のものです。
2015/01/31(土) 05:16:44.71ID:dLJDPFMl >>170
wバッファなら下にあったけど。たぶん今はwバッファとは呼ばない。
http://webcache.googleusercontent.com/search?q=cache:iuYaNXjit0oJ:www.daionet.gr.jp/~masa/column/98-06-25.html
wソートははじめて聞いた。
wバッファなら下にあったけど。たぶん今はwバッファとは呼ばない。
http://webcache.googleusercontent.com/search?q=cache:iuYaNXjit0oJ:www.daionet.gr.jp/~masa/column/98-06-25.html
wソートははじめて聞いた。
172名前は開発中のものです。
2015/01/31(土) 08:12:54.84ID:e0isyZ8t C#ってある意味理想的な言語だよね
・オブジェクトはすべて参照渡し
・値は参照渡しは出来るが参照で持つことはできない
・共有したい変数はクラス(構造体)にする
・オブジェクトはすべて参照渡し
・値は参照渡しは出来るが参照で持つことはできない
・共有したい変数はクラス(構造体)にする
173名前は開発中のものです。
2015/01/31(土) 08:17:29.88ID:XljQIOh1 VBもそんな感じじゃなかったっけ
174名前は開発中のものです。
2015/01/31(土) 12:13:09.01ID:H+AZbHjO175名前は開発中のものです。
2015/01/31(土) 12:39:15.50ID:jayN4xwq C#って、構造体の参照渡しで「メソッド側で書き換え不可能」指定ができないのが難。
ref:入出力を兼ねる参照渡し
out:出力のみの参照渡し(意外と便利)
C++のconst 型 *やconst 型 &がないと言えばいいか。
ref:入出力を兼ねる参照渡し
out:出力のみの参照渡し(意外と便利)
C++のconst 型 *やconst 型 &がないと言えばいいか。
176名前は開発中のものです。
2015/01/31(土) 12:44:18.35ID:dP8uz4HA Wソートってもしかしてローカルな話だったのか?
Zソートはリストだって話を書いたけど、そのリストを更にソートすることで込み合ってる部分を細かく前後入れ換える事で若干バリバリを押さえる感じだった
当時は描画よりも演算の方が圧倒的に早かったのとダブルバッファやトリプルバッファでの空き時間を有効にって感じだったよ
でも自分では研究以外では使ってない
理由は当時は整数演算だったから、ほとんど効果が感じられなかったから
Zソートはリストだって話を書いたけど、そのリストを更にソートすることで込み合ってる部分を細かく前後入れ換える事で若干バリバリを押さえる感じだった
当時は描画よりも演算の方が圧倒的に早かったのとダブルバッファやトリプルバッファでの空き時間を有効にって感じだったよ
でも自分では研究以外では使ってない
理由は当時は整数演算だったから、ほとんど効果が感じられなかったから
177名前は開発中のものです。
2015/01/31(土) 12:46:07.85ID:ehZNZ4NM 書き換えなきゃ良いだけだろ
なんでそんな事を言語仕様に入れなきゃならないんだ
なんでそんな事を言語仕様に入れなきゃならないんだ
178名前は開発中のものです。
2015/01/31(土) 12:51:54.53ID:vx9WzsVv179名前は開発中のものです。
2015/01/31(土) 12:55:33.58ID:jayN4xwq あ、連投ごめん。
上のリンク先とMSの解説で、ZバッファとWバッファの意味が逆になってる気がする。
https://msdn.microsoft.com/ja-jp/library/cc324546.aspx
リンク先は「割るほうがWバッファ、割らないほうがZバッファ」、
MSだと「割るほうがZバッファ、割らないほうがWバッファ」に読める。
用語の混乱があるのか、自分が何か勘違いしてるのか。
で、Wソートって何?
昔のPSみたくバッファリングしないでポリゴン単位でソートするけど、Wでやるってことかね。
上のリンク先とMSの解説で、ZバッファとWバッファの意味が逆になってる気がする。
https://msdn.microsoft.com/ja-jp/library/cc324546.aspx
リンク先は「割るほうがWバッファ、割らないほうがZバッファ」、
MSだと「割るほうがZバッファ、割らないほうがWバッファ」に読める。
用語の混乱があるのか、自分が何か勘違いしてるのか。
で、Wソートって何?
昔のPSみたくバッファリングしないでポリゴン単位でソートするけど、Wでやるってことかね。
180名前は開発中のものです。
2015/01/31(土) 13:05:31.10ID:+0dbs7Ey const必要になるのはライブラリ作成とかチーム開発とかだろうし
ひとりでシコシコ作ってる分には別に不便もないよな
コーディングルールは自分ルールだし
ひとりでシコシコ作ってる分には別に不便もないよな
コーディングルールは自分ルールだし
181名前は開発中のものです。
2015/01/31(土) 13:12:28.57ID:H+AZbHjO 自分も、自分用プログラムばっかり作ってて、const利用はハードコーディングな定数以外は0。
自分以外を考慮に入れると、たしかにconst修飾子は重要になると思うけど、
ある程度小規模なチームなら、ルールで十分賄えると思う。
自分以外を考慮に入れると、たしかにconst修飾子は重要になると思うけど、
ある程度小規模なチームなら、ルールで十分賄えると思う。
182名前は開発中のものです。
2015/01/31(土) 14:06:11.93ID:9fyUH/Hj struct, classのコピーを避けるために参照・ポインタを多用してると確実にミス出るし
constは値を中身を書き換えない保障でもあるから、内部処理を忘れたときとかに役立つ
constは値を中身を書き換えない保障でもあるから、内部処理を忘れたときとかに役立つ
183名前は開発中のものです。
2015/01/31(土) 14:13:16.03ID:ehZNZ4NM オブジェクトの参照を渡した時に中身を書き換えてくれるなよ、という要求はある
それをC++のようにconstで表現するのがいいかどうか
C#ではイラネってなったし要らないと思う
それをC++のようにconstで表現するのがいいかどうか
C#ではイラネってなったし要らないと思う
184名前は開発中のものです。
2015/01/31(土) 14:18:46.16ID:4UKOkNc6 ところで、const 同士の operater== は operater==(const) const; でいいのか?
最後の const で数時間悩んだんだが。ゲーム以外のところで…
最後の const で数時間悩んだんだが。ゲーム以外のところで…
185名前は開発中のものです。
2015/01/31(土) 14:47:44.78ID:g0EkdIoS friend operator == (const&, const&)
186名前は開発中のものです。
2015/01/31(土) 15:27:49.35ID:PEZyYsg9187名前は開発中のものです。
2015/01/31(土) 16:27:45.39ID:4UKOkNc6 あー、ここで friend 使うのかサンクス。スレチすまん
188名前は開発中のものです。
2015/01/31(土) 19:40:50.51ID:LvLYpCGK 単に規約の問題だけじゃなくて。
constというかC#のreadonlyは構造体にも指定できるんだけど、
それを先述のref指定でメソッドに渡せないんだよ。
既存のライブラリでref指定(参照渡し)になっているものが
少なからずある。まあ別の変数に代入してから値渡しできるんだけど、
微妙にパフォーマンス落ちるでしょう。
constというかC#のreadonlyは構造体にも指定できるんだけど、
それを先述のref指定でメソッドに渡せないんだよ。
既存のライブラリでref指定(参照渡し)になっているものが
少なからずある。まあ別の変数に代入してから値渡しできるんだけど、
微妙にパフォーマンス落ちるでしょう。
189名前は開発中のものです。
2015/01/31(土) 22:35:54.52ID:g0XZBTK4 const無しをデフォルトにしてしまうと,引数先で書き換えるのかどうか,引数からわからなくなるから
基本はconst参照だよね
基本はconst参照だよね
190名前は開発中のものです。
2015/01/31(土) 23:12:04.08ID:IlaPMJGi constなしの参照だとrvalue取れないし。
全部コピー渡しですかそうですか
全部コピー渡しですかそうですか
191名前は開発中のものです。
2015/01/31(土) 23:45:24.01ID:+0dbs7Ey const付けたらコンパイル時に置き換えられるの?
192名前は開発中のものです。
2015/02/01(日) 02:38:02.64ID:HEaS08Xq #defineした変数をconstするとどうなるのっと
193名前は開発中のものです。
2015/02/01(日) 09:04:46.33ID:4SXpmV3a >>188
たまにそういうシチュエーションがあるけど、それを解決するために言語使用に手を入れるのは言語道断
たまにそういうシチュエーションがあるけど、それを解決するために言語使用に手を入れるのは言語道断
194名前は開発中のものです。
2015/02/01(日) 16:13:17.17ID:7SDWQ5Km195名前は開発中のものです。
2015/02/01(日) 16:38:17.15ID:5cTwIokB >>192
お前のconstでコードがやばい
お前のconstでコードがやばい
196名前は開発中のものです。
2015/02/01(日) 16:38:49.06ID:gTwIs5aq template初めて使ったんだけど引数側に同じtemplate型があれば、
返り値をわざわざ指定しなくてもいいの?
↓こんなん
template<typename T>
T zeroCheckException(T t){
if(t == 0)throw;
return t;
}
返り値をわざわざ指定しなくてもいいの?
↓こんなん
template<typename T>
T zeroCheckException(T t){
if(t == 0)throw;
return t;
}
197名前は開発中のものです。
2015/02/01(日) 16:44:02.52ID:wN5YVAib >>196
2つあるTはどちらも同じ型なんだから、むしろ指定できたらダメだろ
引数と同じ型を返す関数、という意味になっている
引数から推測できない型を返したいなら、typename を2回書けばいい
template < typename R, typename T > R convertTo(T t) { return ... }
string r = convertTo<string>(123);
2つあるTはどちらも同じ型なんだから、むしろ指定できたらダメだろ
引数と同じ型を返す関数、という意味になっている
引数から推測できない型を返したいなら、typename を2回書けばいい
template < typename R, typename T > R convertTo(T t) { return ... }
string r = convertTo<string>(123);
198名前は開発中のものです。
2015/02/01(日) 16:59:29.96ID:7TQeJfVA >>196
>>返り値をわざわざ指定しなくてもいいの?
多分質問の意味からだと、返り値を引数と同じ型(T)で返したいなら返り値(の型)の宣言は必要
その部分はtemplateとは関係のない関数宣言の話で、template内はTと言う型が使えるようになっているだけだと思って関数を宣言すればOK
だから、その関数が返り値を返す必要がないならvoid、intを返したいならintになる
>>返り値をわざわざ指定しなくてもいいの?
多分質問の意味からだと、返り値を引数と同じ型(T)で返したいなら返り値(の型)の宣言は必要
その部分はtemplateとは関係のない関数宣言の話で、template内はTと言う型が使えるようになっているだけだと思って関数を宣言すればOK
だから、その関数が返り値を返す必要がないならvoid、intを返したいならintになる
199名前は開発中のものです。
2015/02/01(日) 17:45:05.57ID:bGERJtUD typenameとclassってどっちがモダンなん?
あるいは使い分けが必要?
あるいは使い分けが必要?
200名前は開発中のものです。
2015/02/01(日) 19:03:59.15ID:gTwIs5aq http://ideone.com/bM0sAR
http://i.gyazo.com/a30bf7d11715dd37855cf8fc8a9be676.png
一度変数にしないと、とんでもない数値になるんだけどさっぱりわからない
計算してるわけじゃないから桁あふれで無いと思うんだけど
http://i.gyazo.com/a30bf7d11715dd37855cf8fc8a9be676.png
一度変数にしないと、とんでもない数値になるんだけどさっぱりわからない
計算してるわけじゃないから桁あふれで無いと思うんだけど
201名前は開発中のものです。
2015/02/01(日) 19:05:18.65ID:gTwIs5aq >>197,198
なるほど、ありがとう
なるほど、ありがとう
202名前は開発中のものです。
2015/02/01(日) 19:24:29.40ID:aP8gwvz+ >>199
常にclassを使用していて困ったことがない
常にclassを使用していて困ったことがない
203名前は開発中のものです。
2015/02/01(日) 19:33:48.11ID:2nnmtHZB class使ってる人を見たことがない
204名前は開発中のものです。
2015/02/01(日) 19:36:58.64ID:mV3TuxIT205名前は開発中のものです。
2015/02/01(日) 19:53:30.95ID:I530QHNw206名前は開発中のものです。
2015/02/01(日) 20:01:18.83ID:mV3TuxIT207名前は開発中のものです。
2015/02/01(日) 20:12:12.40ID:2nnmtHZB そんな問題じゃねーよw
208名前は開発中のものです。
2015/02/01(日) 20:29:03.32ID:mV3TuxIT >>207
(゚Д゚)
(゚Д゚)
209名前は開発中のものです。
2015/02/01(日) 20:46:24.29ID:eIbULHuy211名前は開発中のものです。
2015/02/01(日) 22:50:33.72ID:/xEMpT1p classしか使わない派だが,template自体あまり使わないことにしてる
212名前は開発中のものです。
2015/02/01(日) 22:52:09.95ID:UZAipjiA 自分はtypename派だな。
classに限定しない使い方が多いからというのがあるけどね。
ま、組み込み型も一種のクラスと見做せないことはないし、文字数少ない分、classのほうがいいかもしんないけど。
classに限定しない使い方が多いからというのがあるけどね。
ま、組み込み型も一種のクラスと見做せないことはないし、文字数少ない分、classのほうがいいかもしんないけど。
213名前は開発中のものです。
2015/02/02(月) 00:06:09.93ID:WStqUBYk もはやゲーム関係ない気がするのはミンナニ ナイショダヨ
214名前は開発中のものです。
2015/02/02(月) 01:35:39.62ID:g0RkpJRz て、テンプレ使えれば前以上に楽ができるかもしんないし!
なお移植性が壊滅的に下がる模様
なお移植性が壊滅的に下がる模様
215名前は開発中のものです。
2015/02/02(月) 04:07:49.86ID:lvNA0Ulc テンプレート使って移植性が下がるってここの住民は一体いつの時代に生きてるんだろうか
216名前は開発中のものです。
2015/02/02(月) 08:53:14.68ID:9YOvsS+B 俺もテンプレート自体使わないな
過去の遺物だろあれ
過去の遺物だろあれ
217名前は開発中のものです。
2015/02/02(月) 09:10:16.63ID:QEPcxUVH >>216
ダメだこいつ…早くなんとかしないと
ダメだこいつ…早くなんとかしないと
218名前は開発中のものです。
2015/02/02(月) 09:50:21.86ID:pbbvOQ2U VSのバージョン上がるたびにどこかしらテンプレートで書いたところの書き直しが待ってるんだよな
MPLに手を出すと他の処理系でまた違う方言で困るし
MPLに手を出すと他の処理系でまた違う方言で困るし
219名前は開発中のものです。
2015/02/02(月) 10:05:53.54ID:ZKghX0zO バージョン上がるたびに、ってほどテンプレートに手入ってたっけ?
むしろ、いままでコンパイルを通すためにいちいち">"と">"の間にスペースを入れていたのが
入れる必要なくなったとか、そういう方面の変更しか知らないんだけど
むしろ、いままでコンパイルを通すためにいちいち">"と">"の間にスペースを入れていたのが
入れる必要なくなったとか、そういう方面の変更しか知らないんだけど
220名前は開発中のものです。
2015/02/02(月) 10:33:54.29ID:TF5MhFQ8 だいぶこなれてきたから、できないことができるようにはなっても、逆は無いと思うぞ
確かにC++03時代は typename が急に必要にされてエラーになるのはあったけど
気になるなら互換性を吸収するラッパーとしてboostを使うのも手だな
確かにC++03時代は typename が急に必要にされてエラーになるのはあったけど
気になるなら互換性を吸収するラッパーとしてboostを使うのも手だな
221名前は開発中のものです。
2015/02/02(月) 11:10:10.63ID:pbbvOQ2U 最近変えたところだと
enable_ifが無い頃の代替としての部分特殊化のコードが
2012では通ってたのに2013でC2753で通らなくなって
代わりにenable_if使えるからそれになって
2015でconstexprあるからそこはテンプレート要らないだろうなて状態だわ
なんでエラーなのか追いかけるの面倒だから新機能で凌いでる
boostのを最初から使えばいいんだけどライブラリのバージョンアップが面倒でね
enable_ifが無い頃の代替としての部分特殊化のコードが
2012では通ってたのに2013でC2753で通らなくなって
代わりにenable_if使えるからそれになって
2015でconstexprあるからそこはテンプレート要らないだろうなて状態だわ
なんでエラーなのか追いかけるの面倒だから新機能で凌いでる
boostのを最初から使えばいいんだけどライブラリのバージョンアップが面倒でね
222名前は開発中のものです。
2015/02/02(月) 11:30:47.44ID:uEPb5G0x テンプレートが悪いというよりVSの実装が
223名前は開発中のものです。
2015/02/02(月) 12:44:55.25ID:QEPcxUVH STLもテンプレートなのに
224名前は開発中のものです。
2015/02/02(月) 13:21:17.62ID:ZKghX0zO SFINAE周りは確かに、C++11でようやく統一仕様が策定されて多少手を付けやすくなった印象がある
>>223
テンプレートを使ってるライブラリを使うのと
テンプレートなクラスや関数を自分で作るのとは
結構隔たりがある気がする…
>>223
テンプレートを使ってるライブラリを使うのと
テンプレートなクラスや関数を自分で作るのとは
結構隔たりがある気がする…
225名前は開発中のものです。
2015/02/02(月) 13:54:32.94ID:fu9cgs9q スタンダードテンプレートライブラリ(の構想・実装)が先にあってC++で実装するためにテンプレートが導入された。テンプレートはSTL実装のための道具といえる。
Standard Template Library - Wikipedia
STLのアーキテクチャの多くはアレクサンドル・ステパノフという一人の人物の手によって作られた。
1979年に彼はジェネリックプログラミングの初期アイデアを練り始め、そしてソフトウェア開発に革命をもたらす可能性を探究し始めた。
当時はジェネリックプログラミングを実際にサポートしているプログラミング言語がまだなかった。
それをサポートする最初のメジャーな言語はジェネリックユニットの機能があるAdaであった。
1987年までにステパノフとマッサーはジェネリックプログラミングの研究成果としてAdaのリスト処理ライブラリを開発してリリースしていた。
C++は当時まだ言語として未成熟ではあったものの(テンプレートはまだなく後から実装された)、より広く普及してジェネリックプログラミングの良好なサポートが提供される可能性が高いと考えられた。
Standard Template Library - Wikipedia
STLのアーキテクチャの多くはアレクサンドル・ステパノフという一人の人物の手によって作られた。
1979年に彼はジェネリックプログラミングの初期アイデアを練り始め、そしてソフトウェア開発に革命をもたらす可能性を探究し始めた。
当時はジェネリックプログラミングを実際にサポートしているプログラミング言語がまだなかった。
それをサポートする最初のメジャーな言語はジェネリックユニットの機能があるAdaであった。
1987年までにステパノフとマッサーはジェネリックプログラミングの研究成果としてAdaのリスト処理ライブラリを開発してリリースしていた。
C++は当時まだ言語として未成熟ではあったものの(テンプレートはまだなく後から実装された)、より広く普及してジェネリックプログラミングの良好なサポートが提供される可能性が高いと考えられた。
226名前は開発中のものです。
2015/02/02(月) 14:52:33.01ID:bbrlQEEY で、結局>>200はuintの減算でオーバーフローしてるってことでいいのか?
int - uintがintにキャストされれば大丈夫そうな気がするけど
int - uintがintにキャストされれば大丈夫そうな気がするけど
227名前は開発中のものです。
2015/02/02(月) 15:26:46.03ID:u58PP6hj 桁あふれや型違いの時に起こる超数値に見える
228名前は開発中のものです。
2015/02/02(月) 16:37:35.11ID:lvNA0Ulc そんな問題じゃねーよさんが解決してくれるさ
229名前は開発中のものです。
2015/02/02(月) 17:14:57.39ID:ZKghX0zO 直接的な解決策や原因は分からないけど、俺なら
・「unitList.size()*140」を「unitList.size()*140.0f」にして直るか確認する
・set/getPositionXを通さなかったらどうなるか確認する(当該メンバ関数の実装が自明である場合を除く)
・コンパイラの警告設定を最強にしてみて、何かメッセージが出るか確認する
あたりをやってみると思う
・「unitList.size()*140」を「unitList.size()*140.0f」にして直るか確認する
・set/getPositionXを通さなかったらどうなるか確認する(当該メンバ関数の実装が自明である場合を除く)
・コンパイラの警告設定を最強にしてみて、何かメッセージが出るか確認する
あたりをやってみると思う
230名前は開発中のものです。
2015/02/02(月) 18:13:33.41ID:NKDBUGQv で、ゲーム制作だと意識して。
開発環境を開発中やデバッグ中に更新するとか無いだろ
移植で困ることは判る
開発環境を開発中やデバッグ中に更新するとか無いだろ
移植で困ることは判る
231名前は開発中のものです。
2015/02/02(月) 18:39:29.29ID:u58PP6hj 新しい開発環境に新規実装された要素どうしても使いたかったんだ…と推測(適当)
CやC++とはあまり関係ないけど、
一部の開発環境では、関数や変数を書いた行にコメントしとけば
カーソル合わせるだけでコメントが出るのでメモ代わりにできるな
なおソースがコメントだらけになり、よそに貼った時に失笑物のソースになる模様
CやC++とはあまり関係ないけど、
一部の開発環境では、関数や変数を書いた行にコメントしとけば
カーソル合わせるだけでコメントが出るのでメモ代わりにできるな
なおソースがコメントだらけになり、よそに貼った時に失笑物のソースになる模様
232名前は開発中のものです。
2015/02/02(月) 19:31:16.34ID:lvNA0Ulc233名前は開発中のものです。
2015/02/02(月) 20:49:55.23ID:0Y8pqiU9 色々試してみたけど、オーバーフローしたuintを直接floatにキャストするのがダメっぽいね
一回intにキャストすれば大丈夫だった
int - uintはintになるってわけじゃないのね
テストコード
#include <iostream>
int main()
{
int i=3;
size_t ui = 5;
float x = i-ui;
float x2 = i - static_cast<int>(ui);
int x3 = i - ui;
float x4 = static_cast<int>(i-ui);
std::cout << x << std::endl;
std::cout << x2 << std::endl;
std::cout << x3 << std::endl;
std::cout << x4 << std::endl;
std::cout << static_cast<float>(i-ui) << std::endl;
}
一回intにキャストすれば大丈夫だった
int - uintはintになるってわけじゃないのね
テストコード
#include <iostream>
int main()
{
int i=3;
size_t ui = 5;
float x = i-ui;
float x2 = i - static_cast<int>(ui);
int x3 = i - ui;
float x4 = static_cast<int>(i-ui);
std::cout << x << std::endl;
std::cout << x2 << std::endl;
std::cout << x3 << std::endl;
std::cout << x4 << std::endl;
std::cout << static_cast<float>(i-ui) << std::endl;
}
234名前は開発中のものです。
2015/02/02(月) 21:20:46.80ID:lvNA0Ulc >>233
intで表現出来ない値をintへcastしたら桁あふれで未定義動作
intで表現出来ない値をintへcastしたら桁あふれで未定義動作
235名前は開発中のものです。
2015/02/02(月) 21:33:08.99ID:MkYgWBqp >>234
未定義になる可能性のある演算は暗黙のキャストしてくれないって事?
未定義になる可能性のある演算は暗黙のキャストしてくれないって事?
236名前は開発中のものです。
2015/02/02(月) 21:39:18.84ID:lvNA0Ulc >>235
違う
intとunsigned intの演算結果はunsigned int
もちろんunsigned intはマイナスを表現出来ない、なので0-1uはUINT_MAXになる。(符号無し整数は桁あふれしても未定義動作ではない)
でも符号あり整数の桁あふれは未定義動作なのでUINT_MAXをintへキャストするのは未定義動作
まぁ大抵の処理系では動くだろうけど。
違う
intとunsigned intの演算結果はunsigned int
もちろんunsigned intはマイナスを表現出来ない、なので0-1uはUINT_MAXになる。(符号無し整数は桁あふれしても未定義動作ではない)
でも符号あり整数の桁あふれは未定義動作なのでUINT_MAXをintへキャストするのは未定義動作
まぁ大抵の処理系では動くだろうけど。
237名前は開発中のものです。
2015/02/02(月) 21:57:25.95ID:MkYgWBqp 符合ありなしで演算すると符合なしになるのか
なるほどねー
なるほどねー
238名前は開発中のものです。
2015/02/02(月) 22:39:56.06ID:4aJa1XJJ 混ぜるな危険
239名前は開発中のものです。
2015/02/02(月) 22:40:47.51ID:AAW+YNQa >>238
いいねw
いいねw
240名前は開発中のものです。
2015/02/03(火) 00:10:07.19ID:0Nhy8xyl これそもそも size_t が unsinged int なのが悪いんだよな、頭悪すぎ
241名前は開発中のものです。
2015/02/03(火) 02:08:59.87ID:YnXnr0TR size_tはsizeofで測ったデータの長さを受け取る物だからよ
データの長さに0未満はあり得ないから定義できないようにしてるんだろう
データの長さに0未満はあり得ないから定義できないようにしてるんだろう
242名前は開発中のものです。
2015/02/03(火) 04:00:41.53ID:WscpFvcA 質問です。
抽象クラス(親クラスとする)を継承した派生クラス(子クラスとする)を
親クラスの型のメンバー変数に子クラス型でnew()し、抽象化して保持してます。
このメンバーをdelete してすぐNULLを代入しても、参照が残ってるみたいで
エラーでる場合があります。
抽象化しているオブジェクトの削除の、お作法みたいなものってありますでしょうか。
抽象クラス(親クラスとする)を継承した派生クラス(子クラスとする)を
親クラスの型のメンバー変数に子クラス型でnew()し、抽象化して保持してます。
このメンバーをdelete してすぐNULLを代入しても、参照が残ってるみたいで
エラーでる場合があります。
抽象化しているオブジェクトの削除の、お作法みたいなものってありますでしょうか。
243名前は開発中のものです。
2015/02/03(火) 04:32:33.06ID:UaiJdd2F244名前は開発中のものです。
2015/02/03(火) 04:40:14.90ID:WscpFvcA >>243
ありがとうございます。
ありがとうございます。
245名前は開発中のものです。
2015/02/03(火) 13:03:57.60ID:vrraL4+G スレはあってるけど板が違う的な。
まあ、ゲーム関係かどうかの境目って結構曖昧だけれども。
まあ、ゲーム関係かどうかの境目って結構曖昧だけれども。
246名前は開発中のものです。
2015/02/03(火) 13:07:01.87ID:IeF+/7iv いずれにしろコードもなしに質問されてもエスパーしか回答出来ないですし
247名前は開発中のものです。
2015/02/05(木) 07:36:31.37ID:gQYa1HB0 開発期間が長すぎて、開発環境が何度も変わるのってどう思いますか?
開発環境を固定する?それともコードを書き直して対応する?
開発環境を固定する?それともコードを書き直して対応する?
248名前は開発中のものです。
2015/02/05(木) 08:11:52.44ID:6fCmneha boost辺りならまだしも、言語自体のバージョンが上がるまでって
一体どんだけ開発期間が長いか間が悪いんだよ…
どうしても使いたい追加要素でもなければ変えない トラブルの素
一体どんだけ開発期間が長いか間が悪いんだよ…
どうしても使いたい追加要素でもなければ変えない トラブルの素
249名前は開発中のものです。
2015/02/05(木) 09:22:24.85ID:JByM0e2E CSのSDKとかじゃないの?
開発序盤なら対応、終わりが見えてたらそのままってのが普通だと思うけど
開発序盤なら対応、終わりが見えてたらそのままってのが普通だと思うけど
250名前は開発中のものです。
2015/02/05(木) 10:05:22.41ID:tVSHsnYT 昔VS2008から2010に上げたけど特に問題は起きなかった
251名前は開発中のものです。
2015/02/05(木) 12:20:47.44ID:qWgtWrzH vsの2005から2012に上げたら、Releaseでは動くけどdebugでは動かなくなった
自前で作ってた文字列クラスが弾かれたから、現在、std::wstringに置き換え中
自前で作ってた文字列クラスが弾かれたから、現在、std::wstringに置き換え中
252名前は開発中のものです。
2015/02/05(木) 17:18:01.03ID:grWdPzSP253名前は開発中のものです。
2015/02/05(木) 19:05:51.48ID:IWRqO40R iOS向けなら変えざるを得ない
254名前は開発中のものです。
2015/02/05(木) 19:45:56.22ID:ckteJ+s1 プロの人も来てるのかも知れないけど、同人ならぶっちゃけ
DirectX9辺りの技術基盤があれば十分じゃないの。
新技術に取り組むこと自体が目的化して、ゲームを完成させる方が
疎かになってしまうって、何かありがちな気がする。
DirectX9辺りの技術基盤があれば十分じゃないの。
新技術に取り組むこと自体が目的化して、ゲームを完成させる方が
疎かになってしまうって、何かありがちな気がする。
255名前は開発中のものです。
2015/02/05(木) 22:51:52.09ID:EoFgZ44U 別に必要ないなら使わなければいいんです、エロい人にはそれが分からんのです
256名前は開発中のものです。
2015/02/06(金) 08:51:59.99ID:J5odCBuG だまれ朝鮮人
257名前は開発中のものです。
2015/02/06(金) 08:53:55.71ID:u5/2KnVF idがバグ
258名前は開発中のものです。
2015/02/06(金) 09:00:23.95ID:12AknHRs259名前は開発中のものです。
2015/02/06(金) 11:05:36.91ID:vDg1pnk8 面白けりゃ何でもいいんだよ。
260名前は開発中のものです。
2015/02/06(金) 14:58:45.96ID:1vhL8u+G もとの環境で大体完成していたのに、
無理やり次世代機用に作り直そうとしたがうまくいかず、
そのまま爆死した家庭用機向けソフトのプロジェクトなら知ってる
無理やり次世代機用に作り直そうとしたがうまくいかず、
そのまま爆死した家庭用機向けソフトのプロジェクトなら知ってる
261名前は開発中のものです。
2015/02/06(金) 17:34:24.75ID:12AknHRs262名前は開発中のものです。
2015/02/06(金) 22:49:06.68ID:qIQhbqny しかもそれだけ苦労したにもかかわらず、ロードが遅いと文句言われたに違いない…。
263名前は開発中のものです。
2015/02/07(土) 13:13:21.00ID:uCqCiOK0 >>260
PS3だな そうに決まってる
PS3だな そうに決まってる
264名前は開発中のものです。
2015/02/07(土) 13:42:24.95ID:buz4BGGO >>251
置き換えたらさらに別の場所が動かなかったから2013へと移行したりw
いや、ネットでは動くコードと書かれているんだよ、2013からは動くと
うちのPCで2013はマトモに動くかな?今インストール中だが
置き換えたらさらに別の場所が動かなかったから2013へと移行したりw
いや、ネットでは動くコードと書かれているんだよ、2013からは動くと
うちのPCで2013はマトモに動くかな?今インストール中だが
265名前は開発中のものです。
2015/02/07(土) 14:45:09.34ID:84N483gz ヘッダで前方宣言したはずのクラスがCandidates are: struct SimpleAudioEngineとエラーを出され
定義でreference to 'SimpleAudioEngine' is ambiguousとエラーを出されます
ヘッダではポインタしか使ってません
思うところがあるとすればSimpleAudioEngineの名前空間をusing namespaceしてるぐらいです
定義でreference to 'SimpleAudioEngine' is ambiguousとエラーを出されます
ヘッダではポインタしか使ってません
思うところがあるとすればSimpleAudioEngineの名前空間をusing namespaceしてるぐらいです
266名前は開発中のものです。
2015/02/07(土) 14:58:01.00ID:tCXnt3yJ267名前は開発中のものです。
2015/02/07(土) 16:04:21.06ID:ns5GMSPv 異なる名前空間の中で前方宣言すると別物だとみなされて
あとでusing namespaceすると区別できない
あとでusing namespaceすると区別できない
268名前は開発中のものです。
2015/02/07(土) 19:26:49.25ID:buz4BGGO 開発環境をvs2012からvs2013に変更したのは大当たりだった
エラーの位置は分かりやすくなったし、デバッグ機能は大幅に強化されてるし、
文字列クラス(std::wstring)は扱いやすくなったし、全般的に軽くなった
エラーの位置は分かりやすくなったし、デバッグ機能は大幅に強化されてるし、
文字列クラス(std::wstring)は扱いやすくなったし、全般的に軽くなった
269名前は開発中のものです。
2015/02/07(土) 20:51:50.60ID:G8afa58Z std::wstringって何か変更あったっけ?
270名前は開発中のものです。
2015/02/07(土) 23:10:30.01ID:buz4BGGO operaterがほとんど対応してなかったんだよ。
+=はあるのに+は無いとか、map<wstring,wstring>で使えないとか。
+=はあるのに+は無いとか、map<wstring,wstring>で使えないとか。
271名前は開発中のものです。
2015/02/07(土) 23:18:38.16ID:17zrnW4A ためしてないがそれはないだろ。
あとSTLやC標準ライブラリ、C++標準ライブラリは備え付けのを必ずしも使う必要がない。
実装は多数ある。
あとSTLやC標準ライブラリ、C++標準ライブラリは備え付けのを必ずしも使う必要がない。
実装は多数ある。
272名前は開発中のものです。
2015/02/07(土) 23:55:35.77ID:tCXnt3yJ たまたまインストールされてるのがVS2012だったから試してみたが普通に使えた
273名前は開発中のものです。
2015/02/08(日) 00:06:03.58ID:uih1DHvo あれ?って事は、vs2005を後から入れたせいでおかしくなってるのか??
274名前は開発中のものです。
2015/02/08(日) 00:15:39.03ID:uih1DHvo UMLのツールを買ってみて、たまたま家のVSで対応してるのが2005だけだったから、
後からインストールし直したんだよな
そっか、VS2005のコードでC++のコードが上書きされてたか
後からインストールし直したんだよな
そっか、VS2005のコードでC++のコードが上書きされてたか
275名前は開発中のものです。
2015/02/08(日) 00:52:07.50ID:iVwSBW/g とんでもない話だなw
276名前は開発中のものです。
2015/02/08(日) 01:13:03.19ID:sR/2PkWV VC6でもoperator+位あったような気もするけど
不便な所は連続したメモリ領域の保証が無いから
実装上はともかく厳密にやろうとするとvectorじゃないとダメな所
不便な所は連続したメモリ領域の保証が無いから
実装上はともかく厳密にやろうとするとvectorじゃないとダメな所
277名前は開発中のものです。
2015/02/08(日) 09:15:03.02ID:dvv+ci6w 連続領域かどうかに関しては
- vector C++03/11 → 連続保証
- string C++03 → 実装依存 / C++11 → 連続保証
らしいぞ。 最近のVCなら大丈夫なんじゃないかな。
- vector C++03/11 → 連続保証
- string C++03 → 実装依存 / C++11 → 連続保証
らしいぞ。 最近のVCなら大丈夫なんじゃないかな。
278名前は開発中のものです。
2015/02/08(日) 13:48:18.26ID:vuQZMEzS 連続性が保証されるようになっているとはな
外見は変わらなくても内部は少しづつ変わってるんだな
外見は変わらなくても内部は少しづつ変わってるんだな
279名前は開発中のものです。
2015/02/08(日) 13:51:09.60ID:iVwSBW/g 地味ではあるが重要なことだな。
280名前は開発中のものです。
2015/02/08(日) 13:58:02.91ID:uih1DHvo mallocのメモリ配置はOSで変わるんじゃなくてコンパイラで変わるみたいやね
281名前は開発中のものです。
2015/02/08(日) 15:05:56.00ID:OpMqb989 依存するのはコンパイラじゃ無い
ランタイム依存
ランタイム依存
282名前は開発中のものです。
2015/02/09(月) 20:39:13.54ID:q5WWprzE なんにせよ、ポインタはむやみにいじらない方がよさそうね
283名前は開発中のものです。
2015/02/10(火) 22:00:30.08ID:Lg1oqTmd ポインタは使い勝手がわかると色々出来るが、無くても問題無くなってきてるからなぁ……
284名前は開発中のものです。
2015/02/10(火) 23:49:52.25ID:2hfNPcff それなりのもの作ろうとしたらアロケーター自作になるゲーム制作はポインタ必須なんじゃないの
285名前は開発中のものです。
2015/02/10(火) 23:59:52.09ID:m/pIKos0 プラットホームによるとは思うが、いまだにカスタムアロケータなんて使うのか?
OSや言語処理系を書いているわけではないだろうに
OSや言語処理系を書いているわけではないだろうに
286名前は開発中のものです。
2015/02/11(水) 00:01:51.67ID:7TGiUCxx 車輪の再発明が好きなんだろ
287名前は開発中のものです。
2015/02/11(水) 00:26:12.68ID:IKslX+U4 流石にOSデフォルトのアロケーターは使わないんじゃないの
ライブラリのメモリプール使うにしてもポインタは使うだろうし
ライブラリのメモリプール使うにしてもポインタは使うだろうし
288名前は開発中のものです。
2015/02/11(水) 00:38:39.31ID:5bVnp7SH アロケーターはC言語かSTLのやつのことだろ?
OS自体のメモリ管理はOS自体のソースからビルドしないと変更むりでは。
OS自体のメモリ管理はOS自体のソースからビルドしないと変更むりでは。
289名前は開発中のものです。
2015/02/11(水) 00:41:52.28ID:IKslX+U4 普通にnew、deleteしたらOSのAPIでメモリ確保するんでないの?
STLはどうかわからんけど
STLはどうかわからんけど
290名前は開発中のものです。
2015/02/11(水) 00:51:21.24ID:rJC6nJDr291名前は開発中のものです。
2015/02/11(水) 00:52:08.05ID:vZk9YDm5 new deleteの動作なんて実装によるとしか言いようがない
STLのstd::allocator<T>の話なら、単にnewとdeleteを呼び出す実装になってる
STLのstd::allocator<T>の話なら、単にnewとdeleteを呼び出す実装になってる
292名前は開発中のものです。
2015/02/11(水) 00:59:11.50ID:5bVnp7SH mallocやnewを置き換えてもOSの命令を使ってたら
OS自体のメモリ管理の制約は受けるわけで。
OSと完全に独立できるものか?
OSが既に管理してるところを横取りしないとならないが。
OS自体のメモリ管理の制約は受けるわけで。
OSと完全に独立できるものか?
OSが既に管理してるところを横取りしないとならないが。
293名前は開発中のものです。
2015/02/11(水) 01:01:23.93ID:WPu+kv42 ちょっと前に「ゲームの場合、出現オブジェクトの個数に上限を設けることが多いから
new deleteせず自分でプールを確保する手もある」という話をしなかったっけ。
とりあえずstd::allocator<T>で書いといて、あとでカスタム化してもよいのでは。
new deleteせず自分でプールを確保する手もある」という話をしなかったっけ。
とりあえずstd::allocator<T>で書いといて、あとでカスタム化してもよいのでは。
294名前は開発中のものです。
2015/02/11(水) 01:03:22.28ID:5bVnp7SH malloc - Wikipedia
OSのカーネルでもアプリケーションと同様にメモリ確保が必要である。
カーネル内にもmalloc相当の関数はあるが、その実装はCライブラリのものとは大きく異なる。
例えば、DMA用のバッファには特別な制限が課せられることがあるし、割り込み処理でメモリを動的に確保したい場合もある。
このため、カーネルの仮想記憶サブシステムと密に連携した malloc 実装が要求される。
OSのカーネルでもアプリケーションと同様にメモリ確保が必要である。
カーネル内にもmalloc相当の関数はあるが、その実装はCライブラリのものとは大きく異なる。
例えば、DMA用のバッファには特別な制限が課せられることがあるし、割り込み処理でメモリを動的に確保したい場合もある。
このため、カーネルの仮想記憶サブシステムと密に連携した malloc 実装が要求される。
295名前は開発中のものです。
2015/02/11(水) 01:04:29.98ID:rJC6nJDr 余程特殊な用途でないかぎり既成の物使った方が速いから
296名前は開発中のものです。
2015/02/11(水) 01:06:40.34ID:IKslX+U4 自作アロケーターは最初に領域確保してその分を切り盛りするでしょ
ていうかそれ以外の作り方を知らない
ていうかそれ以外の作り方を知らない
297名前は開発中のものです。
2015/02/11(水) 01:06:46.81ID:rJC6nJDr298288
2015/02/11(水) 01:16:23.87ID:5bVnp7SH >>287に対して、自作アロケータ、マイアロケータってのは
ほとんどのケースで、OSデフォルト、カーネルアロケータに依存してるだろ?って反応なわけで。
ほとんどのケースで、OSデフォルト、カーネルアロケータに依存してるだろ?って反応なわけで。
299名前は開発中のものです。
2015/02/11(水) 01:32:15.63ID:rJC6nJDr そうだな
>>287
が言ってるOSデフォルトってのが悪かった。
アプリケーションが使うメモリアロケーターの殆どの実装はライブラリが行ってる。
OSからシステムコールでブロック単位でメモリを貰いアプリケーション内で分配な。
>>287
が言ってるOSデフォルトってのが悪かった。
アプリケーションが使うメモリアロケーターの殆どの実装はライブラリが行ってる。
OSからシステムコールでブロック単位でメモリを貰いアプリケーション内で分配な。
300名前は開発中のものです。
2015/02/11(水) 01:41:17.25ID:IKslX+U4 すんませんVC++のメモリ確保がWin32APIの関数呼ぶだけって何かで見たからそういうもんだと思ってました
301名前は開発中のものです。
2015/02/11(水) 01:49:31.11ID:tga+SBCo >>296
アプリケーションとしてのゲームはこれで確定だと思ってた
動的と言えば動的だけど都度都度確保はあり得ないって意味でこの手の話はスルーしてたけど、そう言うものでも無いみたいだと知ったわ
取れなかった場合の処理は思い付かないけど
アプリケーションとしてのゲームはこれで確定だと思ってた
動的と言えば動的だけど都度都度確保はあり得ないって意味でこの手の話はスルーしてたけど、そう言うものでも無いみたいだと知ったわ
取れなかった場合の処理は思い付かないけど
302名前は開発中のものです。
2015/02/11(水) 01:55:07.09ID:5bVnp7SH ヒープ、動的確保は丸投げに近いが。普通のauto変数とかは最初に確保した領域を使いまわす。
メモリの4 領域
http://brain.cc.kogakuin.ac.jp/~kanamaru/lecture/MP/final/part06/img6.png
http://brain.cc.kogakuin.ac.jp/~kanamaru/lecture/MP/final/part06/node8.html
テキスト領域:機械語に翻訳されたプログラムが格納される. この機械語の命令が 1 行づつ実行されることでプログラムが動く。
静的領域:グローバル変数などの静的変数が置かれる。
ヒープ領域:メモリの動的管理 (C 言語の malloc 関数や C++ の new 演算子でメモリを確保すること) で用いられる。
スタック領域:今回の演習で扱ったように CPU のレジスタを一時的に退避させたり、また C 言語の自動変数 (多くのローカル変数) が置かれる。
メモリの4 領域
http://brain.cc.kogakuin.ac.jp/~kanamaru/lecture/MP/final/part06/img6.png
http://brain.cc.kogakuin.ac.jp/~kanamaru/lecture/MP/final/part06/node8.html
テキスト領域:機械語に翻訳されたプログラムが格納される. この機械語の命令が 1 行づつ実行されることでプログラムが動く。
静的領域:グローバル変数などの静的変数が置かれる。
ヒープ領域:メモリの動的管理 (C 言語の malloc 関数や C++ の new 演算子でメモリを確保すること) で用いられる。
スタック領域:今回の演習で扱ったように CPU のレジスタを一時的に退避させたり、また C 言語の自動変数 (多くのローカル変数) が置かれる。
303名前は開発中のものです。
2015/02/11(水) 02:24:49.00ID:COJ2IR9k いわゆるメモリープールのようなものは既にランタイムに実装されてる場合もあるし
自分で実装する・しないは実行環境によると思う。
最近はこの辺のことは既に当たり前になってるのかどうか知らないけど、
検索してもあまり引っかからないね。とりあえず引っかかったところ
http://vcpp-ml.ldblog.jp/archives/1169943.html
ではVCのランタイムのソースみればとなってるので
興味ある人は読んでみては。
自分で実装する・しないは実行環境によると思う。
最近はこの辺のことは既に当たり前になってるのかどうか知らないけど、
検索してもあまり引っかからないね。とりあえず引っかかったところ
http://vcpp-ml.ldblog.jp/archives/1169943.html
ではVCのランタイムのソースみればとなってるので
興味ある人は読んでみては。
304名前は開発中のものです。
2015/02/11(水) 02:41:42.58ID:0cWu/C1d 俺が昔作ったベンチ引っ張り出してきた
10000個確保して解放を1セットで、10回繰り返す
malloc 0.0104349686516726 100
new 0.0170437163409596 163.332702856062
tlsf 0.0327989992535455 314.318138831095
右側がmallocを100とした場合の倍率。意外とtlsfは遅い。
んで下が自作のメモリアロケータでnewとdeleteをオーバーロードしてて
上で使ったnewするソースをそのまま使ってる。
fixpool 0.01086365697986310 104.108189899754
fixpool-ss 0.00270476282206395 25.9201815774541
アルゴリズムは一回使ったものをリストにつなげておいて、newのとき取り出すだけ。
ssは上限が分かっている場合で、先にメモリ確保するのでmallocを上回れる。
まぁ、はっきり言って速度だけを考えると自作アロケータの必要はないかなレベル・・・と思う。
確か、スマートポインタのベンチもどっかにあったはずなんだが、どこだったか・・・
10000個確保して解放を1セットで、10回繰り返す
malloc 0.0104349686516726 100
new 0.0170437163409596 163.332702856062
tlsf 0.0327989992535455 314.318138831095
右側がmallocを100とした場合の倍率。意外とtlsfは遅い。
んで下が自作のメモリアロケータでnewとdeleteをオーバーロードしてて
上で使ったnewするソースをそのまま使ってる。
fixpool 0.01086365697986310 104.108189899754
fixpool-ss 0.00270476282206395 25.9201815774541
アルゴリズムは一回使ったものをリストにつなげておいて、newのとき取り出すだけ。
ssは上限が分かっている場合で、先にメモリ確保するのでmallocを上回れる。
まぁ、はっきり言って速度だけを考えると自作アロケータの必要はないかなレベル・・・と思う。
確か、スマートポインタのベンチもどっかにあったはずなんだが、どこだったか・・・
305名前は開発中のものです。
2015/02/11(水) 02:52:05.14ID:IKslX+U4 >>303
ゲームエンジン•アーキテクチャ(ソフトバンククリエイティブ)によれば、デフォルトのnewが遅い理由は管理コストとOSのコンテキストスイッチとあるけど
URL先の内容からすると最初に確保された分越えなければコンテキストスイッチは発生しないって事なんかな
ていうか2000年の時点でそういう仕様だったのか
ゲームエンジン•アーキテクチャ(ソフトバンククリエイティブ)によれば、デフォルトのnewが遅い理由は管理コストとOSのコンテキストスイッチとあるけど
URL先の内容からすると最初に確保された分越えなければコンテキストスイッチは発生しないって事なんかな
ていうか2000年の時点でそういう仕様だったのか
306名前は開発中のものです。
2015/02/11(水) 02:52:16.60ID:rJC6nJDr >>304
その自作アロケーターって複数スレッドから呼んでも大丈夫なように作ってんの?
だったらたいしたもの。
今時モバイルですらマルチスレッドが当たり前だからベンチマークも複数スレッドで実行すべき。
スレッド使うライブラリーをリンクしないとシングルスレッド版のmallocとリンクする環境もあるし
その自作アロケーターって複数スレッドから呼んでも大丈夫なように作ってんの?
だったらたいしたもの。
今時モバイルですらマルチスレッドが当たり前だからベンチマークも複数スレッドで実行すべき。
スレッド使うライブラリーをリンクしないとシングルスレッド版のmallocとリンクする環境もあるし
307名前は開発中のものです。
2015/02/11(水) 03:06:07.85ID:rJC6nJDr308名前は開発中のものです。
2015/02/11(水) 03:24:52.81ID:tga+SBCo >>306
データ読み込みや通信で「now loading…」、ムービー再生とか以外でマルチスレッドって何に使うの?
いろんな判定でシングルでないと困らない?
俺はコンシューマ長すぎのせいか、マルチスレッド(タイムスライス型)は、そもそもゲームシステムとして実装が思い付かない
どうしてもタスク()で疑似マルチしか作れないや
データ読み込みや通信で「now loading…」、ムービー再生とか以外でマルチスレッドって何に使うの?
いろんな判定でシングルでないと困らない?
俺はコンシューマ長すぎのせいか、マルチスレッド(タイムスライス型)は、そもそもゲームシステムとして実装が思い付かない
どうしてもタスク()で疑似マルチしか作れないや
309名前は開発中のものです。
2015/02/11(水) 03:29:13.74ID:0cWu/C1d >>306
ポインタのつなぎ替えの部分に一応クリティカルセクション使ってる。
が、これのベンチがねぇ・・・
複数スレッドで同時に確保しまくって人為的にコリジョン起こしても、
シングルの場合と違って純粋な値が取れないので。
ポインタのつなぎ替えの部分に一応クリティカルセクション使ってる。
が、これのベンチがねぇ・・・
複数スレッドで同時に確保しまくって人為的にコリジョン起こしても、
シングルの場合と違って純粋な値が取れないので。
310名前は開発中のものです。
2015/02/11(水) 03:54:41.50ID:0cWu/C1d スマポあった。同じく10000を10回。
new 0.00696283003770957 100
shared_ptr 0.039324851409757 564.782584046715
生ポインタとboostのshared_ptrね。
下が自作のリンク方式とカリカリにチューンした参照カウント方式のスマートポインタ。
link 0.0273835524999122 393.281932082318
count 0.0157994938635595 226.911956460117
これも、安全をとるなら生より多少遅くてもboostで十分と思う。
自作のスマポは労力の割にはねぇ。
new 0.00696283003770957 100
shared_ptr 0.039324851409757 564.782584046715
生ポインタとboostのshared_ptrね。
下が自作のリンク方式とカリカリにチューンした参照カウント方式のスマートポインタ。
link 0.0273835524999122 393.281932082318
count 0.0157994938635595 226.911956460117
これも、安全をとるなら生より多少遅くてもboostで十分と思う。
自作のスマポは労力の割にはねぇ。
311名前は開発中のものです。
2015/02/11(水) 04:10:32.63ID:0cWu/C1d312名前は開発中のものです。
2015/02/11(水) 08:00:15.92ID:JqfHYvpf んーなんか車輪の再発明がどんどん無駄になってくのな
必要な機能が既存のコードにあるなら、わざわざ作る必要は無い、みたいな
必要な機能が既存のコードにあるなら、わざわざ作る必要は無い、みたいな
313名前は開発中のものです。
2015/02/11(水) 08:08:59.24ID:JqfHYvpf 自分は今は自作コンパクションを使ってるけど、これも誰かの作ったコードを流用した方が早い時代が来るのかな?
314名前は開発中のものです。
2015/02/11(水) 08:40:48.37ID:45+5SbHz315名前は開発中のものです。
2015/02/11(水) 13:02:10.23ID:tga+SBCo >>314
これの詳細を知ってるが、レンダリングはPCだとGPU処理だから、マルチスレッドとは別で非同期でしょ?
それ以外は先程書いた通り
因みにこのフレームワークは自動変数(スタック)以外はメモリは静的に持ってるよ
これの詳細を知ってるが、レンダリングはPCだとGPU処理だから、マルチスレッドとは別で非同期でしょ?
それ以外は先程書いた通り
因みにこのフレームワークは自動変数(スタック)以外はメモリは静的に持ってるよ
316名前は開発中のものです。
2015/02/11(水) 13:10:49.29ID:vZk9YDm5 ガチな将棋AIとか作ることになったらやっぱりCPUスレッド数のスレッド作って読みを分散するんじゃなかろうか
317名前は開発中のものです。
2015/02/11(水) 13:40:34.62ID:sOoti607 どうせなら複数マシンに分散させるべき
318名前は開発中のものです。
2015/02/11(水) 14:57:37.67ID:/JcbXeo3 そもそもメモリ管理なんて個人でやるものじゃないよ
せいぜいオブジェクトプールのように局所的なところで使ったほうがいい
自作アロケータを使ってみたい気持ちはわかるんだけどねぇ
せいぜいオブジェクトプールのように局所的なところで使ったほうがいい
自作アロケータを使ってみたい気持ちはわかるんだけどねぇ
319名前は開発中のものです。
2015/02/11(水) 15:06:24.20ID:rJC6nJDr >>308
シングルスレッドでパフォーマンス十分なら要らないんじゃない?
その場合アロケーター自作しようとする理由すら解らなくなるけど。
レンダリングスレッドを分けるってのは比較的簡単だからよく使われてる方法だね。
グラフィックスのAPIが全て非同期という訳でもないし、呼ぶ事自体比較的コストが高いものもあるドローコールとか
あとGPUが全てやってくれるわけでもない。
影とかモデルの持ってるマテリアルによってはマルチパスレンダリングが必要になるしね
それら含めて一つの独立したスレッドでレンダリングを行うって事
どこまでやるかはそれぞれのゲームエンジンの実装次第だけど
シングルスレッドでパフォーマンス十分なら要らないんじゃない?
その場合アロケーター自作しようとする理由すら解らなくなるけど。
レンダリングスレッドを分けるってのは比較的簡単だからよく使われてる方法だね。
グラフィックスのAPIが全て非同期という訳でもないし、呼ぶ事自体比較的コストが高いものもあるドローコールとか
あとGPUが全てやってくれるわけでもない。
影とかモデルの持ってるマテリアルによってはマルチパスレンダリングが必要になるしね
それら含めて一つの独立したスレッドでレンダリングを行うって事
どこまでやるかはそれぞれのゲームエンジンの実装次第だけど
320名前は開発中のものです。
2015/02/11(水) 20:31:12.70ID:IKslX+U4 PS3なんかはは汎用コアが貧弱でマルチスレッド使わないとまともに動かないらしいけど
PCはターボブーストなんかもあるし処理分割しなくてもそれなりに動くのかね
ゲームで重い処理って言ったらAIとか物理演算とか?
それらやらなきゃコア使い切る事もなさそう
PCはターボブーストなんかもあるし処理分割しなくてもそれなりに動くのかね
ゲームで重い処理って言ったらAIとか物理演算とか?
それらやらなきゃコア使い切る事もなさそう
321名前は開発中のものです。
2015/02/11(水) 22:28:39.42ID:o3rdwdSA 自分の場合、(作ったのはC#とXNAだったけど)
・更新
非同期・4体のキャラの思考ルーチンをマルチスレッドで(他のキャラの状態は前フレームのものを利用)。
同期・同時に行う必要のある判定類。
非同期・4体のキャラのアニメーション演算(*)
↓
・描画(スキップされることがある)
非同期・キャラの描画コマンド発行(ただし、4体それぞれに(*)を同期)。(**)
同期
非同期・背景などの描画。
↓
・更新
※未了のタスクがあればいったん待機して、最初と同じ。
ということはやっていた。じつはXNAは(**)が異様に重くなるというハンデ持ちで、
(*)はC++だろうと当然重いはずだから、パフォーマンス上がると思うよ。
・更新
非同期・4体のキャラの思考ルーチンをマルチスレッドで(他のキャラの状態は前フレームのものを利用)。
同期・同時に行う必要のある判定類。
非同期・4体のキャラのアニメーション演算(*)
↓
・描画(スキップされることがある)
非同期・キャラの描画コマンド発行(ただし、4体それぞれに(*)を同期)。(**)
同期
非同期・背景などの描画。
↓
・更新
※未了のタスクがあればいったん待機して、最初と同じ。
ということはやっていた。じつはXNAは(**)が異様に重くなるというハンデ持ちで、
(*)はC++だろうと当然重いはずだから、パフォーマンス上がると思うよ。
322名前は開発中のものです。
2015/02/11(水) 22:33:55.73ID:o3rdwdSA 連投悪い。
というか、マルチコアのCPUなのにシングルで動作させてるって、同人ならともかく
商用ゲームだとハードを全然使いこなせていないんじゃないの。
仮にPS3相当かそれ以上のハードで、シングルで楽々動くゲームがあるとしたら、
それは「CPUスゲー!」じゃなくて「CPUを遊ばせている未熟なプログラム」
もしくは「絵的にボリューム不足」「敢えてシンプル路線のゲームにしただけ」だと思う。
というか、マルチコアのCPUなのにシングルで動作させてるって、同人ならともかく
商用ゲームだとハードを全然使いこなせていないんじゃないの。
仮にPS3相当かそれ以上のハードで、シングルで楽々動くゲームがあるとしたら、
それは「CPUスゲー!」じゃなくて「CPUを遊ばせている未熟なプログラム」
もしくは「絵的にボリューム不足」「敢えてシンプル路線のゲームにしただけ」だと思う。
323名前は開発中のものです。
2015/02/11(水) 23:00:37.92ID:DLujIAOi 妖精左「マルチスレッド!!」
妖精右「マルチタスク!!」
俺「じっそうできればいいから・・・」
部長「ま だ か は や く し ろ 。」
妖精右「マルチタスク!!」
俺「じっそうできればいいから・・・」
部長「ま だ か は や く し ろ 。」
324名前は開発中のものです。
2015/02/12(木) 00:02:20.82ID:ebWGGwik >>322
C#なんて全然ハード生かせないだろC++で作れよ
C#なんて全然ハード生かせないだろC++で作れよ
325名前は開発中のものです。
2015/02/12(木) 00:29:15.74ID:DJBGtoR8 C++至上主義の時代はもう終わった
326名前は開発中のものです。
2015/02/12(木) 00:32:29.34ID:UV0J6V6h まだだ!まだ終わらんよ!
327名前は開発中のものです。
2015/02/12(木) 02:23:42.32ID:U9NT4imE さっき始まったばかりですよ
328名前は開発中のものです。
2015/02/12(木) 02:30:04.64ID:rNOcVIpi >>322
たしかにC#だと、ネイティヴDirectX呼び出す時点でカーネル切替が発生し、ボトルネックになる
(ただ一方、GCはちょっと工夫すればシーン切替時以外は抑制できる)。
まあC++が最強という事実は揺るがないし、だからここを覗きに来てるんだけど
今まで作った資産をそっくり移植するのは全部1人開発だと工数的に厳し過ぎるんよ。
自分はあくまでゲームを完成させるのが主眼なもんで。
たしかにC#だと、ネイティヴDirectX呼び出す時点でカーネル切替が発生し、ボトルネックになる
(ただ一方、GCはちょっと工夫すればシーン切替時以外は抑制できる)。
まあC++が最強という事実は揺るがないし、だからここを覗きに来てるんだけど
今まで作った資産をそっくり移植するのは全部1人開発だと工数的に厳し過ぎるんよ。
自分はあくまでゲームを完成させるのが主眼なもんで。
329名前は開発中のものです。
2015/02/12(木) 02:30:45.99ID:rNOcVIpi >>324だった。
330名前は開発中のものです。
2015/02/12(木) 09:37:50.92ID:ebWGGwik >>328
> 仮にPS3相当かそれ以上のハードで、シングルで楽々動くゲームがあるとしたら、
> それは「CPUスゲー!」じゃなくて「CPUを遊ばせている未熟なプログラム」
> もしくは「絵的にボリューム不足」「敢えてシンプル路線のゲームにしただけ」だと思う。
こんなこと言う人間が
> 自分はあくまでゲームを完成させるのが主眼なもんで。
なんてよく言えるな
> 仮にPS3相当かそれ以上のハードで、シングルで楽々動くゲームがあるとしたら、
> それは「CPUスゲー!」じゃなくて「CPUを遊ばせている未熟なプログラム」
> もしくは「絵的にボリューム不足」「敢えてシンプル路線のゲームにしただけ」だと思う。
こんなこと言う人間が
> 自分はあくまでゲームを完成させるのが主眼なもんで。
なんてよく言えるな
331名前は開発中のものです。
2015/02/12(木) 09:58:41.94ID:DJBGtoR8 Unityの台頭とC++erの更なる没落
332名前は開発中のものです。
2015/02/12(木) 10:00:56.62ID:K+V6X3Ce 社員さん、ステマ乙
333名前は開発中のものです。
2015/02/12(木) 10:16:24.93ID:xZrWsSkn 世界は使いやすい道具の前にひれ伏す
これが分からない奴は一生地を這う
これが分からない奴は一生地を這う
334名前は開発中のものです。
2015/02/12(木) 10:44:14.01ID:K+V6X3Ce Unityあつかいづらいから自分でライブラリ作ったわwww
335名前は開発中のものです。
2015/02/12(木) 12:11:18.44ID:ZP/aF8VN アホか。
みなが同じ道具を使ったら、それを売って儲ける奴の小作農になるだけ。
これが分からない人こそ
>一生地を這う
みなが同じ道具を使ったら、それを売って儲ける奴の小作農になるだけ。
これが分からない人こそ
>一生地を這う
336名前は開発中のものです。
2015/02/12(木) 12:13:54.04ID:ZP/aF8VN337名前は開発中のものです。
2015/02/12(木) 13:25:06.24ID:0nYHwL7l 実際PS3の初期タイトルは酷いの結構あったな
アイデアファクトリーとか
アイデアファクトリーとか
338名前は開発中のものです。
2015/02/12(木) 15:23:29.14ID:gRG035Lb 作るものに応じて道具を選べない人が一生地を這うのでは
各処理をどんだけ細切れにしても結局全部処理しないと次には進めず、
しかも実は単一の処理は積み重ねても大して時間はかかっておらず、
単なるスレッドの立て損にしかなっていないんならマルチスレッドなんか不要
商業だからだのなんだのと適当な言い訳をしても、
実際は目に付くよさそうに見えるものに振り回されているキョロ充
まずは作りやすい方法で実装してテストして、ダメだったら作り直せばいいじゃん
各処理をどんだけ細切れにしても結局全部処理しないと次には進めず、
しかも実は単一の処理は積み重ねても大して時間はかかっておらず、
単なるスレッドの立て損にしかなっていないんならマルチスレッドなんか不要
商業だからだのなんだのと適当な言い訳をしても、
実際は目に付くよさそうに見えるものに振り回されているキョロ充
まずは作りやすい方法で実装してテストして、ダメだったら作り直せばいいじゃん
339名前は開発中のものです。
2015/02/12(木) 17:28:07.56ID:K+V6X3Ce Unityの社員ってステマのノルマがあるみたい
340名前は開発中のものです。
2015/02/12(木) 17:41:44.09ID:3BvTygsz スレッドのが実装しやすい処理もあると思うの
341名前は開発中のものです。
2015/02/12(木) 19:41:03.02ID:gRG035Lb うにちゃんは次期主力ゲームエンジンの座を狙っているからね、仕方ないね
何が悲しくてわざわざ柔軟な使い方のできる言語投げ捨ててゲームエンジンなんぞに…
PHPやらJAVAやらに行った方がマシ
何が悲しくてわざわざ柔軟な使い方のできる言語投げ捨ててゲームエンジンなんぞに…
PHPやらJAVAやらに行った方がマシ
342名前は開発中のものです。
2015/02/12(木) 20:21:56.36ID:K+V6X3Ce そんなに自信があるのなら、自分たちでゲーム機を出せばいいのに
彼らの夢は、所詮は砂上の楼閣なんかね
彼らの夢は、所詮は砂上の楼閣なんかね
343名前は開発中のものです。
2015/02/12(木) 20:26:40.79ID:EbJGy+Ll このスレってレベル低いよな
344名前は開発中のものです。
2015/02/12(木) 20:29:07.88ID:EbJGy+Ll >>338
出来ることは並列でやった方が早く終わるよね。
出来ることは並列でやった方が早く終わるよね。
345名前は開発中のものです。
2015/02/12(木) 20:35:29.18ID:wNE8sYSh >>342
それは無理。彼らの夢は、ゲーム業界に巣喰う寄生虫になる事だから。
それは無理。彼らの夢は、ゲーム業界に巣喰う寄生虫になる事だから。
346名前は開発中のものです。
2015/02/12(木) 20:42:55.10ID:K+V6X3Ce >>344
その前にアルゴリズムを考えた方が早いかもね
その前にアルゴリズムを考えた方が早いかもね
347名前は開発中のものです。
2015/02/12(木) 21:16:05.40ID:SEu5lClB シングルスレッドで足りるならシングルスレッドで作ればいいと思う
後からマルチスレッドにしようとか考えたら地獄みるけど
ムダに作り込んで時間かけても仕方ないしね
後からマルチスレッドにしようとか考えたら地獄みるけど
ムダに作り込んで時間かけても仕方ないしね
348名前は開発中のものです。
2015/02/12(木) 21:57:58.62ID:5lpYcWcf スレッドの話で盛り上がってるけど、みんなpromiseとかatomicとかcasとかちゃんと理解できてる?
俺は半分も理解してない
俺は半分も理解してない
349名前は開発中のものです。
2015/02/12(木) 22:02:24.65ID:BY0ie4C4 C++を書いているとJavaやC#にだんだん似てくるし
C++で便利コードを書いても既存のライブラリには適わないし
C++でゲーム用ライブラリを書いていると既存のエンジンに似てきたから
既存のエンジン使うことにした。困ったらエンジン改造すればいい。
C++で便利コードを書いても既存のライブラリには適わないし
C++でゲーム用ライブラリを書いていると既存のエンジンに似てきたから
既存のエンジン使うことにした。困ったらエンジン改造すればいい。
350名前は開発中のものです。
2015/02/12(木) 23:13:41.81ID:X8c9QSvd おーい、誰かクマが釣り針見つめてるAA持ってない?
>>348
promiseはFutureパターンのSTL実装かな。
casは不勉強だったわ。いちいちロックしなくても非同期でノード更新できるってことかな。
>>348
promiseはFutureパターンのSTL実装かな。
casは不勉強だったわ。いちいちロックしなくても非同期でノード更新できるってことかな。
351名前は開発中のものです。
2015/02/12(木) 23:54:36.97ID:yCMGD6Md352名前は開発中のものです。
2015/02/13(金) 00:16:59.27ID:6pLn2rnq visual c++2010です
コードを書いていると、未定義エラーなどのエラーが起こっている部分を波線で表示する機能がありますが
それをすばやく表示したい(エラーを確認する間隔を早めたい)時はどうすればいいのでしょうか?
オプションでそれらしき項目を探しているのですが、見つけられず困っています…
コードを書いていると、未定義エラーなどのエラーが起こっている部分を波線で表示する機能がありますが
それをすばやく表示したい(エラーを確認する間隔を早めたい)時はどうすればいいのでしょうか?
オプションでそれらしき項目を探しているのですが、見つけられず困っています…
353名前は開発中のものです。
2015/02/13(金) 00:28:10.25ID:FqU8O5pj 今表示されてる速度が最速だよ
文句があるならもっと早いCPUに代えろ
もしくはVSのバージョン上げたら改善される可能製はある
文句があるならもっと早いCPUに代えろ
もしくはVSのバージョン上げたら改善される可能製はある
354名前は開発中のものです。
2015/02/13(金) 00:38:48.23ID:PNw/R4Nn 何が原因かわからんが仮にnullpoって変数なり型名なりがあるとしてpoにだけ下線とエラー表示が出る謎現象なんかが困る
nullpoの間にスペース入れた後に消すなりコンパイルするなりして文字解析をやり直させると普通に通る
nullpoの間にスペース入れた後に消すなりコンパイルするなりして文字解析をやり直させると普通に通る
355名前は開発中のものです。
2015/02/13(金) 00:38:56.82ID:6pLn2rnq ありがとうございました
356名前は開発中のものです。
2015/02/13(金) 02:11:39.11ID:E1xWFoJ9 コードを書いてるといきなり妙な場所に波線
面食らいつつ原因を探るべくコードを見直しているといつの間にか消える
他にも指摘されて修正した部分の波線がなかなか消えず、
あれ?修正間違ったかなと書き直そうとすると消えたりする
VSに不信感を抱きそう
面食らいつつ原因を探るべくコードを見直しているといつの間にか消える
他にも指摘されて修正した部分の波線がなかなか消えず、
あれ?修正間違ったかなと書き直そうとすると消えたりする
VSに不信感を抱きそう
357名前は開発中のものです。
2015/02/13(金) 03:15:03.66ID:Jw6U7GOH VS2010より2012, 2013はずっと賢いから変えたほうがいい
あとVSの謎の挙動はコードが悪いせいなのできちんと書くように心がけましょう
あとVSの謎の挙動はコードが悪いせいなのできちんと書くように心がけましょう
358名前は開発中のものです。
2015/02/13(金) 03:17:28.00ID:Jw6U7GOH いつもコードが悪いせいではないな
一括置換とかファイル名変更とか,変なことをやるとVSたんはたまにアホになる
一括置換とかファイル名変更とか,変なことをやるとVSたんはたまにアホになる
359名前は開発中のものです。
2015/02/13(金) 03:36:37.36ID:PNw/R4Nn というわけでついっさっきVS2013導入したった
C++で打ってる時2010だとショートカットキー(Alt→派)でしかインテリセンス出なかったのが改善されてるのが今のところ一番嬉しい
C++で打ってる時2010だとショートカットキー(Alt→派)でしかインテリセンス出なかったのが改善されてるのが今のところ一番嬉しい
360名前は開発中のものです。
2015/02/13(金) 04:37:35.15ID:diYHW0ok 外部エディタを使っている自分に隙はなかった
361名前は開発中のものです。
2015/02/13(金) 09:12:51.03ID:PRy9EczC どんなスペックのPC使ってんの
362名前は開発中のものです。
2015/02/13(金) 10:50:31.89ID:WvS4Hu4Q JavaやC#ならわかる
だが負の遺産であるクソ構文抱えたC++で
実用的な速度であれだけのことが出来ることそのものが信じられん
動いたらラッキーくらいの謙虚な気持ちで使うべき
だが負の遺産であるクソ構文抱えたC++で
実用的な速度であれだけのことが出来ることそのものが信じられん
動いたらラッキーくらいの謙虚な気持ちで使うべき
363名前は開発中のものです。
2015/02/13(金) 11:23:05.70ID:/fWsfy1c C++とC#ってそんなにちがうか??
C++って多少手間暇かかる部分はあるが、自前で組めばどうにでもなる事でね?
まあ、プログラムはソースの書き方だけで作る時間に10倍以上の差が出るし、
モジュールやオブジェクト指向を理解してるかどうかで100倍以上の差が出るから、
その辺りの違いだろうけどな。
C++って多少手間暇かかる部分はあるが、自前で組めばどうにでもなる事でね?
まあ、プログラムはソースの書き方だけで作る時間に10倍以上の差が出るし、
モジュールやオブジェクト指向を理解してるかどうかで100倍以上の差が出るから、
その辺りの違いだろうけどな。
364名前は開発中のものです。
2015/02/13(金) 11:25:59.01ID:NjULDeHN MSがBC++を買っとけば世界が平和になってたんですよ…
365名前は開発中のものです。
2015/02/13(金) 12:17:28.61ID:oAXnXeHu 学習コストの高い言語はもう流行んないでしょ
ゲームもコア部分以外はスクリプトで書くのが主流になるだろうし
C++プログラマはゲームエンジン書けるレベルの人しか生き残れないな
ゲームもコア部分以外はスクリプトで書くのが主流になるだろうし
C++プログラマはゲームエンジン書けるレベルの人しか生き残れないな
366名前は開発中のものです。
2015/02/13(金) 13:34:54.76ID:/fWsfy1c パソコン自体がもうほとんど進化しなくなったのに、遅い言語を勧められてもな
367名前は開発中のものです。
2015/02/13(金) 14:00:42.22ID:wCixqXPj 状況次第ではJavaScriptの方が速いなんて事もあるのに
まだそんな事を言っているのか
http://arewefastyet.com/#machine=28&view=breakdown&suite=asmjs-ubench
まだそんな事を言っているのか
http://arewefastyet.com/#machine=28&view=breakdown&suite=asmjs-ubench
368名前は開発中のものです。
2015/02/13(金) 14:07:45.39ID:/fWsfy1c まずは、JavaとJavaScriptの違いから勉強しようね?
369名前は開発中のものです。
2015/02/13(金) 14:07:50.74ID:ozS65/+Z と言うかC/C++のスレでいい加減スレチw
370名前は開発中のものです。
2015/02/13(金) 14:18:22.58ID:diYHW0ok いや、C/C++の存在意義を知る上で重要な議論だよ。
371名前は開発中のものです。
2015/02/13(金) 14:20:03.86ID:s8SeVfmU しかも、asm-jsってClangで中間コードにしたものをJavascriptに変換するものであって人間が書いてネイティブコードより速くなるもんじゃねえよ
372名前は開発中のものです。
2015/02/13(金) 14:58:19.33ID:wCixqXPj 他の言語は実行がVMだから遅い、C++はネイティブコードだから(常に)VMより速いと言う幻想を>>366は持っているようなので
ぶち壊してやった
ぶち壊してやった
373名前は開発中のものです。
2015/02/13(金) 15:06:44.71ID:/fWsfy1c で、JavaやC#がC++と等速になったとかいうデータはマダー??
374名前は開発中のものです。
2015/02/13(金) 15:23:17.57ID:fRUihGLp375名前は開発中のものです。
2015/02/13(金) 15:25:16.23ID:diYHW0ok いったい、何のためにそんなことを・・・
376名前は開発中のものです。
2015/02/13(金) 15:25:55.96ID:9I9SRziA C++の中にCをラップしているという、気味の悪いC++の現状を憂う気持ちは分かる
C++という言語自体がすでに溶岩流状態だよなwww
…
C++という言語自体がすでに溶岩流状態だよなwww
…
377名前は開発中のものです。
2015/02/13(金) 15:26:18.69ID:s8SeVfmU378名前は開発中のものです。
2015/02/13(金) 15:27:18.22ID:7ayiwF3a 中間コードを実行するVMの関数呼び出しや演算がC++より速くなることは原理的にないんじゃないの
速くなったとしても結局記述されたコードのレベルの差でしょ
C++でチューニングしたコード書けばもっと速くなる
Cのコードがチューニングされたアセンブリより遅いのといっしょ
速くなったとしても結局記述されたコードのレベルの差でしょ
C++でチューニングしたコード書けばもっと速くなる
Cのコードがチューニングされたアセンブリより遅いのといっしょ
379名前は開発中のものです。
2015/02/13(金) 15:31:25.28ID:4Xq/J0Q+ 話の流れに乗ってみるが
ゲーム本体はc++でツール等はc#というのを
ちらほら聞くけど実行している人いる?
いるとしたらどれだけ有用か意見をお伺いしたい
ゲーム本体はc++でツール等はc#というのを
ちらほら聞くけど実行している人いる?
いるとしたらどれだけ有用か意見をお伺いしたい
380名前は開発中のものです。
2015/02/13(金) 15:36:07.95ID:s8SeVfmU381名前は開発中のものです。
2015/02/13(金) 15:43:02.61ID:6pLn2rnq >>361
356ですが、もし自分の事でしたらXeon W5590(8コア3.33GHz)・メモリは12gbです
遅延が起こるコードはDLLを作る用のもので、約5000行
(2000行のファイル2つ・1000行のファイル1つ、それぞれa.cpp b.h c.hとします)です
a.cpp(2000行)の途中でb.hとc.hをインクルードしてる状態ですが
a.cppの一番下の行の方でスクリプトを書きますと、
波線や#if 0-#endifの半透明化が行われるまでにおよそ2分ぐらいかかります
356ですが、もし自分の事でしたらXeon W5590(8コア3.33GHz)・メモリは12gbです
遅延が起こるコードはDLLを作る用のもので、約5000行
(2000行のファイル2つ・1000行のファイル1つ、それぞれa.cpp b.h c.hとします)です
a.cpp(2000行)の途中でb.hとc.hをインクルードしてる状態ですが
a.cppの一番下の行の方でスクリプトを書きますと、
波線や#if 0-#endifの半透明化が行われるまでにおよそ2分ぐらいかかります
382名前は開発中のものです。
2015/02/13(金) 15:46:18.40ID:diYHW0ok 原理的なパフォーマンスより生産性を優先されることで言語の歴史は移り変わってきたし、
機械語 ⇒ アセンブラ ⇒ C
までは割とはっきりと移り変わってきたと思う。
それ以降、C ⇒ C++ ⇒ Java or C#
についてはうろうろしてる感じ・・・。
やっぱり、今もC++は欠かせないでしょ。
機械語 ⇒ アセンブラ ⇒ C
までは割とはっきりと移り変わってきたと思う。
それ以降、C ⇒ C++ ⇒ Java or C#
についてはうろうろしてる感じ・・・。
やっぱり、今もC++は欠かせないでしょ。
383名前は開発中のものです。
2015/02/13(金) 15:46:47.59ID:7ayiwF3a >>380
あー確かにターゲットが広いとC++で全部に最適化するのは現実的じゃないな
あー確かにターゲットが広いとC++で全部に最適化するのは現実的じゃないな
384名前は開発中のものです。
2015/02/13(金) 15:52:11.33ID:KYsA9vla ツールはマルチプラットホームで動く必要が無いってのが大きいんじゃないの?
Windows, Mac, コンシューマ機 で動くとなると C++ しか選択肢が無かった気がする。
そこにモバイルが加わって、必ずしもC++が移植性の面で最良では無くなりつつあるのかもしれない。
Windows, Mac, コンシューマ機 で動くとなると C++ しか選択肢が無かった気がする。
そこにモバイルが加わって、必ずしもC++が移植性の面で最良では無くなりつつあるのかもしれない。
385名前は開発中のものです。
2015/02/13(金) 15:55:59.21ID:/fWsfy1c 問題点がGCを使うことの有無になってきてる気がするな
適切にGC.Collect()を使えばいいというような話はあるが……どちらが良いかはよーわからんw
適切にGC.Collect()を使えばいいというような話はあるが……どちらが良いかはよーわからんw
386名前は開発中のものです。
2015/02/13(金) 15:56:27.80ID:7ah0RMwS なんか勘違いしてる人が多いみたいだけど、C#は簡単な言語じゃなくて、理想的なオブジェクト指向をするための言語
そもそもオブジェクト指向が出来ない人はC++もC#もまともに使いこなせないから
そもそもオブジェクト指向が出来ない人はC++もC#もまともに使いこなせないから
387名前は開発中のものです。
2015/02/13(金) 15:59:29.02ID:diYHW0ok >>386
まーそうだな。
いずれにしても、ちゃんとした設計ができるというのが前提。
その上でパフォーマンスと生産性(クロスプラットフォームかどうかなど)を勘案した上で適切な言語を選択する。
できれば全部C++でやりたい派だけどw
まーそうだな。
いずれにしても、ちゃんとした設計ができるというのが前提。
その上でパフォーマンスと生産性(クロスプラットフォームかどうかなど)を勘案した上で適切な言語を選択する。
できれば全部C++でやりたい派だけどw
388名前は開発中のものです。
2015/02/13(金) 16:09:25.94ID:/fWsfy1c 設計気にせずコーディングでゴリゴリやりたい派が居るからなぁ……
ライブラリが充実してると有効なんだが、充実してない場合は……お察し下さい
ライブラリが充実してると有効なんだが、充実してない場合は……お察し下さい
389名前は開発中のものです。
2015/02/13(金) 17:05:12.10ID:wCixqXPj C++のコンパイラは事前コンパイラだから
実行前にはプログラム全体のネイティブコードが得られるが
プログラム全体を無差別に最適化する分コンパイルに時間が掛かるし
実行時の状況を見て最適化する事も出来ない
JITコンパイルは実行時によく使われたコードだけを最適化するから割と高速に実行できる事が多い
http://ja.wikipedia.org/wiki/実行時コンパイラ
実行前にはプログラム全体のネイティブコードが得られるが
プログラム全体を無差別に最適化する分コンパイルに時間が掛かるし
実行時の状況を見て最適化する事も出来ない
JITコンパイルは実行時によく使われたコードだけを最適化するから割と高速に実行できる事が多い
http://ja.wikipedia.org/wiki/実行時コンパイラ
390名前は開発中のものです。
2015/02/13(金) 17:11:55.89ID:diYHW0ok その中間がGPUのシェーダーって感じかな。
動的ではないけど、同じコードをデバイス(ドライバ)に応じて実行直前に一度コンパイルする。
動的ではないけど、同じコードをデバイス(ドライバ)に応じて実行直前に一度コンパイルする。
391名前は開発中のものです。
2015/02/13(金) 17:26:17.39ID:wCixqXPj JITだと最適化すべき所があまりに多いと最適化が間に合わないし、あまり複雑な最適化はできないだろうけど
プロファイラで遅いところを見つけてそこだけC++で書くことも出来る
そうすれば速度が下がるデメリットより生産性が上がるメリットの方が上回ると思う
Android 5.0は中間コードから事前コンパイル出来るらしいが
インストールに時間取りそうだな
MonoはJITコンパイルが禁止されているiOS向けには事前コンパイルするらしい
プロファイラで遅いところを見つけてそこだけC++で書くことも出来る
そうすれば速度が下がるデメリットより生産性が上がるメリットの方が上回ると思う
Android 5.0は中間コードから事前コンパイル出来るらしいが
インストールに時間取りそうだな
MonoはJITコンパイルが禁止されているiOS向けには事前コンパイルするらしい
392名前は開発中のものです。
2015/02/13(金) 17:30:13.12ID:s8SeVfmU393名前は開発中のものです。
2015/02/13(金) 17:40:26.14ID:7ayiwF3a ただでさえ動的な型付けやジェネリクス、クロージャなんかでスクリプトの最適化にかかるコストは高いし
かけられるコストに制限のかかるJITが静的なコンパイラ超えるのはまだまだ先の話だろうな
かけられるコストに制限のかかるJITが静的なコンパイラ超えるのはまだまだ先の話だろうな
394名前は開発中のものです。
2015/02/13(金) 17:49:39.74ID:3uAgugBd C++入門系の本だと「STLは難しいので分からなくてOKです^^;」とか書いてあるけど
Javaとかの入門書だとジェネリクスやリフレクションも簡単に分かって当たり前が前提
程度の低い人がC++入門書の内容も理解できずに「C++はすごいんだ」と威張っている
Javaとかの入門書だとジェネリクスやリフレクションも簡単に分かって当たり前が前提
程度の低い人がC++入門書の内容も理解できずに「C++はすごいんだ」と威張っている
395名前は開発中のものです。
2015/02/13(金) 17:53:19.30ID:s8SeVfmU >>394
何言ってるのか解らない
何言ってるのか解らない
396名前は開発中のものです。
2015/02/13(金) 17:57:54.44ID:9I9SRziA どこの入門書だよ…
STLのような便利ツールを分からなくてOKなんて書くような入門書はクソ本認定必至だぞ
Unityに絡まれたりC#やJavaに絡まれたり大変だな
一体何が始まるんです?
STLのような便利ツールを分からなくてOKなんて書くような入門書はクソ本認定必至だぞ
Unityに絡まれたりC#やJavaに絡まれたり大変だな
一体何が始まるんです?
397名前は開発中のものです。
2015/02/13(金) 18:00:31.37ID:3uAgugBd ここで何の言語が速いだのマルチスレッドだの騒いでる連中は怪しいってこと
398名前は開発中のものです。
2015/02/13(金) 18:05:07.34ID:s8SeVfmU >>394
> Javaとかの入門書だとジェネリクスやリフレクションも簡単に分かって当たり前が前提
何が言いたいのか解らないからここだけに反応するけど、AmazonでJava入門して人気度でソートして一番上に出てきた「スッキリわかるJava入門」って本の目次にはジェネリクスもリフレクションも無いぞ
> Javaとかの入門書だとジェネリクスやリフレクションも簡単に分かって当たり前が前提
何が言いたいのか解らないからここだけに反応するけど、AmazonでJava入門して人気度でソートして一番上に出てきた「スッキリわかるJava入門」って本の目次にはジェネリクスもリフレクションも無いぞ
399名前は開発中のものです。
2015/02/13(金) 18:19:41.22ID:ozS65/+Z 別にオートマ乗りたい人もマニュアル車乗りたい人も好きにすればいいよ
400名前は開発中のものです。
2015/02/13(金) 19:06:42.10ID:diYHW0ok ほんとに最初はSTLなしで勉強したらいいけど、
ある程度できるようになったらSTLを使わない手はない。
STLなしで大規模プログラミングするとか拷問。
ある程度できるようになったらSTLを使わない手はない。
STLなしで大規模プログラミングするとか拷問。
401名前は開発中のものです。
2015/02/13(金) 19:09:22.59ID:9I9SRziA そんなことより
Hoge() {}
と
Hoge() {
}
と
Hoge()
{
}
を使い分けるタイミングについて
Hoge() {}
と
Hoge() {
}
と
Hoge()
{
}
を使い分けるタイミングについて
402名前は開発中のものです。
2015/02/13(金) 19:20:16.61ID:ozS65/+Z403名前は開発中のものです。
2015/02/13(金) 19:23:44.45ID:9WE2qWDV バージョンによるかも知れないけどVSでインデント自動だと
Hoge() {}
じゃなくて
Hoge() { }
と中括弧の間に半角空白が入るのが気になる。
Hoge() {}
じゃなくて
Hoge() { }
と中括弧の間に半角空白が入るのが気になる。
404名前は開発中のものです。
2015/02/13(金) 19:27:56.48ID:ozS65/+Z 大抵のIDEにコーディングスタイル(ルール)の設定あるはず
405名前は開発中のものです。
2015/02/13(金) 19:31:59.81ID:ozS65/+Z >>389
pragmaでモジュール毎に最適化の指定って一部の処理系のみ?
pragmaでモジュール毎に最適化の指定って一部の処理系のみ?
406名前は開発中のものです。
2015/02/13(金) 19:46:05.27ID:s8SeVfmU >>405
pragma自体処理系依存
pragma自体処理系依存
407名前は開発中のものです。
2015/02/13(金) 21:20:17.39ID:ozS65/+Z まあ最適化の方針自体が処理系依存だしな
言語仕様で他言語と比較すること自体無意味かも
言語仕様で他言語と比較すること自体無意味かも
408名前は開発中のものです。
2015/02/13(金) 22:15:35.36ID:9+3djK7O409名前は開発中のものです。
2015/02/13(金) 23:08:30.20ID:E1xWFoJ9 ソース一枚で2000行ってのはもうちょっとバラせないのかなぁ?
相当大規模なプログラムなんだろうか
相当大規模なプログラムなんだろうか
410名前は開発中のものです。
2015/02/14(土) 00:36:28.82ID:+drYNYXs >>408-409
別の環境(インタプリタ)で作っているゲームがありまして、
一部の重い処理をc++を使ってDLL化し、(インタプリタの方でDLLを読み込んで)使っている状態です
ツール→オプションやプロジェクト→プロパティでいくつか操作した記憶があるのですが、
どれを操作したのかは思い出せなません……。 すみません
http://fast-uploader.com/file/6979396992867/
あまりC++に慣れてなく、アップロード時にどこまで載せるべきなのかが分からないのですが
とりあえずcppファイルとhファイル、defファイルだけ用意したものです
(個人用開発のスクリプトで、本来あまりやるべきではない処理も複数使っているためコード自体はかなり見づらいと思います)
これのdll1.cppの最初の位置の方でコードを書くと波線がすぐ表示され、
dll1.cppの最後の方でコードを書くと波線が表示されるまでに数十秒、#if 0-#endifでの半透明化に2分ほど掛かる状態です
別の環境(インタプリタ)で作っているゲームがありまして、
一部の重い処理をc++を使ってDLL化し、(インタプリタの方でDLLを読み込んで)使っている状態です
ツール→オプションやプロジェクト→プロパティでいくつか操作した記憶があるのですが、
どれを操作したのかは思い出せなません……。 すみません
http://fast-uploader.com/file/6979396992867/
あまりC++に慣れてなく、アップロード時にどこまで載せるべきなのかが分からないのですが
とりあえずcppファイルとhファイル、defファイルだけ用意したものです
(個人用開発のスクリプトで、本来あまりやるべきではない処理も複数使っているためコード自体はかなり見づらいと思います)
これのdll1.cppの最初の位置の方でコードを書くと波線がすぐ表示され、
dll1.cppの最後の方でコードを書くと波線が表示されるまでに数十秒、#if 0-#endifでの半透明化に2分ほど掛かる状態です
411名前は開発中のものです。
2015/02/14(土) 00:52:52.43ID:o7XnZ6lm かなりの素人っぽいコードになってるな。
これでプログラムは正常動作するんだったらいいけど。
これでプログラムは正常動作するんだったらいいけど。
412名前は開発中のものです。
2015/02/14(土) 16:14:47.43ID:i+Qy19Ot nullpo
413名前は開発中のものです。
2015/02/14(土) 21:45:25.56ID:8yKSZnHL nullptrだろ
414名前は開発中のものです。
2015/02/14(土) 22:15:17.68ID:dPtZMbpp 肝心なこと忘れてるぞ
>>412 ガッ
>>412 ガッ
415名前は開発中のものです。
2015/02/15(日) 00:52:20.75ID:cKjU4/tc416名前は開発中のものです。
2015/02/15(日) 14:24:16.38ID:HGj2LM7P ぬるぽはガッする これ鉄の掟ネ
417名前は開発中のものです。
2015/02/15(日) 17:08:32.51ID:lIyPTDYW OpenGLのライトの設定って8つまでしか設定出来ないの?
418名前は開発中のものです。
2015/02/15(日) 18:13:03.67ID:221Gw+Uq 一つのモデル書くのに8個も使うこと無いと思うけど
419名前は開発中のものです。
2015/02/15(日) 18:18:15.97ID:kJKCFPVs 使うか使わないかなんて誰も聞いてないのでは
420名前は開発中のものです。
2015/02/15(日) 18:27:22.52ID:QJPI0val 8つまでは保障されるって書かれてるね
それ以上はGPU次第?
それ以上はGPU次第?
421名前は開発中のものです。
2015/02/15(日) 18:30:35.01ID:pHH37jBe 普通にシェーダにuniformで渡せばいいんじゃなかろうか
422名前は開発中のものです。
2015/02/15(日) 20:13:36.87ID:221Gw+Uq 使わない機能について質問するのは普通なの?
ここってそういうスレッドだった?
ここってそういうスレッドだった?
423名前は開発中のものです。
2015/02/15(日) 20:15:43.39ID:BSm63ZvK 未だに固定機能パイプライン使ってるのかよ
ES2.0やCoreプロファイルでは削除されたと言うのに
ES2.0やCoreプロファイルでは削除されたと言うのに
424名前は開発中のものです。
2015/02/16(月) 10:55:53.67ID:GCnoGlJr このスレのみんなは何ゲーム作ってる?作ってた?俺は今は2DRPGを作ってる。
作り始めてもう2年は経つが、バイトしながら作っているのでなかなか先に進まない。
その前は剣で敵を殴り倒すサイドビュー2Dアクションとか作ってた。
公開してる作品はまだ無いけれど、今回作ってる作品はようやく公開できそうだ。
作り始めてもう2年は経つが、バイトしながら作っているのでなかなか先に進まない。
その前は剣で敵を殴り倒すサイドビュー2Dアクションとか作ってた。
公開してる作品はまだ無いけれど、今回作ってる作品はようやく公開できそうだ。
425名前は開発中のものです。
2015/02/16(月) 12:05:03.56ID:xAAEGNM/ いつゲームを思いついてもいいように自分用フレームワーク作ってる
今はポストエフェクトとかの高級機能の追加とパフォーマンスチューニングやってる・・・
今はポストエフェクトとかの高級機能の追加とパフォーマンスチューニングやってる・・・
426名前は開発中のものです。
2015/02/16(月) 14:01:53.12ID:zTNZgaYq 昔3Dのゲーム公開してグラボ必須と明記したのに
オンボードのグラフィックで動かないって言われるから萎えたw
オンボードのグラフィックで動かないって言われるから萎えたw
427名前は開発中のものです。
2015/02/16(月) 14:25:13.79ID:GCnoGlJr オンボードってグラボと違うんだ……知らんかった
428名前は開発中のものです。
2015/02/16(月) 15:11:57.10ID:YsWE65vY 体験版かベンチマークテスト付けるのが間違いない
429名前は開発中のものです。
2015/02/16(月) 15:20:33.89ID:SFvkE6bf 日本語が読めない日本人のコメ欄荒らしなんか今に始まった事じゃないし
ひどいと環境も書かずに動かないのでクソみたいなことを言ってくるぞ
その理由がインストール失敗だったりするし、あの人達は異常
>>425
何か作っちゃえよ…さもないと意味ないってそんな作業
ひどいと環境も書かずに動かないのでクソみたいなことを言ってくるぞ
その理由がインストール失敗だったりするし、あの人達は異常
>>425
何か作っちゃえよ…さもないと意味ないってそんな作業
430名前は開発中のものです。
2015/02/16(月) 15:35:35.16ID:ilnxTAbg 起動時に「こんな貧相な環境では起動できません」とメッセージだすとか
431名前は開発中のものです。
2015/02/16(月) 15:44:19.94ID:DJ/HQJjd 譏斐?ョ繧ェ繝ウ繝懊?シ繝峨げ繝ゥ繝輔ぅ繝?繧ッ繧ケ縺ッ譛ャ蠖薙↓雋ァ蠑ア縺縺」縺溘°繧峨↑窶ヲ
繧ヲ繧」繝ウ繝峨え繧ФI縺ョ謠冗判繧竪PU縺ァ繧?繧雁?コ縺励◆譛霑代?ッ縺九↑繧翫?槭す縺ォ縺ェ縺」縺溘s縺倥c縺ェ縺?縺繧阪≧縺?
繧ヲ繧」繝ウ繝峨え繧ФI縺ョ謠冗判繧竪PU縺ァ繧?繧雁?コ縺励◆譛霑代?ッ縺九↑繧翫?槭す縺ォ縺ェ縺」縺溘s縺倥c縺ェ縺?縺繧阪≧縺?
432431
2015/02/16(月) 15:52:15.48ID:DJ/HQJjd ごめんなんかすごい文字化けした、なんだこれ
最近になって普通のGUIをGPUで描画するようになって
ようやくオンボードグラフィックの性能も上がってきたよね
的なことを書きたかった・・・
最近になって普通のGUIをGPUで描画するようになって
ようやくオンボードグラフィックの性能も上がってきたよね
的なことを書きたかった・・・
433名前は開発中のものです。
2015/02/16(月) 20:48:43.56ID:SFvkE6bf434名前は開発中のものです。
2015/02/16(月) 22:42:53.99ID:vhmKDLh4 起動時にデバイスの判別とかする?
D3Dの初期化出来るかくらいしか見てないすわ
ていうかデバイスの判別なんて出来るもんなの?
D3Dの初期化出来るかくらいしか見てないすわ
ていうかデバイスの判別なんて出来るもんなの?
435名前は開発中のものです。
2015/02/16(月) 23:54:49.98ID:7aPTvn5L GPUのデバイス名を見てショボそうだったらエフェクトを減らしたりして品質を下げるのは良くある
436名前は開発中のものです。
2015/02/16(月) 23:58:04.64ID:+QAYKcbY やるとしても初期化できるかできなかったらでいいと思う
できなかったらエラーはいてもいいけど,情報をログに出しておくとのちのち面倒になりにくい
できなかったらエラーはいてもいいけど,情報をログに出しておくとのちのち面倒になりにくい
437名前は開発中のものです。
2015/02/16(月) 23:58:32.44ID:+QAYKcbY 訂)初期化できなかったら
438名前は開発中のものです。
2015/02/17(火) 01:00:22.99ID:8xjE9Voj メーカーや型番を調べるってこと? CAPSじゃなくて。
439名前は開発中のものです。
2015/02/17(火) 04:37:03.07ID:rbxqwbjb >>424
いま初めてまともな2Dアクション作ってるんだけども、
当たり判定(四分木・モートン)なんかの実装とか処理の順番で発生する矛盾とか解決するのがしんどい(´・ω・`)
一度作ってしまえば使い回し効くんだろうけれどそれでもunuty辺りに逃げたくなる誘惑ががが
いま初めてまともな2Dアクション作ってるんだけども、
当たり判定(四分木・モートン)なんかの実装とか処理の順番で発生する矛盾とか解決するのがしんどい(´・ω・`)
一度作ってしまえば使い回し効くんだろうけれどそれでもunuty辺りに逃げたくなる誘惑ががが
440名前は開発中のものです。
2015/02/17(火) 10:09:59.94ID:rM4wsrPX box2dでも使ってみれば?
自分で作るよりいろんな意味ではやいと思う
自分で作るよりいろんな意味ではやいと思う
441名前は開発中のものです。
2015/02/17(火) 11:20:06.28ID:R+csvIHk >>426
初期のIntel GMA(のドライバ)はD3Dのデバイス機能あると返答する癖に実は使えん
とか、ファンキーな挙動をするゴミカス同然の問題児だなという印象があったが
五年前辺りの製品になるとだいぶマシだたよ
当時、即売会で同人ゲをバラ撒くために貧困糞スペ層対策にPentiumG6950と
i3 540のPC組んでテストしたけど、GF8400GSとRADEON4350載せた時と
速度的にほぼ互角で、プログラム側から見た時のD3DデバイスとしてのIntel IGP
特有のお粗末さに呆れる事も無く、特段配慮せずに適当に組んでも動いたので
感激した憶えアリ
もう五年前の製品なので、今の若い子はこれより新しい世代のハード使ってると
思う。これ以前のGMAの名を持つIntel IGPについては俺はもう完全に無視してる
初期のIntel GMA(のドライバ)はD3Dのデバイス機能あると返答する癖に実は使えん
とか、ファンキーな挙動をするゴミカス同然の問題児だなという印象があったが
五年前辺りの製品になるとだいぶマシだたよ
当時、即売会で同人ゲをバラ撒くために貧困糞スペ層対策にPentiumG6950と
i3 540のPC組んでテストしたけど、GF8400GSとRADEON4350載せた時と
速度的にほぼ互角で、プログラム側から見た時のD3DデバイスとしてのIntel IGP
特有のお粗末さに呆れる事も無く、特段配慮せずに適当に組んでも動いたので
感激した憶えアリ
もう五年前の製品なので、今の若い子はこれより新しい世代のハード使ってると
思う。これ以前のGMAの名を持つIntel IGPについては俺はもう完全に無視してる
442名前は開発中のものです。
2015/02/17(火) 11:29:55.71ID:SVmL1BJ3 SM2.0〜3.0ぐらいの世代の古いGPUだとD3D11自体は使えてもジオメトリシェーダー等は使えない
https://msdn.microsoft.com/en-us/library/windows/desktop/ff476876%28v=vs.85%29.aspx
D3D11ではFeature Levelsというのを調べればデバイスの対応度が分かる
https://msdn.microsoft.com/en-us/library/windows/desktop/ff476876%28v=vs.85%29.aspx
D3D11ではFeature Levelsというのを調べればデバイスの対応度が分かる
443名前は開発中のものです。
2015/02/17(火) 11:38:29.47ID:SVmL1BJ3 GPUの種類を検出してドライバの問題に対応するのはChromeがやっている
NVIDIA Optimusを使っていると、今アプリケーションが使っているのが内蔵GPUか外部GPUかは検出できないらしいが
検出する方法はないわけでも無さそう
https://code.google.com/p/chromium/issues/detail?id=418418
NVIDIA Optimusを使っていると、今アプリケーションが使っているのが内蔵GPUか外部GPUかは検出できないらしいが
検出する方法はないわけでも無さそう
https://code.google.com/p/chromium/issues/detail?id=418418
444名前は開発中のものです。
2015/02/17(火) 15:22:32.89ID:R+csvIHk optimusか…。ウチの場合はIGPでも軽快に動くものを頒布してたから
その辺の不具合報告はたまたま来なかったな。来ても「それドライバ
の設定のせいだろ何とか自力で頑張れ」とか返事しちゃいそうだけど。
対応するとしたらこの辺の情報も使えそうかしら
http://www.garagegames.com/community/forums/viewthread/136127
その辺の不具合報告はたまたま来なかったな。来ても「それドライバ
の設定のせいだろ何とか自力で頑張れ」とか返事しちゃいそうだけど。
対応するとしたらこの辺の情報も使えそうかしら
http://www.garagegames.com/community/forums/viewthread/136127
445名前は開発中のものです。
2015/02/17(火) 15:26:27.22ID:R+csvIHk >>444訂正
IGP → Intel IGP
IGP → Intel IGP
446名前は開発中のものです。
2015/02/17(火) 17:34:23.35ID:kQ4D9OfR Optimusは拡大鏡のようなMagnification APIが使えないので
背景を透過させるような処理が使えなかった
GDI通すと負荷が半端無いうえに自ウィンドウの裏が不完全
背景を透過させるような処理が使えなかった
GDI通すと負荷が半端無いうえに自ウィンドウの裏が不完全
447名前は開発中のものです。
2015/02/17(火) 17:38:33.49ID:c37KzA7E 商業ならやって当然だけど、サークルや個人製作でD3X10以上の機能が必須の
3Dゲーム作るって凄いと思うわ。
自分は一応プログラマブルシェーダは実装できたけどD3X9が限界だし、
ファーやブラーなどジオメトリシェーダ必須の特殊効果やテセレータによる分割って
「それがないと、どうしても実装できないゲームシステムがある」わけではないから…。
3Dゲーム作るって凄いと思うわ。
自分は一応プログラマブルシェーダは実装できたけどD3X9が限界だし、
ファーやブラーなどジオメトリシェーダ必須の特殊効果やテセレータによる分割って
「それがないと、どうしても実装できないゲームシステムがある」わけではないから…。
448名前は開発中のものです。
2015/02/17(火) 17:39:35.00ID:c37KzA7E D3X→DX3D
449名前は開発中のものです。
2015/02/17(火) 17:49:14.01ID:QlaPcbbK 自分の場合は、俺がやりたいことをもっとも簡単に実現する方法が
ジオメトリシェーダで動的生成することだったから、DirectX10/11使ってる
たぶんメッシュを工夫するとかすればDirectX9の範囲でもできたことなんだろうけど
個人的にDirectX9の「お作法」に嫌気がさしてたってのもあったから移行に未練は無かった
ジオメトリシェーダで動的生成することだったから、DirectX10/11使ってる
たぶんメッシュを工夫するとかすればDirectX9の範囲でもできたことなんだろうけど
個人的にDirectX9の「お作法」に嫌気がさしてたってのもあったから移行に未練は無かった
450名前は開発中のものです。
2015/02/17(火) 19:38:23.87ID:GIdVBJpd 質問なんだけど、位置情報ってどうやって保存してる?
1、Matrix4
2、Vector3、クォータニオン
3、Vector3、角度(float)
1、Matrix4
2、Vector3、クォータニオン
3、Vector3、角度(float)
451名前は開発中のものです。
2015/02/17(火) 19:50:16.17ID:R+csvIHk >>447
俺は前回は時期的な都合でD3D9で組んでばら撒いたけど、次は
「楽をするために」D3D9切り捨てでばら撒くことにしてるよ
なお「新APIの新機能使わなくちゃ(使命感)」というのは皆無。
D3D10すっ飛ばしてD3D11のお勉強した感想は、あぁ^〜極楽なn
俺は前回は時期的な都合でD3D9で組んでばら撒いたけど、次は
「楽をするために」D3D9切り捨てでばら撒くことにしてるよ
なお「新APIの新機能使わなくちゃ(使命感)」というのは皆無。
D3D10すっ飛ばしてD3D11のお勉強した感想は、あぁ^〜極楽なn
452名前は開発中のものです。
2015/02/17(火) 19:57:47.59ID:2VajbZX5 今って、2DでDirextX9からバージョン上げる必要って何かある?
昔はアルファーブレンド使いたかったらDirextX必須だったけど
昔はアルファーブレンド使いたかったらDirextX必須だったけど
453名前は開発中のものです。
2015/02/17(火) 20:14:51.86ID:QlaPcbbK ベクタグラフィックスを楽に使いたいとか
GDI/GDI+との相互運用がしたいとかなら
Direct2Dと連携できるDirectX10.1以降がいいかもしれない
あと、Direct2Dに関連して、DirectWriteを使うと
文字を出すのが超楽になるかもしれない
GDI/GDI+との相互運用がしたいとかなら
Direct2Dと連携できるDirectX10.1以降がいいかもしれない
あと、Direct2Dに関連して、DirectWriteを使うと
文字を出すのが超楽になるかもしれない
454名前は開発中のものです。
2015/02/17(火) 20:15:09.37ID:R+csvIHk >>450
その情報が関与する数値積分の計算式の都合で使い分け
俺はオッサンだから流行りのやり方は知らんけど、アニメーションの補間
アルゴリズムの都合が絡む所は四元数で回転情報持ってるけど、それ以外
では使ってないよ
例えばシミュレーション部の数値計算は行列で計算してるからわざわざ
四元数に変換して保存する意味ないんじゃね、というような判断で
その情報が関与する数値積分の計算式の都合で使い分け
俺はオッサンだから流行りのやり方は知らんけど、アニメーションの補間
アルゴリズムの都合が絡む所は四元数で回転情報持ってるけど、それ以外
では使ってないよ
例えばシミュレーション部の数値計算は行列で計算してるからわざわざ
四元数に変換して保存する意味ないんじゃね、というような判断で
455名前は開発中のものです。
2015/02/17(火) 20:16:00.13ID:R+csvIHk >>454訂正
数値積分→数値計算
数値積分→数値計算
456名前は開発中のものです。
2015/02/17(火) 20:18:17.09ID:QlaPcbbK あと
「移行しない理由」が欲しいなら無理に移行しなくていいのでは、とも思う
「移行しない理由」が欲しいなら無理に移行しなくていいのでは、とも思う
457名前は開発中のものです。
2015/02/17(火) 20:18:25.23ID:R+csvIHk458名前は開発中のものです。
2015/02/17(火) 21:41:07.26ID:2VajbZX5 今の自分にはあまりバージョンアップする必要は無さそうですね
このままでいきます
このままでいきます
459名前は開発中のものです。
2015/02/17(火) 22:01:14.76ID:jnPWiKnI だからどうあってもしなきゃいけないんでもない限り別に必要ないって
ウイルス定義やOSのアップデートじゃあるまいに
デバイスロストが怖い
ただそれだけで十分だったりするのは秘密
ウイルス定義やOSのアップデートじゃあるまいに
デバイスロストが怖い
ただそれだけで十分だったりするのは秘密
460名前は開発中のものです。
2015/02/17(火) 22:18:09.36ID:8JUkAmcn とりあえず動けばいいじゃん?
461名前は開発中のものです。
2015/02/17(火) 22:41:07.94ID:ePkhNQGN dxlibでblenderで作った3Dモデリングを表示させたいんだけど
テクスチャのUV座標とかは一個一個代入しないとダメってことはないよね?
ポリゴン数多いと骨が折れるんだけど・・・
テクスチャのUV座標とかは一個一個代入しないとダメってことはないよね?
ポリゴン数多いと骨が折れるんだけど・・・
462名前は開発中のものです。
2015/02/17(火) 22:48:43.96ID:91SkRfsF デバイスロストは再取得する処理をいくつか書けばいいじゃんいいじゃん
463名前は開発中のものです。
2015/02/17(火) 23:11:26.72ID:WkWjQbqK464名前は開発中のものです。
2015/02/18(水) 00:07:10.98ID:G38OtsQE >>463
太さのあるモデルの稜線や輪郭線を楽して描画したかっただけだよ
最初からモデルにつけとけば出来なくはなかったんだろうけど
ゲームのルールに直結なんかしないよ
俺がそういう画面表現したかっただけ
ルールがどうのって話出てたっけ?
太さのあるモデルの稜線や輪郭線を楽して描画したかっただけだよ
最初からモデルにつけとけば出来なくはなかったんだろうけど
ゲームのルールに直結なんかしないよ
俺がそういう画面表現したかっただけ
ルールがどうのって話出てたっけ?
465名前は開発中のものです。
2015/02/18(水) 00:22:40.86ID:G38OtsQE466名前は開発中のものです。
2015/02/18(水) 15:04:19.81ID:f28x4TyT ジオメトリシェーダって技術的には興味あるんだけど、ゲーム用途だとオーパースペックな感が。
絵のセンスを求めてる人はいても、絵のリアリティを求めてるゲーマーって少ないし。
同じ「プログラム技術」でも、経路探索とか衝突判定の方がゲーム内容に直結してる気がするんよ。
絵のセンスを求めてる人はいても、絵のリアリティを求めてるゲーマーって少ないし。
同じ「プログラム技術」でも、経路探索とか衝突判定の方がゲーム内容に直結してる気がするんよ。
467名前は開発中のものです。
2015/02/18(水) 15:21:22.07ID:QeK+UKTO 2Dのゲームだと未だに画像貼り付けで十分だったりするからなぁ
3Dになると途端に描画系に求められるものが跳ね上がる……というか、中途半端だとショボく見えやすい
3Dになると途端に描画系に求められるものが跳ね上がる……というか、中途半端だとショボく見えやすい
468名前は開発中のものです。
2015/02/18(水) 15:42:52.18ID:De5fOi6p そういや昔、DX9やだやだDX7でいい、と駄々捏ねてた連中がいたっけ
469名前は開発中のものです。
2015/02/18(水) 16:16:04.18ID:FM6JykcW 2Dでも、画面解像度と色が多くなると、DirctX 3D処理で2Dを書いたのが速くなる。
470名前は開発中のものです。
2015/02/18(水) 16:53:19.00ID:6OJTipUu blenderでエクスポートした拡張子.xの3Dモデルを
下のアドレスのサンプルコードで表示させようとおもったんだけど
ttp://homepage2.nifty.com/natupaji/DxLib/function/dxfunc_3d.html#R1N1
真っ暗で何も表示されない
拡張子.mqoでエクスポートしたやつなら真っ白な3Dモデルがクライアント領域に表示されるんだけど
.xで表示されないのは何が原因なんだろう
下のアドレスのサンプルコードで表示させようとおもったんだけど
ttp://homepage2.nifty.com/natupaji/DxLib/function/dxfunc_3d.html#R1N1
真っ暗で何も表示されない
拡張子.mqoでエクスポートしたやつなら真っ白な3Dモデルがクライアント領域に表示されるんだけど
.xで表示されないのは何が原因なんだろう
471名前は開発中のものです。
2015/02/18(水) 17:25:58.03ID:JA2VpMMo472名前は開発中のものです。
2015/02/18(水) 17:37:25.56ID:6OJTipUu >>471
返答ありがとう
「blender directx エクスポート」あたりは既に昨日から何度もググってるんだが一向に分からないんだ
だけどさっき画面を良く見ると下のほうにすごく小さい点があって
dxlibに付属されてるDxLibModelViewerで例のモデルを見てみたら最大頂点座標と最小頂点座標が約-1〜約1しかなくて
エクスポート時になぜかものすごく小さくされてることが分かったんだ
だからこれはblenderの問題っぽいのでここで失礼する事にする
でももし対処方法を知ってる方がいたら教えてくれるとありがたいです
返答ありがとう
「blender directx エクスポート」あたりは既に昨日から何度もググってるんだが一向に分からないんだ
だけどさっき画面を良く見ると下のほうにすごく小さい点があって
dxlibに付属されてるDxLibModelViewerで例のモデルを見てみたら最大頂点座標と最小頂点座標が約-1〜約1しかなくて
エクスポート時になぜかものすごく小さくされてることが分かったんだ
だからこれはblenderの問題っぽいのでここで失礼する事にする
でももし対処方法を知ってる方がいたら教えてくれるとありがたいです
473名前は開発中のものです。
2015/02/18(水) 22:47:25.03ID:ILsqNe3P ファイルにマテリアルの情報ついてないんじゃね
474473
2015/02/18(水) 23:21:37.40ID:jPrz+6+J あ、解決してたのか
よく読んでなかった
よく読んでなかった
475名前は開発中のものです。
2015/02/19(木) 19:55:57.68ID:D6yNUzB8 DirectXは旧バージョンとの互換性をガンガン切り捨てるけど、
古いバージョンをラップするのってやっぱり技術的には難しいのだろうか
まあ、根本的な仕様変更の問題もあるんだろうけど
古いバージョンをラップするのってやっぱり技術的には難しいのだろうか
まあ、根本的な仕様変更の問題もあるんだろうけど
476名前は開発中のものです。
2015/02/19(木) 20:09:04.59ID:BvTV0nsZ 前のバージョンも丸ごと使えるようにしてるじゃん
477名前は開発中のものです。
2015/02/19(木) 20:34:31.82ID:NvdslICU 旧バージョンのインタフェースをくれといえば、ちゃんと使えるだろう?
ある世代内では、互換性は維持されるし、仕様変更も無いはずだぞ。
新バージョンのAPI体系がガラッと変わるのは、時代のニーズなので仕方ない。
ただ、よほどのこだわりが無ければ、今後は、ゲームエンジンを使うか、
WebGL の関係で GL 系を覚えたほうが役に立つとは思う。
ある世代内では、互換性は維持されるし、仕様変更も無いはずだぞ。
新バージョンのAPI体系がガラッと変わるのは、時代のニーズなので仕方ない。
ただ、よほどのこだわりが無ければ、今後は、ゲームエンジンを使うか、
WebGL の関係で GL 系を覚えたほうが役に立つとは思う。
478名前は開発中のものです。
2015/02/19(木) 20:45:49.81ID:oNkiA836 DirectInput8でジョイスティック設定するようにしてたら9で切り捨てられた。
仕方ないので9でオブジェクトの名称と機能を対応させてたら、ある日名称が変更された。
ガン切捨てくらいはされてるよw
仕方ないので9でオブジェクトの名称と機能を対応させてたら、ある日名称が変更された。
ガン切捨てくらいはされてるよw
479名前は開発中のものです。
2015/02/19(木) 21:40:39.58ID:Q5dde7tF APIに依存するようなところは自分でラップしといてバージョン変わったら書き換えるくらいしかないんじゃないかな
インターフェイス変えないと立ち行かなくなって結局大改修になる可能性はあるけど
インターフェイス変えないと立ち行かなくなって結局大改修になる可能性はあるけど
480名前は開発中のものです。
2015/02/19(木) 21:54:49.08ID:BvTV0nsZ 古いバージョンそのまま使えばええやん。
何か不都合あんの?
何か不都合あんの?
481名前は開発中のものです。
2015/02/19(木) 22:04:43.69ID:srcYRBk+ >>480
新しい機能が使えない
新しい機能が使えない
482名前は開発中のものです。
2015/02/19(木) 22:42:13.32ID:BvTV0nsZ 無くなったものはその新機能にそぐわないからなくなってんだよ
それぐらい解るだろ
それぐらい解るだろ
483名前は開発中のものです。
2015/02/19(木) 22:58:15.14ID:56/Nxvf8 どんな理由だろうが無くなれば困る奴はいるんだよ
それぐらい解るだろ
それぐらい解るだろ
484名前は開発中のものです。
2015/02/19(木) 23:01:29.94ID:z/wN7MYn 少数の無くなって困る奴を気にしすぎると新バージョンの開発が難しくなるんだよ
それくらい解るだろ
それくらい解るだろ
485名前は開発中のものです。
2015/02/19(木) 23:26:36.09ID:yx5mPigo そもそもDirectInputって切り捨てられたことあったっけ?
Windows SDKに統合された今でもヘッダとライブラリ残ってるし開発できるでしょ
Windows SDKに統合された今でもヘッダとライブラリ残ってるし開発できるでしょ
486名前は開発中のものです。
2015/02/20(金) 04:15:28.38ID:0Lt4GRA5 >>951
出ました! さり気ないウニステマ。
出ました! さり気ないウニステマ。
487名前は開発中のものです。
2015/02/20(金) 04:40:02.95ID:Yq9E+HAh 新しいバージョンで無くなって困るって言ってる奴はその新しいバージョンの設計思想を読み取れないアホなんだから、移行せずに古いほう大人しく使っとけ
488名前は開発中のものです。
2015/02/20(金) 10:47:36.85ID:LvDa2DK4 3D箱庭ゲーみたいな面の各頂点がバラバラのマップデータの処理ってどうやってるんだろう
正方形の地形が並んだxyデータだったら
指定した座標から地形を読み込んで処理すればいいのは知ってるけど
正方形の地形が並んだxyデータだったら
指定した座標から地形を読み込んで処理すればいいのは知ってるけど
489名前は開発中のものです。
2015/02/20(金) 10:55:37.99ID:1wvp+sDY クオータービューも座標変換する前は普通に二次元のマップだと思うけど
490名前は開発中のものです。
2015/02/20(金) 11:35:44.82ID:LvDa2DK4 >>489
クォータービューは3次元なはずだよ(2次元ももちろんあるけど)
xyだけじゃなくてz座標もないと奥行きと上下左右の同時表現が成り立たないし
あとあれも大体は一定の大きさの立方体の集まりだから
指定したxyz座標と立方体の大きさ(16だったら座標/16)で計算すれば読み込むべき地形を特定して処理できる
俺が知りたいのはその立方体の大きさや頂点の位置がばらばらだった場合の処理なんだよね・・・
クォータービューは3次元なはずだよ(2次元ももちろんあるけど)
xyだけじゃなくてz座標もないと奥行きと上下左右の同時表現が成り立たないし
あとあれも大体は一定の大きさの立方体の集まりだから
指定したxyz座標と立方体の大きさ(16だったら座標/16)で計算すれば読み込むべき地形を特定して処理できる
俺が知りたいのはその立方体の大きさや頂点の位置がばらばらだった場合の処理なんだよね・・・
491名前は開発中のものです。
2015/02/20(金) 11:39:19.38ID:wXZtF1jQ クォータービューがFFTみたいなの想定してるなら、z座標はセルごとに値で持っとけばいい
3Dの地形だって立体交差とかしない限りは同じでいい
3Dの地形だって立体交差とかしない限りは同じでいい
492名前は開発中のものです。
2015/02/20(金) 12:13:53.08ID:LvDa2DK4493名前は開発中のものです。
2015/02/20(金) 12:42:42.94ID:LvDa2DK4 ごめんもっと簡単に言うと
大量のポリゴンがある空間の中で座標を指定した時
どうやって適用されるポリゴンを選ぶことが出来るかれるかが分からないんです
大量のポリゴンがある空間の中で座標を指定した時
どうやって適用されるポリゴンを選ぶことが出来るかれるかが分からないんです
494名前は開発中のものです。
2015/02/20(金) 12:43:09.25ID:mEXo8/Tf 地形で簡単なのが、”高さマップ” 碁盤の目の座標に高さデータを加えるだけ。
自由度が高いのが、Xファイルで作る方法。モデリングソフトで作ればよい。
ポリゴン数を少なくするように工夫がひつよう。
非力なパソコン用に使われた方法では、”BSPマップ”がある、
マップを細分化して分割する、その中から必要な部分だけを表示する手法。
自由度が高いのが、Xファイルで作る方法。モデリングソフトで作ればよい。
ポリゴン数を少なくするように工夫がひつよう。
非力なパソコン用に使われた方法では、”BSPマップ”がある、
マップを細分化して分割する、その中から必要な部分だけを表示する手法。
495名前は開発中のものです。
2015/02/20(金) 12:52:21.59ID:81/jlh7Y 今時xファイル勧めるとか無いわ
496名前は開発中のものです。
2015/02/20(金) 12:53:11.59ID:7oZJAYkq もしポリゴンで判定したいなら、基本的には点と三角形の当たり判定になる。
重力判定であれば、その方向の直線がぶつかるポリゴンを見つけるのは難しくは無いだろう。
軽量化のために、メッシュ空間を予め分割しておくこともある。
描画用の細かいメッシュのほかに、当たり判定や移動判定用の荒いメッシュを持つ場合もある。
壁へのめりこみ判定も似たようなものだが、市販のゲームでも「壁抜け」系の
バグがよくあるように、完璧なものはけっこう難しい。
重力判定であれば、その方向の直線がぶつかるポリゴンを見つけるのは難しくは無いだろう。
軽量化のために、メッシュ空間を予め分割しておくこともある。
描画用の細かいメッシュのほかに、当たり判定や移動判定用の荒いメッシュを持つ場合もある。
壁へのめりこみ判定も似たようなものだが、市販のゲームでも「壁抜け」系の
バグがよくあるように、完璧なものはけっこう難しい。
497名前は開発中のものです。
2015/02/20(金) 12:54:54.49ID:81/jlh7Y499名前は開発中のものです。
2015/02/20(金) 13:12:46.23ID:LvDa2DK4500名前は開発中のものです。
2015/02/20(金) 14:14:35.39ID:V4z76ahC モートン序列というので大量の判定を軽量化出来るってどっかのサイトにあったが
地面との着地判定にはどう使うんだろうか
オープンワールドの地形よろしく分割されてれば出来そうだが、マップ読み込んだ時に自動的に分割されればデザイナーにも優しいかも
地面との着地判定にはどう使うんだろうか
オープンワールドの地形よろしく分割されてれば出来そうだが、マップ読み込んだ時に自動的に分割されればデザイナーにも優しいかも
501名前は開発中のものです。
2015/02/20(金) 14:17:28.45ID:LvDa2DK4 あれ、今言われたことを踏まえて改めて調べたんだけど
もしかして重力判定で通過したかどうかは一定の範囲のポリゴン全部チェックする必要があるんだ?
二次元データみたいに指定したxy座標にブロックの有無と種類を判別して処理ってことに近い事はポリゴンでは出来ないって事だよね?
これ重くならないか不安だったんだがこういう認識でOKだよね?
本当頭悪くてすまん
もしかして重力判定で通過したかどうかは一定の範囲のポリゴン全部チェックする必要があるんだ?
二次元データみたいに指定したxy座標にブロックの有無と種類を判別して処理ってことに近い事はポリゴンでは出来ないって事だよね?
これ重くならないか不安だったんだがこういう認識でOKだよね?
本当頭悪くてすまん
502名前は開発中のものです。
2015/02/20(金) 15:28:45.62ID:f/qfY/pq >>500
キャラクターだろうが地面だろうがひとつのオブジェクトとして扱うのが一番簡単なんじゃね
今モートン序列当たり判定自作してて各ブロックにオブジェクトを挿入するところまで出来たけれど、
肝心の探索でバグってて総当たりよりも遅くなっててわろえない
キャラクターだろうが地面だろうがひとつのオブジェクトとして扱うのが一番簡単なんじゃね
今モートン序列当たり判定自作してて各ブロックにオブジェクトを挿入するところまで出来たけれど、
肝心の探索でバグってて総当たりよりも遅くなっててわろえない
503名前は開発中のものです。
2015/02/20(金) 16:33:09.05ID:V4z76ahC 同じブロックに入ってても通常より処理が増えるだけだからな
スカイリムみたいなオープンワールドで始めて効果を発揮するんじゃないか?
まぁスカイリムでもマップの反対側で当たり判定動かしてるのかわからないが
スカイリムみたいなオープンワールドで始めて効果を発揮するんじゃないか?
まぁスカイリムでもマップの反対側で当たり判定動かしてるのかわからないが
504名前は開発中のものです。
2015/02/20(金) 16:50:19.91ID:kfuov5G/505名前は開発中のものです。
2015/02/20(金) 17:03:56.05ID:LvDa2DK4506名前は開発中のものです。
2015/02/20(金) 18:58:58.25ID:QKhWkDln DirectInput8のためだけにDirect8で止めておく選択肢はあったかもなw
名称が変るのは回避できない可能性があるが。
名称が変るのは回避できない可能性があるが。
507名前は開発中のものです。
2015/02/20(金) 19:33:43.50ID:81/jlh7Y ポリゴンのあたり判定もそれをやる前にオブジェクト毎にAABB(aligned axis bounding box)を持っといてそれで大まかな判定したあとポリゴンであたり判定するとかね
AABBは描画するときにもつかえる
AABBは描画するときにもつかえる
508名前は開発中のものです。
2015/02/20(金) 19:56:18.41ID:V4z76ahC オクルージョンカリングってどうやるの?
509名前は開発中のものです。
2015/02/20(金) 21:38:48.57ID:81/jlh7Y 出来るだけ少ないポリゴン数で遮蔽ポリゴンを作っておく(実際のポリゴンをはみ出ないように)
1.遮蔽ポリゴンだけを使ってデプスのみ描画
2.描画判定するオブジェクトのAABBをそのデプスを使って描画されるか判定(デプステストをパスするピクセル数を返すだけのAPIがある)
3. 2で描画されるピクセルがあると判定されたものだけ実際に描画する
いくつか方法あるけどスタンダードなのはこんな感じ
1.遮蔽ポリゴンだけを使ってデプスのみ描画
2.描画判定するオブジェクトのAABBをそのデプスを使って描画されるか判定(デプステストをパスするピクセル数を返すだけのAPIがある)
3. 2で描画されるピクセルがあると判定されたものだけ実際に描画する
いくつか方法あるけどスタンダードなのはこんな感じ
510名前は開発中のものです。
2015/02/20(金) 21:43:31.32ID:mEXo8/Tf Clipping
Culling
Occlusion
でしょ
Culling
Occlusion
でしょ
511名前は開発中のものです。
2015/02/24(火) 21:32:41.15ID:vaS9aulZ C++/SFMLライブラリを使った2Dベースのゲームを作っているのですが、
自分で調べた感じですとSFML自体ではz-orderingの機能は持ち合わせていないようです。
こうなるとやはりvectorなどを用いてマニュアルで描画順をうまくやりくりするしかないのでしょうか?
自分で調べた感じですとSFML自体ではz-orderingの機能は持ち合わせていないようです。
こうなるとやはりvectorなどを用いてマニュアルで描画順をうまくやりくりするしかないのでしょうか?
512名前は開発中のものです。
2015/02/24(火) 22:29:05.30ID:xhUImxJo >>511
http://en.sfml-dev.org/forums/index.php?topic=7535.0
ちょっと古いやり取りだが、z-orderの機能はないし、リクエストも却下されたらしいぞ。
自前で管理するしかないんじゃないか?
http://en.sfml-dev.org/forums/index.php?topic=7535.0
ちょっと古いやり取りだが、z-orderの機能はないし、リクエストも却下されたらしいぞ。
自前で管理するしかないんじゃないか?
513名前は開発中のものです。
2015/02/24(火) 23:50:55.98ID:vaS9aulZ >>512
早速の返答ありがとうございます。
dxlib関連の記事のようですが下記のようなサイトを見つけました。
こんなかんじで描画順を管理できるように試してみようと思います!
ありがとうございました。
ttp://ktkrmjskmjds.blog119.fc2.com/blog-entry-4.html
早速の返答ありがとうございます。
dxlib関連の記事のようですが下記のようなサイトを見つけました。
こんなかんじで描画順を管理できるように試してみようと思います!
ありがとうございました。
ttp://ktkrmjskmjds.blog119.fc2.com/blog-entry-4.html
514名前は開発中のものです。
2015/02/25(水) 07:37:32.67ID:nWK6BI/o BtconというWiiリモンコンをPCで使えるようにするツールを作っているのですが、
これはwiiyourself!ベースでwiiリモコンを制御しています。
しかしwiiリモコンプラスと元祖wiiリモコンで違いがあり、wiiリモコンプラスにwiiyourselfが対応していません。
wiiyourselfのほうがwiiリモコンプラス発売より前に作られたもので、開発が止まっているためです。
自分で調べて動いたという情報を元に改造してみたりしているのですが、動かなくて困っています。
詳しい方がおられましたらヒントをいただければ助かります。
http://xbmc.inpane.com/main/rc/wiiremote.php#mc
これはwiiyourself!ベースでwiiリモコンを制御しています。
しかしwiiリモコンプラスと元祖wiiリモコンで違いがあり、wiiリモコンプラスにwiiyourselfが対応していません。
wiiyourselfのほうがwiiリモコンプラス発売より前に作られたもので、開発が止まっているためです。
自分で調べて動いたという情報を元に改造してみたりしているのですが、動かなくて困っています。
詳しい方がおられましたらヒントをいただければ助かります。
http://xbmc.inpane.com/main/rc/wiiremote.php#mc
515名前は開発中のものです。
2015/02/25(水) 09:06:11.55ID:zNwgz5b4 wiiリモコンプラスはMSスタックは繋がらないようで、東芝のスタックであれば繋がりました。
516名前は開発中のものです。
2015/02/27(金) 09:04:14.57ID:l7kW3nDz DirectX9でミップマップって勝手にテクスチャ入れ替えてくれる?
517名前は開発中のものです。
2015/02/27(金) 14:15:25.84ID:KjiqxG1B518名前は開発中のものです。
2015/02/27(金) 21:19:14.81ID:Pdgs5cQ7 シェーダ側では、ミップレベルを指定したい時はわざわざtex2Dlod()を呼び出すくらいだから
一般のtex2D()は自動でミップマップされてると考えていい。
ただもちろん、ハード対応してればだし(今動いてるPCはまずしてるだろうけど)、
「ミップレベルを入れ替える」のではなく「周辺の2つのミップレベルを補間する」実装のはず。
一般のtex2D()は自動でミップマップされてると考えていい。
ただもちろん、ハード対応してればだし(今動いてるPCはまずしてるだろうけど)、
「ミップレベルを入れ替える」のではなく「周辺の2つのミップレベルを補間する」実装のはず。
519名前は開発中のものです。
2015/02/27(金) 21:26:33.67ID:Pdgs5cQ7 あ、ごめん、サンプラステートのMipFilterのことを忘れてた。
520名前は開発中のものです。
2015/03/03(火) 08:02:03.50ID:O4uDv9F0 UnrealEngineのコードへのアクセスが無料化されたけどこのスレの住民は興味なし?
521名前は開発中のものです。
2015/03/03(火) 08:44:20.60ID:nygqixhE ゲームエンジンでは実現不能なアイデアばっかりなんで
522名前は開発中のものです。
2015/03/03(火) 08:46:22.16ID:O4uDv9F0 ゲームエンジンを知らない奴が居ることは解った
523名前は開発中のものです。
2015/03/03(火) 10:44:49.65ID:ngz/wjN8 UE4課金してるし無料になるならラッキーって程度。
524名前は開発中のものです。
2015/03/04(水) 00:59:35.68ID:9TbqAfLf 興味ないどころか、この板自体がウニと非現実のステマに占領されてるので
嫌気が指してる。でもこういうのに限って板分けないだろうな運営。
嫌気が指してる。でもこういうのに限って板分けないだろうな運営。
525名前は開発中のものです。
2015/03/04(水) 01:13:58.75ID:dqGNRwqL っていう時代に取り残された人達が多い所か、ここは。
オクルージョンカリングの質問にもまともに答えれるひと居なかったし
オクルージョンカリングの質問にもまともに答えれるひと居なかったし
526名前は開発中のものです。
2015/03/04(水) 07:43:32.99ID:tS5hBT8s オクルージョンカリングで思ったんだけど、
例えばキャラクターが建物やらの後ろにいて隠れるけど、
影は建物から出るって時、影は描画されるのん?
判定用モデルでそのまま影描画しちゃう感じ?
例えばキャラクターが建物やらの後ろにいて隠れるけど、
影は建物から出るって時、影は描画されるのん?
判定用モデルでそのまま影描画しちゃう感じ?
527名前は開発中のものです。
2015/03/04(水) 09:43:02.19ID:GgwaroCI シャドウマップを作るときはライトからの視点になるから、
また別のオクルージョンカリングを行うとか?
また別のオクルージョンカリングを行うとか?
528名前は開発中のものです。
2015/03/04(水) 10:13:15.70ID:yZTKs+IT オクルージョンカリングね
あれうまいよな
でも俺はポンデリング派だな
あれうまいよな
でも俺はポンデリング派だな
529名前は開発中のものです。
2015/03/04(水) 10:49:22.17ID:a+CSwpI9 影はビューカリングだけじゃない?
z-prepassすればそこまで重いものじゃないし影用モデルでかなり最適化できる。
オクルージョンカリングは描画結果のピクセル数を取得して0なら描画しないだけだよ。
z-prepassすればそこまで重いものじゃないし影用モデルでかなり最適化できる。
オクルージョンカリングは描画結果のピクセル数を取得して0なら描画しないだけだよ。
530名前は開発中のものです。
2015/03/04(水) 20:12:10.19ID:lWy5bGCc オクルージョンカリングってgpu内で完結できたらいいのに。
531名前は開発中のものです。
2015/03/04(水) 21:18:31.71ID:GgwaroCI 大きなトレードオフがないならGPUでやってほしいよね
532名前は開発中のものです。
2015/03/04(水) 22:53:21.49ID:GI8MSIuN >>528
くだらない事言ってるとお前の*に->するぞ
くだらない事言ってるとお前の*に->するぞ
533名前は開発中のものです。
2015/03/05(木) 00:38:58.57ID:f1raWeBS >>530
>>531
簡素な遮蔽ポリゴンと、事前計算した超軽量なAABBでデプステストをパスするか確認するから軽くなるんだよ。
デプステストをパスしなかったら描画する対象のvertex shaderすら動かす必要が無いからね。
GPU内で完結するようにしたら実際のポリゴンを使うしかない。
そうすると、どうやっても全頂点計算するしかない。
それで隠れるポリゴンがあればfragment shaderは実行しなくて済むけど、それはTBDRっていう方法で既にGPUで実現済み。
ピクセルを書き込む回数を減らせるからメモリ帯域の狭いモバイルGPUでよく使われてる方法で、PowerVRが昔からその方法を使ってて有名。
それも半透明とかアルファテスト使うようなポリゴンがあると使えない。
>>531
簡素な遮蔽ポリゴンと、事前計算した超軽量なAABBでデプステストをパスするか確認するから軽くなるんだよ。
デプステストをパスしなかったら描画する対象のvertex shaderすら動かす必要が無いからね。
GPU内で完結するようにしたら実際のポリゴンを使うしかない。
そうすると、どうやっても全頂点計算するしかない。
それで隠れるポリゴンがあればfragment shaderは実行しなくて済むけど、それはTBDRっていう方法で既にGPUで実現済み。
ピクセルを書き込む回数を減らせるからメモリ帯域の狭いモバイルGPUでよく使われてる方法で、PowerVRが昔からその方法を使ってて有名。
それも半透明とかアルファテスト使うようなポリゴンがあると使えない。
534名前は開発中のものです。
2015/03/05(木) 02:25:19.75ID:YpPGywcJ なんか2chの専ブラでハードコーディングしたからAPIキーが割れたって言ってるけどコンパイルしてネイティブコードに変換されて読み取れるもんなの?
535名前は開発中のものです。
2015/03/05(木) 06:12:17.20ID:KVc1+L+F >>534
とりあえず板名100回復唱。な
とりあえず板名100回復唱。な
536名前は開発中のものです。
2015/03/06(金) 07:01:26.91ID:22aEiDue オーバーフローと配列範囲外のチェックってどうやんの
537名前は開発中のものです。
2015/03/06(金) 08:11:24.59ID:JOegiwit if ( hoge.length() - 1<i ) return;
538名前は開発中のものです。
2015/03/09(月) 00:28:48.51ID:iEPwp1GV 入門ゲームプログラミングって本買った
まずロベールのC++本で基礎を身につける
まずロベールのC++本で基礎を身につける
539名前は開発中のものです。
2015/03/09(月) 00:55:44.81ID:KBqbZUvv >>537
lengthがsize_tを返すのであればemptyの時に死ぬね
lengthがsize_tを返すのであればemptyの時に死ぬね
540名前は開発中のものです。
2015/03/09(月) 08:43:44.85ID:5/H88Ii0 そんなん配列のnullチェック先にするに決まってんだろ
541名前は開発中のものです。
2015/03/09(月) 11:25:36.92ID:KBqbZUvv >>540
hogeってのは生配列を返す関数持っててnullチェックしないと使えない糞コンテナなのか?そんなもん窓から投げ捨てろ
hogeってのは生配列を返す関数持っててnullチェックしないと使えない糞コンテナなのか?そんなもん窓から投げ捨てろ
542名前は開発中のものです。
2015/03/09(月) 16:56:13.92ID:Tsv4BOfD543名前は開発中のものです。
2015/03/14(土) 11:31:02.28ID:Bn3tbHEp ヘッダでstatic constな配列を初期化することってできない?
544名前は開発中のものです。
2015/03/14(土) 12:27:07.32ID:FGm0AUiX const_castとかあるけど使ったことないから分からない
545名前は開発中のものです。
2015/03/21(土) 17:31:21.55ID:4J9dPJbb DXライブラリで一通りゲームを作って次はDirctX9でゲームを作ろうと思って本なり読んでるけど
入力関連とかメインループ文に入ってるように見えないのになんで操作できてんだこれとか色々わけわかんなくてDXライブラリに逃げちゃいそう
入力関連とかメインループ文に入ってるように見えないのになんで操作できてんだこれとか色々わけわかんなくてDXライブラリに逃げちゃいそう
546名前は開発中のものです。
2015/03/21(土) 17:41:03.09ID:WO0UmCC8 入力の取得関数の所にブレークポイント張ればいつ呼ばれるか解るだろ
ソースレベルで追えないんじゃそのあとも苦労しそうだが
ソースレベルで追えないんじゃそのあとも苦労しそうだが
547名前は開発中のものです。
2015/03/21(土) 22:19:51.97ID:Vu16KnFN メッセージ系の処理の話かな?
Win32の仕組みを知らないといろいろわからないかもしれない
って言うか無理しないでDXLibでいいと思う
Win32の仕組みを知らないといろいろわからないかもしれない
って言うか無理しないでDXLibでいいと思う
548名前は開発中のものです。
2015/03/22(日) 13:15:06.80ID:RZoxpRxM >>545
まさかまかりなりにもDxlib使ってゲーム作った経験があるのにコールバック関数を知らない訳じゃないだろうな・・・w
まさかまかりなりにもDxlib使ってゲーム作った経験があるのにコールバック関数を知らない訳じゃないだろうな・・・w
549名前は開発中のものです。
2015/03/23(月) 00:04:40.06ID:6RzGsxDm 最低限の機能を使うだけなら、コールバック要らんぜ?
550名前は開発中のものです。
2015/03/23(月) 02:47:34.49ID:5MPdWZ7w 話をまとめると「コールバック関数でググれ」だな
551名前は開発中のものです。
2015/03/23(月) 08:21:54.36ID:OPwFNkI6 名前聞けば皆知ってそうなFLASHゲームの製作者なんて構造体すら知らなかったぞw
実装力>>>知識よ。
実装力>>>知識よ。
552名前は開発中のものです。
2015/03/23(月) 14:50:59.94ID:ORae6Rkf コールバックの利点ってなんぞ
軽い機能ならswitchすればいいしでかいならクラスごとするし手間かかるだけじゃないのか
軽い機能ならswitchすればいいしでかいならクラスごとするし手間かかるだけじゃないのか
553名前は開発中のものです。
2015/03/23(月) 20:27:25.37ID:jlPJ7kT1 >>552
と、とりあえずググってこい、なっ?
と、とりあえずググってこい、なっ?
554名前は開発中のものです。
2015/03/23(月) 20:32:37.09ID:6RzGsxDm 「ゲームで」だとそこまでは…
555名前は開発中のものです。
2015/03/23(月) 21:51:33.63ID:2BLAF17B ライブラリの実装が楽になるぐらいじゃね
556名前は開発中のものです。
2015/03/25(水) 00:11:47.80ID:q/dDA6au 誰にも迷惑がかかるわけでもなし
メリットが無いと思うのならば使わず突っ走ってみるのも一興
スマートポインタ?delete忘れるわけねーだろとツッパっていたら
見事に二重deleteを踏み抜いて以来
スマートポインタ教になった俺みたいに
メリットが無いと思うのならば使わず突っ走ってみるのも一興
スマートポインタ?delete忘れるわけねーだろとツッパっていたら
見事に二重deleteを踏み抜いて以来
スマートポインタ教になった俺みたいに
557名前は開発中のものです。
2015/03/25(水) 07:50:29.42ID:Ni1QV6xd スマポ(RAII)は誰もが魅了される素晴らしい作法。
558名前は開発中のものです。
2015/03/25(水) 09:05:10.14ID:QSKvYWqw 二重deleteは追えばすぐ分かるだけ良心的
559名前は開発中のものです。
2015/03/29(日) 16:51:57.43ID:0emdsjcu C++も、デフォルトで、ベクトル演算や行列演算のコンパイルができるようになればいいのに
コンパイラに任せると、機械語でオーバーヘッドが膨らみ過ぎるのかな・・・
コンパイラに任せると、機械語でオーバーヘッドが膨らみ過ぎるのかな・・・
560名前は開発中のものです。
2015/03/29(日) 17:28:01.84ID:xcFREV5w どうせベクトルや行列の型を指定するんだから見た目だけなら演算子オーバーロードでいいだろ
そうじゃない自動ベクトル化ならIntelCでも使えよ、一応VCにもあるけど
そうじゃない自動ベクトル化ならIntelCでも使えよ、一応VCにもあるけど
561名前は開発中のものです。
2015/03/29(日) 17:28:41.73ID:ZYW27Yds VC++の自動ベクトル化の空気さは異常
562名前は開発中のものです。
2015/03/29(日) 22:35:03.23ID:0emdsjcu >ベクトルや行列の型を指定するんだから見た目だけなら演算子オーバーロードでいい
要するに自分でクラス定義して、そのクラスを引数に取る演算子のオーバーロードするって事だよな。
それって面倒じゃん?
たとえば、ベクトルxとスカラーcがあるとして、
例えば、x-cなんかで、cをベクトルに拡張して四則演算してくれるようにコンパイルをしてくれれば便利だ
記述が、すげースッキリするぜ
要するに自分でクラス定義して、そのクラスを引数に取る演算子のオーバーロードするって事だよな。
それって面倒じゃん?
たとえば、ベクトルxとスカラーcがあるとして、
例えば、x-cなんかで、cをベクトルに拡張して四則演算してくれるようにコンパイルをしてくれれば便利だ
記述が、すげースッキリするぜ
563名前は開発中のものです。
2015/03/29(日) 22:46:40.82ID:tAb5E4+1 そんな言語あるのか
564名前は開発中のものです。
2015/03/29(日) 23:57:58.80ID:LTE960gn HLSLとかGLSLはそうとも言えるんじゃね?
C++に含めるのは仕様が膨らみすぎるしどう考えてもありえないけど
C++に含めるのは仕様が膨らみすぎるしどう考えてもありえないけど
565名前は開発中のものです。
2015/03/30(月) 17:38:30.42ID:kGTScyVB その程度のオーバーロードぐらい自分で書けよ
566名前は開発中のものです。
2015/03/30(月) 17:39:10.89ID:kGTScyVB それかライブラリ使え
それぐらい既にあるだろ
それぐらい既にあるだろ
567名前は開発中のものです。
2015/03/30(月) 18:13:10.35ID:slXQ1bOX ベクトル化って並列化のことでなくて?
568名前は開発中のものです。
2015/03/30(月) 18:23:29.49ID:kGTScyVB >>567
スカラーをベクトルに拡張してって話をどうこねくり回しても並列化にたどり着かないんだけど
スカラーをベクトルに拡張してって話をどうこねくり回しても並列化にたどり着かないんだけど
569名前は開発中のものです。
2015/03/30(月) 20:10:43.25ID:1XyG6Wml 行列の話と、CPUの最適化の話がごっちゃになっとるなwww
Phiとか扱わんだろうからなぁ
Phiとか扱わんだろうからなぁ
570名前は開発中のものです。
2015/03/30(月) 20:48:54.91ID:b0tJqvqw571名前は開発中のものです。
2015/03/30(月) 22:48:43.72ID:slXQ1bOX572名前は開発中のものです。
2015/03/31(火) 00:17:17.94ID:DE0yY6pv573名前は開発中のものです。
2015/04/04(土) 12:05:56.45ID:QQCOreS+ >562
プリプロセッサとかテンプレート使え
プリプロセッサとかテンプレート使え
574名前は開発中のものです。
2015/04/04(土) 15:28:53.15ID:yUzuUUN3 unityとかue使わないのにはなんか理由があるの?
575名前は開発中のものです。
2015/04/04(土) 16:35:38.22ID:vaG8wcz0576名前は開発中のものです。
2015/04/04(土) 17:34:51.61ID:YDk4o154 ゲームを作るだけが目標じゃなくて
技術習得とか作る行程にもこだわりがあるとか
技術習得とか作る行程にもこだわりがあるとか
577名前は開発中のものです。
2015/04/06(月) 02:30:22.94ID:uSGdnOak578名前は開発中のものです。
2015/04/06(月) 08:15:15.97ID:sWIkPIlR 日本のIT屋はOSやオフィスソフトなんかを作らなかった
結果世界を相手にできない
日本のハード屋はゼロから作ること(メイドインジャパン)にこだわった
結果世界を相手にできてる
unityとかもいいけどゼロからでも作り上げれる技術は保持しときたい
だからC++は捨てれない
結果世界を相手にできない
日本のハード屋はゼロから作ること(メイドインジャパン)にこだわった
結果世界を相手にできてる
unityとかもいいけどゼロからでも作り上げれる技術は保持しときたい
だからC++は捨てれない
579名前は開発中のものです。
2015/04/07(火) 08:34:53.50ID:q9bGL2Lp 俺もだ
つまり、元々ゲームが作りたいんじゃなくて、プログラミングを楽しんで色んな技術や知見を得たい。その過程の一つとしてゲーム作ってるだけ。
つまり、元々ゲームが作りたいんじゃなくて、プログラミングを楽しんで色んな技術や知見を得たい。その過程の一つとしてゲーム作ってるだけ。
580名前は開発中のものです。
2015/04/07(火) 10:05:55.63ID:6mIxjEc4581名前は開発中のものです。
2015/04/07(火) 19:26:39.87ID:J/eE9D3a >580
VMでもスクリプトでもなくハードを直接叩けて多くのプラットフォーム向けのコンパイラのあるOOPも関数型もいける高級言語って他にある?
VMでもスクリプトでもなくハードを直接叩けて多くのプラットフォーム向けのコンパイラのあるOOPも関数型もいける高級言語って他にある?
582名前は開発中のものです。
2015/04/07(火) 20:05:14.94ID:pKp3reSH ハードを直接叩くって時点でC++は…
583名前は開発中のものです。
2015/04/07(火) 21:14:04.62ID:JigxqEUV c++11以降の発展が素晴らしいから使ってる。
584名前は開発中のものです。
2015/04/07(火) 21:49:14.25ID:6Igr/bFa ガベージコレクタないらしいじゃん
それだけで使う気になんないわ
それだけで使う気になんないわ
585名前は開発中のものです。
2015/04/07(火) 22:15:58.91ID:Js45Pttp586名前は開発中のものです。
2015/04/07(火) 23:22:56.51ID:r6+ZyJLJ たしかガベコレのCライブラリもあったはず
わざわざC++でガベコレの使うぐらいなら
それでこそJavaでよくね?とは思うけど
使いこなせる人はきっといるのだろう
ま、使いやすいと思う言語を使えばいいのさ
わざわざC++でガベコレの使うぐらいなら
それでこそJavaでよくね?とは思うけど
使いこなせる人はきっといるのだろう
ま、使いやすいと思う言語を使えばいいのさ
587名前は開発中のものです。
2015/04/07(火) 23:52:39.26ID:V/NiCl4y ジャンルにもよるけどゲームの場合はガベコレはデメリットが大きい
ガベコレ中はどうしても処理負荷がかかってしまう
あとガベコレでも循環参照とかメモリークの危険性はある
ガベコレ中はどうしても処理負荷がかかってしまう
あとガベコレでも循環参照とかメモリークの危険性はある
588名前は開発中のものです。
2015/04/08(水) 01:18:56.44ID:FP0EIOAz 循環参照を上手いこと扱ってくれるのをガベコレって呼ばないか?
単純な参照カウントは含まないイメージがある
単純な参照カウントは含まないイメージがある
589名前は開発中のものです。
2015/04/09(木) 04:57:40.20ID:V84tE5WO 処理が高速なのが売りの言語にそんな物を突っ込むこと自体が…
しかも、CPUの進化で結構余裕が出るようになってきたとはいえ1フレームを争うゲームで
まあ、処理の速さを活かして動作安定性を高めていると言えないこともないが
しかも、CPUの進化で結構余裕が出るようになってきたとはいえ1フレームを争うゲームで
まあ、処理の速さを活かして動作安定性を高めていると言えないこともないが
590名前は開発中のものです。
2015/04/09(木) 10:55:23.90ID:MHTRE/z5 そのあたりの利便性と実行速度のバランス自体を作り手の技術と裁量次第で自由に出来るのがC++の良さ
例えば、マークアンドスイープをメモリ領域を小分けにしてフレーム単位で分散して実行するとか
同じサイズのオブジェクトが大量に生成破棄されるならそれ用のメモリプール作っておくとか
例えば、マークアンドスイープをメモリ領域を小分けにしてフレーム単位で分散して実行するとか
同じサイズのオブジェクトが大量に生成破棄されるならそれ用のメモリプール作っておくとか
591名前は開発中のものです。
2015/04/09(木) 11:07:59.75ID:U3R6v3b4 マークアンドスウィープ方式のGCを自分で実装なんて考えたこともないわ
592名前は開発中のものです。
2015/04/09(木) 14:05:15.05ID:eY4Y798Y boostあたりでgcライブラリを出してくれてもいいんでねえ?
スマポの延長みたいな感じで
スマポの延長みたいな感じで
593名前は開発中のものです。
2015/04/09(木) 15:30:45.95ID:TQZSg7vZ どうせ何かしらのスクリプト組み込むんだからGC必要な処理はそっちでやればいい
594名前は開発中のものです。
2015/04/09(木) 15:32:48.11ID:0uLPtayU プログラミング初心者にはわからないと思うけど、プログラミングそのものが有名ゲームをプレイする以上に楽しかったりするんだよね
むしろお金を払わないでプログラミングができるってだけで結構楽しかったり
むしろお金を払わないでプログラミングができるってだけで結構楽しかったり
595名前は開発中のものです。
2015/04/09(木) 15:51:09.16ID:DMZkI4l5 料理とかプラモデルみたいな感覚って説明してる。
それを楽しいと思えるかどうかは別として。
それを楽しいと思えるかどうかは別として。
596名前は開発中のものです。
2015/04/09(木) 20:09:02.62ID:V84tE5WO 問題は覚えるべき要素も多くて取っ付きにくいことと、
言語仕様がとっ散らかってて時々その仕様に悩まされることだ
言語仕様がとっ散らかってて時々その仕様に悩まされることだ
597名前は開発中のものです。
2015/04/09(木) 21:03:17.88ID:0zValk89 C++11は洗練されてて好き。
まぁ、それでもプログラミングを楽しめるかどうかは適性次第だろうね。
自分はC++11が超キモチイイ。
まぁ、それでもプログラミングを楽しめるかどうかは適性次第だろうね。
自分はC++11が超キモチイイ。
598名前は開発中のものです。
2015/05/04(月) 22:56:40.79ID:bWjMZjgH 初心者だがコードを書くこと自体に喜びを感じる。
599名前は開発中のものです。
2015/05/05(火) 00:33:10.13ID:IAsXNTG2 それは幸せなことだ
初心者は喜びを知り
中級者は苦しみを知り
上級者は無常を知る
それがこの世界の理よ
初心者は喜びを知り
中級者は苦しみを知り
上級者は無常を知る
それがこの世界の理よ
600名前は開発中のものです。
2015/05/06(水) 00:50:58.96ID:ZQTteOf/ >>599
すごい世界だ・・・
すごい世界だ・・・
601名前は開発中のものです。
2015/05/06(水) 01:10:46.90ID:o2LDDDsk 無情ならぬ無常か。イケテルじゃんw
602名前は開発中のものです。
2015/05/06(水) 03:08:49.55ID:IHlLqFXR 当方ビジュアルスタジオ2010にてアクションゲームを作っているんですが、
デバッグ中、配列に格納したマップ情報とオブジェクトとの判定をする部分で
ごくまれにエラーが起きて停止します。
経験則で判断すると、マップ判定でのエラーは
マップ情報の無い部分にオブジェクトが飛び出すというものが多かったんですが
今回は目視ですべてのオブジェクトが飛び出してるか否か確認出来る状態で
毎回エラー発生時に怪しいオブジェクトがいないので、今までのエラーとは違うような気がします。
しかも、滅多にそのエラーが出ないため、原因を探れません。
ただ、気持ち悪いことがひとつありまして、そのエラーで停止したあと、
マップの情報を入れた配列にカーソルを当てて、要素を見たら、
途中から「?」という状態になって表示されてるんです。
http://download1.getuploader.com/g/zipcodezipcode/91/B.png
http://download1.getuploader.com/g/zipcodezipcode/90/A.png
これがおかしなことに、見るのを止めて、もう一度カーソルを合わせてみると
今度はちゃんと中身が入ってる状態で表示されたりします。
ビジュアルスタジオの扱いにまだ慣れてないせいもあり、
中身が「?」で表示されたのは初めてだし、覗き直すたびに
「?」だったり、ちゃんと中身が見れたりすることが気持ち悪いんですが
これは別に、問題ないのでしょうか?(もともとそういうものだ、とか)
もし、ゲーム中に配列の中身が「?」みたいになる瞬間があるのなら
そりゃいきなりオブジェクトがど真ん中にいてもエラーになると思うんです。。。
これが原因なのかと思うんですが、、違いますか?
もしくは配列覗いたときの、「?」表示はビジュアルスタジオのバグなんでしょうか?
ちなみに、マップ配列の中身の格納はゲームが始まる最初に行っているので、
ゲーム中にマップ配列の中身が変わることは考えられない仕様です。
だとするとこの「?」はなんなんでしょうか?
考えられる要因を教えて下さい、お願い致します。
デバッグ中、配列に格納したマップ情報とオブジェクトとの判定をする部分で
ごくまれにエラーが起きて停止します。
経験則で判断すると、マップ判定でのエラーは
マップ情報の無い部分にオブジェクトが飛び出すというものが多かったんですが
今回は目視ですべてのオブジェクトが飛び出してるか否か確認出来る状態で
毎回エラー発生時に怪しいオブジェクトがいないので、今までのエラーとは違うような気がします。
しかも、滅多にそのエラーが出ないため、原因を探れません。
ただ、気持ち悪いことがひとつありまして、そのエラーで停止したあと、
マップの情報を入れた配列にカーソルを当てて、要素を見たら、
途中から「?」という状態になって表示されてるんです。
http://download1.getuploader.com/g/zipcodezipcode/91/B.png
http://download1.getuploader.com/g/zipcodezipcode/90/A.png
これがおかしなことに、見るのを止めて、もう一度カーソルを合わせてみると
今度はちゃんと中身が入ってる状態で表示されたりします。
ビジュアルスタジオの扱いにまだ慣れてないせいもあり、
中身が「?」で表示されたのは初めてだし、覗き直すたびに
「?」だったり、ちゃんと中身が見れたりすることが気持ち悪いんですが
これは別に、問題ないのでしょうか?(もともとそういうものだ、とか)
もし、ゲーム中に配列の中身が「?」みたいになる瞬間があるのなら
そりゃいきなりオブジェクトがど真ん中にいてもエラーになると思うんです。。。
これが原因なのかと思うんですが、、違いますか?
もしくは配列覗いたときの、「?」表示はビジュアルスタジオのバグなんでしょうか?
ちなみに、マップ配列の中身の格納はゲームが始まる最初に行っているので、
ゲーム中にマップ配列の中身が変わることは考えられない仕様です。
だとするとこの「?」はなんなんでしょうか?
考えられる要因を教えて下さい、お願い致します。
603名前は開発中のものです。
2015/05/06(水) 04:38:15.56ID:bWOaRpfa その覗き直すってのは、実行を停止してる状態での話?
604名前は開発中のものです。
2015/05/06(水) 04:44:45.87ID:IHlLqFXR >>603
深夜なのにレスありがとうございます。
リリースで実行中に、エラーが起きて「中断」します。
そのときに黄色の矢印がつきますよね、エラーが起きたところで。
中断状態ですね、デバッグモードになってるんでしょうか、
その時の話です。
深夜なのにレスありがとうございます。
リリースで実行中に、エラーが起きて「中断」します。
そのときに黄色の矢印がつきますよね、エラーが起きたところで。
中断状態ですね、デバッグモードになってるんでしょうか、
その時の話です。
605名前は開発中のものです。
2015/05/06(水) 04:51:52.90ID:bWOaRpfa ちょうど同じような症状に悩まされてる人が居たから、そっちと協力すればいいんじゃないかな(鼻ほじ
http://peace.2ch.net/test/read.cgi/tech/1424782918/857
http://peace.2ch.net/test/read.cgi/tech/1424782918/857
606名前は開発中のものです。
2015/05/08(金) 09:17:52.46ID:NPzwaxuV DXライブラリでデータベースと連携させてアカウント制のオンラインゲームとかって作れる?
607名前は開発中のものです。
2015/05/08(金) 17:02:47.08ID:1OSTxxey DXライブラリは、ただのDirectXのラッパだ
別のライブラリなり、自前なりで用意して組み合わせれば当然出来るだろう
DXライブラリにそういう機能があるか?って質問なら、無い。
そういう質問をするレベルの人が作れるかと問われれば、相当厳しいが頑張れとしか。
別のライブラリなり、自前なりで用意して組み合わせれば当然出来るだろう
DXライブラリにそういう機能があるか?って質問なら、無い。
そういう質問をするレベルの人が作れるかと問われれば、相当厳しいが頑張れとしか。
608名前は開発中のものです。
2015/05/10(日) 16:30:22.09ID:wE+sWsx1 >>602
一箇所で質問しろボケナス
一箇所で質問しろボケナス
609名前は開発中のものです。
2015/05/12(火) 19:53:17.91ID:S9OdlII3610Office & Gamers ◆G144Hzgh2.0e
2015/05/23(土) 12:10:33.26ID:OTbSyu9z 安定の99BASICとDarkBASIC。(キリッ
611名前は開発中のものです。
2015/05/23(土) 12:52:09.56ID:E7l9iLg/ >>610
IchigoJam行けよ
IchigoJam行けよ
612名前は開発中のものです。
2015/05/23(土) 13:41:01.34ID:Mp8uVbop 実績のないルーキーが過剰にもてはやされる業界
613名前は開発中のものです。
2015/05/24(日) 01:01:21.31ID:2/e5e/p/ ゲームのAI作るの楽しいな
一応動いてくれた時の感動がたまらない
けど相手に合わせて学習するようなAIはデバッグが難しいね
一応動いてくれた時の感動がたまらない
けど相手に合わせて学習するようなAIはデバッグが難しいね
614Office & Gamers ◆G144Hzgh2.0e
2015/05/25(月) 20:19:16.09ID:uK2DB85t >>611
わざわざ99BASIC未満の環境なんか逝くかよw
わざわざ99BASIC未満の環境なんか逝くかよw
615名前は開発中のものです。
2015/05/25(月) 22:55:26.19ID:na2KTF3d お前ならヒーローになれると思ったのになー、残念だわー
616名前は開発中のものです。
2015/05/30(土) 09:46:19.17ID:B9JLVvSW 参考書増えすぎて置き場所がなくなってきた
ブックエンドいくつか使って何とか置いてたけど
ちゃんとした本棚買うべきか・・・
ブックエンドいくつか使って何とか置いてたけど
ちゃんとした本棚買うべきか・・・
617名前は開発中のものです。
2015/05/30(土) 10:04:43.12ID:euXn7anm 丁度サイズの合ういい本棚がないんだよな
618名前は開発中のものです。
2015/05/30(土) 10:36:42.87ID:B9JLVvSW 本棚買う金で新しい参考書買えるんじゃね?って考えてしまう気持ちもあってなぁ・・・
619名前は開発中のものです。
2015/06/02(火) 17:39:01.05ID:MlWv0OLE 今日発売の ゲームプログラマのためのコーディング技術 って読んだ人いる?
少し立ち読みして良かったら買おうと思って近所の本屋に寄ったけど置いてなかった
ゲームのシステムがある程度の規模になってくるとゴチャゴチャしてきて
わけわからなくなってくるから綺麗なコード書けるようになりたいんだけど参考になるかね?
専門学校時代も入れるとゲーム製作は3本目なんだけど、
いまだに悩んでるスパゲッティコードをなんとかしたい
少し立ち読みして良かったら買おうと思って近所の本屋に寄ったけど置いてなかった
ゲームのシステムがある程度の規模になってくるとゴチャゴチャしてきて
わけわからなくなってくるから綺麗なコード書けるようになりたいんだけど参考になるかね?
専門学校時代も入れるとゲーム製作は3本目なんだけど、
いまだに悩んでるスパゲッティコードをなんとかしたい
620名前は開発中のものです。
2015/06/02(火) 17:58:05.87ID:MlWv0OLE あ、3本目って言うのは一人で全部プログラミングしたって意味
分担ならもっと多いです
分担ならもっと多いです
621名前は開発中のものです。
2015/06/02(火) 21:36:22.65ID:SNgoyQru 読んでないけどゲームプログラマのためのコーディング技術なんて
ループしないで並べるとか細かくメモリとらないとか、
綺麗なコードとは関係なさそうなイメージしかないけどな
ループしないで並べるとか細かくメモリとらないとか、
綺麗なコードとは関係なさそうなイメージしかないけどな
622名前は開発中のものです。
2015/06/02(火) 22:41:29.74ID:kPJiVod8 汚いコード書く奴ほどバグ出してると感じることはある
綺麗に書こうと努力してるコードは何かしらのこだわりを持って書いているからだろうか
必然的に保守し易くなる傾向にあるとも思える
しかし何にも増して重要なのはやはりセンス
綺麗に書こうと努力してるコードは何かしらのこだわりを持って書いているからだろうか
必然的に保守し易くなる傾向にあるとも思える
しかし何にも増して重要なのはやはりセンス
623名前は開発中のものです。
2015/06/02(火) 22:52:24.02ID:OsC99ZpC >>622
まったくの同意。
美意識の低い人間のコードは見辛い、保守性悪い、汎用性、可搬性が考慮されていない等々、機能的にも美しくない。
こういうやつの尻拭いがまわってくる度に怒りが込み上げてくる。
うっかりミスや、見通しが難しい段階でのコーディングなど、止むを得ないことは仕方ないが、
もうちと考えるなり拘るなりしようや・・・。
まったくの同意。
美意識の低い人間のコードは見辛い、保守性悪い、汎用性、可搬性が考慮されていない等々、機能的にも美しくない。
こういうやつの尻拭いがまわってくる度に怒りが込み上げてくる。
うっかりミスや、見通しが難しい段階でのコーディングなど、止むを得ないことは仕方ないが、
もうちと考えるなり拘るなりしようや・・・。
624名前は開発中のものです。
2015/06/02(火) 23:00:59.32ID:G2Xt6Fyg きったねえコードだ
625名前は開発中のものです。
2015/06/03(水) 16:11:07.48ID:Nya6+czP とりあえず動けばいいやと考えて作るから場当たり的になってコードが汚くなるんだよ
はじめに全体像を大まかにでも作り上げておいて、それに従って体系だったコードを書いて
場合によっては書き直しも視野に入れるくらいしないと後でバグ探しが大変だよ
はじめに全体像を大まかにでも作り上げておいて、それに従って体系だったコードを書いて
場合によっては書き直しも視野に入れるくらいしないと後でバグ探しが大変だよ
626名前は開発中のものです。
2015/06/03(水) 16:59:26.17ID:6kvk2a5h それは分かったから
なんか具体例で示して
なんか具体例で示して
627名前は開発中のものです。
2015/06/03(水) 19:09:02.96ID:sRl87IVO 継承しまくってもはやどれだけの要素が絡んでるのかわからない子クラスとか、
ソースで使う要素が書かれていないヘッダとか、
あまり意味のないtypedefのせいで紛らわしくなってるソースとか、
ろくに改行もせずにごちゃごちゃ書きなぐってるソースとか…
可読性は落とそうと思えばいくらでも落とせそうだからなぁ
ソースで使う要素が書かれていないヘッダとか、
あまり意味のないtypedefのせいで紛らわしくなってるソースとか、
ろくに改行もせずにごちゃごちゃ書きなぐってるソースとか…
可読性は落とそうと思えばいくらでも落とせそうだからなぁ
628名前は開発中のものです。
2015/06/04(木) 16:11:36.42ID:vrU+ubOi629名前は開発中のものです。
2015/06/04(木) 18:56:22.51ID:cnsghjkt いつオープンソース化しても恥ずかしくないような
きれいな設計を心がけている
きれいな設計を心がけている
630名前は開発中のものです。
2015/06/05(金) 19:52:10.75ID:JMVsMa+y そして暗号のような関数名や変数名
631名前は開発中のものです。
2015/06/05(金) 20:37:14.05ID:mCe853J4 3回も書き直せばマシになると思う
というか当たり前だけど、設計って細かい点までどうしてそうしたか説明できないと
というか当たり前だけど、設計って細かい点までどうしてそうしたか説明できないと
632名前は開発中のものです。
2015/06/05(金) 22:35:58.01ID:LdgVPS1s >>619の本がアマゾンのゲームプログラミングカテゴリで売れ筋1位になってんな
633名前は開発中のものです。
2015/06/06(土) 14:40:28.29ID:dpbcAJje ゲームプログラミングカテゴリ
ニッチすぎる
ニッチすぎる
634名前は開発中のものです。
2015/06/06(土) 15:35:59.70ID:sud1dN03 そのニッチなことに興味あるのがこのスレに居る奴らだろう
635名前は開発中のものです。
2015/06/07(日) 13:09:26.35ID:NNLpNWfN 技術テストだから・・・と書き始めたコードを、体裁整えて本番用にしてしまいました。
構造体には、今後を見据えた無駄が沢山ヽ(`Д´)ノ
関数には、アップデートの過程で使われなくなった関数そこそこヽ(`Д´)ノ
グローバル変数こそ控え目なものの、そこかしらに謎の変数int i;が溢れていますヽ(`Д´)ノ
うん、もう少し頑張ろう。
構造体には、今後を見据えた無駄が沢山ヽ(`Д´)ノ
関数には、アップデートの過程で使われなくなった関数そこそこヽ(`Д´)ノ
グローバル変数こそ控え目なものの、そこかしらに謎の変数int i;が溢れていますヽ(`Д´)ノ
うん、もう少し頑張ろう。
636名前は開発中のものです。
2015/06/07(日) 19:01:21.25ID:GcuHsAFc >>619の読んだ人はいない?
まだ現物見てないからすでに手に入れた人がいたら感想聞きたいが
まだ現物見てないからすでに手に入れた人がいたら感想聞きたいが
637名前は開発中のものです。
2015/06/07(日) 19:49:11.96ID:kU5YoC5S 田舎だからか本屋に置いてなかった
638名前は開発中のものです。
2015/06/09(火) 13:45:46.10ID:KfX/rE3U 電子版あるべや
639名前は開発中のものです。
2015/06/09(火) 17:10:14.78ID:xMkQCsUA 中身確認してから買いたいって意味だろ
640名前は開発中のものです。
2015/06/09(火) 20:36:17.49ID:fdMK9ws0641名前は開発中のものです。
2015/08/31(月) 13:46:15.71ID:BsMwLClI 幸福を固定された状況で規定するのは無意味
重要なのはどれだけそれを望むかということ
それに富と名声が同時に手に入らないと決まっているわけでもない
わざわざ自分から天井作ることはないだろ
ニートよ大志を抱け
重要なのはどれだけそれを望むかということ
それに富と名声が同時に手に入らないと決まっているわけでもない
わざわざ自分から天井作ることはないだろ
ニートよ大志を抱け
642名前は開発中のものです。
2015/08/31(月) 13:46:58.10ID:BsMwLClI ごwばwくw
643名前は開発中のものです。
2015/09/27(日) 10:14:22.18ID:U9LV1Cm0 前スレ >>996 です
やっと移植終わりました
60ポリの飛行機が120fpsでしたがw
とりあえずOS(バイナリのみ)ともとにしたPC版ソースあげてみます
http://www1.axfc.net/u/3540804
やっと移植終わりました
60ポリの飛行機が120fpsでしたがw
とりあえずOS(バイナリのみ)ともとにしたPC版ソースあげてみます
http://www1.axfc.net/u/3540804
644名前は開発中のものです。
2015/09/30(水) 16:48:24.79ID:/wD0a4XY 自作OSで3D表示に挑戦してた人か、乙
645名前は開発中のものです。
2015/12/19(土) 14:08:46.68ID:xrPl3RjI プログラマはMacを使ってるってマジ?
http://hayabusa3.2ch.net/test/read.cgi/news/1450395043/
http://hayabusa3.2ch.net/test/read.cgi/news/1450395043/
646名前は開発中のものです。
2016/03/08(火) 21:48:03.20ID:aJ2MUmL6 14歳からはじめるC言語わくわくゲームプログラミング教室 Visual Studio 2013編p148に
//画像を読み込み
if (LoadGameImage() == FALSE) return -1;
というのがあるんだが
画像をこれで読み込んでるらしいが
プログラムに異常があったときの処理があるようにしか見えない
それともC++とDXライブラリではこれが画像読み込みを意味するんだろうか・・・
//画像を読み込み
if (LoadGameImage() == FALSE) return -1;
というのがあるんだが
画像をこれで読み込んでるらしいが
プログラムに異常があったときの処理があるようにしか見えない
それともC++とDXライブラリではこれが画像読み込みを意味するんだろうか・・・
647名前は開発中のものです。
2016/03/08(火) 23:48:05.21ID:HZQ9dU35 どういうこと?
648名前は開発中のものです。
2016/03/08(火) 23:55:20.55ID:xTnST2lM LoadGameImageは自作関数じゃないの?
649名前は開発中のものです。
2016/03/08(火) 23:58:22.29ID:S/avUcpG >>646
読み込みとエラー判定を兼ねているのではなく?
読み込みとエラー判定を兼ねているのではなく?
650名前は開発中のものです。
2016/03/08(火) 23:59:47.69ID:HZQ9dU35 >プログラムに異常があったときの処理があるようにしか見えない
これが具体的に何を指すのかが分かれば
答えようもあるんだが
これが具体的に何を指すのかが分かれば
答えようもあるんだが
651名前は開発中のものです。
2016/03/09(水) 00:25:01.22ID:6v8oW5co http://www12128uf.さくら.ne.jp/forum/viewtopic.php?t=16197&p=128079
ここに>>646が言ってるものと思われるコードが載ってるけど、
エラー判定をするif文に何か関数が入ってれば当然その関数もif文を判定するときに実行される
だからエラー判定の一行だけで画像の読み込みも同時に済む
これはDXライブラリの仕様ではないよ
>プログラムに異常があったときの処理があるようにしか見えない
これは失敗した時に-1を返すようになってるからそう思ったんだと思う
DXライブラリの関数でもそうなっているね
ここに>>646が言ってるものと思われるコードが載ってるけど、
エラー判定をするif文に何か関数が入ってれば当然その関数もif文を判定するときに実行される
だからエラー判定の一行だけで画像の読み込みも同時に済む
これはDXライブラリの仕様ではないよ
>プログラムに異常があったときの処理があるようにしか見えない
これは失敗した時に-1を返すようになってるからそう思ったんだと思う
DXライブラリの関数でもそうなっているね
652名前は開発中のものです。
2016/03/09(水) 10:30:03.03ID:hrHSTVTj if(!Func()) return 0;
みたいな書き方を俺はよくしてるけど
"!"よりも"== FALSE"の方が可読性高かったりする?
みたいな書き方を俺はよくしてるけど
"!"よりも"== FALSE"の方が可読性高かったりする?
653名前は開発中のものです。
2016/03/09(水) 15:57:21.69ID:Ezb24swa 俺も!だと一瞬で理解できないな。
!strcmpとか書かれるとそこで1秒固まる。
!strcmpとか書かれるとそこで1秒固まる。
654名前は開発中のものです。
2016/03/09(水) 16:03:42.30ID:k0YnCSJd んなことはない
俺は!でも分かるし
オープンソースソフトウェアのソースコードでもよく使われている
俺は!でも分かるし
オープンソースソフトウェアのソースコードでもよく使われている
655名前は開発中のものです。
2016/03/09(水) 16:08:21.21ID:yq5u8pgy 自分も!派だな
656646
2016/03/09(水) 18:40:53.88ID:Y8IoTovs あああ ありがとうございました
if文の中の関数が実行されるとは・・・
if文の中の関数が実行されるとは・・・
657名前は開発中のものです。
2016/03/09(水) 18:50:25.07ID:ZhTtK3D6 Cの勉強中?
658名前は開発中のものです。
2016/03/09(水) 19:50:34.93ID:JQPFUPms !はよく使うけど、if文の中に関数は書かないな。
エラー処理とかしたい時は一旦hogeでも挟む。
strcmpとか条件分岐で使うのが前提みたいな関数は書くけど。
ってか人多いな。
エラー処理とかしたい時は一旦hogeでも挟む。
strcmpとか条件分岐で使うのが前提みたいな関数は書くけど。
ってか人多いな。
659名前は開発中のものです。
2016/03/09(水) 20:28:24.63ID:KZC9RKwk660名前は開発中のものです。
2016/03/09(水) 21:34:28.22ID:JVQPGZ6h661名前は開発中のものです。
2016/03/09(水) 21:58:58.25ID:RXGdxmu3 半年ぶりの書き込みだって言うのに結構レスついたな
書き込みなかっただけでチェックしてる人はいたのか
書き込みなかっただけでチェックしてる人はいたのか
662名前は開発中のものです。
2016/03/09(水) 22:07:48.28ID:bvV2Ln2d !使うときって、正常終了時は0が返ってきて、エラーの時は0以外(エラー番号)、
ってな関数の時に使うこともある
他人に判りやすく書くなら、S_OKとか使った方がいいんだろうけど
ってな関数の時に使うこともある
他人に判りやすく書くなら、S_OKとか使った方がいいんだろうけど
663名前は開発中のものです。
2016/03/09(水) 23:47:54.45ID:4T/47goJ 今回の件の反動で>>656が変態Cプログラマーになる確率90%
664名前は開発中のものです。
2016/03/10(木) 02:11:59.94ID:mzm/T4vZ でも多少の文法の違いはあれど、
C/C++以外でも頻出する用法よね…
C/C++以外でも頻出する用法よね…
665名前は開発中のものです。
2016/03/11(金) 13:06:08.83ID:N544VfcK 確かに戻り値0orNot0とstrcmpは分けるべきだったな、失礼。
お願いだから、0<strcmp(a,b)って
書き方だけは止めてくれーーー!!(心の叫び)
お願いだから、0<strcmp(a,b)って
書き方だけは止めてくれーーー!!(心の叫び)
666名前は開発中のものです。
2016/03/11(金) 20:50:27.91ID:0nAdN0wU 左辺に定数来る書き方が?
667名前は開発中のものです。
2016/03/11(金) 22:16:16.31ID:N544VfcK strcmp(a,b)<0は、a<bって脳内変換できるけど、
0<strcmp(a,b)はa>bになって、不等号が逆になっちゃうんだよね
if (a==1) を if(a=1)としてもエラーにならないから
if(1==a)って書きましょうっていう
コーディング規約の影響なんだけと
0<strcmp(a,b)はa>bになって、不等号が逆になっちゃうんだよね
if (a==1) を if(a=1)としてもエラーにならないから
if(1==a)って書きましょうっていう
コーディング規約の影響なんだけと
668名前は開発中のものです。
2016/03/11(金) 23:40:02.75ID:0nAdN0wU あー、なるほど
669名前は開発中のものです。
2016/03/19(土) 02:16:35.26ID:r4dDPjn8 なるぽ
670名前は開発中のものです。
2016/03/19(土) 05:49:07.11ID:of13wxGN Javaのコーディング規則で、必ず左側に、
小さい方を書く、というのを見たことがある
a < b OK
a > b これはダメ
小さい方を書く、というのを見たことがある
a < b OK
a > b これはダメ
671名前は開発中のものです。
2016/03/19(土) 23:46:05.96ID:O4bWw4/W 不等号は基本的に小なりを使いたいってのは、分からんではないかな?
「必ず」ってなると面倒そうだが。
「必ず」ってなると面倒そうだが。
672名前は開発中のものです。
2016/03/23(水) 21:40:01.22ID:Ti6+V5d4 「統一した方がいい」という発想は分かるけど、何でも絶対的な規則で
統一するのが正しいと考えるのは中級プログラマの悪い癖だよ
文脈上、xという変数が意味を持つ箇所で「x > 0」でなく「0 < x」と書くのは
だだの教条主義。「臨機応変」が正解なんだ
統一するのが正しいと考えるのは中級プログラマの悪い癖だよ
文脈上、xという変数が意味を持つ箇所で「x > 0」でなく「0 < x」と書くのは
だだの教条主義。「臨機応変」が正解なんだ
673名前は開発中のものです。
2016/03/24(木) 16:12:48.68ID:CsdUy+70 「初心者がgotoを連発するよりは、全面禁止にしてしまったほうがトラブルが少ない」
みたいな類かもしれない
みたいな類かもしれない
674名前は開発中のものです。
2016/03/24(木) 19:13:52.99ID:TxcOybH3 原則的に不等号は直接書かないようにしている。
比較なりなんなりは“ホニャララ”かどうかを判断するためにあるのだから
“ホニャララかどうか”というマクロなり関数なりメソッドにしてる。
比較なりなんなりは“ホニャララ”かどうかを判断するためにあるのだから
“ホニャララかどうか”というマクロなり関数なりメソッドにしてる。
675名前は開発中のものです。
2016/03/25(金) 07:10:43.20ID:5jyLFHUE その発想も確かに正しいが、
比較1つ程度でなんでもかんでもそれやると、逆にわかりにくくならん?
比較1つ程度でなんでもかんでもそれやると、逆にわかりにくくならん?
676名前は開発中のものです。
2016/03/31(木) 00:24:44.36ID:qFkKshiZ677名前は開発中のものです。
2016/04/12(火) 00:37:37.91ID:YMU8Fmug リスト構造ってゲームの場合どういう時によく使われるんだろう?
678名前は開発中のものです。
2016/04/12(火) 00:48:30.61ID:8sNCvVDt タスクシステム作って古の風を感じたい時かな
679名前は開発中のものです。
2016/04/15(金) 07:29:42.45ID:gdl0YKy3 大量のオブジェクトを駆使するゲームなんかだと
まだ使うことはあるのかなあ…?
まだ使うことはあるのかなあ…?
680名前は開発中のものです。
2016/04/15(金) 20:50:38.81ID:ksWWJBCE リストじゃないと何使ってるの?配列?
681名前は開発中のものです。
2016/04/15(金) 22:11:23.49ID:gdl0YKy3 そこって1ミリでも疑問に思うとこなの?
682名前は開発中のものです。
2016/04/16(土) 00:29:38.93ID:QR94Rf2u Siv3D触ってみたけど
while (System::Update())
{
}
こういうスタティック上等、エラーも返すで^^な書き方って何の影響を受けてんの?
while (System::Update())
{
}
こういうスタティック上等、エラーも返すで^^な書き方って何の影響を受けてんの?
683名前は開発中のものです。
2016/04/16(土) 09:17:43.38ID:wej20Ait リストは削除と挿入のコストがO(1)だから増えたり減ったりが多いような時に使う
ただし検索コストはO(n)になる
ただし検索コストはO(n)になる
684名前は開発中のものです。
2016/04/16(土) 12:10:46.47ID:PRbyp6Ee685名前は開発中のものです。
2016/04/16(土) 15:13:18.16ID:AMsxlZHo だから配列でしょ
686名前は開発中のものです。
2016/04/17(日) 05:39:51.98ID:yyaaEcZM >>677
2Dゲーム作ってます。
リストはキャラ情報繋ぐのに使用。
先頭さえ押さえておけば、キャラ情報領域を総当りしなくても良いので便利。
ついでに作画順番も決まるので、順番を調整すれば重ね合わせも制御できます。
2Dゲーム作ってます。
リストはキャラ情報繋ぐのに使用。
先頭さえ押さえておけば、キャラ情報領域を総当りしなくても良いので便利。
ついでに作画順番も決まるので、順番を調整すれば重ね合わせも制御できます。
687名前は開発中のものです。
2016/04/17(日) 08:05:02.97ID:i3HsvLfj exists みたいなフラグが1つ減るというのは
ちょっとだけスマート。。。かもしれない
ちょっとだけスマート。。。かもしれない
688名前は開発中のものです。
2016/04/24(日) 00:23:52.15ID:MInVRodY リストじゃなかったら配列ってメモリ配置の事言ってるのか?
データ構造の事なら他にも色々あると思うが
データ構造の事なら他にも色々あると思うが
689名前は開発中のものです。
2016/04/24(日) 00:37:02.19ID:nXkxGb8d こういうデータ構造が向いてる、ってのが分かってるなら、そっちを使うだけで
用途を限定しなかったら一般的には配列になるんじゃね
用途を限定しなかったら一般的には配列になるんじゃね
690名前は開発中のものです。
2016/04/24(日) 23:39:03.51ID:MInVRodY むしろデータ構造なんて用途ありきなんだから用途を限定せずにって前提は無意味な気が
超汎用のコンテナ作ってるならともかく
超汎用のコンテナ作ってるならともかく
691名前は開発中のものです。
2016/07/30(土) 13:10:59.59ID:gYGEPygV ゲ製板の任意ワッチョイの導入についての投票を8月7日(日)に行います。
ご希望の方は是非参加お願い致します。
http://tamae.2ch.net/test/read.cgi/vote/1469829608/
ご希望の方は是非参加お願い致します。
http://tamae.2ch.net/test/read.cgi/vote/1469829608/
692名前は開発中のものです。
2016/08/04(木) 03:44:27.44ID:uSHyJnw3 今からDirectXやろうと思ったらDirectX11でいいんだろうか
9のほうがサンプルとか記事は多いけど…
9のほうがサンプルとか記事は多いけど…
693名前は開発中のものです。
2016/08/04(木) 05:00:21.26ID:BXEYLxgQ 9に比べて若干ハードル高いけど11から始めた方がいい
694名前は開発中のものです。
2016/08/06(土) 13:22:04.65ID:jvnNi9Fg 1週間前にも告知いたしましたが再度告知致します。
ゲ製板の任意ワッチョイの導入についての投票を8月7日(日)に行います。
スレの>>2の訂正部分に気を付けて是非参加お願い致します。
http://tamae.2ch.net/test/read.cgi/vote/1469829608/
ゲ製板の任意ワッチョイの導入についての投票を8月7日(日)に行います。
スレの>>2の訂正部分に気を付けて是非参加お願い致します。
http://tamae.2ch.net/test/read.cgi/vote/1469829608/
695名前は開発中のものです。
2016/08/06(土) 18:57:46.72ID:zv4mu8Do C++ゲーム制作ライブラリで
https://developer.mozilla.org/ja/docs/Web/CSS/border-image
こういう処理を提供しているのってありますかね?
会話ウィンドウとかこういうのあると結構便利だと思うんだけど
https://developer.mozilla.org/ja/docs/Web/CSS/border-image
こういう処理を提供しているのってありますかね?
会話ウィンドウとかこういうのあると結構便利だと思うんだけど
696名前は開発中のものです。
2016/08/07(日) 00:48:34.67ID:KJmZIl4L 【訂正】
>>694において8/7(日)に行うと告知されたワッチョイ導入についての投票ですが、
自治スレでは投票の是非について結論が出ておらず、
現時点において投票の実施が決まったという事実はありません
なお、ワッチョイ導入そのものが否決されたわけではありません
導入についての議論は現在も自治スレにおいて継続中です
ご意見のある方は自治スレまでお越しください
■ ゲーム製作技術板自治04 [無断転載禁止]©2ch.net・
http://echo.2ch.net/test/read.cgi/gamedev/1469698797/
>>694において8/7(日)に行うと告知されたワッチョイ導入についての投票ですが、
自治スレでは投票の是非について結論が出ておらず、
現時点において投票の実施が決まったという事実はありません
なお、ワッチョイ導入そのものが否決されたわけではありません
導入についての議論は現在も自治スレにおいて継続中です
ご意見のある方は自治スレまでお越しください
■ ゲーム製作技術板自治04 [無断転載禁止]©2ch.net・
http://echo.2ch.net/test/read.cgi/gamedev/1469698797/
697名前は開発中のものです。
2016/08/07(日) 01:05:27.05ID:95O87T0V 荒らしが出没しておりワッチョイの議論だけでなく投票自体もまとまらないから
投票を開始しましたが【訂正】と言い投票自体を妨害する方が出没しています。
投票自体は20:59まで行っており、確認時間も23:59までの3時間行っておりますので
是非参加お願いいたします。
http://tamae.2ch.net/test/read.cgi/vote/1469829608/
投票を開始しましたが【訂正】と言い投票自体を妨害する方が出没しています。
投票自体は20:59まで行っており、確認時間も23:59までの3時間行っておりますので
是非参加お願いいたします。
http://tamae.2ch.net/test/read.cgi/vote/1469829608/
698名前は開発中のものです。
2016/09/13(火) 12:12:13.43ID:arn+xict >>695
可変サイズを求めなければ、ピクチャの上にテキスト配置するだけじゃないの
可変サイズを求めなければ、ピクチャの上にテキスト配置するだけじゃないの
699名前は開発中のものです。
2016/11/20(日) 15:53:19.18ID:Zr00I/Qf ,彳;;;;;;;;;;;;;;;;;;;;;;;;;;、
/;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;,ヽ 涙が あとからあとから あふれ出て
/;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;t、
,';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;z 止めることができなく なる
!;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;i
|''';;;;;;;;;;;;;'''" ,;;;;;;;;;;;;;;;;;;;;f ニ;、 マヨーレマヨーレ!
{丁 "'' _ ,;;;;;;;;;;;;;;;;;//万 !
! .i厂\( \ 六夂 i、__ http://goo.gl/kY6CYb
! .{.\ \ \ ,' ! ‐ ´  ̄ ̄ Zz、
i >、 ヽ \ \ | | \
.| \\\ ヽ ー= ! .\
! \\\ 、,. `' | ヽ
} ≧! 、,,. ! !
ノ .', | |
./ 八 ', !
/ ./ .>‐、 .∧ :; .!
./ / / ヽ \ ∧ !: ハ
/ / ./ ', ヽ .∧ / ノ i
/ / , ', ∧ ! ' !
// ! ∨ ∧ ,' i .!
/ / セ、 ∨ ∧ ! ! .|
/z ´ .\ ∨ \ _| .' .|
/;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;,ヽ 涙が あとからあとから あふれ出て
/;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;t、
,';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;z 止めることができなく なる
!;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;i
|''';;;;;;;;;;;;;'''" ,;;;;;;;;;;;;;;;;;;;;f ニ;、 マヨーレマヨーレ!
{丁 "'' _ ,;;;;;;;;;;;;;;;;;//万 !
! .i厂\( \ 六夂 i、__ http://goo.gl/kY6CYb
! .{.\ \ \ ,' ! ‐ ´  ̄ ̄ Zz、
i >、 ヽ \ \ | | \
.| \\\ ヽ ー= ! .\
! \\\ 、,. `' | ヽ
} ≧! 、,,. ! !
ノ .', | |
./ 八 ', !
/ ./ .>‐、 .∧ :; .!
./ / / ヽ \ ∧ !: ハ
/ / ./ ', ヽ .∧ / ノ i
/ / , ', ∧ ! ' !
// ! ∨ ∧ ,' i .!
/ / セ、 ∨ ∧ ! ! .|
/z ´ .\ ∨ \ _| .' .|
700長留裕平
2016/11/29(火) 21:25:56.43ID:s/ljbuDp ブックオフで本がうってるぜそれを全部買ってこい
701長留裕平 ◆lirqr6DwLQ
2016/11/29(火) 21:26:57.45ID:s/ljbuDp ブックオフで本が打ってるぜそれをかってこい
702長留裕平 ◆lirqr6DwLQ
2016/11/29(火) 21:28:24.55ID:s/ljbuDp ブックオフで本が打ってるぜそれを全部買ってこい
703長留裕平 ◆lirqr6DwLQ
2016/11/29(火) 21:29:50.98ID:s/ljbuDp 柴田さんを崇めなさい
704名前は開発中のものです。
2016/12/05(月) 22:18:08.65ID:ZTsIsC0K 並列処理しても、キャッシュ機構がネックになるから、
参照するヒープが膨大だと、
必ずしも速度倍率=動員コア数とはならないな
参照するヒープが膨大だと、
必ずしも速度倍率=動員コア数とはならないな
705名前は開発中のものです。
2016/12/06(火) 08:39:38.65ID:b57tQ2bo 3dモデルを描画するときってどうするのが一般的?マテリアルごと?
706名前は開発中のものです。
2016/12/06(火) 08:48:58.50ID:b57tQ2bo スレチだったかも
連投スマソ
連投スマソ
707名前は開発中のものです。
2016/12/21(水) 18:36:24.74ID:hQNzrBhV >>705
マテリアル別、テクスチャ別でソートしてた希ガス
マテリアル別、テクスチャ別でソートしてた希ガス
708名前は開発中のものです。
2017/08/11(金) 19:45:04.06ID:aPax3ehE namespace GameObject{
namespace Player{}
class Player;
}
visual studioで上記のことやりたいんだけどできないんだけ?
前提としてフォルダとnamespace構造をいっしょにしたい。
現状の実装
namespace Player{
class Player{};
//PlayerHelperClass,Function
}
みたいなことやっているけど
GameObject::Player::Playerってなんだか気持ちが悪い
これを避けるためにnamespace PlayerHelperを作ったほうがいいのか悩んでるんですけど
皆様はどうしてます?
namespace Player{}
class Player;
}
visual studioで上記のことやりたいんだけどできないんだけ?
前提としてフォルダとnamespace構造をいっしょにしたい。
現状の実装
namespace Player{
class Player{};
//PlayerHelperClass,Function
}
みたいなことやっているけど
GameObject::Player::Playerってなんだか気持ちが悪い
これを避けるためにnamespace PlayerHelperを作ったほうがいいのか悩んでるんですけど
皆様はどうしてます?
709名前は開発中のものです。
2017/08/12(土) 01:07:35.74ID:ZQFcyoj/ >>708
PlayerHelperをクラス内クラスにするってのは無し?
PlayerHelperをクラス内クラスにするってのは無し?
710名前は開発中のものです。
2017/08/12(土) 18:22:36.69ID:iYZm+7V9 ありですな
ありがとう
クラス内クラスにする場合、クラス内に前方宣言しとかないといけないのが欠点だけど
大した手間ではないけどうーんこれがベターか?
c++ではpartial class的なことできればな
ヘッダー汚れなくて済むのに
他のコンパイラだとnamespaceとclass被ってもコンパイルできたりするのに
player.hとplayerhelperfuncを同じフォルダに入れたかったから今の設計にしたんだと思うけど、別に同じフォルダに入れなくてもいい気もしてきた
ありがとうございました
ありがとう
クラス内クラスにする場合、クラス内に前方宣言しとかないといけないのが欠点だけど
大した手間ではないけどうーんこれがベターか?
c++ではpartial class的なことできればな
ヘッダー汚れなくて済むのに
他のコンパイラだとnamespaceとclass被ってもコンパイルできたりするのに
player.hとplayerhelperfuncを同じフォルダに入れたかったから今の設計にしたんだと思うけど、別に同じフォルダに入れなくてもいい気もしてきた
ありがとうございました
711名前は開発中のものです。
2017/12/31(日) 19:27:52.04ID:/rN76OKL 簡単にお金が稼げる方法興味ある人だけ見てください。
グーグル検索⇒『来島のモノノリウエ』
L23CW9IZ1K
グーグル検索⇒『来島のモノノリウエ』
L23CW9IZ1K
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 【速報】習主席とトランプ大統領が電話会談 台湾問題について [ニョキニョキ★]
- 【東京・足立の車暴走】赤信号無視か 危険運転致死傷疑いも視野に捜査 逮捕された職業不詳の男性(37)は精神疾患で通院歴も ★2 [ぐれ★]
- 人生初黒星の神童、那須川天心がリング上で土下座 [牛丼★]
- 中国人「『日本は危ないから行かないように』と言われたが、日本に来たらとても安全だった」 [お断り★]
- 毛寧(もう・ねい)報道官 「日本は実際の行動で対話への誠意を示すべき」 中国、高市首相に改めて発言撤回を要求 [ぐれ★]
- お布施の75%が葬儀社の手数料に 価格表を入手 僧侶も警鐘 [ぐれ★]
- ネトウヨの本心「ぶっちゃけLGBT推進を取り消すとか自分に関係ないしどうでもいい。そんな事よりJK、JCとヤッてもOKな世の中に戻せ!」 [377482965]
- 「琉球有事は中国有事」 中国のネトウヨが拡散 これには日本のネトウヨ叩きのめされる [241672384]
- 【号外】習近平、米大統領のトランプと首脳会談を行う!日本のの武力による台湾脅しついて共有の追及をする意思統一でおこなう [339712612]
- ミャンマー軍事政権「日本にはアジアで犯した罪に対する反省や責任感がない」高市答弁を批判 [834922174]
- まったりおじゃる丸待機スレ🏡
- 【速報】高市「アタシぜっったい謝らないからッ!!」→中国焦る [308389511]
