- 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/
- 23 名前:名前は開発中のものです。 mailto:sage [2011/08/19(金) 12:08:10.58 ID:ARB/pWx3]
- 自分でも質問、回答保存しとかないとな、何が起こるかわからんね
- 24 名前:名前は開発中のものです。 mailto:sage [2011/08/19(金) 12:58:14.87 ID:h2Awk5XP]
- そもそもの存在を知らなかった
- 25 名前:名前は開発中のものです。 mailto:sage [2011/08/19(金) 13:05:53.40 ID:VH+p9wYA]
- 存在も知らないってのは流石にもったいない
流し読みするだけでも有用な情報がかなり転がってるぞ。あの掲示板
- 26 名前:名前は開発中のものです。 mailto:sage [2011/08/19(金) 13:07:17.82 ID:76p5YYCn]
- 管理人が組んでくれた独自関数とか乗ってたりするしな
- 27 名前:名前は開発中のものです。 mailto:sage [2011/08/19(金) 15:08:51.16 ID:wvZ3KZ0d]
- DXライブラリは2Dゲームに使うのにかなり評判いいけど3Dはどうなんだろう。
DXライブラリで作られたフル3Dのゲームを見たことがないんだけども制作してる方いるかな? それともやっぱり他ライブラリが優勢ですかね。
- 28 名前:名前は開発中のものです。 mailto:sage [2011/08/19(金) 15:15:33.69 ID:RYsoyjXa]
- ニコニコとかなら、いくつか
- 29 名前:名前は開発中のものです。 mailto:sage [2011/08/19(金) 15:15:54.96 ID:J0/DuTv2]
- その話題秋田
- 30 名前:名前は開発中のものです。 mailto:sage [2011/08/19(金) 15:20:59.08 ID:76p5YYCn]
- 3Dゲーム作るのにもかなり使いやすいよ
他のライブラリは余計な機能がゴタゴタついてたり、数値の指定がライブラリの独自仕様になってたりするけど、 DXライブラリは余計な機能がないし、座標がイメージしやすいから、2Dの機能を使いこなせてるレベルなら同じ感覚で3Dもいける
- 31 名前:名前は開発中のものです。 mailto:sage [2011/08/19(金) 20:39:45.07 ID:Jfggb3xO]
- 糞機能しかないけど
制限の大きさがそれはそれで楽しめる RPGツクールでアクションつくるようなもん
- 32 名前:名前は開発中のものです。 mailto:sage [2011/08/20(土) 00:56:46.71 ID:h5rqwIfp]
- 荒らしが本家アク禁されて戻ってきたのか
- 33 名前:名前は開発中のものです。 mailto:sage [2011/08/20(土) 01:40:57.24 ID:hsXN7A7n]
- もう少し3Dに興味がわく関数追加してほしいと思う
今のままなら3D使わなくても2Dだけでいいやってなる
- 34 名前:名前は開発中のものです。 mailto:sage [2011/08/20(土) 01:44:03.83 ID:Fwzk+EjB]
- メタセコイアーーーーーーーーー
- 35 名前:名前は開発中のものです。 mailto:sage [2011/08/20(土) 01:44:56.97 ID:ZoKw5/8i]
- Seleneだっけ?あっちを使えばいいんじゃね
君には選ぶ自由がある
- 36 名前:名前は開発中のものです。 mailto:sage [2011/08/20(土) 02:40:16.77 ID:v7MhS9L7]
- >>33
CryEngineでも使っとけよ
- 37 名前:名前は開発中のものです。 mailto:sage [2011/08/20(土) 16:18:31.76 ID:hqQNNz9L]
- DrawBoxで描いた四角を透過したいんだけど、
SetDrawBlendModeを使うと描いた四角以外の部分も色が変わってしまう。 DrawBoxで描いた四角の部分だけを透過する方法はないですか?
- 38 名前:名前は開発中のものです。 mailto:sage [2011/08/20(土) 16:22:13.65 ID:MeXvMRT5]
- DrawBoxで描く前にSetDrawBlendModeで透過させて、描いたあとに同じくSetDrawBlendModeで透過解除させる。
- 39 名前:名前は開発中のものです。 mailto:sage [2011/08/20(土) 16:38:32.07 ID:hqQNNz9L]
- >>38
使い方の問題だけでしたか。 ありがとう。
- 40 名前:名前は開発中のものです。 mailto:sage [2011/08/20(土) 16:42:51.24 ID:IWWDN6QR]
- 描画モード変更系は永続だからな
- 41 名前:名前は開発中のものです。 mailto:sage [2011/08/20(土) 17:21:48.78 ID:qSqU0IZR]
- 仕様として標準値を決めておいて、もし変えたら終わったあとに戻すのがよいよ
- 42 名前:名前は開発中のものです。 mailto:sage [2011/08/20(土) 18:25:38.16 ID:3ivERayN]
- 画像クラスに透明度も突っ込んじゃうと楽よね。
- 43 名前:名前は開発中のものです。 mailto:sage [2011/08/20(土) 18:33:43.27 ID:IWWDN6QR]
- 透明度というか、描画関連情報を全部突っ込むと便利だな
- 44 名前:名前は開発中のものです。 mailto:sage [2011/08/20(土) 18:41:03.64 ID:CTodmPom]
- DrawBoxをラッピングしてalphaを引数で与えればいい
オーバーロードで引数無しの場合は0xffを与えればいい
- 45 名前:名前は開発中のものです。 [2011/08/21(日) 00:29:39.73 ID:gki3mA7k]
- 皆マスク関数とか使ってるの?
俺たまにマスク使いたくなるけど、リファレンツに出力がどうのこうの って書いてあるから躊躇してしまう
- 46 名前:名前は開発中のものです。 mailto:sage [2011/08/21(日) 01:09:33.97 ID:P45TjjLU]
- >>45
画面四分割する時に使ったことある
- 47 名前:名前は開発中のものです。 mailto:sage [2011/08/21(日) 03:28:33.00 ID:RxfZEi1R]
- 便利なのかもしれないが使う機会はないな。
画面分割はやったことあるけど、矩形だったからSetDrawAreaで充分だったし。
- 48 名前:名前は開発中のものです。 mailto:sage [2011/08/21(日) 04:25:39.46 ID:rjN5MHyA]
- d.hatena.ne.jp/thk/20110530
あるんじゃないかとは思ってたけど 商業でDXライブラリ使ってるという話は始めて聞いた。 しかもこの人によると、割と使ってるところあるみたいね。 尤も、典型的な紙芝居ノベルっぽいから、それ専門のソフトとスクリプトで十分だとも思うが…
- 49 名前:名前は開発中のものです。 mailto:sage [2011/08/21(日) 10:22:04.14 ID:M759TBPA]
- RPGで敵をEnemyクラスとして扱おうとしています。
初期化処理において、 龍神録プログラミングのその11,エクセルを使って敵の出現データを作ってみよう、 を参考にして敵のIDに応じた各データメンバをcsvファイルから読み込ませようとしています。 他にもっと便利で修正しやすいよ、という方法ありましたらお教えください。
- 50 名前:名前は開発中のものです。 mailto:sage [2011/08/21(日) 11:22:50.61 ID:7gHE4yq/]
- それ以上を求めるなら自分で専用のツール作るしかないよ
- 51 名前:名前は開発中のものです。 mailto:sage [2011/08/21(日) 12:13:03.89 ID:fmNEKtpE]
- 最近見つけてあんまり試してないけどSQLite+PupSQLiteとか面白そうだよ
- 52 名前:名前は開発中のものです。 mailto:sage [2011/08/21(日) 12:23:39.50 ID:WE805obR]
- RapidXMLとか?
- 53 名前:名前は開発中のものです。 mailto:sage [2011/08/21(日) 18:42:31.11 ID:IUtyM1fd]
- 敵にID振るのもいいけど敵PTのIDも作ったほうがいいんじゃ
敵が常に1体ならそれでいいだろうけど
- 54 名前:名前は開発中のものです。 mailto:sage [2011/08/21(日) 18:45:45.02 ID:3Sq6cAOc]
- 俺の場合は、敵編隊は、敵を発射する透明な敵オブジェクトでやってるなー
これなら敵として設置するだけで編隊を出してくれるから、同じようにステージに配置しやすい
- 55 名前:名前は開発中のものです。 mailto:sage [2011/08/21(日) 18:55:02.65 ID:IUtyM1fd]
- それってSTGの話?
- 56 名前:名前は開発中のものです。 mailto:sage [2011/08/21(日) 18:59:49.70 ID:KFmwB8iQ]
- >>54はSTGの話だな。見た感じ
>>53 敵データと敵パーティーデータって普通は別扱いでやらね?
- 57 名前:名前は開発中のものです。 mailto:sage [2011/08/21(日) 19:39:22.49 ID:2utXiE9Y]
- >>52
「原理原則」や「机上の空論」を正論と思って賞賛してよいのは中学二年生まで
- 58 名前:名前は開発中のものです。 mailto:sage [2011/08/21(日) 19:54:12.43 ID:8VJ3fpLQ]
- 普通がどうかは知らんが敵も敵編隊も弾も自機もエフェクトも全部同じ扱い、IDだけ変えてる
ファクトリメソッド使えるのならこのほうが楽
- 59 名前:名前は開発中のものです。 mailto:sage [2011/08/21(日) 20:00:10.45 ID:KFmwB8iQ]
- RPGの話なのに何でSTGの話持ち出すのかイミフなんだが
- 60 名前:名前は開発中のものです。 mailto:sage [2011/08/21(日) 20:02:57.51 ID:TJFAx+2m]
- いつの間にかSTGの話にw
- 61 名前:名前は開発中のものです。 mailto:sage [2011/08/21(日) 20:07:40.03 ID:8VJ3fpLQ]
- おーすまない、けどRPGでも基本変わらん
エンカウントもイベント戦闘もその中での敵配置も同じ扱いでやったほうが楽
- 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も普通に商用無料だけど
|

|