2ちゃんねる ★スマホ版★ ■掲示板に戻る■ 全部 1- 最新50  

■ このスレッドは過去ログ倉庫に格納されています

DXライブラリ 総合スレッド その16

1 :名前は開発中のものです。:2013/06/30(日) 23:57:05.06 ID:j62MvD3e
Cを習得した程度のスキルでも、ゲームのグラフィックを比較的容易に描画する事のできる、
「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/

2 :名前は開発中のものです。:2013/06/30(日) 23:57:43.41 ID:j62MvD3e
【前スレ】
DXライブラリ 総合スレッド その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/

3 :名前は開発中のものです。:2013/07/01(月) NY:AN:NY.AN ID:+3YeETHh
>>1
すまないけどもう一度
モデルの手足とかのフレーム位置ってどうやって設定するんですか?
MV1SetMatrixで設定しても足元の位置を取得してるみたいです
モデルが悪いのかモーションが悪いのか…
デフォルトで付いてるモデルを見るとちゃんと手とかのフレームごとに座標がセットされてるなぁ

4 :名前は開発中のものです。:2013/07/01(月) NY:AN:NY.AN ID:j62MvD3e
C/C++ゲーム製作総合スレッド Part3
http://toro.2ch.net/test/read.cgi/gamedev/1337516528/

ごめん、ここだけ更新確認するの忘れてた…
あと、改行おおすぎって怒られたから分けてみた

5 :名前は開発中のものです。:2013/07/01(月) NY:AN:NY.AN ID:uf9a8men
前スレの984だけど
>>985
1を避けるのが無理となったら毎フレームVertexやIndexに代入して渡す以上、
それはただのDrawPolygonIndexed3Dと変わらないしボトルネックになってる代入処理も負荷軽減すら出来ない
1が出来ないなら実装は諦めるしか無いんだよね
せめて前フレームまでに生成されたパーティクルは触らず、今フレームで生成されたパーティクルのデータだけを追加することでも出来れば大きな力になるんだけど

2は別のセマンティクスを無理やり利用するとしても
管理人さん曰くfloat3がpos、norm、tan、binorm、float4がsposらしいからとても理想通りには足りない
これが実現できないなら単純な動きの数稼ぎのパーティクルを個別に新しく作るって方法もあるけど出来れば理想通り実装できるように試行錯誤したい
頂点数を6つから描画に使わない頂点を増やして、シェーダ中で別の頂点から参照するみたいなことってできないよね

以前に2年ほど市販のゲームのバイナリをひたすら弄ってた事があるんだけど
そのゲームのパーティクルがこれぐらいは拡張性に富んでたんだよね
ちゃんと内部メモリ書き換えたら思い通りにエフェクトも書き換えれたし先に挙げたパラのどれを書き換えてもフリーズとかは起こらなかった
当時はハードが非力で思い通りの事はできなかったけど今時のPCならやりたい放題だから思う存分パーティクル使ったエフェクトを作りたいんだ

6 :名前は開発中のものです。:2013/07/03(水) NY:AN:NY.AN ID:UI8e9E/d
久しぶりに新しいバージョン出てたんだな

7 :名前は開発中のものです。:2013/07/04(木) NY:AN:NY.AN ID:VvE/Zlks
なんか過疎過ぎない?
>>3
亀だけど手足とかのフレーム位置を取得したいのか
それとも回転とか並進移動してフレームの位置を設定したいのか
どっちにしてもMV1SetMatrixは関係なくね?
前者ならMV1GetFramePositionとか後者ならアニメーション関数かMV1SetFrameUserLocalMatrixあたりが出てきそうなもんだけど
とか言って初心者が話題作りに口出ししてみる

8 :名前は開発中のものです。:2013/07/04(木) NY:AN:NY.AN ID:crrvNibG
BGM流す処理で悩んでいるんだけど
現状専用の関数に(bgmname,loop)でtitleからパス渡して都度読み込ませてるんだけど
起動時なりにあらかじめ全部読み込ませて番号で指定したほうがスマートなのかな?

使用数は20曲程度を想定してるけど、メモリの占有とか考えるとどうなのかなーと
使用頻度の高いものだけ読み込ませるとか色々考えたけどなかなかどうするのが一番いいのか思いつかない

9 :名前は開発中のものです。:2013/07/04(木) NY:AN:NY.AN ID:i01s1Y7Z
>>8
作っている物の設計次第じゃね
つまり、ロードして再生でいいものと、オンメモリで即時切り替えしたい物って用途によってあるのがわかってると思うので、
この曲はこっち、これはこっちと分けて考える感じ

割りとノープランで作ってるときは全部同じ方法で統一したくなるけど、
実際に作るものが見えてる状態で設計するなら、自然と一次切り分けとしてそうなるかと

10 :名前は開発中のものです。:2013/07/04(木) NY:AN:NY.AN ID:crrvNibG
>>9
やっぱりそうかぁ
メモリどのくらい食うかとか調べてから決めることにするわさんくす

11 :名前は開発中のものです。:2013/07/04(木) NY:AN:NY.AN ID:eMzLzLvI
でもストリーミングでディスクアクセスだけは絶対やりたくないな・・・
圧縮済み曲データなら数MBですむし最低そこだけでもメモリには置いておきたい

12 :名前は開発中のものです。:2013/07/04(木) NY:AN:NY.AN ID:bYjH9N0m
俺は「NOW LOADING....」をやりたくなかったからストリーミングやったなぁ。
まぁそれでも一瞬止まるんだけど。

13 :名前は開発中のものです。:2013/07/05(金) NY:AN:NY.AN ID:NK+qilQ+
DXライブラリが原因で作ったゲームがPCによって起動するしないということってあるんですか?
現在作っているゲームを、
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ライブラリの可能性もあるので質問させていただきます。
どなたか心当たりがありましたら返答お願いします。

14 :名前は開発中のものです。:2013/07/05(金) NY:AN:NY.AN ID:E7AFsXVC
ログうpって貼るくらいはしようよ
エスパーじゃないんだからさ

15 :名前は開発中のものです。:2013/07/05(金) NY:AN:NY.AN ID:sQV+cUjn
Windows Updateやってても DirectXが最新だとは限らない
アプリ起動時にいきなりダメなんだったら DirectXとかグラボのドライバでも疑え

16 :名前は開発中のものです。:2013/07/05(金) NY:AN:NY.AN ID:Y41MaDA7
まず真っ先にそこだよな

17 :名前は開発中のものです。:2013/07/05(金) NY:AN:NY.AN ID: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の描画処理}
        …以下同じ要領で書き連ねる

賢い方ならわかると思いますが非常に非効率ですよね、、
どうやればスマートな命令になりますか?
知恵をお貸しください。

18 :名前は開発中のものです。:2013/07/05(金) NY:AN:NY.AN ID:k966eNGC
images[(this->count/2)%10-1].draw();

19 :名前は開発中のものです。:2013/07/05(金) NY:AN:NY.AN ID:nBoOA7vy
画像[i]の描画処理;
if ( frame_count %= 2 ) { //0:そのまま表示 1:画像更新 2:そのまま表示…
i++;
i %= 画像枚数;
}

20 :名前は開発中のものです。:2013/07/05(金) NY:AN:NY.AN ID:o07ozPmm
>>18
え、すごくシンプルですね、、、ちょっと意味がわかりません
countを2で割ったものを10で割った余りから1を引く、ということですか?


その場合、表示時間は"/2"のところで考えるんですか?

>>19
すみません、ちょっとわかりません
フレームカウントを2で割った余りが0になるたびに、
iがインクリメントされて、、どういうことでしょうか?
画像枚数が5枚として、i%=5でどういう意味になるのでしょうか

21 :名前は開発中のものです。:2013/07/05(金) NY:AN:NY.AN ID:nBoOA7vy
>>20
え、まさかそういう返しが来るとは思ってなかったんだけど…
配列って知ってる?

22 :名前は開発中のものです。:2013/07/05(金) NY:AN:NY.AN ID:o07ozPmm
>>21
もちろん知ってます
配列の添え字を動かしてるんですよね?
ただ、そこの値の変化が見えません

23 :名前は開発中のものです。:2013/07/05(金) NY:AN:NY.AN ID:o07ozPmm
多分算数が弱いんです、(count/2)%10-1←これは値が
0、1,2,3、、、と変化するんですよね?
−1は0からの添え字に合わすために引いてる。
そういうのはわかるんですよ。
でも、それではものすごいスピードなのは自分が書いたものと
変わりがないような気がするんで、、、、
値の変化をもう少し解説して頂けませんか?

24 :名前は開発中のものです。:2013/07/05(金) NY:AN:NY.AN ID:o07ozPmm
>>21
あ、人を違えました、すみません。
(でも言いたいことは同じなんですけど、、)
値の動きがわかりません。

if ( frame_count %= 2 ) {
i++;
i %= 画像枚数;
}

if文の中は、「countを2で割って、余りが2になる場合」でよろしいですよね?
で、そのたびに、iをインクリメントする。
そのiを画像枚数で割って、その余りをiに加える??
意図、値の変化、が見えません。。。

25 :名前は開発中のものです。:2013/07/05(金) NY:AN:NY.AN ID:6PcLzQCR
単純に均等割りで頭に戻るループなら
(count / コマウェイト) % アニメ枚数
だけでいいんじゃね

26 :名前は開発中のものです。:2013/07/05(金) NY:AN:NY.AN ID:Jwek2QMZ
( this->count / a ) % 5

aは1以上の整数

でいいんじゃないのかな。配列はお好きに。

27 :名前は開発中のものです。:2013/07/05(金) NY:AN:NY.AN ID:Jwek2QMZ
ああ25さんがすでに言ってた。

28 :名前は開発中のものです。:2013/07/05(金) NY:AN:NY.AN ID:Y41MaDA7
もうちょっと真面目にやるとステップの進行に使う係数(/2の部分)を、実際のフレーム当たりの実経過時間から計算するよな

29 :名前は開発中のものです。:2013/07/05(金) NY:AN:NY.AN ID:6pY90Lwl
それ最近流行ってるってだけで別に「真面目に」とかつけなくていいからね

30 :名前は開発中のものです。:2013/07/05(金) NY:AN:NY.AN ID:Y41MaDA7
最近流行ってるって何が

31 :名前は開発中のものです。:2013/07/05(金) NY:AN:NY.AN ID:VRSiUV+Z
固定か可変かの違いでしか無くない?

32 :名前は開発中のものです。:2013/07/05(金) NY:AN:NY.AN ID:Jwek2QMZ
ゲーム自体が可変(である事が普通)だから〜って事だろうか。

33 :名前は開発中のものです。:2013/07/06(土) NY:AN:NY.AN ID:TvHXVORu
>>17
では、こういうのを提案します。
-------------------------------
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++;
}

34 :名前は開発中のものです。:2013/07/06(土) NY:AN:NY.AN ID:TvHXVORu
この案は、画像1〜5の内容を1つのPNG形式のファイルに収めて
それを配列で表示させることが大前提なのですが、

  // アニメーションプログラム
  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フレーム間隔でアニメーションし続けることになります。

35 :名前は開発中のものです。:2013/07/06(土) NY:AN:NY.AN ID:TvHXVORu
  // アニメーションプログラム
  if (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フレーム間隔の遅いアニメーションになります

36 :名前は開発中のものです。:2013/07/06(土) NY:AN:NY.AN ID:TvHXVORu
ああ、Img変数の宣言をしておくことをお忘れなく
----------------------------
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++;
}

37 :名前は開発中のものです。:2013/07/06(土) NY:AN:NY.AN ID:AeXNZZqZ
1回分の画像表示ごとにScreenFlipの前後にカウント挟めばいいだけでは?
カウント5になったら表示させるようにすれば
単純に5倍の表示時間増大になるはず

初期値にi=0;してから
if(i==0){ //iは適当
表示ルーチン
}
ScreenFlip();
i++;
if(i>5)i=0;

38 :名前は開発中のものです。:2013/07/06(土) NY:AN:NY.AN ID:6iFG2U1A
まーたJet++じゃないだろうな

39 :名前は開発中のものです。:2013/07/06(土) NY:AN:NY.AN ID:K/eQcKgB
かずきくんには触れないでおいて

40 :名前は開発中のものです。:2013/07/06(土) NY:AN:NY.AN ID:6iFG2U1A
>>37これがシンプルでいいかなとは思ったけど
これって1種類の画像表示ごとに表画面に反映させるの?
それじゃ裏画面に描画してる意味合いが薄れないだろうか
的外れならスマン

41 :名前は開発中のものです。:2013/07/06(土) NY:AN:NY.AN ID:1xgoa0KH
if( Time % IntervalTime == IntervalTime - 1 ){
  ImageFlame++;
  if( ImageFlame >= MAX_FLAME ){
     ImageFlame = 0;

  }
}

42 :名前は開発中のものです。:2013/07/06(土) NY:AN:NY.AN ID:1xgoa0KH
ミスって途中で書き込みしてしまったすまん。

if( Time % IntervalTime == IntervalTime - 1 ){
  ImageFlame++;
  if( ImageFlame >= MAX_FLAME ){
     ImageFlame = 0;
  }
}
Image[ImageFlame].draw();
Time++;

43 :名前は開発中のものです。:2013/07/06(土) NY:AN:NY.AN ID:AeXNZZqZ
>>17で1枚ごとの表示時間を長くしたいってあったから
37のように書いてみただけなので、
それより効率の(もしくは目的に合った)いいソースがあれば
それを使ってもらえればいいです
(ScreenFlipならマイクロ秒じゃなく約60分の1秒単位での表示処理なので
見た目的にも効果があると判断しました)

44 :名前は開発中のものです。:2013/07/06(土) NY:AN:NY.AN ID:IzFaHD6I
ちょっと複雑なパターンにするなら

 ・画像ハンドル
 ・画像を表示する時間
 ・次のパターンへのポインタ(NULLなら停止なり消去なり)

をクラス/構造体に突っ込んでおいて、
条件ごとに起点となるパターンを呼び出す……とかどうかな?

まあ、最終的には外部ファイル最強なんだろうけども。

45 :名前は開発中のものです。:2013/07/06(土) NY:AN:NY.AN ID:vfXXCUJm
スクリプト言語最強!!

46 :名前は開発中のものです。:2013/07/06(土) NY:AN:NY.AN ID:+/CoJmSY
スクリプト言語を動かすためのインターフェースなり土台なり作ろうとすれば
これと同じような(下手するともっと複雑な)ものを作る必要がある件

47 :名前は開発中のものです。:2013/07/10(水) NY:AN:NY.AN ID:hFi49aB+
相対パスから絶対パス取得したいんですけどどなたか分かる方いませんか?

48 :名前は開発中のものです。:2013/07/10(水) NY:AN:NY.AN ID:qhalMkf2
>>47
OSから渡される起動時引数からカレントディレクトリ取得してそこから相対とか、
そういう基礎的な話か

49 :名前は開発中のものです。:2013/07/10(水) NY:AN:NY.AN ID:hFi49aB+
>>48
すみません、strcatの存在すっかり忘れてました…
ありがとうございます

50 :名前は開発中のものです。:2013/07/13(土) NY:AN:NY.AN ID:hTzpp10w
おい…誰だよノベルゲーは簡単とか言ったやつは…
商用エロゲ作ってるが、3ヶ月毎日フルタイムでコーディングしても、まだ終わりが見えないんだが…

51 :名前は開発中のものです。:2013/07/13(土) NY:AN:NY.AN ID:nVvWJgzk
誰が言ったそんなんw

52 :名前は開発中のものです。:2013/07/13(土) NY:AN:NY.AN ID:1boaEOr8
DXライブラリでノベルゲエンジン作ってるのか。奇特な事でw
フリーの使えばいいのに。

53 :名前は開発中のものです。:2013/07/13(土) NY:AN:NY.AN ID:zRBu2bed
3ヶ月フルタイムで終わりが見えないとかどう考えても頭悪いだけだろ
そもそもNScripterとか吉里吉里使わない時点で頭悪い

54 :名前は開発中のものです。:2013/07/13(土) NY:AN:NY.AN ID:hTzpp10w
奇特なことやってるのは分かってるが、いくつもミニゲーム組み込んだりしてると
DXライブラリ使って作ったほうがやりやすいんだよ…
吉里吉里のライブラリ流用してるし、このやり方が悪いとは思わんのだがな…

55 :名前は開発中のものです。:2013/07/13(土) NY:AN:NY.AN ID:p2DfNmFs
その書き込みこそ頭悪そう。
商業ならフリー使わない理由はいろいろあるだろう。

56 :名前は開発中のものです。:2013/07/13(土) NY:AN:NY.AN ID:p2DfNmFs
54じゃなくて53宛ね

57 :名前は開発中のものです。:2013/07/13(土) NY:AN:NY.AN ID:TWfYB7Vz
作ったことがない奴はノベルゲーと馬鹿にするが
0から自分で作ると結構難しいぞ
ミニゲームもあるならなおさらキリキリとか使えないし

58 :名前は開発中のものです。:2013/07/13(土) NY:AN:NY.AN ID:yD2puQqu
単純に画像表示してテキスト表示して、
選択肢によって場面移動、それを繰り返す、ってだけなら
飯食いながらサンプルとして書ける程度の内容だけど、
もしも難しいと言ってる奴が、暗黙の内に独自の内蔵スクリプトとそのインタプリタ含めた汎用ゲームエンジンみたいな物前提で話してたら、
確かに大変かも試練

59 :名前は開発中のものです。:2013/07/13(土) NY:AN:NY.AN ID:zRBu2bed
・ノベルゲー作るの大変すぎ
・ノベルゲー+その他ゲーム集作るの大変すぎ

この二つじゃまったく話が違ってくるだろ

60 :57:2013/07/13(土) NY:AN:NY.AN ID:TWfYB7Vz
少なくとも
(1) 汎用パーサーを利用して俺スクリプトの解析
(2) アニメーション システム
(3) シーン(レベル)の保存とロード
(4) 統一されたキー入力を伝達する仕組み
(5) 装飾をつけたテキストの表示
(6) データの暗号化と永続的なファイルへの保存
(7) デバッグの為の変数表示機能
(8) コリジョンの検出および距離の計算
(9) 物理エンジンとの連携

いくらでもあるわ。経験者でないなら三ヶ月でできる量ではない

61 :名前は開発中のものです。:2013/07/13(土) NY:AN:NY.AN ID:wd3Q/jHw
だれもそこは否定してないのになんでそんなに必死なの?
53 もスクリプトツール使えって言ってるだけで
否定してるわけじゃないでしょうに。

62 :名前は開発中のものです。:2013/07/13(土) NY:AN:NY.AN ID:LUqGCTWw
作った事も無い人間が知ったかぶったあげくに他人を頭悪い呼ばわりしてればそりゃバカにされるよ。

63 :名前は開発中のものです。:2013/07/13(土) NY:AN:NY.AN ID:wd3Q/jHw
馬鹿にしてるヤツも居ないようだが。

64 :名前は開発中のものです。:2013/07/13(土) NY:AN:NY.AN ID:Wh+py0kB
文字列だけのローグライクもなかなか難しいんだぜ

65 :名前は開発中のものです。:2013/07/13(土) NY:AN:NY.AN ID:yD2puQqu
>>60
ノベルゲーを作る場合の話じゃなくなってる気がするが

66 :名前は開発中のものです。:2013/07/13(土) NY:AN:NY.AN ID:ywADsX8N
ホントお前らって下を見つけて叩く事しかできないんだな
技術的な事言ってる訳じゃないし、がんばれとかチラシの裏にでも書いてろで終わる話じゃん

67 :名前は開発中のものです。:2013/07/13(土) NY:AN:NY.AN ID:H9N77kIs
プログラムやってるやつってすぐ「頭悪い」って言ってくる印象あるけどなw

68 :名前は開発中のものです。:2013/07/13(土) NY:AN:NY.AN ID:yD2puQqu
会話上でも仕掛け上でも、そこに問題があった時整理や切り分けして話を絞っていく、
みたいな頭の働かせ方するのが慣れたプログラマの本能だったりするけど、
その辺で意志疎通出来にくい相手とか見ると、思わず頭悪いなぁとか言っちゃう人いるかも試練

69 :名前は開発中のものです。:2013/07/13(土) NY:AN:NY.AN ID:KqbQiyOs
パソコンを使いこなすことに優越感を感じやすいタイプの人間が
IT業界にやってくるわけだからな
使いこなせない奴を見て嬉しくなるタイプの人間しかいないよ

70 :名前は開発中のものです。:2013/07/13(土) NY:AN:NY.AN ID:LilF81Tl
いいから吉里吉里使えよ

71 :名前は開発中のものです。:2013/07/14(日) NY:AN:NY.AN ID:+UK5RTjg
説明しにくいんですが、継承クラス作るときの書き方みたいに
クラスの宣言内のコンストラクタに
クラス名(int,int):クラス内のメンバ変数名(引数),クラス内のメンバ変数名(引数)
みたいに書いてるのをたまに見かけます。
トレースしたいんだけど、コンストラクタに:をつけて変数ならべるのは
どういう意味ですか?

72 :名前は開発中のものです。:2013/07/14(日) NY:AN:NY.AN ID:/QtoVkR/
メンバ変数の初期化
ああいう記法なのはまったく理解できんけどな

73 :名前は開発中のものです。:2013/07/14(日) NY:AN:NY.AN ID:+UK5RTjg
、、初期化ですか?
クラスのコンストラクタの定義の中で済ませば良いのに、、
コンストラクタの宣言の横で初期化してるってことですか?
処理はまったく同じですよね?

本人の好みの問題なだけですかね?

74 :名前は開発中のものです。:2013/07/14(日) NY:AN:NY.AN ID:83nWya90
const ついてるメンバ変数だとその記法でしか初期化できなかったような
あと基底クラスの引数付コンストラクタ呼ぶときとか

75 :名前は開発中のものです。:2013/07/14(日) NY:AN:NY.AN ID:JsjE2TLy
参照変数(&)もそうかな

76 :名前は開発中のものです。:2013/07/14(日) NY:AN:NY.AN ID:tBW3km87
デフォルトコンストラクタ持ってないクラスがメンバな時とか初期化構文でないと駄目な場合は割とある
あとふつうの変数でも代入と初期化は本来別物だから
処理が全く同じになるかというとコンパイラ次第なんじゃないか

77 :名前は開発中のものです。:2013/07/14(日) NY:AN:NY.AN ID:+UK5RTjg
そのコンストラクタの横に羅列したメンバ変数にはconstはついて無いです。

気になるのは、そこに羅列したメンバ変数には
メンバ関数のごとく引数がついてるってこと。
まあその引数の値で初期化されると想像出来ますが、、
なぜ、わざわざそんなやり方を??

単刀直入に言いますと
コンストラクタ(int x,int y):変数A(y),変数B(x){}

コンストラクタ(int x,int y){変数A=y;変数B=x;}
の違いってなんですか?
ということです。

ちなみに、前者のソースみたく書いてるは
プロフェッショナルな方なんですよ。

78 :名前は開発中のものです。:2013/07/14(日) NY:AN:NY.AN ID:83nWya90
それは作者の好みじゃね・・・

79 :名前は開発中のものです。:2013/07/14(日) NY:AN:NY.AN ID:XaubjkQU
初期化リストだっけ?
俺は何気なくだけど前者使ってるわ
大体0とかで初期化するだけだけど

80 :名前は開発中のものです。:2013/07/14(日) NY:AN:NY.AN ID:+UK5RTjg
やっぱただの好み、というか作者の癖、なんですかね
べつにそれならそれでいいんです。

自分には聞いたことも見たことも無い書き方
だったんで戸惑いました。

81 :名前は開発中のものです。:2013/07/14(日) NY:AN:NY.AN ID:+UK5RTjg
レス下さった皆さま
ありがとうございました。

82 :名前は開発中のものです。:2013/07/14(日) NY:AN:NY.AN ID:/QtoVkR/
ちょっとその変な書き方のほうが高速とかいう噂を聞いたことがあるな
本当かはしらない

83 :名前は開発中のものです。:2013/07/14(日) NY:AN:NY.AN ID:tBW3km87
>>77
前者は初期化で後者は代入
わざわざそんなやり方、というよりも前者の方がC++本来のクラス変数の初期化の文法
後者でも単純な変数なら同じ結果が得られるだけ

84 :名前は開発中のものです。:2013/07/14(日) NY:AN:NY.AN ID:5JkpjM3e
>>77
前者は初期化だけど、後者はどう見てもコピーで別物に見えるけど

85 :名前は開発中のものです。:2013/07/15(月) NY:AN:NY.AN ID:Un3rMRLz
参照をメンバに持つ場合とか
初期化リストでないと代入できないんじゃなかったっけ

86 :名前は開発中のものです。:2013/07/15(月) NY:AN:NY.AN ID:ikbmv1v3
>>85
そらそうだ

87 :名前は開発中のものです。:2013/07/16(火) NY:AN:NY.AN ID:416SfEwn
前者は初期化
Var x=n;と同じ
後者は代入
Var x;
x=n;
tと同じ

Varが参照だったりconstだったり引数なしコンストラクタを持っていない場合は前者を使わざる負えない
あと、例えばstd::stringなんかだと引数なしコンストラクタの場合適当に15ぐらいの領域を勝手に確保するって噂を聞いたことがあるから
初期化のほうが適当じゃない分いい

88 :名前は開発中のものです。:2013/07/16(火) NY:AN:NY.AN ID:DavWjYNX
”使わざるを得ない”な。

89 :名前は開発中のものです。:2013/07/16(火) NY:AN:NY.AN ID:ayl4cQjp
JavaとかC#しか基本的に知らず、C++をぼやっとしか知らない人だと混同するよな
初期化リストにしろ、代入(コピー)にしろ、それらとコピーコンストラクタやオペレータオーバロードの関係とか

90 :名前は開発中のものです。:2013/07/16(火) NY:AN:NY.AN ID:Hqm1WmEM
マリオみたいなゲーム作ってるんですが
ファイアーボールみたいな動きする計算が出来ません。
参考になるような解説されたサイトやブログもまったくないです。

やはり、物理演算も入ってるでしょうし
その辺のプログラマには再現出来ない難しい軌道なのでしょうか?
それとも簡単すぎて、誰も解説をしていない状態なのでしょうか?

91 :名前は開発中のものです。:2013/07/16(火) NY:AN:NY.AN ID:7blhp/X0
慣性と重力と地面とのバウンドだけでファイアーボールになるよ

92 :名前は開発中のものです。:2013/07/16(火) NY:AN:NY.AN ID:ayl4cQjp
>>90
その辺のプログラマって括りがおかしいが、
まず先にテストで、画面の任意の位置をクリックしたら玉が現れて、下に向かって落ちていき、
一番下についたら跳ね返る、その移動量が段々減衰していくってだけのテストプログラム作ってみ
数学的にも大した計算いらない。

てかこれ、DXライブラリって言うより単純なアルゴリズムの話。
うちの新卒一年目でも昼休みにさらっと書くレベルの話。

93 :名前は開発中のものです。:2013/07/16(火) NY:AN:NY.AN ID:GmMQZD9J
数学っていうか。算数でできるレベル

94 :名前は開発中のものです。:2013/07/16(火) NY:AN:NY.AN ID:+XM2aF/e
プログラミングには直接役に立たないけど高校物理やり直したほうがいいと思う

95 :名前は開発中のものです。:2013/07/16(火) NY:AN:NY.AN ID:Hqm1WmEM
>>92
いや、実はまさにそれくらいを再現するプログラムは見よう見まねで作ったんですが
たったそれだけの動きを再現するのにえらい長いプログラムになってまして、、
上手い人はもっと短いのだろうと。参考にしたいな、と。なのにどこにも無い、と。
そういう流れす。

さらっと書くレベルの話、とは言えませんね、これは。
、、、たとえば、あなたなら何行使いますか?(常識的なインデントで)

96 :名前は開発中のものです。:2013/07/16(火) NY:AN:NY.AN ID:+XM2aF/e
やった処理と行数を要約して伝えようよ
曖昧にする意味がわからん

97 :名前は開発中のものです。:2013/07/16(火) NY:AN:NY.AN ID:kK2L2xoh
>>92がわかりやすく書いてるのにソースがないとわからないって奴は全部コピペで作るつもりか
なんとかしてソース引き出そうとしてるし浅ましい

98 :名前は開発中のものです。:2013/07/16(火) NY:AN:NY.AN ID:7blhp/X0
慣性に1〜2行 重力に1行 当たり判定に5〜7行くらい?がんばれよ

99 :名前は開発中のものです。:2013/07/16(火) NY:AN:NY.AN ID:nroTpBI+
10行とか嘘こけよ

100 :名前は開発中のものです。:2013/07/16(火) NY:AN:NY.AN ID:ayl4cQjp
>>95
> さらっと書くレベルの話、とは言えませんね、これは。

なんでわからなくて質問してるお前の基準で「違いますね、これは」とか言えちゃうのよ。
いやさらっと書くレベルの話だよ

101 :名前は開発中のものです。:2013/07/16(火) NY:AN:NY.AN ID:hzTbXOyu
大学生がやってるのか小学生がやってるのかで使うべき言葉も変わってくるよね
年齢書いとくと知ってるであろう知識で教えられるとかあるかもしれんな
DXライブラリは利用者の幅が広いからなあ

102 :名前は開発中のものです。:2013/07/16(火) NY:AN:NY.AN ID:QAiAMGmg
ぶっちゃけ、元祖スーパーマリオは足し算と引き算ぐらいしか使ってないし、わりとどうでもいいし、それで誰も文句言ったりしない。

たぶんね!

103 :名前は開発中のものです。:2013/07/16(火) NY:AN:NY.AN ID:1hVtm7c/
ファミコンで物理演算とか、ないだろ……。
いや無理とは言わんが、スーマリ程度のゲームでそんなのやらんだろ。

104 :名前は開発中のものです。:2013/07/16(火) NY:AN:NY.AN ID:+XM2aF/e
位置を表すのに速度と加速度の考え方が用いられていて
あとはめり込み判定ができてれば、2Dゲームとしては物理シミュと呼べる
プリミティブな要件を満たすと思うけど?
というか「物理演算」という言葉のスコープが大きすぎ。2D力学か運動表現と言おう

105 :名前は開発中のものです。:2013/07/16(火) NY:AN:NY.AN ID:27OHMvBc
x += vx; // 等加速
y += vy; vy += gravity; // 重力加速
物理っちゃ物理

106 :名前は開発中のものです。:2013/07/16(火) NY:AN:NY.AN ID:8KAYlLb2
・算数がわからない
・ググれない
・質問してるのに上から目線
例の小学6年生だろうからもうスルーしとけ

107 :名前は開発中のものです。:2013/07/16(火) NY:AN:NY.AN ID:K551o1n+
35歳の小6か!!

108 :名前は開発中のものです。:2013/07/16(火) NY:AN:NY.AN ID:Hqm1WmEM
>>102
え、それほんとですか?
てきとーに言ってるのなら
明らかに当時のプログラマへの侮辱ですよ?
ファイヤーボールは明らかに地面で跳ねながら飛んでいきます。
いわば、トランポリン状態です。
あれを物理演算使わないであそこまで違和感なしに出来ますか?
出来もしないのに言うな

>>105
そういうことですよね?
やっぱそれらを使ってますよね?
あのファイヤーボールは

109 :名前は開発中のものです。:2013/07/16(火) NY:AN:NY.AN ID:oQmF0F+y
105は、102の言うところの加減算のみで表現した例に見えるのだが…

110 :名前は開発中のものです。:2013/07/16(火) NY:AN:NY.AN ID:UEWWNyYt
ハルクのような超無敵主人公のアクション3Dゲームを開発するとします
主人公ハルクが高いところから飛び降りた時に
高さに応じて落下速度を上げる物体落下のプログラミングを
DXライブラリを使って構築する場合
何を重点に式を組めばいいでしょうか?
重力計算の問題です

1.落下時間に応じて速度を増していく
2.地面までの距離(y軸)に応じて速度を増していく
3.物体の重さに応じて速度を増す

あと、落下速度に応じて地面に着地した時に
地面がひび割れたり揺らしたりもしてみたい

111 :名前は開発中のものです。:2013/07/16(火) NY:AN:NY.AN ID:cTJjZDRJ
オイラー法

112 :名前は開発中のものです。:2013/07/16(火) NY:AN:NY.AN ID:mLye0j0h
古いマリオのゲームなんてスーパーマリオランドしか知らんが
あの場合は演算も糞も無く等速でx方向に進んで上下に振動するだけだったけどなあ

そんなもんでも良かったら物理の知識も要らないんじゃないの

113 :名前は開発中のものです。:2013/07/16(火) NY:AN:NY.AN ID:y2xAflWs
言っておくがお前らが思ってるよりスーパーマリオを作るのは難しいぞw

114 :名前は開発中のものです。:2013/07/16(火) NY:AN:NY.AN ID:d5+33Qmv
実際のマリオのプログラムでは演算なんかしてなくて
テーブルで変化量を持ってるだけだと思う
最近の3DSのマリオとかだったらdoubleの計算とか三角関数やベクトル辺りもガンガン使ってるだろうけど

115 :110:2013/07/16(火) NY:AN:NY.AN ID:UEWWNyYt
質問してから気付いたのですが
重力計算には空気抵抗とかも必要だと思う
y軸に面する面積が広ければ広いほど落下速度が減速する
面積が狭いと落下速度が加速

スカイダイビングをイメージすれば
両手両足を広げれば落下速度が減速
両手両足を閉じれば落下速度が加速
さらに体を斜めに傾けると、さらに落下速度が加速する

116 :名前は開発中のものです。:2013/07/16(火) NY:AN:NY.AN ID:UEWWNyYt
>>92
それは正しい物理計算とは言わない
玉が地面に面する体積と重力と風力と重さで
落下速度や上昇速度や上昇距離を計算していないと思う

落下物を別の大きさの玉に変えたり
別の形状の物体に変えても同じバウンドの実行結果になってしまう
そんなものなら数学的な計算を使わないのは当然

117 :名前は開発中のものです。:2013/07/16(火) NY:AN:NY.AN ID:Hqm1WmEM
>>113の言う通りなんですよ。

>>112>>114
>上下に振動するだけ
>テーブルで変化量を持ってるだけだと思う

そこまで単純じゃないんですよ
忘れてるんでしょうから、目で確認してみてくださいよ
http://www.youtube.com/watch?v=2QfkfFyURf8#t=0m24s

118 :名前は開発中のものです。:2013/07/16(火) NY:AN:NY.AN ID:xomIDF4E
あら、減衰とかなかったか
なら凄く単純な話じゃないか?入射角とか求める必要すらないんじゃないの?
なんか常に一定っぽいんだが

119 :名前は開発中のものです。:2013/07/16(火) NY:AN:NY.AN ID:d5+33Qmv
テーブルでやってるから計算で再現しようとすると難しいんだと思うな

120 :名前は開発中のものです。:2013/07/16(火) NY:AN:NY.AN ID:QAiAMGmg
ああ・・・これはw一応貼っとく

     ∧_∧
