DXライブラリ 総合スレッド その16
レス数が1000を超えています。これ以上書き込みはできません。
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ライブラリは利用者の幅が広いからなあ
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て、それなりに長いソースだけど、
これ全部がファイヤーボールのプログラムなん??
0148名前は開発中のものです。
2013/07/17(水) NY:AN:NY.ANID:4ylv1rI4data\BulletInit.txt に玉のパラメータが書かれている。
読みこんでるのはApp2.cppの
// ファイアーボールデータ読み込み。
void CApp::PlayerBulletInit(char *filename, char *imagename, BulletData *bullet, CBullet *ball)
こいつ
0149名前は開発中のものです。
2013/07/17(水) NY:AN:NY.ANID:kpZcJ0Sqdxlibのソース読んで見ないとわからないなぁ。
俺も推測でのレスで申し訳ないが、確かDirectXには
ラスタライズ対象範囲を限定する機能があったはず。
もしdxlibがそれを使っていたなら
ラスタライズ範囲が狭くなる分、処理は軽くなるけど
メモリ使用量は変化しない。
結局画像は全体がVRAMに転送されるし、バックバッファのサイズも変化しないので。
0150名前は開発中のものです。
2013/07/17(水) NY:AN:NY.ANID:v0GAbqsXやっぱり重くなるんだと思うよ
0151名前は開発中のものです。
2013/07/19(金) NY:AN:NY.ANID:hMnI35Wdお前飽きっぽいなぁ何も作らんうちにコロコロやる事変えてたんじゃ何も出来ないままでしょ
ttp://blog.livedoor.jp/winpg/
0152名前は開発中のものです。
2013/07/19(金) NY:AN:NY.ANID:s1Ws3Cie0153名前は開発中のものです。
2013/07/19(金) NY:AN:NY.ANID:BHHQFBlfまた直ぐに投げ出すんだろうな。w
0154名前は開発中のものです。
2013/07/19(金) NY:AN:NY.ANID:04yaioY90155名前は開発中のものです。
2013/07/19(金) NY:AN:NY.ANID:o3u0GTiW思わず別人の小学生が増えたかと思ったわ
こいつ素材だけは速いと思ったらいつもパクってるのかよ
ファイアボールなんて速度減衰も跳ね返り減衰も無いし平気でバウンドしながら階段登っちゃうし
Vy += Ay(等加速)
if(Vy>=Vmax)
{Vy=Vmax}
elseif(Vy<=-Vmax)
{Vy=-Vmax}
if(y方向接触)
{Vy=Vmax}(上向き)
if(x方向接触)
{消滅}
座標更新
x += Vx(等速)
y += Vy
Vxの正負はキャラの向きで大きさVx、Vyは-Vmaxで初期化、Ayは常に負(下向き)
VxとVmaxとAyのパラメータだけ調整
5分しか考えてない適当なのだけどこんなのでいいだろどうせ
あとはボールの楕円画像を自転でもさせるぐらいか
自分で考える楽しみ()とか言っちゃうならこんなとこに来ずにこれぐらい自分でやれよ
まあ円形弾幕で一つ一つ座標を三角関数も使わずに手打ち指定しちゃう奴に言っても無駄かもしれんが
0156名前は開発中のものです。
2013/07/19(金) NY:AN:NY.ANID:s1Ws3Cieゲームを崇拝してる所がそのまんまKazuki
KazukiAAが出たら妄想解いて疑おう
騙される人間は推理した事が無いから騙されるわけで、それを知ってるからKazukiは湧き続ける
0157名前は開発中のものです。
2013/07/19(金) NY:AN:NY.ANID:o3u0GTiW単芝であそこまでされたら釣りか別の真性かと思った
0158名前は開発中のものです。
2013/07/20(土) NY:AN:NY.ANID:nmMQpud5素材があれば1週間もかからない気がする
0159名前は開発中のものです。
2013/07/20(土) NY:AN:NY.ANID:FVW2K7jj0160名前は開発中のものです。
2013/07/20(土) NY:AN:NY.ANID:GpeLB3bo0161名前は開発中のものです。
2013/07/20(土) NY:AN:NY.ANID:+SSEepdcマリオのステージは1/3くらいデータの使い回しされてたり(似たような別面)
敵の配置はクリボー×3とかでグループ化してあったりして容量削減がんばってる
「ここから先の床の高さ」とかそういうデータを埋め込んだりして実際のマップそのものは実行時に生成してる
すごいね
0162名前は開発中のものです。
2013/07/20(土) NY:AN:NY.ANID:Ob+Zn2mg0163名前は開発中のものです。
2013/07/20(土) NY:AN:NY.ANID:3y5EbjLj0164名前は開発中のものです。
2013/07/20(土) NY:AN:NY.ANID:eUWUT4lX0165名前は開発中のものです。
2013/07/20(土) NY:AN:NY.ANID:ExCGSRAn0166名前は開発中のものです。
2013/07/20(土) NY:AN:NY.ANID:Ob+Zn2mg0167名前は開発中のものです。
2013/07/20(土) NY:AN:NY.ANID:3bPsLAoCスーパーマリオの話だったのか。
そりゃ確かに面倒だな。
0168名前は開発中のものです。
2013/07/20(土) NY:AN:NY.ANID:0AjeLszX0169名前は開発中のものです。
2013/07/22(月) NY:AN:NY.ANID:LdkNNEKh例えば?
0170名前は開発中のものです。
2013/07/22(月) NY:AN:NY.ANID:IM02LFGgOgre3Dと比べると描画の機能は全然ないぞ
シーングラフとかは3Dゲームで必須だし
参照カウンターによるリソース管理
パーティクル
拡張したマテリアル(テクスチャスクロールとか)
まあDXライブラリはDitrctXの薄いラッパでしかないからいいんじゃない?
必要だと思えば自分で実装してもいいんだし
0171名前は開発中のものです。
2013/07/22(月) NY:AN:NY.ANID:BrTtyz7d0172名前は開発中のものです。
2013/07/22(月) NY:AN:NY.ANID:KkhWYzJ6レイキャスト
コリジョン検出
アニメーション
リソースマネージャー
最低これぐらいは欲しいな。
こんなの個人で再実装する価値はないので
共通基板として使いやすいライブラリを整備して欲しいわ
0173名前は開発中のものです。
2013/07/22(月) NY:AN:NY.ANID:Mz7t6BiK> こんなの個人で再実装する価値はないので
ん。ライブラリにあったら便利なのは同意だが、こういう言い方で切って捨てようとする人って、
大抵自分で具体的なロジックが書けず、実装出来ないまま開き直ってる人だ。
書けない自分は何も悪くない、くれない奴が悪い、みたいに。
0174名前は開発中のものです。
2013/07/22(月) NY:AN:NY.ANID:BBBPUbUN0175名前は開発中のものです。
2013/07/22(月) NY:AN:NY.ANID:IM02LFGg素直にゲームエンジンや他のライブラリ使えよ
0176名前は開発中のものです。
2013/07/22(月) NY:AN:NY.ANID:Mz7t6BiK「汎用性の前提があった上で、どこまでを処理単位の属性にすべきで、どこを決め打ちの固定仕様にするべきか」
って言う設計レベルでジレンマがやってきて、
それはそのライブラリ使って作れる物の制限を生むので、自分が作りたい物によっては使いにくいライブラリになり得るから、
結局アプリケーションの要件次第では別に実装する事になるので、「個人で作る価値はない」なんて台詞は出るわけ無いんだよ。経験があるならば。
その辺がテキトーに見えるので、彼では書けない。
あと、自分の代わりに実装してくれる別の個人がいるって事も頭から抜け落ちてる時点で、ただの「言葉だけ知ってる失礼な人間」だ。
0177名前は開発中のものです。
2013/07/22(月) NY:AN:NY.ANID:KkhWYzJ6ワンダと虚像と塊魂が作れるライブラリならともかく、
ゲームなんて決まり切った処理の繰り返し
0178名前は開発中のものです。
2013/07/22(月) NY:AN:NY.ANID:STMPs5oo> ワンダと虚像と塊魂が作れるライブラリならともかく
えっ、DXライブラリだと作れないの?
0179名前は開発中のものです。
2013/07/22(月) NY:AN:NY.ANID:Mz7t6BiK0180名前は開発中のものです。
2013/07/22(月) NY:AN:NY.ANID:4PGrqMWjその後に、じゃあお前が作って晒してみろって煽る流れとか、なんかKazuki臭い。
0181名前は開発中のものです。
2013/07/22(月) NY:AN:NY.ANID:8xMc8T1J0182名前は開発中のものです。
2013/07/22(月) NY:AN:NY.ANID:FyWL1YGe球体の判定だけでも結構負荷かかりそうで
想定してるオブジェクト数は最大で24*32(768)個ぐらい
実際は半分ぐらいだと思う
0183名前は開発中のものです。
2013/07/22(月) NY:AN:NY.ANID:BBBPUbUN0184名前は開発中のものです。
2013/07/22(月) NY:AN:NY.ANID:nNVuwDHt絶対に当たらない組み合わせを、あらかじめ弾いておくのが
とりあえずのセオリーかしら?
0185名前は開発中のものです。
2013/07/22(月) NY:AN:NY.ANID:ckpg4k2+くっせぇスレになったもんだな
0186名前は開発中のものです。
2013/07/22(月) NY:AN:NY.ANID:ckzbXG2O8分木空間分割でググるといい
俺はBulletPhysics使ってる
0187名前は開発中のものです。
2013/07/23(火) NY:AN:NY.ANID:mcze7PQdめんどくさそうだけどビットで判断するあたり、早そう
円だけなら一次判定で、xyz座標それぞれの半径分近くなってないかとかで弾けそうかとおもえてきた
0188名前は開発中のものです。
2013/07/23(火) NY:AN:NY.ANID:F/7eBvxu>>177は知ったかぶりさんということか
そういうのはすごく恥ずかしいと思う
まだ知らないなら知らないで押し通した方がいいと思う
知らないのにカッコ付けたいだけで
わざわざ醜態を晒すとか恥ずかし過ぎる
0189名前は開発中のものです。
2013/07/23(火) NY:AN:NY.ANID:yj0nWf/nMz7t6BiK の方は俺だけど、どう見たら自演になるんだよ
「価値は無い」って言い切ってるのが、わかってる人間なら思わない不自然な台詞だから突っ込んだんだよ
ちゃんと読み返せ
0190名前は開発中のものです。
2013/07/23(火) NY:AN:NY.ANID:xbeEJt/R0191名前は開発中のものです。
2013/07/23(火) NY:AN:NY.ANID:RawsS/YU0192名前は開発中のものです。
2013/07/24(水) NY:AN:NY.ANID:9hIPTzbI0193名前は開発中のものです。
2013/08/02(金) NY:AN:NY.ANID:BueokvPL公式のどっかの質問でマルチスレッド実装についての注意点みたいなのを
管理人さんが答えてたと思うんだけど
どこだったか憶えてる人いない?
見当たらないんだ
0194193
2013/08/02(金) NY:AN:NY.ANID:0/9fiY+I随分前のトピックだったわ
2010年のトピックだったけど下の注意点って今も変わってないのかな
>DXライブラリを使用したマルチスレッドのプログラムを作成する際に注意すべきことは
・サウンド・画像・モデルの読み込み関数や描画や描画の設定を行う関数を複数のスレッドから同時に呼ばないこと
・入力関係の関数を複数のスレッドから同時に呼ばないこと
・サウンド関係の関数を複数のスレッドから同時に呼ばないこと
です、
モデルに関して言えば MV1LoadModel、MV1DrawModel、MV1DrawMesh、MV1DrawFrame は、複数のスレッドから
呼ぶのは避ける必要があります( つまり描画を行うスレッドは一つにする必要があります )
MV1SetPosition や MV1SetAttachAnimTime や当たり判定などの描画を行わない関数は複数の
スレッドから同時に呼んでも問題ありません
0195名前は開発中のものです。
2013/08/10(土) NY:AN:NY.ANID:iuGss2xMのほうでも少し質問したのですが、
DrawPolygonIndexed3Dで描画するポリゴンはDXライブラリが標準で装備しているZバッファに適用されるのでしょうか?
また、エフェクトに使用するので半透明要素を含むテクスチャを使うのでZソートするのですが、
DrawPolygonIndexed3Dは渡した頂点配列をその場で描画し始めるんですよね
どのようにして実装したらいいでしょうか?
負荷軽減のために一気に描画したいというのもありまして・・・
0196名前は開発中のものです。
2013/08/12(月) NY:AN:NY.ANID:tVMZTkceメタセコだと地形はツライ気がするので………。
もしvueとか使えるなら楽なんですが。
0197名前は開発中のものです。
2013/08/13(火) NY:AN:NY.ANID:zT/b0f+/Vueだともはやモデリングすらしない訳だけど、そこで言ってる楽ってのは、形状を作成するだけの話?
つまりコリジョンの作成とか自分の中の管理の都合とか放っておいて、ただ表示用の形を作る部分について、
例えば極端に言えばボタン一つ押したら思ったような形が出来たらいいな、みたいな。
0198名前は開発中のものです。
2013/08/13(火) NY:AN:NY.ANID:96C41T7F「楽」という表現は不用意でした。
どのソフトを使おうが、それなりの地形を作ろうと思えば相応の苦労があるのは
分かっているつもりです。
ただ、形状もそうですが、テクスチャや木などの設置を考えた場合、
やはり地形専用のソフトであるvueの方が向いているのではないかと
思ったからです。
0199名前は開発中のものです。
2013/08/13(火) NY:AN:NY.ANID:zT/b0f+/その「こっちのソフトの方が向いていてる」と思った理由は何なのかって話。
なんでこの質問を返すかと言うと、形状だけって話なら、BryceとかVueの方がそれに特化してて、自動生成してくれる部分もあるが、
結局そこで作ったモデルデータを自前のプログラムに読んで、かつコリジョンなんかの設定をして、かつ自分の都合で管理する事になるから、
その点を含めた時、「どれが向いてるか」って話も変わるわけで。
ちなみに俺はBlender使ってるけど、その理由はモデリングソフトとして地形製作に向いてるって言う話では無くて、自分が慣れてるからってのと、
あとBlender用のスクリプト作ってコリジョンデータ含めて自分フォーマットで出力させてるからって言う、俺の都合による。
0200名前は開発中のものです。
2013/08/13(火) NY:AN:NY.ANID:m+NIrzIz実際に描画されてるポリゴンの頂点使ってコリジョン判定するんですか?
それとも簡易的なモデル(長方形を連結して形成されただけのような)に、
描画モデルの同じボーン・アニメーションを指定して、衝突判定だけ簡易モデルの方を使うって感じでしょうか
というか処理が重そうですけど、大丈夫なんですか?3次元での距離判定でも結構持ってかれそうな気がするんですけど
角度を持つ長方形とかってめんどくさそう
0201名前は開発中のものです。
2013/08/13(火) NY:AN:NY.ANID:k1Y9Y3rO0202名前は開発中のものです。
2013/08/14(水) NY:AN:NY.ANID:g36cvXmF大抵は別。実際に描画される頂点が少ないなら描画用を流用することもあるが、
普通は別。なぜなのかは、コリジョンの判定計算を勉強しておくれ
0203名前は開発中のものです。
2013/08/15(木) NY:AN:NY.ANID:cmS+cFHD今のはガチでポリゴンに同期してるよ
0204名前は開発中のものです。
2013/08/15(木) NY:AN:NY.ANID:KJrkH+xK0205名前は開発中のものです。
2013/08/15(木) NY:AN:NY.ANID:vLsLWx5iそれはConvex-Hullの事をガチって言ってるのか、それとも飾りの突起まで含めて表示用メッシュ同士を計算に使ってるのかどっち?
当たり判定用の荒いメッシュって、何も単純なボックス一個とかの極端な話じゃないよ
0206名前は開発中のものです。
2013/08/15(木) NY:AN:NY.ANID:rZIVXUnnOBBとかいうやつですか?
ヒントヒント!
0207名前は開発中のものです。
2013/08/15(木) NY:AN:NY.ANID:vLsLWx5i少なくとも「不特定」では無いはずだし、
普通は面について言えば三角の集合。どんな多角形であっても。
立体の交差判定とかでググればいいと思う。それか、nVidiaの厚い本とか
0208名前は開発中のものです。
2013/08/15(木) NY:AN:NY.ANID:vLsLWx5i頂点数の少ない凸包による代理形状同士の交差判定するの。
で、それでと量が多いとしんどいから、距離による取捨を事前に行うの。
0209名前は開発中のものです。
2013/08/15(木) NY:AN:NY.ANID:rZIVXUnnそれだと面どうしが接触している時だけですよね
0210名前は開発中のものです。
2013/08/16(金) NY:AN:NY.ANID:l4Y2LCwfフレームごとのy座標テーブル のジャンプって
どう違うのですか?
詳しくお願いします。
0211名前は開発中のものです。
2013/08/16(金) NY:AN:NY.ANID:F5bNk7nIでもあらゆる状況に対応するデータを作るのは面倒かも
重力からその場で計算すると状況との矛盾は少なくなりやすいがテーブルに比べて処理が重いかも
0212名前は開発中のものです。
2013/08/16(金) NY:AN:NY.ANID:zJzEkpmiそうだよ。詳しい事知りたかったら自分でbulletPhysicsのソースでも追いかけて。
ソースと言うか、先にクラス構成見て何故そうなってるのか把握して実際に使ってみると見えてくると思うけど。
0213名前は開発中のものです。
2013/08/16(金) NY:AN:NY.ANID:Je7og0CV3キャラ2曲2ステージぐらいを予定してます。
プレイ中のスコアによるモデルの動きの変化などはつけるつもりがないので、予め動画を用意しようと
思うのですが、モーションのファイルを渡してリアルタイムで動かすのとどっちがいいですかね?
0214名前は開発中のものです。
2013/08/16(金) NY:AN:NY.ANID:DoWkm/gi個人的にはレンダリング済みのムービーではなく
モデル+モーション+カメラモーションを渡してその場でレンダリングする方がいいと思う
そう考えた理由は、
・モデルの差し替えとかカメラの動きの変更とかが楽そう
ムービーだと全部再レンダリングする必要が出る気がする
・ムービーだとファイル容量的に結構きつそう
MMD回りの知識は無いので細かい所はわからないから
もしかしたら↑の利点は大したことじゃないかもしれないけど…
0215名前は開発中のものです。
2013/08/16(金) NY:AN:NY.ANID:TPaGv75X0216名前は開発中のものです。
2013/08/16(金) NY:AN:NY.ANID:l4Y2LCwf説明してくれて嬉しいんだけど、
プログラムの組み方(ジャンプの作り方)の違い?も
詳しめに説明お願いします
0217名前は開発中のものです。
2013/08/16(金) NY:AN:NY.ANID:T+X3Yd9Tあらかじめ計算した移動量とかのデータを配列変数に入れておくんだよ
0218名前は開発中のものです。
2013/08/16(金) NY:AN:NY.ANID:zJzEkpmiMMD使ってって言ってる時点で、MMDでレンダしたムービー(aviなど)を再生したいって事だよな
0219名前は開発中のものです。
2013/08/17(土) NY:AN:NY.ANID:ybNRCsu9>あらかじめ計算した移動量とかのデータを配列変数に入れておくんだよ
え、想像だにしなかった説明だわ、、、
計算した移動量を入れた配列をどう扱うの。
しかも、それは"フレームごとのy座標テーブル のジャンプ"の話ですか?
0220名前は開発中のものです。
2013/08/17(土) NY:AN:NY.ANID:0LNl2nPC多分毎回のジャンプが同じ軌跡をたどる場合、座標の移動量だけ並べとくって話だと思う
あんまり意外でもない普通の話だ
0221名前は開発中のものです。
2013/08/17(土) NY:AN:NY.ANID:z/PrNZy5簡単でしょ
ジャンプ中の
y=元の位置+重力計算(フレーム数)
を
y=元の位置+テーブル[フレーム数]
に置き換えるだけ
0222名前は開発中のものです。
2013/08/17(土) NY:AN:NY.ANID:7Xlhg6gd高さが固定のジャンプはそのまんまだろうけど、マリオみたいな
ボタンを押す長さで高さが変わるようなジャンプはどうやってるんだろ
素人の考えだと上りと下りのテーブルを分けてボタンが離されたら
切り替えるって方法しか思いつかない
0223名前は開発中のものです。
2013/08/17(土) NY:AN:NY.ANID:ybNRCsu9解説が端的というか、短かすぎて何言ってるかわからないよ。
カヲルくん、君がなにを言ってるかわからないよ。
もっとバカ(プログラム初心者)でもわかるように
順序立てて解説してほしい。
っていうか、「フレームごとのy座標テーブルのジャンプ」って
もしかして、予め配列にいれている数値をフレームでまわして与えるだけなの??
それで、壁なんかにぶつかったら、yを減らして下に落とすとか。
そいうこと????そんな単純な正体だったの??
0224名前は開発中のものです。
2013/08/17(土) NY:AN:NY.ANID:sBWW2za0マリオは小ジャンプも長押しジャンプも初速は同じ
ボタンが離されるか一定フレーム経過るまで一定(一定じゃなくても減速を抑えた)の速度で上昇させて
それから上昇速度を毎フレーム減らせば、そのうち速度がマイナスになって落下し始める
ボタンを押した時間によって、離してからの落下開始までの時間を変えたいなら
押した長さを掛けたり割ったりして調節するとか、上昇速度を押してる間に調節する
テーブルなら
tbl=5,4,3,2,1,0,-1,-2,-3,-4,-5
ってなってるとして
ボタン押されてる間はtbl0だけ見るようにして
離されたらtbl1とずらしてく
0225名前は開発中のものです。
2013/08/17(土) NY:AN:NY.ANID:ybNRCsu9yを減らして下に落とす
↓
yを増やして下に落とす
0226名前は開発中のものです。
2013/08/17(土) NY:AN:NY.ANID:llb+GKno0227名前は開発中のものです。
2013/08/17(土) NY:AN:NY.ANID:9jJD2zAK少し観察して考えたらわかりそうなもんなのに
0228名前は開発中のものです。
2013/08/17(土) NY:AN:NY.ANID:fpHgg1rt単純なのはそうだろう
0229名前は開発中のものです。
2013/08/17(土) NY:AN:NY.ANID:fpHgg1rtttp://www.amazon.co.jp/dp/4774144290
0230名前は開発中のものです。
2013/08/17(土) NY:AN:NY.ANID:0LNl2nPC> ボタンを押す長さで高さが変わるようなジャンプはどうやって
押す長さによってn倍したらいいじゃない
0231名前は開発中のものです。
2013/08/17(土) NY:AN:NY.ANID:fpHgg1rt離されたら配列のインデックスを減らしていけばいいじゃない
0232名前は開発中のものです。
2013/08/17(土) NY:AN:NY.ANID:0LNl2nPC0233名前は開発中のものです。
2013/08/17(土) NY:AN:NY.ANID:029MaZhBこういう基本アルゴリズムの話になると急にバカっぽくなるのはどうしてだよw
0234名前は開発中のものです。
2013/08/17(土) NY:AN:NY.ANID:WrtgfiKZ0235名前は開発中のものです。
2013/08/17(土) NY:AN:NY.ANID:9jJD2zAKマップを京都のあの変な街みたいにブロックごとにわけて
現在位置を中心に生成するフォグで見えなくなるぐらいの距離のブロックまで描画するうんたらかんたら?
0236名前は開発中のものです。
2013/08/17(土) NY:AN:NY.ANID:9jJD2zAKあとエースコンバットの地平線とかどうやって表現してんだ?
高度あげると地形マップが四角なってるのが見えちゃう
かといってこれ以上Zバファの探索距離を伸ばすと処理能力がきついからマップ広げられないし、
遠くなるだけで四角く見えなくなるわけでは無いだろうし
0237名前は開発中のものです。
2013/08/17(土) NY:AN:NY.ANID:z/PrNZy5Level of Detailでググれ
0238名前は開発中のものです。
2013/08/18(日) NY:AN:NY.ANID:YlvB6n+hLODってカメラとオブジェクトの距離を一個一個測って描画するモデルを決めるの?
0239名前は開発中のものです。
2013/08/18(日) NY:AN:NY.ANID:/odHbjnt最低限がそうだよ。俺は区画の論理マップ用意しておいてそれに対して計算するけど、
相手が物理座標じゃないだけでやってる事はそう。
で、本当のLOD処理になるとそれプラス、距離に応じて頂点数異なるメッシュに切り替えたりもする。
何故ならアップで見えて欲しいディテールと遠景で最低限必要なディテールは異なるから
0240名前は開発中のものです。
2013/08/18(日) NY:AN:NY.ANID:/odHbjnt遥か遠景の木にそこまでのディテールは必要ないので簡素なモデルに切り替える。
テクスチャについても同じ理屈
0241名前は開発中のものです。
2013/08/18(日) NY:AN:NY.ANID:YlvB6n+hカメラの向いてる方向から、オブジェクトの座標をみて、そもそものZバッファ登録を間引いたりする?
間引くとしたら、巨大なオブジェクト、例えば重心がカメラの後ろにあるのに描画範囲内に頂点があるようなオブジェクト
とかってどうすればいい?
0242名前は開発中のものです。
2013/08/18(日) NY:AN:NY.ANID:En0xzz23http://www1.axfc.net/uploader/so/3000313
pass:jump
重力計算のほうは、とりあえず最大値でジャンプしはじめてボタンが離された瞬間に
最小値に切り替えるようにしたらそれっぽくなった
問題はテーブルのほうなんだが、いろいろいじってみたけどやっぱりわからない
とくにブロックとの当たり判定とか自由落下が加わるとややこしくなってさっぱり
根本的につくり方が違ってるんだろか・・・
0243名前は開発中のものです。
2013/08/18(日) NY:AN:NY.ANID:tDjaOJ/W(ファミコンで可能な範囲で)計算するより、手作業で数値を突っ込むのが一番心地いいジャンプになった、ってだけの話?
0244名前は開発中のものです。
2013/08/18(日) NY:AN:NY.ANID:6KynyCiG0245名前は開発中のものです。
2013/08/18(日) NY:AN:NY.ANID:UZic/wA2正解?を言うと
テーブルを作る手間は非常に面倒臭いのでファミコン時代ならともかく今のPCゲームじゃ普通に計算するのが当たり前
sincosとかは今でも遅いからsin0°,sin1°…といった値をテーブル化して計算の途中で参照する手法はある
0246名前は開発中のものです。
2013/08/18(日) NY:AN:NY.ANID:JwVlU+v6計算結果を参照する代わりにそのテーブルを参照すればいいだけじゃないの
0247名前は開発中のものです。
2013/08/18(日) NY:AN:NY.ANID:JwVlU+v60248名前は開発中のものです。
2013/08/18(日) NY:AN:NY.ANID:JwVlU+v60249名前は開発中のものです。
2013/08/18(日) NY:AN:NY.ANID:/odHbjnt俺のやってる方法は別に完全無欠な訳じゃないからアレだけど、
とりあえずZバッファの部分的なクリアやdiscardみたいな事はしてなくて、そもそも対象外のオブジェクトをドローさせないようにしてる。
で、それとも繋がるけど、重心がカメラの後ろにあるがカメラの前に部分的に見えるほど巨大な物に関しては、
なるだけそう巨大にならないよう分割管理してる。
勿論それでも程度問題で重心とオブジェ
クト半径の間にカメラが来る事は普通にあるんだが、その場合は基本的に描画する。
で、その1描画に対してどれだけの頂点量なりが必要なのか、って話で、それを減らすためにバランスみて分割し、
巨大にならないようにするって感じ。それだけ
0250名前は開発中のものです。
2013/08/19(月) NY:AN:NY.ANID:QbLSnPSI0251名前は開発中のものです。
2013/08/20(火) NY:AN:NY.ANID:1ERmh1yMすまん、VSでいじって研究したいから
ついでにMap、Graphic、Commonらのソースもつけてくれん?
0252名前は開発中のものです。
2013/08/20(火) NY:AN:NY.ANID:IRDYNLNeいらないだろ。研究したいとか嘘つけ
0253名前は開発中のものです。
2013/08/20(火) NY:AN:NY.ANID:1ERmh1yMなんで嘘呼ばわりされるのか
確かにジャンプそのものの構造は入ってるソースでわかるし
includeで必要な外回りも自分で作って補えば済むが
全部渡してもらった方が、その場で色々触れるんだから
話が早いじゃないか。
0254名前は開発中のものです。
2013/08/20(火) NY:AN:NY.ANID:nE/aKjYE0255名前は開発中のものです。
2013/08/20(火) NY:AN:NY.ANID:1ERmh1yM>>242
秘伝なのかい?
0256名前は開発中のものです。
2013/08/20(火) NY:AN:NY.ANID:IRDYNLNe要点は書いて頂いたんだからそれ以上いらないだろっての
秘伝とかどうでもいいよ
0257名前は開発中のものです。
2013/08/20(火) NY:AN:NY.ANID:RYMPR0Rz0258名前は開発中のものです。
2013/08/20(火) NY:AN:NY.ANID:G84eq+RC0259名前は開発中のものです。
2013/08/20(火) NY:AN:NY.ANID:B7CRSuVs他人に何かさせて「その方が早い」とか言うのは失礼極まりない。
新入社員が「自分がやるより先輩がやるほうが早いし効率いいじゃないですか」と
先輩に全部仕事丸投げして自分は何もせずいたらどう思うよ。
0260名前は開発中のものです。
2013/08/20(火) NY:AN:NY.ANID:1ERmh1yM別にマップ製作のソースに興味無いよ。
そんなこと疑うんなら、他の誰でもいいから
include消してVSでただのジャンプソースをビルド出来るようにしたのを
うPし直してくれ。
別にこっちはそれで結構だから。
0261名前は開発中のものです。
2013/08/20(火) NY:AN:NY.ANID:G84eq+RCお前みたいにウザい奴は罵倒して放置でおしまいだって
0262名前は開発中のものです。
2013/08/20(火) NY:AN:NY.ANID:yj0CkddT信じるか否かは本人の判断を見て待つということでいいじゃないですか。
無駄に争うのはやめましょうよ。
0263名前は開発中のものです。
2013/08/20(火) NY:AN:NY.ANID:Am+EJSmE0264名前は開発中のものです。
2013/08/20(火) NY:AN:NY.ANID:1ERmh1yMお前が疑うからだろ、バカが。
行動出来ないなら口出すな、ハゲ
0265名前は開発中のものです。
2013/08/20(火) NY:AN:NY.ANID:t4onr7Y10266名前は開発中のものです。
2013/08/20(火) NY:AN:NY.ANID:WhQ/JuG70267名前は開発中のものです。
2013/08/20(火) NY:AN:NY.ANID:t4onr7Y10268名前は開発中のものです。
2013/08/22(木) NY:AN:NY.ANID:wVDRP+4w0269名前は開発中のものです。
2013/08/22(木) NY:AN:NY.ANID:CSnKabCO既存のゲーム用ツールやエンジンからの比較だと増えると思う。
0270名前は開発中のものです。
2013/08/22(木) NY:AN:NY.ANID:eHD9Ed8s他のDirectXライブラリを使えてるなら乗り換えでの大きな省力メリットは特にない
0271名前は開発中のものです。
2013/08/22(木) NY:AN:NY.ANID:oiYpijdQそれともゲームとしてのインパクト薄くなるけど直にダイレクトえっクス叩いたほうがいい?
0272名前は開発中のものです。
2013/08/22(木) NY:AN:NY.ANID:rGrXrxQf斬新なゲームならライブラリ使っても良いんだろうけど、
3Dプログラミング出来ますって言って
DXライブラリ使われるとどうだろうね。
unityだとまた話違うだろうけど。
0273名前は開発中のものです。
2013/08/22(木) NY:AN:NY.ANID:oiYpijdQ0274名前は開発中のものです。
2013/08/22(木) NY:AN:NY.ANID:yqWqUxZT太鼓の鉄人をみてループで行うべき機能は大体わかったけど書き方が分からない
効果音フラグを初期化
入力に対する計算
弾の計算メイン
弾ヒット結果表示メイン
描画メイン
FPS表示
効果音
fps制御
ちなみにそのゲームではこういう感じで回してた
0275名前は開発中のものです。
2013/08/22(木) NY:AN:NY.ANID:wVDRP+4wthx。どう言う場合に適用するか、って意味の評価をしたいだけなのだ。
既存って意味だと、基本的にwin32に関わる部分はずいぶん前に作ってちまちま改良した自前のライブラリがある。
その他既成の物だと、OGRE3Dやbulletは慣れてる。C#の場合はUnityも。
0276名前は開発中のものです。
2013/08/22(木) NY:AN:NY.ANID:Kq21EhtVそういや本家の掲示板にエラーわかる!C結構できる!でもpathの通し方わかんない!ってコがいたなあ
0277名前は開発中のものです。
2013/08/22(木) NY:AN:NY.ANID:wVDRP+4w0278名前は開発中のものです。
2013/08/22(木) NY:AN:NY.ANID:wVDRP+4w障害対応まだ終わんね
0279名前は開発中のものです。
2013/08/25(日) NY:AN:NY.ANID:NwBbjewo勝手に例にして悪いけどmain関数が>>274みたいになってるんだけど
メニュー画面とか実装していくなら>>274のようなゲーム部分(初期化、ループ処理、終了処理)はひとまとめにして
メインメニューのコンテンツがmainに並んで選べるようにする感じ(ゲーム処理関数、コンフィグ変更処理関数、など)しか思いつかないんだけど
これってどうなのかな
みんなmainになに置いてる?
0280名前は開発中のものです。
2013/08/25(日) NY:AN:NY.ANID:wOoNNvxiauto Game =new TitleMenu();
while(???){
Game->Update();
}
delete Game;
}
0281名前は開発中のものです。
2013/08/25(日) NY:AN:NY.ANID:7sWlqmjOmainなんて現在のシーンの更新をループ回すだけ
0282名前は開発中のものです。
2013/08/25(日) NY:AN:NY.ANID:WgTgoMaK0283名前は開発中のものです。
2013/08/25(日) NY:AN:NY.ANID:zLoY929s今のところアクションゲームのゲーム部分だけしか作ってないから>>280みたいに
初期化→更新(ループ)→終了ってだけで済んでるけど、
例えば自機の装備変えるとか、ステージ選択とか実装するとすると
ゲーム部分以外の処理の初期化→更新(ループ)→終了があるわけじゃん
だから>>280みたいなのをゲーム、ガレージ、コンフィグ、とかっていくつか作って、
選んだ処理の初期化→更新(ループ)→終了を行うっていう風にしようとしてる俺は間違ってる?
0284名前は開発中のものです。
2013/08/25(日) NY:AN:NY.ANID:JNjQaEJv最終的にはゲームが完成するのが「正解」ではあるのだろうけど、
あまり見ない作り方だと思う
各「画面」の下にループがぶら下がってるんじゃなくて、
ループの下に、各画面の処理を入れる。
0285名前は開発中のものです。
2013/08/25(日) NY:AN:NY.ANID:rF9fVw+bフラグごとに分岐するように組めばいいと思うの
自分はゲーム作る時にモードフラグの分岐で
タイトル含めて各種画面処理にいけるよう分けてる
0286名前は開発中のものです。
2013/08/25(日) NY:AN:NY.ANID:YgD7yi63で、メインループとかはそれで言うと最下層。
各処理レイヤの分離量や度合いは概要(基本)設計から下ろしながら決めてく感じ
0287名前は開発中のものです。
2013/08/25(日) NY:AN:NY.ANID:wOoNNvxi結局キャラクタが当たり判定の結果を処理するまで次の判定できないわけじゃん
これってただしいの?
0288名前は開発中のものです。
2013/08/25(日) NY:AN:NY.ANID:+y0GKsDZ当たった後の処理はゲームによっては不可能なのでそのあとにやる
0289名前は開発中のものです。
2013/08/25(日) NY:AN:NY.ANID:XZPuxib4http://www1.axfc.net/uploader/so/3006859
0290名前は開発中のものです。
2013/08/25(日) NY:AN:NY.ANID:YgD7yi63そういう「ゲームロジック側の一部分を切り取ったものだけをマルチスレッド化」ってよっぽど事情が無いとやらないが、
やるとしたら >>288 みたいに候補のリストアップの荒い振り分けとか、あるいはフラグ列挙くらいかな。
大抵は音楽再生や描画や入力処理側と、ゲームロジックって切り口でスレッド分けるはするが
0291名前は開発中のものです。
2013/08/25(日) NY:AN:NY.ANID:BP/5fE+Tわざわざ他スレッド処理にすると、無意味に新しい問題が発生するケースの方が多いからね
0293283
2013/08/25(日) NY:AN:NY.ANID:zLoY929sやっぱそうするほうがいいのかな
どうせ完全に独立してる処理だし>>283みたいにしたほうが
読みやすくて管理しやすいかと思ってたがそうでもないのか
よしじゃあこの方向性で作ってくことにするよ
>>292も経験談ありがとう
0294名前は開発中のものです。
2013/08/25(日) NY:AN:NY.ANID:wOoNNvxiこれがなぜか真逆を向いてるので、0から引いてみたのですが同じ方向をさしてしまいます。
どうしたらいいですか?
DrawLine3D(Position,VScale(VAdd(Position,DestinationDirection),500),321321);
DestinationDirection = VSub(VGet(0,0,0), DestinationDirection);
DrawLine3D(Position,VScale(VAdd(Position,DestinationDirection),500),121121);
0295名前は開発中のものです。
2013/08/26(月) NY:AN:NY.ANID:3sWaI00w自分の経験だと、「なぜか真逆を向いている」という状況を見直さないと、今仮に直ったとしても、どこかでしわ寄せがくるよ
2行目が実行された後、DestinationDirectionはちゃんと更新されてる?
VECTORにoperator=が実装されていれば問題ないと思うけど
0296282
2013/08/26(月) NY:AN:NY.ANID:6Oe3V9HVあるあるw
なんかおかしいな、っていうのは絶対どこかにバグがあるって事だからな。
0297名前は開発中のものです。
2013/08/26(月) NY:AN:NY.ANID:Mge8NhcZ今ブレークポイントで値を確認してみたところ、実行前と実行後でしっかり符号が反転してます。
//目的地へのベクトル
VECTOR DestinationDirection = VSub(目的地 , 現在地);
//座標系を自分視点に回転させる行列
MATRIX Rot= MGetAxis2(キャラクターのx軸,キャラクターのy軸,キャラクターのz軸,キャラクターの座標);
//回転適用後正規化
DestinationDirection = VNorm(VTransform(DestinationDirection,Rot));
0298名前は開発中のものです。
2013/08/26(月) NY:AN:NY.ANID:3sWaI00w>>294でのDrawLine3Dに1行目と3行目で渡している引数は異なるけど、結果は同じ値だってこと?
あと、何でもかんでもDestinationDirectionにしちゃうと、どういう状態の値かわからなくなっちゃうよ
変数の使い回しは最小限にすべき(速度に致命的な問題がなければ)
0299名前は開発中のものです。
2013/08/26(月) NY:AN:NY.ANID:Mge8NhcZ目的地の座標を、オブジェクトの周りにグルグル動くように設置してみたのですが
DrawLine3Dがまったく動きません。。同じ方向を向いたまま・・
画面に目的地の座標と、オブジェクトの座標を描画させましたが両方共正常に動いてましたでした。
ということは
MGetAxis2の使い方が間違ってるんですか?
0300名前は開発中のものです。
2013/08/26(月) NY:AN:NY.ANID:3OaSUNAmもしかしてワールド座標の原点からキャラクターの座標離れてないか?
>>297だと「(ワールド座標原点から)目的地へのベクトル」を、
キャラクターのローカル座標に変換(ここで目的地〜現在地のベクトルが、キャラ〜原点の長さより微小だと、
いくら目的地〜現在地のベクトルを回しても「キャラから原点」のベクトルとほぼ等しいから動いてるように見えない)
さらに正規化してるのでベクトルが短くなって変化がわかりにくくなる
って処理になってる気がする
キャラクターの座標動かしてもベクトルが回らないなら俺が間違ってるけど
俺の言ってる通りなら
//目的地へのベクトル
VECTOR DestinationDirection = VSub(目的地 , 現在地);
を
= VGet(目的地)でいいと思うんだけど
0301名前は開発中のものです。
2013/08/26(月) NY:AN:NY.ANID:3OaSUNAm>>300の3行目
「(ワールド座標原点から)現在地〜目的地"方向"へのベクトル」
分かりにくい文章でスマン
●騒動で規制解除されてるとは思わんかった
0302名前は開発中のものです。
2013/08/28(水) NY:AN:NY.ANID:FYJE+KJl>VECTOR VAtoB = VSub(ObjectB.Pos, ObjectA.Pos);
>MATRIX MAngle = MGetAxis2(ObjectA.AxisX, ObjectA.AxisY, ObjectA.AxisZ, ObjectA.Pos);
>VECTOR VRDir = VNorm(VTransform(VAtoB, MAngle));
騙されたと思っていっぺん
VECTOR VRDir = VNorm(VTransform(VAdd(ObjectA.Pos,VAtoB), MAngle));
こう書き換えてみて
0303名前は開発中のものです。
2013/08/28(水) NY:AN:NY.ANID:3z41TTVb0304名前は開発中のものです。
2013/08/29(木) NY:AN:NY.ANID:qMhNLM1kこのサンプルって、
テーブルジャンプに切り替えるボタンある?
画像には専用キャラが用意されてるみたいだけど。
それとも出来なかった、というオチなのかな
0305名前は開発中のものです。
2013/08/30(金) NY:AN:NY.ANID:3yecoD3Aガラガラ( ^^ ) <これからも僕を応援して下さいね(^^
=〔~∪ ̄ ̄〕
= □――◇ Kazuki
0306名前は開発中のものです。
2013/08/30(金) NY:AN:NY.ANID:vDu0CoH6数値にこのような光彩は使えますか?
0307名前は開発中のものです。
2013/08/30(金) NY:AN:NY.ANID:8jH5p+TB0308名前は開発中のものです。
2013/08/30(金) NY:AN:NY.ANID:DDleui+F0309名前は開発中のものです。
2013/08/30(金) NY:AN:NY.ANID:Ssi1qKK/0310名前は開発中のものです。
2013/08/30(金) NY:AN:NY.ANID:1LqvaBpR一発だぞ
0311306
2013/08/30(金) NY:AN:NY.ANID:vDu0CoH60312名前は開発中のものです。
2013/08/30(金) NY:AN:NY.ANID:Ssi1qKK/なにが一発なの?
0313名前は開発中のものです。
2013/08/30(金) NY:AN:NY.ANID:8jH5p+TB0314名前は開発中のものです。
2013/08/30(金) NY:AN:NY.ANID:DDleui+F確かにPhotoshop一発でいろんなパターンを作れそうだ
0315名前は開発中のものです。
2013/08/30(金) NY:AN:NY.ANID:um1F6koe0316名前は開発中のものです。
2013/08/30(金) NY:AN:NY.ANID:h4zjWU5X0317名前は開発中のものです。
2013/08/30(金) NY:AN:NY.ANID:8jH5p+TB0318名前は開発中のものです。
2013/08/30(金) NY:AN:NY.ANID:JYnyjM+Lどうやって実装すればいいか思いつかない俺がいる
指定座標周辺のモデルだけを読み込み・描画する方法とかあったっけ
まあ作る予定は無いからわりとどうでもいいけど
0319名前は開発中のものです。
2013/08/31(土) NY:AN:NY.ANID:cGG2OHkXあったっけって、俺はそうやってるけど。
0320名前は開発中のものです。
2013/08/31(土) NY:AN:NY.ANID:dzWCAUyj指定メッシュのみ描画とかあったっけ?
それともシェーダで切り捨てでもしてるの?
0321名前は開発中のものです。
2013/08/31(土) NY:AN:NY.ANID:cGG2OHkX見かけ上一続きに見える地形だからって描画物のデータまで一つにはしないでしょ
カメラに見える範囲の論理座標上にあるパーツだけを描画するだけ
シェーダで切り捨てって何かエラく曖昧で遠回りな発想だと思う
0322名前は開発中のものです。
2013/08/31(土) NY:AN:NY.ANID:N1LgE29S一度、文字列レイヤーで等幅フォントをASCIIコード順に文字を並べておく
それのフォント指定を変えたりレイヤースタイルをいじったりすることでいろんなフォント画像をサクっと作れる
0323名前は開発中のものです。
2013/08/31(土) NY:AN:NY.ANID:3orXmSlx0324名前は開発中のものです。
2013/08/31(土) NY:AN:NY.ANID:8+o4Sg8P0325名前は開発中のものです。
2013/08/31(土) NY:AN:NY.ANID:EcHQDQadhttp://www.forest.impress.co.jp/docs/review/20130829_613180.html
http://www.forest.impress.co.jp/docs/review/20120229_515208.html
http://www.forest.impress.co.jp/docs/review/20120315_518253.html
0326名前は開発中のものです。
2013/08/31(土) NY:AN:NY.ANID:EcHQDQad0327名前は開発中のものです。
2013/08/31(土) NY:AN:NY.ANID:dW7UjI6a便利そう
0328名前は開発中のものです。
2013/08/31(土) NY:AN:NY.ANID:iI9PofG60329名前は開発中のものです。
2013/08/31(土) NY:AN:NY.ANID:rlru/+wN遠い地形の部分ってどうするの?
フォグでかき消すの?
0330名前は開発中のものです。
2013/08/31(土) NY:AN:NY.ANID:rlru/+wN巨大なメッシュを遠くに描画すると、描画距離ギリギリのところでギザギザになる
0331名前は開発中のものです。
2013/08/31(土) NY:AN:NY.ANID:+kDqXWI/アンチエイリアスあり・なしが設定出来るから、その形状のフォントを使えば出来る
レゲー再現フォントをゲームで使用する上での著作権の問題はしらん
あと>>325みたいなビットマップフォントを使えばレトロっぽい表現も不可能ではない
0332名前は開発中のものです。
2013/08/31(土) NY:AN:NY.ANID:1b4OllaIそうか箱庭型ばっかり作ってたせいで確かになんか凝り固まってたわ
でも木とか建物はその通りで出来るけど地形なんかは難しくないか?
地形も単位塊に分解しておいて描画するの?
>>330
最近Zバッファのビット深度変更する関数追加されて
24(32)bit管理出来るようになったけどそれでもダメなの?
0333名前は開発中のものです。
2013/09/01(日) 10:41:51.34ID:sBWkVt02今まで8ビットだったの?
0334名前は開発中のものです。
2013/09/01(日) 10:43:46.93ID:jFCnT/dx0335名前は開発中のものです。
2013/09/01(日) 18:19:53.79ID:T8l+CxBq今までは16bit
16,24,32bitに変更できるようになった
管理人さん曰く32bitはほとんどのグラボでまだ対応してないと思われる、らしい
>Zバッファのビット深度を設定するための関数を追加しましたので、よろしければお試しください
>// 画面用のZバッファのビット深度を設定する( 16 or 24 or 32 )
>int SetZBufferBitDepth( int BitDepth ) ;
>ただ、現状 32bit深度のZバッファは無さそうです( GeForce GTX 660 Ti でも 32bit は非対応でした )
>なので 32bit を指定した場合は恐らく 24bit になります
0336名前は開発中のものです。
2013/09/01(日) 19:53:47.16ID:sBWkVt02でも今までの3Dゲームって殆ど3バイトかそこらだったんじゃないの?
少なくとも2バイトだとレンダリングしてみた限りどうやっても遠くの方のZバッファがお粗末になるし
2バイトで解決できるならそれに越したことないし・・・
0337名前は開発中のものです。
2013/09/01(日) 20:16:09.49ID:Jb54ezv9どうしても精度欲しいならシェーダーで自前で計算すれば
大半の環境では浮動小数点で24bit精度ぐらいはいける
DirectX9だからそこらへん面倒なんだよな
0338名前は開発中のものです。
2013/09/01(日) 22:21:27.53ID:yiwvfQEvここの下にあるプログラムでIsAbleToGoという関数のreturnがどういう動きをしているか
わからないんですが
0339名前は開発中のものです。
2013/09/01(日) 22:24:12.11ID:gGoLdIHGreturnは実行された時点で関数を終了する
0340名前は開発中のものです。
2013/09/01(日) 22:31:18.89ID:Jb54ezv9自分で付け加えてみれば理解しやすい
コメントのエラーてのは関数の意味からすると間違いのような気もするが
0341名前は開発中のものです。
2013/09/01(日) 22:46:08.86ID:sBWkVt02こういうのは、少なくともカメラからキャラクターまでの距離が最低値で、
街の向こうの巨大な岩山まで最大値として存在しているわけですよね。
Dxlibでこの画面を再現しようとすると、多分この距離だと街の城壁と、地面の間がギザギザになると思います・・・
変なテクニックとかないんでしょうか?
今LODと同じ描画距離を使うといい感じになりそうだと思ったんですけど、どうですかね?
高精度ポリゴンを描画する距離 10.0f 〜 1000.0f
低精度ポリゴンを描画する距離 1000.0f 〜 100000.0f
みたいな感じでLODを設定してたら、
同じ値でSetCameraNearFarでそれぞれ描画します。
つまり描画を2回に分け、1フレームに2回SetCameraNearFarを使用します。
SetCameraNearFarの速度と、1000.0f付近のオブジェクトが変なことになるかも??
0342名前は開発中のものです。
2013/09/01(日) 22:49:10.02ID:sBWkVt02Dxlibでこんな感じのことできるのかな
低精度ポリゴンを描画したあとSetCameraNearFar(10.0f,1000.0f);
とかしたら低精度ポリゴンのZバッファ登録がごっそり消えたりしないですか?
0343名前は開発中のものです。
2013/09/01(日) 22:50:50.05ID:Q6hJ8HWA0344名前は開発中のものです。
2013/09/01(日) 23:10:53.87ID:yiwvfQEvありがとうございます
returnが実行されると終了するのは理解しました
returnのあとの1と0はどこに返ってるのでしょうか?
0345名前は開発中のものです。
2013/09/01(日) 23:38:10.35ID:sBWkVt02スレ内検索したら余り良いイメージじゃないな
0346名前は開発中のものです。
2013/09/01(日) 23:47:21.06ID:lf+IcCCvkazuki云々はスルー推奨します
0347名前は開発中のものです。
2013/09/02(月) 01:01:28.93ID:QJgiu08Rif ( IsAbleToGo(ch.x,ch.y,ch.muki) == 1 ) 〜以下略
ここ。
この場合は、その return で返ってきた値が 1 だったら以下を実行するって事だね。
0348名前は開発中のものです。
2013/09/02(月) 16:54:24.87ID:8PlDEGpqちょっと敏感になりすぎだな
本人が来ない限り荒れることもあんまりないとは思うけど
0349名前は開発中のものです。
2013/09/02(月) 23:44:04.41ID:UU3QmRU2クリップ距離を変えるのも速度が気になるし
クリップを変えたらZバッファの内容が消去されたりしちゃうのか
0350名前は開発中のものです。
2013/09/03(火) 00:19:40.77ID:WG2TGOYr解決しましたありがとうございます
0351名前は開発中のものです。
2013/09/03(火) 02:15:55.70ID:fGZfDzyY0352名前は開発中のものです。
2013/09/03(火) 02:23:51.44ID:hziIzZtX0353名前は開発中のものです。
2013/09/03(火) 11:15:48.07ID:IUCDpmVJ0354名前は開発中のものです。
2013/09/03(火) 11:58:41.36ID:hziIzZtX0355名前は開発中のものです。
2013/09/03(火) 12:07:01.91ID:IUCDpmVJそういう意味でも、Dxライブラリだけで何でも出来る訳じゃ無いでしょ
0356名前は開発中のものです。
2013/09/03(火) 13:18:10.53ID:hziIzZtXDirectXを使うってのは要はDirectXのラッパを自分で書くということだから、
完成度の高いDXライブラリを使わず、自前でDirectXのラッパ用意してまでやりたいことがあるか?ってこと
DXライブラリは機能が豊富すぎて出来ないことが殆どないから自前でやる意味がないんだよ
一見出来なさそうなことも隠し関数をチェックすれば対応されてる
シェーダ関係や3D関係の処理も、DXライブラリでは使いやすいようにラッピングされてるし
まぁ個人的見解だから、他の人の意見も聞きたかっただけだ すまん
0357名前は開発中のものです。
2013/09/03(火) 13:36:14.47ID:qxxE0Ana自前ライブラリはDirectX11での実験に必要な最低限の実装
SM5.0だと長いシェーダー書けるのはいいよ
DXライブラリは過去の互換と2D用なんで結局一番使う
0358名前は開発中のものです。
2013/09/03(火) 15:34:49.76ID:IUCDpmVJ具体的にやりたい事決まると沢山あると思うけど。
例えば汎用的なパスアニメーションとか。
あるいはちょいゲームロジック寄りになるが、一枚画像に並べた地形ドット絵をテクスチャとして、
マスに並べて表示するクラスを設計する時、わざわざDxライブラリ経由でやらなくても
直接書いた方が実行時の余計な呼び出しや整理もいらないから効率いいとか。
関数だけを見るんじゃなくて、具体的なシチュエーション前提にして、その時の実行イメージ考えると、ちょいちょいあると思う。
少なくとも、Dxライブラリだけあれば他はいらないって事は無いかなと
0359名前は開発中のものです。
2013/09/03(火) 15:36:12.38ID:IUCDpmVJOgitarが便利だよな。bulletとも組み合わせやすいし。
… Dxライブラリと大分立場違う物だけども
0360名前は開発中のものです。
2013/09/03(火) 16:19:07.79ID:hziIzZtX効率面で言えばちょい無駄な実装になることはちょくちょくあるな
今のPC環境でその速度差が問題になることはないが
0361名前は開発中のものです。
2013/09/03(火) 16:46:58.99ID:IUCDpmVJ元々直接ハンドリングできてどうすりゃいいかもはっきりわかってる時は、わざわざDxライブラリに合わせていらない処理書くことも無いかなって事。その効率
0362名前は開発中のものです。
2013/09/03(火) 18:31:50.41ID:vy4OesbYそっち使うだろ普通
0363名前は開発中のものです。
2013/09/03(火) 19:38:53.31ID:D+5YHDag0364名前は開発中のものです。
2013/09/03(火) 19:41:09.72ID:hziIzZtX0365名前は開発中のものです。
2013/09/03(火) 19:45:19.40ID:IUCDpmVJ0366名前は開発中のものです。
2013/09/03(火) 19:47:21.29ID:TiiNbJCS俺も7.0時代にbitbltよりずっとはやーいとか言って叩いてたから資格は十分だな
ツクールだろうがライブラリだろうがやりたい事できてる内はなんでもいいんじゃね
0367名前は開発中のものです。
2013/09/03(火) 20:06:09.25ID:D+5YHDagそしてどちらとも書いていない。
経験者はそっち使うだろろ>>362は言っていると思ったが違うのか?
0368名前は開発中のものです。
2013/09/03(火) 20:20:53.48ID:IUCDpmVJいやそう穿った見方されてもややこしくなるんだが、元々は、>>351 の話に対して「必要なら使うよ」と言った。
その後、"苦労して"行く意味が無い、と行っていた人物が「完成度の高いDxライブラリを使わず自前でやりたい事なんてあるか」と書いていたので
そんなのは実装内容と都合次第だと言う例を書いた。ただそれだけ。
>>362 の話に関しても状況次第で、単に有名で興味があったから使ってみたかったってのと、
複数人で作業する時、たまたまDxライブラリを使う話になってたので、後から来た俺もそれに従って参加したから、
これも状況次第で使う事はあるよって話だ。
直接扱えるからって、Dxライブラリを使わないなんて事は無いよって話。
0369名前は開発中のものです。
2013/09/03(火) 20:30:54.05ID:hziIzZtX>>351は、「既にDXライブラリを使っていて直叩きやってないユーザー」に対しての
「なんでDXライブラリからDirectX直打ちに乗り換えないの?」って意味だろ
そりゃ過去に使ってたなら流用する部分はあるだろう
0370名前は開発中のものです。
2013/09/03(火) 20:35:55.30ID:hziIzZtXなんかすまんかった
0371名前は開発中のものです。
2013/09/03(火) 21:30:12.27ID:vUU3UyzcDirectXを自前で呼ぶ手順を試してみるのは
もう難しいって事はなくなってるだろうし、得る物がないとも思わないな
すぐに役立つ類の何かにはならないから、今ゲーム作りたいって状況ならやめとけと思うけど
0372名前は開発中のものです。
2013/09/03(火) 21:46:08.61ID:EPT65EfmAPI調べたら、やたらややこしい説明しかなくて
たかがこれくらいのことになんでこんな記述しないといけないんだよ
と思って結局手付かずな俺。
0373名前は開発中のものです。
2013/09/03(火) 23:42:30.01ID:AgKjDaEC0374名前は開発中のものです。
2013/09/04(水) 02:33:41.29ID:V8uAb/ln0375名前は開発中のものです。
2013/09/04(水) 09:07:52.99ID:PoFEVG9R0376名前は開発中のものです。
2013/09/04(水) 10:36:55.09ID:9eCFdU3A環境設定とか作れる
0377>>349
2013/09/04(水) 15:11:12.06ID:oOzyrc7U0378名前は開発中のものです。
2013/09/04(水) 18:35:21.10ID:XiGKlGSH管理人さんがどっかで言ってた気がするしな
DXlibで不自由さを感じたらDirectX直叩きってのも自然な流れじゃないの
0379名前は開発中のものです。
2013/09/04(水) 23:01:10.21ID:xFCoeJ7x0380名前は開発中のものです。
2013/09/04(水) 23:14:59.97ID:XiGKlGSHなにそれ詳しく
0381名前は開発中のものです。
2013/09/04(水) 23:51:09.47ID:xFCoeJ7xhttp://sherbet.transjiggen.com/ccs/ccs_wiki2/index.php?%A5%CF%A5%EB%A5%C8
このページの一番下にある「添付ファイル」から、「DXLib_Effect_h002.pdf」へのリンクをクリック(今現在)。
今のところ2Dゲーム用の模様。技術的に難しいことを言ってるわけではない。
公開関数+αくらいで出来るシンプルな内容なんだけど、凄くよくまとまってる。
0382名前は開発中のものです。
2013/09/05(木) 00:07:07.42ID:59ih9t5vこれをDXライブラリ界の有名人が紹介してるの?
DXライブラリ界の有名人ってのがどんな人を指すかよく知らんが
0383名前は開発中のものです。
2013/09/05(木) 00:11:13.63ID:AoZFkRqAただ作品にDXライブラリ使ってるってだけ
同人STGやる人なら作品知ってるかもくらいの人
0384名前は開発中のものです。
2013/09/05(木) 00:41:15.23ID:hBmpTHcx有名人どころか今年の東京ゲームショーに出展する超新星同人ゲームサークルのプログラマだよ
http://twitter.com/hart_edsf/status/375248375513231361
http://www.indiegame-fest.com/
0385名前は開発中のものです。
2013/09/05(木) 00:54:25.79ID:dv6vewus隠す意図は無かったんだけど、スマンカッタ。
こういうとき、どこまで貼ればいいか難しいね。
0386名前は開発中のものです。
2013/09/05(木) 02:46:42.48ID:1kKDr+KjPlayMovieToGraph 使って DrawGraph系で動かしたらかなりカクカクになっちゃった
何で再生するのがベスト?
0387名前は開発中のものです。
2013/09/05(木) 02:51:43.87ID:AoZFkRqA動画自体を軽くするしか方法はない
0388名前は開発中のものです。
2013/09/05(木) 02:58:25.17ID:1kKDr+Kjだよなぁ、ビットレート下げて様子みるわ。サンクス
0389名前は開発中のものです。
2013/09/05(木) 03:32:39.50ID:1hDQc12B知らんかったわ。
LDゲームが作れるなw
0390名前は開発中のものです。
2013/09/05(木) 16:03:31.78ID:FhkmhNsp0391名前は開発中のものです。
2013/09/05(木) 16:26:37.51ID:bU+8tFoJタイムギャルお願いしますw
0392名前は開発中のものです。
2013/09/07(土) 13:30:51.24ID:FDYu5pLBどこにもサンプルないしどうやって作るかもまず見つからないし…
0393名前は開発中のものです。
2013/09/07(土) 14:45:38.35ID:ZlVgxMBF0394名前は開発中のものです。
2013/09/07(土) 15:37:36.36ID:htv4gya2・2Dでのエフェクト処理(レンダーターゲットへのシェーダ処理含む)
・ + 普通の3D表示処理(ポリゴン表示とシェーダ含む)
それらを自分の管理処理と合わせて創意工夫で組み合わせた応用編だから。
ちなみにピクセルシェーダでのエフェクト計算(例えばブラーやソラリとか)みたいにポイントポイントで見れば
書籍もサイトもあるよ。
で、それらと自分の処理を組み合わせて考えてアウトプットになるって事。
0395名前は開発中のものです。
2013/09/07(土) 15:45:48.23ID:htv4gya2逆に言うとまず3D処理の実際を、繰り返すメインループの中の一コマとしてまず見えるようになってら、
そこで何が必要で、それがあるとどう見えるかって順番で考えるようにすれば、
「どうすればいいか "まったくわからない"」って状態にはならないと思う。
シェーダでのピクセルエフェクト(UとVの二軸の世界でのエフェクト)については、
よくOpenGLの世界で記事やソース書いてる人いるので
それをDirectX(HLSL)の世界に応用したらいいと思う。基本的な理屈は同じだから。
0396名前は開発中のものです。
2013/09/07(土) 18:12:31.43ID:d9gbAoy/ゲームエフェクトの本やら資料やら探したら、むしろ3D中心で出てくる印象なんだけどなあ
0397名前は開発中のものです。
2013/09/07(土) 23:57:28.78ID:+vlGUbQx具体的に○○みたいなエフェクトのやり方がわからないとかならまだしも
"3D"のエフェクトがわからないってのはそもそも3D処理がわかってないんじゃね
0398名前は開発中のものです。
2013/09/08(日) 01:48:23.76ID:kVPN97ldなのにDXライブラリは完全Windows専用なの?
0399名前は開発中のものです。
2013/09/08(日) 02:10:18.84ID:pEGzS2EKDXライブラリはWindowsのDirectXをC/C++から簡単に使うための物だから
Windows専用にならない理由がないだろ
クロスプラットホームのゲームライブラリならSDLあたりが有名
しかし俺はSDLは使う気にならないな
自分が興味がないMacやLinuxのユーザーサポートまで要求されるのも迷惑だから
0400名前は開発中のものです。
2013/09/08(日) 02:53:24.55ID:W1OuVwxQ0401名前は開発中のものです。
2013/09/08(日) 09:47:25.57ID:KLzYDzFEグラフィックスAPIのDirectXがWindows専用だからな
MacとかLinuxもサポートするならOpenGLになる
WindowsとLinuxでAPIを使い分けるならOgre3DかUnity
OpenGLで両方まかなうならSDLやQtという選択肢になる
0402名前は開発中のものです。
2013/09/08(日) 18:55:16.43ID:LAHZLQTL勿論キャラクターはポージングこそするものの
ポリゴンの頂点数が変わり続けたりテクスチャのマッピングが移動したりするエフェクトをどうやって流れるように描画させるのか
という疑問が
0403名前は開発中のものです。
2013/09/08(日) 19:57:53.44ID:FwvXMDorDXライブラリでは頂点バッファをいじれないみたいだから、
頂点数の増減は小さいオブジェクトを繰り返し描画で変化、
または高解像用と低解像用を用意しておくとか。
テクスチャスクロールはシェーダーを自作すれば簡単
0404名前は開発中のものです。
2013/09/08(日) 23:12:47.36ID:mUJYpIY3頂点数の増減て見たままそのままの実装する必要あるか?
内部的に常に必要な最大頂点数持っておいて、VertexShaderで不要なタイミングにおいては表示外に追いやったり隣り合った頂点と整列させておいたり、
あるいはアルファで非表示状態にしたりすればいいんじゃないの?
0405名前は開発中のものです。
2013/09/08(日) 23:41:45.22ID:ifdr6uiA0406名前は開発中のものです。
2013/09/09(月) 00:52:34.08ID:G0Y/JpfZそれをコードに落とし込むのは誰でもできる底辺の仕事なんですが…
0407名前は開発中のものです。
2013/09/09(月) 00:53:09.91ID:/U6TdIo4そもそも3Dエフェクトで拡大・縮小以外の変形をするエフェクトってあんまりみたこと無いんだが
しっかり骨組みまで見たことあるゲームが携帯機程度の低スペな奴しか見たこと無いからかもしれんが
アニメーション付きのビルボードの組み合わせとかが今でも大部分を占めてるように思う
3Dエフェクト使う時でも拡大・縮小にテクスチャのアニメーションでごまかすとか環境マップ使ってるやつぐらいしかパッと思い浮かばない
0408名前は開発中のものです。
2013/09/09(月) 01:14:18.67ID:QfE1BbtL話ももっと具体的なはず
0409名前は開発中のものです。
2013/09/09(月) 01:17:22.36ID:CepS0XFh0410名前は開発中のものです。
2013/09/09(月) 01:17:45.87ID:QfE1BbtLレンダーターゲットに対してPixelShaderでポストエフェクトとか、
メッシュ表示の際にも同様にアルファや色の変更とか色々出てくると思う
0411名前は開発中のものです。
2013/09/09(月) 01:30:37.78ID:/U6TdIo4それはどっちもピクセルシェーダを弄るようなエフェクトの一例だよね
そこは3Dエフェクトだろうがビルボードだろうがあまり大きな変化はないと思うんだけど
拡大・縮小以外の変形みたいな頂点そのものを増減したり、不規則に変化させるようなことを必要とするエフェクトの例とかってある?
0412名前は開発中のものです。
2013/09/09(月) 02:23:49.57ID:o9OOchYvいつもの流れだ
簡単なら一般的な方法でいいんでテッセレーションやってみせろよ
0413名前は開発中のものです。
2013/09/09(月) 02:40:36.70ID:/U6TdIo4ちょっと前のマリオのジャンプで粘着してた乞食じゃあるまいし
それにどんなエフェクト作るかの話もしてなくて3Dエフェクト全般の話しかしてないのになんでコードが出てくるんだよ
あと>>405とか誰もソースの話なんか出てないだろ
0414名前は開発中のものです。
2013/09/09(月) 02:52:58.18ID:G0Y/JpfZこの質問者様が質問して下さっているっていう発想からして完全にkazukiだろ
0415名前は開発中のものです。
2013/09/09(月) 03:02:03.26ID:/U6TdIo4初っ端から煽りに来ることはあんまりないと思うしあいつ今職業訓練に必死みたいだし
0416名前は開発中のものです。
2013/09/09(月) 03:13:33.64ID:CepS0XFh0417名前は開発中のものです。
2013/09/09(月) 03:17:21.92ID:/U6TdIo4あいつはスレの全員から嫌われてるから本人降臨しない限りスレも荒れないしな
あと本人はテッセレーションなんて分からないと思うぞ
座標を自分の感覚で適当に決めて直打ちしちゃう奴だし
0418名前は開発中のものです。
2013/09/10(火) 02:30:01.06ID://nCPrx/0419名前は開発中のものです。
2013/09/10(火) 05:57:31.03ID:fLtKfWgbブログ消して逃亡する癖があるからリアルタイムで遭遇したことないとわからんだろうな
ヲチスレがあったんだが埋まってから立ってないようだ
ズブの素人なのに絵師やプログラマになりきって講座サイトを作りたがるアスペの自演魔とでも言えばいいか
スレチだが
0420名前は開発中のものです。
2013/09/10(火) 09:18:59.67ID:9Qs7WFMiあいつはすぐわかる
0421名前は開発中のものです。
2013/09/10(火) 09:31:48.84ID://nCPrx/剣の振った軌跡エフェクトとかは頂点を直接操作してるの?
ボーンとかいれて
0422名前は開発中のものです。
2013/09/10(火) 10:28:45.28ID:1N7dl6m4頂点数3*2*8個のポリを帯状に並べた物を固定で持っておいて、cpu側からは座標xyz+アルファの減衰用値1つをセットとにしてfloat4で8セット渡して
vertexshaderで計算した。
座標は起点から数フレーム毎に直前の座標を一つ後ろにコピーするようにして、
減衰値も直前の値の1/8を引いた物を順次セットしてく流れ。
他の方法だと、単に板ポリに描いた形をその時の軌跡に沿った位置と角度に変えながら変形とか。そんなかんじ
0423名前は開発中のものです。
2013/09/10(火) 10:29:51.57ID:1N7dl6m4別にこうするもんだ、って話じゃない。
0424名前は開発中のものです。
2013/09/10(火) 13:23:33.80ID://nCPrx/0425名前は開発中のものです。
2013/09/10(火) 15:35:01.90ID:VwJiEoYmDXlibの使えば非同期読み込みできたんだな
これって非同期書き込みって出来ないの?
0426名前は開発中のものです。
2013/09/10(火) 15:52:46.41ID:gIhnnlB1毎年この時期に発売してるゲームグラフィックスって本は結構参考になったりならなかったりするけど面白いから読むべし
2009年版によるとナルティメットは頂点にボーンを入れて引っ張り出してる
>>422のはトレイルポリゴンというらしい
0427名前は開発中のものです。
2013/09/10(火) 18:23:10.98ID:1N7dl6m4名前ついてたのかwwありがとう
0428名前は開発中のものです。
2013/09/12(木) 07:30:32.01ID:aJt0MyQPちらほらとWindows8向けの修正が入ってるようだ
0429名前は開発中のものです。
2013/09/13(金) 10:47:00.12ID:VRcMxm/5参考になった
見た感じ無双は前者っぽいな
0430名前は開発中のものです。
2013/09/13(金) 21:57:15.39ID:fqMMV2ZF3DのRPGとかでよくキャラの足元の地面の種類によって足音や土煙を変えてる方法
ってのに
ポリゴンモデルのテクスチャによって判定してる
って答えがあったけど
今のDXlibでこれ実現する方法ってある?
指定ポリゴンに使われているテクスチャを得るような関数は無いし
その為に自分で既存の関数使って実装しようにも大まかな方向性すらちょっと分からない
0431名前は開発中のものです。
2013/09/13(金) 22:02:40.77ID:V6fOnFO40432名前は開発中のものです。
2013/09/13(金) 22:26:09.11ID:mrOA/UVsなあすごく初歩的な質問かもしれんが
RPGやアクションに限らず、いや3Dでも2Dでも使われてる、
よくキャラの足元の地形の設定に応じて足音や砂煙とかのエフェクトの使い分けってどうやって判定してるんだ?
一応3Dを扱ってるとして考えてるんだけど
モデルの該当箇所に簡単な形の判定用モデルでもくっつけとくぐらいしか思いつかん
922 : 名前は開発中のものです。[sage] 投稿日:2013/03/19(火) 19:41:49.38 ID:qIdhNQFl [1/1回]
古い様式のトゥームレイダーのRoomEditorの場合では、
床の形状が碁盤の目のようになっていて、
フロアデータと呼ばれるデータの格納部分があります。
そこに床ティクスチャと共に床属性を加えています。
例えば、木の上、石の上、水の上によって足音が変化する。
それら全部のデータをチャンク形式で塊にして、
レベルデータとして1ステージ分を1ファイルで管理しています。
923 : 名前は開発中のものです。[sage] 投稿日:2013/03/19(火) 20:34:44.08 ID:yJcDNlmv [1/1回]
頂点の色をIDとして分けるとか属性用のテクスチャを用意するとか
0433名前は開発中のものです。
2013/09/13(金) 22:27:47.79ID:mrOA/UVs必要なメモリは今のPCの性能に比べたら大したことないんで
わざわざバッドノウハウみたいな方法を使って制約を増やす必要性がないという
0434名前は開発中のものです。
2013/09/13(金) 22:50:46.62ID:V6fOnFO4ドラクエみたいに格子状に並べるマップもそうだし、配置するオブジェクトが無規則自由配置でも同じこと
0435名前は開発中のものです。
2013/09/13(金) 23:48:26.06ID:fqMMV2ZF>>922の方法が良かったのか
しかしこれって
下から床、空間、床2、空間
みたいな位置関係のときは難しくないかな
>>432もわざわざ引用してくれてありがとう
0436名前は開発中のものです。
2013/09/14(土) 00:26:05.17ID:/6ff2SkL平面の格子じゃなく立体の格子を作ればそれも別に難しくないだろう
0437名前は開発中のものです。
2013/09/14(土) 00:31:06.20ID:p0lDHWdr>下から床、空間、床2、空間
3D空間の場合ですね、そのような場合で
床空間をRoomと呼び、
床1に碁盤の目を配置します。床2にも同様、
そして主人公が床1にいれば床1の碁盤の目を使う。
床2に移れば、床2の碁盤の目からデータを読む。
そして、
床1の部屋1から、床2の部屋2へ移動するのに
部屋同士を廊下で繋ぎます(doorと呼びます)、
その廊下を通過する時に部屋番号を切替えます。
属性データ=部屋番号、X行、Y列
このようになります。(実際は座標変換が入り複雑です)
この説明は、BSP(Binary space partitioning)の導入の部分です。
より単純な方法
単純に床の高さ違いの部屋ならば、高さで単純に切替え出来ます。
0438名前は開発中のものです。
2013/09/14(土) 00:45:52.46ID:kQXZslGfそれでもメモリなんて今どきならあんまり気にしなくてもいいのだろうか
格子の目をどれだけ細かくするかによるんだろうけど
>>437は高さが一定の部屋ならメモリ節約になりそうだな
詳しい説明ありがとう
今までとっつくのに躊躇いがあったけどちょっと頑張ってみるよ
ちょっと別件になるけど
みんなゲーム作る上でメモリとかどの程度占有していいと考えて作ってる?
作ってるゲームの規模とかジャンルにもよるだろうけど参考までに
0439名前は開発中のものです。
2013/09/14(土) 00:53:50.80ID:7jXMDdjsアクションゲーなら高さってほかの2軸に比べれば大して量が必要ないんだよ
上に登ってくステージを作りたければそこだけ高さを増して作ればいい
RPGの場合だって、塔とか特定の地域だけ高くて面積は狭い地形にすれば特に問題ない
今のPCだとフリゲで使っていいメモリは100Mくらいかなと思ってるよ
というか、そんなふうに作ってから悩むべきことを何もできてない段階でゴチャゴチャ考えると
何もできない愚図になってしまうよ
0440名前は開発中のものです。
2013/09/14(土) 01:39:47.66ID:kQXZslGf正直作り方の下手さをスペックで補ってる感があるんで
今回の件以外の部分でかなり演算量とかメモリ使ってるからちょっと聞いてみたかった
だいぶ出来上がってきたんでそろそろエフェクトについても本腰入れて頑張ってみようかと思って昔の話題を引っ張り出してきたんだ
0441名前は開発中のものです。
2013/09/14(土) 01:44:37.73ID:F13ppTHh俺は2Dがやっとだっつーに。
0442名前は開発中のものです。
2013/09/14(土) 02:18:36.24ID:qldeAamL実際にどのくらいのバイト数になるのか計算して言ってるのか?
0443名前は開発中のものです。
2013/09/14(土) 02:30:33.15ID:76PA/33Z試算すれば今のPCで問題になるわけないのわかることだし
本当にある程度動くもんができてるんだとしたら
>やっぱ次元増やすしかないか
>それでもメモリなんて今どきならあんまり気にしなくてもいいのだろうか
>格子の目をどれだけ細かくするかによるんだろうけど
こんなこと言うわけない
ちょいと実験用のステージ作ってテストすればわかることだもんよ
0444名前は開発中のものです。
2013/09/14(土) 03:13:27.71ID:qldeAamL必要な変数の見積もり出すだけでおk
0445名前は開発中のものです。
2013/09/14(土) 08:21:22.07ID:TW6+8u9Gdxlibだと簡単にやってくれるんだろうけど、保存されてるシェーダー名とか分かるんだろ?
だったらゲームの中で統一した名前持って・・・
って文字列の比較はご法度?
0446名前は開発中のものです。
2013/09/14(土) 08:50:51.40ID:HK3w+y5R1フレームに数千回程度ならmapの文字列キーによる取得も可能
だがシェーダ名からそんな判別ができるかは知らん
0447名前は開発中のものです。
2013/09/14(土) 09:30:05.45ID:fcYnOgJC0448名前は開発中のものです。
2013/09/14(土) 11:46:45.81ID:WM0CmCTjもっと気楽に作れるものから順序立てて作ろうよ
背伸びしすぎじゃね?
0449名前は開発中のものです。
2013/09/14(土) 12:00:55.05ID:F13ppTHhそんなにやりたいなら、毎フレームやるんじゃなくて
起動時にまとめて変換しとけばいいだろ。
0450名前は開発中のものです。
2013/09/14(土) 12:07:01.80ID:fcYnOgJCどうしてもシェーダの出力結果を参照しないといけないなら、上でも言ってるように事前に生成して論理情報として持っておいて、
それを管理用として使うだけだよな
0451名前は開発中のものです。
2013/09/14(土) 12:12:02.50ID:fcYnOgJCレンダリングターゲットに書き出した内容を使うよな。
例えばオフスクリーンのビットマップに書き出してそれを(画像としてに限らず)利用する。
ドロップシャドウなんかの処理書く時の影が落ちる場所の判定用に2パス処理するとかもそう
0452名前は開発中のものです。
2013/09/14(土) 15:10:45.75ID:8O2/n1/VDirectX10/シェーダモデル4から「出力ストリーム」っつって
頂点シェーダとかジオメトリシェーダの結果を
バッファに書き出す機能がある
髪の毛とかの描画に使われてたはず
0453名前は開発中のものです。
2013/09/14(土) 20:39:14.70ID:AYA9xewn周りのみんなは受験勉強やら自己啓発で資格取得やら親しい友人と親睦深めたりしてるのに
ゲームプログラミングなんかしてても受験、就職、出世、何の評価にも繋がらないぞ
しかも10年も経てば今やってることなんざ時代遅れの何の役にも立たない糞知識と化すの分かってるのに
時間とエネルギーの無駄遣いだったなTOEICの勉強でもしてた方がなんぼかマシ残念
0454名前は開発中のものです。
2013/09/14(土) 20:59:50.42ID:IDTioZ76ガキは巣に帰れ
0455名前は開発中のものです。
2013/09/14(土) 21:04:51.40ID:l5htwAqU0456名前は開発中のものです。
2013/09/14(土) 23:53:54.14ID:36YxFypIどっちにしても同じことばっか言ってる奴に食いつくなよ
0457名前は開発中のものです。
2013/09/15(日) 00:00:02.27ID:dC0z05bi0458名前は開発中のものです。
2013/09/15(日) 00:35:20.07ID:5Cwo6Cih0459名前は開発中のものです。
2013/09/15(日) 00:52:25.03ID:xpVRCCgSそれはともかく>>453はコピペ
0460名前は開発中のものです。
2013/09/15(日) 03:26:15.09ID:JWdA1Xml俺だって彼氏がいたことなんてねーよ
0461名前は開発中のものです。
2013/09/15(日) 07:53:52.63ID:PV2uYwqN0462名前は開発中のものです。
2013/09/15(日) 08:02:23.47ID:PV2uYwqNZバッファ書き込み
↓
裏画面に描画
↓
Zバッファをクリア
↓
Zバッファ書き込み
↓
裏画面に描画
って感じ。
具体的には、視野距離を長くしたいから
1000〜1000000のクリップのZバッファで書き込んだ後に
1〜1000のクリップのZバッファを上書きすれば実現出来ないかなーと。
あとEVEオンラインってゲームはどうやってんでしょうか
0463名前は開発中のものです。
2013/09/15(日) 08:22:00.60ID:xpVRCCgS試してみたらいいじゃん
0464名前は開発中のものです。
2013/09/15(日) 14:15:52.38ID:LXqJDTUq0465名前は開発中のものです。
2013/09/18(水) 09:35:37.67ID:oNVuQXT0手のフレームの取得関数が機能しない…どうやらモデルに座標入ってないみたいなんだよな、0になっちゃう
モーションの方かもしれないけど、これじゃ進まなくて困った
0466名前は開発中のものです。
2013/09/18(水) 09:59:53.97ID:Ud470By20467名前は開発中のものです。
2013/09/20(金) 08:03:49.06ID:+XZbW2by0468名前は開発中のものです。
2013/09/20(金) 08:30:02.08ID:YMpJdkx+手のフレームを取ると普通手のパーツの中心部が座標になる
0469名前は開発中のものです。
2013/09/20(金) 09:07:36.96ID:ORFi52Rn0になっちゃうんじゃなくて、もしかしてそのボーンのローカル座標系の値が返ってきてるとか。つまり変化前だから常に0。
他にオフセットがあるんじゃね
0470名前は開発中のものです。
2013/09/22(日) 20:52:26.82ID:f8ojsxQ+みんなシェーダ書くときにfxファイル何のソフト使って書いてる?
俺はサクラエディタなんかで頑張ってるんだけど
0471名前は開発中のものです。
2013/09/22(日) 21:34:15.12ID:rnlXPih00472名前は開発中のものです。
2013/09/22(日) 21:58:38.92ID:4HkV9On6同じ。サクラか、プロジェクトに含ませてる時はVCのテキストエディタ
要は、いずれにしろただのテキストエディタ
0473名前は開発中のものです。
2013/09/23(月) 00:31:52.16ID:JB8mc2dz俺みたいな統合開発環境慣れした初心者はドットとかでメンバ参照とかスペルミスの指摘が欲しくなっちゃう
FX ComposerとかRenderMonkeyってどうなのかな
0474名前は開発中のものです。
2013/09/23(月) 08:30:25.54ID:/4YGOTVQ0475名前は開発中のものです。
2013/09/23(月) 11:08:45.66ID:EzTdeYYxそういうことを気にしないやつってどういう脳の構造してんの
0476名前は開発中のものです。
2013/09/23(月) 11:10:43.78ID:7wS9S5Ho主語がないぞ
0477名前は開発中のものです。
2013/09/23(月) 11:54:58.22ID:ofnkYj7IVisualStudio2012は快適だぞ
Eclipseは止まることもあるが、何使ってるの?
0478名前は開発中のものです。
2013/09/23(月) 13:36:04.69ID:7wS9S5HoウチのボロPCだとたまにあるな
ちゃんとしたPCなら大丈夫だろ
0479名前は開発中のものです。
2013/09/23(月) 20:47:36.07ID:B52vOn8cエフェクトに3Dモデルを使おうとすると、65535とか速攻でなくなりそうだけど
0480名前は開発中のものです。
2013/09/23(月) 21:21:48.56ID:7wS9S5Ho0481名前は開発中のものです。
2013/09/23(月) 22:30:14.33ID:el0dl6Vq0482名前は開発中のものです。
2013/09/23(月) 22:38:41.25ID:el0dl6Vqその内容は三角板ポリに透過画像の☆のテクスチャ貼った物が、最大512個まで表示される仕様にしたとして、
普通はモデルの管理用ハンドルなんてどう作っても1つにすると思うけど、
これを見たままの 512個用意するような設計にしてたとしたら足りなくなると思うが、そもそもその考え方自体がおかしいって話。
0483名前は開発中のものです。
2013/09/23(月) 23:29:59.22ID:MCuV8ief0484名前は開発中のものです。
2013/09/23(月) 23:40:56.58ID:el0dl6Vq0485名前は開発中のものです。
2013/09/24(火) 00:30:12.83ID:gCJpay//0486名前は開発中のものです。
2013/09/24(火) 08:47:55.94ID:3iThi5fc0487名前は開発中のものです。
2013/09/24(火) 11:51:32.61ID:NDARxT+Jローカルでの正面方向は(0,0,1)方向です
float rot = VDot(VNorm(angle3D),VGet(0,0,1));
VECTOR axis = VCross(VNorm(angle3D),VGet(0,0,1));
MATRIX rotMatrix = MGetRotAxis(axis,rot);
MV1SetMatrix(modelHandle,rotMatrix);
0488名前は開発中のものです。
2013/09/24(火) 12:25:29.03ID:LX3VXkRZ0489名前は開発中のものです。
2013/09/24(火) 12:58:18.83ID:RHsZnJVt解説サイトとかないよね…
0490名前は開発中のものです。
2013/09/24(火) 13:55:10.86ID:LX3VXkRZMSDNの記事やリファレンスの解説見てもちんぷんかんぷんならもっと手前の文献当たって、
その文献見てもわからなければ、もっと手前の文献当たって。
0491名前は開発中のものです。
2013/09/24(火) 13:55:19.05ID:7Pln/be2どこに必要ですか?
0492名前は開発中のものです。
2013/09/24(火) 14:35:25.94ID:3iThi5fcDrawPolygon3Dでモミジの降るエフェクトでも作ってみればいい
0493名前は開発中のものです。
2013/09/24(火) 18:40:55.14ID:klVNBi9SMGetRotAxis(axis,acosf(rot));
だと思うけどその後のクォータニオンって自作しないといけないんじゃないの?
知らんくせに口挟むけど
0494名前は開発中のものです。
2013/09/24(火) 18:52:26.49ID:7Pln/be2ベクトルと軸ベクトルと回転率を与えることで、その軸で回転させたベクトルを返すっていう関数は作ったけど、
行列としては無い・・・
0495名前は開発中のものです。
2013/09/24(火) 19:35:08.68ID:NDARxT+J0496名前は開発中のものです。
2013/09/24(火) 19:41:42.78ID:NDARxT+J短いコードなのになぜこんな・・・
0497名前は開発中のものです。
2013/09/24(火) 19:42:19.73ID:klVNBi9S基本わかってないから方向とかわけわかめになる
MATRIX rotmtx = MGetRotVec2(VGet(0,0,1),angle3D);
MATRIX mtx = MGetTranslate(モデル位置);
mtx = MMult(mtx, rotmtx);
MV1SetMatrix(modelHandle, mtx);
3Dやってる人尊敬するわ頑張って
0498名前は開発中のものです。
2013/09/24(火) 20:13:05.75ID:NDARxT+Jありがとう、わからないまんまだけど・・
0499名前は開発中のものです。
2013/09/24(火) 21:03:24.78ID:LX3VXkRZ//dot積は平行度合いを返すだけ
float rot = acosf(VDot(VNorm(angle3D),VGet(0,0,1));
//cross積は2つのベクトルに垂直なベクトルを返すだけだが、順序が違うと逆になる
VECTOR axis = VCross(VGet(0,0,1), VNorm(angle3D));
//任意軸を中心として指定角分の回転を表す行列を返すだけ(回転成分のみ)
MATRIX rotMatrix = MGetRotAxis(axis,rot);
MV1SetMatrix(modelHandle,rotMatrix);
0500名前は開発中のものです。
2013/09/25(水) 07:51:57.01ID:xqO6E9L0できたわ、Crossの順序が逆だったのか・・・
0501名前は開発中のものです。
2013/09/25(水) 09:05:57.49ID:IcW1ptMQモデルが元々向いてる方向が第一引数で、それを、回転させる為の行列を得たいのだからって事。
順序にはちゃんと意味あるんだぜ
0502名前は開発中のものです。
2013/09/26(木) 13:09:27.12ID:6kYMS1ufびーるうまい
オマエラ
仕事わー
0503名前は開発中のものです。
2013/09/30(月) 12:51:00.26ID:MDOQSI/Zabcって書かれたファイルを読み込んでもプログラム文にabcって入るわけじゃないのよね
0504名前は開発中のものです。
2013/09/30(月) 13:47:43.87ID:8MdT1DdQLuaでも組み込んだら
0505名前は開発中のものです。
2013/09/30(月) 13:56:43.57ID:gwWMPctbそれだけ
0506名前は開発中のものです。
2013/09/30(月) 13:56:48.64ID:s5i3Qnz60507名前は開発中のものです。
2013/09/30(月) 14:01:09.34ID:j1OFbA2Oabcって読み込まれるんだけど、何が違うのだろうか
0508名前は開発中のものです。
2013/09/30(月) 15:57:31.86ID:L/mBCuvv0509名前は開発中のものです。
2013/09/30(月) 17:43:12.62ID:pUQjWvd30510名前は開発中のものです。
2013/09/30(月) 18:27:12.75ID:7w5M7S/astd::ifstream ifs("hoge.txt");
読み込んでも何も起きないじゃないですか!
0511名前は開発中のものです。
2013/09/30(月) 18:30:48.69ID:t84kkzgd0512名前は開発中のものです。
2013/09/30(月) 18:59:22.33ID:J6i26pbr座標で言えば
(0, 0)(1, 0)
(0, 1)(1, 1)
(0, 1)(1, 1)
(0, 2)(1, 2)
図だと
+-+
|a| ←こんな感じで重なってる時
+-+
|b|
+-+
0513名前は開発中のものです。
2013/09/30(月) 19:22:09.36ID:L/mBCuvv理由は1ドットの大きさ……
(0, 0)(0, 0)
(0, 0)(0, 0)
(0, 0)(0, 0)
(0, 0)(0, 0)
……のような時のため?
0514名前は開発中のものです。
2013/09/30(月) 19:37:45.64ID:J6i26pbrなるほどねぇ
確かにプレイヤーの視覚情報になるドット視点で考える方が、体感的に矛盾も少なくなるのかな
あと、数学視点じゃなくてゲーム屋視点で調べてたら、
浮動小数点にガッツリ誤差修正入れてて境界とか曖昧になってるのが多いのねw
0515名前は開発中のものです。
2013/09/30(月) 20:07:39.17ID:L/mBCuvvさすがに今日の1ドット判定がデフォな弾幕STGをしてるプレイヤーには「自機判定が大きすぎる」とか言われるけど、
自機弾が見た目の5倍くらい当たり判定持ってることについては誰も文句言ってきてないw
0516名前は開発中のものです。
2013/09/30(月) 21:31:43.75ID:cyhHp5cj初心者の俺がエスパーすると
DrawFormatString( 0, 0, GetColor( 255 , 255 , 255 ), "hoge") ;
こんな内容の外部ファイルがあって
読み込み関数の直後にこんなプログラム文を挿入するみたいに
読み込み直後にDrawFormatStringを実行出来るってのなら便利なのになー
って考えだと予想
0517名前は開発中のものです。
2013/09/30(月) 22:40:05.44ID:w+IVtSGt0518名前は開発中のものです。
2013/10/01(火) 03:46:58.46ID:F7QtckIuこんなこと言う作者の作ったSTGなんてやりたくねえなぁ
0519名前は開発中のものです。
2013/10/01(火) 07:09:37.62ID:jvCk1W0qプレイヤー側に爽快感を与えるためのテクニックとして定番だな
ほとんどのプレイヤーは、当たり判定が厳密かどうかなんて気にしてない
0520名前は開発中のものです。
2013/10/01(火) 07:19:05.53ID:pu7yJ+pU0521名前は開発中のものです。
2013/10/01(火) 09:00:10.86ID:G5cfMRew当たってるように見えて当たってない、方が
プレイヤーに与えるストレスが少ないってベーマガに書いてあった。
ピクセル単位で当たり判定するのは、それ自体が売りになるケースだよね。
レミングスの地面判定とか。
0522名前は開発中のものです。
2013/10/01(火) 09:17:15.92ID:7b0/KPAj弾の通り抜けが困る、平面なのにジャンプしちゃう。
これをキチンと処理しないといけない。
0523名前は開発中のものです。
2013/10/01(火) 13:00:43.20ID:f1+9upcx0524名前は開発中のものです。
2013/10/01(火) 22:07:38.33ID:IljiT9fFいかに安定したクオリティを感じさせるかも腕の内だろうか
0525名前は開発中のものです。
2013/10/01(火) 23:58:16.66ID:JV6pAl2h0526名前は開発中のものです。
2013/10/02(水) 01:35:17.03ID:j4eVbLO2現象が起こるんだが他にも似たような現象起こるやついるか?
0527名前は開発中のものです。
2013/10/02(水) 07:41:55.08ID:12JVqAEuDXライブラリを最新に更新したら、とか条件があるならまだしも。
0528名前は開発中のものです。
2013/10/02(水) 09:36:28.97ID:j4eVbLO2他に分かってることはDxLib_Init()を呼び出した直後にフリーズするってことくらいかな
0529名前は開発中のものです。
2013/10/02(水) 15:36:21.39ID:M6jp0IGiWindowsメッセージを送ってないとか?
0530名前は開発中のものです。
2013/10/02(水) 19:23:19.87ID:BEx3yg+7VMのwindows内で起動したらマルチメディアタイマーの精度計測に失敗して
起動しなかった、っていう事例があった気がする
まずはログを見て、起動処理のどこで止まってるか
確認するがよろしかろう
0531名前は開発中のものです。
2013/10/02(水) 20:12:13.70ID:j4eVbLO2起動時の設定をダイアログボックスでやる際のウィンドウ処理とかが関係してるみたい。・・・多分。
0532名前は開発中のものです。
2013/10/02(水) 20:52:21.57ID:LX4kyIfIhttp://jihi4541.blog.fc2.com/blog-entry-3.html
これ?
0533名前は開発中のものです。
2013/10/02(水) 22:53:47.44ID:j4eVbLO2ログはwindows/syswow64/wer.dllを読み込みました。Cannot find or open the PDB fileで止まってた
再起動してデバッグしたら
ファイル追跡ログ ファイルに Unicode バイト オーダー マーカーが見つかりませんでした。って出た
いっそのこと起動部分を作り直してみるか・・・
0534名前は開発中のものです。
2013/10/02(水) 23:39:04.47ID:j4eVbLO2もうお手上げだな。いっそのことVC2012に移行してみるか・・・XPに対応しなくなるけど
0535名前は開発中のものです。
2013/10/03(木) 00:40:00.03ID:KUDPieY2予想してた箇所は全くの見当違いであって
他にもっと単純なバグがある、って事じゃないのかな。
0536名前は開発中のものです。
2013/10/03(木) 03:09:38.93ID:VsufsxKa配列オーバーだったってことなら一度ある
今はなぜか宣言追加しても生成されないバグに悩まされてる
例えば新しくint x;x=1;って書いてデバッグするとxが値もポインタももってない
リビルドすると直る
この症状に原因あるなら教えてください
0537名前は開発中のものです。
2013/10/03(木) 03:15:29.35ID:7ILxSOK40538名前は開発中のものです。
2013/10/03(木) 06:48:15.87ID:XsYxUmPH「これ」って何?
>>533
ログってIDEの出力ウィンドウじゃなくてDxlibがexeと同じ所に吐き出すログの事だぞ。
>>534
「全部」って何?
0539名前は開発中のものです。
2013/10/03(木) 09:14:50.87ID:cUvGeNvK何事も無かったかのように動いたって経験もあるので、どうしてもダメだったら試行の候補にでも追加しておくれ。
0540名前は開発中のものです。
2013/10/03(木) 10:35:01.11ID:gPI1v/3EWindowsアプリケーションは
約60分の1秒の間隔でWindowsにメッセージを送り続ける必要があります
メッセージを送らなくてもプログラムは起動しますが
その場合、動作がどんどん重くなり誤動作を起こす原因にもなります
ゲームが重くなる、起動するだけで現象が起こる
それらの状況からWindowsメッセージではないかと思いました
1フレームという間隔で送り続ける必要があるので
60フレーム(1秒)も送らなけば、もう完全に重たくなるのではと
0541名前は開発中のものです。
2013/10/03(木) 10:42:21.98ID:meWLRvQ9PCの時計くるってない?
0542名前は開発中のものです。
2013/10/03(木) 11:06:19.70ID:PZbKFv8R引っ張ってるライブラリ、パスの通ってるライブラリについて、
32bitと64bit混在してないか?
> Cannot find or open the PDB fileで止まってた
↑これが気になったので。
0543名前は開発中のものです。
2013/10/03(木) 12:48:03.54ID:yn64SXNB発生回数は今のところ3回
1回目のとき3時間くらい時間使って諦めてリビルド
原因放置はしたくないけど後回しにしてた
0544名前は開発中のものです。
2013/10/03(木) 17:55:27.38ID:KUDPieY20545名前は開発中のものです。
2013/10/03(木) 19:27:01.40ID:LTHD4yMiまた起きたら宣言初期化周りもう一度調べてみるよ
現象の検証ばっかしててあんまり見てなかった気がする
ヘッダ含めて生成されないんだから最初のInitialzeまでかnewまわりに原因があるはずだよな
0546名前は開発中のものです。
2013/10/03(木) 20:53:45.93ID:Ulbekmlpポインタを理解してないクズが
0547名前は開発中のものです。
2013/10/03(木) 21:28:16.99ID:QMWQESyx描画コストがどのくらいかかるのか全然把握出来てないのだけど
0548名前は開発中のものです。
2013/10/03(木) 22:36:24.81ID:edQZBgYu0549名前は開発中のものです。
2013/10/04(金) 00:51:22.69ID:qihA5f5Fキー入力に合わせて回転するみたいな簡単な事はできるようになってきたけど、
設定メニューとかのようなGUIが作れない。
そもそもどう作ればいいの?
ダイアログに表示するような釦を用意するだけで手間なんだけど、
全部自作してるの?
0550名前は開発中のものです。
2013/10/04(金) 01:45:50.25ID:Ql0gzuVhそうなのか…
下手に弄るよりは任せた方が簡潔に書けるね
0551名前は開発中のものです。
2013/10/04(金) 08:57:28.28ID:8I+rYF1p純粋に表示だけならレンダリング処理のパスが省略されるはず。
ただゲームプログラミングで考えた時、裏で自分でしてる論理処理の方は視界の外の部分は省略したりするよな。
「重さ」のネックは大抵そっちにあるから。
0552名前は開発中のものです。
2013/10/05(土) 01:56:11.12ID:swZovpC2なんでこんな仕様にしたのか
0553名前は開発中のものです。
2013/10/05(土) 02:38:04.19ID:swZovpC20554名前は開発中のものです。
2013/10/05(土) 07:04:12.45ID:42i+ls1bカメラの真後ろにあるオブジェクトに対してレイを飛ばした時の判定なんてほぼ無駄なわけじゃん
0555名前は開発中のものです。
2013/10/05(土) 07:30:15.10ID:zPZwPgbhまず対象オブジェクトがカメラの後ろにあるかを判定する必要があるけど、それって結局レイ飛ばすなり「平面-オブジェクト」で判定するわけじゃん。
で、その後レイで衝突判定とるの?
他の処理の都合であらかじめオブジェクトがカメラの後ろにあるかどうか解ってる特殊な事情が絡まない限り、全探索するしかなくね?
0556名前は開発中のものです。
2013/10/05(土) 09:23:08.63ID:0JH/7YRjより細かい計算するより前に対象外として一律処理スキップとかするけど俺
0557名前は開発中のものです。
2013/10/05(土) 09:25:26.82ID:0JH/7YRj画面のドットからレイ飛ばすってのがなんか引っ掛かるけど、俺は表示物じゃなくて論理管理レベルでの計算で >>556 する。
0558名前は開発中のものです。
2013/10/05(土) 13:42:34.85ID:U+9bHzcQ>>554って環境マップとか使って擬似的な反射でも考えない限り全く無縁の話じゃないの?
光源が後ろにない限りカメラより後ろのオブジェクトが描画結果に影響することはないんじゃない?
乱反射の部分は環境光ってファクターで擬似的に表してるんだし
っていうか>>556の方が効果は大きそうだし
描画時間計測したことあるけど、ライティング関係の処理はDirectXだかDXlibだか分からんが自動で弾いてくれてるっぽいぞ
ビルボードを視野外(近く)に置いたときと、視野内の無限遠に置いた時がほとんど同じで、視野内の近くに置いた時より格段に軽かった
的外れの恥ずかしいレスじゃありませんよーに
0559名前は開発中のものです。
2013/10/05(土) 18:25:07.74ID:zPZwPgbhそれって、レイトレースとかの文脈のレイ?
>>554の言うレイは普通の半直線の事を指してると思うんだけど。
DXライブラリスレでレイトレースとか出る話題じゃないし…。
マウスクリックでオブジェクト選択みたいな処理を実装するために半直線と交差判定取ってるんだけど、
カメラの後ろにあるオブジェクトまで交差判定とるのって無駄じゃね?
って話だと思ってたけどあってるよね?
0560名前は開発中のものです。
2013/10/05(土) 18:48:29.96ID:zPZwPgbh位置ベクトル+方向ベクトル=平面
だよ。
要するにカメラの後ろ=nearクリップ平面の負の領域ってことだし。
if ( !CollidePlaneObject(nearClipPlane, obj) ) return; // プレ処理(カメラの後ろにあるか判定)
if ( !CollideRayObject(ray, obj) ) return; // レイ交差判定(本ちゃん判定)
って感じだと思うんだけど、平面-オブジェクトの判定とレイ-オブジェクトの判定って計算的に殆ど同じだから、
最初のプレ判定あんま意味なくね?計算省いてるようで実は二重に計算してね?
というのが>>555で言いたかったこと。
0561名前は開発中のものです。
2013/10/05(土) 18:49:58.53ID:TrZUJRMYウインドウ枠の「×」をクリックした時に
DxLib_End関数を評価させる方法はないでしょうか?
それとも「×」をクリックして終了した時に
自動的にDxLib_End関数が評価されるように設計されているのでしょうか?
0562名前は開発中のものです。
2013/10/05(土) 20:10:30.39ID:0JH/7YRj二度判定されるのは事実だけど、無駄じゃない。
複雑な形状を持つオブジェクトの中身に対する細かい判定とは別に、
そのオブジェクトが置かれるグローバル座標を原点とする半径や最大立法体で判定して、先に一回「明らかな範囲外」を落とすんだよ。
実際に運用されてる有名な例で言うと、bulletphysics等がそう。
0563名前は開発中のものです。
2013/10/05(土) 20:13:55.33ID:0JH/7YRj視野内での計算と視野外での計算が完全に同じで事足りるケースだけ
0564名前は開発中のものです。
2013/10/05(土) 20:38:31.68ID:OUqe1t+Lひいいドットから出るレイとか言うからレイトレーシングの方だと思ってた恥ずかしい
このスレって突然DirectXの話題になったりCの話題になったり結構カオスだから勘違いしてましたごめんなさい
0565名前は開発中のものです。
2013/10/08(火) 03:59:08.46ID:FyCpCW0B1加工済みアニメを3D空間or画面に2D描画(ペラペラだけど我慢orカメラとの角度固定)
2加工済みアニメを透明なマテリアルにテクスチャアニメーションとして張り付けてx→3D描画
3アニメーションまで読み込んでその場でエフェクトを作る
今まで視点固定なので1で作っていて、次は3D視点のものを作ろうと思ってて、描画方法考えています。
2そもそもテクスチャアニメーションをx化できるのか、あと球の中心とかあると張り付け不可。
3リアルタイムの負荷&処理方法実装の難しさとか、シェーダの延長でなんとかするしかない?
先人様がいらっしゃれば知恵を分けてほしいです。
0566名前は開発中のものです。
2013/10/08(火) 08:37:39.25ID:uzXpM02K1)カメラ固定で2Dゲームのように見える場合に爆発連続2Dアニメを2D画面に描画する。
2)カメラが自由移動するフル3Dゲームにおいて、板ポリゴン上に爆発連続2Dアニメを表示する。
3)3Dゲームで爆発表現を3Dで表現する。
色々あるけどね、
@ビルボードを使うのが良い。スプライトを使って、3D場所の関係で大きさを変えて
2D画面にスプライトとして爆発2Dアニメを表示する。単純で効果的。
A板ポリゴンに爆発2Dアニメを描画するのもありだけど、光の放射反射などの影響が大きい。
Bポリゴンだけで爆発を表現する、これは計算でポリゴンを動かすので
表現方法として有りだろう。地味な表現になるから、シェーダを加えたくなるだろう。
Cシェーダーで表現するのが最新式だが、古いPCだと動かないかもしれない。
派手な演出も出来るし、最終的に2Dの部分での演出もできる。
以上が一般的な手法です。
簡単で効率的なのが、スプライトによるビルボード手法。
色々な方法があるから、試してみると良い。場面によって違うだろうからね。
ここに、エフェクトのデモがある。参考になるだろう
http://www.sbcr.jp/support/8594.html
0567名前は開発中のものです。
2013/10/08(火) 11:02:19.63ID:E8v6Sv+Zあとシェーダーシェーダー言われるけど意味が全く分からない
シェーダーってどこかで落とすツールか?って感じ
0568名前は開発中のものです。
2013/10/08(火) 11:18:41.58ID:jcgEteQj0569名前は開発中のものです。
2013/10/08(火) 11:21:39.17ID:Fb0fwir5基本的に板ポリの量が増えるだけ
0570名前は開発中のものです。
2013/10/08(火) 11:49:21.01ID:8bfY/fC5詳しく説明&サンプル感謝します
開ける環境に戻ったら勉強します。
しばらくビルボート式を用いて、他のことも含めて余裕がでてきたらシェーダを学ぼうと思います。
何年後のことやら…
0571名前は開発中のものです。
2013/10/08(火) 11:50:03.23ID:8bfY/fC50572名前は開発中のものです。
2013/10/08(火) 12:19:08.14ID:E8v6Sv+Z腕を重点的に鍛えたいけどどうすればいい?って聞いたら筋トレしろって言われるのと同じだよね
ここ以外でもシェーダーは具体的なの見たことないな
0573名前は開発中のものです。
2013/10/08(火) 12:53:20.88ID:ttaYSeAJOpenGL関係のスレとか、さもなきゃ書籍でも見たらいいのでは
一応補足しておくと、OpenGLのglslとDirectXのhlslは別物だけど、考え方は同じだよ
0574名前は開発中のものです。
2013/10/08(火) 12:55:13.56ID:ttaYSeAJ何も知らない状態で待ってても見かけないと思う。
例えればプログラミングの基礎編にある物じゃなく、必要な人が利用する応用編の範疇の世界だから
0575名前は開発中のものです。
2013/10/08(火) 13:01:23.14ID:t3akdCKpで、エフェクト中は球体を回転させながら透明度だけ弄る
頂点を操作するアニメーションなんてできないし
0576名前は開発中のものです。
2013/10/10(木) 18:23:43.43ID:8tsX4vRv亀だけど、それ当たりで考えるとビリヤードのブレイクショットの配置みたいに
静止しててくっついてる状態でちょっとめんどくさくなると思う
0577名前は開発中のものです。
2013/10/11(金) 00:20:35.39ID:6kBrNmzO0578名前は開発中のものです。
2013/10/11(金) 00:39:09.42ID:+9JMgRHwもう板ポリのテクスチャ変更して3Dドットみたいにしちゃうのか
試してみよう
0579名前は開発中のものです。
2013/10/11(金) 08:33:37.25ID:KkfuXsaC音を拾う座標指定して、音量とか減衰率とか反響とか設定できて簡単なやつ
0580名前は開発中のものです。
2013/10/11(金) 09:13:37.91ID:RGakvLAzそれはともかくとして、そんなライブラリがあるとしたらXAudio2のラッパということになるだろうけど、そんなのは現在ないっぽい
BASS Audio Libraryという3Dサウンドの使える比較的シンプルなライブラリがあるっぽいが、
日本語のドキュメントは殆どと言っていいほどないみたいなので自力で調べられない人には使えないだろう
0581名前は開発中のものです。
2013/10/11(金) 09:26:57.30ID:kG8mPrPaこの本に具体的に解説してあるから、実装しなさい。
DirectX9必携: 鎌田 茂雄: 本
0582名前は開発中のものです。
2013/10/16(水) 23:39:32.53ID:Rf7cBVFPスクリーンに黒色で塗りつぶしたところがDrawGraphで透過Trueにしても透過しない
なぜじゃー
0583名前は開発中のものです。
2013/10/16(水) 23:50:58.42ID:AJwC2plj0584名前は開発中のものです。
2013/10/16(水) 23:55:26.73ID:09GDCNSk数度に一回マウス以外完全にフリーズしてしまいます。
VSの一番下部の青い所がF5を押してデバッグ開始するとそこがオレンジになって、
そこに AudioSes.dll シンボルがどうたら
と表示されて読み込み中?のまま、マウスポインタは動かせるのですがそれ以外の動作ができなくなります。
タスクマネージャーの起動もできずになって直接電源切るしかなくなります。
このままではHDが死んでしまいそうです。
何が原因かわかる方いらっしゃいませんか?
ぐぐっても、似たような症状の方は見つかるのですが
解決策が出てないのしか見つからないです。
VS Express for Desktop利用です。
windows7 64bitが問題なのかともおもうのだけど。
0585名前は開発中のものです。
2013/10/17(木) 00:03:15.56ID:rXL4X8+O0586名前は開発中のものです。
2013/10/17(木) 09:25:56.10ID:c674Ibx6NoBlend
0587名前は開発中のものです。
2013/10/17(木) 10:41:25.53ID:p0PD90TH0588名前は開発中のものです。
2013/10/17(木) 11:06:13.46ID:WfFtC5GUDxLib関係ないと思うが
システムごと死ぬのは十中八九デバイスドライバが悪い
64bitなら32bit用のドライバで動いてる奴が悪さしてるとかひょっとしたらあるかも
0589名前は開発中のものです。
2013/10/17(木) 15:23:43.00ID:c674Ibx6ドウイウコトナノ・・・
0590名前は開発中のものです。
2013/10/17(木) 16:06:04.12ID:G8MUlgiH画像全体に透過処理するんならモード変えろ
0591名前は開発中のものです。
2013/10/17(木) 16:14:55.88ID:5lApwyFA諦めて最初から透過しとけば?
0592名前は開発中のものです。
2013/10/17(木) 16:57:54.53ID:c674Ibx6他のスクリーンやスクリーンをGetDrawScreenGraphでMakeGraphでつくったハンドルに移しても機能せず
アルファ付き画像でアルファ指定してやらんと透過せんのね
微妙すぎぃ
0593名前は開発中のものです。
2013/10/17(木) 17:05:56.17ID:2Y9zA1MX0594名前は開発中のものです。
2013/10/17(木) 17:27:20.11ID:c674Ibx6サンクス
0595584
2013/10/18(金) 02:10:22.43ID:Fdn5BT6nDxLib使わなければ固まらなかったんでそこばっかり調べてたのですが、
なるほどと、いろんなものアップデートかけたけど状況変わらずでした。
解決ってわけじゃないけどBCCに移行したら
一時間くらい作業してみてるけど再発せず。
VSが悪かったってことなんだろうか?
ただ、すげー使いにくい。
0596名前は開発中のものです。
2013/10/18(金) 16:05:43.20ID:wI1cKsI5設定変えればいけるかもしれんけど
0597名前は開発中のものです。
2013/10/18(金) 18:23:23.35ID:N5DQXWku64bitか32bitかで支障あるん?
64bit用なんてありましたっけ?
0598名前は開発中のものです。
2013/10/18(金) 21:10:30.89ID:HCxtnSqx0599584
2013/10/19(土) 00:04:03.03ID:QcOl7SCF自己レス。
おそらく本当に解決したので一応ご報告。
BCCでも固まりました。
というか、デバッガで固まったのでそこを重点的にぐぐったら、
同様の症状でDRM関連のCYMON.SYSを消したら直ったというページを発見出来たので、
削除したらおそらく今度こそ本当にたぶん解決。
同様の事案で悩んでる人たちに伝えたい。
>64bit云々は同様の件で困ってる人がほとんど64bitのOSだったので怪しんだだけです。
結果的に関係なかった。
DxLibも関係なかった。
0600名前は開発中のものです。
2013/10/19(土) 00:05:41.25ID:cL2pDxD50601名前は開発中のものです。
2013/10/19(土) 01:03:15.68ID:5grMyEOo0602名前は開発中のものです。
2013/10/19(土) 01:16:15.10ID:+1vXIvno0603名前は開発中のものです。
2013/10/21(月) 18:41:36.26ID:w8555t4zよくリファレンスでFPS固定させるコードとかあるけどSetWaitVSyncFlag()で垂直同期するんじゃだめなんですか?
あとFPSによってゲームスピードが変わる云々という記述を見ますが、何故フレームで計算するんです?
私はGetNowCount()で計算しているんですが、何かまずい事でもあるのでしょうか
0604名前は開発中のものです。
2013/10/21(月) 18:47:51.14ID:/u23XyM9ダメ。垂直同期がない環境もある
>何故フレームで計算するんです?
時間に応じて可変フレームに対応するゲームを作るのは大変だから
>私はGetNowCount()で計算しているんですが、何かまずい事でもあるのでしょうか
パーフェクトに組めるなら問題ないけど、初心者には無理だと思う
あとです?で止めずにちゃんとですか?って書けよデコスケ
0605名前は開発中のものです。
2013/10/21(月) 18:58:35.56ID:w8555t4z>時間に応じて可変フレームに対応するゲームを作るのは大変だから
何故ですか?可変フレームなら尚更フレームで計算より時間で計算した方が良いと思うのですが
あ、この場合の計算って言うのは例えば○秒で画像Aをy軸に+1するみたいな計算です
0606名前は開発中のものです。
2013/10/21(月) 19:03:06.05ID:/u23XyM9フレーム固定処理ってのは○秒の部分を16.6666...ミリ秒に固定してるだけだぞ
一定時間毎に処理するならフレーム処理と変わらない
0607名前は開発中のものです。
2013/10/21(月) 19:06:38.76ID:/tZQoOAW0608名前は開発中のものです。
2013/10/21(月) 19:07:14.69ID:sMEbtuV5FPS固定よりも可変フレームレートの方が良い
開発が少し面倒くさい程度で、デメリットがない
垂直同期はテアリングが起きないのが最大の利点
ただしフレーム数がモニターに依存するようになるから
結局可変フレームレートに対応するようなプログラムを書く必要があって面倒くさい
だから最も初心者向けサイトは基本的に
作りやすい60FPS固定にしてフレーム基準で計算するようにしてる
しかもデメリットは垂直同期しないために起こるテアリングくらいしかない
0609名前は開発中のものです。
2013/10/21(月) 19:15:43.93ID:w8555t4zDXライブラリ使っててフレームレートを意識した事が全くなくて、リファレンスなどを見て何故そこまでしなければいけないのかと困惑している次第で
0610名前は開発中のものです。
2013/10/21(月) 19:17:01.12ID:xXi4ljOj0611名前は開発中のものです。
2013/10/21(月) 19:20:20.12ID:/u23XyM9処理落ちするとしたらほぼ確実に描画が原因な今の時代だと、固定フレーム+フレームスキップがベターだと思う
0612名前は開発中のものです。
2013/10/21(月) 19:29:53.55ID:/u23XyM9固定フレーム+描画スキップな
世の中のゲームの大半が60フレーム固定なのにはちゃんと理由があるわけで
・60フレーム以上のフレームレートにしても、人間が見るぶんには特に滑らかだと感じない
・CPUが成長したので処理で60フレームでないゲームなんてありえない
作るのが動的なゲームである限り、固定フレームを捨てるメリットはないというのが俺の持論
0613名前は開発中のものです。
2013/10/21(月) 19:42:40.65ID:70y1g1SQとりあえず言いたい事はわかる
0614名前は開発中のものです。
2013/10/21(月) 19:48:43.62ID:1CRFZwZlゲーム機で他のジャンルは ほとんどが30フレーム
パソコンの場合は、強力なPCもあれば、非力なPCもあるので
色々な手段を使って、最低限のフレームレートを確保しようとする。
また、負荷変動が多々にあるので、それに対処する必要も或る。
0615名前は開発中のものです。
2013/10/21(月) 19:52:47.30ID:xXi4ljOj0616名前は開発中のものです。
2013/10/21(月) 19:53:04.57ID:sMEbtuV5何を質問したいのかがよくわからない
可変フレームレート(時間単位での処理)でできてるならそれで大丈夫だよ
>>612
60フレームと120フレームでは明らかに違うから見た瞬間にわかるよ
120と240は俺自身は比べたことがないけど恐らくそれも感じ取れるだろう
実際に今のテレビのほとんどが240フレーム表示を採用してるからね
2万のネットブックとかで動かすユーザーなんかが絶対にいるから
ゲーム用PCで1000fpsくらい出せるようなゲームでも、20fpsとかになることはざらにある
0617名前は開発中のものです。
2013/10/21(月) 19:55:43.22ID:/lNEn8aD広大な3Dマップを切り替えなしのリアルタイムで読み込むタイプならあって損はないかもね
60より必要あるのはレート120やら144やら使う格ゲーFPSガチ勢くらい
それ以外のジャンルなら頭動かすだけ無駄
やりたければ勝手にどうぞの世界
0618名前は開発中のものです。
2013/10/21(月) 20:04:47.68ID:w8555t4z私が言いたかったことは
例えばここの
http://dixq.net/g/03_02.html
while( ScreenFlip()==0 && ProcessMessage()==0 && ClearDrawScreen()==0 && gpUpdateKey()==0 ){
DrawGraph( 0, Count% 50, Handle, TRUE ); // 周期 50カウント でループ表示する
DrawGraph( 100, Count%100, Handle, TRUE ); // 周期 100カウント でループ表示する
DrawGraph( 200, Count%150, Handle, TRUE ); // 周期 150カウント でループ表示する
Count++; // カウンタ加算
}
こんな処理をしたとして「PCスペックによって時間が変わっちゃうからFPS固定しよう」とか言ってるなら最初から時間測れば良いのでは?
と思ったって事です
0619名前は開発中のものです。
2013/10/21(月) 20:08:41.83ID:/u23XyM9そんな単純なもんじゃないから、フレーム固定で作っておけ
0620名前は開発中のものです。
2013/10/21(月) 20:11:54.34ID:1CRFZwZlそれが、個別に全部が違う挙動をする。
0621名前は開発中のものです。
2013/10/21(月) 20:14:02.72ID:w8555t4z↓
http://dixq.net/g/03_14.html
0622名前は開発中のものです。
2013/10/21(月) 20:19:16.36ID:/u23XyM9ズレるわ
0623名前は開発中のものです。
2013/10/21(月) 20:23:20.98ID:sMEbtuV5そのサイトは初心者向けだから可変フレームレートは難しい
また、その章までに書いたプログラムすべてを変更する必要がでるから避けてるんだよ
>>608にも書いたけど時間を計って可変フレームレートにするのは良いことだよ
一応処理落ちについての話題が出たから例として触れておくと、
極端な処理落ちが発生したときに可変フレームレートだと衝突判定のすり抜けが起こることが
予期されるからそれを防止するためのメカニズムを考えないといけなかったりとか
とにかくプログラム書くのがFPS固定に比べて面倒くさい
0624名前は開発中のものです。
2013/10/21(月) 20:27:42.27ID:r1lqBEdn1フレーム毎に画面が白黒⇔カラーを繰り返すみたいなエフェクトを実装するとき
可変フレームレートだと白黒のままになったりカラーのままになったりで
おかしな表示になるんじゃないんですか
0625名前は開発中のものです。
2013/10/21(月) 20:27:43.27ID:/u23XyM9カーブとか重力を考慮した移動とか複雑な移動処理をするなら
完全な再現性を実現できない限りは可変フレームレートなんて採用すべきじゃないと思うな
ネトゲやFPSだって、発生した事実関係だけをサーバに送信して無理矢理辻褄合わせてるだけだし
0626名前は開発中のものです。
2013/10/21(月) 20:30:11.95ID:w8555t4z↓
予め1フレーム過ぎる毎にint countを+1しておく
↓
あるアクションから一秒たったら画像を表示させたいから
アクションおこした時にint a = countする
↓
count - a > 60の時に画像を表示
みたいな説明があって
countの代わりにGetNowCount()を使えばfps固定する必要なんてないと思ったと言おうとしました
説明下手でごめんなさい
>>623-625
なるほど
まだそんなレベルに達していなかったので面倒くさいとも思いませんでした
ありがとうございました
0627名前は開発中のものです。
2013/10/22(火) 00:35:28.42ID:p3Db7vmq微分方程式を解ける秀才がこのスレに降臨したかと期待したが、ただの初心者だった
0628名前は開発中のものです。
2013/10/22(火) 03:54:29.71ID:o/EMSDRGああ、それは勘違いしそうになるな。説明が不適切とまでは言わないが。
1秒後(あるいは60フレーム後)に画像を表示する、くらいなら正直どっちでもいいと思うけど、
秒速120ドットで移動するとかだと少し面倒になるって感じかねぇ。分母が変わっちゃうから。
0629名前は開発中のものです。
2013/10/22(火) 04:28:57.73ID:o/EMSDRGゲーム内時間をフレーム基準で考えるか、実時間ベースにするかって問題だよね。
フレーム基準というのは、つまりゲーム内時間をプログラマが管理できる状態と言い換えられる。
それに対して、実時間を基準に処理を行うというのは、ゲーム内時間にプログラマがアクセス出来ない状態と言える。
この差は結構重要で、プログラミングをする際に1つの処理を細かく積み上げて考えたい時や、
あるいはテストプレイやデバッグの際に、ゲームスピードをゆっくりにして動作を見極めたいという時に、
実時間ベースだと不便そうだなあというのは、何となく分かってくれるんじゃないかと思う。
もちろん実時間ベースが優れてるところもあるので、決して間違いではないのだけれど。
0630名前は開発中のものです。
2013/10/22(火) 06:42:35.27ID:ExrKC0WT1秒を60フレームって前提でゲーム内のタイマー作っちまってるわ
0631名前は開発中のものです。
2013/10/22(火) 06:52:51.98ID:o/EMSDRG0632名前は開発中のものです。
2013/10/22(火) 07:32:13.52ID:h2dd5GhR環境によってfps変わってたらリプレイの再現できなくない?
0633名前は開発中のものです。
2013/10/22(火) 08:42:21.30ID:V7djTReU動きが荒くなるだけじゃない?
0634名前は開発中のものです。
2013/10/22(火) 08:54:17.54ID:BGWyzjBWと思ったけど処理したときついでに時間記録すれば普通にできるか
0635名前は開発中のものです。
2013/10/22(火) 09:32:38.97ID:a95zJsvM0636名前は開発中のものです。
2013/10/22(火) 09:45:09.67ID:aNv/ean10637名前は開発中のものです。
2013/10/22(火) 11:17:27.80ID:uNccePouずれ誤差怖いから実体の位置を入力時間ごとに別で取っておいてそこから計算させた方がいいかも?
使う処理が1つで済む&信頼度高いけど情報量が膨れそう
とか妄想したけどジャンル的にリアルタイムリプレイなんて一生実装しないだろうな
0638名前は開発中のものです。
2013/10/22(火) 12:36:20.41ID:RkpLyTH20639名前は開発中のものです。
2013/10/22(火) 12:47:39.37ID:R7mUWhnr0640名前は開発中のものです。
2013/10/22(火) 15:20:36.48ID:o/EMSDRG0641名前は開発中のものです。
2013/10/22(火) 15:31:37.39ID:02IR7DMm俺のように高レベルな人間になると議論する相手を探すのも苦労する
0642名前は開発中のものです。
2013/10/22(火) 15:55:43.08ID:RkpLyTH20643名前は開発中のものです。
2013/10/22(火) 16:25:11.43ID:aNv/ean1多分ツッコミ待ちなんだろうけど、どこへツッコめばいいのかわからんw
0644名前は開発中のものです。
2013/10/22(火) 16:30:05.22ID:IVeWUgqF0645名前は開発中のものです。
2013/10/22(火) 18:58:55.59ID:Fwxh/sRV他のdxlibを使ったゲームはウィンドウの方が不安定だったりするのになぜでしょうか…
2D表示機能のみで、主な設定関数は
SetGraphMode(800,600,16)
SetDrawScreen(裏画面)
SetDrawMode(バイリニア)//ゲーム中変更なし
処理としては、描画に加算・減算切り替えが多め、背景の計算がやや複雑といった感じです
全画面モード中はこの処理が重い、といったことはあるのでしょうか?
0646名前は開発中のものです。
2013/10/22(火) 20:35:42.51ID:IVeWUgqF0647名前は開発中のものです。
2013/10/22(火) 22:01:05.96ID:o/EMSDRG解像度を変えるのではなくウィンドウサイズを上げてるとか…… うーん、わからん
0648名前は開発中のものです。
2013/10/22(火) 22:30:32.24ID:smR91Eyn音楽に合わせた演出がゲーム最初にあるのですが確実にずれていました
デバックビルドで計測しましたが、ウィンドウだと13ms、全画面だと17msでした
screenflipで差が出るようです
0649名前は開発中のものです。
2013/10/22(火) 22:31:54.83ID:o/EMSDRG0650649
2013/10/22(火) 22:34:58.08ID:o/EMSDRGたぶん、モニタ&グラボのリフレッシュレートが75Hz(≒13ms)になってるんじゃないか?
で、フルスクリーンにするときに、プログラム側で60Hz(≒17ms)に設定しているんだと思う
0651名前は開発中のものです。
2013/10/22(火) 23:04:05.07ID:CMYREC7cでは全画面モードが遅いのではなくウィンドウモードが若干早送りされてるということですか!
これを抑えて調整し直します。ありがとうございました!
0652名前は開発中のものです。
2013/10/22(火) 23:07:27.52ID:IeNmWB2w0653名前は開発中のものです。
2013/10/22(火) 23:29:28.48ID:56sEfdt6常にCPU負荷とFPSぐらいは見れるようにしとかないと・・・
0654名前は開発中のものです。
2013/10/23(水) 01:24:23.81ID:mBIdYewB手元に60Hz以外に対応してるモニタが無いから、ホントにそれで合ってるのか分からん。
>>653
CPU負荷は表示させたこと無いなあ。Win32APIあたりから拾ってくるのん?
0655名前は開発中のものです。
2013/10/23(水) 02:00:20.55ID:/vNRk1Xr垂直同期しないならWaitTimerが都合よく動くことを祈る
0656名前は開発中のものです。
2013/10/23(水) 03:47:45.96ID:0wrZIgXb単純にwait処理以外の時間を1秒間ms単位で足して1000で割る
で良いんじゃね
垂直同期待ちしてる場合はScreenFlipもwait処理として考える
0657名前は開発中のものです。
2013/10/23(水) 17:08:21.68ID:mBIdYewBただ、手元に60Hz以外の環境で確認するすべがないのと、
もしかすると、もうちょっとスマートな方法があるのかな?と、ちょっと気になっただけなんだ。
まあ、タイマー制御もvsync待ちも切ると500FPSとかで動いたりするから、大丈夫だろうとは思うんだけどさ。
デフォルトはタイマー制御にしておいて、コンフィグ画面なり起動時のダイアログなりで変えれるようにするのがベストかな?
0658名前は開発中のものです。
2013/10/23(水) 17:14:46.11ID:r7PHrsPz0659名前は開発中のものです。
2013/10/23(水) 20:42:08.44ID:FRuG4Mt00660名前は開発中のものです。
2013/10/25(金) 11:35:42.34ID:5OBeL3FY例えばモニタが60fpsだったら、描画スレッドを60fps(vsync?)にして、
処理スレッドと描画スレッドはどうやって同期するんだ?
処理スレッドが座標いじってる時に描画スレッドが座標見るのはダメなんだよな?
まぁ早々ブッキングはしないだろうけど何万回転とかしたら・・・
0661名前は開発中のものです。
2013/10/25(金) 16:06:37.29ID:4mKf6ch/それは一旦fpsとかその他の言葉を忘れて、マルチスレッドでの同期処理を書いて理解した方がいい。
てか、ドライバ書いてる訳でも無いのに垂直帰線期間の話が出て来る事自体が、あんまりリアルじゃない。
30年前の8bitマシンならともかく、今のマシンでアプリレイヤの話ならばちょっと変だ。
垂直帰線期間の考慮が必要になるのは、例えばDirectXやOpenGLそのものがその中で行っている最後のラスタ情報のVRAMへの転送処理の中の話であって、
普通は(アプリケーションプログラマは)メインループの経過時間差を見てfpsをコントロールする。
具体的には一定経過時間未満の場合に処理をスキップさせる。
もしもこの周辺処理をマルチスレッドで実装したい場合に、意図的な同期処理が必要になるが、そういった場合にマルチスレッドでの流儀で実装する。
そうでないなら単にメインループの中で、普通に処理するだけ。
こういった話はより具体的にしないと、ただの曖昧な聞きかじりみたいな話で終わってしまい、全然役に立たない。
経験から引き出して実例として話さないとダメ。
0662名前は開発中のものです。
2013/10/25(金) 16:51:42.23ID:4Ad/OwJF0663名前は開発中のものです。
2013/10/25(金) 17:31:09.74ID:L0JBOh2J0664名前は開発中のものです。
2013/10/25(金) 21:13:51.48ID:eOV2PGNk0665名前は開発中のものです。
2013/10/25(金) 21:16:54.66ID:L0JBOh2J0666名前は開発中のものです。
2013/10/25(金) 21:32:50.74ID:W9GSrEjC0667名前は開発中のものです。
2013/10/25(金) 21:59:31.35ID:Wzto7AEP誤爆か?
0668名前は開発中のものです。
2013/10/25(金) 22:47:27.21ID:8QrcaZYH0669名前は開発中のものです。
2013/10/26(土) 05:38:35.50ID:EY53Gq9Jマップスクロールを「キャラを中心にスクロール」、
「画面端はキャラだけ移動」という一般的な方法を
採用していますが、画像がブレだかボヤケだかの描画に
なってしまいます。
・キャラを中心にスクロールしているときは、背景のマップが
ぶれる(ぼやける)
・画面端でキャラだけ動いているときは、キャラが
ぶれる(ぼやける)
スクロール方法は下記サイトの方法で実装しています。
aidiary.hatenablog.com/entry/20050624/1255786339
スクロール中にキャラやマップのぶれを少なくする方法は
何かないでしょうか。
0670名前は開発中のものです。
2013/10/26(土) 05:50:55.66ID:6XzQgQShスクロール方法関係ないんじゃない?
0671名前は開発中のものです。
2013/10/26(土) 05:58:59.74ID:EY53Gq9Jブラウザとかでも高速でスクロールさせると文字や画像が
残像する、あのような感じです。
<キャラを中心にスクロール中>
マップに残像が発生しますが、キャラはくっきり描画
されます(アニメーションしてても)。
<画面端でキャラだけ移動しているとき>
マップはくっきり描画されますが、移動中のキャラは
常に残像が発生します。
※参考にしたサイトのサンプルプログラムでも
同様の残像が発生します。
0672名前は開発中のものです。
2013/10/26(土) 06:08:55.30ID:6XzQgQSh0673名前は開発中のものです。
2013/10/26(土) 07:26:17.12ID:6YbVuCZu0674名前は開発中のものです。
2013/10/26(土) 08:51:17.35ID:/uNZ0zLg0675名前は開発中のものです。
2013/10/26(土) 08:56:23.71ID:Q2EqAaLNこれを実行で俺もなった
0676名前は開発中のものです。
2013/10/26(土) 11:49:37.99ID:pP8Y9uuyURLの先見てないけど、普通に真っ先に思い付くのはダブルバッファリングしてるかどうかだと思う。
で、多分してないんだと思う。それだけの事かなと
0677名前は開発中のものです。
2013/10/26(土) 11:53:21.66ID:yQ4RNrvp最後にそのバッファを画面へ送る。
真っ先にその話が出るべき
0678名前は開発中のものです。
2013/10/26(土) 13:57:28.53ID:J0WOOfsS撮ったスクリーンショットがおかしかったらゲームが悪い
だがこの場合、多分モニタの残像だろう
PSPのゲームとかでも残像起こってるだろ? ショボイモニタだとドットの色切り替えが遅くてモヤっとした残像が残る
液晶モニタ使ってるならそれが正常な状態だからそのままでいい
自分のテスト環境で発生するのが嫌なら、CRTモニタか、性能のいい液晶モニタを買うしかない
もしくは、作ってるゲームが30fpsだったなら60fpsで組めば多少はマシになる
0679名前は開発中のものです。
2013/10/26(土) 14:17:59.04ID:6eucTLth別におかしくない
環境かな
0680名前は開発中のものです。
2013/10/26(土) 14:26:43.92ID:VAjnFKN9環境だね
0681名前は開発中のものです。
2013/10/26(土) 14:28:35.26ID:j2hwvwUg相当クソなブラウザを特別に使ってなければ環境
0682名前は開発中のものです。
2013/10/26(土) 14:55:49.27ID:6eucTLth0683名前は開発中のものです。
2013/10/26(土) 15:26:34.20ID:vOP7JN2Phttp://toro.2ch.net/test/read.cgi/gamedev/1361004297/800-807
マルチポストじゃなくて、第三者による転載だってさ。
DXライブラリの質問とは限らないし、回答するなら本人が居る向こうの方が良いと思う
0684名前は開発中のものです。
2013/10/26(土) 15:49:34.04ID:J0WOOfsS0685名前は開発中のものです。
2013/10/27(日) 03:55:14.21ID:hVtutQ/3教えてGooの擬人化みたいな奴だな…
0686名前は開発中のものです。
2013/10/27(日) 18:32:26.43ID:ZqajIEUd修正してたら一日終わった・・・
0687名前は開発中のものです。
2013/10/27(日) 18:40:59.76ID:lWMy8q7c0688名前は開発中のものです。
2013/10/27(日) 19:07:38.88ID:J4caiA240689名前は開発中のものです。
2013/10/27(日) 20:36:50.19ID:ky3lixuM0690名前は開発中のものです。
2013/10/27(日) 20:49:33.81ID:o0p58kLo0691名前は開発中のものです。
2013/10/27(日) 21:02:15.67ID:XS+5Iaz00692名前は開発中のものです。
2013/10/28(月) 08:27:44.01ID:POAr7U/I0693名前は開発中のものです。
2013/10/30(水) 14:41:44.02ID:sYdTMpzXそんなに糞だと思うならNetBeansなり
IntelliJなり好きなの使えばいいのに
0694名前は開発中のものです。
2013/10/30(水) 16:10:35.70ID:28s19Yxa0695名前は開発中のものです。
2013/10/31(木) 12:48:09.17ID:cHiDnG2c0696名前は開発中のものです。
2013/10/31(木) 14:46:32.33ID:kR/JAw790697名前は開発中のものです。
2013/10/31(木) 15:29:36.47ID:p29pq3vL0698名前は開発中のものです。
2013/11/01(金) 17:22:12.94ID:O2gJuo4d0699名前は開発中のものです。
2013/11/01(金) 17:43:40.29ID:19pXpteF0700名前は開発中のものです。
2013/11/01(金) 17:56:15.00ID:/fYKLVaQ0701名前は開発中のものです。
2013/11/02(土) 03:30:34.86ID:Ut0q1ayZ0702名前は開発中のものです。
2013/11/02(土) 03:36:17.73ID:x2D2oiTV0703名前は開発中のものです。
2013/11/02(土) 08:09:56.90ID:3+cyVteEどうしたらいいですか?
mv1ファイルを読み込み
座標・回転の設定・更新
描画リストへ登録
描画リストが各クラスへ描画する関数を呼び出し
描画リストを初期化
最初に戻る
これら一連の流れで値に異常が見つかりません
エスパーいたらお願いします
0704名前は開発中のものです。
2013/11/02(土) 13:37:22.37ID:BsNpZj+/スケールの初期値がおかしかったり
0705名前は開発中のものです。
2013/11/02(土) 14:08:55.57ID:WffMO7pj・次に、あるとした、それらを単に「おまじないで出来た」じゃなく意味わかっててやれたのか
・次にカメラの位置や角度とモデルの位置はあってるか
・次にシェーダ使ってる場合、シェーダ内のエラーちゃんと拾ってるか。計算は合ってるのか
・使ってないとしてマテリアルやライトはどうなってるか
確認点いくらでも出てくる
0706名前は開発中のものです。
2013/11/02(土) 14:16:54.20ID:zb+/V8x50707名前は開発中のものです。
2013/11/02(土) 20:26:00.39ID:n5KzCdEvhttp://c-games.main.jp/ckaihatu/ckaihatu8.html
良かったらこれをご覧ください
上記の解説サイトを運営している者ですが
お役に立てれば光栄です
0708名前は開発中のものです。
2013/11/02(土) 20:29:07.13ID:yqJ8dEIi騙されんなよ
0709名前は開発中のものです。
2013/11/02(土) 20:37:43.45ID:9FYWUI/Yちゃんとコテハン付けてくれるとなお良し
0710名前は開発中のものです。
2013/11/02(土) 21:09:13.15ID:mpR3CYfzお前らちゃんと使いこなしてる?
0711名前は開発中のものです。
2013/11/02(土) 21:35:26.14ID:SySW2qwHerror C2064: 0 引数を取り込む関数には評価されません。
とエラーがでます。どうしたらいいですか?
struct{
string AI_NAME;
void (CNonPlayer::*AI_Func)();//AIの関数ポインタ
}AIList[6];
int UseAI;
//使う時
AIList[UseAI].AI_Func();
ちなみに関数ポインタはコンストラクタで
AIList[0].AI_NAME="Idle";
AIList[0].AI_Func=&CNonPlayer::AI_Idle;
みたいに初期化しています。AI_Idleみたいなメンバ関数が6個あります。(要素数)
0712名前は開発中のものです。
2013/11/02(土) 21:40:49.23ID:O018gqUy0713名前は開発中のものです。
2013/11/02(土) 21:42:40.26ID:3Maelvih0714名前は開発中のものです。
2013/11/02(土) 21:59:51.69ID:SySW2qwHおぉ・・・
(this->*AIList[UseAI].AI_Func)();
こんなんにしたらできました
ありがとうございます
>>712
ナマポ?スマートポインタじゃないと設計としてまずいですか?
0715名前は開発中のものです。
2013/11/02(土) 22:02:12.55ID:9FYWUI/Y0716名前は開発中のものです。
2013/11/03(日) 00:55:04.58ID:W4L0bxGv0717名前は開発中のものです。
2013/11/03(日) 03:40:26.61ID:tMrWUay8関数ポインタの指してる先が普通のメンバ関数みたいだし
このケースではスマートポインタにする意義は無いと思う
似たようなことを敢えて言うとすれば「std::function使おう」とか言えるけど
0718名前は開発中のものです。
2013/11/03(日) 08:21:38.75ID:vvC2nxd0http://pona.m-bird.org/d-bbs/2-watch/
0719名前は開発中のものです。
2013/11/03(日) 11:42:25.33ID:EBwOtCUXどのみちその保管したメンバ関数実行するにはインスタンス渡してやらないといけないから、
その構造体単独では使えない。
=インスタンス渡せるなら、直接呼べばいい訳だから、全然意味無いけどな
0720名前は開発中のものです。
2013/11/03(日) 12:15:02.65ID:qqgP/ziMhttp://ideone.com/fwUQGy
0721名前は開発中のものです。
2013/11/03(日) 14:12:08.37ID:HkNPhWdK関数名と関数ポインタをセットで扱いたかったのですが、
かいたプログラマしかわからないような処理になったので、別途列挙体作って管理したいと思ったらこんな感じになりました。
プライベートなメンバ関数なのでコンストラクタで構造体を初期化してます。
理想的なのかどうかはわかりませんご・・・
0722名前は開発中のものです。
2013/11/03(日) 14:18:50.24ID:HkNPhWdK>>711はクラスのメンバ関数内の話です・・
0723名前は開発中のものです。
2013/11/03(日) 17:12:55.51ID:PGRU4d3rロックマンみたいなアクションゲーム作りたいんですが。
0724名前は開発中のものです。
2013/11/03(日) 17:22:18.31ID:oybLvXS0DXライブラリ以前に、言語は問題ないの?
0725名前は開発中のものです。
2013/11/03(日) 17:30:58.74ID:PGRU4d3rDXライブラリだとアクションゲームは楽ですか?
0726名前は開発中のものです。
2013/11/03(日) 17:38:05.58ID:q6P+R2O4DXライブラリはライブラリ。比較するようなものではない。
DXライブラリは通常C++(VC++)で使う。こっちがプログラミング言語。
だから質問するなら、「VBA」と「C++&DXライブラリ」の比較って事になるのかな。
俺はVBA使ったことないから答えは知らん。
ただVBAとC++、どっちか一つでも使えるならそっちを使えばいいんじゃないか、という事なら言える。
DXライブラリを使えば画像表示とか入出力判定とかは簡単だが、アクションゲームうんぬんはプログラミングの腕次第だからDXライブラリ関係ない。
0727名前は開発中のものです。
2013/11/03(日) 17:47:06.31ID:PGRU4d3rなるほどそういうことでしたか。
DXライブラリにおける背景のロードはどうすればいいのでしょうか?
主人公が進むにつれて新しい背景が出てきますが。
0728名前は開発中のものです。
2013/11/03(日) 17:58:13.17ID:oybLvXS0質問するなら、今どうやってて、どううまく行ってないのか書いてくれないと
0729名前は開発中のものです。
2013/11/03(日) 17:59:21.00ID:PGRU4d3r背景画面の連結とかの方法が分かりません。
教えてください。企業秘密ですか?
0730名前は開発中のものです。
2013/11/03(日) 18:03:23.93ID:qqgP/ziM言語としては非.NETの旧来のVBで、環境としてはOffice製品が必要な物。
DXライブラリはC/C++言語で利用するライブラリ。で、
>>727
「背景」って用途は自分が決めた使い道の事であって、単に画像のロードなんかはAPIリファレンス参照。
http://homepage2.nifty.com/natupaji/DxLib/dxfunc.html
当たり前だけど、基本的にプログラミングの視点で、自分がやりたい事は具体的にどういう事なのか、がわかってないと
DXライブラリに限らず何も出来ないよ。
……その意味ではVBAだろうと何だろうと何でもそうだけど。
0731名前は開発中のものです。
2013/11/03(日) 18:04:45.07ID:QD0IOl9q0732名前は開発中のものです。
2013/11/03(日) 18:05:32.09ID:eDrvMfu60733名前は開発中のものです。
2013/11/03(日) 18:05:45.62ID:PGRU4d3rロックマンを作りたいんです。
主人公が進むにつれて背景画像が更新されるようなプログラムを作りたいのですが
その方法を教えて下さいと言っているのです。
0734名前は開発中のものです。
2013/11/03(日) 18:08:06.19ID:yZmxR7Tm以降の質問・回答のやり取りはこちらのスレで行ってください
http://toro.2ch.net/test/read.cgi/gamedev/1361004297/
0735名前は開発中のものです。
2013/11/03(日) 18:08:20.79ID:qqgP/ziM「企業秘密ですか?」って妙な一言付けてくるあたり、もしかしたら釣りかもしれないと疑いつつ、
背景画面との「連結」って表現は普通しないけど、お前さんがやりたい事は単に画像の重ね合わせ表示のような物。
上のリファレンス読んで頑張れ。
ってか、基本的にコンピュータで動いてる物の仕組み自体は理解してるか?
あるいはなんらかプログラムを作ったことは。
特に、出来ればC/C++で何か動くもの作ったことはあるか?
0736名前は開発中のものです。
2013/11/03(日) 18:11:48.82ID:qqgP/ziMお前さんが簡単に数行で書いてる質問の正解は、お前さんがどこまで何を知っててどんな経験と知識があるかで大幅に変わるから、
もしもまったく何も知らないなら、本一冊買って基本的な勉強全部やって何か一本自分で作れてから聞いて。
何も知らない状態の人に全部説明したら本一冊書けるくらいの内容になっちゃうから。
本当に。
0737名前は開発中のものです。
2013/11/03(日) 18:11:52.44ID:PGRU4d3r複数の画像を通し番号でアクセスしたい場合データ構造は何がベストですか?
そもそもDXライブラリにおいて一つの画像のビットマップを格納する方法が分かりません。
0738名前は開発中のものです。
2013/11/03(日) 18:13:29.80ID:eDrvMfu6>VBAとDXライブラリはどっちが使いやすいですか?
とか質問してるレベルの奴が人に聞いて問題を解決するとか愚かすぎる
まずは既存の講座サイトを見て適当に動くプログラムを組んでみてから心配しろ
0739名前は開発中のものです。
2013/11/03(日) 18:17:19.91ID:PGRU4d3r知ってる人がいれば教えて下さい。企業秘密ですか?
0740名前は開発中のものです。
2013/11/03(日) 18:18:06.99ID:qqgP/ziMそういう具体的な質問なら、普通は「画像データ格納した構造体なりなんなりのポインタをvectorにでも並べとけばいいんじゃね」
って回答で終わるんだけど、これは別に特殊な方法でもなんでもないので、
なんかコード書いてる人なら最初に自分で思い付くレベルのかなりベタな話。
鍵カッコの中の一文、意味通じたか?
0741名前は開発中のものです。
2013/11/03(日) 18:19:46.13ID:8z747x7V0742名前は開発中のものです。
2013/11/03(日) 18:21:21.17ID:qqgP/ziMなんか釣りっぽいな。
>>735 の冒頭にも疑い書いたのにまた妙な事繰り返す辺りが。
>>734 のスレ行った方がいいよ。
0743名前は開発中のものです。
2013/11/03(日) 18:36:24.37ID:PGRU4d3rvectorってC++じゃなかったですか?
DXライブラリが提供している配列みたいなデータ構造とかあるんですか?
0744名前は開発中のものです。
2013/11/03(日) 18:37:50.20ID:eDrvMfu6もうほっとこう
0745名前は開発中のものです。
2013/11/03(日) 18:38:11.98ID:q6P+R2O4なんで釣りだとわかった途端レスが増えるんだよ。
0746名前は開発中のものです。
2013/11/03(日) 18:40:18.24ID:qqgP/ziMいや、そのC++のstlにあるvectorの事を言ってるけど
てか、DXライブラリってどういう物かわかってるか?
0747名前は開発中のものです。
2013/11/03(日) 18:43:18.04ID:PGRU4d3rDirectXの機能を使いやすいようにしたものですか?
DirectXにも配列って有りませんでした?
vectorの使い方とか分からないんで。それ以外で何かありませんか?
0748名前は開発中のものです。
2013/11/03(日) 18:46:57.50ID:qqgP/ziMとりあえず無い。てかvectorみたいな簡素な物わからなかったらどこにも無い。
てか、別にvectorに拘らなくても普通の配列で都合良いならそれでもいいじゃない。
てかもうDXに限らず外部ライブラリ使う以前の話なので、迷惑だから
>>734 のスレ行って。あと俺の質問にまったく答えない辺り気に入らないからもう安価しないで。
あと本読んで。終わり。
0749名前は開発中のものです。
2013/11/03(日) 18:47:43.88ID:PGRU4d3r釣りじゃないからやり取りが弾むんでは?
さて、例えばAの画像を4、Bの画像を6表示するってのを動的にやる方法が
分からないんですよね。
t:10-tで表示する方法です。
どうしたらいいんですか?
0750名前は開発中のものです。
2013/11/03(日) 18:48:39.64ID:PGRU4d3rすいませんでした。
0751名前は開発中のものです。
2013/11/03(日) 18:59:18.56ID:eDrvMfu6釣りだからじゃなくてお前が馬鹿だからだ
0752名前は開発中のものです。
2013/11/03(日) 19:01:01.03ID:PGRU4d3r馬鹿っていうソースを出してください
0753名前は開発中のものです。
2013/11/03(日) 19:03:53.98ID:UEvXhgnL>>747 vectorの使い方とか分からないんで。
0754名前は開発中のものです。
2013/11/03(日) 20:28:49.15ID:5/lYAMhw参考書読め。厚かましい。
0755名前は開発中のものです。
2013/11/03(日) 21:45:47.74ID:TksWLddl>>750
この流れに笑う
0756名前は開発中のものです。
2013/11/03(日) 22:18:29.73ID:QatK0L14あなたが、このようなゲームを作りたいのですか?
http://www.rutles.net/download/217/compiled.zip
14歳からはじめるC言語わくわくゲームプログラミング教室
Visual Studio 2008編―Windows XP/Vista対応
http://www.rutles.net/products/detail.php?product_id=392
0757名前は開発中のものです。
2013/11/03(日) 23:21:18.09ID:yZmxR7Tm0758名前は開発中のものです。
2013/11/03(日) 23:51:34.26ID:a/xyoUQ1見積書くらい作ってやれよ
0759名前は開発中のものです。
2013/11/04(月) 07:32:54.47ID:oLRpk0vd0760名前は開発中のものです。
2013/11/04(月) 10:18:13.07ID:dZTD89BM0761名前は開発中のものです。
2013/11/04(月) 13:17:13.61ID:yTqiV+1X0762名前は開発中のものです。
2013/11/04(月) 14:11:15.89ID:n6mZi9Ct0763名前は開発中のものです。
2013/11/04(月) 16:57:34.62ID:oLRpk0vd0764名前は開発中のものです。
2013/11/04(月) 17:09:48.89ID:dZTD89BM0765名前は開発中のものです。
2013/11/04(月) 17:28:54.95ID:sQ908pKGやっべー まじ やっべー
0766名前は開発中のものです。
2013/11/04(月) 17:54:41.13ID:qS282/KW0767名前は開発中のものです。
2013/11/04(月) 18:12:00.98ID:rILdYRIp0768名前は開発中のものです。
2013/11/04(月) 18:25:08.33ID:ivzaYsK90769名前は開発中のものです。
2013/11/04(月) 18:29:28.84ID:rILdYRIp標準ライブラリの標準入出力って意味だから
標準ライブラリの拡張入出力が出たりするかも知れないじゃないか(無い
0770名前は開発中のものです。
2013/11/04(月) 18:48:42.40ID:Ao5FLTjWそのための関数を教えて下さい。
0771名前は開発中のものです。
2013/11/04(月) 18:50:56.46ID:6Jpz+X29・ついでにLoadGraphScreenを使うのをやめましょう
0772名前は開発中のものです。
2013/11/04(月) 18:52:10.63ID:Ao5FLTjWその関数は何故使ったらダメなのですか?
0773名前は開発中のものです。
2013/11/04(月) 18:56:27.53ID:qS282/KW目の前にパソコンがるのに、そろばんで計算してるようなもん。
0774名前は開発中のものです。
2013/11/04(月) 19:11:09.01ID:Ao5FLTjWじゃぁLGSは何故あるのですか?
便利だからでしょう?
0775名前は開発中のものです。
2013/11/04(月) 19:18:18.67ID:oLRpk0vd0776名前は開発中のものです。
2013/11/04(月) 19:22:52.71ID:rO2LFCzb0777名前は開発中のものです。
2013/11/04(月) 19:24:57.85ID:yTqiV+1Xロード中にコールバックでもしたら
0778名前は開発中のものです。
2013/11/04(月) 19:29:06.78ID:M1WiJaGRいえ、便利だからあるわけではありません
なんでこんな関数を用意したのかは知りませんが
LoadGraphScreen関数を使った場合
HDD ⇒ メモリ ⇒ 描画
毎回、このような処理をして画像をPCモニターに描画することになります
HDDは回転速度が遅いため、
毎回、このような処理をして描画をすれば処理が遅くなります
そこで、LoadGraph関数を使って画像を一旦、メモリに取り込んでおきます
HDD ⇒ メモリ
そして、DrawGraph関数を使ってメモリから描画します
メモリ ⇒ 描画
そうすることで、処理速度が向上し、重たくないゲーム画面になります
0779名前は開発中のものです。
2013/11/04(月) 19:30:02.81ID:dZTD89BM使うのにはこれっぽっちもうれしくない
0780名前は開発中のものです。
2013/11/04(月) 19:35:40.93ID:M1WiJaGRNowLoading画面で、LoadGraph関数を使って
画像をメモリに取り込みます
そしてロードが完了し次第
ゲーム本編で、DrawGraph関数でメモリにぶちこんだ
画像を呼び出して描画します
詳しくは、ドラクエ10でもプレイしてみてください
ゲーム開始時やところどころで「NowLoading画面」が表示されます
ゲームとはそんなものだと思ってください
0781名前は開発中のものです。
2013/11/04(月) 19:42:51.18ID:aXJyorQFこれはある
が、プログラム学ぶならこれぐらいは当然という気持ちもある
0782名前は開発中のものです。
2013/11/04(月) 19:43:03.92ID:M1WiJaGRhttp://c-games.main.jp/index.html
初学者目線で、優しくC言語/C++のプログラムを説明していますので、
もし、全くプログラミングをやったことがない初心者である自信があれば
一度、ご覧になってみてください
初学者向けなので、中級者以上には物足りないかも知れませんが、
初心者であれば、一気に中級者を追い越して、中級者以上になれます。
(このスレの常連より遥かに上になって見下せますw)
0783名前は開発中のものです。
2013/11/04(月) 19:44:24.93ID:aXJyorQFすげええええけええええええええ!!!!
俺もプロのゲームプログラマーになってこんな2chみたいな吹き溜まりの奴ら見下したいです!!!!!
0784名前は開発中のものです。
2013/11/04(月) 19:49:50.21ID:r19JIK5u自分は背景をDrawGraph関数で並べてから
表示キャラをDrawGraphの第4引数をtrueにして表示する
(ビットマップ画像でキャラの外側を黒で埋めておく)
上記で普通にいけると思う
ちなみにLoadGraphScreenは使ったこと無いけど
メモリに入れるなら通常のLoadGraph使うだろうから
メモリ介さずにファイルから直接スクリーン投影用じゃない?
0785名前は開発中のものです。
2013/11/04(月) 20:00:09.34ID:dZTD89BM0786名前は開発中のものです。
2013/11/04(月) 20:05:58.51ID:bL0Rt3Em0787名前は開発中のものです。
2013/11/04(月) 20:06:22.16ID:Ao5FLTjWLGSよりもっといい関数があるんだ!
このスレ見てたら参考書いらんわー
ありがとう!!!!!!!!!!!
Thank you very much for me
0788名前は開発中のものです。
2013/11/04(月) 20:15:37.77ID:PqV54s4LでもそういえばJavaのJITも最近はキャンシュでゴリ押し最適化図るとか聞いたね
0789名前は開発中のものです。
2013/11/04(月) 21:00:23.71ID:84QWcKjq背景はmakescreenで予め1つテクスチャにまとめちゃってるな
0790名前は開発中のものです。
2013/11/04(月) 21:10:17.81ID:wVKdSea2F5連打してサーバー落として良いですか?
0791名前は開発中のものです。
2013/11/04(月) 21:17:09.79ID:WyeoCWwdそして無価値なものを宣伝するのは害悪行為
0792名前は開発中のものです。
2013/11/04(月) 21:52:51.37ID:wVKdSea2正直、初心者には向いてないサイト
見たら唯のコピペかと思った
後一個足りてないぞ→画像(ソース)+説明 じゃ駄目
足りてないモノ→興味を引く要素、実際に何が出来るか説明不足
最初から興味が有って、そのサイト見てても途中でやる気が無くなる
関数一覧を表示すのは良いがクリックでトップに戻る意味が分からん
関数にマウスを当てたらサンプルソースが表示される様にするか
読み込みが始まって、サンプルが表示される形式にした方が良い
アレじゃ唯の目次にしか成らない、別のページを作る必要が有る
0793名前は開発中のものです。
2013/11/04(月) 22:05:03.21ID:wVKdSea2webデザインや重要な企画を作る能力が足りてない
今までして来た事と違う事を、もっと勉強した方が良い
なんでもこなせるスーパーマンに成りたいんだったら
もっと頑張る必要が有る。が、本気でやる気なら応援するぞ
まずは、何が必要なのか調べる所からやり直す。そしたらスムーズに事が運んだり見えてくるものが有る
0794名前は開発中のものです。
2013/11/04(月) 22:20:59.28ID:6GaMPiKCそこから、要求される項目が決まる。
ちなみに、サイトを作って広告宣伝費としていくら入金されるの?
0795名前は開発中のものです。
2013/11/04(月) 22:29:20.67ID:WyeoCWwd龍神録の館はそれができてるから重宝されてるわけで
0796名前は開発中のものです。
2013/11/04(月) 22:31:43.30ID:84QWcKjq>>782のサイト見てからじゃあ何が出来るか?っていうと何も出来ないし
DXライブラリならDixqのサイトでも見ればいいし言語ならロベールとか猫わかとか見ればいい
0797名前は開発中のものです。
2013/11/04(月) 22:32:06.05ID:wVKdSea2サービスによるけど広告クリックは1〜2%
アフィリエイトは大体20%〜グライ
キチンと業者と契約を結べば別だけど、アクセス数や利用者数が膨大に必要
知識の浅い初心者が頻繁にプログラミング入門サイト作って失敗している
書籍やサイトで紹介されてる内容、程度なら半年持たない
ユーザーが必要としているのは一歩進んだ知識だから最低でも大規模プログラミング
できる程度の知識が必要。
0798名前は開発中のものです。
2013/11/04(月) 23:43:47.74ID:OotvFeysこれはもうシングルスレッドゆとり設計の限界なのかね
GPUに行列の計算させるのってDirectXの関数使えばいいの?
なんかCPUでやってる気がするわ
0799名前は開発中のものです。
2013/11/04(月) 23:53:06.95ID:Duwm9B/d0800名前は開発中のものです。
2013/11/05(火) 00:06:51.80ID:J83UpZs3横からだけど、確認を込めて一応掘り下げると…
・「nフレームのスパンで動作するとある処理Aを、毎フレーム n個作ると遅くなる」
→ 処理Aの開始から終了までのフレーム数と、1フレーム当たりの処理数 自体は普通特に関係無い訳で、
話の主題は単に 「1フレーム当たりの処理量が多くて、1フレームを通過するのに時間がかかる」 って話だと思う。
ならば単位当たりの処理を軽量化するように設計したらいいんじゃね、って話。
・「これはもうシングルスレッドゆとり設計の限界なのかね」
→ 上で書いた通り、あなたの 「その」 設計の限界だから見直すべき。
その上で、シンクロのステップも含めた上で、マルチスレッドの方が良いならそのように設計するべき。
ただしその場合、「はたしてマルチスレッドにした場合、シンクロのポイントも含めて考えた上で、1フレーム当たりに可能な処理量がどれほど増えるか」
は把握しておくべき。 その正解はあなたの実装による。
・「GPUに行列の計算させるのってDirectXの関数使えばいいの?」
→ ある意味 DirectX の関数と言えるけど、正確には GPU側で計算させるならシェーダの中の話。 DirectX で言うなら HLSL の中の関数の話。
で、GPU側で計算させたい場合、普通は CPUから引き渡した内容に対して、シェーダ内で表示物向けに計算させるだけなので、
その用途で良いならそうしたらいい。
・「なんかCPUでやってる気がするわ」
→ 気がするんじゃなくて、自分がCPU側で計算させて DirectX 関数に引き渡してるならそうだし、シェーダ内の関数でやってるなら GPU側。
気がするんじゃなくて、自分で明示的にわかってるはず。
0801名前は開発中のものです。
2013/11/05(火) 00:12:40.70ID:J83UpZs3>180フレーム寿命があるエフェクトを毎フレーム30個ぐらい作るとReleaseモードでもFPSが40ぐらいになるんですが
↑こういう、ふわっとした理解で何も考えずに、単に言葉だけ知ってるレベルでマルチスレッド化なんてしたら、
100% 正常に動作しないので、問題点の要点を勘違いしないで、ちゃんと整理する事。 自分が書いてる処理は具体的にどういう動作なのかを本当に理解すること。
終わり。
0802名前は開発中のものです。
2013/11/05(火) 00:19:12.85ID:K3Hz6QZHちゃんと設計してギリギリ60fps保てるレベルだな
オブジェクト生成毎にメモリをnewしてるとかだと間違いなく無理だが、
それ以前にエフェクトにこれほど大量のオブジェクトを作る設計が間違い
0803名前は開発中のものです。
2013/11/05(火) 00:57:01.93ID:J83UpZs3俺が書いてるオープンワールドのアクションゲーもどきだと、マップ中にある火山や温泉の間欠泉や、海辺の波と、あと
敵を殴った時に飛び出る★のようなエフェクト、必殺技的な物使うときの透過光や走行線なんかの内、
一番長くアニメーションさせてる物は 60fps 定速管理の場合 3.5秒ほどの間表示処理を行うから、期間で言えば 250フレームの間描画を繰り返す計算になるけど、
しかしそんな事自体は大した意味は無くて、本当のポイントはメインループ中の1回の処理で、どれだけの内容をこなさないといけないかって事。
その意味を踏まえて言うなら、一番込み入った場面では最大 150個ほどのエフェクトが同時に動作している事があるけど、
メインループから定速固定用の時間経過処理(fps管理用スキップ処理)をコメントアウトすると、大体 2400fps ぐらいの速度で動作している。
内容的に特にそれでも速いとは思わないが、要は、「どういう処理書いてるか、1ループ(フレーム)の間にどんな事してるか」 で結果なんて変わる訳で、
数字だけ見ても ふわっとした事しか言えないって話。 本当に終わり。
0804名前は開発中のものです。
2013/11/05(火) 07:22:11.85ID:+x+EoQCL0805名前は開発中のものです。
2013/11/05(火) 07:28:11.84ID:K3Hz6QZH大体の目安だからいいんじゃね
クロック数とかもマルチコア主流の今の時代じゃ意味ない数値だし
0806名前は開発中のものです。
2013/11/05(火) 07:39:09.41ID:D7RLQ/7t頂点操作してないから重いんだと思う
そう考えるとFF14のあのエフェクト量であの軽さはやばいな
0807名前は開発中のものです。
2013/11/05(火) 12:35:49.76ID:Y6UuuJq+コントロールを使おうと思ったらやっぱり自作するしかない?
それとも他のライブラリとか使った方がいい?
0808名前は開発中のものです。
2013/11/05(火) 13:01:44.40ID:ao+vnFi7慣れないとメッセージの調べかたに手間どうが
0809名前は開発中のものです。
2013/11/05(火) 13:08:49.28ID:CTkkt81/DXライブラリを使う以前に
C言語をちゃんと理解していれば
悩む必要もないと思うよ
ON/OFFのチェックを表現したいなら
まず、ONの画像とOFFの画像の2つを用意する
さらにどの条件の時にON/OFFなのかを組む
2種類しかないならbool型で、Trueとfalseでいいと思う
bool型がtrueなら、ONの画像を表示
falseなら、OFFの画像を表示するように組む
あとは、bool型をどうすればtrue/flaseにするのかの仕組むを組めば良い
ゲーム画面でマウスの左クリックでON/OFFにしたなら、
マウスの座標が、チェックボックスの座標内にあった時に、
左クリックをして、ONならOFFになる
OFFならONにするようにして表示画像も変えるようにする
0810名前は開発中のものです。
2013/11/05(火) 13:12:05.87ID:itfUHADsDirectXベースでテクスチャ貼った板ポリ並べて並行投影で表示する恰好のGUIライブラリをかなり前に作ってあって、
なんだかんだ改修しながらずっと使ってる。
普通のボタンと、チェックボックス的なトグルボタンと、テキストエディタと、リサイズ可能なウィンドウと、Excel風のグリッド表示するリストボックス
0811名前は開発中のものです。
2013/11/05(火) 13:22:31.45ID:CTkkt81/スクロールバーの座標にマウスを移動させた時に、
左クリック押しっぱなしの状態で、ドラッグ状態にして、
マウスを下に移動させれば下に移動、上に移動させれば上に移動
あと、SetDrawArea関数を使って
指定した座標範囲内だけに
スクロール内の内容を描画するようにして
スクロールバーのドラッグ&マウスの上下移動で
SetDrawArea関数内の領域に描画した全ての画像の座標を
y軸にプラスにしたりマイナスにすれば、
そのウィンドウ内だけで表示内容がスクロールされる
0812名前は開発中のものです。
2013/11/05(火) 13:34:30.35ID:RmjgnHAM0813807
2013/11/05(火) 13:34:48.29ID:Y6UuuJq+>>808
API大丈夫か?
ダイアログボックスだしてその中なら正常に表示できそうではあるが。
>>809
いや、作成方法は分かるんだ。
ただ、スクロールバーのつまみみたいなD&DとかTAB移動の実現とか
一つ一つGUIパーツを作ろうと思ったらコーディングが手間すぎる。
>>810
やっぱり自作ライブラリをつくるしかねーかなぁ。だりぃw
0814名前は開発中のものです。
2013/11/05(火) 13:35:10.56ID:RmjgnHAM0815名前は開発中のものです。
2013/11/05(火) 13:35:54.94ID:CTkkt81/メッセージウィンドウみたいなものです
ドラクエでメッセージを表示する時は、
続きのメッセージは、そのウィンドウ内でメッセージ内容が下にスクロールしますが
それを表現する時に使うのが、SetDrawArea関数です
詳しくはDXライブラリの公式サイトの
SetDrawArea関数の解説を読んでみてください
0816名前は開発中のものです。
2013/11/05(火) 15:50:34.81ID:wZ5UkH7I何故そんな非効率なことをするのでしょうか
0817名前は開発中のものです。
2013/11/05(火) 16:00:00.60ID:DHq7wQK70818名前は開発中のものです。
2013/11/05(火) 16:18:17.24ID:R05ELT5z0819名前は開発中のものです。
2013/11/05(火) 17:05:30.44ID:S58YQK+W自作する場合、言語の知識よりも細かい部分の動きに悩みそうな気がする。
何気なく使ってるGUIだけど、意外に理解してない部分って多いんだよな。
0820名前は開発中のものです。
2013/11/05(火) 17:14:13.68ID:CTkkt81/リファレンスは中級者向けなので
初心者が見た場合、一体、何のために使う関数なのかが解かりにくいと思います
なので、私はDXライブラリ関数リファレンスを
もっと分かり易く初心者でも理解できるような
DXライブラリ関数リファレンスを制作中です
http://c-games.main.jp/dxlif.html
公式サイトの解説の丸写しではなく
自分で検証して、もっと分かり易く噛み砕いて、
実行結果の画像もキャプチャー画像を紹介するように作ってるので
かなり時間が掛かっています
改めてDXライブラリ関数をイチから全てを検証していくと
なんて膨大な関数なんだろう…と、絶句していますw
0821名前は開発中のものです。
2013/11/05(火) 17:25:06.00ID:S58YQK+W「上書き」が何を指すかは分からんが、
ソースコード上では表示領域より大きめにセットしておいて、実際の描画時にライブラリ側で切り取るのが楽チンだと思う。
0822名前は開発中のものです。
2013/11/05(火) 17:35:28.02ID:iLOOpAeu広告ばっかりw
0823名前は開発中のものです。
2013/11/05(火) 17:35:48.41ID:wZ5UkH7I何でそんな無駄な事してるの?
しかも余計わかりにくくなってるし
時間の無駄だから止めた方が良い
0824名前は開発中のものです。
2013/11/05(火) 17:42:09.39ID:a385+tCj0825名前は開発中のものです。
2013/11/05(火) 17:51:59.04ID:zIwV/11Aこのトップ画面のさ、メインコンテンツ部分のお知らせとか更新情報って書いてあるのって
どうやってやるの?
鍵型っぽいやつ
0826名前は開発中のものです。
2013/11/05(火) 18:10:21.67ID:HZNT4GIsじゃあ、以下のを Dxライブラリを使って作って
3D空間に複数のモデルを配置してあって、その中の一つをマウスでクリックすると、
そのモデルが赤色に変色するプログラム。
0827名前は開発中のものです。
2013/11/05(火) 18:12:41.83ID:ycnlihTEリファレンスより動くゲームのサンプルコード載せて欲しいわ。
リュウジンロクとかコピペで使えたから便利だったんだよ。
0828名前は開発中のものです。
2013/11/05(火) 18:52:59.00ID:aHhWEzy00829名前は開発中のものです。
2013/11/05(火) 18:55:10.74ID:vtyuM1C3>「w」などを連呼するような低俗な輩の発言など目に入れないようにしている
>あと「こいつ」などの単語も同様の理由でNGワードにしている
とかなんとか言っておきながら
>なんて膨大な関数なんだろう…と、絶句していますw
と自らが設定したはずのNGワードを使うとかw
流石は他人から「こいつ」呼ばわりされるのが怖い怖いのバkazuki君だw
0830名前は開発中のものです。
2013/11/05(火) 19:05:50.92ID:aQwTFB2I他のライブラリだと引数の型しか書いてなかったりそもそもリファレンス自体ないのもある
ソース見ろやって事なんだろうけど…
0831名前は開発中のものです。
2013/11/05(火) 19:21:34.03ID:hCvpDVI/kazukiに反応する人もkazuki も知らんのか
0832名前は開発中のものです。
2013/11/05(火) 19:45:27.52ID:S58YQK+Wでもまあなんだかんだで最終的にはヘッダファイル見るようになるよなw
0833名前は開発中のものです。
2013/11/05(火) 19:55:25.90ID:K3Hz6QZH龍神録の館を抜きにしても、実装に専門知識が要らないからシューティングが一番簡単なのは事実だよ
逆に、他の動的ゲームを作るときにはシューティングを作るとき使った技術すべてを駆使することになる
0834名前は開発中のものです。
2013/11/05(火) 20:37:20.59ID:Kq66E5ow場合によるでしょ。
専門知識が何を指すかしらないけど。一番簡単ていうのは意味不明。
俺に言わせればじゃんけんゲームとか○×ゲームの方が簡単w
まあ、だれも遊んでくれないクソゲーでいいなら「一番でなくて」実装が楽て言うのなら100歩譲って同意する。
エースコンバットレベルになるとまったく同意できないが。
0835名前は開発中のものです。
2013/11/05(火) 20:41:01.91ID:K3Hz6QZH動的ゲームの中で、な
アスペじゃないんだからそれくらい察そうぜ
0836名前は開発中のものです。
2013/11/05(火) 20:42:38.59ID:Kq66E5owお前想像力ゼロで既成概念に縛られてるみたいだな。
まあいいわ。
0837名前は開発中のものです。
2013/11/05(火) 20:44:57.16ID:K3Hz6QZH0838名前は開発中のものです。
2013/11/05(火) 20:48:55.92ID:Kq66E5owいいと言ってるのに。
じゃあ、なぜ動的ゲームでシューティングが一番簡単なのかご説明願おうか?
一番ていうところが重要だからな。頑張ってくれ。
0839名前は開発中のものです。
2013/11/05(火) 20:51:34.53ID:K3Hz6QZHオブジェクトの生成、衝突判定、キャラの移動、シーン切り替え
これだけがあれば最低限ゲームとしての形にはできるからだよ
0840名前は開発中のものです。
2013/11/05(火) 20:52:25.40ID:aQwTFB2Iポンやブロック崩しの派生だしね
0841名前は開発中のものです。
2013/11/05(火) 20:53:06.02ID:Kq66E5owブロック崩しは動的ゲームに入らないのか?
0842名前は開発中のものです。
2013/11/05(火) 20:57:10.09ID:K3Hz6QZHブロック崩しは反射の計算にベクトル演算が要るだろ
ベクトル演算を用いなくても実装することはできるが、それににはどういう処理で誤魔化すかというジャンルの専門知識が要る
そして実装的には、シューティングのショットを反射するボールに変えただけに過ぎない
0843名前は開発中のものです。
2013/11/05(火) 20:59:09.87ID:Kq66E5owwww
マジ受けた。ベクトル演算なんかしなくても作れるよブロック崩しはw
お前ほんともういいや。
0844名前は開発中のものです。
2013/11/05(火) 20:59:20.18ID:xroRRHz30845名前は開発中のものです。
2013/11/05(火) 21:00:17.66ID:S58YQK+W>まあ、だれも遊んでくれないクソゲーでいいなら「一番でなくて」実装が楽て言うのなら100歩譲って同意する。
一番かどうかは別にしても、STGが楽ってのはまあそーゆーことよね。
0846名前は開発中のものです。
2013/11/05(火) 21:01:40.09ID:K3Hz6QZHまぁ馬鹿の相手しても無駄だからいいけど
>>844
自分で判断できないレベルなら、とりあえず矩形と円2つ実装すればいいんじゃないかな
見た目そのままの判定は、実用に足る実装をするのは難しいだろうし
0847名前は開発中のものです。
2013/11/05(火) 21:01:44.31ID:aQwTFB2Iまぁシステムはどれも似たようなもんだよねということで
ベクトルを使わないってしばりならインベーダーなんて直線にしか撃てんぞ
0848名前は開発中のものです。
2013/11/05(火) 21:02:55.74ID:S58YQK+Wゲームにもよるが、
小型の雑魚は矩形、大型のボスはある程度画像に沿った判定が良いと思う。
0849名前は開発中のものです。
2013/11/05(火) 21:03:31.94ID:Kq66E5owお前さ、ブロック崩しってどれくらい前からあるかしってる?
8bitのCPUでベクトル演算なんかしねーし。
する必要もないよ。
0850名前は開発中のものです。
2013/11/05(火) 21:06:02.75ID:S58YQK+W上方向にまっすぐ弾を出すのも同じくらいベクトルなんじゃね?w
0851名前は開発中のものです。
2013/11/05(火) 21:07:25.74ID:K3Hz6QZHそういう作品は誤魔化しの手法使ってるって最初に言ってるじゃん
そういう手法を使う作品は、作るにあたってその知識が要るから一番簡単とは言えないんだよ
また、ステージ作る場合にも、簡易エディタ等を作らないとなると大量にブロック配置をコードに直書きしなけりゃいけなくなる
そこら辺はわかってるか?
0852名前は開発中のものです。
2013/11/05(火) 21:08:08.33ID:NVLUESBq0853名前は開発中のものです。
2013/11/05(火) 21:09:06.12ID:Kq66E5oww
ああ、そういう意味だったの?ごめんごめんw
それで専門知識って。
0854名前は開発中のものです。
2013/11/05(火) 21:12:09.01ID:K3Hz6QZH0855名前は開発中のものです。
2013/11/05(火) 21:16:59.50ID:itfUHADs0856名前は開発中のものです。
2013/11/05(火) 21:18:03.04ID:iHrYn65Aその手のはSELENEにあったな
永いこと止まってるようだが
0857名前は開発中のものです。
2013/11/05(火) 21:18:36.68ID:C7EI6CbS確かあいつエースコンバット信者だったろ
0858名前は開発中のものです。
2013/11/05(火) 21:22:16.31ID:Kq66E5owID変えご苦労様w
0859名前は開発中のものです。
2013/11/05(火) 21:26:02.81ID:C7EI6CbS0860名前は開発中のものです。
2013/11/05(火) 21:31:31.39ID:itfUHADs例えば 「シューティング」 なんて曖昧な言い方せずに、
・自機1つ、弾1つ、敵1つ、自機はユーザからの入力で2方向に移動、弾は一定方向に移動、敵は自分のロジックで好きに移動
・敵が自機に触れると負け、弾が敵に触れると勝ち
くらいのド簡素なインベーダーみたいな物なら、その後のアクションするゲームのひな形を色々と含んでいるよ、
例えば座標変えながら絵を表示、座標の一致(交差)判定 など etc… みたいな話を書いてればそこで終わったのではと。
あとテーブルテニスの反射の計算とか、別に専門知識でもなんでもないのでって言うか、
単にやりたい事を観察した上で、どうロジックとして書き表すかって言う基本的なプログラミングのあり方の上にある程度の物だから、って思うが。
0861名前は開発中のものです。
2013/11/05(火) 21:35:31.33ID:CTkkt81/だって角度と当たる速度で
反射する覚悟が微妙に変わるじゃないですか
プレイヤーが操作する「棒」みたいな奴に「弾」が当たる時、
どの角度で、どの速度で当たるかで
反射角度もスピードも微妙に変化する
0862名前は開発中のものです。
2013/11/05(火) 21:39:37.25ID:itfUHADsつまり、角度と速度を意識してマジメに計算するような前提のブロック崩しを言ってるなら、意外と難しいのかもしれないけど、って事。
とにかく、前提を曖昧にして話すと話がムダにこじれるよ。 もしも自分が本当に意味をわかっているなら、省略しないで話すこと。
特に、省略するとムダな混乱起きそうだと気を回せるならば。
0863名前は開発中のものです。
2013/11/05(火) 21:40:45.85ID:CTkkt81/シューティングがあまり好きじゃない私からすれば
ゲームが完成しても、ちょっとやりごたえがない
俺はRPG好きだから
どうせ苦労してゲーム作るなら
C言語/C++でRPGを作ってみたい
で、RPGは難しいかと問われるなら
確かに他のゲームに比べれば、多少は大変かも知れません
ですが、RPGの基礎の部分(戦闘、買い物、装備、会話、レベルアップ、お金などなど)を
構築してしまえば、あとは楽だと思います
物語のほとんどは、そのRPGの基礎を使いまわせば
いくらでも長い物語が作れます
0864名前は開発中のものです。
2013/11/05(火) 21:41:24.29ID:C7EI6CbS0865名前は開発中のものです。
2013/11/05(火) 21:41:52.85ID:+x+EoQCL確かに間違いではないが、因縁つけてるレベルの話。それと同じ。
0866名前は開発中のものです。
2013/11/05(火) 21:44:19.41ID:CTkkt81/会話、移動、買い物、道具、装備、戦闘、レベルアップなど
考えられるだけの、RPG要素だけを構築した
オリジナル関数を作成しておきます
あとは、それらのオリジナル関数を使う用途の場面で
呼び出せばいいだけです
0867名前は開発中のものです。
2013/11/05(火) 21:45:48.88ID:itfUHADs急に話の軸がブレたけど、まぁ、好きにしたらいいじゃね。
>>865
言いたい事はわかるけど、多分そこまでナチュラルな日常会話の例えはちょっと合わないと思うww
0868名前は開発中のものです。
2013/11/05(火) 21:46:33.69ID:+x+EoQCL意外と難しいSTGを作るのならそうでないブロック崩しより難しいかもしれないが、
そうでないSTGならそうでないブロック崩しよりは楽だと思う。
極端な話、動かない敵キャラに、カーソル(照準器)を合わせてボタン押したら敵が消える、だけでもSTGだ。
0869名前は開発中のものです。
2013/11/05(火) 21:50:49.17ID:itfUHADsそうそうそう、そういう事。 そういう 「こういう場合」 を具体的に書くようにすると話が混乱しないでいいよな。
0870名前は開発中のものです。
2013/11/05(火) 21:53:00.12ID:Kq66E5ow>>860 の人も行ってるけど定義をはっきりしろよw
バラバラのもの想像して話してたらかみ合うわけないわ。
>>856
Seleneなついな。作者さんにIRCでよく質問したよ。
今、HDDを探したら最後に取っておいたSeleneのソースがどっか消えた。
軽く鬱。
0871名前は開発中のものです。
2013/11/05(火) 21:54:42.62ID:Kq66E5ow0872名前は開発中のものです。
2013/11/05(火) 22:02:24.23ID:CTkkt81/反射する方向を計算して、
その方向に真っ直ぐ飛んでいく必要があります
x軸とy軸を同じ比率で操作しないと
真っ直ぐには飛んで行ってくれない
その角度で壁に当たれば、
反射もその角度の真逆に飛んで行く必要があり
上のブロックに当たると、少し失速して
また、その速度によって、ブロックから跳ね返る角度を計算する必要がある
ブロック崩しがゲーム開発の参考書で取り上げられる理由が
少し解かりますね
意外とロジックが難しいですからね
あれは、数学好きな人が作るゲームだと思うね
0873名前は開発中のものです。
2013/11/05(火) 22:20:55.06ID:CTkkt81/断然、RPGをお勧めしたい
RPGを突き詰めていくと
ただの「変数で足し算や引き算をするだけのゲーム」です
宝箱から100G手に入れたなら
お金に割り当てた配列変数に+100するだけです
店で10Gを薬草を購入したなら
お金に割り当てた配列変数に-10するだけです
戦闘シーンのダメージ計算も
HPに割り当てた配列変数に対して
敵の防御力の値に、主人公の攻撃力の値を引き算して、
あと何かのプラスアルファを加えて
ダメージ計算をして、その値で引き算すればいい
敵を倒して戦闘が終了したら経験値の配列変数の値を
その敵の経験値ぶんだけ足し算して、ある値に達すれば、レベルアップ!
回復アイテムを使ったら、その値だけHPの変数にプラスさせる
回復魔法なら、MPの変数のマイナスも付け加える
こんな足し算と引き算だけをするゲームのどこが難しいのでしょうかねw
0874名前は開発中のものです。
2013/11/05(火) 22:25:03.62ID:HC9c4XUl0875名前は開発中のものです。
2013/11/05(火) 22:29:37.44ID:5wW1CrKZ現実にそうなの?
0876名前は開発中のものです。
2013/11/05(火) 22:32:47.87ID:CTkkt81/そうかな…
詳しいアルゴリズムまでは考えてないけど
「どうやればブロック崩しが作れるのか?」を少し考えるだけで、
「お?意外と難しいな…」というのが俺なりの感想です
ま、そのうち、ブロック崩し開発に本気で挑戦してみるつもりですが、
その前に、腕試しとして、テトリスを解いてみたいですね
今は「どうすればテトリスが作れるのか?」を
少しずつ考えているところです
俺はテトリスも中々、よく考えられたゲームだと思います
0877名前は開発中のものです。
2013/11/05(火) 22:33:19.79ID:HC9c4XUl株は上がるか下がるかの二択だけだから、かんたんだよね。
現実にそうなの?
0878名前は開発中のものです。
2013/11/05(火) 22:34:10.93ID:aQwTFB2IRPGはシューティングやアクションと比べてモチベが続きにくいんよなー
アドベンチャーとかノベルもそうだけどある程度エンジンを作った上で素材を構築していかないとだめだしの
0879名前は開発中のものです。
2013/11/05(火) 22:35:50.84ID:HC9c4XUl順番がどー考えても逆だろあほか
0880名前は開発中のものです。
2013/11/05(火) 22:37:19.30ID:CTkkt81/1.ブロックを下に落とす
2.ジョイパッドの左右キーで回転
3.床まで落ちたら、落下を停止
4.横一列は全て揃ったら、その列だけ消す
5.それとともに点数が加算
まで、頭の中で組みました
今は、どうやってランダムでブロックを登場させるのか?
で、少し頭を悩ませているところです
ランダム計算って意外と難しいよね…
0881名前は開発中のものです。
2013/11/05(火) 22:38:14.28ID:3ZEesbsQ少なくとも>>873は違うよな
変数で足し算や引き算をするだけのゲームなら、電卓もRPGになるわ
0882名前は開発中のものです。
2013/11/05(火) 22:41:04.71ID:aQwTFB2I>>881 素材的な意味でいうとウィザードリィ?
ほぼグラフィックいらないからシステムの構築には楽なモチーフだよね
計算式もTRPGゆずりな1d6とかだし
0883名前は開発中のものです。
2013/11/05(火) 22:41:43.70ID:CTkkt81/いや、テトリスの方がブロック崩しよりも簡単そうな気がします
まあ、深いところまで突き詰めて考えないとわかんないけど
多分、テトリスの方が楽のような気がします
0884名前は開発中のものです。
2013/11/05(火) 22:57:30.97ID:itfUHADsいったいどんな想像してるんだろうかとふと思った。
0885名前は開発中のものです。
2013/11/05(火) 22:57:36.51ID:+x+EoQCLそれでも完成まで一週間くらいかかったわけで、数年前に3行テトリスを知った時には戦慄したわ……。
0886名前は開発中のものです。
2013/11/05(火) 23:01:07.50ID:CTkkt81/うん、だからRPGは電卓なんだよw
たくさんの電卓を用意して
足したり引いたりしているだけです
まあ、物語の部分を考えるのは大変だけど
適当なクエストを用意すりゃいいでしょう
スライムを100匹討伐したらクエスト達成!
そして報酬をゲット!
そんな簡単なクエストをたくさん作ってRPGを作る
0887名前は開発中のものです。
2013/11/05(火) 23:02:20.38ID:itfUHADs0888名前は開発中のものです。
2013/11/05(火) 23:05:01.28ID:PClnd3060889名前は開発中のものです。
2013/11/05(火) 23:06:55.80ID:nxfMyBJ10890名前は開発中のものです。
2013/11/05(火) 23:08:59.27ID:HC9c4XUl1.画面の端で反射(移動方向の符号を反転)する球を作る
2.ブロックとバーを表示させる
2.バーを左右に動かせるようにする
4.球をバーから発射させられるようにする
5.ブロックとバーに球の当たり判定をつける
どこがテトリスより難しいかわからない
0891名前は開発中のものです。
2013/11/05(火) 23:10:56.21ID:Kq66E5ow別にいんじゃねーの。作れるならw
>>885
7行ならしってる。500バイト位のスクリプトのやつ
>>887
そうだよ。1400バイトくらいで1行だと言いはっていた人もいたわ。
>>888
雑談もたまにわいいじゃん。
まあ、そろそろ自治っぽいのがスレチとか言いそうな雰囲気ではあるなw
0892名前は開発中のものです。
2013/11/05(火) 23:11:19.98ID:S58YQK+Wその中で難易度の差はあるだろうけど、あくまでそのレベルというか。
0893名前は開発中のものです。
2013/11/05(火) 23:13:39.06ID:CTkkt81/■←こういう四角のボックスを一つ用意するだけです
これを
■
■
■
■
■
■■
■■
■■
■■■
■
こんな風に色々組み合わせてブロックを作って
色は、プログラム側で赤にしたり青にしたりします
ちなみに画像ファイルは使いません
DXライブラリには、DrawBox関数があるので、それでブロックを作ります
0894名前は開発中のものです。
2013/11/05(火) 23:21:58.61ID:iBycBYPW床にもぐろうとすると床の前に表示されてしまいます。
一時的に表示順を変えるのは難しいので、画像の一部だけ非表示にすることってできないでしょうか
0895名前は開発中のものです。
2013/11/05(火) 23:26:58.02ID:HC9c4XUlDrawRectGraphで表示したいとこだけ描画しろ
0896名前は開発中のものです。
2013/11/05(火) 23:27:35.33ID:Kq66E5owあとスカルプトに3d-coat V4 と MudBox2009
テクスチャはSubstanceとフォトショ。
Visualstudioは未だに2010のまま。
ゲームエンジンはTorque3Dを今は使ってる。
Torqueはレベルエディタがなかなかいいよ。オープンソースになったから使ってみれば?
https://github.com/GarageGames/Torque3D
俺は製品版Ver1.2の頃買ったけどなw
0897名前は開発中のものです。
2013/11/05(火) 23:27:42.07ID:D5jPxscB0898名前は開発中のものです。
2013/11/05(火) 23:28:06.11ID:Kq66E5ow0899名前は開発中のものです。
2013/11/05(火) 23:28:15.72ID:CTkkt81/その通りにプログラムを組むのはあまり好きではありません
プログラミングの楽しみ方は、
C言語/C++の命令などの基礎だけを参考書を読むなりして学んで
ゲーム自体は、自分でイチから考えて組んで
作り上げていくから面白いのです
DXライブラリは直観的にゲームプログラミングが出来るので
俺からすれば、DXライブラリは最高のおもちゃですね
これを使えば、どんなゲームも簡単に作れちゃうじゃない!と…。
DXライブラリの作者さんアリガトー!w
通信系の関数も用意されていたので
いつかオンラインゲームにも挑戦してみたいですね
0900名前は開発中のものです。
2013/11/05(火) 23:31:49.87ID:wZ5UkH7Iあと回転するときってどうやって回転元から回転先までクォータニオンで衝突判定を計算するんですか
0901名前は開発中のものです。
2013/11/05(火) 23:35:19.35ID:iBycBYPWやってみます。ありがとうー
0902名前は開発中のものです。
2013/11/05(火) 23:38:10.50ID:HC9c4XUl3Dについては知らんが、本家は回転していないんだなw
基準のブロックを中心に組み替えられてる
なので狭いとこで回転できる(ように見える)
0903名前は開発中のものです。
2013/11/05(火) 23:41:36.82ID:CTkkt81/他の人はどうやってテトリスを作り上げるのかは知りませんが、
俺が考えるテトリスのブロックの回転は、
回転であって回転ではありません
左右キーで、1つのブロックの座標だけを変えるのです
■■■
■
例えば、こんなブロックがあったとして、
右回転させる時は、真ん中のブロックを原点として
回りのブロックだけをこんな風に座標を変えます
■
■■
■
この時に、回転する前の一番下のブロックの一つ下の座標に
障害物(床もしくは積み上げたブロック)があった場合は、
回転を受け付けないようにする
0904名前は開発中のものです。
2013/11/05(火) 23:47:05.75ID:CTkkt81/■
ああ、そうか…。
この場合は一つ下に障害物があっても回転してもいいのかw
まあ、いいや、テトリス開発は面白そうなので
後の楽しみに取っておくことにしよう
とりあえず、今は、タイトル画面が完成したら
スロットゲームを作ろうと考えています
ちなみにスロットゲームは完全に頭の中では出来上がっています
今は、どうやって解説しようかな?と頭を悩ませているところですね
0905名前は開発中のものです。
2013/11/05(火) 23:52:48.60ID:4ngKs0L6>小型の雑魚は矩形ワロタwww
ボム兵とかですか?
とりあえず参考になりそうです、大ボスはそのキャラが占める
形でやったほうがいいんですねー、参考になりました。
0906名前は開発中のものです。
2013/11/05(火) 23:54:22.08ID:Kq66E5ow>>903
クォータニオンで辺り判定???なんでそんな面倒なことするんだw
そんなテトリス作りたいなら、Box2Dあたりの物理エンジンンでも使った方が簡単だよ。
当たり判定も物理エンジンがやってくれる。
なんか やっぱり 個々の想像しているゲームが ばっらばっらだな。
俺が想像していた簡単にできるテトリスはこちら。
簡単にできるテトリスのソース
https://github.com/DQNEO/CppTetris
サイトで解説が欲しければ上のソースとは違うがほれ
http://1st.geocities.jp/shift486909/tetlec/tetlec_menu.html
0907名前は開発中のものです。
2013/11/05(火) 23:55:37.74ID:itfUHADs全然関係ないけど、Torque3D ってオープンソース化されてたのか
ググってみたら去年発表されてたとか今知ったww 既存のゲームエンジンだと、俺 OGREなら触った事あるな。
0908名前は開発中のものです。
2013/11/05(火) 23:56:56.03ID:ChqJgt+xテトリスソース
0909名前は開発中のものです。
2013/11/05(火) 23:56:59.25ID:CTkkt81/例えば1000ミリ秒(1秒)間隔で1マスずつy軸の座標をプラスにするとして、
1000ミリ秒間だけ、左右キーで回転を受け付けるようにする
1000ミリ秒経過すると、1マス下に落下させますが、
その下が障害物(床もしくは積み上げたブロック)があった場合は、
もうそのブロックについては、キー入力を受け付けないようにして、次のブロックが登場し
そのブロックに対してだけ、キー操作を受け付けるようにする
0910名前は開発中のものです。
2013/11/05(火) 23:59:38.77ID:CTkkt81/そんな誰かが作った答えを見ても何にも面白くない
自分でイチから考えてプログラムを組み上げるから面白いのです
というわけで、今日はもうこれぐらいにしよう
ではまた。
0911名前は開発中のものです。
2013/11/05(火) 23:59:54.09ID:Kq66E5owそう、オープンソースになったのよ。
ほぼ、製品版と変わらんよ。レベルエディタから何から全部ついてる。バージョンも上がってるしな。
製品版買った俺はいったいって状態だけどw
って誤爆に触らないでくれ恥ずかしい、、、
0912名前は開発中のものです。
2013/11/06(水) 00:13:21.99ID:rRVDMymq■
■■■
■■■■■
ああ、なるほど…。
よく考えてみたら、すでにこのようにブロックが積み上がっていた場合は、
一番下まできたら、回転は出来ないようにしないといけないのか…。
ということは、落下する4つのブロックは、
ブロックに隣接していない方向全てに辺り判定を付けておく必要があるわけですね
やっぱ、テトリスは奥の深い中々楽しめそうなゲーム開発ですねw
0913名前は開発中のものです。
2013/11/06(水) 00:24:14.47ID:VgYVs7910914名前は開発中のものです。
2013/11/06(水) 00:26:22.08ID:j7fSIGQa0915名前は開発中のものです。
2013/11/06(水) 00:36:37.04ID:ZlOOsrhY0916名前は開発中のものです。
2013/11/06(水) 00:39:09.78ID:rRVDMymqむしろ面白いと思いますけどね
リアルでするなら
仲間内で集まって1つゲーム開発に取り掛かり
色々と議論しているようなものですよ
「ここをこうすればいいんじゃない?」
「でも、それだとこういう問題が出てくるね」
「じゃあ、こうしてみれば…」
というような。
俺は基本的にこうやって色々考えたりすることが好きなんだ
あと、マニュアル作りも好きですね
だから解説サイトを運営しているのです
あれも趣味の一貫です
0917名前は開発中のものです。
2013/11/06(水) 00:45:12.32ID:IdCIsCiu0918名前は開発中のものです。
2013/11/06(水) 01:23:27.04ID:j7fSIGQa俺らは仲間じゃねーし、考え事なら一人で黙ってしとけよアスペ
0919名前は開発中のものです。
2013/11/06(水) 03:17:38.81ID:d7Oa0V/H0920名前は開発中のものです。
2013/11/06(水) 03:56:56.10ID:wwtwxzaF0921名前は開発中のものです。
2013/11/06(水) 04:02:57.74ID:mgk0Hco90922名前は開発中のものです。
2013/11/06(水) 04:06:34.08ID:3Oy8pvkN0923名前は開発中のものです。
2013/11/06(水) 04:16:33.27ID:j7fSIGQaいつもの荒らし降臨
0924名前は開発中のものです。
2013/11/06(水) 05:42:52.49ID:ycxBLT+3>>798
DXlibから初めてC言語触った今も初心者のゴミだが
俺も昔そんな感じで試行錯誤してて
色々無駄な組み方しまくってたから毎フレーム3000個程度しかビルボード描画出来なかったけど
数ヵ月掛けて情報集めながら試行錯誤したら今はGPUも使いつつ3〜4万枚程描画出来てる
シングルスレッドでCPUがボトルネックだから最適化の余地はいっぱいあるし、
マルチスレッド化とかの奥の手だってあるからまだまだ増やせると思う
CPUのみでもi5で1.5万ぐらいは描画出来るようになったと思うから
2chじゃ叩かれまくるだろうが頑張れ
叩かれながらでも着実に知識をつけていけばいいんだよ
参考になること言ってくれる優しい人もたまにはいるし
長文すまん
kazuki ←絡み避け用ワード
0925名前は開発中のものです。
2013/11/06(水) 07:14:30.39ID:wXRK0e6Wそれ見てみるといいよ
DxLibじゃないけど作り方の参考にはなる
0926名前は開発中のものです。
2013/11/06(水) 07:29:52.10ID:uoeSwhSmkazukiはこのスレの風物詩
アスペとか言っちゃうオマエの方がよっぽど荒らしっぽい
0927名前は開発中のものです。
2013/11/06(水) 07:40:41.92ID:xcreF8Oi0928名前は開発中のものです。
2013/11/06(水) 07:47:48.57ID:j7fSIGQaバレすぎなのが不思議なのか、2ちゃん運営が俺を潰そうとしてるとか電波飛ばしてたこともあったな
0929名前は開発中のものです。
2013/11/06(水) 07:59:17.13ID:3Oy8pvkN今までの逐一BGM削除してた作業とあのロード時間の長さは何だったのだろうか
0930名前は開発中のものです。
2013/11/06(水) 08:05:54.83ID:j7fSIGQa0931名前は開発中のものです。
2013/11/06(水) 08:58:06.58ID:GJzKePIq俺もときどき見逃してたか忘れたかで無駄に頭を悩ませる事があるw
0932名前は開発中のものです。
2013/11/06(水) 09:14:07.05ID:XkZRZnJb遅レスだけど、シューティングゲームは接触判定と移動さえ出来れば作れるから
0933名前は開発中のものです。
2013/11/06(水) 09:16:29.88ID:XkZRZnJb前質問した時xaudio使って自分で音波弄らないと無理みたいなこと言われたんだけど
みんなそんなことやってるの?
0934名前は開発中のものです。
2013/11/06(水) 09:17:01.35ID:KjDcr8nK0935名前は開発中のものです。
2013/11/06(水) 09:17:55.15ID:3Oy8pvkN今まで低スペックノ−トで弾幕シューティング開発してた癖で
それなりのスペックになった今でもちょっと気になる
そこら辺はオプションからユーザーに選ばせるっていう手もあるけど
0936名前は開発中のものです。
2013/11/06(水) 09:19:07.77ID:XkZRZnJbステレオとかしたくない?
サラウンドか。
0937名前は開発中のものです。
2013/11/06(水) 09:36:01.89ID:j7fSIGQa複数の音楽を重ねて鳴らすのでもなけりゃ再生のコストは無視していいレベル
0938名前は開発中のものです。
2013/11/06(水) 09:46:31.69ID:+dHTtgui0939名前は開発中のものです。
2013/11/06(水) 10:19:47.72ID:HCSgajgZ0940名前は開発中のものです。
2013/11/06(水) 10:25:50.49ID:vBtBCg2nただそれでも音のソース単位でそれを行う必要あるけど
0941名前は開発中のものです。
2013/11/06(水) 12:39:25.66ID:wprXC0Viお前は優しすぎるor真面目すぎる
連鎖あぼーんするのが惜しくてNG使えなったのは初めての経験だ
0942名前は開発中のものです。
2013/11/06(水) 12:44:09.78ID:KH/QEx1w個人的には「パラメータ」というフラッシュ作品だとおもう
0943名前は開発中のものです。
2013/11/06(水) 13:46:35.10ID:gZ2HDb8A0944名前は開発中のものです。
2013/11/06(水) 14:24:57.73ID:8D2oMpsQ0945名前は開発中のものです。
2013/11/06(水) 15:57:34.69ID:+G+b4QfM本人乙
0946名前は開発中のものです。
2013/11/06(水) 16:17:23.09ID:IWjkf0Gl0947名前は開発中のものです。
2013/11/06(水) 17:52:39.43ID:+G+b4QfMこういう、昔からkazukiにしつこく粘着している上から目線いるよな。
どんだけすごいゲーム作ったか知らんけど。
お前の方がよっぽど荒らしだよ。
>927の人に同意だわ
0948名前は開発中のものです。
2013/11/06(水) 18:00:57.44ID:hRzs1/7g誰もそいつの相手していないのが証明してるだろ。
さっさとNGしとけ
0949名前は開発中のものです。
2013/11/06(水) 18:22:57.31ID:F40l41d0マリオジャンプの話しようぜ
0950名前は開発中のものです。
2013/11/06(水) 18:28:18.55ID:vpr+Z/N+0951名前は開発中のものです。
2013/11/06(水) 18:38:19.73ID:a+hM6C2jそろそろ流れをスレタイにもどそうか
0952名前は開発中のものです。
2013/11/06(水) 19:12:51.61ID:rz3bRDZQ0953名前は開発中のものです。
2013/11/06(水) 19:29:36.25ID:Prx9M5zu0954名前は開発中のものです。
2013/11/06(水) 19:53:22.95ID:Rikqp2C6こんな旬を過ぎた単語使う奴あまり居ないからほぼ同一人物なんだろう。
この板、過疎ってるからわかりやすい。
0955名前は開発中のものです。
2013/11/06(水) 23:55:53.80ID:/+DqEH7u0956名前は開発中のものです。
2013/11/07(木) 00:38:41.19ID:o+GswMQvhttp://toro.2ch.net/test/read.cgi/gamedev/1361004297/297-303
↑で彼は自演バレを裏IDの見れる2ch運営の仕業と断定している。彼はアスペルガーだけでなく糖質も併発してるようだ
kazukiによれば2ch工作員が運営してるらしい彼の悪行まとめ
http://kazuki.yu.to/
http://pona.m-bird.org/
「STGは簡単」に反論したのはSTG制作で過去に挫折したからだろうか?
http://kazuki.yu.to/stg_1.html
これらを見れば、kazukiが擁護されるわけがないとわかるはず
つい最近までkazukiのヲチスレがあったんだが、1000行って落ちてしまった
だから最近はヲチャがkazuki降臨の現場に出てきてるんだろう
以上kazukiまとめ、おわり
0957名前は開発中のものです。
2013/11/07(木) 00:43:46.20ID:VG3ui28W0958名前は開発中のものです。
2013/11/07(木) 00:54:09.83ID:VG3ui28W必死すぎて痛いわ。お前は何と戦ってるんだ?
争いはのカンガルーのAA貼ってやろうか?w
0959名前は開発中のものです。
2013/11/07(木) 00:58:16.62ID:o+GswMQv別に私はkazukiと戦ってるつもりはありませんよ
0960名前は開発中のものです。
2013/11/07(木) 00:59:47.82ID:VG3ui28Wお前か昨日あたりから湧いてる痛いやつはw
0961名前は開発中のものです。
2013/11/07(木) 01:04:57.74ID:OGhx7Dqiまさに「争いは同じレベルの者同士でしか発生しない」(笑
0962名前は開発中のものです。
2013/11/07(木) 01:07:49.18ID:MHx3qQss0963名前は開発中のものです。
2013/11/07(木) 01:10:55.17ID:VG3ui28Wそのkazukiくんとアンチkazukiくんだけにこのスレ乗っ取られてるやんw
0964名前は開発中のものです。
2013/11/07(木) 01:13:10.78ID:H9smasIb0965名前は開発中のものです。
2013/11/07(木) 01:16:58.46ID:VG3ui28W831 名前:名前は開発中のものです。[sage] 投稿日:2013/11/05(火) 19:21:34.03 ID:hCvpDVI/
2chの常識
kazukiに反応する人もkazuki も知らんのか
0966名前は開発中のものです。
2013/11/07(木) 01:28:13.38ID:OGhx7Dqiあちこちに降臨してるから知ってる人は多いと思われ
0967名前は開発中のものです。
2013/11/07(木) 01:38:00.01ID:vzDQ4hZI0968名前は開発中のものです。
2013/11/07(木) 02:49:28.52ID:NYqz5fdKこいつは自分から悪目立ししようとしてるんだから
粘着されても仕方ない
0969名前は開発中のものです。
2013/11/07(木) 03:21:40.38ID:u1EHcTYx結局、執着だろ まさにキモヲタ
0970名前は開発中のものです。
2013/11/07(木) 03:32:28.81ID:VP8tfMJW「荒らしに反応するのも荒らし」
0971名前は開発中のものです。
2013/11/07(木) 03:47:02.41ID:o+GswMQv無視しにくい
0972名前は開発中のものです。
2013/11/07(木) 10:09:02.06ID:zgY9Plys0973名前は開発中のものです。
2013/11/07(木) 10:10:14.96ID:8bvZLUmY0974名前は開発中のものです。
2013/11/07(木) 10:38:37.34ID:6fQhAx27みんながkazukiを知ってるなんて言う認識がおかしい。ヲチしてるやつだけだろそんなの
俺はヤツがこの板に3Dなんとかをつくるとかスレ建てた頃からしってっけど
ヤツには関心がないからなんとも思わな
ていうか、必死に戦っているところ悪いが、そろそろDXライブラリの話をしたらとうだ?
0975名前は開発中のものです。
2013/11/07(木) 10:43:53.17ID:5VNC/IYi0976名前は開発中のものです。
2013/11/07(木) 12:03:09.55ID:qXzfRGmE0977名前は開発中のものです。
2013/11/07(木) 12:13:41.80ID:6fQhAx27うざいから消えてね
0978名前は開発中のものです。
2013/11/07(木) 12:30:16.11ID:8XyinsV70979名前は開発中のものです。
2013/11/07(木) 12:43:22.93ID:qXzfRGmEDXライブラリ 総合スレッド その17
http://toro.2ch.net/test/read.cgi/gamedev/1383795645/
0980名前は開発中のものです。
2013/11/07(木) 12:52:36.00ID:mqRxZiDh人が集まる場所でその一角だけヒートアップしてたらウザいんだよ
>979
余計な一言のせいで乙の代わりに、”お前が言うな”と言いたくなった
0981名前は開発中のものです。
2013/11/07(木) 12:58:02.00ID:xdGxMciN0982名前は開発中のものです。
2013/11/07(木) 13:15:25.17ID:qXzfRGmE次スレにはこの流れを引きずらないで行きまっしょいな意気込みで
こっちでヒートアップしないようにするには、奴関連の隔離スレが復活すればいいのかね
0983名前は開発中のものです。
2013/11/07(木) 13:20:55.38ID:qXzfRGmEコイツもkazukiだったのか
0984名前は開発中のものです。
2013/11/07(木) 13:32:30.29ID:n+7nnTez0985名前は開発中のものです。
2013/11/07(木) 13:36:34.12ID:kQlvEK7dまともにDxLibのレスだけしてれば全てうまくいくよ^^
0986名前は開発中のものです。
2013/11/07(木) 14:36:38.55ID:DCtZj/a5ちょうどAPIのDrawTextのような。
0987名前は開発中のものです。
2013/11/07(木) 15:52:50.75ID:5VNC/IYiそれむしろAPIのDrawTextじゃダメなのか
0988名前は開発中のものです。
2013/11/07(木) 16:02:38.94ID:aBvhzpR+0989名前は開発中のものです。
2013/11/07(木) 16:09:35.89ID:DCtZj/a5やっぱり相性が悪いね。点滅してうまく描画できない。
0990986
2013/11/07(木) 16:44:37.39ID:DCtZj/a5非公開関数で文字入力関数に分類されてたから気付かんかった。
スレ汚し失礼。
0991名前は開発中のものです。
2013/11/07(木) 18:51:12.59ID:5VNC/IYiそれ相性とかじゃなくて、もしかしてDirectXの「描画先の」DC使って書こうとしてるんじゃ
もしそうなら当たり前
0992986
2013/11/07(木) 19:54:54.88ID:DCtZj/a5バックバッファのDC取得とかできるの?
0993名前は開発中のものです。
2013/11/07(木) 20:06:03.40ID:5VNC/IYiバックバッファのDCと言うか、普通はRenderTardgetを別に作成して、そこにDirectXの出力書き込ませた後、
文字とか書き込んで、それを出力とかするかな
0994名前は開発中のものです。
2013/11/07(木) 22:59:47.12ID:X3XjhEbuビジュアルスタジオ2010使ってて、画像の読み込みとかはdxlibの関数使ってる
0995名前は開発中のものです。
2013/11/07(木) 23:18:38.25ID:jl4/n3iX0996名前は開発中のものです。
2013/11/07(木) 23:38:08.43ID:fpcjmWcMヘッダーファイル
リソースファイル
外部依存関係
って並んでるところのリソースファイルに追加すればいいのか?
簡単だな、なんでみんなやらないんだ
0997名前は開発中のものです。
2013/11/07(木) 23:39:51.39ID:VP8tfMJW0998名前は開発中のものです。
2013/11/07(木) 23:41:27.89ID:qXzfRGmE0999名前は開発中のものです。
2013/11/07(木) 23:43:02.88ID:11Rk66jP細かいアップデートはめんどくさいかもしれないけど
dxlibについてるアーカイブより
「プレイヤーに見られたくないファイルを隠蔽する」
って目的にあってんじゃない?
1000名前は開発中のものです。
2013/11/07(木) 23:48:27.48ID:qXzfRGmE10011001
Over 1000Threadもう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。