DXライブラリ 総合スレッド その16
■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものです。
2013/06/30(日) 23:57:05.06ID:j62MvD3e「DXライブラリ」に関するスレッドです。
DXライブラリに関するテクニックなどの情報交換などを行う事で、
多くのDXライブラリユーザのスキルの向上に役立てたら幸いです。
【公式】
http://homepage2.nifty.com/natupaji/DxLib/
【関連スレ】
C/C++ゲーム製作総合スレッド Part1
http://toro.2ch.net/test/read.cgi/gamedev/1337516528/
ゲームプログラムなら俺に聞け(プログラム技術板)
http://toro.2ch.net/test/read.cgi/tech/1366526476/
●DXライブラリではなくDirectXの質問ならこっちへ
【C++】DirectX初心者質問スレ【C】(プログラム技術板)
http://toro.2ch.net/test/read.cgi/tech/1370015791/
0048名前は開発中のものです。
2013/07/10(水) NY:AN:NY.ANID:qhalMkf2OSから渡される起動時引数からカレントディレクトリ取得してそこから相対とか、
そういう基礎的な話か
0049名前は開発中のものです。
2013/07/10(水) NY:AN:NY.ANID:hFi49aB+すみません、strcatの存在すっかり忘れてました…
ありがとうございます
0050名前は開発中のものです。
2013/07/13(土) NY:AN:NY.ANID:hTzpp10w商用エロゲ作ってるが、3ヶ月毎日フルタイムでコーディングしても、まだ終わりが見えないんだが…
0051名前は開発中のものです。
2013/07/13(土) NY:AN:NY.ANID:nVvWJgzk0052名前は開発中のものです。
2013/07/13(土) NY:AN:NY.ANID:1boaEOr8フリーの使えばいいのに。
0053名前は開発中のものです。
2013/07/13(土) NY:AN:NY.ANID:zRBu2bedそもそもNScripterとか吉里吉里使わない時点で頭悪い
0054名前は開発中のものです。
2013/07/13(土) NY:AN:NY.ANID:hTzpp10wDXライブラリ使って作ったほうがやりやすいんだよ…
吉里吉里のライブラリ流用してるし、このやり方が悪いとは思わんのだがな…
0055名前は開発中のものです。
2013/07/13(土) NY:AN:NY.ANID:p2DfNmFs商業ならフリー使わない理由はいろいろあるだろう。
0056名前は開発中のものです。
2013/07/13(土) NY:AN:NY.ANID:p2DfNmFs0057名前は開発中のものです。
2013/07/13(土) NY:AN:NY.ANID:TWfYB7Vz0から自分で作ると結構難しいぞ
ミニゲームもあるならなおさらキリキリとか使えないし
0058名前は開発中のものです。
2013/07/13(土) NY:AN:NY.ANID:yD2puQqu選択肢によって場面移動、それを繰り返す、ってだけなら
飯食いながらサンプルとして書ける程度の内容だけど、
もしも難しいと言ってる奴が、暗黙の内に独自の内蔵スクリプトとそのインタプリタ含めた汎用ゲームエンジンみたいな物前提で話してたら、
確かに大変かも試練
0059名前は開発中のものです。
2013/07/13(土) NY:AN:NY.ANID:zRBu2bed・ノベルゲー+その他ゲーム集作るの大変すぎ
この二つじゃまったく話が違ってくるだろ
006057
2013/07/13(土) NY:AN:NY.ANID:TWfYB7Vz(1) 汎用パーサーを利用して俺スクリプトの解析
(2) アニメーション システム
(3) シーン(レベル)の保存とロード
(4) 統一されたキー入力を伝達する仕組み
(5) 装飾をつけたテキストの表示
(6) データの暗号化と永続的なファイルへの保存
(7) デバッグの為の変数表示機能
(8) コリジョンの検出および距離の計算
(9) 物理エンジンとの連携
いくらでもあるわ。経験者でないなら三ヶ月でできる量ではない
0061名前は開発中のものです。
2013/07/13(土) NY:AN:NY.ANID:wd3Q/jHw53 もスクリプトツール使えって言ってるだけで
否定してるわけじゃないでしょうに。
0062名前は開発中のものです。
2013/07/13(土) NY:AN:NY.ANID:LUqGCTWw0063名前は開発中のものです。
2013/07/13(土) NY:AN:NY.ANID:wd3Q/jHw0064名前は開発中のものです。
2013/07/13(土) NY:AN:NY.ANID:Wh+py0kB0065名前は開発中のものです。
2013/07/13(土) NY:AN:NY.ANID:yD2puQquノベルゲーを作る場合の話じゃなくなってる気がするが
0066名前は開発中のものです。
2013/07/13(土) NY:AN:NY.ANID:ywADsX8N技術的な事言ってる訳じゃないし、がんばれとかチラシの裏にでも書いてろで終わる話じゃん
0067名前は開発中のものです。
2013/07/13(土) NY:AN:NY.ANID:H9N77kIs0068名前は開発中のものです。
2013/07/13(土) NY:AN:NY.ANID:yD2puQquみたいな頭の働かせ方するのが慣れたプログラマの本能だったりするけど、
その辺で意志疎通出来にくい相手とか見ると、思わず頭悪いなぁとか言っちゃう人いるかも試練
0069名前は開発中のものです。
2013/07/13(土) NY:AN:NY.ANID:KqbQiyOsIT業界にやってくるわけだからな
使いこなせない奴を見て嬉しくなるタイプの人間しかいないよ
0070名前は開発中のものです。
2013/07/13(土) NY:AN:NY.ANID:LilF81Tl0071名前は開発中のものです。
2013/07/14(日) NY:AN:NY.ANID:+UK5RTjgクラスの宣言内のコンストラクタに
クラス名(int,int):クラス内のメンバ変数名(引数),クラス内のメンバ変数名(引数)
みたいに書いてるのをたまに見かけます。
トレースしたいんだけど、コンストラクタに:をつけて変数ならべるのは
どういう意味ですか?
0072名前は開発中のものです。
2013/07/14(日) NY:AN:NY.ANID:/QtoVkR/ああいう記法なのはまったく理解できんけどな
0073名前は開発中のものです。
2013/07/14(日) NY:AN:NY.ANID:+UK5RTjgクラスのコンストラクタの定義の中で済ませば良いのに、、
コンストラクタの宣言の横で初期化してるってことですか?
処理はまったく同じですよね?
本人の好みの問題なだけですかね?
0074名前は開発中のものです。
2013/07/14(日) NY:AN:NY.ANID:83nWya90あと基底クラスの引数付コンストラクタ呼ぶときとか
0075名前は開発中のものです。
2013/07/14(日) NY:AN:NY.ANID:JsjE2TLy0076名前は開発中のものです。
2013/07/14(日) NY:AN:NY.ANID:tBW3km87あとふつうの変数でも代入と初期化は本来別物だから
処理が全く同じになるかというとコンパイラ次第なんじゃないか
0077名前は開発中のものです。
2013/07/14(日) NY:AN:NY.ANID:+UK5RTjg気になるのは、そこに羅列したメンバ変数には
メンバ関数のごとく引数がついてるってこと。
まあその引数の値で初期化されると想像出来ますが、、
なぜ、わざわざそんなやり方を??
単刀直入に言いますと
コンストラクタ(int x,int y):変数A(y),変数B(x){}
と
コンストラクタ(int x,int y){変数A=y;変数B=x;}
の違いってなんですか?
ということです。
ちなみに、前者のソースみたく書いてるは
プロフェッショナルな方なんですよ。
0078名前は開発中のものです。
2013/07/14(日) NY:AN:NY.ANID:83nWya900079名前は開発中のものです。
2013/07/14(日) NY:AN:NY.ANID:XaubjkQU俺は何気なくだけど前者使ってるわ
大体0とかで初期化するだけだけど
0080名前は開発中のものです。
2013/07/14(日) NY:AN:NY.ANID:+UK5RTjgべつにそれならそれでいいんです。
自分には聞いたことも見たことも無い書き方
だったんで戸惑いました。
0081名前は開発中のものです。
2013/07/14(日) NY:AN:NY.ANID:+UK5RTjgありがとうございました。
0082名前は開発中のものです。
2013/07/14(日) NY:AN:NY.ANID:/QtoVkR/本当かはしらない
0083名前は開発中のものです。
2013/07/14(日) NY:AN:NY.ANID:tBW3km87前者は初期化で後者は代入
わざわざそんなやり方、というよりも前者の方がC++本来のクラス変数の初期化の文法
後者でも単純な変数なら同じ結果が得られるだけ
0084名前は開発中のものです。
2013/07/14(日) NY:AN:NY.ANID:5JkpjM3e前者は初期化だけど、後者はどう見てもコピーで別物に見えるけど
0085名前は開発中のものです。
2013/07/15(月) NY:AN:NY.ANID:Un3rMRLz初期化リストでないと代入できないんじゃなかったっけ
0086名前は開発中のものです。
2013/07/15(月) NY:AN:NY.ANID:ikbmv1v3そらそうだ
0087名前は開発中のものです。
2013/07/16(火) NY:AN:NY.ANID:416SfEwnVar x=n;と同じ
後者は代入
Var x;
x=n;
tと同じ
Varが参照だったりconstだったり引数なしコンストラクタを持っていない場合は前者を使わざる負えない
あと、例えばstd::stringなんかだと引数なしコンストラクタの場合適当に15ぐらいの領域を勝手に確保するって噂を聞いたことがあるから
初期化のほうが適当じゃない分いい
0088名前は開発中のものです。
2013/07/16(火) NY:AN:NY.ANID:DavWjYNX0089名前は開発中のものです。
2013/07/16(火) NY:AN:NY.ANID:ayl4cQjp初期化リストにしろ、代入(コピー)にしろ、それらとコピーコンストラクタやオペレータオーバロードの関係とか
0090名前は開発中のものです。
2013/07/16(火) NY:AN:NY.ANID:Hqm1WmEMファイアーボールみたいな動きする計算が出来ません。
参考になるような解説されたサイトやブログもまったくないです。
やはり、物理演算も入ってるでしょうし
その辺のプログラマには再現出来ない難しい軌道なのでしょうか?
それとも簡単すぎて、誰も解説をしていない状態なのでしょうか?
0091名前は開発中のものです。
2013/07/16(火) NY:AN:NY.ANID:7blhp/X00092名前は開発中のものです。
2013/07/16(火) NY:AN:NY.ANID:ayl4cQjpその辺のプログラマって括りがおかしいが、
まず先にテストで、画面の任意の位置をクリックしたら玉が現れて、下に向かって落ちていき、
一番下についたら跳ね返る、その移動量が段々減衰していくってだけのテストプログラム作ってみ
数学的にも大した計算いらない。
てかこれ、DXライブラリって言うより単純なアルゴリズムの話。
うちの新卒一年目でも昼休みにさらっと書くレベルの話。
0093名前は開発中のものです。
2013/07/16(火) NY:AN:NY.ANID:GmMQZD9J0094名前は開発中のものです。
2013/07/16(火) NY:AN:NY.ANID:+XM2aF/e0095名前は開発中のものです。
2013/07/16(火) NY:AN:NY.ANID:Hqm1WmEMいや、実はまさにそれくらいを再現するプログラムは見よう見まねで作ったんですが
たったそれだけの動きを再現するのにえらい長いプログラムになってまして、、
上手い人はもっと短いのだろうと。参考にしたいな、と。なのにどこにも無い、と。
そういう流れす。
さらっと書くレベルの話、とは言えませんね、これは。
、、、たとえば、あなたなら何行使いますか?(常識的なインデントで)
0096名前は開発中のものです。
2013/07/16(火) NY:AN:NY.ANID:+XM2aF/e曖昧にする意味がわからん
0097名前は開発中のものです。
2013/07/16(火) NY:AN:NY.ANID:kK2L2xohなんとかしてソース引き出そうとしてるし浅ましい
0098名前は開発中のものです。
2013/07/16(火) NY:AN:NY.ANID:7blhp/X00099名前は開発中のものです。
2013/07/16(火) NY:AN:NY.ANID:nroTpBI+0100名前は開発中のものです。
2013/07/16(火) NY:AN:NY.ANID:ayl4cQjp> さらっと書くレベルの話、とは言えませんね、これは。
なんでわからなくて質問してるお前の基準で「違いますね、これは」とか言えちゃうのよ。
いやさらっと書くレベルの話だよ
0101名前は開発中のものです。
2013/07/16(火) NY:AN:NY.ANID:hzTbXOyu年齢書いとくと知ってるであろう知識で教えられるとかあるかもしれんな
DXライブラリは利用者の幅が広いからなあ
0102名前は開発中のものです。
2013/07/16(火) NY:AN:NY.ANID:QAiAMGmgたぶんね!
0103名前は開発中のものです。
2013/07/16(火) NY:AN:NY.ANID:1hVtm7c/いや無理とは言わんが、スーマリ程度のゲームでそんなのやらんだろ。
0104名前は開発中のものです。
2013/07/16(火) NY:AN:NY.ANID:+XM2aF/eあとはめり込み判定ができてれば、2Dゲームとしては物理シミュと呼べる
プリミティブな要件を満たすと思うけど?
というか「物理演算」という言葉のスコープが大きすぎ。2D力学か運動表現と言おう
0105名前は開発中のものです。
2013/07/16(火) NY:AN:NY.ANID:27OHMvBcy += vy; vy += gravity; // 重力加速
物理っちゃ物理
0106名前は開発中のものです。
2013/07/16(火) NY:AN:NY.ANID:8KAYlLb2・ググれない
・質問してるのに上から目線
例の小学6年生だろうからもうスルーしとけ
0107名前は開発中のものです。
2013/07/16(火) NY:AN:NY.ANID:K551o1n+0108名前は開発中のものです。
2013/07/16(火) NY:AN:NY.ANID:Hqm1WmEMえ、それほんとですか?
てきとーに言ってるのなら
明らかに当時のプログラマへの侮辱ですよ?
ファイヤーボールは明らかに地面で跳ねながら飛んでいきます。
いわば、トランポリン状態です。
あれを物理演算使わないであそこまで違和感なしに出来ますか?
出来もしないのに言うな
>>105
そういうことですよね?
やっぱそれらを使ってますよね?
あのファイヤーボールは
0109名前は開発中のものです。
2013/07/16(火) NY:AN:NY.ANID:oQmF0F+y0110名前は開発中のものです。
2013/07/16(火) NY:AN:NY.ANID:UEWWNyYt主人公ハルクが高いところから飛び降りた時に
高さに応じて落下速度を上げる物体落下のプログラミングを
DXライブラリを使って構築する場合
何を重点に式を組めばいいでしょうか?
重力計算の問題です
1.落下時間に応じて速度を増していく
2.地面までの距離(y軸)に応じて速度を増していく
3.物体の重さに応じて速度を増す
あと、落下速度に応じて地面に着地した時に
地面がひび割れたり揺らしたりもしてみたい
0111名前は開発中のものです。
2013/07/16(火) NY:AN:NY.ANID:cTJjZDRJ0112名前は開発中のものです。
2013/07/16(火) NY:AN:NY.ANID:mLye0j0hあの場合は演算も糞も無く等速でx方向に進んで上下に振動するだけだったけどなあ
そんなもんでも良かったら物理の知識も要らないんじゃないの
0113名前は開発中のものです。
2013/07/16(火) NY:AN:NY.ANID:y2xAflWs0114名前は開発中のものです。
2013/07/16(火) NY:AN:NY.ANID:d5+33Qmvテーブルで変化量を持ってるだけだと思う
最近の3DSのマリオとかだったらdoubleの計算とか三角関数やベクトル辺りもガンガン使ってるだろうけど
0115110
2013/07/16(火) NY:AN:NY.ANID:UEWWNyYt重力計算には空気抵抗とかも必要だと思う
y軸に面する面積が広ければ広いほど落下速度が減速する
面積が狭いと落下速度が加速
スカイダイビングをイメージすれば
両手両足を広げれば落下速度が減速
両手両足を閉じれば落下速度が加速
さらに体を斜めに傾けると、さらに落下速度が加速する
0116名前は開発中のものです。
2013/07/16(火) NY:AN:NY.ANID:UEWWNyYtそれは正しい物理計算とは言わない
玉が地面に面する体積と重力と風力と重さで
落下速度や上昇速度や上昇距離を計算していないと思う
落下物を別の大きさの玉に変えたり
別の形状の物体に変えても同じバウンドの実行結果になってしまう
そんなものなら数学的な計算を使わないのは当然
0117名前は開発中のものです。
2013/07/16(火) NY:AN:NY.ANID:Hqm1WmEM>>112>>114
>上下に振動するだけ
>テーブルで変化量を持ってるだけだと思う
そこまで単純じゃないんですよ
忘れてるんでしょうから、目で確認してみてくださいよ
http://www.youtube.com/watch?v=2QfkfFyURf8#t=0m24s
0118名前は開発中のものです。
2013/07/16(火) NY:AN:NY.ANID:xomIDF4Eなら凄く単純な話じゃないか?入射角とか求める必要すらないんじゃないの?
なんか常に一定っぽいんだが
0119名前は開発中のものです。
2013/07/16(火) NY:AN:NY.ANID:d5+33Qmv0120名前は開発中のものです。
2013/07/16(火) NY:AN:NY.ANID:QAiAMGmg∧_∧
ガラガラ( ^^ ) <これからも僕を応援して下さいね(^^
=〔~∪ ̄ ̄〕
= □――◇ Kazuki
0121名前は開発中のものです。
2013/07/16(火) NY:AN:NY.ANID:A+V7NwsU0122名前は開発中のものです。
2013/07/16(火) NY:AN:NY.ANID:8KAYlLb2正解は>>114
これゲーム開発者の間では常識中の常識
もうこの話はもう終わりね
二度と小学6年生に触れるなよ
0123名前は開発中のものです。
2013/07/16(火) NY:AN:NY.ANID:C/+zvXFU8bitCPUは掛け算や割り算なんかないよ。
0124名前は開発中のものです。
2013/07/16(火) NY:AN:NY.ANID:d5+33Qmv0125名前は開発中のものです。
2013/07/16(火) NY:AN:NY.ANID:C/+zvXFU昔、マリオを逆アセンブルしてC++で実装した奴を公開していた奴はいたな。
0126名前は開発中のものです。
2013/07/16(火) NY:AN:NY.ANID:C/+zvXFUまだ、あったわ。
ソースも付いてるから勉強すればいいよ。
0127名前は開発中のものです。
2013/07/16(火) NY:AN:NY.ANID:TkKjOA5G空中で左右に動けることとジャンプボタン押す長さでジャンプの高さが変わる事だと思う。
まぁ、それでもちょっと難しい程度だけど。
0128名前は開発中のものです。
2013/07/16(火) NY:AN:NY.ANID:d5+33Qmv0129名前は開発中のものです。
2013/07/16(火) NY:AN:NY.ANID:5Xnek7aO言われてみたらこれって何気にすごいんだなと思った
ジャンプした瞬間の初速(最低の高さ)があるとして
ジャンプしてから数十フレームくらいの間だけ、上への加速度をプラスするって感じなのかな?
30フレくらいかと思ったけど、びみょ〜に落下までの速度も制御できる気がするから60フレくらい?
0130名前は開発中のものです。
2013/07/16(火) NY:AN:NY.ANID:5Xnek7aO>>129
言われたらそっちのほうがすごかったわw
斜面はFCマリオ3からだったかな?
しっかり歩行速度にも影響あって、滑ったりできるのは確かにすごい
0131名前は開発中のものです。
2013/07/16(火) NY:AN:NY.ANID:TkKjOA5Gジャンプして上の床を叩いたとき、床がぐにゃりって曲がるのも凄いと思ってるw
あれマップチップだよな……? いや一時的にスプライトに変えてるって手法もありか……?
0132名前は開発中のものです。
2013/07/16(火) NY:AN:NY.ANID:5Xnek7aOうわ、そういやそれもすげぇな・・・
確かあれは、バグった状態(FC独特の半刺し状態とか)では
まったく別の絵柄が見えるから、特定のチップを表示してるのかな
というかあのバグった状態のままで動くFCそのもののほうがすごいかw
0133名前は開発中のものです。
2013/07/16(火) NY:AN:NY.ANID:y2xAflWsくぃっという動作だと思う
0134名前は開発中のものです。
2013/07/16(火) NY:AN:NY.ANID:nroTpBI+スーパーマリオのジャンプとファイヤボールを打つのを実装した
オブジェクトのソース貼り付ける天才はいないのか?
0135名前は開発中のものです。
2013/07/17(水) NY:AN:NY.ANID:poq3qMkuもうちょっとましな煽り入れろよ
0136名前は開発中のものです。
2013/07/17(水) NY:AN:NY.ANID:3HiHJAFhHaskellで書いたソースでも良ければ。
そのままじゃ使えないと思うけど。
0137名前は開発中のものです。
2013/07/17(水) NY:AN:NY.ANID:Udo1cKyLJ言語とでも言っておけ
0138名前は開発中のものです。
2013/07/17(水) NY:AN:NY.ANID:OzdlVej3BGとスプライトの併用じゃなかったかなあ、あれ
0139名前は開発中のものです。
2013/07/17(水) NY:AN:NY.ANID:+vpWyki7ソース見てるんだが、
これ、ファイヤーボールの弾の軌道書いてんのどこ?
0140名前は開発中のものです。
2013/07/17(水) NY:AN:NY.ANID:4ylv1rI40141名前は開発中のものです。
2013/07/17(水) NY:AN:NY.ANID:+vpWyki7じゃあ質問変えるね。
DXライブラリの描画可能領域セットメソッドあるじゃない?
SetDrawArea();
これって、領域外にある画像は描画しないってものだけど、
それはまさに「描画処理が無効化されている」、
つまり領域外に出た画像の描画分のメモリは食わなくなる、ということで良いのかな?
だとしたら、これはそうとう便利なメソッドだと思うんだけど。
0142名前は開発中のものです。
2013/07/17(水) NY:AN:NY.ANID:4ylv1rI4描画しないだけで、メモリには書いてんじゃねーの?
0143名前は開発中のものです。
2013/07/17(水) NY:AN:NY.ANID:4ylv1rI4CBullet::Adjust
0144名前は開発中のものです。
2013/07/17(水) NY:AN:NY.ANID:+vpWyki7じゃあ、
見えないだけで描画処理はされてるってこと?
じゃあ見えなくても沢山表示命令を出してたら重くなるんだ?
、、、ってか、知らんのか
あんたまで知らないならただの推測による水掛け論になるやん、、、
0145名前は開発中のものです。
2013/07/17(水) NY:AN:NY.ANID:+vpWyki7>CBullet::Adjust
なによ、それ。
0146名前は開発中のものです。
2013/07/17(水) NY:AN:NY.ANID:3HiHJAFh0147名前は開発中のものです。
2013/07/17(水) NY:AN:NY.ANID:+vpWyki7ああ、、すまん、、、探してくれたんだな
ありがとう。
でも、CBullet::Adjustて、それなりに長いソースだけど、
これ全部がファイヤーボールのプログラムなん??
■ このスレッドは過去ログ倉庫に格納されています