ガラガラ(  ^^  ) <これからも僕を応援して下さいね(^^
  =〔~∪ ̄ ̄〕
  = □――◇                       Kazuki

121 :名前は開発中のものです。:2013/07/16(火) NY:AN:NY.AN ID:A+V7NwsU
スーパーマリオもどきはJAVAの実装がソース付きでなかったけ?

122 :名前は開発中のものです。:2013/07/16(火) NY:AN:NY.AN ID:8KAYlLb2
だらだらと憶測で物言ってるやつらは無知すぎ
正解は>>114
これゲーム開発者の間では常識中の常識
もうこの話はもう終わりね
二度と小学6年生に触れるなよ

123 :名前は開発中のものです。:2013/07/16(火) NY:AN:NY.AN ID:C/+zvXFU
>>117
8bitCPUは掛け算や割り算なんかないよ。

124 :名前は開発中のものです。:2013/07/16(火) NY:AN:NY.AN ID:d5+33Qmv
分かったらGNESでマリオを1フレームずつ動作させて座標の変化量を調べるんだ

125 :名前は開発中のものです。:2013/07/16(火) NY:AN:NY.AN ID:C/+zvXFU
>>121
昔、マリオを逆アセンブルしてC++で実装した奴を公開していた奴はいたな。

126 :名前は開発中のものです。:2013/07/16(火) NY:AN:NY.AN ID:C/+zvXFU
http://www.vector.co.jp/soft/winnt/game/se347402.html
まだ、あったわ。
ソースも付いてるから勉強すればいいよ。

127 :名前は開発中のものです。:2013/07/16(火) NY:AN:NY.AN ID:TkKjOA5G
ファイアーボールじゃないけど、スーマリのジャンプで難しいのは
空中で左右に動けることとジャンプボタン押す長さでジャンプの高さが変わる事だと思う。
まぁ、それでもちょっと難しい程度だけど。

128 :名前は開発中のものです。:2013/07/16(火) NY:AN:NY.AN ID:d5+33Qmv
難しいのは斜面

129 :名前は開発中のものです。:2013/07/16(火) NY:AN:NY.AN ID:5Xnek7aO
>ジャンプボタン押す長さでジャンプの高さが変わる

言われてみたらこれって何気にすごいんだなと思った

ジャンプした瞬間の初速(最低の高さ)があるとして
ジャンプしてから数十フレームくらいの間だけ、上への加速度をプラスするって感じなのかな?
30フレくらいかと思ったけど、びみょ〜に落下までの速度も制御できる気がするから60フレくらい?

130 :名前は開発中のものです。:2013/07/16(火) NY:AN:NY.AN ID:5Xnek7aO
上への加速度をプラスする → 重力加速度を弱める って意味ね

>>129
言われたらそっちのほうがすごかったわw
斜面はFCマリオ3からだったかな?
しっかり歩行速度にも影響あって、滑ったりできるのは確かにすごい

131 :名前は開発中のものです。:2013/07/16(火) NY:AN:NY.AN ID:TkKjOA5G
ちなみに、俺はスーパーじゃなくて初代マリオブラザーズの
ジャンプして上の床を叩いたとき、床がぐにゃりって曲がるのも凄いと思ってるw
あれマップチップだよな……? いや一時的にスプライトに変えてるって手法もありか……?

132 :名前は開発中のものです。:2013/07/16(火) NY:AN:NY.AN ID:5Xnek7aO
>>131
うわ、そういやそれもすげぇな・・・

確かあれは、バグった状態(FC独特の半刺し状態とか)では
まったく別の絵柄が見えるから、特定のチップを表示してるのかな

というかあのバグった状態のままで動くFCそのもののほうがすごいかw

133 :名前は開発中のものです。:2013/07/16(火) NY:AN:NY.AN ID:y2xAflWs
マリオで一番難しいのはジャンプしてブロックに1/3ぐらい当たったときの
くぃっという動作だと思う

134 :名前は開発中のものです。:2013/07/16(火) NY:AN:NY.AN ID:nroTpBI+
ほれ、これで実行してみろって簡単に作った
スーパーマリオのジャンプとファイヤボールを打つのを実装した
オブジェクトのソース貼り付ける天才はいないのか?

135 :名前は開発中のものです。:2013/07/17(水) NY:AN:NY.AN ID:poq3qMku
>>134
もうちょっとましな煽り入れろよ

136 :名前は開発中のものです。:2013/07/17(水) NY:AN:NY.AN ID:3HiHJAFh
>>134
Haskellで書いたソースでも良ければ。
そのままじゃ使えないと思うけど。

137 :名前は開発中のものです。:2013/07/17(水) NY:AN:NY.AN ID:Udo1cKyL
今時Haskellは脅しにならんなw
J言語とでも言っておけ

138 :名前は開発中のものです。:2013/07/17(水) NY:AN:NY.AN ID:OzdlVej3
>>131
BGとスプライトの併用じゃなかったかなあ、あれ

139 :名前は開発中のものです。:2013/07/17(水) NY:AN:NY.AN ID:+vpWyki7
>>126
ソース見てるんだが、
これ、ファイヤーボールの弾の軌道書いてんのどこ?

140 :名前は開発中のものです。:2013/07/17(水) NY:AN:NY.AN ID:4ylv1rI4
玉のソースでしょ

141 :名前は開発中のものです。:2013/07/17(水) NY:AN:NY.AN ID:+vpWyki7
まあ、そんなの探してくれる親切な人はいないか。

じゃあ質問変えるね。
DXライブラリの描画可能領域セットメソッドあるじゃない?
SetDrawArea();
これって、領域外にある画像は描画しないってものだけど、
それはまさに「描画処理が無効化されている」、
つまり領域外に出た画像の描画分のメモリは食わなくなる、ということで良いのかな?
だとしたら、これはそうとう便利なメソッドだと思うんだけど。

142 :名前は開発中のものです。:2013/07/17(水) NY:AN:NY.AN ID:4ylv1rI4
しらんけど。
描画しないだけで、メモリには書いてんじゃねーの?

143 :名前は開発中のものです。:2013/07/17(水) NY:AN:NY.AN ID:4ylv1rI4
書き忘れた
CBullet::Adjust

144 :名前は開発中のものです。:2013/07/17(水) NY:AN:NY.AN ID:+vpWyki7
>>142
じゃあ、
見えないだけで描画処理はされてるってこと?
じゃあ見えなくても沢山表示命令を出してたら重くなるんだ?

、、、ってか、知らんのか
あんたまで知らないならただの推測による水掛け論になるやん、、、

145 :名前は開発中のものです。:2013/07/17(水) NY:AN:NY.AN ID:+vpWyki7
>>143
>CBullet::Adjust

なによ、それ。

146 :名前は開発中のものです。:2013/07/17(水) NY:AN:NY.AN ID:3HiHJAFh
ソース見てないけど、そのクラスとメンバがいるって話じゃないの?

147 :名前は開発中のものです。:2013/07/17(水) NY:AN:NY.AN ID:+vpWyki7
>>143
ああ、、すまん、、、探してくれたんだな
ありがとう。

でも、CBullet::Adjustて、それなりに長いソースだけど、
これ全部がファイヤーボールのプログラムなん??

148 :名前は開発中のものです。:2013/07/17(水) NY:AN:NY.AN ID:4ylv1rI4
ここで説明できるほど単純でもないからあとはソースを読んでくれとしかいえん
data\BulletInit.txt に玉のパラメータが書かれている。

読みこんでるのはApp2.cppの
// ファイアーボールデータ読み込み。
void CApp::PlayerBulletInit(char *filename, char *imagename, BulletData *bullet, CBullet *ball)
こいつ

149 :名前は開発中のものです。:2013/07/17(水) NY:AN:NY.AN ID:kpZcJ0Sq
>>141
dxlibのソース読んで見ないとわからないなぁ。

俺も推測でのレスで申し訳ないが、確かDirectXには
ラスタライズ対象範囲を限定する機能があったはず。
もしdxlibがそれを使っていたなら
ラスタライズ範囲が狭くなる分、処理は軽くなるけど
メモリ使用量は変化しない。
結局画像は全体がVRAMに転送されるし、バックバッファのサイズも変化しないので。

150 :名前は開発中のものです。:2013/07/17(水) NY:AN:NY.AN ID:v0GAbqsX
超巨大で超ぶっとい線を描画したら重くなるから
やっぱり重くなるんだと思うよ

151 :名前は開発中のものです。:2013/07/19(金) NY:AN:NY.AN ID:hMnI35Wd
>>+vpWyki7
お前飽きっぽいなぁ何も作らんうちにコロコロやる事変えてたんじゃ何も出来ないままでしょ
ttp://blog.livedoor.jp/winpg/

152 :名前は開発中のものです。:2013/07/19(金) NY:AN:NY.AN ID:s1Ws3Cie
今度は何処の素材パクったんだろう

153 :名前は開発中のものです。:2013/07/19(金) NY:AN:NY.AN ID:BHHQFBlf
>>151
また直ぐに投げ出すんだろうな。w

154 :名前は開発中のものです。:2013/07/19(金) NY:AN:NY.AN ID:04yaioY9
例のヤツについての話は専スレでやれ

155 :名前は開発中のものです。:2013/07/19(金) NY:AN:NY.AN ID: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分しか考えてない適当なのだけどこんなのでいいだろどうせ
あとはボールの楕円画像を自転でもさせるぐらいか
自分で考える楽しみ()とか言っちゃうならこんなとこに来ずにこれぐらい自分でやれよ
まあ円形弾幕で一つ一つ座標を三角関数も使わずに手打ち指定しちゃう奴に言っても無駄かもしれんが

156 :名前は開発中のものです。:2013/07/19(金) NY:AN:NY.AN ID:s1Ws3Cie
口調変わってないよ
ゲームを崇拝してる所がそのまんまKazuki
KazukiAAが出たら妄想解いて疑おう
騙される人間は推理した事が無いから騙されるわけで、それを知ってるからKazukiは湧き続ける

157 :名前は開発中のものです。:2013/07/19(金) NY:AN:NY.AN ID:o3u0GTiW
まあバレバレの自演と連投で察しはついてたけど
単芝であそこまでされたら釣りか別の真性かと思った

158 :名前は開発中のものです。:2013/07/20(土) NY:AN:NY.AN ID:nmMQpud5
FCマリオ1程度ならサクッと作れそうだが、こういうのは素材がなぁ
素材があれば1週間もかからない気がする

159 :名前は開発中のものです。:2013/07/20(土) NY:AN:NY.AN ID:FVW2K7jj
FCマリオ1程度の素材ならそれほど時間はかからんと思うが。

160 :名前は開発中のものです。:2013/07/20(土) NY:AN:NY.AN ID:GpeLB3bo
32ステージ分のマップと敵の配置のデータを作るだけで1週間じゃ無理だと思うが

161 :名前は開発中のものです。:2013/07/20(土) NY:AN:NY.AN ID:+SSEepdc
どうでもいいことだとは思うけど、
マリオのステージは1/3くらいデータの使い回しされてたり(似たような別面)
敵の配置はクリボー×3とかでグループ化してあったりして容量削減がんばってる
「ここから先の床の高さ」とかそういうデータを埋め込んだりして実際のマップそのものは実行時に生成してる
すごいね

162 :名前は開発中のものです。:2013/07/20(土) NY:AN:NY.AN ID:Ob+Zn2mg
誰から聞いたのw

163 :名前は開発中のものです。:2013/07/20(土) NY:AN:NY.AN ID:3y5EbjLj
雲と草が一緒の画像とかはよく聞く

164 :名前は開発中のものです。:2013/07/20(土) NY:AN:NY.AN ID:eUWUT4lX
DXライブラリ 総合スレッド その16

165 :名前は開発中のものです。:2013/07/20(土) NY:AN:NY.AN ID:ExCGSRAn
DXライブラリってゲーム作るには機能足りなすぎじゃね

166 :名前は開発中のものです。:2013/07/20(土) NY:AN:NY.AN ID:Ob+Zn2mg
C++版誰か作ってくれよ

167 :名前は開発中のものです。:2013/07/20(土) NY:AN:NY.AN ID:3bPsLAoC
>>160
スーパーマリオの話だったのか。
そりゃ確かに面倒だな。

168 :名前は開発中のものです。:2013/07/20(土) NY:AN:NY.AN ID:0AjeLszX
機能そのものはdirectxSDKの時点で足りてるよ!

169 :名前は開発中のものです。:2013/07/22(月) NY:AN:NY.AN ID:LdkNNEKh
>>165
例えば?

170 :名前は開発中のものです。:2013/07/22(月) NY:AN:NY.AN ID:IM02LFGg
>>169
Ogre3Dと比べると描画の機能は全然ないぞ
シーングラフとかは3Dゲームで必須だし
参照カウンターによるリソース管理
パーティクル
拡張したマテリアル(テクスチャスクロールとか)

まあDXライブラリはDitrctXの薄いラッパでしかないからいいんじゃない?
必要だと思えば自分で実装してもいいんだし

171 :名前は開発中のものです。:2013/07/22(月) NY:AN:NY.AN ID:BrTtyz7d
DXlibはゲームライブラリじゃなくてマルチメディアライブラリだから(震え声)

172 :名前は開発中のものです。:2013/07/22(月) NY:AN:NY.AN ID:KkhWYzJ6
シーングラフ
レイキャスト
コリジョン検出
アニメーション
リソースマネージャー
最低これぐらいは欲しいな。
こんなの個人で再実装する価値はないので
共通基板として使いやすいライブラリを整備して欲しいわ

173 :名前は開発中のものです。:2013/07/22(月) NY:AN:NY.AN ID:Mz7t6BiK
>>172
> こんなの個人で再実装する価値はないので

ん。ライブラリにあったら便利なのは同意だが、こういう言い方で切って捨てようとする人って、
大抵自分で具体的なロジックが書けず、実装出来ないまま開き直ってる人だ。
書けない自分は何も悪くない、くれない奴が悪い、みたいに。

174 :名前は開発中のものです。:2013/07/22(月) NY:AN:NY.AN ID:BBBPUbUN
というかむしろ詳しそうだし補助ライブラリ作って公開してほしいな

175 :名前は開発中のものです。:2013/07/22(月) NY:AN:NY.AN ID:IM02LFGg
>>174
素直にゲームエンジンや他のライブラリ使えよ

176 :名前は開発中のものです。:2013/07/22(月) NY:AN:NY.AN ID:Mz7t6BiK
多分無理だと思うぜ。何故なら普通は実際に書くと
「汎用性の前提があった上で、どこまでを処理単位の属性にすべきで、どこを決め打ちの固定仕様にするべきか」
って言う設計レベルでジレンマがやってきて、
それはそのライブラリ使って作れる物の制限を生むので、自分が作りたい物によっては使いにくいライブラリになり得るから、
結局アプリケーションの要件次第では別に実装する事になるので、「個人で作る価値はない」なんて台詞は出るわけ無いんだよ。経験があるならば。
その辺がテキトーに見えるので、彼では書けない。

あと、自分の代わりに実装してくれる別の個人がいるって事も頭から抜け落ちてる時点で、ただの「言葉だけ知ってる失礼な人間」だ。

177 :名前は開発中のものです。:2013/07/22(月) NY:AN:NY.AN ID:KkhWYzJ6
今さらドラクエレベルのゲームに要件次第とかないわー
ワンダと虚像と塊魂が作れるライブラリならともかく、
ゲームなんて決まり切った処理の繰り返し

178 :名前は開発中のものです。:2013/07/22(月) NY:AN:NY.AN ID:STMPs5oo
>>177
> ワンダと虚像と塊魂が作れるライブラリならともかく
えっ、DXライブラリだと作れないの?

179 :名前は開発中のものです。:2013/07/22(月) NY:AN:NY.AN ID:Mz7t6BiK
どこからドラクエレベルとかワンダとなんとかの話が出てきたんだよ知ったかぶり野郎

180 :名前は開発中のものです。:2013/07/22(月) NY:AN:NY.AN ID:4PGrqMWj
上級者ヅラしてエラソーに他力本願でトンチンカンな批判をして、
その後に、じゃあお前が作って晒してみろって煽る流れとか、なんかKazuki臭い。

181 :名前は開発中のものです。:2013/07/22(月) NY:AN:NY.AN ID:8xMc8T1J
117の書き込みはなんというか「口だけ達者な人間のセリフ」のお手本のようだ。

182 :名前は開発中のものです。:2013/07/22(月) NY:AN:NY.AN ID:FyWL1YGe
3D接触処理って軽量化どうしてる?
球体の判定だけでも結構負荷かかりそうで
想定してるオブジェクト数は最大で24*32(768)個ぐらい
実際は半分ぐらいだと思う

183 :名前は開発中のものです。:2013/07/22(月) NY:AN:NY.AN ID:BBBPUbUN
本当にそれだけだったらタダで間に合うよ

184 :名前は開発中のものです。:2013/07/22(月) NY:AN:NY.AN ID:nNVuwDHt
>>182
絶対に当たらない組み合わせを、あらかじめ弾いておくのが
とりあえずのセオリーかしら?

185 :名前は開発中のものです。:2013/07/22(月) NY:AN:NY.AN ID:ckpg4k2+
KkhWYzJ6とMz7t6BiKが同一人物の自演さんか
くっせぇスレになったもんだな

186 :名前は開発中のものです。:2013/07/22(月) NY:AN:NY.AN ID:ckzbXG2O
>>182
8分木空間分割でググるといい
俺はBulletPhysics使ってる

187 :名前は開発中のものです。:2013/07/23(火) NY:AN:NY.AN ID:mcze7PQd
>>186
めんどくさそうだけどビットで判断するあたり、早そう


円だけなら一次判定で、xyz座標それぞれの半径分近くなってないかとかで弾けそうかとおもえてきた

188 :名前は開発中のものです。:2013/07/23(火) NY:AN:NY.AN ID:F/7eBvxu
よくわからんけど
>>177は知ったかぶりさんということか
そういうのはすごく恥ずかしいと思う

まだ知らないなら知らないで押し通した方がいいと思う
知らないのにカッコ付けたいだけで
わざわざ醜態を晒すとか恥ずかし過ぎる

189 :名前は開発中のものです。:2013/07/23(火) NY:AN:NY.AN ID:yj0nWf/n
>>185
Mz7t6BiK の方は俺だけど、どう見たら自演になるんだよ
「価値は無い」って言い切ってるのが、わかってる人間なら思わない不自然な台詞だから突っ込んだんだよ
ちゃんと読み返せ

190 :名前は開発中のものです。:2013/07/23(火) NY:AN:NY.AN ID:xbeEJt/R
傍で見てれば解るから気にするな。

191 :名前は開発中のものです。:2013/07/23(火) NY:AN:NY.AN ID:RawsS/YU
自演祭りの会場と聞いて

192 :名前は開発中のものです。:2013/07/24(水) NY:AN:NY.AN ID:9hIPTzbI
しょーもないな、お前ら…

193 :名前は開発中のものです。:2013/08/02(金) NY:AN:NY.AN ID:BueokvPL
なんかこのひと月ぐらいの間で
公式のどっかの質問でマルチスレッド実装についての注意点みたいなのを
管理人さんが答えてたと思うんだけど
どこだったか憶えてる人いない?
見当たらないんだ

194 :193:2013/08/02(金) NY:AN:NY.AN ID:0/9fiY+I
すまん自己解決した
随分前のトピックだったわ
2010年のトピックだったけど下の注意点って今も変わってないのかな


>DXライブラリを使用したマルチスレッドのプログラムを作成する際に注意すべきことは

・サウンド・画像・モデルの読み込み関数や描画や描画の設定を行う関数を複数のスレッドから同時に呼ばないこと

・入力関係の関数を複数のスレッドから同時に呼ばないこと

・サウンド関係の関数を複数のスレッドから同時に呼ばないこと

です、
モデルに関して言えば MV1LoadModel、MV1DrawModel、MV1DrawMesh、MV1DrawFrame は、複数のスレッドから
呼ぶのは避ける必要があります( つまり描画を行うスレッドは一つにする必要があります )
MV1SetPosition や MV1SetAttachAnimTime や当たり判定などの描画を行わない関数は複数の
スレッドから同時に呼んでも問題ありません

195 :名前は開発中のものです。:2013/08/10(土) NY:AN:NY.AN ID:iuGss2xM
C/C++ゲーム製作総合スレッド Part3
のほうでも少し質問したのですが、
DrawPolygonIndexed3Dで描画するポリゴンはDXライブラリが標準で装備しているZバッファに適用されるのでしょうか?

また、エフェクトに使用するので半透明要素を含むテクスチャを使うのでZソートするのですが、
DrawPolygonIndexed3Dは渡した頂点配列をその場で描画し始めるんですよね
どのようにして実装したらいいでしょうか?

負荷軽減のために一気に描画したいというのもありまして・・・

196 :名前は開発中のものです。:2013/08/12(月) NY:AN:NY.AN ID:tVMZTkce
3dゲームの地形作るのに、どのソフトを使ってますか?
メタセコだと地形はツライ気がするので………。
もしvueとか使えるなら楽なんですが。

197 :名前は開発中のものです。:2013/08/13(火) NY:AN:NY.AN ID:zT/b0f+/
>>196
Vueだともはやモデリングすらしない訳だけど、そこで言ってる楽ってのは、形状を作成するだけの話?
つまりコリジョンの作成とか自分の中の管理の都合とか放っておいて、ただ表示用の形を作る部分について、
例えば極端に言えばボタン一つ押したら思ったような形が出来たらいいな、みたいな。

198 :名前は開発中のものです。:2013/08/13(火) NY:AN:NY.AN ID:96C41T7F
>>197
「楽」という表現は不用意でした。
どのソフトを使おうが、それなりの地形を作ろうと思えば相応の苦労があるのは
分かっているつもりです。
ただ、形状もそうですが、テクスチャや木などの設置を考えた場合、
やはり地形専用のソフトであるvueの方が向いているのではないかと
思ったからです。

199 :名前は開発中のものです。:2013/08/13(火) NY:AN:NY.AN ID:zT/b0f+/
>>198
その「こっちのソフトの方が向いていてる」と思った理由は何なのかって話。
なんでこの質問を返すかと言うと、形状だけって話なら、BryceとかVueの方がそれに特化してて、自動生成してくれる部分もあるが、
結局そこで作ったモデルデータを自前のプログラムに読んで、かつコリジョンなんかの設定をして、かつ自分の都合で管理する事になるから、
その点を含めた時、「どれが向いてるか」って話も変わるわけで。

ちなみに俺はBlender使ってるけど、その理由はモデリングソフトとして地形製作に向いてるって言う話では無くて、自分が慣れてるからってのと、
あとBlender用のスクリプト作ってコリジョンデータ含めて自分フォーマットで出力させてるからって言う、俺の都合による。

200 :名前は開発中のものです。:2013/08/13(火) NY:AN:NY.AN ID:m+NIrzIz
3Dってよくわからないんですけど
実際に描画されてるポリゴンの頂点使ってコリジョン判定するんですか?
それとも簡易的なモデル(長方形を連結して形成されただけのような)に、
描画モデルの同じボーン・アニメーションを指定して、衝突判定だけ簡易モデルの方を使うって感じでしょうか

というか処理が重そうですけど、大丈夫なんですか?3次元での距離判定でも結構持ってかれそうな気がするんですけど
角度を持つ長方形とかってめんどくさそう

201 :名前は開発中のものです。:2013/08/13(火) NY:AN:NY.AN ID:k1Y9Y3rO
2Dだって、画像の他に当たり判定用の座標を持つだろ? それと似たようなもん。

202 :名前は開発中のものです。:2013/08/14(水) NY:AN:NY.AN ID:g36cvXmF
>>200
大抵は別。実際に描画される頂点が少ないなら描画用を流用することもあるが、
普通は別。なぜなのかは、コリジョンの判定計算を勉強しておくれ

203 :名前は開発中のものです。:2013/08/15(木) NY:AN:NY.AN ID:cmS+cFHD
昔のアーマードコアは適当なボックス判定だったけど
今のはガチでポリゴンに同期してるよ

204 :名前は開発中のものです。:2013/08/15(木) NY:AN:NY.AN ID:KJrkH+xK
アマコアだかMHだかは重要なもんの数は少ないからか

205 :名前は開発中のものです。:2013/08/15(木) NY:AN:NY.AN ID:vLsLWx5i
>>203
それはConvex-Hullの事をガチって言ってるのか、それとも飾りの突起まで含めて表示用メッシュ同士を計算に使ってるのかどっち?
当たり判定用の荒いメッシュって、何も単純なボックス一個とかの極端な話じゃないよ

206 :名前は開発中のものです。:2013/08/15(木) NY:AN:NY.AN ID:rZIVXUnn
というか不特定な座標を持つ頂点からなる不特定な面数の立方体をどうやって判定するんですか
OBBとかいうやつですか?
ヒントヒント!

207 :名前は開発中のものです。:2013/08/15(木) NY:AN:NY.AN ID:vLsLWx5i
>>206
少なくとも「不特定」では無いはずだし、
普通は面について言えば三角の集合。どんな多角形であっても。

立体の交差判定とかでググればいいと思う。それか、nVidiaの厚い本とか

208 :名前は開発中のものです。:2013/08/15(木) NY:AN:NY.AN ID:vLsLWx5i
で、それを真面目に計算したらやってられないから、
頂点数の少ない凸包による代理形状同士の交差判定するの。
で、それでと量が多いとしんどいから、距離による取捨を事前に行うの。

209 :名前は開発中のものです。:2013/08/15(木) NY:AN:NY.AN ID:rZIVXUnn
三角形で構成された立方体の中に、別の立方体が完全に内包されていたらどうやって判定すればいいんですか?
それだと面どうしが接触している時だけですよね

210 :名前は開発中のものです。:2013/08/16(金) NY:AN:NY.AN ID:l4Y2LCwf
重力計算のジャンプと、
フレームごとのy座標テーブル のジャンプって
どう違うのですか?
詳しくお願いします。

211 :名前は開発中のものです。:2013/08/16(金) NY:AN:NY.AN ID:F5bNk7nI
テーブルは計算する必要が無いから早い
でもあらゆる状況に対応するデータを作るのは面倒かも
重力からその場で計算すると状況との矛盾は少なくなりやすいがテーブルに比べて処理が重いかも

212 :名前は開発中のものです。:2013/08/16(金) NY:AN:NY.AN ID:zJzEkpmi
>>209
そうだよ。詳しい事知りたかったら自分でbulletPhysicsのソースでも追いかけて。
ソースと言うか、先にクラス構成見て何故そうなってるのか把握して実際に使ってみると見えてくると思うけど。

213 :名前は開発中のものです。:2013/08/16(金) NY:AN:NY.AN ID:Je7og0CV
MMDを使って、PS3箱のアイマス風の画面を背景にする音ゲーを作ろうと思っていまして、
3キャラ2曲2ステージぐらいを予定してます。
プレイ中のスコアによるモデルの動きの変化などはつけるつもりがないので、予め動画を用意しようと
思うのですが、モーションのファイルを渡してリアルタイムで動かすのとどっちがいいですかね?

214 :名前は開発中のものです。:2013/08/16(金) NY:AN:NY.AN ID:DoWkm/gi
DIVAみたいなのを作りたいってことかね

個人的にはレンダリング済みのムービーではなく
モデル+モーション+カメラモーションを渡してその場でレンダリングする方がいいと思う

そう考えた理由は、
・モデルの差し替えとかカメラの動きの変更とかが楽そう
 ムービーだと全部再レンダリングする必要が出る気がする
・ムービーだとファイル容量的に結構きつそう

MMD回りの知識は無いので細かい所はわからないから
もしかしたら↑の利点は大したことじゃないかもしれないけど…

215 :名前は開発中のものです。:2013/08/16(金) NY:AN:NY.AN ID:TPaGv75X
ムービーだったら化石PCでも動くかもしれないのでうれしい

216 :名前は開発中のものです。:2013/08/16(金) NY:AN:NY.AN ID:l4Y2LCwf
>>211
説明してくれて嬉しいんだけど、
プログラムの組み方(ジャンプの作り方)の違い?も
詳しめに説明お願いします

217 :名前は開発中のものです。:2013/08/16(金) NY:AN:NY.AN ID:T+X3Yd9T
超詳しく説明してあげよう

あらかじめ計算した移動量とかのデータを配列変数に入れておくんだよ

218 :名前は開発中のものです。:2013/08/16(金) NY:AN:NY.AN ID:zJzEkpmi
>>213
MMD使ってって言ってる時点で、MMDでレンダしたムービー(aviなど)を再生したいって事だよな

219 :名前は開発中のものです。:2013/08/17(土) NY:AN:NY.AN ID:ybNRCsu9
>>217
>あらかじめ計算した移動量とかのデータを配列変数に入れておくんだよ

え、想像だにしなかった説明だわ、、、
計算した移動量を入れた配列をどう扱うの。
しかも、それは"フレームごとのy座標テーブル のジャンプ"の話ですか?

220 :名前は開発中のものです。:2013/08/17(土) NY:AN:NY.AN ID:0LNl2nPC
>>219
多分毎回のジャンプが同じ軌跡をたどる場合、座標の移動量だけ並べとくって話だと思う
あんまり意外でもない普通の話だ

221 :名前は開発中のものです。:2013/08/17(土) NY:AN:NY.AN ID:z/PrNZy5
>>219
簡単でしょ
ジャンプ中の

y=元の位置+重力計算(フレーム数)



y=元の位置+テーブル[フレーム数]

に置き換えるだけ

222 :名前は開発中のものです。:2013/08/17(土) NY:AN:NY.AN ID:7Xlhg6gd
便乗だが、俺も知りたい
高さが固定のジャンプはそのまんまだろうけど、マリオみたいな
ボタンを押す長さで高さが変わるようなジャンプはどうやってるんだろ
素人の考えだと上りと下りのテーブルを分けてボタンが離されたら
切り替えるって方法しか思いつかない

223 :名前は開発中のものです。:2013/08/17(土) NY:AN:NY.AN ID:ybNRCsu9
>>221
解説が端的というか、短かすぎて何言ってるかわからないよ。
カヲルくん、君がなにを言ってるかわからないよ。
もっとバカ(プログラム初心者)でもわかるように
順序立てて解説してほしい。
っていうか、「フレームごとのy座標テーブルのジャンプ」って
もしかして、予め配列にいれている数値をフレームでまわして与えるだけなの??
それで、壁なんかにぶつかったら、yを減らして下に落とすとか。
そいうこと????そんな単純な正体だったの??

224 :名前は開発中のものです。:2013/08/17(土) NY:AN:NY.AN ID:sBWW2za0
>>222
マリオは小ジャンプも長押しジャンプも初速は同じ
ボタンが離されるか一定フレーム経過るまで一定(一定じゃなくても減速を抑えた)の速度で上昇させて
それから上昇速度を毎フレーム減らせば、そのうち速度がマイナスになって落下し始める

ボタンを押した時間によって、離してからの落下開始までの時間を変えたいなら
押した長さを掛けたり割ったりして調節するとか、上昇速度を押してる間に調節する

テーブルなら
tbl=5,4,3,2,1,0,-1,-2,-3,-4,-5
ってなってるとして
ボタン押されてる間はtbl0だけ見るようにして
離されたらtbl1とずらしてく

225 :名前は開発中のものです。:2013/08/17(土) NY:AN:NY.AN ID:ybNRCsu9
訂正
yを減らして下に落とす

yを増やして下に落とす

226 :名前は開発中のものです。:2013/08/17(土) NY:AN:NY.AN ID:llb+GKno
またマリオか

227 :名前は開発中のものです。:2013/08/17(土) NY:AN:NY.AN ID:9jJD2zAK
マリオのジャンプってよく話題に上がるけどなんでなんだろうな
少し観察して考えたらわかりそうなもんなのに

228 :名前は開発中のものです。:2013/08/17(土) NY:AN:NY.AN ID:fpHgg1rt
パワーのないファミコンでの実装なんだから
単純なのはそうだろう

229 :名前は開発中のものです。:2013/08/17(土) NY:AN:NY.AN ID:fpHgg1rt
ファミコンの驚くべき発想力 -限界を突破する技術に学べ-
ttp://www.amazon.co.jp/dp/4774144290

230 :名前は開発中のものです。:2013/08/17(土) NY:AN:NY.AN ID:0LNl2nPC
>>222
> ボタンを押す長さで高さが変わるようなジャンプはどうやって

押す長さによってn倍したらいいじゃない

231 :名前は開発中のものです。:2013/08/17(土) NY:AN:NY.AN ID:fpHgg1rt
押してる間は配列のインデックスを増やしていって
離されたら配列のインデックスを減らしていけばいいじゃない

232 :名前は開発中のものです。:2013/08/17(土) NY:AN:NY.AN ID:0LNl2nPC
多分それは配列に持っとくデータ内容の意味合いが違う気がする

233 :名前は開発中のものです。:2013/08/17(土) NY:AN:NY.AN ID:029MaZhB
なんでお前達って3D描画関係の話題だと俺でも理解できないような会話始めるのに
こういう基本アルゴリズムの話になると急にバカっぽくなるのはどうしてだよw

234 :名前は開発中のものです。:2013/08/17(土) NY:AN:NY.AN ID:WrtgfiKZ
まぁいろんな人がいるからね(適当

235 :名前は開発中のものです。:2013/08/17(土) NY:AN:NY.AN ID:9jJD2zAK
カメラの位置によって広域なマップってどうやって描画してんの?
マップを京都のあの変な街みたいにブロックごとにわけて
現在位置を中心に生成するフォグで見えなくなるぐらいの距離のブロックまで描画するうんたらかんたら?

236 :名前は開発中のものです。:2013/08/17(土) NY:AN:NY.AN ID:9jJD2zAK
アサシンクリードやGTAみたいなのが気になる

あとエースコンバットの地平線とかどうやって表現してんだ?
高度あげると地形マップが四角なってるのが見えちゃう
かといってこれ以上Zバファの探索距離を伸ばすと処理能力がきついからマップ広げられないし、
遠くなるだけで四角く見えなくなるわけでは無いだろうし

237 :名前は開発中のものです。:2013/08/17(土) NY:AN:NY.AN ID:z/PrNZy5
>>235
Level of Detailでググれ

238 :名前は開発中のものです。:2013/08/18(日) NY:AN:NY.AN ID:YlvB6n+h
>>237
LODってカメラとオブジェクトの距離を一個一個測って描画するモデルを決めるの?

239 :名前は開発中のものです。:2013/08/18(日) NY:AN:NY.AN ID:/odHbjnt
>>238
最低限がそうだよ。俺は区画の論理マップ用意しておいてそれに対して計算するけど、
相手が物理座標じゃないだけでやってる事はそう。

で、本当のLOD処理になるとそれプラス、距離に応じて頂点数異なるメッシュに切り替えたりもする。
何故ならアップで見えて欲しいディテールと遠景で最低限必要なディテールは異なるから

240 :名前は開発中のものです。:2013/08/18(日) NY:AN:NY.AN ID:/odHbjnt
簡単に言うと、カメラの死角にあるものは描画しないし、近くにある木は枝の枝まで見えて欲しいが、
遥か遠景の木にそこまでのディテールは必要ないので簡素なモデルに切り替える。
テクスチャについても同じ理屈

241 :名前は開発中のものです。:2013/08/18(日) NY:AN:NY.AN ID:YlvB6n+h
なるほど、あとひとつ
カメラの向いてる方向から、オブジェクトの座標をみて、そもそものZバッファ登録を間引いたりする?
間引くとしたら、巨大なオブジェクト、例えば重心がカメラの後ろにあるのに描画範囲内に頂点があるようなオブジェクト
とかってどうすればいい?

242 :名前は開発中のものです。:2013/08/18(日) NY:AN:NY.AN ID:En0xzz23
自分>>222だが>>224のアドバイスを参考にしてサンプルをつくってみた

http://www1.axfc.net/uploader/so/3000313
pass:jump

重力計算のほうは、とりあえず最大値でジャンプしはじめてボタンが離された瞬間に
最小値に切り替えるようにしたらそれっぽくなった

問題はテーブルのほうなんだが、いろいろいじってみたけどやっぱりわからない
とくにブロックとの当たり判定とか自由落下が加わるとややこしくなってさっぱり
根本的につくり方が違ってるんだろか・・・

243 :名前は開発中のものです。:2013/08/18(日) NY:AN:NY.AN ID:tDjaOJ/W
マリオのジャンプテーブルは、色々と調整してみた結果、
(ファミコンで可能な範囲で)計算するより、手作業で数値を突っ込むのが一番心地いいジャンプになった、ってだけの話?

244 :名前は開発中のものです。:2013/08/18(日) NY:AN:NY.AN ID:6KynyCiG
8bitのCPUが貧弱だからだよ

245 :名前は開発中のものです。:2013/08/18(日) NY:AN:NY.AN ID:UZic/wA2
>>242-243
正解?を言うと
テーブルを作る手間は非常に面倒臭いのでファミコン時代ならともかく今のPCゲームじゃ普通に計算するのが当たり前
sincosとかは今でも遅いからsin0°,sin1°…といった値をテーブル化して計算の途中で参照する手法はある

246 :名前は開発中のものです。:2013/08/18(日) NY:AN:NY.AN ID:JwVlU+v6
重力計算でできたんならその計算結果をテーブルに入れて、
計算結果を参照する代わりにそのテーブルを参照すればいいだけじゃないの

247 :名前は開発中のものです。:2013/08/18(日) NY:AN:NY.AN ID:JwVlU+v6
少数の計算が遅いからそれを避けるためにテーブルにしたってだけよ

248 :名前は開発中のものです。:2013/08/18(日) NY:AN:NY.AN ID:JwVlU+v6
てか少数演算自体がファミコンじゃできないのかな

249 :名前は開発中のものです。:2013/08/18(日) NY:AN:NY.AN ID:/odHbjnt
>>241
俺のやってる方法は別に完全無欠な訳じゃないからアレだけど、
とりあえずZバッファの部分的なクリアやdiscardみたいな事はしてなくて、そもそも対象外のオブジェクトをドローさせないようにしてる。

で、それとも繋がるけど、重心がカメラの後ろにあるがカメラの前に部分的に見えるほど巨大な物に関しては、
なるだけそう巨大にならないよう分割管理してる。

勿論それでも程度問題で重心とオブジェ
クト半径の間にカメラが来る事は普通にあるんだが、その場合は基本的に描画する。
で、その1描画に対してどれだけの頂点量なりが必要なのか、って話で、それを減らすためにバランスみて分割し、
巨大にならないようにするって感じ。それだけ

250 :名前は開発中のものです。:2013/08/19(月) NY:AN:NY.AN ID:QbLSnPSI
constexprを使おう!

251 :名前は開発中のものです。:2013/08/20(火) NY:AN:NY.AN ID:1ERmh1yM
>>242
すまん、VSでいじって研究したいから
ついでにMap、Graphic、Commonらのソースもつけてくれん?

252 :名前は開発中のものです。:2013/08/20(火) NY:AN:NY.AN ID:IRDYNLNe
>>251
いらないだろ。研究したいとか嘘つけ

253 :名前は開発中のものです。:2013/08/20(火) NY:AN:NY.AN ID:1ERmh1yM
嘘じゃ無いよ
なんで嘘呼ばわりされるのか

確かにジャンプそのものの構造は入ってるソースでわかるし
includeで必要な外回りも自分で作って補えば済むが
全部渡してもらった方が、その場で色々触れるんだから
話が早いじゃないか。

254 :名前は開発中のものです。:2013/08/20(火) NY:AN:NY.AN ID:nE/aKjYE
秘伝のソースなんだから見知らぬ人にあげられるわけないだろ

255 :名前は開発中のものです。:2013/08/20(火) NY:AN:NY.AN ID:1ERmh1yM
なら聞いてみようよ

>>242
秘伝なのかい?

256 :名前は開発中のものです。:2013/08/20(火) NY:AN:NY.AN ID:IRDYNLNe
>>253
要点は書いて頂いたんだからそれ以上いらないだろっての
秘伝とかどうでもいいよ

257 :名前は開発中のものです。:2013/08/20(火) NY:AN:NY.AN ID:RYMPR0Rz
桃伝のソースがもらえると聞いて

258 :名前は開発中のものです。:2013/08/20(火) NY:AN:NY.AN ID:G84eq+RC
まあコピペしてゲーム作りたいんだろ

259 :名前は開発中のものです。:2013/08/20(火) NY:AN:NY.AN ID:B7CRSuVs
自分で作れるなら作ればいいだけ。
他人に何かさせて「その方が早い」とか言うのは失礼極まりない。

新入社員が「自分がやるより先輩がやるほうが早いし効率いいじゃないですか」と
先輩に全部仕事丸投げして自分は何もせずいたらどう思うよ。

260 :名前は開発中のものです。:2013/08/20(火) NY:AN:NY.AN ID:1ERmh1yM
コピペしただけでゲームが出切るわけないだろうに。
別にマップ製作のソースに興味無いよ。

そんなこと疑うんなら、他の誰でもいいから
include消してVSでただのジャンプソースをビルド出来るようにしたのを
うPし直してくれ。
別にこっちはそれで結構だから。

261 :名前は開発中のものです。:2013/08/20(火) NY:AN:NY.AN ID:G84eq+RC
なんで偉そうな態度の乞食に赤の他人がそこまでしてやらにゃいかんの?w

お前みたいにウザい奴は罵倒して放置でおしまいだって

262 :名前は開発中のものです。:2013/08/20(火) NY:AN:NY.AN ID:yj0CkddT
とりあえずみなさん落ち着いてください。

信じるか否かは本人の判断を見て待つということでいいじゃないですか。
無駄に争うのはやめましょうよ。

263 :名前は開発中のものです。:2013/08/20(火) NY:AN:NY.AN ID:Am+EJSmE
うざい奴はうざいと言われるのが2chなんでしゃーない

264 :名前は開発中のものです。:2013/08/20(火) NY:AN:NY.AN ID:1ERmh1yM
>>261
お前が疑うからだろ、バカが。
行動出来ないなら口出すな、ハゲ

265 :名前は開発中のものです。:2013/08/20(火) NY:AN:NY.AN ID:t4onr7Y1
いや、行動できてないのはお前さんなんだが。

266 :名前は開発中のものです。:2013/08/20(火) NY:AN:NY.AN ID:WhQ/JuG7
ま、叩かれた乞食が発狂するお決まりの展開だよねw

267 :名前は開発中のものです。:2013/08/20(火) NY:AN:NY.AN ID:t4onr7Y1
お決まりというか、同一人物だよね?

268 :名前は開発中のものです。:2013/08/22(木) NY:AN:NY.AN ID:wVDRP+4w
DXライブラリ使った事無いんだが、一回くらい使ってどこまで省力出来るか実験してみようかな…

269 :名前は開発中のものです。:2013/08/22(木) NY:AN:NY.AN ID:CSnKabCO
ウィンドウ作るところからやるなら労力は激減すると思う。
既存のゲーム用ツールやエンジンからの比較だと増えると思う。

270 :名前は開発中のものです。:2013/08/22(木) NY:AN:NY.AN ID:eHD9Ed8s
ライブラリ乗り換えの場合でも単にリファレンス読む手間が増えるだけだよなw
他のDirectXライブラリを使えてるなら乗り換えでの大きな省力メリットは特にない

271 :名前は開発中のものです。:2013/08/22(木) NY:AN:NY.AN ID:oiYpijdQ
就活用の作品でDXライブラリ使っても良い?
それともゲームとしてのインパクト薄くなるけど直にダイレクトえっクス叩いたほうがいい?

272 :名前は開発中のものです。:2013/08/22(木) NY:AN:NY.AN ID:rGrXrxQf
技術力を訴えたいかアイディアを訴えたいかによるだろうなぁ。
斬新なゲームならライブラリ使っても良いんだろうけど、
3Dプログラミング出来ますって言って
DXライブラリ使われるとどうだろうね。
unityだとまた話違うだろうけど。

273 :名前は開発中のものです。:2013/08/22(木) NY:AN:NY.AN ID:oiYpijdQ
DXライブラリ使うならアイデア路線ってことは、就活に使うなら別途企画書とか必要な訳・・・

274 :名前は開発中のものです。:2013/08/22(木) NY:AN:NY.AN ID:yqWqUxZT
太鼓の達人的な叩き方のゲーム作りたいんだけど、参考になりそうなサンプルない?
太鼓の鉄人をみてループで行うべき機能は大体わかったけど書き方が分からない

効果音フラグを初期化
入力に対する計算
弾の計算メイン
弾ヒット結果表示メイン
描画メイン
FPS表示
効果音
fps制御

ちなみにそのゲームではこういう感じで回してた

275 :名前は開発中のものです。:2013/08/22(木) NY:AN:NY.AN ID:wVDRP+4w
>>269 >>270
thx。どう言う場合に適用するか、って意味の評価をしたいだけなのだ。
既存って意味だと、基本的にwin32に関わる部分はずいぶん前に作ってちまちま改良した自前のライブラリがある。
その他既成の物だと、OGRE3Dやbulletは慣れてる。C#の場合はUnityも。

276 :名前は開発中のものです。:2013/08/22(木) NY:AN:NY.AN ID:Kq21EhtV
それだけできるならリファレンス流し読みで自分にとっての省力化になるかわかりそうなもんだけどね
そういや本家の掲示板にエラーわかる!C結構できる!でもpathの通し方わかんない!ってコがいたなあ

277 :名前は開発中のものです。:2013/08/22(木) NY:AN:NY.AN ID:wVDRP+4w
今晩帰ったらリファレンス見てみるぜ

278 :名前は開発中のものです。:2013/08/22(木) NY:AN:NY.AN ID:wVDRP+4w
と思ったが今晩無理なので今週末土日のどっちか休めた日に。
障害対応まだ終わんね

279 :名前は開発中のものです。:2013/08/25(日) NY:AN:NY.AN ID:NwBbjewo
なあ今まで長いことアクションのゲーム部分ばっか実装してて、
勝手に例にして悪いけどmain関数が>>274みたいになってるんだけど
メニュー画面とか実装していくなら>>274のようなゲーム部分(初期化、ループ処理、終了処理)はひとまとめにして
メインメニューのコンテンツがmainに並んで選べるようにする感じ(ゲーム処理関数、コンフィグ変更処理関数、など)しか思いつかないんだけど
これってどうなのかな
みんなmainになに置いてる?

280 :名前は開発中のものです。:2013/08/25(日) NY:AN:NY.AN ID:wOoNNvxi
main (){
auto Game =new TitleMenu();
while(???){
Game->Update();
}
delete Game;
}

281 :名前は開発中のものです。:2013/08/25(日) NY:AN:NY.AN ID:7sWlqmjO
十中八九>>280みたいな感じだよね
mainなんて現在のシーンの更新をループ回すだけ

282 :名前は開発中のものです。:2013/08/25(日) NY:AN:NY.AN ID:WgTgoMaK
俺はオブジェクト指向わからんけど、結局280みたいなのに落ち着いたな。もちろんオブジェクト指向関係なく。

283 :名前は開発中のものです。:2013/08/25(日) NY:AN:NY.AN ID:zLoY929s
うーん説明悪かったか俺がアホなだけなのか

今のところアクションゲームのゲーム部分だけしか作ってないから>>280みたいに
初期化→更新(ループ)→終了ってだけで済んでるけど、
例えば自機の装備変えるとか、ステージ選択とか実装するとすると
ゲーム部分以外の処理の初期化→更新(ループ)→終了があるわけじゃん

だから>>280みたいなのをゲーム、ガレージ、コンフィグ、とかっていくつか作って、
選んだ処理の初期化→更新(ループ)→終了を行うっていう風にしようとしてる俺は間違ってる?

284 :名前は開発中のものです。:2013/08/25(日) NY:AN:NY.AN ID:JNjQaEJv
>>283
最終的にはゲームが完成するのが「正解」ではあるのだろうけど、
あまり見ない作り方だと思う

各「画面」の下にループがぶら下がってるんじゃなくて、
ループの下に、各画面の処理を入れる。

285 :名前は開発中のものです。:2013/08/25(日) NY:AN:NY.AN ID:rF9fVw+b
初期化が関わる部分は専用フラグ作って
フラグごとに分岐するように組めばいいと思うの

自分はゲーム作る時にモードフラグの分岐で
タイトル含めて各種画面処理にいけるよう分けてる

286 :名前は開発中のものです。:2013/08/25(日) NY:AN:NY.AN ID:YgD7yi63
ゲームに限らずユーティリティ作るときもそうだけど、大抵は処理のレイヤ毎に整理するかな。
で、メインループとかはそれで言うと最下層。
各処理レイヤの分離量や度合いは概要(基本)設計から下ろしながら決めてく感じ

287 :名前は開発中のものです。:2013/08/25(日) NY:AN:NY.AN ID:wOoNNvxi
マルチスレッドで当たり判定とかする場合
結局キャラクタが当たり判定の結果を処理するまで次の判定できないわけじゃん
これってただしいの?

288 :名前は開発中のものです。:2013/08/25(日) NY:AN:NY.AN ID:+y0GKsDZ
おもにマルチスレッド化できそうなのは当たるか当たらないかだけのリストを作成するところ
当たった後の処理はゲームによっては不可能なのでそのあとにやる

289 :名前は開発中のものです。:2013/08/25(日) NY:AN:NY.AN ID:XZPuxib4
RPG等で使えるmap管理作ってみたんだけどこんなものでいいのかな・・?
http://www1.axfc.net/uploader/so/3006859

290 :名前は開発中のものです。:2013/08/25(日) NY:AN:NY.AN ID:YgD7yi63
>>287
そういう「ゲームロジック側の一部分を切り取ったものだけをマルチスレッド化」ってよっぽど事情が無いとやらないが、
やるとしたら >>288 みたいに候補のリストアップの荒い振り分けとか、あるいはフラグ列挙くらいかな。

大抵は音楽再生や描画や入力処理側と、ゲームロジックって切り口でスレッド分けるはするが

291 :名前は開発中のものです。:2013/08/25(日) NY:AN:NY.AN ID:BP/5fE+T
というか、逐次処理で問題がない部分を
わざわざ他スレッド処理にすると、無意味に新しい問題が発生するケースの方が多いからね

292 :282:2013/08/25(日) NY:AN:NY.AN ID:uoZNXz5i
>>283

俺も最初はそうやってたけど、ループ一本にすると管理や変更が凄く簡単になった。

293 :283:2013/08/25(日) NY:AN:NY.AN ID:zLoY929s
>>284 >>285
やっぱそうするほうがいいのかな
どうせ完全に独立してる処理だし>>283みたいにしたほうが
読みやすくて管理しやすいかと思ってたがそうでもないのか
よしじゃあこの方向性で作ってくことにするよ
>>292も経験談ありがとう

294 :名前は開発中のものです。:2013/08/25(日) NY:AN:NY.AN ID:wOoNNvxi
DestinationDirectionという目的地の方向を向いてるベクトルがあるのですが、
これがなぜか真逆を向いてるので、0から引いてみたのですが同じ方向をさしてしまいます。
どうしたらいいですか?

DrawLine3D(Position,VScale(VAdd(Position,DestinationDirection),500),321321);

DestinationDirection = VSub(VGet(0,0,0), DestinationDirection);

DrawLine3D(Position,VScale(VAdd(Position,DestinationDirection),500),121121);

295 :名前は開発中のものです。:2013/08/26(月) NY:AN:NY.AN ID:3sWaI00w
>>294
自分の経験だと、「なぜか真逆を向いている」という状況を見直さないと、今仮に直ったとしても、どこかでしわ寄せがくるよ

2行目が実行された後、DestinationDirectionはちゃんと更新されてる?
VECTORにoperator=が実装されていれば問題ないと思うけど

296 :282:2013/08/26(月) NY:AN:NY.AN ID:6Oe3V9HV
>今仮に直ったとしても、どこかでしわ寄せがくるよ

あるあるw

なんかおかしいな、っていうのは絶対どこかにバグがあるって事だからな。

297 :名前は開発中のものです。:2013/08/26(月) NY:AN:NY.AN ID:Mge8NhcZ
DestinationDirectionの作り方として、多分間違いではないと思うのですが・・・

今ブレークポイントで値を確認してみたところ、実行前と実行後でしっかり符号が反転してます。




//目的地へのベクトル
VECTOR DestinationDirection = VSub(目的地 , 現在地);

//座標系を自分視点に回転させる行列
MATRIX Rot= MGetAxis2(キャラクターのx軸,キャラクターのy軸,キャラクターのz軸,キャラクターの座標);

//回転適用後正規化
DestinationDirection = VNorm(VTransform(DestinationDirection,Rot));

298 :名前は開発中のものです。:2013/08/26(月) NY:AN:NY.AN ID:3sWaI00w
>>297

>>294でのDrawLine3Dに1行目と3行目で渡している引数は異なるけど、結果は同じ値だってこと?
あと、何でもかんでもDestinationDirectionにしちゃうと、どういう状態の値かわからなくなっちゃうよ
変数の使い回しは最小限にすべき(速度に致命的な問題がなければ)

299 :名前は開発中のものです。:2013/08/26(月) NY:AN:NY.AN ID:Mge8NhcZ
そうです、結果が変わらないんです。

目的地の座標を、オブジェクトの周りにグルグル動くように設置してみたのですが
DrawLine3Dがまったく動きません。。同じ方向を向いたまま・・
画面に目的地の座標と、オブジェクトの座標を描画させましたが両方共正常に動いてましたでした。

ということは
MGetAxis2の使い方が間違ってるんですか?

300 :名前は開発中のものです。:2013/08/26(月) NY:AN:NY.AN ID:3OaSUNAm
間違ってるかもしれないけど

もしかしてワールド座標の原点からキャラクターの座標離れてないか?
>>297だと「(ワールド座標原点から)目的地へのベクトル」を、
キャラクターのローカル座標に変換(ここで目的地〜現在地のベクトルが、キャラ〜原点の長さより微小だと、
いくら目的地〜現在地のベクトルを回しても「キャラから原点」のベクトルとほぼ等しいから動いてるように見えない)
さらに正規化してるのでベクトルが短くなって変化がわかりにくくなる

って処理になってる気がする
キャラクターの座標動かしてもベクトルが回らないなら俺が間違ってるけど

俺の言ってる通りなら
//目的地へのベクトル
VECTOR DestinationDirection = VSub(目的地 , 現在地);

= VGet(目的地)でいいと思うんだけど

301 :名前は開発中のものです。:2013/08/26(月) NY:AN:NY.AN ID:3OaSUNAm
訂正、
>>300の3行目
「(ワールド座標原点から)現在地〜目的地"方向"へのベクトル」

分かりにくい文章でスマン
●騒動で規制解除されてるとは思わんかった

302 :名前は開発中のものです。:2013/08/28(水) NY:AN:NY.AN ID: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));
こう書き換えてみて

