C/C++ゲーム製作総合スレッド Part6
■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものです。
2014/07/08(火) 19:30:19.51ID:J+zVqUil元スレ
DXライブラリ 総合スレッド その17
http://toro.2ch.net/test/read.cgi/gamedev/1383795645/
前スレ
C/C++ゲーム製作総合スレッド Part1
http://toro.2ch.net/test/read.cgi/gamedev/1337516528/
C/C++ゲーム製作総合スレッド Part2
http://toro.2ch.net/test/read.cgi/gamedev/1351015269/
C/C++ゲーム製作総合スレッド Part3
http://toro.2ch.net/test/read.cgi/gamedev/1357899040/
C/C++ゲーム製作総合スレッド Part4
http://toro.2ch.net/test/read.cgi/gamedev/1376262450/
C/C++ゲーム製作総合スレッド Part5
http://peace.2ch.net/test/read.cgi/gamedev/1389798031/
0271名前は開発中のものです。
2014/09/25(木) 12:27:57.77ID:0U2Nzxjaヒープに展開したメモリが断片化してんだからOS読みの使用量は肥大するだろ
0272名前は開発中のものです。
2014/09/25(木) 12:36:56.59ID:NZ65e36Xただな、vectorしか使ってない、mallocやnewを使ってない状況では、メモリリークは起きない
0273名前は開発中のものです。
2014/09/25(木) 12:51:35.78ID:Wwt/1FNM32Bit環境でフラグメンテーションを発生させる事などたやすいわ〜!!
0274名前は開発中のものです。
2014/09/25(木) 13:11:46.20ID:Wwt/1FNMちなみに32Bit環境の最大メモリー容量は4Gバイト
0275名前は開発中のものです。
2014/09/25(木) 13:57:33.94ID:7St3vxLxPCによってなる場合とならない場合があるし、突然そうなったり直ったりする
誰か分かる人いる?
0276名前は開発中のものです。
2014/09/25(木) 14:05:40.51ID:0U2Nzxjaこれwindowsで試しにやってみたら、断片化起きないのな
なんでだと思って調べてみたら、小さいサイズと大きいサイズのアロケートが
ぜんぜん遠くの場所に確保されて、断片化しないように勝手に配置してた
ググるとLow Fragmentation Heap(vista以降でデフォルトで有効)って機能が在るらしく、
これのせいで断片化が起きにくくなってるらしい
これはwin(vista以降)限定にはなるけど、こんな機能があるなら断片化はそんなに気にしなくてもいいのかも
0277名前は開発中のものです。
2014/09/25(木) 14:56:31.50ID:Q3KR10H7どうやるんだよ。具体的に言って見ろよ
0278名前は開発中のものです。
2014/09/25(木) 15:51:45.34ID:Wwt/1FNMあれ!?て事はうちで今起きてるフラグメンテーションは……メモリの機能を解析しないと解らないか
>>277
悪い、古いOSで5Gまでしか無理だった
奇数番目の数バイトのメモリと10Mのメモリを配置が動くようにサイズを交互に変更して……
って事を考えてたんだが……
0279名前は開発中のものです。
2014/09/25(木) 15:51:52.00ID:eZ0WvKEX10Mバイト程度と数バイトが連続して並べられるような実装のmallocが前提でもいいぞ。例よろしく。
0280名前は開発中のものです。
2014/09/25(木) 15:58:51.73ID:eZ0WvKEX数バイトと10Mバイトを交互に変更したらなんで5Gもいくんだよ。
古いOSってなんだよfreeした領域を再利用しないような糞実装の環境か?どんな環境だよ。少なくとも64BitのOSなんだよな?
0281名前は開発中のものです。
2014/09/25(木) 16:42:29.27ID:Wwt/1FNM10Mバイトのメモリの後ろに数バイトのメモリが動く
2 10Mバイトのメモリの容量を増やす
最初に動かした数バイトのメモリの後ろに10Mバイトのメモリが動き
10Mの空き領域が出来る
3 今の前から2番目の数バイトのメモリを増やす10Mバイトのメモリの後ろに……あれ!?
0282名前は開発中のものです。
2014/09/25(木) 16:54:07.84ID:mt5vjM8o普通に考えて2で出来た10MBの空き領域に3で増やした数バイトが配置されるだろ。
0283名前は開発中のものです。
2014/09/25(木) 17:28:22.48ID:Wwt/1FNMと簡単に考えていたが、難しい
0284名前は開発中のものです。
2014/09/25(木) 17:47:48.32ID:GasQ7lmcVirtuaAllocで予約だけして埋めてけばアプリから見たらメモリ確保に失敗できるだろうよ
0285名前は開発中のものです。
2014/09/25(木) 17:49:24.77ID:aYvhPGQT圧倒的にページデフォルトのほうがロスが大きいし。
フラグメンテーション解消もOS依存だし。
そこにこだわるくらいならメモリプールして再使用したほうがマシ。
0286名前は開発中のものです。
2014/09/25(木) 18:33:30.97ID:Wwt/1FNM0287名前は開発中のものです。
2014/09/25(木) 18:39:35.35ID:aYvhPGQTページフォールト - Wikipedia
ページフォールト (page fault) とは、プログラムが物理メモリがマップされていない仮想アドレス空間上のページにアクセスしたときにハードウェアが発生する割り込み(または例外)である。
ページフォールトを処理するソフトウェアは一般にオペレーティングシステム (OS) の一部であり、ページフォールトを発生させるハードウェアを一般にメモリ管理ユニットと呼ぶ。
OSのメモリ管理がページフォールトを処理し、その仮想アドレスにアクセスできるようにするか、無効なアクセスであるとしてページフォールトを発生させたプログラムを強制終了させることができる。
名前にフォールト(障害)とあるものの、ページフォールトは必ずしも致命的なエラーではない。
Windows、Unix系OS(Mac OS X、Linux。*BSD、Solaris、AIX、HP-UXなど)、z/OSといった仮想記憶方式を採用するOSでは、
ページフォールトは普通に発生するし、必須な機能でもある。
マイクロソフトは(Windows Vistaなどの)リソースモニタの最近のバージョンで、ページフォールトの意味で「ハードフォールト」(hard fault) という呼称を使っている[1]。
0288名前は開発中のものです。
2014/09/26(金) 02:25:48.99ID:m0bZOMy5ゲーム開発を勉強したいんだけどどういう本を買えばいいかわからない
言語はC++で描画はDirectXを使いたい
とりあえず明快C言語の入門編は買った
0289名前は開発中のものです。
2014/09/26(金) 03:16:50.45ID:A4xH7Wvc0290名前は開発中のものです。
2014/09/26(金) 07:13:47.30ID:zpPM/1OBDXライブラリ 総合スレッド その18
http://peace.2ch.net/test/read.cgi/gamedev/1399459468/
0291名前は開発中のものです。
2014/09/26(金) 09:00:00.52ID:FT0pZNED入門ゲームプログラミング (Professional Game Developerシリーズ) 大型本 ? 2014/1/30
がいいみたいだぞ
WindowsゲームプログラミングでWin32apiについても勉強しておくといいかも
DXライブラリ使った方が楽だけど
0292名前は開発中のものです。
2014/09/26(金) 10:12:15.38ID:gU5F+WDx0293名前は開発中のものです。
2014/09/26(金) 10:16:07.11ID:rbkJ86iO0294名前は開発中のものです。
2014/09/26(金) 12:18:19.00ID:+75O60pj0295名前は開発中のものです。
2014/09/26(金) 15:10:36.26ID:m0bZOMy5C++で行きたい
>>290
それはどう言う物?
>>291
DirectXに関してはそのProfessional Game Developerとか言うの買ってみる
Win32apiってのでお勧めの本はあったりする?
>>294
出来る
0296名前は開発中のものです。
2014/09/26(金) 15:43:11.22ID:KjwlBlc20297名前は開発中のものです。
2014/09/26(金) 16:17:40.31ID:JcYHmNqsDXライブラリはDirectXのラッパー
初心者でも簡単にゲームを作れるように製作された
0298名前は開発中のものです。
2014/09/26(金) 17:48:05.16ID:rO+kEazw0299名前は開発中のものです。
2014/09/26(金) 18:04:39.11ID:9JMnzgXVgame engine architecture
game programming gems
取り敢えず俺が読んだ本でよかったもの
最近やってないから内容ほとんど忘れたけど
0300名前は開発中のものです。
2014/09/26(金) 19:01:22.83ID:bysjYWQH0301名前は開発中のものです。
2014/09/27(土) 17:06:21.54ID:4H/ikRQa0302名前は開発中のものです。
2014/09/27(土) 17:09:38.13ID:yBneoUhB一つのファイルにアーカイブして暗号化したものを読み込む
0303名前は開発中のものです。
2014/09/27(土) 22:59:20.87ID:wImin9kVソリューションエクスプローラーにリソースフォルダあるけど、なんかexeのアイコンぐらいしかわからん
0304名前は開発中のものです。
2014/09/27(土) 23:08:35.84ID:SGVF4lSG0305名前は開発中のものです。
2014/10/02(木) 00:06:30.72ID:fnVH62pXこれってグラフィックVRAMでも起きますよね?しかもメーカーによって発生頻度が変わるという。
0306名前は開発中のものです。
2014/10/02(木) 12:09:22.18ID:zEULmnAZ0307名前は開発中のものです。
2014/10/02(木) 12:58:09.55ID:iGYHLveA複数のアプリでVRAMを取り合った結果GPU上に実際にあるかは保証できないし
0308名前は開発中のものです。
2014/10/04(土) 22:09:19.67ID:fjoq6jVy0309名前は開発中のものです。
2014/10/05(日) 02:33:34.79ID:V/yeiJ3y0310名前は開発中のものです。
2014/10/05(日) 03:23:02.94ID:ofmLJ6L4メリットを感じない。
C/C++で書くとしてもゲームじゃないから板違い。
自己解凍したいだけならググれ。
0311名前は開発中のものです。
2014/10/05(日) 09:24:05.22ID:Xq3Ljg/Vこれ結局どうやるの?
0312名前は開発中のものです。
2014/10/05(日) 09:32:21.92ID:644ev0/vとかでググればわかるだろ
プログラミングの前にグーグル先生の使い方覚えろよ
0313名前は開発中のものです。
2014/10/05(日) 09:46:06.79ID:aV15d1fGhttp://code.msdn.microsoft.com/windowsdesktop/10-4ca748ce
0314名前は開発中のものです。
2014/10/05(日) 10:35:25.80ID:Y65zx5bAhttp://en.wikipedia.org/wiki/List_of_installation_software
0315名前は開発中のものです。
2014/10/11(土) 14:23:54.11ID:W7Sb4d1k触れている間、すごい勢いでHPが減ってしまいます
その攻撃は一回だけダメージを受けてあとは無視したいんですが、どういうふうに実装すればいいのかわかりません
キャラクターが直前の受けた攻撃を覚えるというのでもいいんですが、「連続攻撃」などがあるため、兼ね合い上無理です
0316名前は開発中のものです。
2014/10/11(土) 14:31:25.31ID:yKOIaJY/その攻撃にリスト持たせて相手の参照保持するとか
0317名前は開発中のものです。
2014/10/11(土) 15:52:45.46ID:VK47TOFi・無敵時間を作る
・触れてる間ずっと減るという前提で威力を調節する
このへんか?
0318名前は開発中のものです。
2014/10/11(土) 19:19:54.03ID:ftnQTcbt一回ダメージを主人公に与えた敵キャラは主人公に再ダメージ与えるには一定時間かかるようにするとか
連続攻撃の時だけインターバル無効にして
0319名前は開発中のものです。
2014/10/12(日) 05:36:54.90ID:H/GXxxmgあのクッソ高いVisualStudioProfessional2013とか使ってんの?
0320名前は開発中のものです。
2014/10/12(日) 05:45:57.20ID:EhXtC2jR0321名前は開発中のものです。
2014/10/12(日) 07:49:44.05ID:J+1JVnSpいや、使ってるのはVisual Studio Professional 2012だ
数年おきに買い換えてるけどね
0322名前は開発中のものです。
2014/10/12(日) 07:55:19.92ID:/BVTES1n0323名前は開発中のものです。
2014/10/12(日) 08:01:53.97ID:J+1JVnSp・Windows8アプリを作れる
後、何があったかな?まあ、買う意味はあまり無かったが
0324名前は開発中のものです。
2014/10/12(日) 08:05:24.48ID:J+1JVnSpというのがあったか
0325名前は開発中のものです。
2014/10/12(日) 08:23:20.45ID:lmLFkKE0Intel コンパイラもアドインとして実装だし
アプリ作るのにMFCよりATLがついてるのとリソースエディタがあるのが楽
ゲーム向けといえばシェーダデバッガが使える。Pixは使えない環境が増えたから
0326名前は開発中のものです。
2014/10/12(日) 08:29:03.38ID:5ggxpAbS0327名前は開発中のものです。
2014/10/12(日) 08:38:04.82ID:J+1JVnSp検索しても概念しか出てこないんだが
0328名前は開発中のものです。
2014/10/12(日) 08:47:31.90ID:M/9KBN8Z商業利用は可能らしい
0329名前は開発中のものです。
2014/10/12(日) 10:27:41.59ID:SHzxfoNm0330名前は開発中のものです。
2014/10/12(日) 11:20:36.06ID:xlzIAwTnVisualStudioのProfessionalを使う意味があると感じている
DirectXを直接叩かない人には恩恵は殆どないかもしれないが
0331名前は開発中のものです。
2014/10/12(日) 12:00:27.61ID:dKaNtW9R比べてるのVS2010だけどnamespaceのごとにフォルダ作るのとかめんどくさくない?
0332名前は開発中のものです。
2014/10/12(日) 21:20:23.78ID:Xey/qQ/10333名前は開発中のものです。
2014/10/12(日) 23:04:27.97ID:H/GXxxmgExpress2013で実行ファイルのアイコンって変えられないのか?
0334名前は開発中のものです。
2014/10/12(日) 23:06:08.28ID:fyt7rxnY0335名前は開発中のものです。
2014/10/12(日) 23:17:56.44ID:V7vL1J090336名前は開発中のものです。
2014/10/13(月) 00:33:49.65ID:hzHBieoQ表示→その他のウィンドウ→リソースビュー→該当アイコン
0337名前は開発中のものです。
2014/10/13(月) 01:34:31.59ID:uF6f/HdY0338名前は開発中のものです。
2014/10/13(月) 12:10:48.20ID:OHHj8O/3if(hoge != NULL && hoge->a == 1)
0339名前は開発中のものです。
2014/10/13(月) 12:30:34.27ID:rKI73evO0340名前は開発中のものです。
2014/10/13(月) 13:18:53.44ID:X0f4tC8kってかそれぐらい自分で適当にテストすればいいんじゃ
0341名前は開発中のものです。
2014/10/13(月) 14:58:01.00ID:Qf2MnFbB不具合の原因になるよ
0342名前は開発中のものです。
2014/10/13(月) 15:12:08.33ID:rsHrWC8oどちらを読んでも目眩がする。
0343名前は開発中のものです。
2014/10/13(月) 15:49:22.33ID:Fnhb7LNv0344名前は開発中のものです。
2014/10/13(月) 16:36:57.29ID:hzHBieoQ知り合いの言語仕様にやたら詳しい人がこういうコード書いてたから、今は大丈夫なんだろうと思うが
昔は、式の中がどういう順で評価されるかはコンパイラ依存だったはずなので、こういうコードは NG だった
自分は不安なので2段階に分けてる
0345名前は開発中のものです。
2014/10/13(月) 16:48:29.25ID:rsHrWC8o0346名前は開発中のものです。
2014/10/13(月) 17:11:00.07ID:kMnfNib9だから、>>338の文は言語仕様的には問題ないよ
0347名前は開発中のものです。
2014/10/13(月) 17:16:52.97ID:obVPXN/U0348名前は開発中のものです。
2014/10/14(火) 03:20:21.89ID:EcN5Ngh+ちょくちょく出てこない?
安全に使いたいとか。
0349348
2014/10/14(火) 03:33:56.66ID:EcN5Ngh+あんまり的確な例とは言えないかも。申し訳ない。
例えば単純なゲームプログラムで、Enemyクラスを用意し、これとプレイヤーキャラの当たり判定をしたいとする。
当たり判定を行って、接触してないと判定されたらミス処理はスルー。
また当然ながら、敵データがまだ生成されてない(nullptr)なら、当たり判定を行うまでもなくミス処理はスルー。
こんな感じのときに>338は使えると思う。
もちろん、最初に全部生成してからフラグで管理しろよとか、リストで管理しろよとか、他にも方法はあるだろうけど。
0350名前は開発中のものです。
2014/10/15(水) 11:58:17.17ID:KHlvqLu2こういうの参考サイトに載ってなくて…
0351名前は開発中のものです。
2014/10/15(水) 14:43:08.97ID:/0utetRgチャットウィンドウに投げるなり、吹き出しクラスを生成するなり…かなあ?
それとも、2Dゲームだと出来るけど、3Dゲームだと出来ない問題ってこと?
0352名前は開発中のものです。
2014/10/16(木) 00:04:46.56ID:6yN2mL4I改善したい場合、どこがボトルネックになってるかを知る必要があるじゃない?
これを視覚的に確認する方法ってないのかな?
GPUViewってのがあったみたいだけど、今は入手できない?
0353名前は開発中のものです。
2014/10/16(木) 01:44:49.63ID:RD+zBY34GPUのオーバーヘッドを調べるならVisualStudio2012以降のグラフィックステバッグか、
VisualStudioアドオンのnVidiaNSight
あとDirectXSDKについてくるPIXとか
0354名前は開発中のものです。
2014/10/16(木) 14:07:15.58ID:QS36hJY2まとめられるのは2D描画だけだと思うけど
0355名前は開発中のものです。
2014/10/16(木) 14:11:40.09ID:iU5kylbT0356名前は開発中のものです。
2014/10/16(木) 15:57:05.99ID:XA7dLBCP0357352
2014/10/16(木) 23:15:25.79ID:6yN2mL4Iやはり、そのあたりですかね。
http://game.watch.impress.co.jp/img/gmw/docs/586/729/html/gra_53.jpg.html
http://game.watch.impress.co.jp/img/gmw/docs/586/729/html/gra_54.jpg.html
http://game.watch.impress.co.jp/img/gmw/docs/586/729/html/gra_55.jpg.html
http://game.watch.impress.co.jp/img/gmw/docs/586/729/html/gra_56.jpg.html
これ、PSVitaのゲーム開発環境の解析画面なんだけど、こういう感じで見たいなぁ。
>>354
DirectXTKのPrimitiveBatchで、異なるトポロジ(三角ポリと線)を頻繁に切り替えながら描画
(切り替わる度にDrawコールされる)してしまっていたのをできるだけまとめて描画するようにしたら、
Debugモード時に4倍くらいfpsが上がってマジ感動した。
Releaseモードは、わずかに向上するか、ほとんど変わらないときもあった。
>まとめられるのは2D描画だけだと思うけど
3Dモデルならジオメトリインスタンシングが使えるケースがあるね。
0358名前は開発中のものです。
2014/10/16(木) 23:59:18.32ID:mNWrvpmfDrawCall単位で何マイクロ秒かかってるかってのを測定して
CSVかXMLでエクスポートすることはできるみたい
0360名前は開発中のものです。
2014/10/17(金) 10:58:36.38ID:i0zyuJTBおう、諦めな
0361名前は開発中のものです。
2014/10/17(金) 22:20:59.73ID:t1QiiFRycocos2d-xやろうぜ(´・ω・`)
0362名前は開発中のものです。
2014/10/19(日) 21:58:12.45ID:A4TBNuX7プログラミングよりストア登録とか素材作りでつみそう
0363352
2014/10/19(日) 22:56:32.89ID:Me3iytM1このスライドの33枚目にあるようなタスク所要時間の視覚化機能を実装したいなぁ。
GPUの処理時間とか、どうやって計測するんだよ!w
0364名前は開発中のものです。
2014/10/20(月) 06:37:43.13ID:Vt4+cJIA0365名前は開発中のものです。
2014/10/20(月) 11:09:09.21ID:YjayBuJo3Dモデルや絵かける方がよっぽどゲーム作れるぞ
0366名前は開発中のものです。
2014/10/20(月) 11:29:32.25ID:jwhsqWX+絵や話つくりは何とかなりそうなんだけど音関係がなあ・・・
0367名前は開発中のものです。
2014/10/20(月) 11:53:52.64ID:DtF3+BwM絵なんてそれなりのツール使って作品にあった書き方練習すれば半年でなんとかなる
初心者用サイトも多いし
音は何からどうすればいいかわからなくて詰む
0368名前は開発中のものです。
2014/10/20(月) 12:00:13.49ID:wIxNXk0C絵の方がアニメーションとかサイズとか考えると難しいよ
0369名前は開発中のものです。
2014/10/20(月) 12:37:30.84ID:mkykchgR0370名前は開発中のものです。
2014/10/20(月) 13:17:49.07ID:b7HsFQvV■ このスレッドは過去ログ倉庫に格納されています