- 1 名前:名前は開発中のものです。 mailto:sage [2014/01/16(木) 00:00:31.27 ID:w6WW3hAo.net]
- ゲーム製作におけるC/C++全般に関するスレです。
元スレ DXライブラリ 総合スレッド その17 toro.2ch.net/test/read.cgi/gamedev/1383795645/ 前スレ C/C++ゲーム製作総合スレッド Part1 toro.2ch.net/test/read.cgi/gamedev/1337516528/ C/C++ゲーム製作総合スレッド Part2 toro.2ch.net/test/read.cgi/gamedev/1351015269/ C/C++ゲーム製作総合スレッド Part3 toro.2ch.net/test/read.cgi/gamedev/1357899040/ C/C++ゲーム製作総合スレッド Part4 toro.2ch.net/test/read.cgi/gamedev/1376262450/
- 784 名前:名前は開発中のものです。 mailto:sage [2014/05/14(水) 00:50:31.19 ID:qOCHvgWh.net]
- >>756
つ>>663 ついでにnamespaceにぶち込んでもいいのよ
- 785 名前:名前は開発中のものです。 mailto:sage [2014/05/14(水) 00:53:50.93 ID:qOCHvgWh.net]
- >>761
gccでもいつの間にかpragma once使えたりするんだよな あれ、サッサと標準仕様に盛り込めばいいのになと思うよ
- 786 名前:名前は開発中のものです。 mailto:sage [2014/05/14(水) 01:34:53.87 ID:Bv7wzu+p.net]
- だいたいのコンパイラが対応してるみたいだしデファクトスタンダードってところ
- 787 名前:名前は開発中のものです。 mailto:sage [2014/05/14(水) 02:44:20.77 ID:SkdpMvQe.net]
- 効率的には#pragma onceの方がいいと聞いたことはあるが
IDEによるかもしれん
- 788 名前:名前は開発中のものです。 mailto:sage [2014/05/14(水) 03:12:47.17 ID:YePF79fh.net]
- 単純なi nclde guard は力技の処理だけど
pragma once は処理系次第で最適化されてるからね。 複数のプラットフォームを想定するなら 安全策をとって両方記述するのがオススメ。 pragma once があれば効率的に処理してくれるかもしれないし、 もしpragma once を理解できない処理系でも inlude guardは必ず処理してくれるからね。
- 789 名前:名前は開発中のものです。 mailto:sage [2014/05/14(水) 10:10:49.06 ID:2wCAVOdx.net]
- >>766
両方記述?寝言は寝て言えw
- 790 名前:名前は開発中のものです。 mailto:sage [2014/05/14(水) 10:25:37.80 ID:vvdSHZVH.net]
- VC++に#pragma onceが入ってすぐの頃は
自動生成したヘッダには#pragma onceと#ifndef-define-endifが コンパイラバージョンによって自動で切り替わるように書かれてたと記憶している その辺から考えても、両方書くのは無駄じゃない
- 791 名前:名前は開発中のものです。 mailto:sage [2014/05/14(水) 12:46:41.03 ID:1doe1mvx.net]
- std::mapにenumとかstructを使いたいんだけど
template argument 4 is invalidっていうエラーが出ます 具体的には map<アイテムID(enum型),アイテムパラメータ(struct型)> aaaaa; って感じです。 パラメータっていうのはその名の通りアイテムを装備するとstructのメンバの addHPとかaddMPっていう変数の分だけ上昇する感じで、 使い方はプレイヤーはアイテムIDだけ持っておけば、あとは必要な時々で値だけ取得できるかなという感じです。
- 792 名前:名前は開発中のものです。 mailto:sage [2014/05/14(水) 13:13:18.32 ID:CAIv9eLR.net]
- enum itemID{ID1=0, ID2, ID3, ID4};
struct itemParam{int p1; int p2;}; itemParam param; map<itemID, itemParam> m; m.insert(make_pair(itemID::ID1, param)); こんな感じで動かない?
- 793 名前:名前は開発中のものです。 mailto:sage [2014/05/14(水) 13:15:39.85 ID:Ocn3g8OS.net]
- >>769
比較関数がないって怒られてるんじゃね 一つ目の型を enum型じゃなくて int に変更するわけにはいかないの?
- 794 名前:名前は開発中のものです。 mailto:sage [2014/05/14(水) 14:08:33.50 ID:Ke2wFa7k.net]
- そもそもそれmapにする意味あるのか?
>>733みたいな感じで配列で十分な気がするんだけど
- 795 名前:名前は開発中のものです。 mailto:sage [2014/05/14(水) 15:29:04.69 ID:Ocn3g8OS.net]
- map だと必要な分だけ使えるじゃん
0〜 イベントアイテム 10000〜 武器 20000〜 鎧 みたいに
- 796 名前:名前は開発中のものです。 mailto:sage [2014/05/14(水) 16:29:43.89 ID:YPHrxvGY.net]
- enum使うなら10000から武器みたいな区分けがそもそも必要ないと思うんだけど
- 797 名前:名前は開発中のものです。 mailto:sage [2014/05/14(水) 21:01:01.54 ID:qOCHvgWh.net]
- >>769
それ、>>770で動きますよ >>772-774 仮に、実行時に追加削除更新等なし、静的、参照専用、の情報の集合 という前提条件であればstd::map(赤黒木)を使う合理性はあまりないかな >>773のようにキー番号が連続してないのでれば、ハッシュマップの類の ほうが向いてますね research.preferred.jp/2011/07/stllike-containers/ 補足:記事中のLoki::Assoc
- 798 名前:Vectorとほぼ同じものとしてboost::flat_map
もあります。でも、>>774の言う通り、結局vectorでおkにもできますね ま、完成しない(動かない)事に比べればどれ選んでも瑣末な違いなので (特に昨今のPCなら)好きなの選べばいいかと思います。身も蓋もないね [] - [ここ壊れてます]
- 799 名前:名前は開発中のものです。 mailto:sage [2014/05/14(水) 23:37:56.68 ID:XQ3tGmyB.net]
- >>770
enumの最初を0と明示するだけで変わるんです?
- 800 名前:名前は開発中のものです。 mailto:sage [2014/05/15(木) 13:17:04.58 ID:vi3A9MFw.net]
- 変わらないですよ。試せばすぐ分かりますけど、ム板のスレに誘導されたいです?
- 801 名前:名前は開発中のものです。 mailto:sage [2014/05/15(木) 17:35:02.68 ID:CM4Haxt/.net]
- 普通に動くよね
コンパイラのバージョンとかで古いのだと駄目なのかな
- 802 名前:名前は開発中のものです。 mailto:sage [2014/05/15(木) 19:15:22.94 ID:D0s76qwM.net]
- 実は全然違うところでエラー出てるんじゃないの
- 803 名前:名前は開発中のものです。 mailto:sage [2014/05/16(金) 15:57:03.11 ID:RLWXI/UA.net]
- ナビメッシュのやり方が書いてある本とかサイトとかってある?
- 804 名前:名前は開発中のものです。 mailto:sage [2014/05/16(金) 23:45:36.07 ID:bSd/X954.net]
- > とかってある?
ありますよ navigation mesh pathfinding algorithm game waypoint graph search など適当なキーワードでググるといいです。動画によるアルゴリズムの 解説も出てきますね。書籍ならAI Game Programming Wisdom 4 が 個人的にオススメです
- 805 名前:名前は開発中のものです。 mailto:sage [2014/05/17(土) 09:32:46.40 ID:a+6vW56R.net]
- そういうのって概要だけ聞いて自分で考えて作った方が早くない?
サンプルコードみても理解するのに時間がかかるわ
- 806 名前:名前は開発中のものです。 mailto:sage [2014/05/17(土) 10:01:46.81 ID:ATk/Gp35.net]
- ゲームプログラミング本といえばGameProgrammingGemsシリーズなんだかな
最近の若者は読まないのか
- 807 名前:名前は開発中のものです。 mailto:sage [2014/05/17(土) 11:06:25.43 ID:7UqYAydx.net]
- 現代の技術の世界において
英語が読めないのは脳が半分無いのと同じ。 それだけのこと。
- 808 名前:名前は開発中のものです。 mailto:sage [2014/05/17(土) 12:01:48.26 ID:G1g9tldj.net]
- 翻訳したやつ読めば
- 809 名前:名前は開発中のものです。 mailto:sage [2014/05/17(土) 12:34:45.87 ID:/WeYTHrm.net]
- 英語読めてもソースコード読めなかったりするし
プログラムは勉強したところでコード書けないのが大半らしいな 元々作文が下手とかそういう次元ではなく理解できないとか
- 810 名前:名前は開発中のものです。 mailto:sage [2014/05/17(土) 12:40:03.20 ID:o9p3b0z7.net]
- そもそも日本語で書いてあるプログラム解説書だって意味わかんないよw
- 811 名前:名前は開発中のものです。 mailto:sage [2014/05/17(土) 13:44:47.33 ID:7UqYAydx.net]
- >>785
半年遅れで付いていく人間は残念ながら奴隷で終わるよw 英語ができて最先端に追従する奴、ときには自分が最先端を発信する奴に 「あ、こいつバカだなww」と思われながら生きる惨めな三流人生が待っている。 それで良ければ英語なんて学ぶ必要はない。 まぁ、普通は(普通の知性の持ち主は、という意味) 修士課程で英語の論文を死ぬほど読んで 「喋れないけど読める」という妙な英語力を身につけられるんだけどねw
- 812 名前:名前は開発中のものです。 mailto:sage [2014/05/17(土) 14:19:53.26 ID:ZLhv9Phh.net]
- 相変わらず病んでますね
- 813 名前:名前は開発中のものです。 mailto:sage [2014/05/17(土) 14:53:46.32 ID:k3uAdR/A.net]
- とりあえずナビメッシュのやり方教えて
- 814 名前:名前は開発中のものです。 mailto:sage [2014/05/17(土) 17:55:58.84 ID:ZLhv9Phh.net]
- 780の人ですか?
具体的に何をやってみてどこでつまずいてるのか話せば答えやすくなるかと
- 815 名前:名前は開発中のものです。 mailto:sage [2014/05/17(土) 18:02:04.88 ID:G1g9tldj.net]
- www.lameije.co.jp/navigationmesh.html
これじゃあかんのか
- 816 名前:名前は開発中のものです。 mailto:sage [2014/05/18(日) 17:48:20.69 ID:bAjzsQ9M.net]
- オクツリーに障害物を表示させたいんだけど、オクツリーのある場所がどの座標なのかを
- 817 名前:調べる方法ってある? []
- [ここ壊れてます]
- 818 名前:名前は開発中のものです。 mailto:sage [2014/05/18(日) 21:18:36.16 ID:uYYY8hgN.net]
- ボクセルのインデックスを座標のビット配列にしてインデックスからボクセルの位置を取得
marupeke296.com/COL_2D_No8_QuadTree.html これを3ビット毎にすれば出来ると思うんだがどうだろ
- 819 名前:名前は開発中のものです。 [2014/05/19(月) 04:39:02.31 ID:XNC2jE/Y.net]
- この入門?みたいなサイトで勉強してたんだけどつまづいたので分かる方いたら教えてください
bituse.info/game/shot/11 for(int i=0;i<ENEMY_NUM;++i){ enemy[i]=new ENEMY(data[i].type,data[i].stype,data[i].m_pattern,data[i].s_pattern,data[i].in_time,data[i].stop_time,data[i].shot_time,data[i].out_time,data[i].x,data[i].y,data[i].speed,data[i].hp,data[i].item); } ↑この文の enemy[i]=new ENEMYのイコールのところでオペランドと一致する演算子なんてねぇよって怒られます 原因として考えられるものってなんでしょうか? for(int i=0;i<ENEMY_NUM;++i){ enemy = new ENEMY[i](省略); } だったらいけるみたいなんですけど、違いがよくわからないです・・・
- 820 名前:名前は開発中のものです。 mailto:sage [2014/05/19(月) 05:31:35.17 ID:FdnDAUlP.net]
- enemyの型がポインタの配列になってないんじゃないの
- 821 名前:名前は開発中のものです。 mailto:sage [2014/05/19(月) 10:00:14.39 ID:hjxHIKHc.net]
- こうかな
正:ENEMY *enemy[ ENEMY_NUM ]; 誤:ENEMY *enemy; サイトを見ると省かれてるみたいだけど 敵を複数出すようにした時点で enemy を配列に変更しないといけない
- 822 名前:名前は開発中のものです。 mailto:sage [2014/05/19(月) 11:05:51.60 ID:CSMuM09V.net]
- これコンストラクタの引数なんで構造体の参照渡しじゃないのか
無駄に読みにくいわ
- 823 名前:795 mailto:sage [2014/05/19(月) 11:33:54.01 ID:XNC2jE/Y.net]
- できました。
ご指摘の通り、enemyを配列にしたら無事にコンパイルできました。 ちょっと私にはわかりにくいサイトだったようなので別のところで勉強してみます・・・
- 824 名前:795 mailto:sage [2014/05/19(月) 11:34:28.24 ID:XNC2jE/Y.net]
- お礼を忘れていました
ご指摘ありがとうございました。
- 825 名前:名前は開発中のものです。 [2014/05/23(金) 00:32:00.04 ID:61iiZtPG.net]
- おらLAMPしか知らないんだけども
C++で作ったリアルタイムなネットワークゲームのオンラインサーバって どういう環境で動いてんだべ? ソシャゲならPHPでhttpでいいかもしんねけども、 ネトゲって実行ファイル動かし続けてんのかね
- 826 名前:名前は開発中のものです。 mailto:sage [2014/05/23(金) 00:34:30.27 ID:BlMjMm70.net]
- >>801
お前から感じるそのしったか臭は一体何なんだ?
- 827 名前:名前は開発中のものです。 mailto:sage [2014/05/23(金) 01:25:45.01 ID:61iiZtPG.net]
- >>802
そんなこと言っても知りたいってのは本当なんだけど ていうかソシャゲってphpでhttp返してるって聞いたんだが違うのか ソース3種類ぐらい別のところから聞いたからそうだと信じてたけど
- 828 名前:名前は開発中のものです。 mailto:sage [2014/05/23(金) 01:54:24.22 ID:W5hvE4XG.net]
- 上から目線だと>>802みたいなのが湧いて終わりw
それがネットの宿命。 和光同塵に励み、 下から目線で質問すると、 「そんなのこと知ってるよヴァカw」ってレベルの奴がトクトクと語り始める。 人生ってのは上手くいかないものだ。 やはりアドヴァイスはリアルな知り合いに、 顔を付きあわせて語り求めるのが一番良い。 ネットで集まってくるのは多くの場合クズだ。
- 829 名前:名前は開発中のものです。 mailto:sage [2014/05/23(金) 04:11:24.69 ID:R2Hq6koN.net]
- >「そんなのこと知ってるよヴァカw」ってレベルの奴がトクトクと語り始める。
そうかな。 知ったかが知ってる振りをして偉そうにした挙句、何も実のあることは言わずに去るだけな気もするが。
- 830 名前:名前は開発中のものです。 mailto:sage [2014/05/23(金) 06:08:22.99 ID:61iiZtPG.net]
- いや質問してるんだけど
- 831 名前:名前は開発中のものです。 mailto:sage [2014/05/23(金) 08:01:15.27 ID:VwzG+tx8.net]
- 知ったかだけど
C/C++ならOSのAPIかライブラリ使ってTCPとUDP使い分けでしょ PHPでもソケット通信
- 832 名前:出来るらしいし言語はなんでもいいんじゃないの
実行効率の問題はあるだろうけど [] - [ここ壊れてます]
- 833 名前:名前は開発中のものです。 mailto:sage [2014/05/23(金) 08:49:57.28 ID:UZe2P6GU.net]
- 個人のゲーム製作でC++使うメリットってあるかな?
Cの方が小回り効くし使いやすいと思うんだが
- 834 名前:名前は開発中のものです。 [2014/05/23(金) 08:57:29.89 ID:WZOW9ZIo.net]
- C++のほうがゲーム向き。
基本的にC言語の機能を全て含んでいて、追加部分を使いたくなれば使わなければいいだけ。 使って便利な機能を使うことで開発効率は上がる。
- 835 名前:名前は開発中のものです。 mailto:sage [2014/05/23(金) 09:01:24.07 ID:UZe2P6GU.net]
- 多人数やチームで作るなら保守性とか高いし必要だとは思うんだけど
個人製作なら手続きが多い分無駄な気がするんだよね>C++
- 836 名前:名前は開発中のものです。 mailto:sage [2014/05/23(金) 09:24:40.27 ID:J41CukcG.net]
- 複数のゲームオブジェクトが相互作用するような場合はポリモーフィズム使うと楽になる
継承して独自の部分実装すれば新しいオブジェクト作れるしメンテもしやすい
- 837 名前:名前は開発中のものです。 mailto:sage [2014/05/23(金) 09:25:32.36 ID:gVP8nGPF.net]
- 準備されてるクラスライブラリが圧倒的にC++の方が便利
- 838 名前:名前は開発中のものです。 mailto:sage [2014/05/23(金) 09:32:14.08 ID:mJ3PfvgI.net]
- スマートボインタとかCじゃできないしな
- 839 名前:名前は開発中のものです。 mailto:sage [2014/05/23(金) 09:40:35.21 ID:61iiZtPG.net]
- 構造体でオブジェクト表現してるのか
- 840 名前:名前は開発中のものです。 mailto:sage [2014/05/23(金) 10:13:18.75 ID:UZe2P6GU.net]
- 構造体でほとんど間に合うと思うんだよな。
トリッキーに何しても怒られないし。
- 841 名前:名前は開発中のものです。 mailto:sage [2014/05/23(金) 10:19:18.29 ID:3Qz0nlZE.net]
- C++使ったらコードの見通し良くなって楽ってだけで、Cに慣れてるならそりゃCの方が楽
ミニゲーム程度ならどっち使っても変わらん
- 842 名前:名前は開発中のものです。 mailto:sage [2014/05/23(金) 10:21:23.05 ID:u1Ct/Di+.net]
- 構造体を引数としてとる関数は文が長くなりがち
構造体に関数ポインタ入れるより仮想関数のが簡潔に書けるし分かり易い 名前空間がないと名前の衝突が起こるから冗長なプリフィクスが必要になる DirectXとかCOM周りはC++のが簡潔に書ける
- 843 名前:名前は開発中のものです。 mailto:sage [2014/05/23(金) 10:35:11.17 ID:UZe2P6GU.net]
- 慣れてるせいなんだろうけど関数ポインタで簡潔に書けちゃうんだよな。
むしろ手続きや決まりごとの分C++の方が長くなっちゃうんだよ。 スマートポインタも俺からするとプログラマが解放し忘れてても勝手に解放って逆に怖いと思うんだよ。 メモリの使用状況なんかデバッグ画面かなんかで常に確認するべきだしメモリの解放は意識してやりたいなあ。
- 844 名前:名前は開発中のものです。 mailto:sage [2014/05/23(金) 10:48:05.07 ID:u1Ct/Di+.net]
- 意識してスマートポインタ使うんだから開放されるタイミングは判る
気にしないのは実装部分だけ いくら自前で管理しようとも例外をsetjump/longjumpで無理やり組むしかないCには容易には出来ない安全性もある 逆にオーバーロードとかコピーが複雑なので頼ったほうが良いC++の悪さの部分でもあるが
- 845 名前:名前は開発中のものです。 [2014/05/23(金) 10:50:19.88 ID:WZOW9ZIo.net]
- 自動開放で平気だ。
かなりの言語が強制て自動開放を取り入れている。 パフォーマンスだけの問題だろう。
- 846 名前:名前は開発中のものです。 mailto:sage [2014/05/23(金) 10:59:56.27 ID:UZe2P6GU.net]
- 俺がアセンブラ時代から組んでるせいなんだろうけど自動解放って怖いんだよな。
メモリの管理状況やクリアも全部自前のプリミティブな関数でやりたいと思っちゃうんだよな。 まあ気にし過ぎなのかもしれないね。 昔はCも最適化が甘くてオーバーヘッドが酷かったからどうも知らない間にメモリを触られてたりするのが信用できなくてなあ。
- 847 名前:名前は開発中のものです。 mailto:sage [2014/05/23(金) 11:06:17.74 ID:u1Ct/Di+.net]
- スタックの自動開放も怖いのかい?寿命で消えるのは同じことだよ
アセブンブリ出力みてりゃ大したことやってないよ
- 848 名前:名前は開発中のものです。 [2014/05/23(金) 11:12:25.32 ID:WZOW9ZIo.net]
- C言語のauto変数も勝手に開放するな
- 849 名前:名前は開発中のものです。 mailto:sage [2014/05/23(金) 11:14:29.88 ID:UZe2P6GU.net]
- ま、俺の気にし過ぎなんだろうね。
初心者が構造体のコピーとか平気で書いちゃってんの見てビックリしたりする方だからさ。 記述は簡潔だけどその一文でどのくらいオーバーヘッドかかってるかわかって書いてんのか?とか思っちゃうんだよ。 簡易なコード記述の生産性と実行速度は別なんで、その辺はなるべくコワモテでいいんじゃないかと思うんだよ。
- 850 名前:名前は開発中のものです。 [2014/05/23(金) 11:15:51.86 ID:WZOW9ZIo.net]
- CとC++の話で自動開放の話になるのがそもそもおかしいな。
C++はガベージコレクションを取り入れたわけでなく、メモリ管理についてはCと大差ないだろ。 Cでもスマートポインタ使えるだろ。
- 851 名前:名前は開発中のものです。 mailto:sage [2014/05/23(金) 11:16:04.73 ID:wh7XodOP.net]
- ID:UZe2P6GU
わかる。deleteのタイミングって自分で管理したい。 そもそも、スマートポインタに頼ろうという発想が出る時点で、 そのソースはすでにごっちゃになってないかと問いたい。
- 852 名前:名前は開発中のものです。 mailto:sage [2014/05/23(金) 11:25:27.68 ID:LtRYMhK0.net]
- スマポのソース見ればどうなるかきっちりわかるんだから見てみりゃいいじゃん
- 853 名前:名前は開発中のものです。 mailto:sage [2014/05/23(金) 11:28:39.46 ID:u1Ct/Di+.net]
- >>826
好きな時にnullptrを入れて開放してもいいんだぜ スマートポインタのオブジェクトの寿命=解放のタイミング、一部がコピーで寿命が移動するだけなんだから Cでmallocしたポインタの値を見失うことがないようなプログラムの組み方ならごっちゃにならない
- 854 名前:名前は開発中のものです。 mailto:sage [2014/05/23(金) 11:33:42.15 ID:CnVFPzVq.net]
- 関数のデストラクタとかあれば良いのにな
- 855 名前:名前は開発中のものです。 [2014/05/23(金) 11:33:43.66 ID:WZOW9ZIo.net]
- Boehm GC を使う
The Boehm-Demers-Weiser conservative garbage collector (Boehm GC) は、C言語用のメジャーなガベージコレクタ。 さまざまなソフトウェアがこのライブラリを使っている。 ガベージコレクタを使うと、メモリを好きなだけ確保するだけでよく、解放は自動的にしてくれる。 巨大なメモリを明示的に解放するような場合のほかは、メモリを解放するコードを書く必要はない。 Boehm GCは、保守的GCという方法でガベージコレクトする。定期的にメモリ内を走査し、使われていないと見られるオブジェクトのメモリを回収していく。 Boehm GC以外では、boost::shared_ptrが参照カウント方式を用いている。 www.nslabs.jp/boehmgc.rhtml
- 856 名前:名前は開発中のものです。 mailto:sage [2014/05/23(金) 11:38:28.27 ID:Q1W0mucT.net]
- プログラマがコントロール出来ないGCは処理落ちの原因になるからやめた方がいい
- 857 名前:名前は開発中のものです。 mailto:sage [2014/05/23(金) 11:41:53.89 ID:UZe2P6GU.net]
- >>831
同感。こういうのが嫌なんだよ。 記述上だけでスマート・簡潔に組めたつもりで実際は実行速度がグダグダになってる。
- 858 名前:名前は開発中のものです。 mailto:sage [2014/05/23(金) 11:45:53.20 ID:wh7XodOP.net]
- >>827
? >>828 そもそもの動機だよ。誰がスマートポインタをなぜ欲しがるのかってこと。 既にnew/delete対応なんてスッキリハッキリ管理されてるはず。 スマートポインタが活躍する一部場面がある、というのなら限定的に使っていいと思うが、 それはそれ、それだけのこと。 あとたぶん、ID:WZOW9ZIoはもう喋らないほうがいいな。 >>831 たとえばC#でゲームつくってるとGC動かさないように気をつかったり、 GCの実装に振り回されたり、なんとも滑稽な事態に陥るw
- 859 名前:名前は開発中のものです。 mailto:sage [2014/05/23(金) 12:03:37.45 ID:HE2P9lkw.net]
- >>833
標準ライブラリとかboostのソースコードにスマポのソースコードあるでしょ? それ見ればどういうタイミングで解放されるかわかるんだからきっちり自分でコントロールできる
- 860 名前:名前は開発中のものです。 mailto:sage [2014/05/23(金) 12:04:27.91 ID:u1Ct/Di+.net]
- >>832
他所の実装の関数呼び出しで見た目だけ簡潔に組めたとしても、その関数が遅いかは不明だからな スマートポインタと全く違うGCは要らないけどな >>833 動機なんて解放のコードがあちこちにあるより最初に決めておいた方が楽だろ newは一個でも同じような解放コードのdeleteがあちらこちらの関数に書かれていて 分岐によりそれが実行されるかは不明よりはいいと思うので デストラクタのおかげで関数後半にfreeが消えるだけでも記述、確認の手間も省ける コストも結局開放するのなら軽いunique_ptrみたいのならCと変わらんよ shared_ptrをスマートポインタと想定して言ってるのかもしれんが スマートポインタなくてもCよりC++のが楽にはなったと思うけどな Cから移行したときは同名関数の引数違いのオーバーロードですらありがたいよ
- 861 名前:名前は開発中のものです。 mailto:sage [2014/05/23(金) 12:19:19.44 ID:wh7XodOP.net]
- >>835
new/deleteの対応がおぼつかないようなコードは既に臭ってる。 俺の言いたいことはアンタには十分伝わっている気がするんで終わる。 > 引数違いのオーバーロードですらありがたいよ それよ。名前空間とオーバーロード。 これだけで名前に関する負担が減って十分嬉しい。
- 862 名前:名前は開発中のものです。 mailto:sage [2014/05/23(金) 12:40:36.19 ID:RKONZ/AN.net]
- スマポって仕組みよくわからんのだけど参照カウントという奴をオペレーターに仕込むのか?
プログラマが代入するたびにカウント++するわけじゃないだろうし
- 863 名前:名前は開発中のものです。 mailto:sage [2014/05/24(土) 02:12:28.67 ID:+nV/dxKWG]
- >>837
スマポ=参照カウンタではない C++11のスマポはunique,shared,weakの3種類ある
- 864 名前:名前は開発中のものです。 mailto:sage [2014/06/08(日) 14:02:34.45 ID:pt28O8XW.net]
- UIならシーンの初期化の時に全部読み込むだろうし、その時にソートしとけばいいんじゃないの
- 865 名前:名前は開発中のものです。 mailto:sage [2014/06/08(日) 14:07:29.29 ID:tkJLCxRy.net]
- そもそも2Dの優先順位の決定にレイを飛ばす理由が不明、
画像のインスタンスを見るというのも意味不明。
- 866 名前:名前は開発中のものです。 mailto:sage [2014/06/08(日) 15:23:55.84 ID:yGlWShIZ.net]
- レイ撃ってヒットの逆順に描画するんじゃないの
無駄過ぎて鼻水吹き出しそうな話だけど 画像のインスタンスって言ってんのはスプライトの事かな
- 867 名前:名前は開発中のものです。 mailto:sage [2014/06/08(日) 19:22:29.67 ID:8RotVtW9.net]
- クリックした要素が何かを探したいんだろうけど
画面を経由する必要があるほど不定形でぐにゃぐにゃしたUIなんだろうか もしどうしてもやる場合は 俺ならオフスクリーンバッファにどのUIがトップかを書くかな
- 868 名前:名前は開発中のものです。 mailto:sage [2014/06/08(日) 22:43:04.22 ID:vGgKRzGn.net]
- z値をインデックスにすれば深度マップで取得できるんじゃね?
と思ったけど、vramアクセスはパフォーマンス悪そうだな
- 869 名前:名前は開発中のものです。 mailto:sage [2014/06/09(月) 13:50:23.16 ID:z2Jj9BRG.net]
- OpenGLのポリゴン描画で影を描画すると、影が赤くなるんだけど、黒くする方法ってある?
スレチだったらごめん・・・
- 870 名前:名前は開発中のものです。 mailto:sage [2014/06/09(月) 15:07:01.85 ID:F4+Sq4Or.net]
- 方法も何も、そもそも赤くするコードを書かない限り赤くならない。
- 871 名前:名前は開発中のものです。 mailto:sage [2014/06/09(月) 15:12:29.18 ID:HlN0nBf5.net]
- 「プログラムは思ったとおりには動かない。書いた通りに動く」ってな
物凄いレアケースでハードウェア絡みかもしれんが もう一度コードを見直しが先決かねえ
- 872 名前:名前は開発中のものです。 mailto:sage [2014/06/09(月) 18:40:16.51 ID:EHfKfPgC.net]
- エスパーするが
色構造体のバイトオーダー間違ってないか
- 873 名前:名前は開発中のものです。 mailto:sage [2014/06/09(月) 22:51:10.63 ID:OtG7NFYQ.net]
- OpenGLで通常のモデルはちゃんとでて、影だけおかしいとかだと、
LIGHTINGやTEXTUREのEnable/Disableの切り替え忘れとかがありがちかなぁ
- 874 名前:名前は開発中のものです。 [2014/06/09(月) 23:44:28.20 ID:hvcdW5Tu.net]
- DXライブラリをEclipseで使うやり方を教えて下さい。
詳細に教えてなんて言わないんで、解説してくれているサイトを教えて下さい。 情報が少なすぎるのか、調べ方が悪すぎるかのどちらかで、
- 875 名前:アホな初心者にはできません。 []
- [ここ壊れてます]
- 876 名前:名前は開発中のものです。 mailto:sage [2014/06/09(月) 23:45:24.91 ID:6mNjaANt.net]
- GL_REDの影テクスチャをそのまま掛けてるとか?
vec3 out = in * texture2D(shadow, uv).rrr; みたいにする。
- 877 名前:名前は開発中のものです。 mailto:sage [2014/06/09(月) 23:53:17.10 ID:Cpf1syLL.net]
- >>849
「exlipse DXLib」の検索ワードだけでゴロゴロ出てきたんだが?
- 878 名前:名前は開発中のものです。 mailto:sage [2014/06/10(火) 00:12:02.20 ID:U4gTkVOf.net]
- >>851
ageてしまった。 それは以前にやったのですが、よく理解できませんでした。 ttp://moge32.jugem.jp/?eid=136 検索2位(1位は繋がらない)ここに書いてあることは直接Eclipseのことを書いてないように思うのですが、 これが必要最低限の情報だったりするんですか?
- 879 名前:名前は開発中のものです。 mailto:sage [2014/06/10(火) 00:57:17.61 ID:SZhDftiM.net]
- そのキーワードでググって1位見れたよ。
何か重くて表示されなかっただけでね。 キャッシュからも表示できたし。
- 880 名前:名前は開発中のものです。 mailto:sage [2014/06/10(火) 07:35:08.91 ID:iWwQEe0D.net]
- よく知らないが、Eclipseで、
ライブラリのパスを参照設定するだけじゃないの? 他に、何かすることがあるの?
- 881 名前:名前は開発中のものです。 mailto:sage [2014/06/10(火) 10:32:37.64 ID:+XEl/HM2.net]
- デバッグや配布時に設定が必要くらいでね
- 882 名前:名前は開発中のものです。 mailto:sage [2014/06/10(火) 10:47:00.49 ID:WVu4972r.net]
- EclipseよりVisualStudioのほうがいいんだけどね
きっとインストール権限ない環境かハードディスク残量の問題なんだろうね
- 883 名前:名前は開発中のものです。 mailto:sage [2014/06/10(火) 15:15:51.09 ID:YWMLszVd.net]
- 宗教上使えない人もいるのです
- 884 名前:名前は開発中のものです。 mailto:sage [2014/06/10(火) 19:07:12.75 ID:O01gD3CA.net]
- 棄教しろバカ。
棄教できなければ.NET framework神に詫びながら死ね。
|

|