303 :名前は開発中のものです。:2013/08/28(水) NY:AN:NY.AN ID:3z41TTVb
てす

304 :名前は開発中のものです。:2013/08/29(木) NY:AN:NY.AN ID:qMhNLM1k
>>242
このサンプルって、
テーブルジャンプに切り替えるボタンある?
画像には専用キャラが用意されてるみたいだけど。
それとも出来なかった、というオチなのかな

305 :名前は開発中のものです。:2013/08/30(金) NY:AN:NY.AN ID:3yecoD3A
     ∧_∧
ガラガラ(  ^^  ) <これからも僕を応援して下さいね(^^
  =〔~∪ ̄ ̄〕
  = □――◇                       Kazuki

306 :名前は開発中のものです。:2013/08/30(金) NY:AN:NY.AN ID:vDu0CoH6
http://userdisk.webry.biglobe.ne.jp/004/941/50/1/0802-01.gif
数値にこのような光彩は使えますか?

307 :名前は開発中のものです。:2013/08/30(金) NY:AN:NY.AN ID:8jH5p+TB
数値だけなら0-9の画像用意したほうが楽

308 :名前は開発中のものです。:2013/08/30(金) NY:AN:NY.AN ID:DDleui+F
ASCIIの文字くらいは用意しておくと、色々と便利だよね

309 :名前は開発中のものです。:2013/08/30(金) NY:AN:NY.AN ID:Ssi1qKK/
ゲームごとに違う自作フォント(というほど大げさなものではないが)用意するのは面倒臭いけどな……

310 :名前は開発中のものです。:2013/08/30(金) NY:AN:NY.AN ID:1LqvaBpR
フォトショ使えよ
一発だぞ

311 :306:2013/08/30(金) NY:AN:NY.AN ID:vDu0CoH6
なるほどありがとうございます

312 :名前は開発中のものです。:2013/08/30(金) NY:AN:NY.AN ID:Ssi1qKK/
>>310

なにが一発なの?

313 :名前は開発中のものです。:2013/08/30(金) NY:AN:NY.AN ID:8jH5p+TB
ソフトイメージを使って起動時にロード中と称して装飾数字画像作るのもありかな

314 :名前は開発中のものです。:2013/08/30(金) NY:AN:NY.AN ID:DDleui+F
実際に画像として出力する前の、テンプレート的なものをあらかじめ作っておけば、
確かにPhotoshop一発でいろんなパターンを作れそうだ

315 :名前は開発中のものです。:2013/08/30(金) NY:AN:NY.AN ID:um1F6koe
前に使う文字を加工して一枚画像に並べて吐き出すコード前に書いたな俺

316 :名前は開発中のものです。:2013/08/30(金) NY:AN:NY.AN ID:h4zjWU5X
フィールドが球面のRPGって過去に存在するんですか?

317 :名前は開発中のものです。:2013/08/30(金) NY:AN:NY.AN ID:8jH5p+TB
ドラクエだって見た目だけメルカトル化されてるだけで球面なんじゃないかな(震え声)

318 :名前は開発中のものです。:2013/08/30(金) NY:AN:NY.AN ID:JYnyjM+L
未だにオープンワールド系のゲームをdxlibで作るとなると
どうやって実装すればいいか思いつかない俺がいる
指定座標周辺のモデルだけを読み込み・描画する方法とかあったっけ
まあ作る予定は無いからわりとどうでもいいけど

319 :名前は開発中のものです。:2013/08/31(土) NY:AN:NY.AN ID:cGG2OHkX
>>318
あったっけって、俺はそうやってるけど。

320 :名前は開発中のものです。:2013/08/31(土) NY:AN:NY.AN ID:dzWCAUyj
いや、dxlibの関数をどう使って実現するかってこと
指定メッシュのみ描画とかあったっけ?
それともシェーダで切り捨てでもしてるの?

321 :名前は開発中のものです。:2013/08/31(土) NY:AN:NY.AN ID:cGG2OHkX
いや考え方は2Dと一緒で、地形パーツ並べてドローするだけだけど
見かけ上一続きに見える地形だからって描画物のデータまで一つにはしないでしょ
カメラに見える範囲の論理座標上にあるパーツだけを描画するだけ
シェーダで切り捨てって何かエラく曖昧で遠回りな発想だと思う

322 :名前は開発中のものです。:2013/08/31(土) NY:AN:NY.AN ID:N1LgE29S
>>312
一度、文字列レイヤーで等幅フォントをASCIIコード順に文字を並べておく
それのフォント指定を変えたりレイヤースタイルをいじったりすることでいろんなフォント画像をサクっと作れる

323 :名前は開発中のものです。:2013/08/31(土) NY:AN:NY.AN ID:3orXmSlx
でもその方法じゃ8*8ドットとかのいわゆるナムコフォントみたいなのは無理でしょう。

324 :名前は開発中のものです。:2013/08/31(土) NY:AN:NY.AN ID:8+o4Sg8P
何勝手に新たな縛り追加してんの

325 :名前は開発中のものです。:2013/08/31(土) NY:AN:NY.AN ID:EcHQDQad
こついらの出番だな
http://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

326 :名前は開発中のものです。:2013/08/31(土) NY:AN:NY.AN ID:EcHQDQad
こついらってなんだよ・・・orz

327 :名前は開発中のものです。:2013/08/31(土) NY:AN:NY.AN ID:dW7UjI6a
こんなのあるんか
便利そう

328 :名前は開発中のものです。:2013/08/31(土) NY:AN:NY.AN ID:iI9PofG6
IPAフォントは使いづらかろうに・・・

329 :名前は開発中のものです。:2013/08/31(土) NY:AN:NY.AN ID:rlru/+wN
>>321
遠い地形の部分ってどうするの?
フォグでかき消すの?

330 :名前は開発中のものです。:2013/08/31(土) NY:AN:NY.AN ID:rlru/+wN
ちょっと遠くを描画しようと思うとZバッファ描画が荒くなるんだけど
巨大なメッシュを遠くに描画すると、描画距離ギリギリのところでギザギザになる

331 :名前は開発中のものです。:2013/08/31(土) NY:AN:NY.AN ID:+kDqXWI/
>>323
アンチエイリアスあり・なしが設定出来るから、その形状のフォントを使えば出来る
レゲー再現フォントをゲームで使用する上での著作権の問題はしらん

あと>>325みたいなビットマップフォントを使えばレトロっぽい表現も不可能ではない

332 :名前は開発中のものです。:2013/08/31(土) NY:AN:NY.AN ID:1b4OllaI
>>321
そうか箱庭型ばっかり作ってたせいで確かになんか凝り固まってたわ
でも木とか建物はその通りで出来るけど地形なんかは難しくないか?
地形も単位塊に分解しておいて描画するの?

>>330
最近Zバッファのビット深度変更する関数追加されて
24(32)bit管理出来るようになったけどそれでもダメなの?

333 :名前は開発中のものです。:2013/09/01(日) 10:41:51.34 ID:sBWkVt02
>>332
今まで8ビットだったの?

334 :名前は開発中のものです。:2013/09/01(日) 10:43:46.93 ID:jFCnT/dx
アルファテストとかミップマップとかそういうのではないの?

335 :名前は開発中のものです。:2013/09/01(日) 18:19:53.79 ID:T8l+CxBq
>>333
今までは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 になります

336 :名前は開発中のものです。:2013/09/01(日) 19:53:47.16 ID:sBWkVt02
2バイトって最大数65535か

でも今までの3Dゲームって殆ど3バイトかそこらだったんじゃないの?
少なくとも2バイトだとレンダリングしてみた限りどうやっても遠くの方のZバッファがお粗末になるし
2バイトで解決できるならそれに越したことないし・・・

337 :名前は開発中のものです。:2013/09/01(日) 20:16:09.49 ID:Jb54ezv9
NearとFar比が極端だったりすると遠距離の精度落ちる
どうしても精度欲しいならシェーダーで自前で計算すれば
大半の環境では浮動小数点で24bit精度ぐらいはいける
DirectX9だからそこらへん面倒なんだよな

338 :名前は開発中のものです。:2013/09/01(日) 22:21:27.53 ID:yiwvfQEv
http://dixq.net/g/25.html
ここの下にあるプログラムでIsAbleToGoという関数のreturnがどういう動きをしているか
わからないんですが

339 :名前は開発中のものです。:2013/09/01(日) 22:24:12.11 ID:gGoLdIHG
C++初心者か?
returnは実行された時点で関数を終了する

340 :名前は開発中のものです。:2013/09/01(日) 22:31:18.89 ID:Jb54ezv9
中括弧が省略されてるから読みにくいだけで
自分で付け加えてみれば理解しやすい
コメントのエラーてのは関数の意味からすると間違いのような気もするが

341 :名前は開発中のものです。:2013/09/01(日) 22:46:08.86 ID:sBWkVt02
http://blog-imgs-26-origin.fc2.com/l/l/y/llyukinll/TERA_ScreenShot_20110809_182541.jpg

こういうのは、少なくともカメラからキャラクターまでの距離が最低値で、
街の向こうの巨大な岩山まで最大値として存在しているわけですよね。
Dxlibでこの画面を再現しようとすると、多分この距離だと街の城壁と、地面の間がギザギザになると思います・・・
変なテクニックとかないんでしょうか?

今LODと同じ描画距離を使うといい感じになりそうだと思ったんですけど、どうですかね?
高精度ポリゴンを描画する距離 10.0f 〜 1000.0f
低精度ポリゴンを描画する距離 1000.0f 〜 100000.0f
みたいな感じでLODを設定してたら、
同じ値でSetCameraNearFarでそれぞれ描画します。
つまり描画を2回に分け、1フレームに2回SetCameraNearFarを使用します。
SetCameraNearFarの速度と、1000.0f付近のオブジェクトが変なことになるかも??

342 :名前は開発中のものです。:2013/09/01(日) 22:49:10.02 ID:sBWkVt02
描画は1回で、Zバッファに登録するタイミングが2回に分かれるのかな??

Dxlibでこんな感じのことできるのかな
低精度ポリゴンを描画したあとSetCameraNearFar(10.0f,1000.0f);
とかしたら低精度ポリゴンのZバッファ登録がごっそり消えたりしないですか?

343 :名前は開発中のものです。:2013/09/01(日) 22:50:50.05 ID:Q6hJ8HWA
kazukiおかえり〜

344 :名前は開発中のものです。:2013/09/01(日) 23:10:53.87 ID:yiwvfQEv
>>339,340
ありがとうございます
returnが実行されると終了するのは理解しました
returnのあとの1と0はどこに返ってるのでしょうか?

345 :名前は開発中のものです。:2013/09/01(日) 23:38:10.35 ID:sBWkVt02
kazukiってもしかして俺にいってるの?
スレ内検索したら余り良いイメージじゃないな

346 :名前は開発中のものです。:2013/09/01(日) 23:47:21.06 ID:lf+IcCCv
>>345
kazuki云々はスルー推奨します

347 :名前は開発中のものです。:2013/09/02(月) 01:01:28.93 ID:QJgiu08R
>>344

if ( IsAbleToGo(ch.x,ch.y,ch.muki) == 1 ) 〜以下略

ここ。
この場合は、その return で返ってきた値が 1 だったら以下を実行するって事だね。

348 :名前は開発中のものです。:2013/09/02(月) 16:54:24.87 ID:8PlDEGpq
さすがにこれはkazukiじゃないだろ
ちょっと敏感になりすぎだな
本人が来ない限り荒れることもあんまりないとは思うけど

349 :名前は開発中のものです。:2013/09/02(月) 23:44:04.41 ID:UU3QmRU2
それで、Zバッファによる描画を二回行うと言うのは実用的な方法なんでしょうか?
クリップ距離を変えるのも速度が気になるし
クリップを変えたらZバッファの内容が消去されたりしちゃうのか

350 :名前は開発中のものです。:2013/09/03(火) 00:19:40.77 ID:WG2TGOYr
>>347
解決しましたありがとうございます

351 :名前は開発中のものです。:2013/09/03(火) 02:15:55.70 ID:fGZfDzyY
Zバッファの知識も3Dプログラミングの知識もあって,なんでおみゃーらDirectX行かないの?

352 :名前は開発中のものです。:2013/09/03(火) 02:23:51.44 ID:hziIzZtX
苦労して行く意味がないから

353 :名前は開発中のものです。:2013/09/03(火) 11:15:48.07 ID:IUCDpmVJ
いや必要なら普通にそのまま使うけど

354 :名前は開発中のものです。:2013/09/03(火) 11:58:41.36 ID:hziIzZtX
今DXライブラリじゃ無理でDirectXじゃなきゃ実装出来ない演出ってあるか?

355 :名前は開発中のものです。:2013/09/03(火) 12:07:01.91 ID:IUCDpmVJ
結局Dxライブラリをフロントに持ってきても、3D処理やシェーダについてはDirectXのレイヤで実装する訳だから、
そういう意味でも、Dxライブラリだけで何でも出来る訳じゃ無いでしょ

356 :名前は開発中のものです。:2013/09/03(火) 13:18:10.53 ID:hziIzZtX
言い方が悪かったな
DirectXを使うってのは要はDirectXのラッパを自分で書くということだから、
完成度の高いDXライブラリを使わず、自前でDirectXのラッパ用意してまでやりたいことがあるか?ってこと

DXライブラリは機能が豊富すぎて出来ないことが殆どないから自前でやる意味がないんだよ
一見出来なさそうなことも隠し関数をチェックすれば対応されてる
シェーダ関係や3D関係の処理も、DXライブラリでは使いやすいようにラッピングされてるし

まぁ個人的見解だから、他の人の意見も聞きたかっただけだ すまん

357 :名前は開発中のものです。:2013/09/03(火) 13:36:14.47 ID:qxxE0Ana
3Dはオプション豊富なOgre3Dに移行した
自前ライブラリはDirectX11での実験に必要な最低限の実装
SM5.0だと長いシェーダー書けるのはいいよ
DXライブラリは過去の互換と2D用なんで結局一番使う

358 :名前は開発中のものです。:2013/09/03(火) 15:34:49.76 ID:IUCDpmVJ
>>356
具体的にやりたい事決まると沢山あると思うけど。
例えば汎用的なパスアニメーションとか。
あるいはちょいゲームロジック寄りになるが、一枚画像に並べた地形ドット絵をテクスチャとして、
マスに並べて表示するクラスを設計する時、わざわざDxライブラリ経由でやらなくても
直接書いた方が実行時の余計な呼び出しや整理もいらないから効率いいとか。

関数だけを見るんじゃなくて、具体的なシチュエーション前提にして、その時の実行イメージ考えると、ちょいちょいあると思う。
少なくとも、Dxライブラリだけあれば他はいらないって事は無いかなと

359 :名前は開発中のものです。:2013/09/03(火) 15:36:12.38 ID:IUCDpmVJ
>>357
Ogitarが便利だよな。bulletとも組み合わせやすいし。
… Dxライブラリと大分立場違う物だけども

360 :名前は開発中のものです。:2013/09/03(火) 16:19:07.79 ID:hziIzZtX
>>358
効率面で言えばちょい無駄な実装になることはちょくちょくあるな
今のPC環境でその速度差が問題になることはないが

361 :名前は開発中のものです。:2013/09/03(火) 16:46:58.99 ID:IUCDpmVJ
まぁ速度差って話だと実際内容次第なので横に置いとくんだけど、それより
元々直接ハンドリングできてどうすりゃいいかもはっきりわかってる時は、わざわざDxライブラリに合わせていらない処理書くことも無いかなって事。その効率

362 :名前は開発中のものです。:2013/09/03(火) 18:31:50.41 ID:vy4OesbY
つーか、自分で実装した蓄積があれば
そっち使うだろ普通

363 :名前は開発中のものです。:2013/09/03(火) 19:38:53.31 ID:D+5YHDag
これからゲーム作成を始める人たちなんだろ

364 :名前は開発中のものです。:2013/09/03(火) 19:41:09.72 ID:hziIzZtX
なんでDirectX直叩き経験者前提なんだよ

365 :名前は開発中のものです。:2013/09/03(火) 19:45:19.40 ID:IUCDpmVJ
どこにもそんな前提の話は無いと思うが

366 :名前は開発中のものです。:2013/09/03(火) 19:47:21.29 ID:TiiNbJCS
直叩きできるけどもしかしてできないのって言いたいだけちゃうん?
俺も7.0時代にbitbltよりずっとはやーいとか言って叩いてたから資格は十分だな

ツクールだろうがライブラリだろうがやりたい事できてる内はなんでもいいんじゃね

367 :名前は開発中のものです。:2013/09/03(火) 20:06:09.25 ID:D+5YHDag
前提はないな。
そしてどちらとも書いていない。

経験者はそっち使うだろろ>>362は言っていると思ったが違うのか?

368 :名前は開発中のものです。:2013/09/03(火) 20:20:53.48 ID:IUCDpmVJ
>>366
いやそう穿った見方されてもややこしくなるんだが、元々は、>>351 の話に対して「必要なら使うよ」と言った。

その後、"苦労して"行く意味が無い、と行っていた人物が「完成度の高いDxライブラリを使わず自前でやりたい事なんてあるか」と書いていたので
そんなのは実装内容と都合次第だと言う例を書いた。ただそれだけ。

>>362 の話に関しても状況次第で、単に有名で興味があったから使ってみたかったってのと、
複数人で作業する時、たまたまDxライブラリを使う話になってたので、後から来た俺もそれに従って参加したから、
これも状況次第で使う事はあるよって話だ。
直接扱えるからって、Dxライブラリを使わないなんて事は無いよって話。

369 :名前は開発中のものです。:2013/09/03(火) 20:30:54.05 ID:hziIzZtX
ん?逆じゃね?
>>351は、「既にDXライブラリを使っていて直叩きやってないユーザー」に対しての
「なんでDXライブラリからDirectX直打ちに乗り換えないの?」って意味だろ

そりゃ過去に使ってたなら流用する部分はあるだろう

370 :名前は開発中のものです。:2013/09/03(火) 20:35:55.30 ID:hziIzZtX
レスしといてなんだが、ややこしくなってるのはどうでもいい部分っぽいから終わりにしとこうぜ
なんかすまんかった

371 :名前は開発中のものです。:2013/09/03(火) 21:30:12.27 ID:vUU3Uyzc
でもDXライブラリで入門してそこそこコード書いてから
DirectXを自前で呼ぶ手順を試してみるのは
もう難しいって事はなくなってるだろうし、得る物がないとも思わないな

すぐに役立つ類の何かにはならないから、今ゲーム作りたいって状況ならやめとけと思うけど

372 :名前は開発中のものです。:2013/09/03(火) 21:46:08.61 ID:EPT65Efm
DXライブラリにない機能を使いたくなって、どうやったら実装できるかなーと、
API調べたら、やたらややこしい説明しかなくて
たかがこれくらいのことになんでこんな記述しないといけないんだよ
と思って結局手付かずな俺。

373 :名前は開発中のものです。:2013/09/03(火) 23:42:30.01 ID:AgKjDaEC
レガシ―なコードを見るとじんましんが止まらなくなる病に陥って以来DirectXを諦めた

374 :名前は開発中のものです。:2013/09/04(水) 02:33:41.29 ID:V8uAb/ln
APIがわからないと、DirectXいじれないんだぜ・・・

375 :名前は開発中のものです。:2013/09/04(水) 09:07:52.99 ID:PoFEVG9R
それはもしかしてwin32での基本的なメインループすらわからんとかそういうレベルの話か

376 :名前は開発中のものです。:2013/09/04(水) 10:36:55.09 ID:9eCFdU3A
Winアプリの基礎くらい知っとくと便利だよ
環境設定とか作れる

377 :>>349:2013/09/04(水) 15:11:12.06 ID:oOzyrc7U
わしの質問が流れた

378 :名前は開発中のものです。:2013/09/04(水) 18:35:21.10 ID:XiGKlGSH
まあ元々DXlibは初心者のDirectX入門の側面も持ってる的なことを
管理人さんがどっかで言ってた気がするしな
DXlibで不自由さを感じたらDirectX直叩きってのも自然な流れじゃないの

379 :名前は開発中のものです。:2013/09/04(水) 23:01:10.21 ID:xFCoeJ7x
DXライブラリ界の有名人(?)が、こぞって紹介してるゲームエフェクト講座が結構良いな

380 :名前は開発中のものです。:2013/09/04(水) 23:14:59.97 ID:XiGKlGSH
>>379
なにそれ詳しく

381 :名前は開発中のものです。:2013/09/04(水) 23:51:09.47 ID:xFCoeJ7x
大学サークルの身内用Wikiっぽいのでリンクを貼るかどうか少し躊躇ったが、そこは気にしないことにする。

http://sherbet.transjiggen.com/ccs/ccs_wiki2/index.php?%A5%CF%A5%EB%A5%C8
このページの一番下にある「添付ファイル」から、「DXLib_Effect_h002.pdf」へのリンクをクリック(今現在)。

今のところ2Dゲーム用の模様。技術的に難しいことを言ってるわけではない。
公開関数+αくらいで出来るシンプルな内容なんだけど、凄くよくまとまってる。

382 :名前は開発中のものです。:2013/09/05(木) 00:07:07.42 ID:59ih9t5v
くっそ身内っぽい雰囲気で聞いてちょっと罪悪感があるんだが
これをDXライブラリ界の有名人が紹介してるの?
DXライブラリ界の有名人ってのがどんな人を指すかよく知らんが

383 :名前は開発中のものです。:2013/09/05(木) 00:11:13.63 ID:AoZFkRqA
有名人ってわけでもない
ただ作品にDXライブラリ使ってるってだけ
同人STGやる人なら作品知ってるかもくらいの人

384 :名前は開発中のものです。:2013/09/05(木) 00:41:15.23 ID:hBmpTHcx
何で貼るだけ貼って出所隠すの?
有名人どころか今年の東京ゲームショーに出展する超新星同人ゲームサークルのプログラマだよ

http://twitter.com/hart_edsf/status/375248375513231361
http://www.indiegame-fest.com/

385 :名前は開発中のものです。:2013/09/05(木) 00:54:25.79 ID:dv6vewus
>>384
隠す意図は無かったんだけど、スマンカッタ。
こういうとき、どこまで貼ればいいか難しいね。

386 :名前は開発中のものです。:2013/09/05(木) 02:46:42.48 ID:1kKDr+Kj
バックで動画再生させながらプレイする横スクロールのアクション作ってんだけど、
PlayMovieToGraph 使って DrawGraph系で動かしたらかなりカクカクになっちゃった
何で再生するのがベスト?

387 :名前は開発中のものです。:2013/09/05(木) 02:51:43.87 ID:AoZFkRqA
ゲーム画面で動画を再生したいならそれ以外の方法はないだろ
動画自体を軽くするしか方法はない

388 :名前は開発中のものです。:2013/09/05(木) 02:58:25.17 ID:1kKDr+Kj
>>387
だよなぁ、ビットレート下げて様子みるわ。サンクス

389 :名前は開発中のものです。:2013/09/05(木) 03:32:39.50 ID:1hDQc12B
バックで動画再生なんてやれるのかw
知らんかったわ。
LDゲームが作れるなw

390 :名前は開発中のものです。:2013/09/05(木) 16:03:31.78 ID:FhkmhNsp
そりゃまぁ・・・ツクールじゃないしw

391 :名前は開発中のものです。:2013/09/05(木) 16:26:37.51 ID:bU+8tFoJ
>>389
タイムギャルお願いしますw

392 :名前は開発中のものです。:2013/09/07(土) 13:30:51.24 ID:FDYu5pLB
2Dエフェクト作成より3Dエフェクトの作り方が知りたい
どこにもサンプルないしどうやって作るかもまず見つからないし…

393 :名前は開発中のものです。:2013/09/07(土) 14:45:38.35 ID:ZlVgxMBF
2Dエフェクトの座標を3Dにするだけじゃね?

394 :名前は開発中のものです。:2013/09/07(土) 15:37:36.36 ID:htv4gya2
サンプルとか書きようが無い。何故って、基本的にそれまで自分が書いてる処理の応用編だから。つまり、

・2Dでのエフェクト処理(レンダーターゲットへのシェーダ処理含む)
・ + 普通の3D表示処理(ポリゴン表示とシェーダ含む)

それらを自分の管理処理と合わせて創意工夫で組み合わせた応用編だから。

ちなみにピクセルシェーダでのエフェクト計算(例えばブラーやソラリとか)みたいにポイントポイントで見れば
書籍もサイトもあるよ。
で、それらと自分の処理を組み合わせて考えてアウトプットになるって事。

395 :名前は開発中のものです。:2013/09/07(土) 15:45:48.23 ID:htv4gya2
てか応用編の世界なので、何も知らない人に言葉で説明しようとするとやたら長い話になってしまうが、

逆に言うとまず3D処理の実際を、繰り返すメインループの中の一コマとしてまず見えるようになってら、
そこで何が必要で、それがあるとどう見えるかって順番で考えるようにすれば、
「どうすればいいか "まったくわからない"」って状態にはならないと思う。

シェーダでのピクセルエフェクト(UとVの二軸の世界でのエフェクト)については、
よくOpenGLの世界で記事やソース書いてる人いるので
それをDirectX(HLSL)の世界に応用したらいいと思う。基本的な理屈は同じだから。

396 :名前は開発中のものです。:2013/09/07(土) 18:12:31.43 ID:d9gbAoy/
>>392
ゲームエフェクトの本やら資料やら探したら、むしろ3D中心で出てくる印象なんだけどなあ

397 :名前は開発中のものです。:2013/09/07(土) 23:57:28.78 ID:+vlGUbQx
エフェクトって言ってもいろいろあるしねえ
具体的に○○みたいなエフェクトのやり方がわからないとかならまだしも
"3D"のエフェクトがわからないってのはそもそも3D処理がわかってないんじゃね

398 :名前は開発中のものです。:2013/09/08(日) 01:48:23.76 ID:kVPN97ld
C言語やC++はOSにそこまで依存してないよね?
なのにDXライブラリは完全Windows専用なの?

399 :名前は開発中のものです。:2013/09/08(日) 02:10:18.84 ID:pEGzS2EK
「なのに」って意味が分からん
DXライブラリはWindowsのDirectXをC/C++から簡単に使うための物だから
Windows専用にならない理由がないだろ

クロスプラットホームのゲームライブラリならSDLあたりが有名

しかし俺はSDLは使う気にならないな
自分が興味がないMacやLinuxのユーザーサポートまで要求されるのも迷惑だから

400 :名前は開発中のものです。:2013/09/08(日) 02:53:24.55 ID:W1OuVwxQ
クロスプラットフォームしたいんならunityでも使っとけ

401 :名前は開発中のものです。:2013/09/08(日) 09:47:25.57 ID:KLzYDzFE
>>398
グラフィックスAPIのDirectXがWindows専用だからな
MacとかLinuxもサポートするならOpenGLになる

WindowsとLinuxでAPIを使い分けるならOgre3DかUnity
OpenGLで両方まかなうならSDLやQtという選択肢になる

402 :名前は開発中のものです。:2013/09/08(日) 18:55:16.43 ID:LAHZLQTL
3Dエフェクトってキャラクターや地形と違ってアニメーションするじゃん
勿論キャラクターはポージングこそするものの
ポリゴンの頂点数が変わり続けたりテクスチャのマッピングが移動したりするエフェクトをどうやって流れるように描画させるのか
という疑問が

403 :名前は開発中のものです。:2013/09/08(日) 19:57:53.44 ID:FwvXMDor
>>402
DXライブラリでは頂点バッファをいじれないみたいだから、
頂点数の増減は小さいオブジェクトを繰り返し描画で変化、
または高解像用と低解像用を用意しておくとか。
テクスチャスクロールはシェーダーを自作すれば簡単

404 :名前は開発中のものです。:2013/09/08(日) 23:12:47.36 ID:mUJYpIY3
>>402
頂点数の増減て見たままそのままの実装する必要あるか?
内部的に常に必要な最大頂点数持っておいて、VertexShaderで不要なタイミングにおいては表示外に追いやったり隣り合った頂点と整列させておいたり、
あるいはアルファで非表示状態にしたりすればいいんじゃないの?

405 :名前は開発中のものです。:2013/09/08(日) 23:41:45.22 ID:ifdr6uiA
理論なら誰でも考えつくからソースで具体例を出せってことでしょ

406 :名前は開発中のものです。:2013/09/09(月) 00:52:34.08 ID:G0Y/JpfZ
一般的には理論もしくは発想が難しいのであって
それをコードに落とし込むのは誰でもできる底辺の仕事なんですが…

407 :名前は開発中のものです。:2013/09/09(月) 00:53:09.91 ID:/U6TdIo4
>>402
そもそも3Dエフェクトで拡大・縮小以外の変形をするエフェクトってあんまりみたこと無いんだが
しっかり骨組みまで見たことあるゲームが携帯機程度の低スペな奴しか見たこと無いからかもしれんが
アニメーション付きのビルボードの組み合わせとかが今でも大部分を占めてるように思う
3Dエフェクト使う時でも拡大・縮小にテクスチャのアニメーションでごまかすとか環境マップ使ってるやつぐらいしかパッと思い浮かばない

408 :名前は開発中のものです。:2013/09/09(月) 01:14:18.67 ID:QfE1BbtL
誰でも考え付くならエフェクトで頂点増減とか言わないと思う
話ももっと具体的なはず

409 :名前は開発中のものです。:2013/09/09(月) 01:17:22.36 ID:CepS0XFh
どう実装するの?って奴は勉強不足なだけだからググれってことだな

410 :名前は開発中のものです。:2013/09/09(月) 01:17:45.87 ID:QfE1BbtL
>>407
レンダーターゲットに対してPixelShaderでポストエフェクトとか、
メッシュ表示の際にも同様にアルファや色の変更とか色々出てくると思う

411 :名前は開発中のものです。:2013/09/09(月) 01:30:37.78 ID:/U6TdIo4
>>410
それはどっちもピクセルシェーダを弄るようなエフェクトの一例だよね
そこは3Dエフェクトだろうがビルボードだろうがあまり大きな変化はないと思うんだけど
拡大・縮小以外の変形みたいな頂点そのものを増減したり、不規則に変化させるようなことを必要とするエフェクトの例とかってある?

412 :名前は開発中のものです。:2013/09/09(月) 02:23:49.57 ID:o9OOchYv
コードに落とすのは簡単(キリッとか言っちゃって結局出ないコード
いつもの流れだ

簡単なら一般的な方法でいいんでテッセレーションやってみせろよ

413 :名前は開発中のものです。:2013/09/09(月) 02:40:36.70 ID:/U6TdIo4
なんでそんなにコードを出すことにこだわるんだ
ちょっと前のマリオのジャンプで粘着してた乞食じゃあるまいし
それにどんなエフェクト作るかの話もしてなくて3Dエフェクト全般の話しかしてないのになんでコードが出てくるんだよ
あと>>405とか誰もソースの話なんか出てないだろ

414 :名前は開発中のものです。:2013/09/09(月) 02:52:58.18 ID:G0Y/JpfZ
金も払わず「サンプルよこせ」「そこまでいうならやって見せろ」
この質問者様が質問して下さっているっていう発想からして完全にkazukiだろ

415 :名前は開発中のものです。:2013/09/09(月) 03:02:03.26 ID:/U6TdIo4
いや今回のこれはkazukiじゃないと思う
初っ端から煽りに来ることはあんまりないと思うしあいつ今職業訓練に必死みたいだし

416 :名前は開発中のものです。:2013/09/09(月) 03:13:33.64 ID:CepS0XFh
すっかり痛い子の代名詞になっちゃったなkazuki

417 :名前は開発中のものです。:2013/09/09(月) 03:17:21.92 ID:/U6TdIo4
まあいい反面教師にはなるかもしれない
あいつはスレの全員から嫌われてるから本人降臨しない限りスレも荒れないしな
あと本人はテッセレーションなんて分からないと思うぞ
座標を自分の感覚で適当に決めて直打ちしちゃう奴だし

418 :名前は開発中のものです。:2013/09/10(火) 02:30:01.06 ID://nCPrx/
kazukiが誰をさしてるのか未だにわからないけど

419 :名前は開発中のものです。:2013/09/10(火) 05:57:31.03 ID:fLtKfWgb
kazukiとは、過去にポナルポやタクトと名乗って恥ずかしいことをやらかしてきた男のゲ製でのHN
ブログ消して逃亡する癖があるからリアルタイムで遭遇したことないとわからんだろうな
ヲチスレがあったんだが埋まってから立ってないようだ
ズブの素人なのに絵師やプログラマになりきって講座サイトを作りたがるアスペの自演魔とでも言えばいいか

スレチだが

420 :名前は開発中のものです。:2013/09/10(火) 09:18:59.67 ID:9Qs7WFMi
自愛性みたいなやつだろ?
あいつはすぐわかる

421 :名前は開発中のものです。:2013/09/10(火) 09:31:48.84 ID://nCPrx/
頂点数の増減って結局vistaじゃないと出来ないらしいけど
剣の振った軌跡エフェクトとかは頂点を直接操作してるの?
ボーンとかいれて

422 :名前は開発中のものです。:2013/09/10(火) 10:28:45.28 ID:1N7dl6m4
軌跡の表現って、例えば帯状に流れて消えてくような物の事なら、実際その時による。
頂点数3*2*8個のポリを帯状に並べた物を固定で持っておいて、cpu側からは座標xyz+アルファの減衰用値1つをセットとにしてfloat4で8セット渡して
vertexshaderで計算した。
座標は起点から数フレーム毎に直前の座標を一つ後ろにコピーするようにして、
減衰値も直前の値の1/8を引いた物を順次セットしてく流れ。

他の方法だと、単に板ポリに描いた形をその時の軌跡に沿った位置と角度に変えながら変形とか。そんなかんじ

423 :名前は開発中のものです。:2013/09/10(火) 10:29:51.57 ID:1N7dl6m4
あ、>>422 は俺が実際に考えてやった方法。
別にこうするもんだ、って話じゃない。

424 :名前は開発中のものです。:2013/09/10(火) 13:23:33.80 ID://nCPrx/
ガンツってオンラインゲームの剣の軌跡が特徴的だった気がする

425 :名前は開発中のものです。:2013/09/10(火) 15:35:01.90 ID:VwJiEoYm
ずっと標準関数のfopen_sとかfread_s使ってたんだけど
DXlibの使えば非同期読み込みできたんだな
これって非同期書き込みって出来ないの?

426 :名前は開発中のものです。:2013/09/10(火) 15:52:46.41 ID:gIhnnlB1
>>421
毎年この時期に発売してるゲームグラフィックスって本は結構参考になったりならなかったりするけど面白いから読むべし
2009年版によるとナルティメットは頂点にボーンを入れて引っ張り出してる
>>422のはトレイルポリゴンというらしい

427 :名前は開発中のものです。:2013/09/10(火) 18:23:10.98 ID:1N7dl6m4
>>426
名前ついてたのかwwありがとう

428 :名前は開発中のものです。:2013/09/12(木) 07:30:32.01 ID:aJt0MyQP
いつの間にか3.11にバージョンが上がっとる
ちらほらとWindows8向けの修正が入ってるようだ

429 :名前は開発中のものです。:2013/09/13(金) 10:47:00.12 ID:VRcMxm/5
>>422
参考になった
見た感じ無双は前者っぽいな

430 :名前は開発中のものです。:2013/09/13(金) 21:57:15.39 ID:fqMMV2ZF
前スレ辺りで
3DのRPGとかでよくキャラの足元の地面の種類によって足音や土煙を変えてる方法
ってのに
ポリゴンモデルのテクスチャによって判定してる
って答えがあったけど
今のDXlibでこれ実現する方法ってある?
指定ポリゴンに使われているテクスチャを得るような関数は無いし
その為に自分で既存の関数使って実装しようにも大まかな方向性すらちょっと分からない

431 :名前は開発中のものです。:2013/09/13(金) 22:02:40.77 ID:V6fOnFO4
テクスチャの実物じゃなくて論理マップを別に持っておくだけじゃないの?

432 :名前は開発中のものです。:2013/09/13(金) 22:26:09.11 ID:mrOA/UVs
921 : 名前は開発中のものです。[sage] 投稿日:2013/03/19(火) 18:41:57.90 ID:uxqMY4dT [1/2回]
なあすごく初歩的な質問かもしれんが
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として分けるとか属性用のテクスチャを用意するとか

433 :名前は開発中のものです。:2013/09/13(金) 22:27:47.79 ID:mrOA/UVs
普通に>>922の方法が現実的だと思うよ
必要なメモリは今のPCの性能に比べたら大したことないんで
わざわざバッドノウハウみたいな方法を使って制約を増やす必要性がないという

434 :名前は開発中のものです。:2013/09/13(金) 22:50:46.62 ID:V6fOnFO4
この >>922 みたいな方法がいわゆる論理マップの持ち方だよな
ドラクエみたいに格子状に並べるマップもそうだし、配置するオブジェクトが無規則自由配置でも同じこと

435 :名前は開発中のものです。:2013/09/13(金) 23:48:26.06 ID:fqMMV2ZF
なるほど
>>922の方法が良かったのか
しかしこれって
下から床、空間、床2、空間
みたいな位置関係のときは難しくないかな
>>432もわざわざ引用してくれてありがとう

436 :名前は開発中のものです。:2013/09/14(土) 00:26:05.17 ID:/6ff2SkL
>>435
平面の格子じゃなく立体の格子を作ればそれも別に難しくないだろう

437 :名前は開発中のものです。:2013/09/14(土) 00:31:06.20 ID:p0lDHWdr
>>435
>下から床、空間、床2、空間

3D空間の場合ですね、そのような場合で
床空間をRoomと呼び、
床1に碁盤の目を配置します。床2にも同様、
そして主人公が床1にいれば床1の碁盤の目を使う。
床2に移れば、床2の碁盤の目からデータを読む。
そして、
床1の部屋1から、床2の部屋2へ移動するのに
部屋同士を廊下で繋ぎます(doorと呼びます)、
その廊下を通過する時に部屋番号を切替えます。
属性データ=部屋番号、X行、Y列
このようになります。(実際は座標変換が入り複雑です)
この説明は、BSP(Binary space partitioning)の導入の部分です。

より単純な方法
単純に床の高さ違いの部屋ならば、高さで単純に切替え出来ます。

438 :名前は開発中のものです。:2013/09/14(土) 00:45:52.46 ID:kQXZslGf
やっぱ次元増やすしかないか
それでもメモリなんて今どきならあんまり気にしなくてもいいのだろうか
格子の目をどれだけ細かくするかによるんだろうけど

>>437は高さが一定の部屋ならメモリ節約になりそうだな
詳しい説明ありがとう
今までとっつくのに躊躇いがあったけどちょっと頑張ってみるよ

ちょっと別件になるけど
みんなゲーム作る上でメモリとかどの程度占有していいと考えて作ってる?
作ってるゲームの規模とかジャンルにもよるだろうけど参考までに

439 :名前は開発中のものです。:2013/09/14(土) 00:53:50.80 ID:7jXMDdjs
ちょっと考えればわかるけど、
アクションゲーなら高さってほかの2軸に比べれば大して量が必要ないんだよ
上に登ってくステージを作りたければそこだけ高さを増して作ればいい
RPGの場合だって、塔とか特定の地域だけ高くて面積は狭い地形にすれば特に問題ない

今のPCだとフリゲで使っていいメモリは100Mくらいかなと思ってるよ

というか、そんなふうに作ってから悩むべきことを何もできてない段階でゴチャゴチャ考えると
何もできない愚図になってしまうよ

440 :名前は開発中のものです。:2013/09/14(土) 01:39:47.66 ID:kQXZslGf
いや3次元空間を自由に飛び回るタイプなんで俺の場合は他の2軸と等価なんだわ
正直作り方の下手さをスペックで補ってる感があるんで
今回の件以外の部分でかなり演算量とかメモリ使ってるからちょっと聞いてみたかった
だいぶ出来上がってきたんでそろそろエフェクトについても本腰入れて頑張ってみようかと思って昔の話題を引っ張り出してきたんだ

441 :名前は開発中のものです。:2013/09/14(土) 01:44:37.73 ID:F13ppTHh
お前ら3Dの話がさらっとできて羨ましいな。
俺は2Dがやっとだっつーに。

442 :名前は開発中のものです。:2013/09/14(土) 02:18:36.24 ID:qldeAamL
今どき数値データで専有するメモリなんて大したことないだろ
実際にどのくらいのバイト数になるのか計算して言ってるのか?

443 :名前は開発中のものです。:2013/09/14(土) 02:30:33.15 ID:76PA/33Z
何も出来てないし、作ることもないのに心配だけしてるんだと思うよ
試算すれば今のPCで問題になるわけないのわかることだし

本当にある程度動くもんができてるんだとしたら

>やっぱ次元増やすしかないか
>それでもメモリなんて今どきならあんまり気にしなくてもいいのだろうか
>格子の目をどれだけ細かくするかによるんだろうけど

こんなこと言うわけない
ちょいと実験用のステージ作ってテストすればわかることだもんよ

444 :名前は開発中のものです。:2013/09/14(土) 03:13:27.71 ID:qldeAamL
いや作る必要すらないよ
必要な変数の見積もり出すだけでおk

445 :名前は開発中のものです。:2013/09/14(土) 08:21:22.07 ID:TW6+8u9G
そもそも着地してる面のシェーダーの種類によって足音を変えられたりはしないの?
dxlibだと簡単にやってくれるんだろうけど、保存されてるシェーダー名とか分かるんだろ?
だったらゲームの中で統一した名前持って・・・

って文字列の比較はご法度?

446 :名前は開発中のものです。:2013/09/14(土) 08:50:51.40 ID:HK3w+y5R
文字列による振り分け自体はご法度ってほどでもない
1フレームに数千回程度ならmapの文字列キーによる取得も可能
だがシェーダ名からそんな判別ができるかは知らん

447 :名前は開発中のものです。:2013/09/14(土) 09:30:05.45 ID:fcYnOgJC
直接シェーダから何か取り出すんじゃなくて、管理用の情報別に持っておけばいいって発想が真っ先に出るべき

448 :名前は開発中のものです。:2013/09/14(土) 11:46:45.81 ID:WM0CmCTj
なんかみんなややこしい事考えてるなあ
もっと気楽に作れるものから順序立てて作ろうよ
背伸びしすぎじゃね?

449 :名前は開発中のものです。:2013/09/14(土) 12:00:55.05 ID:F13ppTHh
シェーダーから読み込むっつーのがどうなのか知らんけど
そんなにやりたいなら、毎フレームやるんじゃなくて
起動時にまとめて変換しとけばいいだろ。

450 :名前は開発中のものです。:2013/09/14(土) 12:07:01.80 ID:fcYnOgJC
多分経験無くてわからないまま、どこかで見た話だけを頼りにするから、無駄に複雑な方向に行くんだと思う
どうしてもシェーダの出力結果を参照しないといけないなら、上でも言ってるように事前に生成して論理情報として持っておいて、
それを管理用として使うだけだよな

451 :名前は開発中のものです。:2013/09/14(土) 12:12:02.50 ID:fcYnOgJC
あと普通、シェーダの出力結果をCPU側で利用したい場合は、「シェーダから読み込む」んじゃなくて、
レンダリングターゲットに書き出した内容を使うよな。
例えばオフスクリーンのビットマップに書き出してそれを(画像としてに限らず)利用する。
ドロップシャドウなんかの処理書く時の影が落ちる場所の判定用に2パス処理するとかもそう

452 :名前は開発中のものです。:2013/09/14(土) 15:10:45.75 ID:8O2/n1/V
DXライブラリには今のところ縁の無い話だが
DirectX10/シェーダモデル4から「出力ストリーム」っつって
頂点シェーダとかジオメトリシェーダの結果を
バッファに書き出す機能がある
髪の毛とかの描画に使われてたはず

453 :名前は開発中のものです。:2013/09/14(土) 20:39:14.70 ID:AYA9xewn
ゲームなんか作ってどうするのよ
周りのみんなは受験勉強やら自己啓発で資格取得やら親しい友人と親睦深めたりしてるのに
ゲームプログラミングなんかしてても受験、就職、出世、何の評価にも繋がらないぞ
しかも10年も経てば今やってることなんざ時代遅れの何の役にも立たない糞知識と化すの分かってるのに
時間とエネルギーの無駄遣いだったなTOEICの勉強でもしてた方がなんぼかマシ残念

454 :名前は開発中のものです。:2013/09/14(土) 20:59:50.42 ID:IDTioZ76
受験勉強
ガキは巣に帰れ

455 :名前は開発中のものです。:2013/09/14(土) 21:04:51.40 ID:l5htwAqU
じゃあ何でこんなスレに書き込んじゃうのさ?

456 :名前は開発中のものです。:2013/09/14(土) 23:53:54.14 ID:36YxFypI
このスレだけでも何度も見るけどこれってコピペ?
どっちにしても同じことばっか言ってる奴に食いつくなよ

457 :名前は開発中のものです。:2013/09/15(日) 00:00:02.27 ID:dC0z05bi
ゲーム製作のおかげで彼氏♂が出来ました><

458 :名前は開発中のものです。:2013/09/15(日) 00:35:20.07 ID:5Cwo6Cih
私は27歳だけど、未だに彼女が居た事がありません。><

459 :名前は開発中のものです。:2013/09/15(日) 00:52:25.03 ID:xpVRCCgS
価値の無い人間ほど将来のために〜とか言って今の自分から目を逸らすもんだ

それはともかく>>453はコピペ

460 :名前は開発中のものです。:2013/09/15(日) 03:26:15.09 ID:JWdA1Xml
>>458
俺だって彼氏がいたことなんてねーよ

461 :名前は開発中のものです。:2013/09/15(日) 07:53:52.63 ID:PV2uYwqN
申し訳ないがホモを匂わすレスはNG

462 :名前は開発中のものです。:2013/09/15(日) 08:02:23.47 ID:PV2uYwqN
1フレーム中に2回Zバッファから裏画面に書き込むのってできますか?

Zバッファ書き込み

裏画面に描画

Zバッファをクリア

Zバッファ書き込み

裏画面に描画

って感じ。
具体的には、視野距離を長くしたいから
1000〜1000000のクリップのZバッファで書き込んだ後に
1〜1000のクリップのZバッファを上書きすれば実現出来ないかなーと。

あとEVEオンラインってゲームはどうやってんでしょうか

463 :名前は開発中のものです。:2013/09/15(日) 08:22:00.60 ID:xpVRCCgS
出来るんじゃね?
試してみたらいいじゃん

464 :名前は開発中のものです。:2013/09/15(日) 14:15:52.38 ID:LXqJDTUq
Zバッファ切ってカキ割りか低ポリメッシュの遠景描画してるだけじゃないん?

465 :名前は開発中のものです。:2013/09/18(水) 09:35:37.67 ID:oNVuQXT0
メタセコイア使ってる人いないかな?
手のフレームの取得関数が機能しない…どうやらモデルに座標入ってないみたいなんだよな、0になっちゃう
モーションの方かもしれないけど、これじゃ進まなくて困った

466 :名前は開発中のものです。:2013/09/18(水) 09:59:53.97 ID:Ud470By2
フレームって、D3DXMESHで言うボーンの事だっけか

467 :名前は開発中のものです。:2013/09/20(金) 08:03:49.06 ID:+XZbW2by
はい

468 :名前は開発中のものです。:2013/09/20(金) 08:30:02.08 ID:YMpJdkx+
手とか頭とかの区切られたパーツのことよ
手のフレームを取ると普通手のパーツの中心部が座標になる

469 :名前は開発中のものです。:2013/09/20(金) 09:07:36.96 ID:ORFi52Rn
>>465
0になっちゃうんじゃなくて、もしかしてそのボーンのローカル座標系の値が返ってきてるとか。つまり変化前だから常に0。
他にオフセットがあるんじゃね

470 :名前は開発中のものです。:2013/09/22(日) 20:52:26.82 ID:f8ojsxQ+
なんかこんなこと聞くのも恥ずかしいけどさ
みんなシェーダ書くときにfxファイル何のソフト使って書いてる?
俺はサクラエディタなんかで頑張ってるんだけど

471 :名前は開発中のものです。:2013/09/22(日) 21:34:15.12 ID:rnlXPih0
メモ帳

472 :名前は開発中のものです。:2013/09/22(日) 21:58:38.92 ID:4HkV9On6
>>470
同じ。サクラか、プロジェクトに含ませてる時はVCのテキストエディタ
要は、いずれにしろただのテキストエディタ

473 :名前は開発中のものです。:2013/09/23(月) 00:31:52.16 ID:JB8mc2dz
やっぱテキストエディタしか無いのか
俺みたいな統合開発環境慣れした初心者はドットとかでメンバ参照とかスペルミスの指摘が欲しくなっちゃう
FX ComposerとかRenderMonkeyってどうなのかな

474 :名前は開発中のものです。:2013/09/23(月) 08:30:25.54 ID:/4YGOTVQ
VS2012使ってる

475 :名前は開発中のものです。:2013/09/23(月) 11:08:45.66 ID:EzTdeYYx
補完の処理が働いているときに一瞬入力を受け付けなくなるのがたまらなくイラつくんだけど
そういうことを気にしないやつってどういう脳の構造してんの

476 :名前は開発中のものです。:2013/09/23(月) 11:10:43.78 ID:7wS9S5Ho
どういうこっちゃ
主語がないぞ

477 :名前は開発中のものです。:2013/09/23(月) 11:54:58.22 ID:ofnkYj7I
>>475
VisualStudio2012は快適だぞ
Eclipseは止まることもあるが、何使ってるの?

478 :名前は開発中のものです。:2013/09/23(月) 13:36:04.69 ID:7wS9S5Ho
あぁVS2012のことか
ウチのボロPCだとたまにあるな
ちゃんとしたPCなら大丈夫だろ

479 :名前は開発中のものです。:2013/09/23(月) 20:47:36.07 ID:B52vOn8c
モデルハンドルの上限ってきつくないか?
エフェクトに3Dモデルを使おうとすると、65535とか速攻でなくなりそうだけど

480 :名前は開発中のものです。:2013/09/23(月) 21:21:48.56 ID:7wS9S5Ho
エフェクトにモデル使うのが設計的に間違ってるぞ

481 :名前は開発中のものです。:2013/09/23(月) 22:30:14.33 ID:el0dl6Vq
エフェクト用のモデル一つ一つに個別のハンドルって言う設計が適当過ぎる

482 :名前は開発中のものです。:2013/09/23(月) 22:38:41.25 ID:el0dl6Vq
もうちょっと言うと、仮に 「星がキラキラっとランダムな位置に、微妙にタイミングズレながら現れて消えていく」 って言うエフェクトだとして、
その内容は三角板ポリに透過画像の☆のテクスチャ貼った物が、最大512個まで表示される仕様にしたとして、
普通はモデルの管理用ハンドルなんてどう作っても1つにすると思うけど、
これを見たままの 512個用意するような設計にしてたとしたら足りなくなると思うが、そもそもその考え方自体がおかしいって話。

483 :名前は開発中のものです。:2013/09/23(月) 23:29:59.22 ID:MCuV8ief
そういうパーティクル的なものはVERTEX3DSHADERで頂点で管理するものかと

484 :名前は開発中のものです。:2013/09/23(月) 23:40:56.58 ID:el0dl6Vq
まぁ >>482 の例で言えばポイントスプライト使うってのはそうだけど、例えばの話

485 :名前は開発中のものです。:2013/09/24(火) 00:30:12.83 ID:gCJpay//
そんなこと言ったって頂点なんていじったことないもん

486 :名前は開発中のものです。:2013/09/24(火) 08:47:55.94 ID:3iThi5fc
頂点も弄れないのに3Dしようとするのが間違い

487 :名前は開発中のものです。:2013/09/24(火) 11:51:32.61 ID:NDARxT+J
モデルがAngle3Dベクトルの方向に向いてくれません。どうしたらいいですか?
ローカルでの正面方向は(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);

488 :名前は開発中のものです。:2013/09/24(火) 12:25:29.03 ID:LX3VXkRZ
acosが足りない

489 :名前は開発中のものです。:2013/09/24(火) 12:58:18.83 ID:RHsZnJVt
頂点をどうやっていじるのかすら分からない
解説サイトとかないよね…

490 :名前は開発中のものです。:2013/09/24(火) 13:55:10.86 ID:LX3VXkRZ
これだけ読めばOKみたいなショートカットは無いよ。
MSDNの記事やリファレンスの解説見てもちんぷんかんぷんならもっと手前の文献当たって、
その文献見てもわからなければ、もっと手前の文献当たって。

491 :名前は開発中のものです。:2013/09/24(火) 13:55:19.05 ID:7Pln/be2
>>488
どこに必要ですか?

492 :名前は開発中のものです。:2013/09/24(火) 14:35:25.94 ID:3iThi5fc
頂点を弄るというか定義するというか
DrawPolygon3Dでモミジの降るエフェクトでも作ってみればいい

493 :名前は開発中のものです。:2013/09/24(火) 18:40:55.14 ID:klVNBi9S
>>491
MGetRotAxis(axis,acosf(rot));
だと思うけどその後のクォータニオンって自作しないといけないんじゃないの?
知らんくせに口挟むけど

494 :名前は開発中のものです。:2013/09/24(火) 18:52:26.49 ID:7Pln/be2
>>493
ベクトルと軸ベクトルと回転率を与えることで、その軸で回転させたベクトルを返すっていう関数は作ったけど、
行列としては無い・・・

495 :名前は開発中のものです。:2013/09/24(火) 19:35:08.68 ID:NDARxT+J
ん?というかMGetRotAxisがクォータニオンそのものなのでは

496 :名前は開発中のものです。:2013/09/24(火) 19:41:42.78 ID:NDARxT+J
acosfやってみましたが向いて欲しい方向から垂直を向いています
短いコードなのになぜこんな・・・

497 :名前は開発中のものです。:2013/09/24(火) 19:42:19.73 ID:klVNBi9S
やべえ3D全然わからん
基本わかってないから方向とかわけわかめになる

MATRIX rotmtx = MGetRotVec2(VGet(0,0,1),angle3D);
MATRIX mtx = MGetTranslate(モデル位置);
mtx = MMult(mtx, rotmtx);
MV1SetMatrix(modelHandle, mtx);

3Dやってる人尊敬するわ頑張って

498 :名前は開発中のものです。:2013/09/24(火) 20:13:05.75 ID:NDARxT+J
>>497
ありがとう、わからないまんまだけど・・

499 :名前は開発中のものです。:2013/09/24(火) 21:03:24.78 ID: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);

500 :名前は開発中のものです。:2013/09/25(水) 07:51:57.01 ID:xqO6E9L0
>>499
できたわ、Crossの順序が逆だったのか・・・

501 :名前は開発中のものです。:2013/09/25(水) 09:05:57.49 ID:IcW1ptMQ
>>500
モデルが元々向いてる方向が第一引数で、それを、回転させる為の行列を得たいのだからって事。
順序にはちゃんと意味あるんだぜ

502 :名前は開発中のものです。:2013/09/26(木) 13:09:27.12 ID:6kYMS1uf
中HIGHドライブ

びーるうまい

オマエラ

仕事わー

503 :名前は開発中のものです。:2013/09/30(月) 12:51:00.26 ID:MDOQSI/Z
いまいち外部ファイルの使い方が分からない
abcって書かれたファイルを読み込んでもプログラム文にabcって入るわけじゃないのよね

504 :名前は開発中のものです。:2013/09/30(月) 13:47:43.87 ID:8MdT1DdQ
スクリプトを実装したいってこと?
Luaでも組み込んだら

505 :名前は開発中のものです。:2013/09/30(月) 13:56:43.57 ID:gwWMPctb
読み込まれたファイルはメモリ領域に確保される
それだけ

506 :名前は開発中のものです。:2013/09/30(月) 13:56:48.64 ID:s5i3Qnz6
単にテキストファイルの中身を読み込みたいとかだと予想

507 :名前は開発中のものです。:2013/09/30(月) 14:01:09.34 ID:j1OFbA2O
abcって内容テキストファイルを読み込んだら
abcって読み込まれるんだけど、何が違うのだろうか

508 :名前は開発中のものです。:2013/09/30(月) 15:57:31.86 ID:L/mBCuvv
メモリとか変数とかがわかってないんではないかな。

509 :名前は開発中のものです。:2013/09/30(月) 17:43:12.62 ID:pUQjWvd3
DxLib以前のレベルの質問が来るのはこのスレの宿命

510 :名前は開発中のものです。:2013/09/30(月) 18:27:12.75 ID:7w5M7S/a
>>507
std::ifstream ifs("hoge.txt");
読み込んでも何も起きないじゃないですか!

511 :名前は開発中のものです。:2013/09/30(月) 18:30:48.69 ID:t84kkzgd
それまだ読み込んでもないしな

512 :名前は開発中のものです。:2013/09/30(月) 18:59:22.33 ID:J6i26pbr
当たり判定で、座標が重なってる時って当たり外れどっちにしてる?
座標で言えば

(0, 0)(1, 0)
(0, 1)(1, 1)

(0, 1)(1, 1)
(0, 2)(1, 2)

図だと

+-+
|a| ←こんな感じで重なってる時
+-+
|b|
+-+

513 :名前は開発中のものです。:2013/09/30(月) 19:22:09.36 ID:L/mBCuvv
俺なら当たりにするかなぁ。

理由は1ドットの大きさ……

(0, 0)(0, 0)
(0, 0)(0, 0)

(0, 0)(0, 0)
(0, 0)(0, 0)

……のような時のため?

514 :名前は開発中のものです。:2013/09/30(月) 19:37:45.64 ID:J6i26pbr
>>513
なるほどねぇ
確かにプレイヤーの視覚情報になるドット視点で考える方が、体感的に矛盾も少なくなるのかな

あと、数学視点じゃなくてゲーム屋視点で調べてたら、
浮動小数点にガッツリ誤差修正入れてて境界とか曖昧になってるのが多いのねw

515 :名前は開発中のものです。:2013/09/30(月) 20:07:39.17 ID:L/mBCuvv
俺、今までSTGとか何本かリリースしてるけど、当たり判定なんて超いいかげんにやってるよw

さすがに今日の1ドット判定がデフォな弾幕STGをしてるプレイヤーには「自機判定が大きすぎる」とか言われるけど、
自機弾が見た目の5倍くらい当たり判定持ってることについては誰も文句言ってきてないw

516 :名前は開発中のものです。:2013/09/30(月) 21:31:43.75 ID:cyhHp5cj
>>503
初心者の俺がエスパーすると

DrawFormatString( 0, 0, GetColor( 255 , 255 , 255 ), "hoge") ;

こんな内容の外部ファイルがあって
読み込み関数の直後にこんなプログラム文を挿入するみたいに
読み込み直後にDrawFormatStringを実行出来るってのなら便利なのになー

って考えだと予想

517 :名前は開発中のものです。:2013/09/30(月) 22:40:05.44 ID:w+IVtSGt
まさか、includeの話だったのか

518 :名前は開発中のものです。:2013/10/01(火) 03:46:58.46 ID:F7QtckIu
>>515
こんなこと言う作者の作ったSTGなんてやりたくねえなぁ

519 :名前は開発中のものです。:2013/10/01(火) 07:09:37.62 ID:jvCk1W0q
> 自機弾が見た目の5倍くらい当たり判定持ってる
プレイヤー側に爽快感を与えるためのテクニックとして定番だな
ほとんどのプレイヤーは、当たり判定が厳密かどうかなんて気にしてない

520 :名前は開発中のものです。:2013/10/01(火) 07:19:05.53 ID:pu7yJ+pU
自機グラフィックより大きくない限り「このゲームのあたり判定はこんなもん」って思うようになるだけだと思う

521 :名前は開発中のものです。:2013/10/01(火) 09:00:10.86 ID:G5cfMRew
当たってないように見えて当たる、よりも
当たってるように見えて当たってない、方が
プレイヤーに与えるストレスが少ないってベーマガに書いてあった。
ピクセル単位で当たり判定するのは、それ自体が売りになるケースだよね。
レミングスの地面判定とか。

522 :名前は開発中のものです。:2013/10/01(火) 09:17:15.92 ID:7b0/KPAj
インベーダーのようなゲームで
弾の通り抜けが困る、平面なのにジャンプしちゃう。
これをキチンと処理しないといけない。

523 :名前は開発中のものです。:2013/10/01(火) 13:00:43.20 ID:f1+9upcx
通りぬけの処理をするより通りぬけしないような速度と判定の大きさにするべき

524 :名前は開発中のものです。:2013/10/01(火) 22:07:38.33 ID:IljiT9fF
個人制作ゲーで通りぬけが起きると一気にバギーなイメージになってモチベ落ちるよね
いかに安定したクオリティを感じさせるかも腕の内だろうか

525 :名前は開発中のものです。:2013/10/01(火) 23:58:16.66 ID:JV6pAl2h
前フレーム座標と直線で結んでその直線との当たり判定を見るってばっちゃが逝ってた

526 :名前は開発中のものです。:2013/10/02(水) 01:35:17.03 ID:j4eVbLO2
なんか最近急にゲームを起動すると数回に一回の割合でフリーズして強制終了するしかなくなる
現象が起こるんだが他にも似たような現象起こるやついるか?

527 :名前は開発中のものです。:2013/10/02(水) 07:41:55.08 ID:12JVqAEu
それだけの説明で理解できるわけないだろ。

DXライブラリを最新に更新したら、とか条件があるならまだしも。

528 :名前は開発中のものです。:2013/10/02(水) 09:36:28.97 ID:j4eVbLO2
それもそうだな。とりあえず以前のバージョンに戻して検証中
他に分かってることはDxLib_Init()を呼び出した直後にフリーズするってことくらいかな

529 :名前は開発中のものです。:2013/10/02(水) 15:36:21.39 ID:M6jp0IGi
>>526
Windowsメッセージを送ってないとか?

530 :名前は開発中のものです。:2013/10/02(水) 19:23:19.87 ID:BEx3yg+7
以前このスレで
VMのwindows内で起動したらマルチメディアタイマーの精度計測に失敗して
起動しなかった、っていう事例があった気がする

まずはログを見て、起動処理のどこで止まってるか
確認するがよろしかろう

531 :名前は開発中のものです。:2013/10/02(水) 20:12:13.70 ID:j4eVbLO2
恐らく原因はこれだと思うけど一か月以上前に作ったやつだし今まで平気だったのにな
起動時の設定をダイアログボックスでやる際のウィンドウ処理とかが関係してるみたい。・・・多分。

532 :名前は開発中のものです。:2013/10/02(水) 20:52:21.57 ID:LX4kyIfI
>>531
http://jihi4541.blog.fc2.com/blog-entry-3.html
これ?

533 :名前は開発中のものです。:2013/10/02(水) 22:53:47.44 ID:j4eVbLO2
直ったと思ったら直ってなかった・・・
ログはwindows/syswow64/wer.dllを読み込みました。Cannot find or open the PDB fileで止まってた
再起動してデバッグしたら
ファイル追跡ログ ファイルに Unicode バイト オーダー マーカーが見つかりませんでした。って出た
いっそのこと起動部分を作り直してみるか・・・

534 :名前は開発中のものです。:2013/10/02(水) 23:39:04.47 ID:j4eVbLO2
全部コメントアウトしてもダメだった・・・止まってる場所も変わるみたいだし
もうお手上げだな。いっそのことVC2012に移行してみるか・・・XPに対応しなくなるけど

535 :名前は開発中のものです。:2013/10/03(木) 00:40:00.03 ID:KUDPieY2
全部コメントアウトしてダメだったって事は
予想してた箇所は全くの見当違いであって
他にもっと単純なバグがある、って事じゃないのかな。

536 :名前は開発中のものです。:2013/10/03(木) 03:09:38.93 ID:VsufsxKa
毎回エラー箇所が変わる状態になって最近書いた部分見直したら
配列オーバーだったってことなら一度ある

今はなぜか宣言追加しても生成されないバグに悩まされてる
例えば新しくint x;x=1;って書いてデバッグするとxが値もポインタももってない
リビルドすると直る
この症状に原因あるなら教えてください

537 :名前は開発中のものです。:2013/10/03(木) 03:15:29.35 ID:7ILxSOK4
コンパイルに含めない設定になってるとか

538 :名前は開発中のものです。:2013/10/03(木) 06:48:15.87 ID:XsYxUmPH
>>531
「これ」って何?

>>533
ログってIDEの出力ウィンドウじゃなくてDxlibがexeと同じ所に吐き出すログの事だぞ。

>>534
「全部」って何?

539 :名前は開発中のものです。:2013/10/03(木) 09:14:50.87 ID:cUvGeNvK
新規プロジェクトを作って、そこに今までのソースファイルぶち込んでみたら、
何事も無かったかのように動いたって経験もあるので、どうしてもダメだったら試行の候補にでも追加しておくれ。

540 :名前は開発中のものです。:2013/10/03(木) 10:35:01.11 ID:gPI1v/3E
>>533
Windowsアプリケーションは
約60分の1秒の間隔でWindowsにメッセージを送り続ける必要があります
メッセージを送らなくてもプログラムは起動しますが
その場合、動作がどんどん重くなり誤動作を起こす原因にもなります

ゲームが重くなる、起動するだけで現象が起こる
それらの状況からWindowsメッセージではないかと思いました
1フレームという間隔で送り続ける必要があるので
60フレーム(1秒)も送らなけば、もう完全に重たくなるのではと

541 :名前は開発中のものです。:2013/10/03(木) 10:42:21.98 ID:meWLRvQ9
>>536
PCの時計くるってない?

542 :名前は開発中のものです。:2013/10/03(木) 11:06:19.70 ID:PZbKFv8R
>>534
引っ張ってるライブラリ、パスの通ってるライブラリについて、
32bitと64bit混在してないか?

> Cannot find or open the PDB fileで止まってた

↑これが気になったので。

543 :名前は開発中のものです。:2013/10/03(木) 12:48:03.54 ID:yn64SXNB
>>541少なくとも1分以上狂ってはいない
発生回数は今のところ3回
1回目のとき3時間くらい時間使って諦めてリビルド
原因放置はしたくないけど後回しにしてた

544 :名前は開発中のものです。:2013/10/03(木) 17:55:27.38 ID:KUDPieY2
単純に、特定の条件で無限ループに陥ってるとかそんなバグじゃないのかな。

545 :名前は開発中のものです。:2013/10/03(木) 19:27:01.40 ID:LTHD4yMi
デバッグ中forやifでエラーでて止まるってエラーが最初(結論はint nが生成されずnが見つからない)
また起きたら宣言初期化周りもう一度調べてみるよ
現象の検証ばっかしててあんまり見てなかった気がする
ヘッダ含めて生成されないんだから最初のInitialzeまでかnewまわりに原因があるはずだよな

546 :名前は開発中のものです。:2013/10/03(木) 20:53:45.93 ID:Ulbekmlp
どうせメモリを壊してるんだろ
ポインタを理解してないクズが

547 :名前は開発中のものです。:2013/10/03(木) 21:28:16.99 ID:QMWQESyx
ウィンドウ外に画像を描画する処理とウィンドウと画像の当たり判定調べて描画の有無を判断するのってどっちが処理速いの?
描画コストがどのくらいかかるのか全然把握出来てないのだけど

548 :名前は開発中のものです。:2013/10/03(木) 22:36:24.81 ID:edQZBgYu
その辺は気にせずともDirectXがいい感じにやってくれてるはず。

549 :名前は開発中のものです。:2013/10/04(金) 00:51:22.69 ID:qihA5f5F
3Dモデルを画面に表示させたり、
キー入力に合わせて回転するみたいな簡単な事はできるようになってきたけど、
設定メニューとかのようなGUIが作れない。
そもそもどう作ればいいの?
ダイアログに表示するような釦を用意するだけで手間なんだけど、
全部自作してるの?

550 :名前は開発中のものです。:2013/10/04(金) 01:45:50.25 ID:Ql0gzuVh
>>548
そうなのか…
下手に弄るよりは任せた方が簡潔に書けるね

551 :名前は開発中のものです。:2013/10/04(金) 08:57:28.28 ID:8I+rYF1p
>>550
純粋に表示だけならレンダリング処理のパスが省略されるはず。
ただゲームプログラミングで考えた時、裏で自分でしてる論理処理の方は視界の外の部分は省略したりするよな。
「重さ」のネックは大抵そっちにあるから。

552 :名前は開発中のものです。:2013/10/05(土) 01:56:11.12 ID:swZovpC2
ライセンス取るのが辛い
なんでこんな仕様にしたのか

553 :名前は開発中のものです。:2013/10/05(土) 02:38:04.19 ID:swZovpC2
ごめんね誤爆なの

554 :名前は開発中のものです。:2013/10/05(土) 07:04:12.45 ID:42i+ls1b
3dで、カメラの後ろ側にあるオブジェクトは、画面のドットから飛ばしたレイの衝突判定対象にする?
カメラの真後ろにあるオブジェクトに対してレイを飛ばした時の判定なんてほぼ無駄なわけじゃん

555 :名前は開発中のものです。:2013/10/05(土) 07:30:15.10 ID:zPZwPgbh
>>554
まず対象オブジェクトがカメラの後ろにあるかを判定する必要があるけど、それって結局レイ飛ばすなり「平面-オブジェクト」で判定するわけじゃん。
で、その後レイで衝突判定とるの?
他の処理の都合であらかじめオブジェクトがカメラの後ろにあるかどうか解ってる特殊な事情が絡まない限り、全探索するしかなくね?

556 :名前は開発中のものです。:2013/10/05(土) 09:23:08.63 ID:0JH/7YRj
カメラの位置と方向ベクトルに対して、明らかに表示角の外にいる物は、
より細かい計算するより前に対象外として一律処理スキップとかするけど俺

557 :名前は開発中のものです。:2013/10/05(土) 09:25:26.82 ID:0JH/7YRj
>>554
画面のドットからレイ飛ばすってのがなんか引っ掛かるけど、俺は表示物じゃなくて論理管理レベルでの計算で >>556 する。

558 :名前は開発中のものです。:2013/10/05(土) 13:42:34.85 ID:U+9bHzcQ
俺が初心者で無能なだけかもしれないけど
>>554って環境マップとか使って擬似的な反射でも考えない限り全く無縁の話じゃないの?
光源が後ろにない限りカメラより後ろのオブジェクトが描画結果に影響することはないんじゃない?
乱反射の部分は環境光ってファクターで擬似的に表してるんだし

っていうか>>556の方が効果は大きそうだし
描画時間計測したことあるけど、ライティング関係の処理はDirectXだかDXlibだか分からんが自動で弾いてくれてるっぽいぞ
ビルボードを視野外(近く)に置いたときと、視野内の無限遠に置いた時がほとんど同じで、視野内の近くに置いた時より格段に軽かった

的外れの恥ずかしいレスじゃありませんよーに

559 :名前は開発中のものです。:2013/10/05(土) 18:25:07.74 ID:zPZwPgbh
>>558
それって、レイトレースとかの文脈のレイ?
>>554の言うレイは普通の半直線の事を指してると思うんだけど。
DXライブラリスレでレイトレースとか出る話題じゃないし…。

マウスクリックでオブジェクト選択みたいな処理を実装するために半直線と交差判定取ってるんだけど、
カメラの後ろにあるオブジェクトまで交差判定とるのって無駄じゃね?

って話だと思ってたけどあってるよね?

560 :名前は開発中のものです。:2013/10/05(土) 18:48:29.96 ID:zPZwPgbh
あと>>556のカメラの位置と方向ベクトルでプレ処理って話だけど、
位置ベクトル+方向ベクトル=平面
だよ。
要するにカメラの後ろ=nearクリップ平面の負の領域ってことだし。


if ( !CollidePlaneObject(nearClipPlane, obj) ) return; // プレ処理(カメラの後ろにあるか判定)

if ( !CollideRayObject(ray, obj) ) return; // レイ交差判定(本ちゃん判定)

って感じだと思うんだけど、平面-オブジェクトの判定とレイ-オブジェクトの判定って計算的に殆ど同じだから、
最初のプレ判定あんま意味なくね?計算省いてるようで実は二重に計算してね?
というのが>>555で言いたかったこと。

561 :名前は開発中のものです。:2013/10/05(土) 18:49:58.53 ID:TrZUJRMY
ウィンドウモードで起動時に
ウインドウ枠の「×」をクリックした時に
DxLib_End関数を評価させる方法はないでしょうか?

それとも「×」をクリックして終了した時に
自動的にDxLib_End関数が評価されるように設計されているのでしょうか?

562 :名前は開発中のものです。:2013/10/05(土) 20:10:30.39 ID:0JH/7YRj
>>560
二度判定されるのは事実だけど、無駄じゃない。
複雑な形状を持つオブジェクトの中身に対する細かい判定とは別に、
そのオブジェクトが置かれるグローバル座標を原点とする半径や最大立法体で判定して、先に一回「明らかな範囲外」を落とすんだよ。
実際に運用されてる有名な例で言うと、bulletphysics等がそう。

563 :名前は開発中のものです。:2013/10/05(土) 20:13:55.33 ID:0JH/7YRj
ちなみに >>560 のように「意味無くね」って思う事があるとしたら、初歩的な立体しか扱わず、
視野内での計算と視野外での計算が完全に同じで事足りるケースだけ

564 :名前は開発中のものです。:2013/10/05(土) 20:38:31.68 ID:OUqe1t+L
>>559
ひいいドットから出るレイとか言うからレイトレーシングの方だと思ってた恥ずかしい
このスレって突然DirectXの話題になったりCの話題になったり結構カオスだから勘違いしてましたごめんなさい

565 :名前は開発中のものです。:2013/10/08(火) 03:59:08.46 ID:FyCpCW0B
テクスチャじゃない加工済み3Dアニメーション(例 爆発エフェクトとか)って描画どうしたらいい?
1加工済みアニメを3D空間or画面に2D描画(ペラペラだけど我慢orカメラとの角度固定)
2加工済みアニメを透明なマテリアルにテクスチャアニメーションとして張り付けてx→3D描画
3アニメーションまで読み込んでその場でエフェクトを作る
今まで視点固定なので1で作っていて、次は3D視点のものを作ろうと思ってて、描画方法考えています。
2そもそもテクスチャアニメーションをx化できるのか、あと球の中心とかあると張り付け不可。
3リアルタイムの負荷&処理方法実装の難しさとか、シェーダの延長でなんとかするしかない?
先人様がいらっしゃれば知恵を分けてほしいです。

566 :名前は開発中のものです。:2013/10/08(火) 08:37:39.25 ID:uzXpM02K
3Dゲームでエフェクト(爆発表現)の仕方
1)カメラ固定で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

