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/
0002名前は開発中のものです。
2013/06/30(日) 23:57:43.41ID:j62MvD3eDXライブラリ 総合スレッド その15
http://toro.2ch.net/test/read.cgi/gamedev/1364900066/
【過去スレ】
01 http://pc11.2ch.net/test/read.cgi/gamedev/1197468399/
02 http://pc11.2ch.net/test/read.cgi/gamedev/1224923873/
03 http://pc11.2ch.net/test/read.cgi/gamedev/1238429676/
04 http://pc11.2ch.net/test/read.cgi/gamedev/1249822550/
05 http://pc11.2ch.net/test/read.cgi/gamedev/1259912953/
06 http://hibari.2ch.net/test/read.cgi/gamedev/1267108154/
07 http://hibari.2ch.net/test/read.cgi/gamedev/1286180687/
08 http://hibari.2ch.net/test/read.cgi/gamedev/1301818631/
09 http://hibari.2ch.net/test/read.cgi/gamedev/1310904069/
10 http://hibari.2ch.net/test/read.cgi/gamedev/1313655495/
11 http://toro.2ch.net/test/read.cgi/gamedev/1322844235/
12 http://toro.2ch.net/test/read.cgi/gamedev/1330000532/
13 http://toro.2ch.net/test/read.cgi/gamedev/1339368894/
14 http://toro.2ch.net/test/read.cgi/gamedev/1350618178/
0003名前は開発中のものです。
2013/07/01(月) NY:AN:NY.ANID:+3YeETHhすまないけどもう一度
モデルの手足とかのフレーム位置ってどうやって設定するんですか?
MV1SetMatrixで設定しても足元の位置を取得してるみたいです
モデルが悪いのかモーションが悪いのか…
デフォルトで付いてるモデルを見るとちゃんと手とかのフレームごとに座標がセットされてるなぁ
0004名前は開発中のものです。
2013/07/01(月) NY:AN:NY.ANID:j62MvD3ehttp://toro.2ch.net/test/read.cgi/gamedev/1337516528/
ごめん、ここだけ更新確認するの忘れてた…
あと、改行おおすぎって怒られたから分けてみた
0005名前は開発中のものです。
2013/07/01(月) NY:AN:NY.ANID:uf9a8men>>985
1を避けるのが無理となったら毎フレームVertexやIndexに代入して渡す以上、
それはただのDrawPolygonIndexed3Dと変わらないしボトルネックになってる代入処理も負荷軽減すら出来ない
1が出来ないなら実装は諦めるしか無いんだよね
せめて前フレームまでに生成されたパーティクルは触らず、今フレームで生成されたパーティクルのデータだけを追加することでも出来れば大きな力になるんだけど
2は別のセマンティクスを無理やり利用するとしても
管理人さん曰くfloat3がpos、norm、tan、binorm、float4がsposらしいからとても理想通りには足りない
これが実現できないなら単純な動きの数稼ぎのパーティクルを個別に新しく作るって方法もあるけど出来れば理想通り実装できるように試行錯誤したい
頂点数を6つから描画に使わない頂点を増やして、シェーダ中で別の頂点から参照するみたいなことってできないよね
以前に2年ほど市販のゲームのバイナリをひたすら弄ってた事があるんだけど
そのゲームのパーティクルがこれぐらいは拡張性に富んでたんだよね
ちゃんと内部メモリ書き換えたら思い通りにエフェクトも書き換えれたし先に挙げたパラのどれを書き換えてもフリーズとかは起こらなかった
当時はハードが非力で思い通りの事はできなかったけど今時のPCならやりたい放題だから思う存分パーティクル使ったエフェクトを作りたいんだ
0006名前は開発中のものです。
2013/07/03(水) NY:AN:NY.ANID:UI8e9E/d0007名前は開発中のものです。
2013/07/04(木) NY:AN:NY.ANID:VvE/Zlks>>3
亀だけど手足とかのフレーム位置を取得したいのか
それとも回転とか並進移動してフレームの位置を設定したいのか
どっちにしてもMV1SetMatrixは関係なくね?
前者ならMV1GetFramePositionとか後者ならアニメーション関数かMV1SetFrameUserLocalMatrixあたりが出てきそうなもんだけど
とか言って初心者が話題作りに口出ししてみる
0008名前は開発中のものです。
2013/07/04(木) NY:AN:NY.ANID:crrvNibG現状専用の関数に(bgmname,loop)でtitleからパス渡して都度読み込ませてるんだけど
起動時なりにあらかじめ全部読み込ませて番号で指定したほうがスマートなのかな?
使用数は20曲程度を想定してるけど、メモリの占有とか考えるとどうなのかなーと
使用頻度の高いものだけ読み込ませるとか色々考えたけどなかなかどうするのが一番いいのか思いつかない
0009名前は開発中のものです。
2013/07/04(木) NY:AN:NY.ANID:i01s1Y7Z作っている物の設計次第じゃね
つまり、ロードして再生でいいものと、オンメモリで即時切り替えしたい物って用途によってあるのがわかってると思うので、
この曲はこっち、これはこっちと分けて考える感じ
割りとノープランで作ってるときは全部同じ方法で統一したくなるけど、
実際に作るものが見えてる状態で設計するなら、自然と一次切り分けとしてそうなるかと
0010名前は開発中のものです。
2013/07/04(木) NY:AN:NY.ANID:crrvNibGやっぱりそうかぁ
メモリどのくらい食うかとか調べてから決めることにするわさんくす
0011名前は開発中のものです。
2013/07/04(木) NY:AN:NY.ANID:eMzLzLvI圧縮済み曲データなら数MBですむし最低そこだけでもメモリには置いておきたい
0012名前は開発中のものです。
2013/07/04(木) NY:AN:NY.ANID:bYjH9N0mまぁそれでも一瞬止まるんだけど。
0013名前は開発中のものです。
2013/07/05(金) NY:AN:NY.ANID:NK+qilQ+現在作っているゲームを、
Windows 7 Home Premium 64bit *3台
Windows 7 Home Premium 32bit *2台
Windows 7 Home Professional 32bit *1台
Windows 8 64bit *1台
で動作確認をしたところ、Windows 7 Home Premium 64bit のうち1台だけがexe起動後のリソースのロード中に応答なしとなり、
タスクマネージャから強制終了させる必要が出てしまいます。windows updateも全て実行してあります。
同じプログラム環境(つまり同じDXライブラリのバージョン)でテストで作った同じ画像を読み込み、動かすプログラムは正常に動作します。
原因が何にあるのかがわからず、DXライブラリの可能性もあるので質問させていただきます。
どなたか心当たりがありましたら返答お願いします。
0014名前は開発中のものです。
2013/07/05(金) NY:AN:NY.ANID:E7AFsXVCエスパーじゃないんだからさ
0015名前は開発中のものです。
2013/07/05(金) NY:AN:NY.ANID:sQV+cUjnアプリ起動時にいきなりダメなんだったら DirectXとかグラボのドライバでも疑え
0016名前は開発中のものです。
2013/07/05(金) NY:AN:NY.ANID:Y41MaDA70017名前は開発中のものです。
2013/07/05(金) NY:AN:NY.ANID:o07ozPmm五枚の画像をじゅんぐりに表示する(アニメさせる)のに自分はこう考えてます。
if(this->count % 5 == 0){画像1の描画処理}
if(this->count % 5 == 1){画像2の描画処理}
if(this->count % 5 == 2){画像3の描画処理}
if(this->count % 5 == 3){画像4の描画処理}
if(this->count % 5 == 4){画像5の描画処理}
しかし、これではものすごいスピードのアニメになってしまいますよね?
一枚一枚の表示時間を長くしたいわけです。
で、自分はそうしたい場合、countを細分化してわざわざ同じ画像を振り分けています
例↓
if(this->count % 10 == 0){画像1の描画処理}
if(this->count % 10 == 1){画像1の描画処理}
if(this->count % 10 == 3){画像2の描画処理}
if(this->count % 10 == 4){画像2の描画処理}
…以下同じ要領で書き連ねる
賢い方ならわかると思いますが非常に非効率ですよね、、
どうやればスマートな命令になりますか?
知恵をお貸しください。
0018名前は開発中のものです。
2013/07/05(金) NY:AN:NY.ANID:k966eNGC0019名前は開発中のものです。
2013/07/05(金) NY:AN:NY.ANID:nBoOA7vyif ( frame_count %= 2 ) { //0:そのまま表示 1:画像更新 2:そのまま表示…
i++;
i %= 画像枚数;
}
0020名前は開発中のものです。
2013/07/05(金) NY:AN:NY.ANID:o07ozPmmえ、すごくシンプルですね、、、ちょっと意味がわかりません
countを2で割ったものを10で割った余りから1を引く、ということですか?
その場合、表示時間は"/2"のところで考えるんですか?
>>19
すみません、ちょっとわかりません
フレームカウントを2で割った余りが0になるたびに、
iがインクリメントされて、、どういうことでしょうか?
画像枚数が5枚として、i%=5でどういう意味になるのでしょうか
0021名前は開発中のものです。
2013/07/05(金) NY:AN:NY.ANID:nBoOA7vyえ、まさかそういう返しが来るとは思ってなかったんだけど…
配列って知ってる?
0022名前は開発中のものです。
2013/07/05(金) NY:AN:NY.ANID:o07ozPmmもちろん知ってます
配列の添え字を動かしてるんですよね?
ただ、そこの値の変化が見えません
0023名前は開発中のものです。
2013/07/05(金) NY:AN:NY.ANID:o07ozPmm0、1,2,3、、、と変化するんですよね?
−1は0からの添え字に合わすために引いてる。
そういうのはわかるんですよ。
でも、それではものすごいスピードなのは自分が書いたものと
変わりがないような気がするんで、、、、
値の変化をもう少し解説して頂けませんか?
0024名前は開発中のものです。
2013/07/05(金) NY:AN:NY.ANID:o07ozPmmあ、人を違えました、すみません。
(でも言いたいことは同じなんですけど、、)
値の動きがわかりません。
if ( frame_count %= 2 ) {
i++;
i %= 画像枚数;
}
if文の中は、「countを2で割って、余りが2になる場合」でよろしいですよね?
で、そのたびに、iをインクリメントする。
そのiを画像枚数で割って、その余りをiに加える??
意図、値の変化、が見えません。。。
0025名前は開発中のものです。
2013/07/05(金) NY:AN:NY.ANID:6PcLzQCR(count / コマウェイト) % アニメ枚数
だけでいいんじゃね
0026名前は開発中のものです。
2013/07/05(金) NY:AN:NY.ANID:Jwek2QMZaは1以上の整数
でいいんじゃないのかな。配列はお好きに。
0027名前は開発中のものです。
2013/07/05(金) NY:AN:NY.ANID:Jwek2QMZ0028名前は開発中のものです。
2013/07/05(金) NY:AN:NY.ANID:Y41MaDA70029名前は開発中のものです。
2013/07/05(金) NY:AN:NY.ANID:6pY90Lwl0030名前は開発中のものです。
2013/07/05(金) NY:AN:NY.ANID:Y41MaDA70031名前は開発中のものです。
2013/07/05(金) NY:AN:NY.ANID:VRSiUV+Z0032名前は開発中のものです。
2013/07/05(金) NY:AN:NY.ANID:Jwek2QMZ0033名前は開発中のものです。
2013/07/06(土) NY:AN:NY.ANID:TvHXVORuでは、こういうのを提案します。
-------------------------------
int i = 0;
int a = 0;
// Img.pngを6分割で読み込む
LoadDivGraph("img\\Img.png", 6 , 2 , 3 , 100 , 100 , Img);
while(ScreenFlip()==0 && ProcessMessage()==0 && ClearDrawScreen()==0){
// 画像表示
DrawGraph( 100 , 120 , Img[a] , TRUE );
// アニメーションプログラム
if (i<60){;}
else if(i<62){a=1;}
else if(i<64){a=2;}
else if(i<66){a=3;}
else if(i<68){a=4;}
else if(i<70){a=5;}
else if(i==70){i=0 , a=0;}
i++;
}
0034名前は開発中のものです。
2013/07/06(土) NY:AN:NY.ANID:TvHXVORuそれを配列で表示させることが大前提なのですが、
// アニメーションプログラム
if (i<60){;}
else if(i<62){a=1;}
else if(i<64){a=2;}
else if(i<66){a=3;}
else if(i<68){a=4;}
else if(i<70){a=5;}
else if(i==70){i=0 , a=0;}
アニメーションさせる速度は、この部分で調整しています。
i変数が60以下の時は何もしない
最初は配列の0を指定し、1つ目の配列には何も描かないでおく
そしてi変数が60〜61(2フレーム)までの間
a変数に1を代入し続け2フレーム間、2つ目の配列画像を表示し続ける
つまり、このプログラムは2フレーム間隔でアニメーションし続けることになります。
0035名前は開発中のものです。
2013/07/06(土) NY:AN:NY.ANID:TvHXVORuif (i<60){;}
else if(i<70){a=1;}
else if(i<80){a=2;}
else if(i<90){a=3;}
else if(i<100){a=4;}
else if(i<110){a=5;}
else if(i==110){i=0 , a=0;}
つまり、例えば、このようにすれば10フレーム間隔のアニメーションになります
アニメーション速度の調節は
どこで制御しているのか、大体、想像つくでしょうか?
// アニメーションプログラム
if (i<60){;}
else if(i<160){a=1;}
else if(i<260){a=2;}
else if(i<360){a=3;}
else if(i<460){a=4;}
else if(i<560){a=5;}
else if(i==560){i=0 , a=0;}
こうすれば100フレーム間隔の遅いアニメーションになります
0036名前は開発中のものです。
2013/07/06(土) NY:AN:NY.ANID:TvHXVORu----------------------------
int Img; // Img変数の宣言
int i = 0;
int a = 0;
// Img.pngを6分割で読み込む
LoadDivGraph("img\\Img.png", 6 , 2 , 3 , 100 , 100 , Img);
while(ScreenFlip()==0 && ProcessMessage()==0 && ClearDrawScreen()==0){
// 画像表示
DrawGraph( 100 , 120 , Img[a] , TRUE );
// アニメーションプログラム
if (i<60){;}
else if(i<62){a=1;}
else if(i<64){a=2;}
else if(i<66){a=3;}
else if(i<68){a=4;}
else if(i<70){a=5;}
else if(i==70){i=0 , a=0;}
i++;
}
0037名前は開発中のものです。
2013/07/06(土) NY:AN:NY.ANID:AeXNZZqZカウント5になったら表示させるようにすれば
単純に5倍の表示時間増大になるはず
初期値にi=0;してから
if(i==0){ //iは適当
表示ルーチン
}
ScreenFlip();
i++;
if(i>5)i=0;
0038名前は開発中のものです。
2013/07/06(土) NY:AN:NY.ANID:6iFG2U1A0039名前は開発中のものです。
2013/07/06(土) NY:AN:NY.ANID:K/eQcKgB0040名前は開発中のものです。
2013/07/06(土) NY:AN:NY.ANID:6iFG2U1Aこれって1種類の画像表示ごとに表画面に反映させるの?
それじゃ裏画面に描画してる意味合いが薄れないだろうか
的外れならスマン
0041名前は開発中のものです。
2013/07/06(土) NY:AN:NY.ANID:1xgoa0KHImageFlame++;
if( ImageFlame >= MAX_FLAME ){
ImageFlame = 0;
}
}
0042名前は開発中のものです。
2013/07/06(土) NY:AN:NY.ANID:1xgoa0KHif( Time % IntervalTime == IntervalTime - 1 ){
ImageFlame++;
if( ImageFlame >= MAX_FLAME ){
ImageFlame = 0;
}
}
Image[ImageFlame].draw();
Time++;
0043名前は開発中のものです。
2013/07/06(土) NY:AN:NY.ANID:AeXNZZqZ37のように書いてみただけなので、
それより効率の(もしくは目的に合った)いいソースがあれば
それを使ってもらえればいいです
(ScreenFlipならマイクロ秒じゃなく約60分の1秒単位での表示処理なので
見た目的にも効果があると判断しました)
0044名前は開発中のものです。
2013/07/06(土) NY:AN:NY.ANID:IzFaHD6I・画像ハンドル
・画像を表示する時間
・次のパターンへのポインタ(NULLなら停止なり消去なり)
をクラス/構造体に突っ込んでおいて、
条件ごとに起点となるパターンを呼び出す……とかどうかな?
まあ、最終的には外部ファイル最強なんだろうけども。
0045名前は開発中のものです。
2013/07/06(土) NY:AN:NY.ANID:vfXXCUJm0046名前は開発中のものです。
2013/07/06(土) NY:AN:NY.ANID:+/CoJmSYこれと同じような(下手するともっと複雑な)ものを作る必要がある件
0047名前は開発中のものです。
2013/07/10(水) NY:AN:NY.ANID:hFi49aB+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ライブラリは利用者の幅が広いからなあ
■ このスレッドは過去ログ倉庫に格納されています