- 1 名前:名前は開発中のものです。 mailto:sage [2011/08/18(木) 17:18:15.54 ID:vXmrN4yD]
- Cを習得した程度のスキルでも、
GUIのゲームを比較的容易に作成する事を可能にする、 「DXライブラリ」に関するスレッドです。 DXライブラリに関するテクニックなどの情報交換などを行う事で、 多くのDXライブラリユーザのスキルの向上に役立てたら幸いです。 【公式】 homepage2.nifty.com/natupaji/DxLib/ 【過去スレ】 DXライブラリ 総合スレッド pc11.2ch.net/test/read.cgi/gamedev/1197468399/ DXライブラリ 総合スレッド 2008 pc11.2ch.net/test/read.cgi/gamedev/1224923873/ DXライブラリ 総合スレッド その3 pc11.2ch.net/test/read.cgi/gamedev/1238429676/ DXライブラリ 総合スレッド その4 pc11.2ch.net/test/read.cgi/gamedev/1249822550/ DXライブラリ 総合スレッド その5 pc11.2ch.net/test/read.cgi/gamedev/1259912953/ DXライブラリ 総合スレッド その6 hibari.2ch.net/test/read.cgi/gamedev/1267108154/ DXライブラリ 総合スレッド その7 hibari.2ch.net/test/read.cgi/gamedev/1286180687/ DXライブラリ 総合スレッド その8 hibari.2ch.net/test/read.cgi/gamedev/1301818631/ DXライブラリ 総合スレッド その9 hibari.2ch.net/test/read.cgi/gamedev/1310904069/
- 62 名前:名前は開発中のものです。 mailto:sage [2011/08/21(日) 20:13:03.58 ID:IUtyM1fd]
- >>56
敵が複数登場するようなゲームなら、 いくつかの敵IDの情報を持った敵パーティIDで抽選を行って、 その後、敵IDに応じたデータを読みこんでいけばいいんじゃないかなー って思ったんだ
- 63 名前:名前は開発中のものです。 mailto:sage [2011/08/21(日) 20:20:26.97 ID:3Sq6cAOc]
- ああ、RPGってのを見落としてたw
- 64 名前:名前は開発中のものです。 mailto:sage [2011/08/21(日) 20:23:32.72 ID:KFmwB8iQ]
- >>62
ああ、俺が言いたかったのもそういうことw
- 65 名前:名前は開発中のものです。 [2011/08/23(火) 01:09:17.09 ID:5Swg8Sk+]
- なんか俺素人すぎてif文が大量にあるから嫌になるな
多分完成した頃には重くて、容量でかいのができあがるんだろうな
- 66 名前:名前は開発中のものです。 mailto:sage [2011/08/23(火) 01:13:57.54 ID:5BpZmfJs]
- if文のコストは実は大したことない
乗算除算やループの方がずっと重い 実行ファイルの容量なんか気にする必要ないだろw
- 67 名前:名前は開発中のものです。 mailto:sage [2011/08/23(火) 03:47:11.27 ID:XYlgGojw]
- スレどころか板違いだけど、if文を自動生成するプログラムを見たときは衝撃が走ったぜ…
- 68 名前:名前は開発中のものです。 mailto:sage [2011/08/23(火) 11:18:25.33 ID:Js7ixgY8]
- じゃあソースにあるループ文を全てアンロールするプログラムを
- 69 名前:名前は開発中のものです。 [2011/08/23(火) 11:55:39.56 ID:5Swg8Sk+]
- 前なんかこのスレの風潮でif文は糞みたいな流れがあったぞ
if文の条件を多くするってのは、条件一つにつきif文+1って感じなのか?
- 70 名前:名前は開発中のものです。 mailto:sage [2011/08/23(火) 12:16:04.94 ID:m6CHMGJ4]
- 当たり判定のやつ?
あれも実際は効果あるか怪しそうだけど
- 71 名前:名前は開発中のものです。 mailto:sage [2011/08/23(火) 12:33:19.39 ID:Js7ixgY8]
- >>69
このスレで糞糞言う奴の言葉とか全くあてにならんよ if文の問題点はコードの見通しが悪くなることと仕様変更時に面倒くさいこと 利点は言うまでもないけど早く組めること 利点と問題点を理解して自分にあったスタイルで組めばいいと思う
- 72 名前:名前は開発中のものです。 mailto:sage [2011/08/23(火) 14:39:43.09 ID:LpKAIWaD]
- DrawGraphでの描画速度に限界を感じてきました。
そこでDrawPrimitive2D及びDrawPrimitiveIndexed2Dを使えば 速くなるのでは無いかと考えたのですが、使い方が探しても 見つからなくて困っています。 これらの関数でテクスチャを表示する方法をどなたかご教授 いただけないでしょうか。
- 73 名前:名前は開発中のものです。 mailto:sage [2011/08/23(火) 14:44:21.90 ID:EuwgydXA]
- 俺知ってるけどスレ違いだから教えない
- 74 名前:名前は開発中のものです。 mailto:sage [2011/08/23(火) 14:58:04.31 ID:gBJyAplF]
- ライブラリ変えるかDirectX直接叩いた方がいいような気がしないでもない
- 75 名前:名前は開発中のものです。 mailto:sage [2011/08/23(火) 15:06:37.37 ID:Jx4cybJH]
- スレ違いでもないけど、教えるのは難しいな
昔は公式なリファレンスがあったんだっけ? とりあえず↓をDXライブラリの関数に置き換えて読めば概要はわかるはず これで理解できなかったら使う事自体おすすめしない www.c3.club.kyutech.ac.jp/gamewiki/index.php?DrawPrimitive
- 76 名前:72 mailto:sage [2011/08/23(火) 15:11:36.26 ID:LpKAIWaD]
- >>74
DXライブラリは概ね使いやすくて非常に気に入ってるので、あと描画速度を もう少し何とかできればという感じなのですよね。 >>75 ありがとうございます。 構造体のメンバも同じですし、DirectXの情報を追えばなんとかなりそうですね。 頑張ってみます!
- 77 名前:名前は開発中のものです。 mailto:sage [2011/08/23(火) 15:18:11.27 ID:Jx4cybJH]
- てかDrawGraphで重いって一体どういう状況なんだろう
弾幕STGで、弾毎に頂点カラーで色を決めてるとかそういう感じ……? ブレンドカラーの変更処理ってデフォだとエラーチェックが入るからフレーム毎に1000回くらいで重くなるし
- 78 名前:名前は開発中のものです。 mailto:sage [2011/08/23(火) 15:29:08.46 ID:LpKAIWaD]
- >>77
マップチップの描画処理です。 640*480に16*16のチップを3レイヤー分敷き詰めるとチップ無し のマスもあるので平均して1500くらいの回数に。 で、内蔵グラフィックボードだと60fpsを割ったり割らなかったり。 一応透過pngをLoadDivGraphで読み込んだものを描画してるので SetDrawBlendModeとかはしてないです。
- 79 名前:名前は開発中のものです。 mailto:sage [2011/08/23(火) 15:32:07.66 ID:GFTNdbU8]
- マップチップ画像のサイズは?
- 80 名前:名前は開発中のものです。 mailto:sage [2011/08/23(火) 15:34:41.23 ID:LpKAIWaD]
- >>79
4096*768でARGB32の2.52MBのpngファイルです。
- 81 名前:名前は開発中のものです。 mailto:sage [2011/08/23(火) 15:36:09.16 ID:gBJyAplF]
- 1500ねぇ。オンボだと確かに微妙な数字だな
- 82 名前:名前は開発中のものです。 mailto:sage [2011/08/23(火) 15:37:05.17 ID:GFTNdbU8]
- 試しに256*256とかにしてみたら高速にならんかね
- 83 名前:名前は開発中のものです。 mailto:sage [2011/08/23(火) 15:38:11.89 ID:Jx4cybJH]
- マップチップだったのか
マップチップの最適な描画法ってある気がするんだけどなー
- 84 名前:名前は開発中のものです。 mailto:sage [2011/08/23(火) 15:46:29.02 ID:gBJyAplF]
- 全部16*16でやるんじゃなくて、形が決まってるものは大きいサイズで描画するとか
あとバッファをうまく利用するとか 何とか描画回数を減らすように工夫するのがまず必要だと思う 全部16*16ってのはかなり非効率的だし
- 85 名前:名前は開発中のものです。 [2011/08/23(火) 16:03:28.86 ID:5Swg8Sk+]
- 俺は全然描画に対して不便感じたことないけどな
重かったのは俺が、ミスって毎ゲームループごとにLoadGraphしてた時だった
- 86 名前:名前は開発中のものです。 mailto:sage [2011/08/23(火) 16:04:12.77 ID:gBJyAplF]
- 例えば、草原や床のようなフィルする機会の多いチップは2*2,4*4のような大きいサイズを作っておく
ソースから2*2のような形をそのまま持ってくる場合はその都度Derivationする カリングする(上のレイヤによって完全に塗りつぶされる場合は描画しない) など
- 87 名前:名前は開発中のものです。 mailto:sage [2011/08/23(火) 16:05:11.97 ID:LpKAIWaD]
- >>82
LoadDivGraphの速度は遅くなるけど、ハンドル取得後の描画には 影響しないんじゃないかと思ってましたがどうなんでしょう。 >>84 ですよね。大きな画像を作ってそれに最初にマップチップを全部 描画しておいて、その大きな画像を描画するというのも考えたの ですが、なにぶんゲーム中に一部のチップだけ差し替えたりという 要素があるのでできれば全チップ舐めて描画したいなと。 でもよく考えるとチップ差し替え時に大きな画像の方にそのチップ だけ上描ききすれば良いですね。
- 88 名前:名前は開発中のものです。 mailto:sage [2011/08/23(火) 16:06:07.50 ID:iSTnkg73]
- 俺も同じ事やった事あるな。
640*480で16*16のマップチップを3枚重ねるやつ。 透過pngじゃなかったけど結構負荷がかかった記憶がある。 んで、諦めて一番裏の背景は諦めて一枚絵にしてしまったり、 オプションで二枚目の背景も消せるようにしたりしたなぁ。 まだDXライブラリ使い始めの頃だったけど。 描画の前に重なり具合を調べて、見えなくなる部分は描画しないとかいう手もありかもしれない。
- 89 名前:名前は開発中のものです。 mailto:sage [2011/08/23(火) 16:09:10.07 ID:gBJyAplF]
- >>87
画像サイズはVRAMとメインメモリでスワップが発生してるかどうかが問題かな 計算してみたら4096*768の32bitカラーで12MBの消費だから、それだけではスワップはしないと思うけど
- 90 名前:名前は開発中のものです。 mailto:sage [2011/08/23(火) 16:13:36.75 ID:BZMGrITN]
- DXライブラリは内部的に同じテクスチャならある程度まとめ書きしてくれなかったっけ?
最大テクスチャサイズは2048x2048だっけな、オンボなら1024x1024ぐらいに抑えたほうがいいだろうけど 元画像を幾つかに分割してソート掛けときゃ気持ちぐらいは速くなるかもね
- 91 名前:名前は開発中のものです。 mailto:sage [2011/08/23(火) 16:16:13.66 ID:gBJyAplF]
- >>90
そういえばそうだっけ 大きい画像は内部的に分割されるからまとめ描きがきかなくなる(と思う)ことを忘れてた
- 92 名前:72 mailto:sage [2011/08/23(火) 16:17:17.68 ID:LpKAIWaD]
- なるほど、元画像の大きさが影響する可能性もあるんですね。
ちょっと1024*1024あたりに抑えたので試してみます。 あとやはり画像をまとめて1枚にしてしまおうかとも。 幸いにもアニメーションするマップチップは無いので。
- 93 名前:名前は開発中のものです。 mailto:sage [2011/08/23(火) 16:20:53.24 ID:GFTNdbU8]
- 1024でもでかいと思うけどな
- 94 名前:名前は開発中のものです。 mailto:sage [2011/08/23(火) 16:29:41.37 ID:Jx4cybJH]
- でっかい描画可能テクスチャを用意して、シーン切替時にマップ全部描画して、
マップ移動時はその中から描画したいとこだけを描画するってどうだろう アニメーションするチップがあるなら工夫必要だけど、これが最速な気がする
- 95 名前:名前は開発中のものです。 mailto:sage [2011/08/23(火) 16:31:44.49 ID:GFTNdbU8]
- 低スペックPCなんか切り捨てればええんや
- 96 名前:名前は開発中のものです。 mailto:sage [2011/08/23(火) 16:42:31.81 ID:gBJyAplF]
- >>94
フィールドみたいにサイズがでかすぎるとVRAMから溢れそう 描画可能テクスチャに1画面分描画して、スクロールが発生する時に スクロール先の部分を描画可能テクスチャに1ライン描画するとかどうだろう プライマリサーフェスに転送する場合はxオフセットとyオフセットを設定すれば、 描画可能テクスチャ1枚で足りるし、描画時に4転送で済む
- 97 名前:名前は開発中のものです。 mailto:sage [2011/08/23(火) 17:04:15.97 ID:zNqX2lyT]
- それスクロールするときに描画可能テクスチャ?を全描画しなおさないといけないんじゃないの?
オフセットだけだとはみ出すよね俺間違ってる?
- 98 名前:名前は開発中のものです。 mailto:sage [2011/08/23(火) 17:10:08.05 ID:gBJyAplF]
- >>97
うーん、説明しづらいから分かりにくくてすまんw スクロールするときにスクロールアウトする部分に1ライン描画するって言う意味 そうすると描画可能テクスチャは頂点がスクロールした方向に1ラインずれる つまり、最初の状態で0〜100を1回描画だとすると、5ラインスクロールしたら5〜100+0〜4の2回描画になるって具合 この場合オフセットは5ライン目 スクロールによるずれがx方向とy方向で生じるから、通常は都合4回の描画になる 実際にはスクロールする時のために上下左右に1ライン分のマージンが必要だけど
- 99 名前:名前は開発中のものです。 mailto:sage [2011/08/23(火) 17:16:54.74 ID:gBJyAplF]
- つまり、描画可能テクスチャの初期状態が
00,01,02,03,04,05 10,11,12,13,14,15 20,21,22,23,24,25 30,31,32,33,34,35 40,41,42,43,44,45 50,51,52,53,54,55 で右にスクロールすると、描画可能テクスチャは左1ラインがスクロールアウトするから上書きして 06,01,02,03,04,05 16,11,12,13,14,15 26,21,22,23,24,25 36,31,32,33,34,35 46,41,42,43,44,45 56,51,52,53,54,55 って形になる。バックバッファに転送するときは最初に01~55を左詰めで転送し、次に06~56を転送
- 100 名前:名前は開発中のものです。 mailto:sage [2011/08/23(火) 17:24:53.71 ID:zNqX2lyT]
- へえ。勉強になったわサンクソ
- 101 名前:名前は開発中のものです。 mailto:sage [2011/08/23(火) 17:26:09.22 ID:m6CHMGJ4]
- なんかファミコンっぽいw
バグると移動中に描画オフセットが効かなくてそのままマップが変わって行くのが見えちゃうみたいなw
- 102 名前:名前は開発中のものです。 mailto:sage [2011/08/23(火) 17:30:00.21 ID:gBJyAplF]
- ファミコン言うなwwwww
ただ難点は、描画可能テクスチャを使うってことなんだよね 3.00になって公開関数になった(っけ?)から前よりは安定してるんだろうけど、 2.xx系列だと隠し関数扱いだったからなー 動作の安定性が問題
- 103 名前:名前は開発中のものです。 mailto:sage [2011/08/23(火) 19:59:00.13 ID:VwHWQmS1]
- レイヤーが3つあるってことは画面サイズ*3枚分のバッファが必要で、画面3枚分の画面描画をするんだよな
16*16で描画する場合は描画回数は増えるだろうけど全体では1画面分くらいしか描画しなくていいわけだからどっちの方がいいんだろ 一番手前のレイヤーとかほとんど透過色でほとんど描画しないんじゃないのか てかMakeScreenで作ったバッファに透過色設定とかできたっけ
- 104 名前:名前は開発中のものです。 mailto:sage [2011/08/23(火) 20:24:26.48 ID:XYlgGojw]
- α付きPNGは、必要な箇所のみに絞って使ったほうが良いような気がする
- 105 名前:名前は開発中のものです。 [2011/08/23(火) 23:30:59.29 ID:5Swg8Sk+]
- 話題は変わってしまうけど質問
DrawGraphとかの座標の設定は、int x, int y ってなってるけど、 doubleの値を代入したりするとやっぱりバグるのか? 三角関数とか使って座標の計算とかしてるとどうしてもdoubleの値がでてきてしまうんだが
- 106 名前:名前は開発中のものです。 mailto:sage [2011/08/23(火) 23:35:10.20 ID:lNTJHKH0]
- >>105
自動的にintにキャストされる float値を使いたい場合はDrawGraphFでおk 使い分けはまぁ色々試してみるといいかと
- 107 名前:名前は開発中のものです。 mailto:sage [2011/08/23(火) 23:57:38.50 ID:lNTJHKH0]
- 少し説明が不親切だったか
描画モードがBILINEARの時にfloatでDrawすると各描画点の座標をfloatで計算してくれる 1pixel未満の単位で描画できるけど、描画画像がボケるから使い分けが必要 NEARESTの時にfloatでのDrawはやったことないから分からない
- 108 名前:名前は開発中のものです。 mailto:sage [2011/08/24(水) 00:01:48.23 ID:ZKHBuIyW]
- 今の2Dゲームってスクロールした時に描画してるんじゃないと思うけどなあ
技術的には挑戦してみたいけど
- 109 名前:名前は開発中のものです。 mailto:sage [2011/08/24(水) 00:08:03.99 ID:sfkaW6xv]
- >>108
まぁ性能が低い場合の工夫だからね ユーザー環境にばらつきがあって下限が低いPCゲーだとファミコンみたいな工夫も必要なのかと
- 110 名前:名前は開発中のものです。 [2011/08/24(水) 11:46:00.65 ID:AJ4GFjC0]
- >>106
そうだったか doubleからint型に変換されるとバグる時あるけど、バグるときとバグらない時の 違いってなんなのかね
- 111 名前:名前は開発中のものです。 mailto:sage [2011/08/24(水) 12:03:34.50 ID:L/387cHC]
- >>110
全然関係ないところでバグってるって可能性が一番高い あとint型は+20億〜-20億程度が保持できる値の範囲だから、キャスト前の値がそれを外れてるとバグる 他に良くある誤りとしては、printfで%d指定してるのにdoubleやfloat突っ込むと変な値が出るとか
- 112 名前:名前は開発中のものです。 mailto:sage [2011/08/24(水) 12:08:51.65 ID:Y83dP7s9]
- reinterpret_castしてるとか……は、流石に無いな。
- 113 名前:名前は開発中のものです。 mailto:sage [2011/08/24(水) 12:37:25.60 ID:wddftNdY]
- int型やdouble型をまぜこぜに計算した結果、なんか想定とズレた事になることはたまにある……。
- 114 名前:名前は開発中のものです。 mailto:sage [2011/08/24(水) 12:55:33.53 ID:L/387cHC]
- そりゃ浮動小数点って近似値でしかないからな
丸め誤差が蓄積してintにしたときに大きくずれることはよくある
- 115 名前:名前は開発中のものです。 mailto:sage [2011/08/24(水) 13:35:52.82 ID:/WAoNVeM]
- ある数を別のある数で割って、同じ値で掛けると思いもよらない所で別の数値が出る、っていう例がなんかあったな
- 116 名前:名前は開発中のものです。 mailto:sage [2011/08/24(水) 14:39:56.73 ID:h8WNvxsh]
- 少し高度だけど、浮動小数点周りの挙動はこれが参考になるかも
ttp://0xcc.net/blog/archives/000164.html
- 117 名前:名前は開発中のものです。 mailto:sage [2011/08/24(水) 14:53:30.67 ID:/Zu3vBbU]
- ゲームなら普通浮動小数点モデルをfastに設定するだろうから80bitは使われないしまた違ってくるな
最近偶数丸めの四捨五入とか負の値の切り上げ切捨ては 理解してないと整数にしたときに違ってくるのはある
- 118 名前:名前は開発中のものです。 mailto:sage [2011/08/24(水) 15:18:28.07 ID:rcSq7hqB]
- fastは不安すぎて使えない
- 119 名前:名前は開発中のものです。 mailto:sage [2011/08/24(水) 15:30:40.78 ID:h8WNvxsh]
- ゲームの場合、浮動小数点演算は速度よりも精度の方が重要な気がする
高度な物理演算でもさせるのなら別だけど、物理演算なら何か物理エンジン持ってきた方が手っ取り早いだろうし
- 120 名前:名前は開発中のものです。 [2011/08/25(木) 00:25:28.37 ID:5/LIEyCj]
- 構造体のメンバがめっさ増えてしまったよ
心が痛むけど便利だから仕方ない
- 121 名前:名前は開発中のものです。 mailto:sage [2011/08/25(木) 00:28:02.81 ID:b/ivvO9j]
- >>119
フリーでシェアウェアにも使える3Dの物理エンジンってあるかな
- 122 名前:名前は開発中のものです。 mailto:sage [2011/08/25(木) 00:31:33.05 ID:u5dPaIVB]
- ODEとか?
- 123 名前:名前は開発中のものです。 mailto:sage [2011/08/25(木) 00:58:40.19 ID:6F5H+2xZ]
- Windows版ならPhysXも普通に商用無料だけど
- 124 名前:名前は開発中のものです。 mailto:sage [2011/08/25(木) 01:18:03.52 ID:v0OE4j5b]
- Havok?
- 125 名前:名前は開発中のものです。 mailto:sage [2011/08/25(木) 19:31:31.34 ID:r39pEB59]
- 3Dのポリゴンはfloatじゃないと怒ってくるよねw
- 126 名前:名前は開発中のものです。 mailto:sage [2011/08/25(木) 19:43:51.78 ID:+TzycFNm]
- >>122
調べてみるサンクス >>123 PhysXってゲフォ使ってないとダメとかそういう制限ないの? >>124 Havokはシェアウェアに制限があったと思う
- 127 名前:名前は開発中のものです。 mailto:sage [2011/08/25(木) 19:46:15.26 ID:0LquE4lj]
- bullet physicsでいんじゃね
かなり重いが
- 128 名前:名前は開発中のものです。 mailto:sage [2011/08/25(木) 19:51:22.21 ID:+TzycFNm]
- >>127
GTA4なんかにも使われてるんだな これももうちょい調べてみる
- 129 名前:名前は開発中のものです。 mailto:sage [2011/08/25(木) 20:36:10.22 ID:x7GzGK8k]
- Newton Game Dynamics
- 130 名前:名前は開発中のものです。 mailto:sage [2011/08/25(木) 20:36:41.74 ID:6F5H+2xZ]
- >>126
そんな制限あったら誰も使わねえよw
- 131 名前:名前は開発中のものです。 mailto:sage [2011/08/25(木) 20:55:20.29 ID:+TzycFNm]
- >>130
そうなんだ 数年前にnVidia以外のGPUを検知するとPhysXの機能が停止されるようになったとか見た記憶があったから 自動的に選択肢から外してたけど、いつの間にか解消されてたのね
- 132 名前:名前は開発中のものです。 mailto:sage [2011/08/25(木) 21:11:09.88 ID:6F5H+2xZ]
- >>131
何か勘違いしてるみたいだけどPhysXはGPU限定じゃないぞ? GeForceならCPUより速くなるだけで 普通にCPUのみで常用出来るしUnityやUDKはPhysXがデフォ
- 133 名前:名前は開発中のものです。 mailto:sage [2011/08/25(木) 21:16:10.43 ID:+TzycFNm]
- >>132
なるほど、勉強になった 思ってる通り完全に勘違いしてたわ恥ずかしい限りで・・・
- 134 名前:名前は開発中のものです。 [2011/08/26(金) 03:17:13.81 ID:V5GLTgJY]
- DXlibで作ったゲームをより多くの人にプレイしてもらう一番の方法って何だろう
- 135 名前:名前は開発中のものです。 mailto:sage [2011/08/26(金) 13:41:24.01 ID:fnRCOkx6]
- どうやって宣伝するかの話になるから一筋縄ではいかない問題だな
- 136 名前:名前は開発中のものです。 mailto:sage [2011/08/26(金) 13:55:01.38 ID:zU9uahDS]
- >>134
テレビCM
- 137 名前:名前は開発中のものです。 mailto:sage [2011/08/26(金) 16:54:57.79 ID:Er6UBVi7]
- 公式ページに宣伝する場所あるけど、そこの数見るとやはりグラフィックじゃないか
・・・あそこ東方多いなー
- 138 名前:名前は開発中のものです。 mailto:sage [2011/08/26(金) 22:58:00.36 ID:4m9giPLQ]
- >>110
doubleとintじゃメモリ長違うからな(double-8バイト、int-4バイト) 代入の時に(int)のようなキャスト文を記述するのがプログラムの基本だと思うけど 自動キャストにあまり期待しないほうがいいのでは
- 139 名前:名前は開発中のものです。 mailto:sage [2011/08/27(土) 05:50:17.26 ID:btZbEZqZ]
- 久しぶりにライブラリ更新したら、フォントサイズがのきなみデカくなってしまった。
3.05aの時にフォントが小さくなる不具合が修正されたとあったので、 この不具合を受けていたんだろうな。
- 140 名前:名前は開発中のものです。 mailto:sage [2011/08/28(日) 01:38:40.08 ID:AIw4LN7/]
- 画像の透明度が上手く反映されない
マジ糞
- 141 名前:名前は開発中のものです。 mailto:sage [2011/08/28(日) 01:50:59.35 ID:uYFEtNkY]
- お前の技術が糞なだけ
- 142 名前:名前は開発中のものです。 [2011/08/30(火) 00:57:40.02 ID:dYGP1w70]
- DXいじり始めて少したった今、始めたばかりの頃のコードが糞すぎることに
気付いて直したいんだけど、これを直すとかなりの部分を直さなければならなくなる どうしようか悩みどころだ
- 143 名前:名前は開発中のものです。 mailto:sage [2011/08/30(火) 01:06:28.73 ID:bp0SD/cw]
- 何か完成目標があるのなら必要な部分だけ直しつつ進めることを勧める
そんなに大作志向のものでは無いのなら、適当に区切りをつけて終了するのがいいかもしれない
- 144 名前:名前は開発中のものです。 mailto:sage [2011/08/30(火) 01:55:16.10 ID:tq3YpvUy]
- 進めば進むほど直したくなる部分が増えるから問題が起こらないのであれば触らないほうがいい
糞すぎてもいいからそのまま完成させ、その答えは次回作る時に回す
- 145 名前:名前は開発中のものです。 mailto:sage [2011/08/30(火) 01:58:10.42 ID:xRSeBrvk]
- ネームスペースを分けて併用する
古いコードは触らず、新しく書く部分は新しいライブラリを使う
- 146 名前:名前は開発中のものです。 mailto:sage [2011/08/30(火) 04:01:10.54 ID:9FnnhPv8]
- そういうことに走り出したら完成しない
- 147 名前:名前は開発中のものです。 mailto:sage [2011/08/30(火) 15:15:28.85 ID:dYGP1w70]
- 結構根本的なところが適当に作っちゃってたからな、本当に反省ものだわ〜
そもそも一つ実装するのに複数同じコード書かなきゃいけないのは、エレガントじゃなかった 始めた頃は、同じの書くだけか、とか思ってたんだが 意気込んで色々作ったから、結構大作にする予定だったけど 今回は、ある程度区切りがついたら終了しないにしても、次の作品に取りかかろうと思う
- 148 名前:名前は開発中のものです。 mailto:sage [2011/08/30(火) 15:23:57.82 ID:heBciR2p]
- >>146に同意だが、根本となると後々不便になること多いからねぇ
- 149 名前:名前は開発中のものです。 mailto:sage [2011/08/30(火) 15:26:34.28 ID:d7imXqz6]
- >>147
素材を流用して次を大作にすればいいのさ
- 150 名前:名前は開発中のものです。 mailto:sage [2011/08/30(火) 15:29:14.00 ID:YRKVbKQ0]
- 俺も同じようなケースに陥ったが新しくフレームワーク書いてその上に全部移植したよ
- 151 名前:名前は開発中のものです。 mailto:sage [2011/08/30(火) 20:57:25.09 ID:uDbZ2MEH]
- 綺麗なブラー(リニア&放射)かけてみたいんだけど、シェーダを勉強するしかないかな。
2Dゲーム前提で、今作ってるゲームが完成するまでは、あんまり勉強に時間を割けられない。
- 152 名前:名前は開発中のものです。 mailto:sage [2011/08/30(火) 21:01:51.66 ID:YRKVbKQ0]
- シェーダよりは重くなるが、描画可能画像に全ての画像を書き込んだ後、
その画像を半透明にずらしながら数枚置けばそういうことが出来る 軽くやりたいならシェーダを学べばいい
- 153 名前:名前は開発中のものです。 mailto:sage [2011/08/30(火) 21:15:37.01 ID:gvz6W4Cu]
- 加算合成のブラーならシェーダ使わず軽めに綺麗にできるんだけどなー
別の描画可能テクスチャにブラー掛けたいものを加算描画して、毎フレームクリアせずに減算で少しだけ全体を暗くする そのテクスチャを画面に加算で合成すればおk
- 154 名前:名前は開発中のものです。 [2011/08/30(火) 22:09:15.00 ID:bDw8yGHB]
- >>142
オレは最初の勉強しながら書いた糞コードは途中で全部書き直した。 コードも短くなって綺麗になり、バグも直ったよ。 直しとけ
- 155 名前:名前は開発中のものです。 mailto:sage [2011/08/30(火) 22:10:19.14 ID:2nPfiAyT]
- そしてコード直しの無限ループに陥っていつまでたっても完成しないんですね
分かります
- 156 名前:名前は開発中のものです。 mailto:sage [2011/08/30(火) 23:48:45.32 ID:uDbZ2MEH]
- ありがとう。
>>152 ピンポイントで使う分には力技もアリっちゃありか >>153 それ面白いな
- 157 名前:名前は開発中のものです。 mailto:sage [2011/09/01(木) 00:19:30.76 ID:d4ENLr57]
- 素材作りが面倒くさすぎる
特に選択画面とかメニュー周りのレイアウト考えて作るの嫌だわ
- 158 名前:名前は開発中のものです。 mailto:sage [2011/09/01(木) 00:20:51.61 ID:4jMoOptS]
- 慣れだ
- 159 名前:名前は開発中のものです。 mailto:sage [2011/09/01(木) 00:43:11.59 ID:m+HtDpTs]
- どっかのニュースでGoogle+風のアイコンやUIのフリー素材とかあったからそういうの使えばいいんじゃね
- 160 名前:名前は開発中のものです。 mailto:sage [2011/09/01(木) 01:14:25.00 ID:n1HPhJGE]
- スクロールとかめんどいよね
- 161 名前:名前は開発中のものです。 mailto:sage [2011/09/01(木) 01:52:07.28 ID:f0r0b674]
- レイアウトは色んなゲームからパクればいいよ
どうせどれも似たようなもんだ
- 162 名前:名前は開発中のものです。 mailto:sage [2011/09/02(金) 21:26:41.41 ID:iRfojymH]
- 編成画面、一発でビルド成功した
夢精しちゃった
- 163 名前:名前は開発中のものです。 mailto:sage [2011/09/02(金) 21:29:21.25 ID:S5AdhhfU]
- 夢落ちかw
- 164 名前:名前は開発中のものです。 mailto:sage [2011/09/02(金) 21:51:54.23 ID:TqRuKmu/]
- 夢精吹いたwww
- 165 名前:名前は開発中のものです。 mailto:sage [2011/09/04(日) 17:57:58.28 ID:CLWIhWsZ]
- 初心者的質問ですまないがMV1LoadModelFromMemってどういう使い方すればいいんだ?
メモリに読み込んでも展開する時のロード時間がMV1LoadModelとほとんど変わらない マルチスレッドによるローディングのお供かと思ったがやっぱり他と競合するからなぁ
- 166 名前:名前は開発中のものです。 mailto:sage [2011/09/04(日) 18:23:24.33 ID:R9jedfSL]
- 使ったことないから適当抜かすけど、
メモリ上に読み込んで編集したものを読み込んで使ったりするんじゃないの。
- 167 名前:名前は開発中のものです。 mailto:sage [2011/09/04(日) 18:28:01.69 ID:VYFDdoqV]
- メタセコのモデルデータとかテキスト形式だしなー
でも実際はメモリからファイルとして読み込む関数はただひと通り用意してあるだけなんじゃないの? 独自アーカイブとか使いたい人居るでしょ
- 168 名前:名前は開発中のものです。 mailto:sage [2011/09/04(日) 18:34:14.15 ID:zZOKw97r]
- 暗号化とか考えだすとまずファイル名指定系は使えなくなる
- 169 名前:名前は開発中のものです。 mailto:sage [2011/09/04(日) 19:10:16.22 ID:Qw7jUkGk]
- データを予め圧縮しておいてそれをメモリに展開してから読み込む
〜FromMem関係はだいたいそんな使い方をしてる
- 170 名前:名前は開発中のものです。 mailto:sage [2011/09/04(日) 20:53:06.84 ID:CLWIhWsZ]
- ありがとう、自分には当分縁がない機能だということは分かった
メモリをいじくって管理できる人はすごいなぁ
- 171 名前:名前は開発中のものです。 mailto:sage [2011/09/04(日) 20:54:20.65 ID:EQP0Z6gU]
- DXライブラリとは関係ない話題ですみませんが、
皆さんはバージョン管理ってどうされてますか? 自分はバージョン管理ツールとか使えないので、テキストにコピーして日付とコメント入れてますw
- 172 名前:名前は開発中のものです。 mailto:sage [2011/09/04(日) 21:11:47.14 ID:ZY2yQa2r]
- 世の中には、雑談スレとか質問スレってのがあるんだけどな。
自分は最近Dropboxを導入したので、そっちに任せてる。 勝手に履歴も取ってくれるし。
- 173 名前:名前は開発中のものです。 mailto:sage [2011/09/05(月) 00:30:50.09 ID:fAUkDatV]
- Dropbox転送速度おせぇ…容量2GBしかないじゃん
- 174 名前:名前は開発中のものです。 mailto:sage [2011/09/05(月) 00:41:25.19 ID:fLF3yH4J]
- バックアップ目的なら、最低限ソースファイルのディレクトリだけ同期すればいいじゃない
- 175 名前:名前は開発中のものです。 mailto:sage [2011/09/05(月) 00:45:10.79 ID:fAUkDatV]
- >>174
ごめん、訂正します すげぇ便利、うんこ漏れた
- 176 名前:名前は開発中のものです。 mailto:sage [2011/09/05(月) 07:52:02.52 ID:fLF3yH4J]
- 別の物dropすんなw
- 177 名前:名前は開発中のものです。 mailto:sage [2011/09/05(月) 11:38:05.84 ID:4jVVMGID]
- 夏休み終わったら驚くほど平和なスレになったなぁ
- 178 名前:名前は開発中のものです。 mailto:sage [2011/09/05(月) 11:49:13.37 ID:DmS7yr3b]
- ほんと、びっくりだよ
- 179 名前:名前は開発中のものです。 mailto:sage [2011/09/05(月) 11:59:09.99 ID:8uz1Lmc0]
- 夏休みって勢いだけで開発したくなるもんだからな
夏休み終わったら開発メンバーが夢から覚めていなくなっていくもんだ
- 180 名前:名前は開発中のものです。 mailto:sage [2011/09/05(月) 13:22:53.50 ID:DmS7yr3b]
- あるあるw
というか夏休み中盤あたり(と思われる時期)から荒らしの勢いが弱くなったよな つまり、その頃から避けがたい現実の壁に直面し始めたってことかw
- 181 名前:名前は開発中のものです。 mailto:sage [2011/09/06(火) 01:55:20.57 ID:X8PlHriw]
- まだ夏休みなんだけど
- 182 名前:名前は開発中のものです。 mailto:sage [2011/09/06(火) 02:02:51.64 ID:HZS2vrcD]
- 大学生は夏休みだろうな
夏厨の大半はリア厨リア工だろ 厨工は既に夏休み終わってる
- 183 名前:名前は開発中のものです。 mailto:sage [2011/09/06(火) 04:23:35.05 ID:2fFA1rLA]
- 俺数年間夏休みのまんまなんだけど
- 184 名前:名前は開発中のものです。 mailto:sage [2011/09/06(火) 04:42:24.88 ID:B5zPYdVD]
- 四季ないの?
- 185 名前:名前は開発中のものです。 mailto:sage [2011/09/06(火) 11:56:12.00 ID:X8PlHriw]
- 確かに俺は大学生だが、就活する気ないしそもそも間違えた大学いってしまった
卒業した後何しようか
- 186 名前:名前は開発中のものです。 mailto:sage [2011/09/06(火) 12:24:46.00 ID:qrSbSQ+b]
- >>185
上海アリスに対抗してムンバイアリスプロジェクトでも立ち上げろ!
- 187 名前:名前は開発中のものです。 mailto:sage [2011/09/06(火) 13:51:54.57 ID:slT4WD5J]
- >>185
別の大学に入学
- 188 名前:名前は開発中のものです。 mailto:sage [2011/09/06(火) 15:28:17.00 ID:t7+cugkd]
- >>170
何が凄いの?当たり前の事じゃないのか? C/C++言語をやる以上メモリ管理とかメモリの仕組みを理解するのは常識でしょ ファイルアクセスはテキストだけか、バイナリデータをどう扱うんだよ 何のためにポインタを勉強するのだかレベル低すぎだ
- 189 名前:名前は開発中のものです。 mailto:sage [2011/09/06(火) 15:46:37.61 ID:0biVE3lT]
- 差詰め、ポスト夏厨ってところか
- 190 名前:名前は開発中のものです。 mailto:sage [2011/09/06(火) 16:26:20.59 ID:XcCeAR+W]
- テキスト扱えたらいろいろできますけど
- 191 名前:名前は開発中のものです。 mailto:sage [2011/09/06(火) 23:54:33.43 ID:ZuzK3VMO]
- >>188がレベル高すぎて吹いた、俺の常識では理解できん
- 192 名前:名前は開発中のものです。 mailto:sage [2011/09/07(水) 00:56:03.87 ID:BQag29pv]
- >>191
確かに常識を大きく逸脱してるよなw
- 193 名前:名前は開発中のものです。 mailto:sage [2011/09/07(水) 01:23:14.46 ID:vb1z8o7v]
- ポインタで勉強したことは、関数でも変数でもなんでもメモリに値が割り振られるってことだけだった
ポインタはそのアドレスの番号ってだけだった そして、それ以上でもそれ以下でもなかった
- 194 名前:名前は開発中のものです。 mailto:sage [2011/09/07(水) 01:24:57.54 ID:c/3+nxnP]
- >>191-192
>>188の言い方は悪いが言ってることは事実だよ。 なんとなく抵抗あるんだろうけど、諦めずに挑戦してみれば捗るぞって言いたいだけだと思う。
- 195 名前:名前は開発中のものです。 mailto:sage [2011/09/07(水) 03:14:49.53 ID:BQag29pv]
- >>194
いや、事実がどうとかそんな難しい話が出てるわけじゃないから・・・ プログラム言語の最低限の常識は持ってるみたいだけど、日本語の常識は無いみたいね、ってこと
- 196 名前:名前は開発中のものです。 mailto:sage [2011/09/07(水) 06:27:51.95 ID:s2aSkpi1]
- メモリという言葉に過剰反応して
墓穴を掘った人がいると聞いて 飛んできました
- 197 名前:名前は開発中のものです。 mailto:sage [2011/09/07(水) 06:30:17.27 ID:eKhAKT8o]
- 夏に湧いてた語りたがりや子供と同じ匂いがする
- 198 名前:名前は開発中のものです。 mailto:sage [2011/09/07(水) 12:25:42.42 ID:zy+rpXSE]
- >>188
残暑お悔やみ申し上げます
- 199 名前:名前は開発中のものです。 mailto:sage [2011/09/07(水) 19:30:19.42 ID:vJmg/j4c]
- なんだろう、こうして全体を眺めていると>193が光って見える
- 200 名前:名前は開発中のものです。 mailto:sage [2011/09/07(水) 20:30:19.23 ID:hL5E/old]
- コンパイル時までは型情報もあるから正しくは無いな
- 201 名前:名前は開発中のものです。 mailto:sage [2011/09/07(水) 21:13:45.85 ID:zy+rpXSE]
- (ドヤッ
- 202 名前:名前は開発中のものです。 mailto:sage [2011/09/07(水) 21:14:54.16 ID:DhZ0fzDh]
- フフーフ
- 203 名前:名前は開発中のものです。 mailto:sage [2011/09/07(水) 23:06:44.02 ID:xPoemCkm]
- >>193が最もハゲってことだろ・・・
- 204 名前:名前は開発中のものです。 mailto:sage [2011/09/08(木) 00:24:36.95 ID:AWvxx1rh]
- 実際ポインタなんて関数ポインタと構造体配列にしか使わなくね?
しかも構造体の構造体にはポインタ使えないから、ゲーム制作でそこまで重要とは思えない 実際にメモリのアドレスとか意識して使う場面なんてないでしょ
- 205 名前:名前は開発中のものです。 mailto:sage [2011/09/08(木) 00:34:57.58 ID:SRigVOB4]
- メモリのアドレスを意識して使う場面は無いがポインタを使う場面なら腐るほどあるぞ
ユニット同士の参照持たせたり、シーンやアクターへの参照持たせたり スマポならアクターや敵・弾・エフェクトの実体をスマポのコンテナに入れる(ポリモーフィズム) シーンもシーンのスーパークラス継承して実装するだろうし
- 206 名前:名前は開発中のものです。 mailto:sage [2011/09/08(木) 00:42:06.59 ID:n04TG+5l]
- 正直俺のコードはポインタまみれ
可読性は悪いのかも知らんが、自分一人で作る場合にはポインタ上手く使った方が保守性が高まるのよね
- 207 名前:名前は開発中のものです。 mailto:sage [2011/09/08(木) 00:44:07.74 ID:ZN1xKuWx]
- というか一つ一つを切り離した保守性の高いコードを書こうと思ったらポインタ使うしか無いだけだろ
- 208 名前:名前は開発中のものです。 mailto:sage [2011/09/08(木) 00:53:24.77 ID:O8ZONPcy]
- ポインタやC++の機能は、使うと便利で効率的だけど、使わなくてもそこそこの物が作れる。
同人STGサークルで最高峰の一つと言っていいBLUE&WHITEの作品なんて、 旧来のBASICとほぼ同じ仕様の言語(構造体すら無い)で作られてるんだぜ・・・ メモリ管理やポインタやクラスの活用が重要なのは確か。 でも、「それを知らなきゃ駄目、何もできない」みたいに言ってしまうと反感を買うんだろうな。
- 209 名前:名前は開発中のものです。 mailto:sage [2011/09/08(木) 01:04:59.02 ID:Ov0oDZDi]
- 動的確保禁止の仕事もあるからな
- 210 名前:名前は開発中のものです。 mailto:sage [2011/09/08(木) 01:13:35.04 ID:dEoLRrf6]
- fortranはfortran90までポインタ無かったが
アポロ11号の月着陸船を制御したらしい。
- 211 名前:名前は開発中のものです。 mailto:sage [2011/09/08(木) 02:09:21.00 ID:4M9G4VOj]
- LTCG有効にしてライブラリ作り直したらリンクに10分以上かかるようになったというチラ裏
- 212 名前:名前は開発中のものです。 mailto:sage [2011/09/08(木) 02:45:10.55 ID:doHxDHsJ]
- 俺は可読性こそ命だと思うな
おかげで半年以上開いてないプロジェクトすぐ理解できたわ
- 213 名前:名前は開発中のものです。 mailto:sage [2011/09/08(木) 02:50:51.27 ID:XrYAZCzA]
- 本人が読むなら、普通に組んでりゃ時間たっても普通に理解できると思うけど・・・
- 214 名前:名前は開発中のものです。 mailto:sage [2011/09/08(木) 02:53:35.18 ID:AWvxx1rh]
- ポインタは可読性はあまり良くないな
やたらカッコ増えるし、正直使うべきだとは分かっていても少し気が引けてしまう
- 215 名前:名前は開発中のものです。 mailto:sage [2011/09/08(木) 02:57:15.18 ID:XrYAZCzA]
- ポインタで括弧が増える状況がいまいち想像つかん
値をインクリメントする場合くらいしか思いつかないんだが
- 216 名前:名前は開発中のものです。 mailto:sage [2011/09/08(木) 03:11:23.54 ID:n04TG+5l]
- カッコってまさか
*(hogehoge->hoge) みたいな書き方してるとか?
- 217 名前:名前は開発中のものです。 mailto:sage [2011/09/08(木) 05:26:21.46 ID:doHxDHsJ]
- 久しぶりに掲示板みたらこんなスレ立ってた
ttp://hpcgi2.nifty.com/natupaji/bbs/patio.cgi?mode=view&no=2389
- 218 名前:名前は開発中のものです。 mailto:sage [2011/09/08(木) 06:47:16.66 ID:ER2QaU5m]
- DXライブラリのすごい所は、普通のライブラリにある「ポインタを使わされる」場面がほとんどないことだよな
他のライブラリ見てるとポインタだらけだ おかげで自作プログラムじゃ>>204の用途にしか使ってない
- 219 名前:名前は開発中のものです。 mailto:sage [2011/09/08(木) 10:06:14.26 ID:WTgUh+ln]
- >>214
ポインタ使った方が可読性良くなると思うが 関数間での二つ以上の値の受け渡しどうしてんの?いちいち構造体の値渡し使ってるの?
- 220 名前:名前は開発中のものです。 mailto:sage [2011/09/08(木) 10:10:45.57 ID:SFhUhwei]
- 全部グローバル変数なんだろう
- 221 名前:名前は開発中のものです。 mailto:sage [2011/09/08(木) 10:14:14.91 ID:lrhJNF88]
- クラス化してるから、各関数の引数としては出てこないとか
- 222 名前:名前は開発中のものです。 mailto:sage [2011/09/08(木) 11:02:29.93 ID:WTgUh+ln]
- >>220
可読性低下してんじゃん それとも全てのグローバル変数の用途を一年別のコード弄ってても忘れないくらい記憶力いいのか >>221 クラス使うならクラス使うでポインタ使わずにインスタンスの受け渡しどうすんの
- 223 名前:名前は開発中のものです。 mailto:sage [2011/09/08(木) 11:44:46.65 ID:oQa+3H/M]
- ポインタ使った方が可読性は高まると思う
あとC++の場合、クラス使ってカプセル化するならむしろポインタ必須だろ >>222も書いてるけど
- 224 名前:名前は開発中のものです。 mailto:sage [2011/09/08(木) 11:58:51.52 ID:AWvxx1rh]
- >>219
時と場合によるけど、俺はその関数で何回も使う場合は普通にポインタ使ってるよ ちょっと使いたいだけの場合は、構造体の型で関数作る。関数の引数増やすとちょっときたないし >>216 いや、配列でhogehoge[n].hogeを(hogehoge+n)->hogeって書くとなんか見にくくなった気がする 2次元配列ならなおさら
- 225 名前:名前は開発中のものです。 mailto:sage [2011/09/08(木) 12:07:13.55 ID:WTgUh+ln]
- >>224
いやわざわざ配列をポインタに直す必要なんて全く無いだろ……
- 226 名前:名前は開発中のものです。 mailto:sage [2011/09/08(木) 12:16:11.24 ID:oQa+3H/M]
- 仮に必要がある場合でも、俺はローカルで
HOGE *hage = &(hogehoge+n)->hoge; で置き換えてしまうかな まあコードの内容にもよるけど、見にくくなるくらい登場頻度が高いならね
- 227 名前:名前は開発中のものです。 mailto:sage [2011/09/08(木) 15:14:48.19 ID:95fOK7F6]
- どうせポインタの使い方が分かってないのなら先にjavaやC#でのポインタレスプログラミングを勉強した方が
CやC++で組むときにもきれいで安全なコードに落ち着く気がする まぁリファレンス使うのにポインタ使うのと同じ知識は必要だけどね
- 228 名前:名前は開発中のものです。 mailto:sage [2011/09/08(木) 16:20:53.63 ID:qZ9zRe2f]
- どう学習するのがいいんだろうねー
ポインタレスでメモリ空間の感覚が身に付くかなあ まあいきなりポインタ使おうとしたら危険があるってのは間違いないけど
- 229 名前:名前は開発中のものです。 mailto:sage [2011/09/08(木) 16:48:34.53 ID:ER2QaU5m]
- メモリ操作の感覚が掴めてから本当にポインタが理解できるようになるんだろ
それに、ポインタとかは勉強しようと思って学んでも全然わからない 普通にプログラム組んでれば、いつかどうしてもポインタが必要な状況がくる そうしたら電球ぴっかんこしてすんなり理解できるようになるから、それまでは無理に身につけようとしなくてもいいよ
- 230 名前:名前は開発中のものです。 mailto:sage [2011/09/08(木) 17:03:04.88 ID:Zn0gmw5p]
- メモリ空間とか意識すべきじゃないってのが昨今の考え方だからな
メモリ管理なんてほとんどの言語ではガベコレ任せでOKだし C++では低レベル層以外では生ポインタもnewも禁止って規約作ってるところもある
- 231 名前:名前は開発中のものです。 mailto:sage [2011/09/08(木) 17:57:56.34 ID:qZ9zRe2f]
- ゲーム作るならガベコレ任せじゃなあ
ガベコレのタイミングと割り当てる時間まで全部制御できるならいいけど
- 232 名前:名前は開発中のものです。 mailto:sage [2011/09/08(木) 18:48:46.19 ID:AWvxx1rh]
- ゲームプログラミングの館で紹介されてるようなポインタの使い方以外に
どんな使い方が主流だったりするの?
- 233 名前:名前は開発中のものです。 mailto:sage [2011/09/08(木) 18:52:34.06 ID:BQSrwOkb]
- 自分の無能をドヤ顔で語られてもな
- 234 名前:名前は開発中のものです。 mailto:sage [2011/09/08(木) 18:56:46.84 ID:ER2QaU5m]
- ゲームプログラミングの館は最近みてないからわからないが、
俺の場合は頻繁にソートしなくちゃいけない構造体の配列とかをポインタにすることでメモリコピー量を軽減して高速にソートできたり、 オブジェクトから別オブジェクトの状態を監視するために使ったりする 例えば、STGで敵が倒したらその敵が出した弾だけ消したい場合、 弾に自分を出した敵オブジェクトへのポインタを持たせといて、HPが0になったりしたのをチェックさせたりとかできる
- 235 名前:名前は開発中のものです。 mailto:sage [2011/09/08(木) 18:57:34.76 ID:ER2QaU5m]
- STGで敵が、じゃない
STGで敵を ね
- 236 名前:名前は開発中のものです。 mailto:sage [2011/09/08(木) 19:29:18.17 ID:qZ9zRe2f]
- ゲームデータを利用するときなんかポインタをよく使うな
STGだったら敵の耐久値や得点を格納した構造体やクラスとか 敵インスタンスのそれぞれには値を持たせないでゲームデータを指させる 用途は色々だけど、スマートに組もうと思ったらポインタが出てくることが多い気がする
- 237 名前:名前は開発中のものです。 mailto:sage [2011/09/08(木) 20:05:29.41 ID:lrhJNF88]
- >>222-223
失敬、あらかじめ別の場所で指定してるから、 実際の昨日呼び出しとしての関数にはポインタが出てこないのかも、というジョークのつもりだった
- 238 名前:名前は開発中のものです。 mailto:sage [2011/09/08(木) 23:40:01.91 ID:iztd+bJu]
- ポインタくらいさくっと勉強すればいいのに・・・
- 239 名前:名前は開発中のものです。 mailto:sage [2011/09/08(木) 23:59:50.88 ID:9xOrhu1g]
- ポインタを無駄に難しく感じる人が多いのはCの教本が悪いんだよな
>>224みたいな発想ってポインタを配列の添字替わりに使うっていうお決まりのサンプルが原因だろうし C++みたいにクラスのインスタンスアドレスの格納用ってところから入ったほうが実用的で分かりやすい
- 240 名前:名前は開発中のものです。 mailto:sage [2011/09/09(金) 00:32:33.59 ID:3xnCMl6b]
- >>239
あれじゃ使い道分からんよなあ 俺も最初は「で?っていう」状態だったぞ
- 241 名前:名前は開発中のものです。 mailto:sage [2011/09/09(金) 00:40:25.04 ID:WMxbyvxF]
- 俺は、「ある構造体を別の関数から手軽に変更できる」から入ったから、
むしろ配列アクセスがポインタ演算の省略記法だって知った時驚いたよ。そして確かにそうだなとも思った
- 242 名前:名前は開発中のものです。 mailto:sage [2011/09/09(金) 00:50:17.52 ID:n/GIxaX2]
- メモリの番地じゃないのか
- 243 名前:名前は開発中のものです。 mailto:sage [2011/09/09(金) 01:11:39.93 ID:ao0aDTdP]
- 配列とか構造体を関数の引数にしたときに
Call by referenceにしかできないとか、 二次元配列を、ポインタをインクリメントするだけで 舐めてしまえるとか、 Cをアセンブリにいかに簡単に落とし込みやすくできるか。 アセンブリの性質がもろに出てるんですよね。
- 244 名前:名前は開発中のものです。 mailto:sage [2011/09/09(金) 01:36:03.31 ID:8Qyc1Xec]
- >>241
何それ、kwsk 俺も同じ道を辿りたい
- 245 名前:名前は開発中のものです。 mailto:sage [2011/09/09(金) 03:05:21.84 ID:jsjA4VTZ]
- win7にしたんだけどvc++6.0しか持ってなくて
dxライブラリを使うとdirectxをインストールしなくても directxで開発できてしまうんだな ありがたい 簡単にサンプルをビルド実行できた
- 246 名前:名前は開発中のものです。 mailto:sage [2011/09/09(金) 04:03:49.72 ID:YyzrgMlk]
- DirectXはすでにインストールされている
DirectX SDKのこと言ってるのかな
- 247 名前:名前は開発中のものです。 mailto:sage [2011/09/09(金) 06:29:13.86 ID:2WBzxpbS]
- vc6は古すぎるんでできれば新しいコンパイラに替えたほうがいいよ
express editionでよければ無料で使える
- 248 名前:名前は開発中のものです。 mailto:sage [2011/09/09(金) 06:45:53.59 ID:ik422DJI]
- 自分もかなり長期間VC6を使ってたから愛着はあるぜ。
より高機能で複雑化してるから、道具に使われてる感はしちゃうけど、 IntelliSenseがかなり賢くなってるから、それだけでも導入の価値はあるぜ。
- 249 名前:名前は開発中のものです。 mailto:sage [2011/09/09(金) 08:02:12.33 ID:GccrOwfB]
- ポインタの何が難しいのか、そっちのが分からん
- 250 名前:名前は開発中のものです。 mailto:sage [2011/09/09(金) 08:26:26.37 ID:YyzrgMlk]
- >>249
ググれ ポインタの難しさから勉強してこい そこまで面倒みきれん
- 251 名前:名前は開発中のものです。 mailto:sage [2011/09/09(金) 08:44:10.52 ID:HI1B7qUa]
- ポインタなんて簡単だと言ってるんじゃないの。
- 252 名前:名前は開発中のものです。 mailto:sage [2011/09/09(金) 12:29:00.96 ID:zjvixVHU]
- だな
ポインタなんて難しいことは全くない 難しく感じるのは、教本が悪くて用途が分からないからってだけ
- 253 名前:名前は開発中のものです。 mailto:sage [2011/09/09(金) 12:38:14.70 ID:WMxbyvxF]
- 確かに「ポインタなんて何に使えばいいの?」って言われてもこっちが理解できなかったりする
そんな立場に立ったことないし 必要そうな事(俺の場合ゲームに)を順次覚えていったらこんな感じ
- 254 名前:名前は開発中のものです。 mailto:sage [2011/09/09(金) 13:19:42.75 ID:HI1B7qUa]
- そういうところが齟齬の原因なんだろうね。
これはどうしようもない事だと思うよ。 その「理解できない」事が解ってるのに、理解しないまま そういう人達に対して教えようとするからおかしな事になる。
- 255 名前:名前は開発中のものです。 mailto:sage [2011/09/09(金) 13:27:32.18 ID:zjvixVHU]
- プログラミングって論理思考のセンスが問われるからな
センスが無いと「なんで分からないんだ」ってようなところで躓く
- 256 名前:名前は開発中のものです。 mailto:sage [2011/09/09(金) 15:34:40.02 ID:ll9kyqlZ]
- ポインタ理解出来ない=センスがない ってことじゃないと思うがなー
- 257 名前:名前は開発中のものです。 mailto:sage [2011/09/09(金) 15:51:48.77 ID:zjvixVHU]
- 誰もそんなこと言ってねえよ・・・
別の人間が書いてる内容を無理矢理繋げんな
- 258 名前:名前は開発中のものです。 mailto:sage [2011/09/09(金) 16:28:33.88 ID:ll9kyqlZ]
- おっとそれはごめんね
- 259 名前:名前は開発中のものです。 mailto:sage [2011/09/09(金) 16:49:44.31 ID:ik422DJI]
- 自分の場合。
セーブ実装したいな… ↓ となるとファイル読み書きが必要だよな。 ↓ 難しいと評判のポインタを使うのか! ↓ あれ、難しくなかったぞ。拍子抜け。
- 260 名前:名前は開発中のものです。 mailto:sage [2011/09/09(金) 17:45:21.82 ID:Qt804ejg]
- Cで1年ゲーム作ってる人よりもjavaを1週間だけ勉強した人の方が簡単にポインタを理解できたりするからな
結局教え方がマズイというか学び方がマズイというか ポインタそのものの難度とは別のところに問題があるのは確実
- 261 名前:名前は開発中のものです。 mailto:sage [2011/09/09(金) 18:12:25.06 ID:zFZi5GgL]
- リソースの管理とか言語に依存しない抽象的な概念は他の高級言語やった人の方が理解してそうだな
- 262 名前:名前は開発中のものです。 mailto:sage [2011/09/09(金) 18:42:01.46 ID:aPTDe6Zj]
- 頻繁にデータ(構造体)を受け渡ししたり、速度を気にしないうちは
ポインタを使うメリットがよく分からないからなんじゃないかな 俺もゲームの速度を気にするようになり、関数ポインタや ローカルのポインタ変数を使うようになって、ようやくポインタの 便利さが分かったよ 必要な人だけ使えばいいと思う ポインタ使わずゲームが作れるならそれで問題ないだろうし
- 263 名前:名前は開発中のものです。 mailto:sage [2011/09/09(金) 19:57:45.63 ID:YyzrgMlk]
- 全部スマポでやればいいよ
- 264 名前:名前は開発中のものです。 mailto:sage [2011/09/09(金) 20:01:15.86 ID:n/GIxaX2]
- スマポよりナマポ欲しい
- 265 名前:名前は開発中のものです。 mailto:sage [2011/09/09(金) 20:34:44.80 ID:4cbcubR5]
- スマタでいいからしてほしい
- 266 名前:名前は開発中のものです。 mailto:sage [2011/09/09(金) 21:14:05.39 ID:neVttkqH]
- 龍神ryの講座のソースを見て「ポインタなくても困らない」と大声で言う人の気持ちがわかった気がした
何もかもグローバルの配列を使うような世界で育てば確かに困ったことないだろうなぁ
- 267 名前:名前は開発中のものです。 mailto:sage [2011/09/09(金) 21:36:07.47 ID:2lDIiM72]
- グローバルかどうかはあまり関係ないような・・・
- 268 名前:名前は開発中のものです。 mailto:sage [2011/09/09(金) 21:49:01.18 ID:jsjA4VTZ]
- ポインタって要するにアセンブラのインデックスレジスタなんだよね
- 269 名前:名前は開発中のものです。 mailto:sage [2011/09/09(金) 21:56:20.07 ID:escQ9bl0]
- あそこは初心者というよりHSPとかBASICを経由してきた人と相性が良さそう
はじめてゲームプログラミングをするって人には正直見せたくない
- 270 名前:名前は開発中のものです。 mailto:sage [2011/09/09(金) 22:11:09.16 ID:4cbcubR5]
- メモリ消去したのにアドレスを消さないぷろぐらまに価値はないんだよ
- 271 名前:名前は開発中のものです。 mailto:sage [2011/09/09(金) 22:18:52.71 ID:Awb5KSju]
- >>268
は?
|

|