567 :名前は開発中のものです。:2013/10/08(火) 11:02:19.63 ID:E8v6Sv+Z
PSレベルなら板ポリに画像貼るって分かるけどPS2レベルになるとわけわからんよね
あとシェーダーシェーダー言われるけど意味が全く分からない
シェーダーってどこかで落とすツールか?って感じ

568 :名前は開発中のものです。:2013/10/08(火) 11:18:41.58 ID:jcgEteQj
「シェーダで」って言うのは「プログラムで」って言う意味と作業場所以外変わらんから説明不足感すごいよね

569 :名前は開発中のものです。:2013/10/08(火) 11:21:39.17 ID:Fb0fwir5
PS2も大差ないだろ
基本的に板ポリの量が増えるだけ

570 :名前は開発中のものです。:2013/10/08(火) 11:49:21.01 ID:8bfY/fC5
>>556
詳しく説明&サンプル感謝します
開ける環境に戻ったら勉強します。
しばらくビルボート式を用いて、他のことも含めて余裕がでてきたらシェーダを学ぼうと思います。
何年後のことやら…

571 :名前は開発中のものです。:2013/10/08(火) 11:50:03.23 ID:8bfY/fC5
>>566だミス失礼

572 :名前は開発中のものです。:2013/10/08(火) 12:19:08.14 ID:E8v6Sv+Z
>>568
腕を重点的に鍛えたいけどどうすればいい?って聞いたら筋トレしろって言われるのと同じだよね
ここ以外でもシェーダーは具体的なの見たことないな

573 :名前は開発中のものです。:2013/10/08(火) 12:53:20.88 ID:ttaYSeAJ
>>572
OpenGL関係のスレとか、さもなきゃ書籍でも見たらいいのでは
一応補足しておくと、OpenGLのglslとDirectXのhlslは別物だけど、考え方は同じだよ

574 :名前は開発中のものです。:2013/10/08(火) 12:55:13.56 ID:ttaYSeAJ
あ、スレじゃなくてサイト。素でtypo
何も知らない状態で待ってても見かけないと思う。
例えればプログラミングの基礎編にある物じゃなく、必要な人が利用する応用編の範疇の世界だから

575 :名前は開発中のものです。:2013/10/08(火) 13:01:23.14 ID:t3akdCKp
俺なんて爆発表現は球体ポリゴンに、それっぽいテクスチャ拾ってきて材質設定して貼るだけだぞ
で、エフェクト中は球体を回転させながら透明度だけ弄る
頂点を操作するアニメーションなんてできないし

576 :名前は開発中のものです。:2013/10/10(木) 18:23:43.43 ID:8tsX4vRv
>>512-513
亀だけど、それ当たりで考えるとビリヤードのブレイクショットの配置みたいに
静止しててくっついてる状態でちょっとめんどくさくなると思う

577 :名前は開発中のものです。:2013/10/11(金) 00:20:35.39 ID:6kBrNmzO
接触してる相手の運動ベクトル見て振る舞いを決めればええんや

578 :名前は開発中のものです。:2013/10/11(金) 00:39:09.42 ID:+9JMgRHw
>>575
もう板ポリのテクスチャ変更して3Dドットみたいにしちゃうのか
試してみよう

579 :名前は開発中のものです。:2013/10/11(金) 08:33:37.25 ID:KkfuXsaC
3次元の音響ライブラリってないですか?
音を拾う座標指定して、音量とか減衰率とか反響とか設定できて簡単なやつ

580 :名前は開発中のものです。:2013/10/11(金) 09:13:37.91 ID:RGakvLAz
なんでそれをDXライブラリスレで聞くんだ?

それはともかくとして、そんなライブラリがあるとしたらXAudio2のラッパということになるだろうけど、そんなのは現在ないっぽい

BASS Audio Libraryという3Dサウンドの使える比較的シンプルなライブラリがあるっぽいが、
日本語のドキュメントは殆どと言っていいほどないみたいなので自力で調べられない人には使えないだろう

581 :名前は開発中のものです。:2013/10/11(金) 09:26:57.30 ID:kG8mPrPa
>>579
この本に具体的に解説してあるから、実装しなさい。

DirectX9必携: 鎌田 茂雄: 本

582 :名前は開発中のものです。:2013/10/16(水) 23:39:32.53 ID:Rf7cBVFP
C#+DXライブラリでやってるんだけど
スクリーンに黒色で塗りつぶしたところがDrawGraphで透過Trueにしても透過しない
なぜじゃー

583 :名前は開発中のものです。:2013/10/16(水) 23:50:58.42 ID:AJwC2plj
ブレンドモードは?

584 :名前は開発中のものです。:2013/10/16(水) 23:55:26.73 ID:09GDCNSk
DxLibを利用した開発で、デバッグしようとすると
数度に一回マウス以外完全にフリーズしてしまいます。

VSの一番下部の青い所がF5を押してデバッグ開始するとそこがオレンジになって、
そこに AudioSes.dll シンボルがどうたら 
と表示されて読み込み中?のまま、マウスポインタは動かせるのですがそれ以外の動作ができなくなります。
タスクマネージャーの起動もできずになって直接電源切るしかなくなります。
このままではHDが死んでしまいそうです。
何が原因かわかる方いらっしゃいませんか?

ぐぐっても、似たような症状の方は見つかるのですが
解決策が出てないのしか見つからないです。
VS Express for Desktop利用です。
windows7 64bitが問題なのかともおもうのだけど。

585 :名前は開発中のものです。:2013/10/17(木) 00:03:15.56 ID:rXL4X8+O
俺が遭遇したことあるトラブルはエレコムのUSBパッドくらいだな

586 :名前は開発中のものです。:2013/10/17(木) 09:25:56.10 ID:c674Ibx6
>>583
NoBlend

587 :名前は開発中のものです。:2013/10/17(木) 10:41:25.53 ID:p0PD90TH
なめとんか

588 :名前は開発中のものです。:2013/10/17(木) 11:06:13.46 ID:WfFtC5GU
>>584
DxLib関係ないと思うが
システムごと死ぬのは十中八九デバイスドライバが悪い
64bitなら32bit用のドライバで動いてる奴が悪さしてるとかひょっとしたらあるかも

589 :名前は開発中のものです。:2013/10/17(木) 15:23:43.00 ID:c674Ibx6
Noblendだと透過色って機能せんの?
ドウイウコトナノ・・・

590 :名前は開発中のものです。:2013/10/17(木) 16:06:04.12 ID:G8MUlgiH
透過シナイ画像表示関数ッテ存在価値アルノ?
画像全体に透過処理するんならモード変えろ

591 :名前は開発中のものです。:2013/10/17(木) 16:14:55.88 ID:5lApwyFA
数レス前も読んでなかったすまん…
諦めて最初から透過しとけば?

592 :名前は開発中のものです。:2013/10/17(木) 16:57:54.53 ID:c674Ibx6
いろいろ試してみたけど透過色はBMPとJpg読み込みのときだけ機能して
他のスクリーンやスクリーンをGetDrawScreenGraphでMakeGraphでつくったハンドルに移しても機能せず
アルファ付き画像でアルファ指定してやらんと透過せんのね
微妙すぎぃ

593 :名前は開発中のものです。:2013/10/17(木) 17:05:56.17 ID:2Y9zA1MX
GDIのフォーマット(pixel辺りのビット数)についてちゃんと理解した上で扱ってれば特に問題無い気もする

594 :名前は開発中のものです。:2013/10/17(木) 17:27:20.11 ID:c674Ibx6
面倒だけどマスク画像作って一回ブリーチングしてから描画することにしたわ
サンクス

595 :584:2013/10/18(金) 02:10:22.43 ID:Fdn5BT6n
>>588
DxLib使わなければ固まらなかったんでそこばっかり調べてたのですが、
なるほどと、いろんなものアップデートかけたけど状況変わらずでした。

解決ってわけじゃないけどBCCに移行したら
一時間くらい作業してみてるけど再発せず。
VSが悪かったってことなんだろうか?

ただ、すげー使いにくい。

596 :名前は開発中のものです。:2013/10/18(金) 16:05:43.20 ID:wI1cKsI5
最小限のプログラムでも発生するなら、そうかもねー。
設定変えればいけるかもしれんけど

597 :名前は開発中のものです。:2013/10/18(金) 18:23:23.35 ID:N5DQXWku
え、DXライブラリって、
64bitか32bitかで支障あるん?
64bit用なんてありましたっけ?

598 :名前は開発中のものです。:2013/10/18(金) 21:10:30.89 ID:HCxtnSqx
VSのExpress版使ってると64bitビルド出来ないから32bit版しか知らない

599 :584:2013/10/19(土) 00:04:03.03 ID:QcOl7SCF
>>595
自己レス。
おそらく本当に解決したので一応ご報告。

BCCでも固まりました。
というか、デバッガで固まったのでそこを重点的にぐぐったら、
同様の症状でDRM関連のCYMON.SYSを消したら直ったというページを発見出来たので、
削除したらおそらく今度こそ本当にたぶん解決。
同様の事案で悩んでる人たちに伝えたい。

>64bit云々は同様の件で困ってる人がほとんど64bitのOSだったので怪しんだだけです。
結果的に関係なかった。
DxLibも関係なかった。

600 :名前は開発中のものです。:2013/10/19(土) 00:05:41.25 ID:cL2pDxD5
乙 結構有益な情報だわ

601 :名前は開発中のものです。:2013/10/19(土) 01:03:15.68 ID:5grMyEOo
サイモンシスって読めばいいの?

602 :名前は開発中のものです。:2013/10/19(土) 01:16:15.10 ID:+1vXIvno
Are you going to Scarborough Fair?

603 :名前は開発中のものです。:2013/10/21(月) 18:41:36.26 ID:w8555t4z
初心者です
よくリファレンスでFPS固定させるコードとかあるけどSetWaitVSyncFlag()で垂直同期するんじゃだめなんですか?
あとFPSによってゲームスピードが変わる云々という記述を見ますが、何故フレームで計算するんです?
私はGetNowCount()で計算しているんですが、何かまずい事でもあるのでしょうか

604 :名前は開発中のものです。:2013/10/21(月) 18:47:51.14 ID:/u23XyM9
>SetWaitVSyncFlag()で垂直同期するんじゃだめなんですか?
ダメ。垂直同期がない環境もある

>何故フレームで計算するんです?
時間に応じて可変フレームに対応するゲームを作るのは大変だから

>私はGetNowCount()で計算しているんですが、何かまずい事でもあるのでしょうか
パーフェクトに組めるなら問題ないけど、初心者には無理だと思う

あとです?で止めずにちゃんとですか?って書けよデコスケ

605 :名前は開発中のものです。:2013/10/21(月) 18:58:35.56 ID:w8555t4z
>>604
>時間に応じて可変フレームに対応するゲームを作るのは大変だから
何故ですか?可変フレームなら尚更フレームで計算より時間で計算した方が良いと思うのですが
あ、この場合の計算って言うのは例えば○秒で画像Aをy軸に+1するみたいな計算です

606 :名前は開発中のものです。:2013/10/21(月) 19:03:06.05 ID:/u23XyM9
>>605
フレーム固定処理ってのは○秒の部分を16.6666...ミリ秒に固定してるだけだぞ
一定時間毎に処理するならフレーム処理と変わらない

607 :名前は開発中のものです。:2013/10/21(月) 19:06:38.76 ID:/tZQoOAW
回せるだけ回したらマシンパワーの無駄食いだから

608 :名前は開発中のものです。:2013/10/21(月) 19:07:14.69 ID:sMEbtuV5
たぶん質問の書き方がおかしくて話が伝わってない

FPS固定よりも可変フレームレートの方が良い
開発が少し面倒くさい程度で、デメリットがない

垂直同期はテアリングが起きないのが最大の利点
ただしフレーム数がモニターに依存するようになるから
結局可変フレームレートに対応するようなプログラムを書く必要があって面倒くさい

だから最も初心者向けサイトは基本的に
作りやすい60FPS固定にしてフレーム基準で計算するようにしてる
しかもデメリットは垂直同期しないために起こるテアリングくらいしかない

609 :名前は開発中のものです。:2013/10/21(月) 19:15:43.93 ID:w8555t4z
そもそもフレームってそんなに重要なもの何ですか?
DXライブラリ使っててフレームレートを意識した事が全くなくて、リファレンスなどを見て何故そこまでしなければいけないのかと困惑している次第で

610 :名前は開発中のものです。:2013/10/21(月) 19:17:01.12 ID:xXi4ljOj
フレーム数を時間代わりにすると環境によってはカクカクになります?

611 :名前は開発中のものです。:2013/10/21(月) 19:20:20.12 ID:/u23XyM9
可変フレームレートって、ネトゲでもなきゃCPUが貧弱だった頃の名残じゃないのか?
処理落ちするとしたらほぼ確実に描画が原因な今の時代だと、固定フレーム+フレームスキップがベターだと思う

612 :名前は開発中のものです。:2013/10/21(月) 19:29:53.55 ID:/u23XyM9
フレームスキップじゃないな
固定フレーム+描画スキップな

世の中のゲームの大半が60フレーム固定なのにはちゃんと理由があるわけで

・60フレーム以上のフレームレートにしても、人間が見るぶんには特に滑らかだと感じない
・CPUが成長したので処理で60フレームでないゲームなんてありえない

作るのが動的なゲームである限り、固定フレームを捨てるメリットはないというのが俺の持論

613 :名前は開発中のものです。:2013/10/21(月) 19:42:40.65 ID:70y1g1SQ
60フレーム出ないゲームなんてありえないって言い方はおかしいが、
とりあえず言いたい事はわかる

614 :名前は開発中のものです。:2013/10/21(月) 19:48:43.62 ID:1CRFZwZl
60フレームを確保しているのは、ゲーム機の格闘ゲームくらいです。
ゲーム機で他のジャンルは ほとんどが30フレーム

パソコンの場合は、強力なPCもあれば、非力なPCもあるので
色々な手段を使って、最低限のフレームレートを確保しようとする。
また、負荷変動が多々にあるので、それに対処する必要も或る。

615 :名前は開発中のものです。:2013/10/21(月) 19:52:47.30 ID:xXi4ljOj
たいして難しくないんだからFPSと垂直同期くらい設定可能にしておけよw

616 :名前は開発中のものです。:2013/10/21(月) 19:53:04.57 ID:sMEbtuV5
>>609
何を質問したいのかがよくわからない
可変フレームレート(時間単位での処理)でできてるならそれで大丈夫だよ

>>612
60フレームと120フレームでは明らかに違うから見た瞬間にわかるよ
120と240は俺自身は比べたことがないけど恐らくそれも感じ取れるだろう
実際に今のテレビのほとんどが240フレーム表示を採用してるからね

2万のネットブックとかで動かすユーザーなんかが絶対にいるから
ゲーム用PCで1000fpsくらい出せるようなゲームでも、20fpsとかになることはざらにある

617 :名前は開発中のものです。:2013/10/21(月) 19:55:43.22 ID:/lNEn8aD
正直60でない化石の配慮なんて無駄
広大な3Dマップを切り替えなしのリアルタイムで読み込むタイプならあって損はないかもね
60より必要あるのはレート120やら144やら使う格ゲーFPSガチ勢くらい
それ以外のジャンルなら頭動かすだけ無駄
やりたければ勝手にどうぞの世界

618 :名前は開発中のものです。:2013/10/21(月) 20:04:47.68 ID: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固定しよう」とか言ってるなら最初から時間測れば良いのでは?
と思ったって事です

619 :名前は開発中のものです。:2013/10/21(月) 20:08:41.83 ID:/u23XyM9
初心者はやっぱり明後日の方向で悩んでるから怖いな
そんな単純なもんじゃないから、フレーム固定で作っておけ

620 :名前は開発中のものです。:2013/10/21(月) 20:11:54.34 ID:1CRFZwZl
パソコンの負荷は一定では無く、不規則に変動するのですよ。
それが、個別に全部が違う挙動をする。

621 :名前は開発中のものです。:2013/10/21(月) 20:14:02.72 ID:w8555t4z
すいませんスペックじゃなくてリフレッシュレートです

http://dixq.net/g/03_14.html

622 :名前は開発中のものです。:2013/10/21(月) 20:19:16.36 ID:/u23XyM9
リフレッシュレートは60や120だけじゃなくて50や75や72や85もあるんだぞ
ズレるわ

623 :名前は開発中のものです。:2013/10/21(月) 20:23:20.98 ID:sMEbtuV5
>>618
そのサイトは初心者向けだから可変フレームレートは難しい
また、その章までに書いたプログラムすべてを変更する必要がでるから避けてるんだよ

>>608にも書いたけど時間を計って可変フレームレートにするのは良いことだよ
一応処理落ちについての話題が出たから例として触れておくと、
極端な処理落ちが発生したときに可変フレームレートだと衝突判定のすり抜けが起こることが
予期されるからそれを防止するためのメカニズムを考えないといけなかったりとか
とにかくプログラム書くのがFPS固定に比べて面倒くさい

624 :名前は開発中のものです。:2013/10/21(月) 20:27:42.27 ID:r1lqBEdn
FF3のエンカウント時エフェクトみたいな
1フレーム毎に画面が白黒⇔カラーを繰り返すみたいなエフェクトを実装するとき
可変フレームレートだと白黒のままになったりカラーのままになったりで
おかしな表示になるんじゃないんですか

625 :名前は開発中のものです。:2013/10/21(月) 20:27:43.27 ID:/u23XyM9
面倒くさいどころか逆に負荷が増す場合もあるぞ
カーブとか重力を考慮した移動とか複雑な移動処理をするなら

完全な再現性を実現できない限りは可変フレームレートなんて採用すべきじゃないと思うな
ネトゲやFPSだって、発生した事実関係だけをサーバに送信して無理矢理辻褄合わせてるだけだし

626 :名前は開発中のものです。:2013/10/21(月) 20:30:11.95 ID:w8555t4z
FPS60に固定する

予め1フレーム過ぎる毎にint countを+1しておく

あるアクションから一秒たったら画像を表示させたいから
アクションおこした時にint a = countする

count - a > 60の時に画像を表示

みたいな説明があって
countの代わりにGetNowCount()を使えばfps固定する必要なんてないと思ったと言おうとしました
説明下手でごめんなさい

>>623-625
なるほど
まだそんなレベルに達していなかったので面倒くさいとも思いませんでした
ありがとうございました

627 :名前は開発中のものです。:2013/10/22(火) 00:35:28.42 ID:p3Db7vmq
>>625-626
微分方程式を解ける秀才がこのスレに降臨したかと期待したが、ただの初心者だった

628 :名前は開発中のものです。:2013/10/22(火) 03:54:29.71 ID:o/EMSDRG
>>626
ああ、それは勘違いしそうになるな。説明が不適切とまでは言わないが。

1秒後(あるいは60フレーム後)に画像を表示する、くらいなら正直どっちでもいいと思うけど、
秒速120ドットで移動するとかだと少し面倒になるって感じかねぇ。分母が変わっちゃうから。

629 :名前は開発中のものです。:2013/10/22(火) 04:28:57.73 ID:o/EMSDRG
固定/可変フレームレートの問題というよりも、>626の場合は、
ゲーム内時間をフレーム基準で考えるか、実時間ベースにするかって問題だよね。

フレーム基準というのは、つまりゲーム内時間をプログラマが管理できる状態と言い換えられる。
それに対して、実時間を基準に処理を行うというのは、ゲーム内時間にプログラマがアクセス出来ない状態と言える。

この差は結構重要で、プログラミングをする際に1つの処理を細かく積み上げて考えたい時や、
あるいはテストプレイやデバッグの際に、ゲームスピードをゆっくりにして動作を見極めたいという時に、
実時間ベースだと不便そうだなあというのは、何となく分かってくれるんじゃないかと思う。

もちろん実時間ベースが優れてるところもあるので、決して間違いではないのだけれど。

630 :名前は開発中のものです。:2013/10/22(火) 06:42:35.27 ID:ExrKC0WT
dxライブラリのfps制御そのまま使ってるけどよくない?
1秒を60フレームって前提でゲーム内のタイマー作っちまってるわ

631 :名前は開発中のものです。:2013/10/22(火) 06:52:51.98 ID:o/EMSDRG
オンラインランキングとかしないなら、そんなに困らないと思う

632 :名前は開発中のものです。:2013/10/22(火) 07:32:13.52 ID:h2dd5GhR
可変フレームで気になってたんだけど
環境によってfps変わってたらリプレイの再現できなくない?

633 :名前は開発中のものです。:2013/10/22(火) 08:42:21.30 ID:V7djTReU
処理のループはfpsに制限されないでしょ
動きが荒くなるだけじゃない?

634 :名前は開発中のものです。:2013/10/22(火) 08:54:17.54 ID:BGWyzjBW
マリオカートのゴーストとかどう記録してるんだろ
と思ったけど処理したときついでに時間記録すれば普通にできるか

635 :名前は開発中のものです。:2013/10/22(火) 09:32:38.97 ID:a95zJsvM
やってみそw

636 :名前は開発中のものです。:2013/10/22(火) 09:45:09.67 ID:aNv/ean1
ゴーストとかリプレイを実装しようとして、「なぜずれるんだー」と頭を悩ますのはお約束だよな? な?

637 :名前は開発中のものです。:2013/10/22(火) 11:17:27.80 ID:uNccePou
処理時間≠入力時間に気をつけて処理させれば固定と同じようにやればいいだけ
ずれ誤差怖いから実体の位置を入力時間ごとに別で取っておいてそこから計算させた方がいいかも?
使う処理が1つで済む&信頼度高いけど情報量が膨れそう
とか妄想したけどジャンル的にリアルタイムリプレイなんて一生実装しないだろうな

638 :名前は開発中のものです。:2013/10/22(火) 12:36:20.41 ID:RkpLyTH2
低レベルな話ほど長く続くね

639 :名前は開発中のものです。:2013/10/22(火) 12:47:39.37 ID:R7mUWhnr
そりゃ母数が違うからな

640 :名前は開発中のものです。:2013/10/22(火) 15:20:36.48 ID:o/EMSDRG
確かにゲームプログラム全体の中では低レベル寄りな方だよな。vsyncとか。

641 :名前は開発中のものです。:2013/10/22(火) 15:31:37.39 ID:02IR7DMm
自転車置き場の議論なら誰でも参加できるからな
俺のように高レベルな人間になると議論する相手を探すのも苦労する

642 :名前は開発中のものです。:2013/10/22(火) 15:55:43.08 ID:RkpLyTH2
バカばっか

643 :名前は開発中のものです。:2013/10/22(火) 16:25:11.43 ID:aNv/ean1
>>641

多分ツッコミ待ちなんだろうけど、どこへツッコめばいいのかわからんw

644 :名前は開発中のものです。:2013/10/22(火) 16:30:05.22 ID:IVeWUgqF
冗談にマジレスはあかんでー

645 :名前は開発中のものです。:2013/10/22(火) 18:58:55.59 ID:Fwxh/sRV
自作中のゲームがウィンドウモードと比べて全画面モードの処理速度がどうしても遅いのですが
他のdxlibを使ったゲームはウィンドウの方が不安定だったりするのになぜでしょうか…

2D表示機能のみで、主な設定関数は
SetGraphMode(800,600,16)
SetDrawScreen(裏画面)
SetDrawMode(バイリニア)//ゲーム中変更なし

処理としては、描画に加算・減算切り替えが多め、背景の計算がやや複雑といった感じです

全画面モード中はこの処理が重い、といったことはあるのでしょうか?

646 :名前は開発中のものです。:2013/10/22(火) 20:35:42.51 ID:IVeWUgqF
リリースで測った?

647 :名前は開発中のものです。:2013/10/22(火) 22:01:05.96 ID:o/EMSDRG
特定のビデオカード(や設定)と相性が悪いとか、
解像度を変えるのではなくウィンドウサイズを上げてるとか…… うーん、わからん

648 :名前は開発中のものです。:2013/10/22(火) 22:30:32.24 ID:smR91Eyn
過去の記憶ではリリースビルドでも遅くなっていました(計測はしていなく今リリースビルドしたらデバックビルドでは出ないエラーが出て改善できず、計測できませんでした)
音楽に合わせた演出がゲーム最初にあるのですが確実にずれていました

デバックビルドで計測しましたが、ウィンドウだと13ms、全画面だと17msでした
screenflipで差が出るようです

649 :名前は開発中のものです。:2013/10/22(火) 22:31:54.83 ID:o/EMSDRG
17のほうが正常だそれ

650 :649:2013/10/22(火) 22:34:58.08 ID:o/EMSDRG
正常、って言うと語弊があるな。訂正。
たぶん、モニタ&グラボのリフレッシュレートが75Hz(≒13ms)になってるんじゃないか?
で、フルスクリーンにするときに、プログラム側で60Hz(≒17ms)に設定しているんだと思う

651 :名前は開発中のものです。:2013/10/22(火) 23:04:05.07 ID:CMYREC7c
おお、モニタの情報をみたら75Hzでした
では全画面モードが遅いのではなくウィンドウモードが若干早送りされてるということですか!
これを抑えて調整し直します。ありがとうございました!

652 :名前は開発中のものです。:2013/10/22(火) 23:07:27.52 ID:IeNmWB2w
まさにタイムリー

653 :名前は開発中のものです。:2013/10/22(火) 23:29:28.48 ID:56sEfdt6
てか、普通ゲーム作るならFPSぐらい表示させないか
常にCPU負荷とFPSぐらいは見れるようにしとかないと・・・

654 :名前は開発中のものです。:2013/10/23(水) 01:24:23.81 ID:mBIdYewB
FPS固定でウィンドウモードに対応させたい時、タイマーで制御すれば良いんだよね?
手元に60Hz以外に対応してるモニタが無いから、ホントにそれで合ってるのか分からん。

>>653
CPU負荷は表示させたこと無いなあ。Win32APIあたりから拾ってくるのん?

655 :名前は開発中のものです。:2013/10/23(水) 02:00:20.55 ID:/vNRk1Xr
垂直同期するなら経過時間で処理する
垂直同期しないならWaitTimerが都合よく動くことを祈る

656 :名前は開発中のものです。:2013/10/23(水) 03:47:45.96 ID:0wrZIgXb
>>654
単純にwait処理以外の時間を1秒間ms単位で足して1000で割る
で良いんじゃね

垂直同期待ちしてる場合はScreenFlipもwait処理として考える

657 :名前は開発中のものです。:2013/10/23(水) 17:08:21.68 ID:mBIdYewB
ああすまん、タイマーによるフレーム制御自体は既に実装済み(vsyncと切り替え可能)ではあるんだ。
ただ、手元に60Hz以外の環境で確認するすべがないのと、
もしかすると、もうちょっとスマートな方法があるのかな?と、ちょっと気になっただけなんだ。

まあ、タイマー制御もvsync待ちも切ると500FPSとかで動いたりするから、大丈夫だろうとは思うんだけどさ。
デフォルトはタイマー制御にしておいて、コンフィグ画面なり起動時のダイアログなりで変えれるようにするのがベストかな?

658 :名前は開発中のものです。:2013/10/23(水) 17:14:46.11 ID:r7PHrsPz
vsyncかタイマーか、設定できるようになってればどのみち問題はないだろう

659 :名前は開発中のものです。:2013/10/23(水) 20:42:08.44 ID:FRuG4Mt0
描画処理は別スレッドにしてvsync固定

660 :名前は開発中のものです。:2013/10/25(金) 11:35:42.34 ID:5OBeL3FY
んー?よくわかんないんだけど
例えばモニタが60fpsだったら、描画スレッドを60fps(vsync?)にして、
処理スレッドと描画スレッドはどうやって同期するんだ?

処理スレッドが座標いじってる時に描画スレッドが座標見るのはダメなんだよな?
まぁ早々ブッキングはしないだろうけど何万回転とかしたら・・・

661 :名前は開発中のものです。:2013/10/25(金) 16:06:37.29 ID:4mKf6ch/
>>660
それは一旦fpsとかその他の言葉を忘れて、マルチスレッドでの同期処理を書いて理解した方がいい。

てか、ドライバ書いてる訳でも無いのに垂直帰線期間の話が出て来る事自体が、あんまりリアルじゃない。
30年前の8bitマシンならともかく、今のマシンでアプリレイヤの話ならばちょっと変だ。

垂直帰線期間の考慮が必要になるのは、例えばDirectXやOpenGLそのものがその中で行っている最後のラスタ情報のVRAMへの転送処理の中の話であって、
普通は(アプリケーションプログラマは)メインループの経過時間差を見てfpsをコントロールする。
具体的には一定経過時間未満の場合に処理をスキップさせる。

もしもこの周辺処理をマルチスレッドで実装したい場合に、意図的な同期処理が必要になるが、そういった場合にマルチスレッドでの流儀で実装する。

そうでないなら単にメインループの中で、普通に処理するだけ。
こういった話はより具体的にしないと、ただの曖昧な聞きかじりみたいな話で終わってしまい、全然役に立たない。
経験から引き出して実例として話さないとダメ。

662 :名前は開発中のものです。:2013/10/25(金) 16:51:42.23 ID:4Ad/OwJF
>>660の質問に答えるのにその長文はいらんだろw

663 :名前は開発中のものです。:2013/10/25(金) 17:31:09.74 ID:L0JBOh2J
本人が必要性感じてない段階でわざわざマルチスレッドとか要らんよ

664 :名前は開発中のものです。:2013/10/25(金) 21:13:51.48 ID:eOV2PGNk
じゃあここにいる人たちはみんな組み込み系の専用モニタ使ってドライバからゲーム作ってる人たちなの?

665 :名前は開発中のものです。:2013/10/25(金) 21:16:54.66 ID:L0JBOh2J
ドユコトー

666 :名前は開発中のものです。:2013/10/25(金) 21:32:50.74 ID:W9GSrEjC
極端過ぎる

667 :名前は開発中のものです。:2013/10/25(金) 21:59:31.35 ID:Wzto7AEP
なんでいきなりそういう話になったの?
誤爆か?

668 :名前は開発中のものです。:2013/10/25(金) 22:47:27.21 ID:8QrcaZYH
そうだよ(適当)

669 :名前は開発中のものです。:2013/10/26(土) 05:38:35.50 ID:EY53Gq9J
2D横スクロールアクションを作っているのですが、
マップスクロールを「キャラを中心にスクロール」、
「画面端はキャラだけ移動」という一般的な方法を
採用していますが、画像がブレだかボヤケだかの描画に
なってしまいます。
・キャラを中心にスクロールしているときは、背景のマップが
 ぶれる(ぼやける)
・画面端でキャラだけ動いているときは、キャラが
 ぶれる(ぼやける)

スクロール方法は下記サイトの方法で実装しています。
aidiary.hatenablog.com/entry/20050624/1255786339

スクロール中にキャラやマップのぶれを少なくする方法は
何かないでしょうか。

670 :名前は開発中のものです。:2013/10/26(土) 05:50:55.66 ID:6XzQgQSh
それ単純に座標計算が1ドット〜数ドット分ずれるバグがどっかにあるだけで
スクロール方法関係ないんじゃない?

671 :名前は開発中のものです。:2013/10/26(土) 05:58:59.74 ID:EY53Gq9J
なんと表現していいのかわからないのですが、
ブラウザとかでも高速でスクロールさせると文字や画像が
残像する、あのような感じです。

<キャラを中心にスクロール中>
 マップに残像が発生しますが、キャラはくっきり描画
 されます(アニメーションしてても)。
<画面端でキャラだけ移動しているとき>
 マップはくっきり描画されますが、移動中のキャラは
 常に残像が発生します。
※参考にしたサイトのサンプルプログラムでも
 同様の残像が発生します。

672 :名前は開発中のものです。:2013/10/26(土) 06:08:55.30 ID:6XzQgQSh
バグじゃないとしたらテアリング?

673 :名前は開発中のものです。:2013/10/26(土) 07:26:17.12 ID:6YbVuCZu
アンチエイリアス切ったりしてみたら?

674 :名前は開発中のものです。:2013/10/26(土) 08:51:17.35 ID:/uNZ0zLg
単にクソモニタなんじゃないの?

675 :名前は開発中のものです。:2013/10/26(土) 08:56:23.71 ID:Q2EqAaLN
ttps://dl.dropbox.com/u/285709/javagame/mariolike04.jar
これを実行で俺もなった

676 :名前は開発中のものです。:2013/10/26(土) 11:49:37.99 ID:pP8Y9uuy
>>671
URLの先見てないけど、普通に真っ先に思い付くのはダブルバッファリングしてるかどうかだと思う。
で、多分してないんだと思う。それだけの事かなと

677 :名前は開発中のものです。:2013/10/26(土) 11:53:21.66 ID:yQ4RNrvp
普通、2Dアクションとか作る時って「ちらつき」を出したくないからオフスクリーンバッファに書き込んでから、
最後にそのバッファを画面へ送る。
真っ先にその話が出るべき

678 :名前は開発中のものです。:2013/10/26(土) 13:57:28.53 ID:J0WOOfsS
まずスクリーンショットを撮ろう
撮ったスクリーンショットがおかしかったらゲームが悪い

だがこの場合、多分モニタの残像だろう
PSPのゲームとかでも残像起こってるだろ? ショボイモニタだとドットの色切り替えが遅くてモヤっとした残像が残る
液晶モニタ使ってるならそれが正常な状態だからそのままでいい

自分のテスト環境で発生するのが嫌なら、CRTモニタか、性能のいい液晶モニタを買うしかない
もしくは、作ってるゲームが30fpsだったなら60fpsで組めば多少はマシになる

679 :名前は開発中のものです。:2013/10/26(土) 14:17:59.04 ID:6eucTLth
>>675
別におかしくない
環境かな

680 :名前は開発中のものです。:2013/10/26(土) 14:26:43.92 ID:VAjnFKN9
問題なし
環境だね

681 :名前は開発中のものです。:2013/10/26(土) 14:28:35.26 ID:j2hwvwUg
ブラウザのスクロールで残像発生してるって言ってるし
相当クソなブラウザを特別に使ってなければ環境

682 :名前は開発中のものです。:2013/10/26(土) 14:55:49.27 ID:6eucTLth
ビデオカードのドライバかモニタの問題だろう

683 :名前は開発中のものです。:2013/10/26(土) 15:26:34.20 ID:vOP7JN2P
【初心者】スレを立てる前にココで質問を【Part25】
http://toro.2ch.net/test/read.cgi/gamedev/1361004297/800-807

マルチポストじゃなくて、第三者による転載だってさ。
DXライブラリの質問とは限らないし、回答するなら本人が居る向こうの方が良いと思う

684 :名前は開発中のものです。:2013/10/26(土) 15:49:34.04 ID:J0WOOfsS
目を通したっぽいしもう終わりでいいな

685 :名前は開発中のものです。:2013/10/27(日) 03:55:14.21 ID:hVtutQ/3
しかし、他人の質問を勝手に別スレに貼るとか
教えてGooの擬人化みたいな奴だな…

686 :名前は開発中のものです。:2013/10/27(日) 18:32:26.43 ID:ZqajIEUd
C#版でコリジョン関数や参照用メッシュ関数使うと例外出るから
修正してたら一日終わった・・・

687 :名前は開発中のものです。:2013/10/27(日) 18:40:59.76 ID:lWMy8q7c
有意義な一日じゃん。

688 :名前は開発中のものです。:2013/10/27(日) 19:07:38.88 ID:J4caiA24
ff14やってたら生産(脳死作業)で一日終わった

689 :名前は開発中のものです。:2013/10/27(日) 20:36:50.19 ID:ky3lixuM
IDEの挙動がおかしくなったので、原因究明と再インストールで復帰に3日かかった…

690 :名前は開発中のものです。:2013/10/27(日) 20:49:33.81 ID:o0p58kLo
Eclipseはどうしもない糞だよな

691 :名前は開発中のものです。:2013/10/27(日) 21:02:15.67 ID:XS+5Iaz0
Visual Studioも依存するライブラリが破損すると全く動かなくなる困ったちゃんになることもある

692 :名前は開発中のものです。:2013/10/28(月) 08:27:44.01 ID:POAr7U/I
そんなのeclipseに比べたら微々たるもの

693 :名前は開発中のものです。:2013/10/30(水) 14:41:44.02 ID:sYdTMpzX
Eclipseで困ったことなんて一回もないな
そんなに糞だと思うならNetBeansなり
IntelliJなり好きなの使えばいいのに

694 :名前は開発中のものです。:2013/10/30(水) 16:10:35.70 ID:28s19Yxa
Qt使いの俺に死角はなかった

695 :名前は開発中のものです。:2013/10/31(木) 12:48:09.17 ID:cHiDnG2c
こっちを向いてよハニー

696 :名前は開発中のものです。:2013/10/31(木) 14:46:32.33 ID:kR/JAw79
( ゚д゚ )

697 :名前は開発中のものです。:2013/10/31(木) 15:29:36.47 ID:p29pq3vL
こっち見んなw

698 :名前は開発中のものです。:2013/11/01(金) 17:22:12.94 ID:O2gJuo4d
(   )

699 :名前は開発中のものです。:2013/11/01(金) 17:43:40.29 ID:19pXpteF
キューティーハニーって気づいて無い人も居そうな雰囲気

700 :名前は開発中のものです。:2013/11/01(金) 17:56:15.00 ID:/fYKLVaQ
ねえムーミン

701 :名前は開発中のものです。:2013/11/02(土) 03:30:34.86 ID:Ut0q1ayZ
VS2013Expが出ちゃったけど対応してるのかしら

702 :名前は開発中のものです。:2013/11/02(土) 03:36:17.73 ID:x2D2oiTV
2010でお腹いっぱい

703 :名前は開発中のものです。:2013/11/02(土) 08:09:56.90 ID:3+cyVteE
描画リストというのを作って描画を管理しているのですが、ブレークポイントでは値に異常が見つからないにもかかわらずゲームを起動するとモデルが描画されていません。
どうしたらいいですか?

mv1ファイルを読み込み
座標・回転の設定・更新
描画リストへ登録
描画リストが各クラスへ描画する関数を呼び出し
描画リストを初期化
最初に戻る

これら一連の流れで値に異常が見つかりません

エスパーいたらお願いします

704 :名前は開発中のものです。:2013/11/02(土) 13:37:22.37 ID:BsNpZj+/
ありがちなので、モデルが視界に入ってないとか(座標、クリップetc)
スケールの初期値がおかしかったり

705 :名前は開発中のものです。:2013/11/02(土) 14:08:55.57 ID:WffMO7pj
・まずいままで任意の三次元空間に配置したモデルを普通に描画させた事はあるか
・次に、あるとした、それらを単に「おまじないで出来た」じゃなく意味わかっててやれたのか
・次にカメラの位置や角度とモデルの位置はあってるか
・次にシェーダ使ってる場合、シェーダ内のエラーちゃんと拾ってるか。計算は合ってるのか
・使ってないとしてマテリアルやライトはどうなってるか

確認点いくらでも出てくる

706 :名前は開発中のものです。:2013/11/02(土) 14:16:54.20 ID:zb+/V8x5
DXライブラリ初期化前にロードしてると映らなかったりする

707 :名前は開発中のものです。:2013/11/02(土) 20:26:00.39 ID:n5KzCdEv
>>703
http://c-games.main.jp/ckaihatu/ckaihatu8.html

良かったらこれをご覧ください
上記の解説サイトを運営している者ですが
お役に立てれば光栄です

708 :名前は開発中のものです。:2013/11/02(土) 20:29:07.13 ID:yqJ8dEIi
↑のサイトはいつも自演してるkazukiのサイト
騙されんなよ

709 :名前は開発中のものです。:2013/11/02(土) 20:37:43.45 ID:9FYWUI/Y
名乗ってるし別にいいんじゃね
ちゃんとコテハン付けてくれるとなお良し

710 :名前は開発中のものです。:2013/11/02(土) 21:09:13.15 ID:mpR3CYfz
いつの間にかシェーダー使えるようになってるけど
お前らちゃんと使いこなしてる?

711 :名前は開発中のものです。:2013/11/02(土) 21:35:26.14 ID:SySW2qwH
クラスの中で関数ポインタを持つ構造体定義して、配列で管理したいんですが
error 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個あります。(要素数)

712 :名前は開発中のものです。:2013/11/02(土) 21:40:49.23 ID:O018gqUy
つーか、生ポのくせにレンサバ使ってんじゃねーよカス

713 :名前は開発中のものです。:2013/11/02(土) 21:42:40.26 ID:3Maelvih
http://msdn.microsoft.com/ja-jp/library/z72c1dfd(v=vs.90).aspx

714 :名前は開発中のものです。:2013/11/02(土) 21:59:51.69 ID:SySW2qwH
>>713
おぉ・・・
(this->*AIList[UseAI].AI_Func)();
こんなんにしたらできました
ありがとうございます

>>712
ナマポ?スマートポインタじゃないと設計としてまずいですか?

715 :名前は開発中のものです。:2013/11/02(土) 22:02:12.55 ID:9FYWUI/Y
>>707に対して、生活保護受けてるくせに〜ってことでしょ

716 :名前は開発中のものです。:2013/11/03(日) 00:55:04.58 ID:W4L0bxGv
ぬるぽ

717 :名前は開発中のものです。:2013/11/03(日) 03:40:26.61 ID:tMrWUay8
>>714
関数ポインタの指してる先が普通のメンバ関数みたいだし
このケースではスマートポインタにする意義は無いと思う

似たようなことを敢えて言うとすれば「std::function使おう」とか言えるけど

718 :名前は開発中のものです。:2013/11/03(日) 08:21:38.75 ID:vvC2nxd0
生活保護不正受給の松浦博史の話はスレ違いだからここでやれ。
http://pona.m-bird.org/d-bbs/2-watch/

719 :名前は開発中のものです。:2013/11/03(日) 11:42:25.33 ID:EBwOtCUX
>>711
どのみちその保管したメンバ関数実行するにはインスタンス渡してやらないといけないから、
その構造体単独では使えない。
=インスタンス渡せるなら、直接呼べばいい訳だから、全然意味無いけどな

720 :名前は開発中のものです。:2013/11/03(日) 12:15:02.65 ID:qqgP/ziM
一応サンプル書いた
http://ideone.com/fwUQGy

721 :名前は開発中のものです。:2013/11/03(日) 14:12:08.37 ID:HkNPhWdK
>>719
関数名と関数ポインタをセットで扱いたかったのですが、
かいたプログラマしかわからないような処理になったので、別途列挙体作って管理したいと思ったらこんな感じになりました。
プライベートなメンバ関数なのでコンストラクタで構造体を初期化してます。

理想的なのかどうかはわかりませんご・・・

722 :名前は開発中のものです。:2013/11/03(日) 14:18:50.24 ID:HkNPhWdK
あ、背景書いてなかったですね、すいません・・・
>>711はクラスのメンバ関数内の話です・・

723 :名前は開発中のものです。:2013/11/03(日) 17:12:55.51 ID:PGRU4d3r
VBAとDXライブラリはどっちが使いやすいですか?
ロックマンみたいなアクションゲーム作りたいんですが。

724 :名前は開発中のものです。:2013/11/03(日) 17:22:18.31 ID:oybLvXS0
レイヤーが違う
DXライブラリ以前に、言語は問題ないの?

725 :名前は開発中のものです。:2013/11/03(日) 17:30:58.74 ID:PGRU4d3r
レイヤー?

DXライブラリだとアクションゲームは楽ですか?

726 :名前は開発中のものです。:2013/11/03(日) 17:38:05.58 ID:q6P+R2O4
VBAって Visual Basic for Applications ってヤツ? それはプログラミング言語。
DXライブラリはライブラリ。比較するようなものではない。

DXライブラリは通常C++(VC++)で使う。こっちがプログラミング言語。

だから質問するなら、「VBA」と「C++&DXライブラリ」の比較って事になるのかな。

俺はVBA使ったことないから答えは知らん。
ただVBAとC++、どっちか一つでも使えるならそっちを使えばいいんじゃないか、という事なら言える。

DXライブラリを使えば画像表示とか入出力判定とかは簡単だが、アクションゲームうんぬんはプログラミングの腕次第だからDXライブラリ関係ない。

727 :名前は開発中のものです。:2013/11/03(日) 17:47:06.31 ID:PGRU4d3r
>>726
なるほどそういうことでしたか。
DXライブラリにおける背景のロードはどうすればいいのでしょうか?
主人公が進むにつれて新しい背景が出てきますが。

728 :名前は開発中のものです。:2013/11/03(日) 17:58:13.17 ID:oybLvXS0
フレームワークを探すなり自作するなりしたほうがいいような・・・
質問するなら、今どうやってて、どううまく行ってないのか書いてくれないと

729 :名前は開発中のものです。:2013/11/03(日) 17:59:21.00 ID:PGRU4d3r
>>728
背景画面の連結とかの方法が分かりません。
教えてください。企業秘密ですか?

730 :名前は開発中のものです。:2013/11/03(日) 18:03:23.93 ID:qqgP/ziM
VBAは言語と言うより、Microsoft Office製品に付属のマクロ用途のサブセット版(簡易版)の、旧VB。
言語としては非.NETの旧来のVBで、環境としてはOffice製品が必要な物。

DXライブラリはC/C++言語で利用するライブラリ。で、

>>727
「背景」って用途は自分が決めた使い道の事であって、単に画像のロードなんかはAPIリファレンス参照。
http://homepage2.nifty.com/natupaji/DxLib/dxfunc.html

当たり前だけど、基本的にプログラミングの視点で、自分がやりたい事は具体的にどういう事なのか、がわかってないと
DXライブラリに限らず何も出来ないよ。
……その意味ではVBAだろうと何だろうと何でもそうだけど。

731 :名前は開発中のものです。:2013/11/03(日) 18:04:45.07 ID:QD0IOl9q
いいから初心者はツクール系使っておけ

732 :名前は開発中のものです。:2013/11/03(日) 18:05:32.09 ID:eDrvMfu6
ここはDXライブラリ製のウディタを勧めるべきだろ

733 :名前は開発中のものです。:2013/11/03(日) 18:05:45.62 ID:PGRU4d3r
>>730
ロックマンを作りたいんです。
主人公が進むにつれて背景画像が更新されるようなプログラムを作りたいのですが
その方法を教えて下さいと言っているのです。

734 :名前は開発中のものです。:2013/11/03(日) 18:08:06.19 ID:yZmxR7Tm
誘導です

以降の質問・回答のやり取りはこちらのスレで行ってください
http://toro.2ch.net/test/read.cgi/gamedev/1361004297/

735 :名前は開発中のものです。:2013/11/03(日) 18:08:20.79 ID:qqgP/ziM
>>729
「企業秘密ですか?」って妙な一言付けてくるあたり、もしかしたら釣りかもしれないと疑いつつ、

背景画面との「連結」って表現は普通しないけど、お前さんがやりたい事は単に画像の重ね合わせ表示のような物。
上のリファレンス読んで頑張れ。
ってか、基本的にコンピュータで動いてる物の仕組み自体は理解してるか?
あるいはなんらかプログラムを作ったことは。
特に、出来ればC/C++で何か動くもの作ったことはあるか?

736 :名前は開発中のものです。:2013/11/03(日) 18:11:48.82 ID:qqgP/ziM
>>733
お前さんが簡単に数行で書いてる質問の正解は、お前さんがどこまで何を知っててどんな経験と知識があるかで大幅に変わるから、
もしもまったく何も知らないなら、本一冊買って基本的な勉強全部やって何か一本自分で作れてから聞いて。

何も知らない状態の人に全部説明したら本一冊書けるくらいの内容になっちゃうから。
本当に。

737 :名前は開発中のものです。:2013/11/03(日) 18:11:52.44 ID:PGRU4d3r
>>735
複数の画像を通し番号でアクセスしたい場合データ構造は何がベストですか?
そもそもDXライブラリにおいて一つの画像のビットマップを格納する方法が分かりません。

738 :名前は開発中のものです。:2013/11/03(日) 18:13:29.80 ID:eDrvMfu6
まず
>VBAとDXライブラリはどっちが使いやすいですか?
とか質問してるレベルの奴が人に聞いて問題を解決するとか愚かすぎる
まずは既存の講座サイトを見て適当に動くプログラムを組んでみてから心配しろ

739 :名前は開発中のものです。:2013/11/03(日) 18:17:19.91 ID:PGRU4d3r
色々サイトを見て回った結果このサイトにたどり着いたのです。
知ってる人がいれば教えて下さい。企業秘密ですか?

740 :名前は開発中のものです。:2013/11/03(日) 18:18:06.99 ID:qqgP/ziM
>>737
そういう具体的な質問なら、普通は「画像データ格納した構造体なりなんなりのポインタをvectorにでも並べとけばいいんじゃね」
って回答で終わるんだけど、これは別に特殊な方法でもなんでもないので、
なんかコード書いてる人なら最初に自分で思い付くレベルのかなりベタな話。
鍵カッコの中の一文、意味通じたか?

741 :名前は開発中のものです。:2013/11/03(日) 18:19:46.13 ID:8z747x7V
企業秘密です・・

742 :名前は開発中のものです。:2013/11/03(日) 18:21:21.17 ID:qqgP/ziM
>>739
なんか釣りっぽいな。
>>735 の冒頭にも疑い書いたのにまた妙な事繰り返す辺りが。

>>734 のスレ行った方がいいよ。

743 :名前は開発中のものです。:2013/11/03(日) 18:36:24.37 ID:PGRU4d3r
>>740
vectorってC++じゃなかったですか?
DXライブラリが提供している配列みたいなデータ構造とかあるんですか?

744 :名前は開発中のものです。:2013/11/03(日) 18:37:50.20 ID:eDrvMfu6
馬鹿に制作は無理
もうほっとこう

745 :名前は開発中のものです。:2013/11/03(日) 18:38:11.98 ID:q6P+R2O4
釣りだと思うなら突っ込むなよ。
なんで釣りだとわかった途端レスが増えるんだよ。

746 :名前は開発中のものです。:2013/11/03(日) 18:40:18.24 ID:qqgP/ziM
>>743
いや、そのC++のstlにあるvectorの事を言ってるけど

てか、DXライブラリってどういう物かわかってるか?

747 :名前は開発中のものです。:2013/11/03(日) 18:43:18.04 ID:PGRU4d3r
>>746
DirectXの機能を使いやすいようにしたものですか?
DirectXにも配列って有りませんでした?
vectorの使い方とか分からないんで。それ以外で何かありませんか?

748 :名前は開発中のものです。:2013/11/03(日) 18:46:57.50 ID:qqgP/ziM
>>747
とりあえず無い。てかvectorみたいな簡素な物わからなかったらどこにも無い。
てか、別にvectorに拘らなくても普通の配列で都合良いならそれでもいいじゃない。

てかもうDXに限らず外部ライブラリ使う以前の話なので、迷惑だから
>>734 のスレ行って。あと俺の質問にまったく答えない辺り気に入らないからもう安価しないで。
あと本読んで。終わり。

749 :名前は開発中のものです。:2013/11/03(日) 18:47:43.88 ID:PGRU4d3r
>>745
釣りじゃないからやり取りが弾むんでは?

さて、例えばAの画像を4、Bの画像を6表示するってのを動的にやる方法が
分からないんですよね。
t:10-tで表示する方法です。
どうしたらいいんですか?

750 :名前は開発中のものです。:2013/11/03(日) 18:48:39.64 ID:PGRU4d3r
>>748
すいませんでした。

751 :名前は開発中のものです。:2013/11/03(日) 18:59:18.56 ID:eDrvMfu6
>>749
釣りだからじゃなくてお前が馬鹿だからだ

752 :名前は開発中のものです。:2013/11/03(日) 19:01:01.03 ID:PGRU4d3r
>>751
馬鹿っていうソースを出してください

753 :名前は開発中のものです。:2013/11/03(日) 19:03:53.98 ID:UEvXhgnL
馬鹿っていうソース
>>747 vectorの使い方とか分からないんで。

754 :名前は開発中のものです。:2013/11/03(日) 20:28:49.15 ID:5/lYAMhw
ここはピンからキリまで初心者に物事を教えるスレでは無い。
参考書読め。厚かましい。

755 :名前は開発中のものです。:2013/11/03(日) 21:45:47.74 ID:TksWLddl
>>748
>>750
この流れに笑う

756 :名前は開発中のものです。:2013/11/03(日) 22:18:29.73 ID:QatK0L14
>>723
あなたが、このようなゲームを作りたいのですか?
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

757 :名前は開発中のものです。:2013/11/03(日) 23:21:18.09 ID:yZmxR7Tm
だから俺はよそでやれと言ったんだ

758 :名前は開発中のものです。:2013/11/03(日) 23:51:34.26 ID:a/xyoUQ1
おまいら冷たいな
見積書くらい作ってやれよ

759 :名前は開発中のものです。:2013/11/04(月) 07:32:54.47 ID:oLRpk0vd
stlはc言語で習うところのstudio.hみたいなもんなのに

760 :名前は開発中のものです。:2013/11/04(月) 10:18:13.07 ID:dZTD89BM
お前は池上彰か

761 :名前は開発中のものです。:2013/11/04(月) 13:17:13.61 ID:yTqiV+1X
ストゥディオワロタ

762 :名前は開発中のものです。:2013/11/04(月) 14:11:15.89 ID:n6mZi9Ct
スタジオの空目はありがちw

763 :名前は開発中のものです。:2013/11/04(月) 16:57:34.62 ID:oLRpk0vd
stdioなんて普段書かねーから(震え声)

764 :名前は開発中のものです。:2013/11/04(月) 17:09:48.89 ID:dZTD89BM
聞かないと絶対に標準入出力の略だとわからんよなこれ

765 :名前は開発中のものです。:2013/11/04(月) 17:28:54.95 ID:sQ908pKG
やべー、普通に会社でもスタジオって言ってたわー
やっべー まじ やっべー

766 :名前は開発中のものです。:2013/11/04(月) 17:54:41.13 ID:qS282/KW
音読みするなら、スタンダードアイオー、かな?

767 :名前は開発中のものです。:2013/11/04(月) 18:12:00.98 ID:rILdYRIp
D言語はstd.stdioで「そこ省略しないんだ」感ある

768 :名前は開発中のものです。:2013/11/04(月) 18:25:08.33 ID:ivzaYsK9
わかる

769 :名前は開発中のものです。:2013/11/04(月) 18:29:28.84 ID:rILdYRIp
>>767
標準ライブラリの標準入出力って意味だから
標準ライブラリの拡張入出力が出たりするかも知れないじゃないか(無い

770 :名前は開発中のものです。:2013/11/04(月) 18:48:42.40 ID:Ao5FLTjW
背景と主人公をロードするとき、主人公を背景より前に出したいんですが
そのための関数を教えて下さい。

771 :名前は開発中のものです。:2013/11/04(月) 18:50:56.46 ID:6Jpz+X29
・関数を呼ぶ順番を変えましょう
・ついでにLoadGraphScreenを使うのをやめましょう

772 :名前は開発中のものです。:2013/11/04(月) 18:52:10.63 ID:Ao5FLTjW
>>771
その関数は何故使ったらダメなのですか?

773 :名前は開発中のものです。:2013/11/04(月) 18:56:27.53 ID:qS282/KW
もっと汎用性のある命令で代用できるのに、わざわざ使う理由がない。

目の前にパソコンがるのに、そろばんで計算してるようなもん。

774 :名前は開発中のものです。:2013/11/04(月) 19:11:09.01 ID:Ao5FLTjW
>>773
じゃぁLGSは何故あるのですか?
便利だからでしょう?

775 :名前は開発中のものです。:2013/11/04(月) 19:18:18.67 ID:oLRpk0vd
マルチスレッドじゃないけどロード画面を動かしたいんですがどうしたら

776 :名前は開発中のものです。:2013/11/04(月) 19:22:52.71 ID:rO2LFCzb
LGS…強そう

777 :名前は開発中のものです。:2013/11/04(月) 19:24:57.85 ID:yTqiV+1X
>>775
ロード中にコールバックでもしたら

778 :名前は開発中のものです。:2013/11/04(月) 19:29:06.78 ID:M1WiJaGR
>>774
いえ、便利だからあるわけではありません
なんでこんな関数を用意したのかは知りませんが
LoadGraphScreen関数を使った場合

HDD ⇒ メモリ ⇒ 描画

毎回、このような処理をして画像をPCモニターに描画することになります

HDDは回転速度が遅いため、
毎回、このような処理をして描画をすれば処理が遅くなります


そこで、LoadGraph関数を使って画像を一旦、メモリに取り込んでおきます

HDD ⇒ メモリ

そして、DrawGraph関数を使ってメモリから描画します

メモリ ⇒ 描画

そうすることで、処理速度が向上し、重たくないゲーム画面になります

779 :名前は開発中のものです。:2013/11/04(月) 19:30:02.81 ID:dZTD89BM
超かっこいいLGSは(解説を作るのに)便利だからあるんだよ

使うのにはこれっぽっちもうれしくない

780 :名前は開発中のものです。:2013/11/04(月) 19:35:40.93 ID:M1WiJaGR
通常、ゲームでは、
NowLoading画面で、LoadGraph関数を使って
画像をメモリに取り込みます

そしてロードが完了し次第
ゲーム本編で、DrawGraph関数でメモリにぶちこんだ
画像を呼び出して描画します

詳しくは、ドラクエ10でもプレイしてみてください

ゲーム開始時やところどころで「NowLoading画面」が表示されます
ゲームとはそんなものだと思ってください

781 :名前は開発中のものです。:2013/11/04(月) 19:42:51.18 ID:aXJyorQF
>>779
これはある

が、プログラム学ぶならこれぐらいは当然という気持ちもある

782 :名前は開発中のものです。:2013/11/04(月) 19:43:03.92 ID:M1WiJaGR
あ、私はこんなC言語/C++のゲームプログラミング解説サイトを運営している者です

http://c-games.main.jp/index.html

初学者目線で、優しくC言語/C++のプログラムを説明していますので、
もし、全くプログラミングをやったことがない初心者である自信があれば
一度、ご覧になってみてください

初学者向けなので、中級者以上には物足りないかも知れませんが、
初心者であれば、一気に中級者を追い越して、中級者以上になれます。
(このスレの常連より遥かに上になって見下せますw)

783 :名前は開発中のものです。:2013/11/04(月) 19:44:24.93 ID:aXJyorQF
>>782
すげええええけええええええええ!!!!
俺もプロのゲームプログラマーになってこんな2chみたいな吹き溜まりの奴ら見下したいです!!!!!

784 :名前は開発中のものです。:2013/11/04(月) 19:49:50.21 ID:r19JIK5u
>>770
自分は背景をDrawGraph関数で並べてから
表示キャラをDrawGraphの第4引数をtrueにして表示する
(ビットマップ画像でキャラの外側を黒で埋めておく)
上記で普通にいけると思う

ちなみにLoadGraphScreenは使ったこと無いけど
メモリに入れるなら通常のLoadGraph使うだろうから
メモリ介さずにファイルから直接スクリーン投影用じゃない?

785 :名前は開発中のものです。:2013/11/04(月) 20:00:09.34 ID:dZTD89BM
よく考えたら最近のPCってLoadGraphScreen連打しててもキャッシュとか効いちゃって別に遅くなさそう

786 :名前は開発中のものです。:2013/11/04(月) 20:05:58.51 ID:bL0Rt3Em
SSDなら尚更だろうなぁ。

787 :名前は開発中のものです。:2013/11/04(月) 20:06:22.16 ID:Ao5FLTjW
ありがとう!!
LGSよりもっといい関数があるんだ!
このスレ見てたら参考書いらんわー
ありがとう!!!!!!!!!!!
Thank you very much for me

788 :名前は開発中のものです。:2013/11/04(月) 20:15:37.77 ID:PqV54s4L
んーあんま詳しくないけどさすがに画像はサイズ大きいし無理なんじゃないかな
でもそういえばJavaのJITも最近はキャンシュでゴリ押し最適化図るとか聞いたね

789 :名前は開発中のものです。:2013/11/04(月) 21:00:23.71 ID:84QWcKjq
まぁ使う意味ないよねっていう
背景はmakescreenで予め1つテクスチャにまとめちゃってるな

790 :名前は開発中のものです。:2013/11/04(月) 21:10:17.81 ID:wVKdSea2
>>782
F5連打してサーバー落として良いですか?

791 :名前は開発中のものです。:2013/11/04(月) 21:17:09.79 ID:WyeoCWwd
すぐサイト閉鎖する講座サイトほど無価値なものもない
そして無価値なものを宣伝するのは害悪行為

792 :名前は開発中のものです。:2013/11/04(月) 21:52:51.37 ID:wVKdSea2
>>782
正直、初心者には向いてないサイト
見たら唯のコピペかと思った
後一個足りてないぞ→画像(ソース)+説明 じゃ駄目
足りてないモノ→興味を引く要素、実際に何が出来るか説明不足

最初から興味が有って、そのサイト見てても途中でやる気が無くなる
関数一覧を表示すのは良いがクリックでトップに戻る意味が分からん
関数にマウスを当てたらサンプルソースが表示される様にするか
読み込みが始まって、サンプルが表示される形式にした方が良い
アレじゃ唯の目次にしか成らない、別のページを作る必要が有る

793 :名前は開発中のものです。:2013/11/04(月) 22:05:03.21 ID:wVKdSea2
C言語が使えるからと言って講座サイトを作るのは無理
webデザインや重要な企画を作る能力が足りてない
今までして来た事と違う事を、もっと勉強した方が良い

なんでもこなせるスーパーマンに成りたいんだったら
もっと頑張る必要が有る。が、本気でやる気なら応援するぞ
まずは、何が必要なのか調べる所からやり直す。そしたらスムーズに事が運んだり見えてくるものが有る

794 :名前は開発中のものです。:2013/11/04(月) 22:20:59.28 ID:6GaMPiKC
入門者向けサイトならば、掲示板を作って質問を受け付ける。
そこから、要求される項目が決まる。

ちなみに、サイトを作って広告宣伝費としていくら入金されるの?

795 :名前は開発中のものです。:2013/11/04(月) 22:29:20.67 ID:WyeoCWwd
まず最終的にどういうゲームができるのかっていうサンプルゲームを公開すべきだよ
龍神録の館はそれができてるから重宝されてるわけで

796 :名前は開発中のものです。:2013/11/04(月) 22:31:43.30 ID:84QWcKjq
まじめにレスするだけ無駄だとおもうな
>>782のサイト見てからじゃあ何が出来るか?っていうと何も出来ないし
DXライブラリならDixqのサイトでも見ればいいし言語ならロベールとか猫わかとか見ればいい

797 :名前は開発中のものです。:2013/11/04(月) 22:32:06.05 ID:wVKdSea2
>>794
サービスによるけど広告クリックは1〜2%
アフィリエイトは大体20%〜グライ
キチンと業者と契約を結べば別だけど、アクセス数や利用者数が膨大に必要
知識の浅い初心者が頻繁にプログラミング入門サイト作って失敗している
書籍やサイトで紹介されてる内容、程度なら半年持たない
ユーザーが必要としているのは一歩進んだ知識だから最低でも大規模プログラミング
できる程度の知識が必要。

798 :名前は開発中のものです。:2013/11/04(月) 23:43:47.74 ID:OotvFeys
180フレーム寿命があるエフェクトを毎フレーム30個ぐらい作るとReleaseモードでもFPSが40ぐらいになるんですが
これはもうシングルスレッドゆとり設計の限界なのかね

GPUに行列の計算させるのってDirectXの関数使えばいいの?
なんかCPUでやってる気がするわ

799 :名前は開発中のものです。:2013/11/04(月) 23:53:06.95 ID:Duwm9B/d
突っ込みどころが多すぎて何も言えない

800 :名前は開発中のものです。:2013/11/05(火) 00:06:51.80 ID:J83UpZs3
>>798
横からだけど、確認を込めて一応掘り下げると…

・「nフレームのスパンで動作するとある処理Aを、毎フレーム n個作ると遅くなる」
 → 処理Aの開始から終了までのフレーム数と、1フレーム当たりの処理数 自体は普通特に関係無い訳で、
   話の主題は単に 「1フレーム当たりの処理量が多くて、1フレームを通過するのに時間がかかる」 って話だと思う。
   ならば単位当たりの処理を軽量化するように設計したらいいんじゃね、って話。

・「これはもうシングルスレッドゆとり設計の限界なのかね」
 → 上で書いた通り、あなたの 「その」 設計の限界だから見直すべき。
   その上で、シンクロのステップも含めた上で、マルチスレッドの方が良いならそのように設計するべき。
   ただしその場合、「はたしてマルチスレッドにした場合、シンクロのポイントも含めて考えた上で、1フレーム当たりに可能な処理量がどれほど増えるか」
   は把握しておくべき。 その正解はあなたの実装による。

・「GPUに行列の計算させるのってDirectXの関数使えばいいの?」
 → ある意味 DirectX の関数と言えるけど、正確には GPU側で計算させるならシェーダの中の話。 DirectX で言うなら HLSL の中の関数の話。
   で、GPU側で計算させたい場合、普通は CPUから引き渡した内容に対して、シェーダ内で表示物向けに計算させるだけなので、
   その用途で良いならそうしたらいい。

・「なんかCPUでやってる気がするわ」
 → 気がするんじゃなくて、自分がCPU側で計算させて DirectX 関数に引き渡してるならそうだし、シェーダ内の関数でやってるなら GPU側。
   気がするんじゃなくて、自分で明示的にわかってるはず。

801 :名前は開発中のものです。:2013/11/05(火) 00:12:40.70 ID:J83UpZs3
ちなみに、
>180フレーム寿命があるエフェクトを毎フレーム30個ぐらい作るとReleaseモードでもFPSが40ぐらいになるんですが
↑こういう、ふわっとした理解で何も考えずに、単に言葉だけ知ってるレベルでマルチスレッド化なんてしたら、
100% 正常に動作しないので、問題点の要点を勘違いしないで、ちゃんと整理する事。 自分が書いてる処理は具体的にどういう動作なのかを本当に理解すること。
終わり。

802 :名前は開発中のものです。:2013/11/05(火) 00:19:12.85 ID:K3Hz6QZH
180*30=5400
ちゃんと設計してギリギリ60fps保てるレベルだな

オブジェクト生成毎にメモリをnewしてるとかだと間違いなく無理だが、
それ以前にエフェクトにこれほど大量のオブジェクトを作る設計が間違い

803 :名前は開発中のものです。:2013/11/05(火) 00:57:01.93 ID:J83UpZs3
余談だけど、処理内容書かずに数字だけで言うなら、

俺が書いてるオープンワールドのアクションゲーもどきだと、マップ中にある火山や温泉の間欠泉や、海辺の波と、あと
敵を殴った時に飛び出る★のようなエフェクト、必殺技的な物使うときの透過光や走行線なんかの内、

一番長くアニメーションさせてる物は 60fps 定速管理の場合 3.5秒ほどの間表示処理を行うから、期間で言えば 250フレームの間描画を繰り返す計算になるけど、
しかしそんな事自体は大した意味は無くて、本当のポイントはメインループ中の1回の処理で、どれだけの内容をこなさないといけないかって事。

その意味を踏まえて言うなら、一番込み入った場面では最大 150個ほどのエフェクトが同時に動作している事があるけど、
メインループから定速固定用の時間経過処理(fps管理用スキップ処理)をコメントアウトすると、大体 2400fps ぐらいの速度で動作している。
内容的に特にそれでも速いとは思わないが、要は、「どういう処理書いてるか、1ループ(フレーム)の間にどんな事してるか」 で結果なんて変わる訳で、
数字だけ見ても ふわっとした事しか言えないって話。 本当に終わり。

804 :名前は開発中のものです。:2013/11/05(火) 07:22:11.85 ID:+x+EoQCL
何FPSで動くとかどうとかの話って、PC次第で変わるから意味ないような。

805 :名前は開発中のものです。:2013/11/05(火) 07:28:11.84 ID:K3Hz6QZH
>>804
大体の目安だからいいんじゃね
クロック数とかもマルチコア主流の今の時代じゃ意味ない数値だし

806 :名前は開発中のものです。:2013/11/05(火) 07:39:09.41 ID:D7RLQ/7t
とりあえずdxライブラリに完全に乗っかっててしかも
頂点操作してないから重いんだと思う

そう考えるとFF14のあのエフェクト量であの軽さはやばいな

807 :名前は開発中のものです。:2013/11/05(火) 12:35:49.76 ID:Y6UuuJq+
DXライブラリでチェックボックスとかスクロールバーのような
コントロールを使おうと思ったらやっぱり自作するしかない?
それとも他のライブラリとか使った方がいい?

808 :名前は開発中のものです。:2013/11/05(火) 13:01:44.40 ID:ao+vnFi7
winapiでいいやん
慣れないとメッセージの調べかたに手間どうが

809 :名前は開発中のものです。:2013/11/05(火) 13:08:49.28 ID:CTkkt81/
>>807
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にするようにして表示画像も変えるようにする

810 :名前は開発中のものです。:2013/11/05(火) 13:12:05.87 ID:itfUHADs
DXライブラリじゃないけど、俺はゲーム画面上に表示するコンフィグその他のGUIは、
DirectXベースでテクスチャ貼った板ポリ並べて並行投影で表示する恰好のGUIライブラリをかなり前に作ってあって、
なんだかんだ改修しながらずっと使ってる。
普通のボタンと、チェックボックス的なトグルボタンと、テキストエディタと、リサイズ可能なウィンドウと、Excel風のグリッド表示するリストボックス

811 :名前は開発中のものです。:2013/11/05(火) 13:22:31.45 ID:CTkkt81/
ゲーム画面内でマウスのドラッグでスクロールさせるなら
スクロールバーの座標にマウスを移動させた時に、
左クリック押しっぱなしの状態で、ドラッグ状態にして、
マウスを下に移動させれば下に移動、上に移動させれば上に移動

あと、SetDrawArea関数を使って
指定した座標範囲内だけに
スクロール内の内容を描画するようにして
スクロールバーのドラッグ&マウスの上下移動で
SetDrawArea関数内の領域に描画した全ての画像の座標を
y軸にプラスにしたりマイナスにすれば、
そのウィンドウ内だけで表示内容がスクロールされる

812 :名前は開発中のものです。:2013/11/05(火) 13:34:30.35 ID:RmjgnHAM
マスクしないと

813 :807:2013/11/05(火) 13:34:48.29 ID:Y6UuuJq+
レスさんくすー

>>808
API大丈夫か?
ダイアログボックスだしてその中なら正常に表示できそうではあるが。

>>809
いや、作成方法は分かるんだ。
ただ、スクロールバーのつまみみたいなD&DとかTAB移動の実現とか
一つ一つGUIパーツを作ろうと思ったらコーディングが手間すぎる。

>>810
やっぱり自作ライブラリをつくるしかねーかなぁ。だりぃw

814 :名前は開発中のものです。:2013/11/05(火) 13:35:10.56 ID:RmjgnHAM
スクロールって実際は全て描画されていて、後から上書きしてるの?

815 :名前は開発中のものです。:2013/11/05(火) 13:35:54.94 ID:CTkkt81/
SetDrawArea関数とはドラクエで例えると
メッセージウィンドウみたいなものです

ドラクエでメッセージを表示する時は、
続きのメッセージは、そのウィンドウ内でメッセージ内容が下にスクロールしますが
それを表現する時に使うのが、SetDrawArea関数です

詳しくはDXライブラリの公式サイトの
SetDrawArea関数の解説を読んでみてください

816 :名前は開発中のものです。:2013/11/05(火) 15:50:34.81 ID:wZ5UkH7I
いちいちGUIライブラリを自作するのって非常に無駄な作業だと思うのですが
何故そんな非効率なことをするのでしょうか

817 :名前は開発中のものです。:2013/11/05(火) 16:00:00.60 ID:DHq7wQK7
そんなこと言ってたら最初の一つ目から存在しない

818 :名前は開発中のものです。:2013/11/05(火) 16:18:17.24 ID:R05ELT5z
VBで作りましたみたいな出来合いのGUIでいいならいいじゃん

819 :名前は開発中のものです。:2013/11/05(火) 17:05:30.44 ID:S58YQK+W
>>809
自作する場合、言語の知識よりも細かい部分の動きに悩みそうな気がする。
何気なく使ってるGUIだけど、意外に理解してない部分って多いんだよな。

820 :名前は開発中のものです。:2013/11/05(火) 17:14:13.68 ID:CTkkt81/
DXライブラリの公式サイトの
リファレンスは中級者向けなので
初心者が見た場合、一体、何のために使う関数なのかが解かりにくいと思います

なので、私はDXライブラリ関数リファレンスを
もっと分かり易く初心者でも理解できるような
DXライブラリ関数リファレンスを制作中です

http://c-games.main.jp/dxlif.html

公式サイトの解説の丸写しではなく
自分で検証して、もっと分かり易く噛み砕いて、
実行結果の画像もキャプチャー画像を紹介するように作ってるので
かなり時間が掛かっています

改めてDXライブラリ関数をイチから全てを検証していくと
なんて膨大な関数なんだろう…と、絶句していますw

821 :名前は開発中のものです。:2013/11/05(火) 17:25:06.00 ID:S58YQK+W
>>814
「上書き」が何を指すかは分からんが、
ソースコード上では表示領域より大きめにセットしておいて、実際の描画時にライブラリ側で切り取るのが楽チンだと思う。

822 :名前は開発中のものです。:2013/11/05(火) 17:35:28.02 ID:iLOOpAeu
>>820
広告ばっかりw

823 :名前は開発中のものです。:2013/11/05(火) 17:35:48.41 ID:wZ5UkH7I
>>820
何でそんな無駄な事してるの?
しかも余計わかりにくくなってるし
時間の無駄だから止めた方が良い

824 :名前は開発中のものです。:2013/11/05(火) 17:42:09.39 ID:a385+tCj
クリックして見に行ってる時点で食い物にされてることに気付け

825 :名前は開発中のものです。:2013/11/05(火) 17:51:59.04 ID:zIwV/11A
>>820
このトップ画面のさ、メインコンテンツ部分のお知らせとか更新情報って書いてあるのって
どうやってやるの?
鍵型っぽいやつ

826 :名前は開発中のものです。:2013/11/05(火) 18:10:21.67 ID:HZNT4GIs
>>820
じゃあ、以下のを Dxライブラリを使って作って

3D空間に複数のモデルを配置してあって、その中の一つをマウスでクリックすると、
そのモデルが赤色に変色するプログラム。

827 :名前は開発中のものです。:2013/11/05(火) 18:12:41.83 ID:ycnlihTE
>>820

リファレンスより動くゲームのサンプルコード載せて欲しいわ。
リュウジンロクとかコピペで使えたから便利だったんだよ。

828 :名前は開発中のものです。:2013/11/05(火) 18:52:59.00 ID:aHhWEzy0
シューティング作るのがいちばん簡単とかぬかす奴をたまに見かけるのはそのせいか

829 :名前は開発中のものです。:2013/11/05(火) 18:55:10.74 ID:vtyuM1C3
>あと、私は「w」をNGワードに設定している
>「w」などを連呼するような低俗な輩の発言など目に入れないようにしている
>あと「こいつ」などの単語も同様の理由でNGワードにしている

とかなんとか言っておきながら

>なんて膨大な関数なんだろう…と、絶句していますw

と自らが設定したはずのNGワードを使うとかw

流石は他人から「こいつ」呼ばわりされるのが怖い怖いのバkazuki君だw

830 :名前は開発中のものです。:2013/11/05(火) 19:05:50.92 ID:aQwTFB2I
DXライブラリのリファレンスほど初心者にも解りやすく丁寧なものはないね
他のライブラリだと引数の型しか書いてなかったりそもそもリファレンス自体ないのもある
ソース見ろやって事なんだろうけど…

831 :名前は開発中のものです。:2013/11/05(火) 19:21:34.03 ID:hCvpDVI/
2chの常識
kazukiに反応する人もkazuki も知らんのか

832 :名前は開発中のものです。:2013/11/05(火) 19:45:27.52 ID:S58YQK+W
>>830
でもまあなんだかんだで最終的にはヘッダファイル見るようになるよなw

833 :名前は開発中のものです。:2013/11/05(火) 19:55:25.90 ID:K3Hz6QZH
>>828
龍神録の館を抜きにしても、実装に専門知識が要らないからシューティングが一番簡単なのは事実だよ
逆に、他の動的ゲームを作るときにはシューティングを作るとき使った技術すべてを駆使することになる

834 :名前は開発中のものです。:2013/11/05(火) 20:37:20.59 ID:Kq66E5ow
>>833
場合によるでしょ。
専門知識が何を指すかしらないけど。一番簡単ていうのは意味不明。
俺に言わせればじゃんけんゲームとか○×ゲームの方が簡単w

まあ、だれも遊んでくれないクソゲーでいいなら「一番でなくて」実装が楽て言うのなら100歩譲って同意する。
エースコンバットレベルになるとまったく同意できないが。

835 :名前は開発中のものです。:2013/11/05(火) 20:41:01.91 ID:K3Hz6QZH
>>834
動的ゲームの中で、な
アスペじゃないんだからそれくらい察そうぜ

836 :名前は開発中のものです。:2013/11/05(火) 20:42:38.59 ID:Kq66E5ow
>>835
お前想像力ゼロで既成概念に縛られてるみたいだな。
まあいいわ。

837 :名前は開発中のものです。:2013/11/05(火) 20:44:57.16 ID:K3Hz6QZH
いや、「なんでそう言われてるのか」を考えられずに「意味不明」と言い放つほうが想像力ないと思うんだが・・・

838 :名前は開発中のものです。:2013/11/05(火) 20:48:55.92 ID:Kq66E5ow
>>837
いいと言ってるのに。

じゃあ、なぜ動的ゲームでシューティングが一番簡単なのかご説明願おうか?
一番ていうところが重要だからな。頑張ってくれ。

839 :名前は開発中のものです。:2013/11/05(火) 20:51:34.53 ID:K3Hz6QZH
わざわざ説明する必要あるか?
オブジェクトの生成、衝突判定、キャラの移動、シーン切り替え
これだけがあれば最低限ゲームとしての形にはできるからだよ

840 :名前は開発中のものです。:2013/11/05(火) 20:52:25.40 ID:aQwTFB2I
ゲームの歴史的に考えてシューティングが一番シンプルだと思う
ポンやブロック崩しの派生だしね

841 :名前は開発中のものです。:2013/11/05(火) 20:53:06.02 ID:Kq66E5ow
ん?
ブロック崩しは動的ゲームに入らないのか?

842 :名前は開発中のものです。:2013/11/05(火) 20:57:10.09 ID:K3Hz6QZH
想像力働かせろよ
ブロック崩しは反射の計算にベクトル演算が要るだろ
ベクトル演算を用いなくても実装することはできるが、それににはどういう処理で誤魔化すかというジャンルの専門知識が要る

そして実装的には、シューティングのショットを反射するボールに変えただけに過ぎない

843 :名前は開発中のものです。:2013/11/05(火) 20:59:09.87 ID:Kq66E5ow
>>842
www
マジ受けた。ベクトル演算なんかしなくても作れるよブロック崩しはw
お前ほんともういいや。

844 :名前は開発中のものです。:2013/11/05(火) 20:59:20.18 ID:xroRRHz3
当たり判定って矩形か、それともありのままかどっちが良いですか?

845 :名前は開発中のものです。:2013/11/05(火) 21:00:17.66 ID:S58YQK+W
>>834
>まあ、だれも遊んでくれないクソゲーでいいなら「一番でなくて」実装が楽て言うのなら100歩譲って同意する。

一番かどうかは別にしても、STGが楽ってのはまあそーゆーことよね。

846 :名前は開発中のものです。:2013/11/05(火) 21:01:40.09 ID:K3Hz6QZH
人には説明しろと言っといて、自分は説明せずに逃げたか
まぁ馬鹿の相手しても無駄だからいいけど

>>844
自分で判断できないレベルなら、とりあえず矩形と円2つ実装すればいいんじゃないかな
見た目そのままの判定は、実用に足る実装をするのは難しいだろうし

847 :名前は開発中のものです。:2013/11/05(火) 21:01:44.31 ID:aQwTFB2I
正確にはシューティングのスペースウォーが最初だった(;´-`)
まぁシステムはどれも似たようなもんだよねということで

ベクトルを使わないってしばりならインベーダーなんて直線にしか撃てんぞ

848 :名前は開発中のものです。:2013/11/05(火) 21:02:55.74 ID:S58YQK+W
>>844
ゲームにもよるが、
小型の雑魚は矩形、大型のボスはある程度画像に沿った判定が良いと思う。

849 :名前は開発中のものです。:2013/11/05(火) 21:03:31.94 ID:Kq66E5ow
>>846
お前さ、ブロック崩しってどれくらい前からあるかしってる?
8bitのCPUでベクトル演算なんかしねーし。
する必要もないよ。

850 :名前は開発中のものです。:2013/11/05(火) 21:06:02.75 ID:S58YQK+W
xとyに定数を足して動かすだけでもベクトルっちゃベクトルだが、
上方向にまっすぐ弾を出すのも同じくらいベクトルなんじゃね?w

851 :名前は開発中のものです。:2013/11/05(火) 21:07:25.74 ID:K3Hz6QZH
>>849
そういう作品は誤魔化しの手法使ってるって最初に言ってるじゃん
そういう手法を使う作品は、作るにあたってその知識が要るから一番簡単とは言えないんだよ
また、ステージ作る場合にも、簡易エディタ等を作らないとなると大量にブロック配置をコードに直書きしなけりゃいけなくなる
そこら辺はわかってるか?

852 :名前は開発中のものです。:2013/11/05(火) 21:08:08.33 ID:NVLUESBq
なにこのガキのケンカレベルの言い争い

853 :名前は開発中のものです。:2013/11/05(火) 21:09:06.12 ID:Kq66E5ow
>>850
w
ああ、そういう意味だったの?ごめんごめんw
それで専門知識って。

854 :名前は開発中のものです。:2013/11/05(火) 21:12:09.01 ID:K3Hz6QZH
想像力のないガキに目線合わせて説明してあげても無駄な気がしてきた

855 :名前は開発中のものです。:2013/11/05(火) 21:16:59.50 ID:itfUHADs
なんか話が曖昧でふわふわしてると思う

856 :名前は開発中のものです。:2013/11/05(火) 21:18:03.04 ID:iHrYn65A
>>813
その手のはSELENEにあったな
永いこと止まってるようだが

857 :名前は開発中のものです。:2013/11/05(火) 21:18:36.68 ID:C7EI6CbS
この知識のなさ、kazukiに見えなくもない
確かあいつエースコンバット信者だったろ

858 :名前は開発中のものです。:2013/11/05(火) 21:22:16.31 ID:Kq66E5ow
>>857
ID変えご苦労様w

859 :名前は開発中のものです。:2013/11/05(火) 21:26:02.81 ID:C7EI6CbS
えっ

860 :名前は開発中のものです。:2013/11/05(火) 21:31:31.39 ID:itfUHADs
>>833 の時点で、具体的に書かないから、>>834 のような 「場合によるでしょ」 って話が自然に出る訳で。
例えば 「シューティング」 なんて曖昧な言い方せずに、

・自機1つ、弾1つ、敵1つ、自機はユーザからの入力で2方向に移動、弾は一定方向に移動、敵は自分のロジックで好きに移動
・敵が自機に触れると負け、弾が敵に触れると勝ち

くらいのド簡素なインベーダーみたいな物なら、その後のアクションするゲームのひな形を色々と含んでいるよ、
例えば座標変えながら絵を表示、座標の一致(交差)判定 など etc… みたいな話を書いてればそこで終わったのではと。

あとテーブルテニスの反射の計算とか、別に専門知識でもなんでもないのでって言うか、
単にやりたい事を観察した上で、どうロジックとして書き表すかって言う基本的なプログラミングのあり方の上にある程度の物だから、って思うが。

861 :名前は開発中のものです。:2013/11/05(火) 21:35:31.33 ID:CTkkt81/
ブロック崩しって意外と難しいと思いますけどね

だって角度と当たる速度で
反射する覚悟が微妙に変わるじゃないですか
プレイヤーが操作する「棒」みたいな奴に「弾」が当たる時、
どの角度で、どの速度で当たるかで
反射角度もスピードも微妙に変化する

862 :名前は開発中のものです。:2013/11/05(火) 21:39:37.25 ID:itfUHADs
レスした方がいいのかな。「意外と難しい内容のブロック崩し」 を作るならそうだけど、そうでないならそうでないと思うけど。
つまり、角度と速度を意識してマジメに計算するような前提のブロック崩しを言ってるなら、意外と難しいのかもしれないけど、って事。

とにかく、前提を曖昧にして話すと話がムダにこじれるよ。 もしも自分が本当に意味をわかっているなら、省略しないで話すこと。
特に、省略するとムダな混乱起きそうだと気を回せるならば。

863 :名前は開発中のものです。:2013/11/05(火) 21:40:45.85 ID:CTkkt81/
シューティングは確かに楽かも知れないけど
シューティングがあまり好きじゃない私からすれば
ゲームが完成しても、ちょっとやりごたえがない

俺はRPG好きだから
どうせ苦労してゲーム作るなら
C言語/C++でRPGを作ってみたい

で、RPGは難しいかと問われるなら
確かに他のゲームに比べれば、多少は大変かも知れません

ですが、RPGの基礎の部分(戦闘、買い物、装備、会話、レベルアップ、お金などなど)を
構築してしまえば、あとは楽だと思います

物語のほとんどは、そのRPGの基礎を使いまわせば
いくらでも長い物語が作れます

864 :名前は開発中のものです。:2013/11/05(火) 21:41:24.29 ID:C7EI6CbS
kazukiが急に反応しだしたぞ

865 :名前は開発中のものです。:2013/11/05(火) 21:41:52.85 ID:+x+EoQCL
「雨が振ったら傘をさすよね」って言ったら「場合によるでしょ」って応える。
確かに間違いではないが、因縁つけてるレベルの話。それと同じ。

866 :名前は開発中のものです。:2013/11/05(火) 21:44:19.41 ID:CTkkt81/
要するに、RPGを開発するなら、
会話、移動、買い物、道具、装備、戦闘、レベルアップなど
考えられるだけの、RPG要素だけを構築した
オリジナル関数を作成しておきます

あとは、それらのオリジナル関数を使う用途の場面で
呼び出せばいいだけです

867 :名前は開発中のものです。:2013/11/05(火) 21:45:48.88 ID:itfUHADs
>>863
急に話の軸がブレたけど、まぁ、好きにしたらいいじゃね。

>>865
言いたい事はわかるけど、多分そこまでナチュラルな日常会話の例えはちょっと合わないと思うww

868 :名前は開発中のものです。:2013/11/05(火) 21:46:33.69 ID:+x+EoQCL
>「意外と難しい内容のブロック崩し」 を作るならそうだけど、そうでないならそうでないと思うけど。

意外と難しいSTGを作るのならそうでないブロック崩しより難しいかもしれないが、
そうでないSTGならそうでないブロック崩しよりは楽だと思う。

極端な話、動かない敵キャラに、カーソル(照準器)を合わせてボタン押したら敵が消える、だけでもSTGだ。

869 :名前は開発中のものです。:2013/11/05(火) 21:50:49.17 ID:itfUHADs
>>868
そうそうそう、そういう事。 そういう 「こういう場合」 を具体的に書くようにすると話が混乱しないでいいよな。

870 :名前は開発中のものです。:2013/11/05(火) 21:53:00.12 ID:Kq66E5ow
だから場合によるっての。

>>860 の人も行ってるけど定義をはっきりしろよw

バラバラのもの想像して話してたらかみ合うわけないわ。

>>856
Seleneなついな。作者さんにIRCでよく質問したよ。
今、HDDを探したら最後に取っておいたSeleneのソースがどっか消えた。
軽く鬱。

871 :名前は開発中のものです。:2013/11/05(火) 21:54:42.62 ID:Kq66E5ow
ああごめん>>866に対するレスな<場合によるw

872 :名前は開発中のものです。:2013/11/05(火) 22:02:24.23 ID:CTkkt81/
ブロック崩しは、プレイヤーが操作する「棒」に「弾」が当たった時に、
反射する方向を計算して、
その方向に真っ直ぐ飛んでいく必要があります

x軸とy軸を同じ比率で操作しないと
真っ直ぐには飛んで行ってくれない
その角度で壁に当たれば、
反射もその角度の真逆に飛んで行く必要があり
上のブロックに当たると、少し失速して
また、その速度によって、ブロックから跳ね返る角度を計算する必要がある

ブロック崩しがゲーム開発の参考書で取り上げられる理由が
少し解かりますね
意外とロジックが難しいですからね

あれは、数学好きな人が作るゲームだと思うね

873 :名前は開発中のものです。:2013/11/05(火) 22:20:55.06 ID:CTkkt81/
俺は解かり易さと作り易さで考えれば、
断然、RPGをお勧めしたい

RPGを突き詰めていくと
ただの「変数で足し算や引き算をするだけのゲーム」です

宝箱から100G手に入れたなら
お金に割り当てた配列変数に+100するだけです

店で10Gを薬草を購入したなら
お金に割り当てた配列変数に-10するだけです

戦闘シーンのダメージ計算も
HPに割り当てた配列変数に対して
敵の防御力の値に、主人公の攻撃力の値を引き算して、
あと何かのプラスアルファを加えて
ダメージ計算をして、その値で引き算すればいい

敵を倒して戦闘が終了したら経験値の配列変数の値を
その敵の経験値ぶんだけ足し算して、ある値に達すれば、レベルアップ!

回復アイテムを使ったら、その値だけHPの変数にプラスさせる
回復魔法なら、MPの変数のマイナスも付け加える

こんな足し算と引き算だけをするゲームのどこが難しいのでしょうかねw

874 :名前は開発中のものです。:2013/11/05(火) 22:25:03.62 ID:HC9c4XUl
ブロック崩しは単に符号変えるだけでOKやん

875 :名前は開発中のものです。:2013/11/05(火) 22:29:37.44 ID:5wW1CrKZ
コンピューターはゼロと1だけだから、かんたんだよね。 


現実にそうなの?

876 :名前は開発中のものです。:2013/11/05(火) 22:32:47.87 ID:CTkkt81/
>>874
そうかな…

詳しいアルゴリズムまでは考えてないけど
「どうやればブロック崩しが作れるのか?」を少し考えるだけで、
「お?意外と難しいな…」というのが俺なりの感想です

ま、そのうち、ブロック崩し開発に本気で挑戦してみるつもりですが、
その前に、腕試しとして、テトリスを解いてみたいですね

今は「どうすればテトリスが作れるのか?」を
少しずつ考えているところです
俺はテトリスも中々、よく考えられたゲームだと思います

877 :名前は開発中のものです。:2013/11/05(火) 22:33:19.79 ID:HC9c4XUl
>>875
株は上がるか下がるかの二択だけだから、かんたんだよね。


現実にそうなの?

878 :名前は開発中のものです。:2013/11/05(火) 22:34:10.93 ID:aQwTFB2I
自機を操作→敵を操作→コリジョンみたいなステップがないから
RPGはシューティングやアクションと比べてモチベが続きにくいんよなー

アドベンチャーとかノベルもそうだけどある程度エンジンを作った上で素材を構築していかないとだめだしの

879 :名前は開発中のものです。:2013/11/05(火) 22:35:50.84 ID:HC9c4XUl
>>876
順番がどー考えても逆だろあほか

880 :名前は開発中のものです。:2013/11/05(火) 22:37:19.30 ID:CTkkt81/
俺なりに考えたテトリスはとりあえず、

1.ブロックを下に落とす
2.ジョイパッドの左右キーで回転
3.床まで落ちたら、落下を停止
4.横一列は全て揃ったら、その列だけ消す
5.それとともに点数が加算

まで、頭の中で組みました

今は、どうやってランダムでブロックを登場させるのか?
で、少し頭を悩ませているところです

ランダム計算って意外と難しいよね…

881 :名前は開発中のものです。:2013/11/05(火) 22:38:14.28 ID:3ZEesbsQ
RPGの最もシンプルな形ってなんだろうね?

少なくとも>>873は違うよな
変数で足し算や引き算をするだけのゲームなら、電卓もRPGになるわ

882 :名前は開発中のものです。:2013/11/05(火) 22:41:04.71 ID:aQwTFB2I
ブロック崩しってそんなに反射角複雑だったっけ・・・?

>>881 素材的な意味でいうとウィザードリィ?
ほぼグラフィックいらないからシステムの構築には楽なモチーフだよね
計算式もTRPGゆずりな1d6とかだし

883 :名前は開発中のものです。:2013/11/05(火) 22:41:43.70 ID:CTkkt81/
>>879
いや、テトリスの方がブロック崩しよりも簡単そうな気がします

まあ、深いところまで突き詰めて考えないとわかんないけど
多分、テトリスの方が楽のような気がします

884 :名前は開発中のものです。:2013/11/05(火) 22:57:30.97 ID:itfUHADs
プログラミング入門者で、様子が整理できない状態だと「わからない物は難しい物」って考えがちだけど、
いったいどんな想像してるんだろうかとふと思った。

885 :名前は開発中のものです。:2013/11/05(火) 22:57:36.51 ID:+x+EoQCL
昔、テトリス作ったことあるけど、悩んだところといえば、狭いとこに突っ込んだ状態で回転させようとしたときどうするか、くらいだったな。

それでも完成まで一週間くらいかかったわけで、数年前に3行テトリスを知った時には戦慄したわ……。

886 :名前は開発中のものです。:2013/11/05(火) 23:01:07.50 ID:CTkkt81/
>>881
うん、だからRPGは電卓なんだよw

たくさんの電卓を用意して
足したり引いたりしているだけです

まあ、物語の部分を考えるのは大変だけど
適当なクエストを用意すりゃいいでしょう

スライムを100匹討伐したらクエスト達成!
そして報酬をゲット!
そんな簡単なクエストをたくさん作ってRPGを作る

887 :名前は開発中のものです。:2013/11/05(火) 23:02:20.38 ID:itfUHADs
何行テトリスとか、その行数って単に改行してないだけでは

888 :名前は開発中のものです。:2013/11/05(火) 23:05:01.28 ID:PClnd306
伸びすぎwww

889 :名前は開発中のものです。:2013/11/05(火) 23:06:55.80 ID:nxfMyBJ1
うわ〜この人、単純変数とIFだけでRPGを作っちゃうんだろうね

890 :名前は開発中のものです。:2013/11/05(火) 23:08:59.27 ID:HC9c4XUl
>>883
1.画面の端で反射(移動方向の符号を反転)する球を作る
2.ブロックとバーを表示させる
2.バーを左右に動かせるようにする
4.球をバーから発射させられるようにする
5.ブロックとバーに球の当たり判定をつける

どこがテトリスより難しいかわからない

891 :名前は開発中のものです。:2013/11/05(火) 23:10:56.21 ID:Kq66E5ow
>>889
別にいんじゃねーの。作れるならw

>>885
7行ならしってる。500バイト位のスクリプトのやつ

>>887
そうだよ。1400バイトくらいで1行だと言いはっていた人もいたわ。

>>888
雑談もたまにわいいじゃん。
まあ、そろそろ自治っぽいのがスレチとか言いそうな雰囲気ではあるなw

892 :名前は開発中のものです。:2013/11/05(火) 23:11:19.98 ID:S58YQK+W
いずれも「最初につくると良いゲームの一覧」には入ってるんじゃない?
その中で難易度の差はあるだろうけど、あくまでそのレベルというか。

893 :名前は開発中のものです。:2013/11/05(火) 23:13:39.06 ID:CTkkt81/
ちなみに俺が考えたテトリスのブロックは、

■←こういう四角のボックスを一つ用意するだけです
これを







■■

■■
■■

■■■
  ■

こんな風に色々組み合わせてブロックを作って
色は、プログラム側で赤にしたり青にしたりします

ちなみに画像ファイルは使いません
DXライブラリには、DrawBox関数があるので、それでブロックを作ります

894 :名前は開発中のものです。:2013/11/05(火) 23:21:58.61 ID:iBycBYPW
横スクロールアクションゲームで床から飛び出してくる針を作ってるのですが
床にもぐろうとすると床の前に表示されてしまいます。
一時的に表示順を変えるのは難しいので、画像の一部だけ非表示にすることってできないでしょうか

895 :名前は開発中のものです。:2013/11/05(火) 23:26:58.02 ID:HC9c4XUl
>>894
DrawRectGraphで表示したいとこだけ描画しろ

896 :名前は開発中のものです。:2013/11/05(火) 23:27:35.33 ID:Kq66E5ow
モデリングとモーションはMaya2009 Motionbuilder2009だな。
あとスカルプトに3d-coat V4 と MudBox2009

テクスチャはSubstanceとフォトショ。

Visualstudioは未だに2010のまま。
ゲームエンジンはTorque3Dを今は使ってる。

Torqueはレベルエディタがなかなかいいよ。オープンソースになったから使ってみれば?
https://github.com/GarageGames/Torque3D

俺は製品版Ver1.2の頃買ったけどなw

897 :名前は開発中のものです。:2013/11/05(火) 23:27:42.07 ID:D5jPxscB
カオスな流れが続く

898 :名前は開発中のものです。:2013/11/05(火) 23:28:06.11 ID:Kq66E5ow
うぉ、誤爆失礼orz

899 :名前は開発中のものです。:2013/11/05(火) 23:28:15.72 ID:CTkkt81/
あと、俺は何かの参考書を読んで
その通りにプログラムを組むのはあまり好きではありません

プログラミングの楽しみ方は、
C言語/C++の命令などの基礎だけを参考書を読むなりして学んで
ゲーム自体は、自分でイチから考えて組んで
作り上げていくから面白いのです

DXライブラリは直観的にゲームプログラミングが出来るので
俺からすれば、DXライブラリは最高のおもちゃですね

これを使えば、どんなゲームも簡単に作れちゃうじゃない!と…。
DXライブラリの作者さんアリガトー!w

通信系の関数も用意されていたので
いつかオンラインゲームにも挑戦してみたいですね

900 :名前は開発中のものです。:2013/11/05(火) 23:31:49.87 ID:wZ5UkH7I
テトリスって例えば凸型ブロックの当たり判定って正方形4回でやるの?
あと回転するときってどうやって回転元から回転先までクォータニオンで衝突判定を計算するんですか

901 :名前は開発中のものです。:2013/11/05(火) 23:35:19.35 ID:iBycBYPW
>>895
やってみます。ありがとうー

902 :名前は開発中のものです。:2013/11/05(火) 23:38:10.50 ID:HC9c4XUl
>>900
3Dについては知らんが、本家は回転していないんだなw
基準のブロックを中心に組み替えられてる

なので狭いとこで回転できる(ように見える)

903 :名前は開発中のものです。:2013/11/05(火) 23:41:36.82 ID:CTkkt81/
>>900
他の人はどうやってテトリスを作り上げるのかは知りませんが、
俺が考えるテトリスのブロックの回転は、
回転であって回転ではありません

左右キーで、1つのブロックの座標だけを変えるのです

■■■
  ■

例えば、こんなブロックがあったとして、
右回転させる時は、真ん中のブロックを原点として
回りのブロックだけをこんな風に座標を変えます

  ■
■■
  ■

この時に、回転する前の一番下のブロックの一つ下の座標に
障害物(床もしくは積み上げたブロック)があった場合は、
回転を受け付けないようにする

904 :名前は開発中のものです。:2013/11/05(火) 23:47:05.75 ID:CTkkt81/
■■■
  ■

ああ、そうか…。
この場合は一つ下に障害物があっても回転してもいいのかw

まあ、いいや、テトリス開発は面白そうなので
後の楽しみに取っておくことにしよう


とりあえず、今は、タイトル画面が完成したら
スロットゲームを作ろうと考えています

ちなみにスロットゲームは完全に頭の中では出来上がっています
今は、どうやって解説しようかな?と頭を悩ませているところですね

905 :名前は開発中のものです。:2013/11/05(火) 23:52:48.60 ID:4ngKs0L6
>>848
>小型の雑魚は矩形ワロタwww
ボム兵とかですか?

とりあえず参考になりそうです、大ボスはそのキャラが占める
形でやったほうがいいんですねー、参考になりました。

906 :名前は開発中のものです。:2013/11/05(火) 23:54:22.08 ID:Kq66E5ow
>>900
>>903

クォータニオンで辺り判定???なんでそんな面倒なことするんだw
そんなテトリス作りたいなら、Box2Dあたりの物理エンジンンでも使った方が簡単だよ。
当たり判定も物理エンジンがやってくれる。

なんか やっぱり 個々の想像しているゲームが  ばっらばっらだな。

俺が想像していた簡単にできるテトリスはこちら。

簡単にできるテトリスのソース
https://github.com/DQNEO/CppTetris

サイトで解説が欲しければ上のソースとは違うがほれ
http://1st.geocities.jp/shift486909/tetlec/tetlec_menu.html

907 :名前は開発中のものです。:2013/11/05(火) 23:55:37.74 ID:itfUHADs
>>896
全然関係ないけど、Torque3D ってオープンソース化されてたのか
ググってみたら去年発表されてたとか今知ったww 既存のゲームエンジンだと、俺 OGREなら触った事あるな。

908 :名前は開発中のものです。:2013/11/05(火) 23:56:56.03 ID:ChqJgt+x
http://www.dotup.org/uploda/www.dotup.org4640924.zip.html
テトリスソース

909 :名前は開発中のものです。:2013/11/05(火) 23:56:59.25 ID:CTkkt81/
テトリスの落下は、時間で制御すればいいですね

例えば1000ミリ秒(1秒)間隔で1マスずつy軸の座標をプラスにするとして、
1000ミリ秒間だけ、左右キーで回転を受け付けるようにする

1000ミリ秒経過すると、1マス下に落下させますが、
その下が障害物(床もしくは積み上げたブロック)があった場合は、
もうそのブロックについては、キー入力を受け付けないようにして、次のブロックが登場し
そのブロックに対してだけ、キー操作を受け付けるようにする

910 :名前は開発中のものです。:2013/11/05(火) 23:59:38.77 ID:CTkkt81/
>>908
そんな誰かが作った答えを見ても何にも面白くない
自分でイチから考えてプログラムを組み上げるから面白いのです

というわけで、今日はもうこれぐらいにしよう
ではまた。

911 :名前は開発中のものです。:2013/11/05(火) 23:59:54.09 ID:Kq66E5ow
>>907
そう、オープンソースになったのよ。
ほぼ、製品版と変わらんよ。レベルエディタから何から全部ついてる。バージョンも上がってるしな。
製品版買った俺はいったいって状態だけどw

って誤爆に触らないでくれ恥ずかしい、、、

912 :名前は開発中のものです。:2013/11/06(水) 00:13:21.99 ID:rRVDMymq
■■■
  ■

    ■■■
■■■■■


ああ、なるほど…。

よく考えてみたら、すでにこのようにブロックが積み上がっていた場合は、
一番下まできたら、回転は出来ないようにしないといけないのか…。

ということは、落下する4つのブロックは、
ブロックに隣接していない方向全てに辺り判定を付けておく必要があるわけですね

やっぱ、テトリスは奥の深い中々楽しめそうなゲーム開発ですねw

913 :名前は開発中のものです。:2013/11/06(水) 00:24:14.47 ID:VgYVs791
伸びてるけど読む気がしないw

914 :名前は開発中のものです。:2013/11/06(水) 00:26:22.08 ID:j7fSIGQa
kazukiと馬鹿の独り語りがほとんどだから読まなくておk

915 :名前は開発中のものです。:2013/11/06(水) 00:36:37.04 ID:ZlOOsrhY
自己紹介乙

916 :名前は開発中のものです。:2013/11/06(水) 00:39:09.78 ID:rRVDMymq
プログラミングをあれこれ考えるという話題なので
むしろ面白いと思いますけどね

リアルでするなら
仲間内で集まって1つゲーム開発に取り掛かり
色々と議論しているようなものですよ


「ここをこうすればいいんじゃない?」
「でも、それだとこういう問題が出てくるね」
「じゃあ、こうしてみれば…」

というような。

俺は基本的にこうやって色々考えたりすることが好きなんだ

あと、マニュアル作りも好きですね
だから解説サイトを運営しているのです
あれも趣味の一貫です

917 :名前は開発中のものです。:2013/11/06(水) 00:45:12.32 ID:IdCIsCiu
趣味ならローカルでやればいいんじゃね

918 :名前は開発中のものです。:2013/11/06(水) 01:23:27.04 ID:j7fSIGQa
>>916
俺らは仲間じゃねーし、考え事なら一人で黙ってしとけよアスペ

919 :名前は開発中のものです。:2013/11/06(水) 03:17:38.81 ID:d7Oa0V/H
ID:K3Hz6QZH = ID:j7fSIGQa

920 :名前は開発中のものです。:2013/11/06(水) 03:56:56.10 ID:wwtwxzaF
松浦はお断りだ

921 :名前は開発中のものです。:2013/11/06(水) 04:02:57.74 ID:mgk0Hco9
SRSも知らないでテトリス語ってるアホ共がいるスレはここですか

922 :名前は開発中のものです。:2013/11/06(水) 04:06:34.08 ID:3Oy8pvkN
超伸びてるけど何があったの?

923 :名前は開発中のものです。:2013/11/06(水) 04:16:33.27 ID:j7fSIGQa
>>922
いつもの荒らし降臨

924 :名前は開発中のものです。:2013/11/06(水) 05:42:52.49 ID:ycxBLT+3
なんか伸びてると思ったらkazukiか

>>798
DXlibから初めてC言語触った今も初心者のゴミだが
俺も昔そんな感じで試行錯誤してて
色々無駄な組み方しまくってたから毎フレーム3000個程度しかビルボード描画出来なかったけど
数ヵ月掛けて情報集めながら試行錯誤したら今はGPUも使いつつ3〜4万枚程描画出来てる
シングルスレッドでCPUがボトルネックだから最適化の余地はいっぱいあるし、
マルチスレッド化とかの奥の手だってあるからまだまだ増やせると思う

CPUのみでもi5で1.5万ぐらいは描画出来るようになったと思うから
2chじゃ叩かれまくるだろうが頑張れ
叩かれながらでも着実に知識をつけていけばいいんだよ
参考になること言ってくれる優しい人もたまにはいるし

長文すまん

kazuki ←絡み避け用ワード

925 :名前は開発中のものです。:2013/11/06(水) 07:14:30.39 ID:wXRK0e6W
テトリス作るなら1hくらいで出来るものがニコ動にあるから
それ見てみるといいよ
DxLibじゃないけど作り方の参考にはなる

926 :名前は開発中のものです。:2013/11/06(水) 07:29:52.10 ID:uoeSwhSm
>>923
kazukiはこのスレの風物詩
アスペとか言っちゃうオマエの方がよっぽど荒らしっぽい

927 :名前は開発中のものです。:2013/11/06(水) 07:40:41.92 ID:xcreF8Oi
「他人を馬鹿にして優越感に浸る」系のアフォは放置すればいい。

928 :名前は開発中のものです。:2013/11/06(水) 07:47:48.57 ID:j7fSIGQa
複数端末使っての自演もkazukiの常套手段
バレすぎなのが不思議なのか、2ちゃん運営が俺を潰そうとしてるとか電波飛ばしてたこともあったな

929 :名前は開発中のものです。:2013/11/06(水) 07:59:17.13 ID:3Oy8pvkN
どうでもいいけどたったさっきSetCreateSoundDataType関数の存在を知ったわ
今までの逐一BGM削除してた作業とあのロード時間の長さは何だったのだろうか

930 :名前は開発中のものです。:2013/11/06(水) 08:05:54.83 ID:j7fSIGQa
BGM全部メモリに展開して読み込んでたのか

931 :名前は開発中のものです。:2013/11/06(水) 08:58:06.58 ID:GJzKePIq
リファレンスは一度全部目を通しておけって話だな。
俺もときどき見逃してたか忘れたかで無駄に頭を悩ませる事があるw

932 :名前は開発中のものです。:2013/11/06(水) 09:14:07.05 ID:XkZRZnJb
>>833
遅レスだけど、シューティングゲームは接触判定と移動さえ出来れば作れるから

933 :名前は開発中のものです。:2013/11/06(水) 09:16:29.88 ID:XkZRZnJb
立体的な音響にしたいんだけど、dxlibだけでできる?
前質問した時xaudio使って自分で音波弄らないと無理みたいなこと言われたんだけど
みんなそんなことやってるの?

934 :名前は開発中のものです。:2013/11/06(水) 09:17:01.35 ID:KjDcr8nK
普通は立体的な音響なんかにしようと思わないんじゃないか

935 :名前は開発中のものです。:2013/11/06(水) 09:17:55.15 ID:3Oy8pvkN
でも個人的に再生負荷っていうのが気になるんだよな
今まで低スペックノ−トで弾幕シューティング開発してた癖で
それなりのスペックになった今でもちょっと気になる
そこら辺はオプションからユーザーに選ばせるっていう手もあるけど

936 :名前は開発中のものです。:2013/11/06(水) 09:19:07.77 ID:XkZRZnJb
>>934
ステレオとかしたくない?
サラウンドか。

937 :名前は開発中のものです。:2013/11/06(水) 09:36:01.89 ID:j7fSIGQa
>>935
複数の音楽を重ねて鳴らすのでもなけりゃ再生のコストは無視していいレベル

938 :名前は開発中のものです。:2013/11/06(水) 09:46:31.69 ID:+dHTtgui
左右に振り分けるのはやったことがあるけど、立体音響まではやったことないなあ。

939 :名前は開発中のものです。:2013/11/06(水) 10:19:47.72 ID:HCSgajgZ
じゃあカメラからの距離で音量小さくするだけなのか

940 :名前は開発中のものです。:2013/11/06(水) 10:25:50.49 ID:vBtBCg2n
安直な方法でいいなら、立体(三軸)じゃないけど、パンの左右と音量で奥行き表すと平面には表現出来るよな。
ただそれでも音のソース単位でそれを行う必要あるけど

941 :名前は開発中のものです。:2013/11/06(水) 12:39:25.66 ID:wprXC0Vi
>>854
お前は優しすぎるor真面目すぎる

連鎖あぼーんするのが惜しくてNG使えなったのは初めての経験だ

942 :名前は開発中のものです。:2013/11/06(水) 12:44:09.78 ID:KH/QEx1w
>>881
個人的には「パラメータ」というフラッシュ作品だとおもう

943 :名前は開発中のものです。:2013/11/06(水) 13:46:35.10 ID:gZ2HDb8A
Databaseのレコードを操作するのがRPG

944 :名前は開発中のものです。:2013/11/06(水) 14:24:57.73 ID:8D2oMpsQ
データの値がイベントのトリガーになるという視点がぬけてるんだが

945 :名前は開発中のものです。:2013/11/06(水) 15:57:34.69 ID:+G+b4QfM
>>941
本人乙

946 :名前は開発中のものです。:2013/11/06(水) 16:17:23.09 ID:IWjkf0Gl
マジ本人ならきもすぎ

947 :名前は開発中のものです。:2013/11/06(水) 17:52:39.43 ID:+G+b4QfM
>928
こういう、昔からkazukiにしつこく粘着している上から目線いるよな。

どんだけすごいゲーム作ったか知らんけど。

お前の方がよっぽど荒らしだよ。

>927の人に同意だわ

948 :名前は開発中のものです。:2013/11/06(水) 18:00:57.44 ID:hRzs1/7g
ほっとけっての。
誰もそいつの相手していないのが証明してるだろ。

さっさとNGしとけ

949 :名前は開発中のものです。:2013/11/06(水) 18:22:57.31 ID:F40l41d0
流れが悪いんだよ
マリオジャンプの話しようぜ

950 :名前は開発中のものです。:2013/11/06(水) 18:28:18.55 ID:vpr+Z/N+
じゃあ俺はsinに近似しよう

951 :名前は開発中のものです。:2013/11/06(水) 18:38:19.73 ID:a+hM6C2j
また、同じ手合いがワイタトコロデ
そろそろ流れをスレタイにもどそうか

952 :名前は開発中のものです。:2013/11/06(水) 19:12:51.61 ID:rz3bRDZQ
DirectXがあるのにDXライブラリなんて作りやがって迷惑だ!!

953 :名前は開発中のものです。:2013/11/06(水) 19:29:36.25 ID:Prx9M5zu
いちいちID変えご苦労様

954 :名前は開発中のものです。:2013/11/06(水) 19:53:22.95 ID:Rikqp2C6
このスレをアスペで検索したら4件ヒット。
こんな旬を過ぎた単語使う奴あまり居ないからほぼ同一人物なんだろう。
この板、過疎ってるからわかりやすい。

955 :名前は開発中のものです。:2013/11/06(水) 23:55:53.80 ID:/+DqEH7u
今日はkazukiの自演が盛んだなw

956 :名前は開発中のものです。:2013/11/07(木) 00:38:41.19 ID:o+GswMQv
最近の流れでkazukiを擁護してる発言の大半に。が付いているのにお気付きだろうか



http://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まとめ、おわり

957 :名前は開発中のものです。:2013/11/07(木) 00:43:46.20 ID:VG3ui28W
kzauki擁護じゃなくて別の馬鹿の話しでしょw

958 :名前は開発中のものです。:2013/11/07(木) 00:54:09.83 ID:VG3ui28W
>>956
必死すぎて痛いわ。お前は何と戦ってるんだ?
争いはのカンガルーのAA貼ってやろうか?w

959 :名前は開発中のものです。:2013/11/07(木) 00:58:16.62 ID:o+GswMQv
擁護の振りして一度書き込んだだけじゃ気持ちが収まらなくて、ついつい連レスしちゃうのも特徴ですね
別に私はkazukiと戦ってるつもりはありませんよ

960 :名前は開発中のものです。:2013/11/07(木) 00:59:47.82 ID:VG3ui28W
ほんと馬鹿だこいつ。
お前か昨日あたりから湧いてる痛いやつはw

961 :名前は開発中のものです。:2013/11/07(木) 01:04:57.74 ID:OGhx7Dqi
kazukiは戦おうとしてるけど、ヲチャにも相手されず見下されてるだけだからな
まさに「争いは同じレベルの者同士でしか発生しない」(笑

962 :名前は開発中のものです。:2013/11/07(木) 01:07:49.18 ID:MHx3qQss
同族嫌悪と言うやつだな

963 :名前は開発中のものです。:2013/11/07(木) 01:10:55.17 ID:VG3ui28W
ほんとあほくさ
そのkazukiくんとアンチkazukiくんだけにこのスレ乗っ取られてるやんw

964 :名前は開発中のものです。:2013/11/07(木) 01:13:10.78 ID:H9smasIb
そもそもkazukiってなんなの荒らしなの?そんなに有名なの?

965 :名前は開発中のものです。:2013/11/07(木) 01:16:58.46 ID:VG3ui28W
これワロタ

831 名前:名前は開発中のものです。[sage] 投稿日:2013/11/05(火) 19:21:34.03 ID:hCvpDVI/
2chの常識
kazukiに反応する人もkazuki も知らんのか

966 :名前は開発中のものです。:2013/11/07(木) 01:28:13.38 ID:OGhx7Dqi
>>964
あちこちに降臨してるから知ってる人は多いと思われ

967 :名前は開発中のものです。:2013/11/07(木) 01:38:00.01 ID:vzDQ4hZI
痛いじゃなく普通の言葉になおすとネットストーカーだな、大好きなんだろ

968 :名前は開発中のものです。:2013/11/07(木) 02:49:28.52 ID:NYqz5fdK
ストーカーではないだろ
こいつは自分から悪目立ししようとしてるんだから
粘着されても仕方ない

969 :名前は開発中のものです。:2013/11/07(木) 03:21:40.38 ID:u1EHcTYx
恨みだのネガティブなストーカーもいる
結局、執着だろ まさにキモヲタ

970 :名前は開発中のものです。:2013/11/07(木) 03:32:28.81 ID:VP8tfMJW
みなさんはこの有名な言葉を知っていますか?

「荒らしに反応するのも荒らし」

971 :名前は開発中のものです。:2013/11/07(木) 03:47:02.41 ID:o+GswMQv
突っ込みどころありまくりの自演するのが問題だよな
無視しにくい

972 :名前は開発中のものです。:2013/11/07(木) 10:09:02.06 ID:zgY9Plys
今までも何度かこのスレに登場して、そのたびに住人に総スカンくらってるのに今回は随分擁護レスがつくな。

973 :名前は開発中のものです。:2013/11/07(木) 10:10:14.96 ID:8bvZLUmY
最初の1レスくらいは(突込みどころも多いとはいえ)良いこと言ったりするからな

974 :名前は開発中のものです。:2013/11/07(木) 10:38:37.34 ID:6fQhAx27
新参からみればただの荒らしの罵倒にしか見えねー からだろ。
みんながkazukiを知ってるなんて言う認識がおかしい。ヲチしてるやつだけだろそんなの

俺はヤツがこの板に3Dなんとかをつくるとかスレ建てた頃からしってっけど

ヤツには関心がないからなんとも思わな

ていうか、必死に戦っているところ悪いが、そろそろDXライブラリの話をしたらとうだ?

975 :名前は開発中のものです。:2013/11/07(木) 10:43:53.17 ID:5VNC/IYi
基本的にライブラリに関する話だけでいい

976 :名前は開発中のものです。:2013/11/07(木) 12:03:09.55 ID:qXzfRGmE
なんで自演するのに文章の特徴隠せないんだろ

977 :名前は開発中のものです。:2013/11/07(木) 12:13:41.80 ID:6fQhAx27
何でも、擁護に見えちゃう病かww
うざいから消えてね

978 :名前は開発中のものです。:2013/11/07(木) 12:30:16.11 ID:8XyinsV7
全部kazukiの自演です(キリ

979 :名前は開発中のものです。:2013/11/07(木) 12:43:22.93 ID:qXzfRGmE
一応次スレ立てといたよ

DXライブラリ 総合スレッド その17
http://toro.2ch.net/test/read.cgi/gamedev/1383795645/

980 :名前は開発中のものです。:2013/11/07(木) 12:52:36.00 ID:mqRxZiDh
部外者からすれば誰がどんな理由であろうと
人が集まる場所でその一角だけヒートアップしてたらウザいんだよ

>979
余計な一言のせいで乙の代わりに、”お前が言うな”と言いたくなった

981 :名前は開発中のものです。:2013/11/07(木) 12:58:02.00 ID:xdGxMciN
糞スレage

982 :名前は開発中のものです。:2013/11/07(木) 13:15:25.17 ID:qXzfRGmE
>>980
次スレにはこの流れを引きずらないで行きまっしょいな意気込みで

こっちでヒートアップしないようにするには、奴関連の隔離スレが復活すればいいのかね

983 :名前は開発中のものです。:2013/11/07(木) 13:20:55.38 ID:qXzfRGmE
向こうに書き込みはじめた
コイツもkazukiだったのか

984 :名前は開発中のものです。:2013/11/07(木) 13:32:30.29 ID:n+7nnTez
東京ゲームショーでアマチュア部門入賞するのはどれぐらいのクオリティがあればいいですか

985 :名前は開発中のものです。:2013/11/07(木) 13:36:34.12 ID:kQlvEK7d
もう末尾に「かしこ」みたいな感じで「kazuki」って入れるようにして
まともにDxLibのレスだけしてれば全てうまくいくよ^^

986 :名前は開発中のものです。:2013/11/07(木) 14:36:38.55 ID:DCtZj/a5
矩形内に文字列を描画する関数ってある?
ちょうどAPIのDrawTextのような。

987 :名前は開発中のものです。:2013/11/07(木) 15:52:50.75 ID:5VNC/IYi
>>986
それむしろAPIのDrawTextじゃダメなのか

988 :名前は開発中のものです。:2013/11/07(木) 16:02:38.94 ID:aBvhzpR+
次にお前はビルボードに書き込みたいんですと言い出す

989 :名前は開発中のものです。:2013/11/07(木) 16:09:35.89 ID:DCtZj/a5
>>987
やっぱり相性が悪いね。点滅してうまく描画できない。

990 :986:2013/11/07(木) 16:44:37.39 ID:DCtZj/a5
いろいろググったらDrawObtainsStringってのがあった。
非公開関数で文字入力関数に分類されてたから気付かんかった。
スレ汚し失礼。

991 :名前は開発中のものです。:2013/11/07(木) 18:51:12.59 ID:5VNC/IYi
>>989
それ相性とかじゃなくて、もしかしてDirectXの「描画先の」DC使って書こうとしてるんじゃ
もしそうなら当たり前

992 :986:2013/11/07(木) 19:54:54.88 ID:DCtZj/a5
全力でそうした/(^o^)\
バックバッファのDC取得とかできるの?

993 :名前は開発中のものです。:2013/11/07(木) 20:06:03.40 ID:5VNC/IYi
>>992
バックバッファのDCと言うか、普通はRenderTardgetを別に作成して、そこにDirectXの出力書き込ませた後、
文字とか書き込んで、それを出力とかするかな

994 :名前は開発中のものです。:2013/11/07(木) 22:59:47.12 ID:X3XjhEbu
画像とかモデルファイルを実行ファイルに組み込みたい場合ってどうしたらいいの?
ビジュアルスタジオ2010使ってて、画像の読み込みとかはdxlibの関数使ってる

995 :名前は開発中のものです。:2013/11/07(木) 23:18:38.25 ID:jl4/n3iX
リソース

996 :名前は開発中のものです。:2013/11/07(木) 23:38:08.43 ID:fpcjmWcM
ソースファイル
ヘッダーファイル
リソースファイル
外部依存関係

って並んでるところのリソースファイルに追加すればいいのか?
簡単だな、なんでみんなやらないんだ

997 :名前は開発中のものです。:2013/11/07(木) 23:39:51.39 ID:VP8tfMJW
だって素材修正するたびにリンクしなおさなきゃいけないじゃん

998 :名前は開発中のものです。:2013/11/07(木) 23:41:27.89 ID:qXzfRGmE
実行ファイルが肥大するのは避けたいし、リソースからの読み込みは遅いからだよ

999 :名前は開発中のものです。:2013/11/07(木) 23:43:02.88 ID:11Rk66jP
リリースするぞ!ってなったらもう変更しないじゃん
細かいアップデートはめんどくさいかもしれないけど
dxlibについてるアーカイブより
「プレイヤーに見られたくないファイルを隠蔽する」
って目的にあってんじゃない?

1000 :名前は開発中のものです。:2013/11/07(木) 23:48:27.48 ID:qXzfRGmE
リソースは暗号化したアーカイブより簡単に抽出できちゃうだろ・・・

1001 :1001:Over 1000 Thread
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。

269 KB
★スマホ版★ 掲示板に戻る 全部 前100 次100 最新50

read.cgi ver 05.02.02 2014/06/23 Mango Mangüé ★
FOX ★ DSO(Dynamic Shared Object)