DXライブラリ 総合スレッド その19at GAMEDEV
DXライブラリ 総合スレッド その19 - 暇つぶし2ch1:名前は開発中のものです。
16/01/05 23:44:29.77 fkNSYSkc.net
Cを習得した程度のスキルでも、ゲームのグラフィックを比較的容易に描画する事のできる、
「DXライブラリ」に関するスレッドです。
DXライブラリに関するテクニックなどの情報交換などを行う事で、
多くのDXライブラリユーザのスキルの向上に役立てたら幸いです。
【公式】
URLリンク(homepage2.nifty.com)
【関連スレ】
C/C++ゲーム製作総合スレッド Part7 [転載禁止](c)2ch.net
スレリンク(gamedev板)
ゲームプログラムなら俺に聞け32(c)2ch.net
スレリンク(tech板)
●DXライブラリではなくDirectXの質問ならこっちへ
【C++】 DirectX初心者質問スレ Part39 【C】 [転載禁止](c)2ch.net
スレリンク(tech板)

2:名前は開発中のものです。
16/01/05 23:46:42.08 fkNSYSkc.net
【前スレ】
DXライブラリ 総合スレッド その18
スレリンク(gamedev板)
【過去スレ】
01 スレリンク(gamedev板)
02 スレリンク(gamedev板)
03 スレリンク(gamedev板)
04 スレリンク(gamedev板)
05 スレリンク(gamedev板)
06 スレリンク(gamedev板)
07 スレリンク(gamedev板)
08 スレリンク(gamedev板)
09 スレリンク(gamedev板)
10 スレリンク(gamedev板)
11 スレリンク(gamedev板)
12 スレリンク(gamedev板)
13 スレリンク(gamedev板)
14 スレリンク(gamedev板)
15 スレリンク(gamedev板)
16 スレリンク(gamedev板)
17 スレリンク(gamedev板)

3:名前は開発中のものです。
16/01/06 02:07:33.23 bl/881x8.net
埋め

4:名前は開発中のものです。
16/01/06 04:35:21.79 vkTt7kSt.net
DirectXを利用したゲーム開発のためのライブラリ「DXライブラリ」に脆弱性 - 窓の杜
URLリンク(www.forest.impress.co.jp)


5:docs/news/20160105_737584.html



6:名前は開発中のものです。
16/01/06 09:50:52.12 uUHWeNkD.net
すれたておつ~

7:名前は開発中のものです。
16/01/06 13:49:00.22 vToozi2l.net
即死回避

8:名前は開発中のものです。
16/01/06 21:48:53.47 FPsnS4s5.net
リスポーンキル回避

9:名前は開発中のものです。
16/01/06 22:07:03.62 SNpTpPa+.net
char binadata[10000000]ってやったらエラーが出た
char binadata[9000000]だったら大丈夫だった
char binadata[10000000]でもグローバル変数だったら大丈夫だった
なんでグローバル変数だと大丈夫なん?
使うメモリの容量がローカル変数とグローバル変数では違うの?

10:名前は開発中のものです。
16/01/06 22:27:40.57 D/YIuxFU.net
ローカルメモリはスタックメモリに配置されるからって
大学でならわなかったかい?

11:名前は開発中のものです。
16/01/06 23:21:49.75 SNpTpPa+.net
はい、ならいませんでした

12:名前は開発中のものです。
16/01/07 10:01:18.70 Fegao3sZ.net
エラーってstack overflow?
初歩的すぎる

13:名前は開発中のものです。
16/01/12 13:01:35.36 edPYChEu.net
記憶域でのスタックと静的領域とヒープの3つを理解し
適切に使い分けられなければ
蹴り入れられても文句言えない
C言語入門からやり直すべきよ

14:名前は開発中のものです。
16/01/24 15:52:14.74 YuKcV9Os.net
やり直すというより、>>8は現在進行形のC入門者なんだと思う

15:名前は開発中のものです。
16/01/25 17:48:18.36 sajU6FWk.net
ttfファイルを読み込んで使ってるんだけど、あらかじめ同じフォントがインストールされているとサイズがおかしくなる
どうにかならない?

16:名前は開発中のものです。
16/01/25 20:30:11.84 sajU6FWk.net
LoadFontDataToHandle関数で解決しました

17:名前は開発中のものです。
16/02/18 16:31:02.58 hWOqPyim.net
今更だけどこれって
「ディーエックスライブラリ」?
「デラックスライブラリ」?
前者で読んでるけどどっちなんだ

18:名前は開発中のものです。
16/02/18 18:15:07.43 CD7aF1NM.net
もともと DirectX のDXだからディーエックスでいいんじゃない

19:名前は開発中のものです。
16/02/18 19:31:57.04 qySKf0j4.net
ここで聞いていいのか分かりませんが
14歳からはじめるC言語わくわくゲームプログラミング教室 Visual Studio 2013編のP105に
 もし複数のキーが同時に押された場合、GetJoypadInputState関数は押されたキーを表す定
数を合計した数値を返します。たとえば←と↑が同時に押された場合、PAD_INPUT_LEFT(実
体は整数の2)とPAD_INPUT_UP(整数の8)の合計(つまり 10 )が返さます。キーを表す定数
には2進数で表すとビットが重ならない数値が割り当てられているので、合計してもキーを表す
ビットの状態は変わりません。
←↑の同時押し ↑→の同時押し
0000 0010(2) 0000 1000(8)
+0000 1000(8) +0000 0100(4)
──── ────
0000 1010(10) 0000 1100(12) 
とあるんですが、テンキーって
789
456
123
だから
↑8
←4  →6  
↓2
になって、←↑の同時押し:4+8=12、 ↑→の同時押し:8+6=14だと思うんですが、DXライブラリでは
↑8
←2  →4  
↓6
になるんでしょうか?

20:名前は開発中のものです。
16/02/18 20:15:38.26 pY1Vnnd1.net
>>18
多分その書籍は「同時押ししても別々に認識できる」
というのを示したかっただけな感じがするので
実際の割当がどうなっているのかはあまり気にしなくていいと思います
あと、テンキーの数字と割当整数がそのまま対応しているわけではないです

21:名前は開発中のものです。
16/02/18 21:30:32.21 w6GurFPy.net
その数字のままだったら、2+4と6単体と区別つかないだろう
2進数慣れといたほうがいいよ

22:名前は開発中のものです。
16/02/18 22:26:00.43 qySKf0j4.net
皆さんありがとう
この部分の前後読んでもさっぱり分からないので
これ以上気にしないで先に進むことにします
この先具体例が出て来るかも知れませんしね

23:名前は開発中のものです。
16/02/19 07:22:42.85 g+RjjMNz.net
ビット演算調べて。
一桁目が1 0001 1x1=1
二桁目が1 0010 1x2+0=2
三桁目が1 0100 1x2x2+0x2+0=4
四桁目が1 1000 1x2x2x2+0x2x2+0x2+0=8
2になると一桁上がるから2進数。
普通の10進数も、例えば、1234は
=1x10x10x10+2x10x10+3x10+4
一つのキーが押されているか押されていないかを表現するのには0と1で充分。
つまりキーが4つなら0000から1111で表現できる。
キーの組み合わせはビットのor演算になる。
2進数だから足し算と結果は同じになるけど。
逆に一つのキーの状態を調べるのはandで。

24:名前は開発中のものです。
16/02/19 17:10:56.60 yVHYDmTr.net
こうして見てると、ビット演算を他人に教えるって結構大変そうだな

25:名前は開発中のものです。
16/02/19 20:45:32.62 9rsuXZwb.net
ビット演算の話なのか?
俺はてっきり
if( GetJoypadInputState( DX_INPUT_PAD1 ) & PAD_INPUT_UP )
みたいに識別子と論理積を使って判定するのではなく
if( GetJoypadInputState( DX_INPUT_PAD1 ) == 8 )
みたいにその数字で直接入力判定してるから、テンキーの割り当て整数を知りたい
っていう話をしているのかと思ったんだけど

26:名前は開発中のものです。
16/02/20 10:04:02.81 EkX5eIPD.net
わざわざそんなことするメリットなくね?

27:名前は開発中のものです。
16/02/21 02:51:09.47 M/Be+VbG.net
とりあえず、入力状態を調べる関数の返り値を2進表記文字列と10進表記文字列で対にして画面左上に表示するだけの簡単なアプリ作っても良いかと思う。
と、ここで気になって調べたら、2進文字列への変換は
Cはitoa←VCでしか使えない? 今回は使えるかな
C++はstd::bitset
簡単なはずなのに、簡単でない気がしてきた。
用途限定なら自作した方が楽な(学べる)気もする。

28:名前は開発中のものです。
16/02/21 04:47:37.86 M/Be+VbG.net
>if( GetJoypadInputState( DX_INPUT_PAD1 ) & PAD_INPUT_UP )
&(and)だから特定の一つのキーが、押されているかのチェック
押されていなければ0、つまり偽 FALSEになりif以降は実行されない。
押されていれば0以外 真となりifは実行される。
if ((GetJoypadInputState(DX_INPUT_PAD1)&PAD_INPUT_UP) !=0)
これが省略されているのが一行目。
0であるならば、0以外であるならば、機械は基本たったこれ2つの判断で分岐する。!=0は0でないなら、の意味。not イコール 0
while(1)とかも同じ�


29:lえ方。これは条件が常に真(偽(0)ではない)なので無限ループになる。 for(初期化(が多い);継続の条件;条件が真なら行うこと) いずれ条件が偽になるからこそ使えるということ。 >if( GetJoypadInputState( DX_INPUT_PAD1 ) == 8 ) というかね、それならまだ if(GetJoypadInputState(DX_INPUT_PAD1)==(PAD_INPUT_UP|PAD_INPUT_LEFT)) こういう例をあげてくれたほうが嬉しかったかな。 |を+にかえても思ったとおりに動作はするかも知れないが、それではいけないということ。



30:名前は開発中のものです。
16/02/21 05:53:09.79 M/Be+VbG.net
if(GetJoypadInputState(DX_INPUT_PAD1)&(PAD_INPUT_UP|PAD_INPUT_LEFT))
にしないと使えないね。
寝ます。

31:名前は開発中のものです。
16/02/21 06:01:12.59 M/Be+VbG.net
ごめんこれも使えなかった。
同時に押された判定はすこし長くなるな。
このままではどちらか片方押さた場合でも、、、
眠い。ほんと寝ます。

32:名前は開発中のものです。
16/02/21 08:09:43.06 M/Be+VbG.net
if(GetJoypadInputState(DX_INPUT_PAD1)&(PAD_INPUT_UP|PAD_INPUT_LEFT)==(PAD_INPUT_UP|PAD_INPUT_LEFT))
一つのキーチェックは!=0でいいけど
ボタン1|ボタン2|ボタン3
とか複数キーが押されているかのチェックの場合は駄目ですね。一つのキーが押されただけでも!=0を満たしてしまうから。
連投すいません。そして初級者以外の方、失礼しました。

33:名前は開発中のものです。
16/02/21 08:25:35.10 M/Be+VbG.net
if((GetJoypadInputState(DX_INPUT_PAD1)&(PAD_INPUT_UP|PAD_INPUT_LEFT))==(PAD_INPUT_UP|PAD_INPUT_LEFT))
すいません。もう一度だけ。
c 演算子 優先順位 で検索してください。
確か&(アドレスじゃない方)は==よりあとに評価された気がする。これはCの欠陥ではないのかとか書いてた書籍があった気がする。
不安だし、()はつけといたほうが良いと思う。

34:24
16/02/21 09:00:22.20 Va9zPPiV.net
なぜ俺が適当に上げた例に対して
何レスにも渡って解りづらい解説をしているのだ・・・
というか肝心の>>18はもう居ないっぽいから
質問したかった内容自体がそこで合ってるのかわからんぞ

35:名前は開発中のものです。
16/02/21 09:24:49.20 M/Be+VbG.net
これでも簡単に書こうとしたのですけどね。
どの辺がわかりづらいですか?
簡単なことを簡単に書くのは難しいですね。

36:名前は開発中のものです。
16/02/21 10:04:32.36 Va9zPPiV.net
>>33
説明が長くなるほど要点をつかみづらくなるから
補足は少なく、説明の訂正は出ないようにして、
大事な部分だけ短く簡単に説明した方が初心者には理解しやすい
補足とかは質問者に求められたときだけ説明すればいいかと

37:名前は開発中のものです。
16/02/21 11:11:53.47 M/Be+VbG.net
>>34
了解です。

38:名前は開発中のものです。
16/02/29 21:14:11.05 QBvMTSC4.net
DXLibは初心者向けって聞くけど、シャープDXなどと何が違うの?
2Dゲームの場合。3Dなら素直にUnity使うし

39:名前は開発中のものです。
16/02/29 23:23:38.33 leqKH6jq.net
シャープDXってなんぞ。
初心者にオススメの1つではあるが、これで作られた市販ゲームもあるくらいには幅広いよ

40:名前は開発中のものです。
16/03/01 05:56:45.53 +UwmpDoJ.net
C言語で書きたくてwindowsAPI、グラフィックAPI触りたくない人向け

41:名前は開発中のものです。
16/03/01 15:06:45.22 YBHnpXlS.net
確かにC++ぽく作られてないのは嬉しい。
他の人のソースコードとかが解読しやすい。

42:名前は開発中のものです。
16/03/02 02:56:18.34 ObT9YhJL.net
俺もライブラリ作ってやるぜ!と意気込んで、
グラフィックと入力と音周りが出来たあたりで、DXライブラリで良いんじゃね?と気づいて戻ってくる感じ

43:名前は開発中のものです。
16/03/10 14:06:18.95 hKSGgP4O.net
キャラクターIDをソートする場合なんですけど
こういう場合はやっぱりバケットソート的なアルゴリズムが最速なのでしょうか?
条件
・10000体のキャラクターがいる(ID0~ID9999)※ID0番は空欄扱いの時に使うので実質9999体
・それぞれのキャラクターはスコアを持ってる(とりうる値はunsigned charの0~255)
・ソートする時はスコアの低い順に並べる
・スコアが同点ならIDが若い順に並べる
自作した処理の概要
int baketu[10000*256];
int kekka[10000];
まず配列baketu[]を0クリアして
for(int ID=1;ID<10000;ID++){
baketu[(IDのスコア*10000)+ID] = ID;
}
int x=0;int i=0;
while(x<9999){
if(baketu[i]>0){kekka[x]=baketu[i];x++;}
i++;
}
こんな感じです
int baketu[10000*256] ←なんかこれで10メガくらい使うみたいですし
もっとスマートなやり方は無いものでしょうか?
ただ、かなり頻繁に呼ぶ処理なので最優先したいのは速度です

44:名前は開発中のものです。
16/03/10 14:23:40.45 chbXq+m7.net
普通にクイックソートでいいのでは
ソート時間の比較
URLリンク(www.ics.kagoshima-u.ac.jp)

45:名前は開発中のものです。
16/03/10 14:44:23.96 w2U+RHTk.net
そもそも頻繁に呼び出すなら
いちいちソートしないでソート結果をずっと保持する。
オブジェクトの追加削除が頻繁なら、
ソートではなく、正しい位置に差し込むようにする。

46:名前は開発中のものです。
16/03/10 14:44:30.14 HzV85MQu.net
RPGなどのスクロールゲーは、描画可能画像(マップサイズ)を作ってそこに描画した後に、ウィンドウに描画すればいいのですか?
速度やメモリを考えると、やめた方がいいですかね

47:名前は開発中のものです。
16/03/10 15:25:16.50 hKSGgP4O.net
>>43
スコアの変更をするたびに並び替える関数を呼ぶってことでしょうか
その場合は一般的なソートではなくて、条件が限定されてる場合ならではの最適解があると考えて間違いないですよね?

あと今思ったんですけど>>41の処理って下記の処理と速度ほとんど変わらない…?
int kekka[10000];
int x=0;
for(int i=0;i<256;i++){
 for(int ID=1;ID<10000;ID++){
  if(IDのスコア==i){
   kekka[x]=ID;
   x++;
  }
 }
}

48:名前は開発中のものです。
16/03/10 21:20:58.41 w2U+RHTk.net
どっちも2,560,000ループだから変わらないね。
可読性なら、俺は45のほうが解りやすかった。
(というか45を読んでようやく41がなにをしたいのか解った)
スコアの変動幅が少ない(=順位の変動が少ない)なら、
スコアが変わるたびに前後のスコアと比較して入れ換えるやりかたでもいいかな
スコアが頻繁に変わるなら
数秒毎にまとめてquicksort

49:名前は開発中のものです。
16/03/11 00:14:12.32 0nAdN0wU.net
>>44
何が言いたいのか分からんが
ウィンドウより気持ち広めに描画すればいいんじゃないの?

50:名前は開発中のものです。
16/04/22 20:37:11.38 OBq0v7em.net
スマホ版DXライブラリ使ってみた人いる?

51:名前は開発中のものです。
16/04/22 23:20:09.41 SApaeOWl.net
純粋なc#でDXライブラリ作りたいと考えてる

52:名前は開発中のものです。
16/04/23 15:51:01.47 dvo5BuGI.net
フレームレートを上げてゲームの進行の高速化をしたいけどどうすればいいの?
setgraphmodeの第4引数に値をぶっこんでも何も起きん

53:名前は開発中のものです。
16/04/23 21:52:14.10 9QnQQ2rD.net
> 画面モードを設定する
> int SetGraphMode(int ScreenSizeX,int ScreenSizeY,int ColorBitDepth,int RefreshRate=60)
> 戻り値
> DX_CHANGESCREEN_OK 画面変更は成功した
> DX_CHANGESCREEN_RETURN 画面の変更は失敗し、元の画面モードに戻された
> DX_CHANGESCREEN_DEFAULT 画面の変更は失敗しデフォルトの画面モードに変更された
> DX_CHANGESCREEN_REFRESHNORMAL 画面の変更は成功したが、リフレッシュレートの変更は失敗した
とりあえず戻り値の確認しとけ。
あとはフレーム管理をどうやってるかによると思う。
垂直同期に丸投げしないで自前でフレーム管理してるなんてオチは……流石にないか

54:名前は開発中のものです。
16/04/23 22:17:31.43 kA71q19C.net
SetWaitVSyncFlag(FALSE)

55:名前は開発中のものです。
16/04/23 23:16:26.28 O3+kZkoe.net
 ゲームループを秒間60回さなくても高速処理できちゃうの?
 元より軽く作って、普段はウエイト入れてるだけにしないといけないんじゃないかな。

56:名前は開発中のものです。
16/04/23 23:49:59.85 9QnQQ2rD.net
>>53
何を疑問に思ったが知らんが、最初からそういう話じゃねぇの

57:名前は開発中のものです。
16/04/24 08:09:36.09 5496X3BE.net
>>52
thx。クソ速くなりました
しかしSetWaitVSyncFlagの変更はDxLib_Init前でないと利かないようです
起動中に進行速度を自由に調整したかったのですが難しそうです

58:名前は開発中のものです。
16/04/24 09:15:29.66 nXkxGb8d.net
いやだからフレーム管理方法なんて複数あるんだから
使い分ければいいじゃない

59:名前は開発中のものです。
16/04/24 09:50:30.41 joRVkrHg.net
>>55
頭はゲームの内容を考えることに使った方がいいと思います

60:53
16/04/26 22:34:03.08 x+Gf6b1S.net
>>54
 すいません、今自分で作っているモノが何をしても60フレームで安定しているものですから、逆の意味で頭を抱えていたんです。
 で、>>52氏の教えに従いVSYNCを外したら2000前後を叩きだしたので、>>51氏の最後の隠しパラメータRefreshRate=60の意味が分かりました。
 本当にありがとうございました状態ですm(_ _)m
 初挑戦で5年ばかり仕様に気が付かないとか、ちょっと笑えます(^^;

61:名前は開発中のものです。
16/05/04 00:59:12.39 vZnLncWj.net
まあ使う機会があるかどうかは全く別の話だしなー

62:名前は開発中のものです。
16/05/06 14:02:59.70 l2ANUrOw.net
今更だけど、リフレッシュレート変えるのはアカンだろw
垂直同期もオフにすんなw
根元でフレーム間の時間経過を定数倍するとか、
更新処理を複数回呼ぶとかいろいろやり方あるだろが

63:名前は開発中のものです。
16/05/06 14:26:18.62 jbS1d0cx.net
>>60
一般に、60決め打ちとかのほうが
初心者には作りやすいと思うぜ

64:名前は開発中のものです。
16/05/06 15:26:36.70 l2ANUrOw.net
>>61
そういう原始的な作りでも更新処理を複数回呼べばいいだけだし・・・
まあ入門サイトにありがちな経過フレーム数を1とする可変更新方式はゴミなんで
さっさと止めたほうがいいと思うよ

65:名前は開発中のものです。
16/05/06 19:13:13.73 jbS1d0cx.net
固定するならタイマー管理なのかねぇ
最近は120Hzとかのモニタも珍しくないし

>入門サイトにありがちな経過フレーム数を1とする可変更新方式
どんなん?

66:名前は開発中のものです。
16/05/06 21:28:30.41 Grw/W8UC.net
俺も垂直同期切ってタイマー管理だな
75ヘルツのモニターで早送りになった経験があるから

67:名前は開発中のものです。
16/05/06 22:18:18.35 l2ANUrOw.net
固定更新のために垂直同期切ってタイマー管理はありだけど
ティアリングが気になったりしない?
>>62はちょっと分かりにくかったかな
要は垂直同期をとりながら更新をカウントしてるようなタイプね
メジャーなところだと龍神録とか
この方法は環境の違いを直接受けるし、その対処も醜くなるんだよ

68:名前は開発中のものです。
16/05/07 01:18:08.48 oS0WNQLp.net
固定にするなら、リフレッシュレート制御かテアリングか
どっちかを取るしかないんじゃないの?
>カウント
龍神録ちろっと見てみたけど分からんかった
単位時間あたりのループ回数をチェックして、それ超えそうになったらウェイト入れる感じ?

69:50
16/05/08 09:38:16.57 y6rKy2Br.net
2フレームに一度スクリーンフリップをすることでゲームの進行速度が2倍になりました
ゲーム中に速度の変更がきくようになったので目的は達成し解決しました

70:名前は開発中のものです。
16/05/11 22:20:44.58 bMgn9LMw.net
URLリンク(gameprogrammingpatterns.com)

71:名前は開発中のものです。
16/06/07 01:07:55.74 hB66gw1M.net
垂直同期でやってるけど何故かFPSが59.9が多いんだよな
偶に60いくんだけど。龍神録のFPS管理は何故か57FPSになる

72:名前は開発中のものです。
16/06/07 11:13:02.03 AssHyOle.net
もともとNTSCの垂直同期って59.94Hzだけど
今のは完全に60Pなんかね

73:名前は開発中のものです。
16/06/07 20:41:15.55 wUcW1H+O.net
龍神録のところのプログラムって、垂直同期とタイマー待機を同時にやってた気がする
どっちかだけにするといいはず

74:名前は開発中のものです。
16/06/08 16:24:56.19 uqtESUHJ.net
>>70
だからか、東方だと60FPSが多いからなんでだと思ってた
>>71
龍神録のタイマー待機関数をSleepからWaitTimerにしたらいくらかマシになったけど
なぜか垂直同期を切ってFPS制御するより垂直同期とFPS制御を同時にやった方が軽くなった

75:名前は開発中のものです。
16/06/21 16:36:29.41 bN0TQeIa.net
LoadGraph等で同じ画像を複数回読み込んだときは、やはり同じ画像が複数個分メモリに展開されるのだろうか?

76:名前は開発中のものです。
16/06/21 18:42:57.95 YpRlukE1.net
うん

77:名前は開発中のものです。
16/06/21 19:13:04.10 2iYzZ5We.net
画像を改変したりして複数いるなら1回読み込んで、コピーするべき
HDD等からの読み込みは遅いから

78:名前は開発中のものです。
16/07/20 18:57:39.10 /hGHlgJA.net
垂直同期切ってもウィンドウモードだと60fpsになっちゃうんだけどこれどうにかならない?

79:名前は開発中のものです。
16/07/21 02:55:43.25 cqeRkCwh.net
垂直同期切れてないんじゃない?

80:名前は開発中のものです。
16/08/03 16:59:01.47 X+OZY+Fp.net
仮想関数の呼び出しが遅い
最初はDXlibと関係あるのかなーと思ったけどC++の仕様っぽい
みんなも気をつけろ

81:名前は開発中のものです。
16/08/04 02:17:02.01 SwoLOy80.net
自分も聞いたことあるけど、それがクリティカルになるって、
他のところがボトルネックになってたりしない?
あとは最適化オプションとかで何とかなりそうではあるが

82:名前は開発中のものです。
16/08/04 18:34:57.87 BM0zlQCD.net
関数の呼び出し速度が気になるようじゃ元々が問題だと思うんだけど
実際に通常関数を呼ぶのと速度的にはどれくらいの差なんだろう

83:名前は開発中のものです。
16/08/05 17:45:28.67 GXDTbL61.net
3Dモデルのボーンをプログラムで動かすときに、
・ボーンをワールド座標の特定の場所を向


84:くようにしたい(カメラの注視のようにボーンを一点に向けたい) ・ボーンをワールド座標の特定の角度にしたい。例えば、ボーンを水平な角度にしたい を行いたいのですが、 ボーンを動かすのは MV1SetFrameUserLocalMatrix でローカルの変換行列を指定する方法しかないですが どうやればできますか?



85:名前は開発中のものです。
16/08/07 21:54:52.11 0nKMuJM/.net
プログラムをステップ実行したときに
DXライブラリのソースにステップインするにはどうやればできますか?
Visual Studio 2013使ってます

86:名前は開発中のものです。
16/08/07 22:00:00.73 0nKMuJM/.net
ちなみにDXライブラリのソースにステップインしたい理由は
エラーコードが-1しかなくて、何が原因かわからなくて調べるためです
たまに挙動不審になったときの調査もしたいです

87:名前は開発中のものです。
16/08/07 22:44:42.94 0nKMuJM/.net
>>82は解決しました。簡単にできましたww

88:名前は開発中のものです。
16/08/08 00:03:13.72 nCWjYGMh.net
自己解決した時は、どんなに簡単であってもその方法をだな

89:名前は開発中のものです。
16/08/08 09:58:38.04 A5U2Nxs1.net
その方法も何もDXライブラリのソース公開されているからlibファイルの代わりにソースをプロジェクトに追加するだけやん

90:名前は開発中のものです。
16/08/08 10:00:13.35 z9kN9Vnb.net
pdbを置くだけでしょ
ステップインしたらその時にソースの場所聞いてくるわ

91:名前は開発中のものです。
16/08/08 10:03:39.19 YjIAwMDj.net
という風に、人によってやり方違うので
どんなに簡単でも手順は書いておいたほうが
それが質問した人の礼儀かと
レスしようとして自分とこで検証して回答しようとしたら
自己解決しましたの一言でしまってたりすること多いしねえ

92:名前は開発中のものです。
16/08/08 10:12:41.36 A5U2Nxs1.net
pdbって使い道あったのか
いつも使い道分からずに放置してたわ

93:名前は開発中のものです。
16/08/12 09:00:00.33 j8xGV0qx.net
DXライブラリは3Dモデルの大きさをセンチメートルで管理するのがいいのか?
メートルで管理してカメラの Near Clip を小さくするとアウトラインやZTestがおかしくなる

94:名前は開発中のものです。
16/08/13 05:15:02.85 smt/5o17.net
単位は人それぞれだけど、精度を下げりゃ描画が甘くなるのはそりゃ当然よ

95:名前は開発中のものです。
16/08/13 08:56:44.42 kHkMVs63.net
Zバッファのビット深度を変更する関数があったような
デフォは16bitだから32bitとかにしてみては

96:名前は開発中のものです。
16/08/13 09:38:49.80 cO1Dtflu.net
>>90
俺も以前同じようなことで悩んだわ
Near Clipは破綻しない程度に大きな値をとる必要があるとのこと
俺の場合は1メートル~数万キロのレンジで幅が広すぎて単位をどう弄ろうがZバッファの深度を深くしようがダメだったんで、
ここで教えてもらった「ワールド空間を複数の距離レンジに区切ってそれぞれを描画し最後に合成する」手法で切り抜けた
おかげでカメラが物体から5メートルまで寄ろうが1万キロ離れようがあまり問題はなくなった
ただし代償として描画処理の負荷は上がったけど・・・
>>92
SetZBufferBitDepthでZバッファの深度を変えられる
でも確か24ビットまでじゃなかったかな?

97:90
16/08/13 10:22:48.53 MTyr6UWS.net
>>91-93
レスありがとうございます
SetZBufferBitDepthは簡単なのですぐに試してみます
「ワールド空間を複数の距離レンジに区切ってそれぞれを描画し最後に合成する」手法は
ちょっと簡単にはできなさそうですが、プロのゲームっぽいですね。すごい

98:名前は開発中のものです。
16/08/13 13:32:29.62 cO1Dtflu.net
>>94
方法さえ教えてもらえればそんなややこしい実装じゃなかったよ
1. まずMakeScreen関数で合成用のサブ画面を作る
2. SetDrawScreen関数で作成したサブ画面を描画対象にしてその後カメラのパラメータを設定
3. SetCameraNearFar関数でカメラから一番遠いクリップ領域を指定
4. ワールド空間の物体を描画
5. SetDrawScreen関数で裏画面を描画対象にする
6. DrawGraph関数で合成用サブ画面に描いたグラフィックを裏画面に投下処理つきで描画
7. 2~6をクリップ領域を1つずつ手前に近づけながらforループで必要回数だけ繰り返す
8. ScreenFlip関数で裏画面と表画面を切り替える
みたいな感じ
継ぎ目がちょっと気になるという欠点があるらしいけど、俺の作ったプログラムでは大して問題にはならなかった

99:名前は開発中のものです。
16/08/13 17:10:08.44 MTyr6UWS.net
>>95
ありがとうございます。実装できる気がしてきました

100:名前は開発中のものです。
16/08/23 06:56:44.62 8oK85pQf.net
 すいません。 初歩的なことを教えて下さい。
 DXライブラリを3.12aから3.16d(最新版)に昨日上げたのですが、以下の様なエラーが出ます。
エラー 1 error LNK1104: ファイル 'DxDrawFunc_vs2012_x86_d.lib' を開くことができません。
 丁度ドライブが一杯になったのでそれでファイル欠損起こしたのかと、整理して落としなおして
再インストールしても変わりません。 消さないでいた3.12aに戻せば正常にコンパイルできます。
 どんなポカミスが考えられるでしょうか。

101:名前は開発中のものです。
16/08/23 08:00:58.44 ZkV35hFb.net
DXライブラリのフォルダの下を 'DxDrawFunc_vs2012_x86_d.lib' で検索して、
そのフォルダがプロジェクトのプロパティの「リンカー」の中の
「追加のライブラリディレクトリ」に設定されているか確認してみたか?
設定してなかったら設定する

102:97
16/08/23 10:52:44.72 8oK85pQf.net
 ありがとうございます。
 おっしゃるとおりでした。
 C/C++全般のインクルードディレクトリだけ変更してリンカ全般の追加を変更していなかったのが原因でした。
 これで総て正常終了できました。
 ありがとうございました。

103:97
16/09/16 19:48:32.55 /GVguODS.net
DrawBox()って思った以上にコスト高なのね。
エディタ作っているのですが、マウスで指定範囲を決定するのに半透明のFilling=TRUEで
サイズが{400,200}程度になると追いついて来ないし。うちの環境だと。
まあ範囲が分かれば良いだけなので、非透明のFilling=FALSEにしましたが。
機能の根幹に必要な命令じゃなくて良かった・・・。

104:名前は開発中のものです。
16/09/16 20:42:39.00 arX7j3iZ.net
ハードウェアで描画してないだけちゃうの?

105:100
16/09/17 02:14:24.29 bU3etqlH.net
>>101
SetUse3DFlag()指定しなければデフォで使ってくれないの?
TRUEで明示してみたけどやっぱ重かった。

106:名前は開発中のものです。
16/09/18 05:02:11.08 /gg7FKD1.net
画面全体塗りつぶすのに毎フレーム使ったりするし重いわけないと思うがなぁ
最新版では試してないけど

107:100
16/09/22 22:23:47.41 j/yM3Z13.net
>>103
 すいません、DXライブラリは無罪でした。
 コード読み直していたら、離れた所から12回ループでDrawBox()してからScreenFlip()しておりました。
 そりゃ感覚とは結果が違うのも当たり前で。
 大変失礼しました・・・。

108:名前は開発中のものです。
16/09/23 11:02:39.00 grmg4z9F.net
        ∧∧       
       ヽ(・ω・)/   ズコー  
      \(.\ ノ
    、ハ,,、  ̄
まぁ原因判明してよかったね

109:名前は開発中のものです。
16/09/26 22:11:34.39 gS8npJwc.net
スーファミっぽくラスタースクロールの波うつようなあのぐにゃぐにゃした表現をしたいんだけれども
DrawRectGraphで一列ずつ描画するのと
SetDrawAreaで描画できる範囲を一列ずつ変更しながら描画するのと
どっちが早いんだろう

110:名前は開発中のものです。
16/09/27 07:34:39.52 6RU/4Se1.net
どっちもクソ遅そうな気が……
ラスタースクロールのシェーダー書くのがいいが、
シェーダーはDXライブラリではちょっと敷居が高くてプログラム難しそうなのな
ボーンを仕込んだポリゴンの板に画面の画像を貼り付けて、
ボーンでラスタースクロールふうにアニメーションさせるのが楽な気がする

111:名前は開発中のものです。
16/09/27 12:29:31.97 kk2kAC73.net
10年前のPCで動くSTG(弾は500発程度)で、640*480程度なら上から一行ずつ描画でも特に処理落ちしなかった
DrawRectGraph使った
今のハードなら余裕だと思う

112:名前は開発中のものです。
16/10/04 20:15:50.94 rnDdxDqG.net
SetLoopAreaTimePosSoundMem()
この関数めっちゃ便利なんだけどググっても全くヒットしなかったんだが、いつ頃からあるんだろ?
ループ開始位置と終了位置をms単位で指定できるから音声ファイルを編集する必要がなくなった
無加工のファイルでもこっちの好みでループ範囲を指定できるから
音楽ファイルはこの素材屋からDLしてねってreadmeに書いておけば配布するファイルサイズも小さく出来る
あと軽く検証しただけだけど再生中に指定しなおしても有効だったから
FF6のラスボス戦みたいに
イントロ‐Aメロ‐繋ぎ‐Bメロ‐繋ぎ‐Cメロ~ みたいになってるファイルで
最初はAメロをループ、条件を満たしたら繋ぎを経由してBメロループに移行~みたいな演出も簡単に出来る

113:名前は開発中のものです。
16/10/04 21:56:37.68 HgclvPkb.net
そんなのあったのか
最後まで行ったら途中から再生、ってのは
結構前からあったの覚えてるんだが

114:名前は開発中のものです。
16/10/15 11:32:13.14 NMxKtSgQ.net
試してないけど
アンドロイドでも
動くように
なってたのね知らなかった
何処まで、動くのかな?

115:名前は開発中のものです。
16/10/16 19:58:12.00 ZsomXKa1.net
あらかじめ大きめのサイズの空っぽの画像をMakeScreenで用意しておくことの有用性に今頃気付いたぜ
これとDerivationGraphのコンビで作り直したらぐっと軽くなった

116:名前は開発中のものです。
16/10/16 21:02:14.27 ldA8bGPF.net
テクスチャ切り替えはコスト大きいからね

117:名前は開発中のものです。
16/10/23 23:02:40.45 t2BOiWAY.net
>>109
 使ってみたら、ほんとにスゴイですね。
 時代がCDDAやストリーミング再生になってもう無限ループは無理なのかなーとか思っていたのだけど。
 ただWAVEで成功したのでそのデータをMP3にしたら、上手く繋がらなくなっちゃった。
 もう少しデータの作り方工夫すれば上手く行くのだろうけど。

118:名前は開発中のものです。
16/10/24 06:53:24.03 YwSDnTaO.net
>>114
MP3はこの関数に限らずループの時に違和感が出ると言われてるから
たぶんMP3の仕様の問題もあると思う
ogg形式では上手くいったよ
ただ変換の時にビットレートを固定したファイルでしか検証してないから
可変ビットレートの方法で圧縮されたoggファイルで上手くいくかは未検証

119:名前は開発中のものです。
16/10/24 12:40:43.17 GmlKA2wN.net
MP3は権利の問題があるから他の使えって言われてた時期があったね

120:名前は開発中のものです。
16/10/24 13:10:36.88 Y2gOrRK8.net
権利よりも仕様が問題だな
MP3は無音が挿入されたり余計なことされる場合が多いからゲームに使うようなもんじゃない
他の環境では手抜き実装でWindowsの再生機能に丸投げできるメリットがあるが、DXライブラリなら関係ないし

121:名前は開発中のものです。
16/10/24 23:43:54.13 UrCtC7CV.net
ループできないからだったか、昔は
DXライブラリではogg使うなとかもあったね

122:名前は開発中のものです。
16/10/27 13:49:28.51 1Lorx2LL.net
昔は BGMにはmp3, 効果音にはwav だったでしょ

123:名前は開発中のものです。
16/10/27 15:57:58.01 HwaxCMEV.net
116の言う通りmp3はライセンス関係が危ないということで避けられoggが推奨されていた
仕様よりもこっちのほうが重大問題
ゲーム制作関係でmp3推奨というのは聞いたことがない

124:名前は開発中のものです。
16/10/27 17:43:02.40 rFz+rXeH.net
MP3登場時にはoggなんてなかったから
Wavよりファイルサイズの小さいMP3を推奨する風潮はあったと思うけど

125:名前は開発中のものです。
16/10/27 18:10:43.67 HwaxCMEV.net
ogg普及前はソフトウェアMIDIが多かった
もしmp3が主流だったと思う人がいたら、その人のいた界隈はライセンス関係の意識が薄かったんだよ
まぁ00年代前半まではそういう時期でもあったけど

126:名前は開発中のものです。
16/10/27 20:01:09.28 lueiMAyc.net
市販のゲームで5000本以上販売が課金の条件だったから、フリーゲームや小規模同人では普通に使われてたよ

127:名前は開発中のものです。
16/10/27 20:28:51.91 BuMiN4CL.net
制作中のゲームにはキャラの髪型や服や装備や小物を変えるキャラメイキング(着替え)の機能があって、
今はひとつのMV1ファイルにまとめておき、フレーム表示/非表示で切り替えてるのですが、
だんだんアイテムが増えてきてファイルが大きくなってしまったので
別の方法をとりたいのですが、
キャラメイキングや着替えを実装するのに何かいい方法ありませんか?
髪型や服や装備や小物ごとにXファイルでバラバラにしておいて、Xファイルをテキスト結合するのが
楽なのではないかと思っていますが、もっと良い方法ありませんか?

128:名前は開発中のものです。
16/10/31 19:03:23.01 X+KVjoNa.net
DXライブラリのユーザーが作ってるのって
2Dゲーと3Dゲーのどっちが多いんだろ?
俺は3Dには手が出せてないんだけど

129:名前は開発中のものです。
16/10/31 19:10:44.78 8dsRDt6U.net
2D

130:名前は開発中のものです。
16/11/01 22:09:07.08 kJ7Uoghc.net
3Dは海外のゲームエンジンが無料化されてしまったので、
3Dゲーム制作者はそっちへ行ってしまった気がする
2Dだとどれもあんまり変わらない気がするが

131:名前は開発中のものです。
16/11/01 22:26:25.51 +8ot24fl.net
2Dも描画しかないDXライブラリよりもオブジェクト管理出来たりするエンジンに流れている気がする

132:名前は開発中のものです。
16/11/02 07:20:39.55 /aW+4m+D.net
全部コードに直書きする形でならなんとか自分の思う通りに作れるようになったとは思うんだけど
さすがに会話イベント一個追加したり、マップに壺一個追加しただけで再コンパイルする必要がある状況って
なんというか我ながらアホだよね
この状況を卒業するには何を勉強したらいいのかアドバイスください
作ってるのは2DRPGで、主にNPCのイベント内容をコードの外に出すにはどうやればいいかで躓いてます
とりあえず思いついてるやり方は
セリフ表示とか効果音を鳴らすとかのイベント処理を担っている関数に番号振って引数の数を紐付けしておいて
イベントの内容を全部、関数の番号、引数の数、引数の数値…って数字だけのデータにして
そのデータを読み込んで、どの関数を呼び出し引数にはどんな数値を入れるかを判断して実行する関数を作り
イベントの内容を全部数値に置き換える方法なんですけど

133:名前は開発中のものです。
16/11/02 08:13:58.60 8LrVjVrS.net
>>129
自分でも気付いてる通り、基本原則はコードとリソースを分離すること。
テキストファイルの読み込み�


134:ニ解析が出来るなら 単純なシナリオファイル(会話+αくらい)のローダくらいなら比較的簡単。 まあそれ以上に複雑なことをやるなら、素直に 既存のスクリプト言語の組み込み用ライブラリを頼ったほうが良いと思うけどね。 次点としては、ソースファイルの構成を見直して、最低限のビルドでも済むようにすること。 各クラスの書き方、各ファイルの依存関係なんかを整頓することで、 ちょっと修正したくらいなら、長時間のビルドを要さなくなる。



135:名前は開発中のものです。
16/11/02 13:45:37.24 /aW+4m+D.net
大体の方向性はこんな感じでいいんだということであれば進めていきたいんですが
躊躇している理由が2つあります
基本的に作り始める時に
クラスとかポインタとかよくわかんないけどとりあえずやってみるべ!と始めたので
配列と構造体だけで設計されてて、実は今でもクラスのことはよくわかっていません
だけどキー入力を把握すことと、変数の操作と、画像と音を自分の望む形で望むタイミングに表示再生出来るなら
自分の作りたいゲームは作ることが出来るはずだ!という考えの下で強引に作り続け
変数の値に合わせて画像や音の状態を制御する関数を作って、それを毎フレームScreenFlipの前に呼び出している
なんていう作りになってしまってます
キャラクターに歩行アニメーションや特殊なポーズをとらせたりするのも
BGMを変更するのも効果音を鳴らすのも、HPMPの増減やアイテムの入手なども
picture[ kyaraDATA[kyaraid].pictureID ].pattern=8;
SEplayflag[seID]=1;    BGMID=BattleBGMID; とか
kyaraHP[kyaraid]+=1000;
itemstorage[itemid]++; とか
ほとんどこういう形でイベントを組み立ててるんですよね……
ちなみにこの変数全部グローバル変数です
この単純な変数操作を外に出のに、変数全部に番号振ってやる以外に方法が思いつかず
その数が数だけにちょっと躊躇っているのです
それに
if(itemstorage[itemid]<99){
itemstorage[itemid]++;
takarabakoOpenFlag[takaraID]=1;
}else{
JISAKU_serihu(1,"これ以上持てない",0);//最初の引数がしゃべるキャラ、最後のは吹き出しの形のタイプ指定
}
みたいに作ってるイベントの条件分岐の部分の外部への出力方法が思いつかないっていう問題点もあります
なんかこう、こんな低レベルな人間にもできる上手いやり方ありませんかね?

136:名前は開発中のものです。
16/11/02 15:10:54.49 C/+BZRXz.net
2chは行頭の半角スペースやタブは無視する

137:名前は開発中のものです。
16/11/02 15:11:48.53 C/+BZRXz.net
途中で書き込んでしまったけど、そういうわけでコード書くときは全角スペース使って見やすく書いて

138:名前は開発中のものです。
16/11/02 15:50:25.87 /aW+4m+D.net
if(itemstorage[itemid]<99){
  itemstorage[itemid]++;
  takarabakoOpenFlag[takaraID]=1;
}else{
  JISAKU_serihu(1,"これ以上持てない",0);//最初の引数がしゃべるキャラ、最後のは吹き出しの形のタイプ指定
}
複数行にまたがってる部分はここだけです
後は本当に変数に代入してるだけというか…

139:名前は開発中のものです。
16/11/02 15:53:23.25 22j5AZ4g.net
>>131
データにしやすいパターンやお約束のイベントだけをデータベース化して
特殊処理はそのままハードコートでいいんじゃねぇの
「これをデータ化したら本当に効率化されるのだろうか」と考えて
非効率になりそうだったらハードコートのまま
そんなことよりもっとプレイヤーから見て喜んでもらえることに意識を集中したほうがいい

140:名前は開発中のものです。
16/11/02 17:31:46.86 mreiywNQ.net
&#160;あ
この板Unicode参照出来なかった?

141:名前は開発中のものです。
16/11/02 17:32:02.03 mreiywNQ.net
無理か
VIPなら出来るのに

142:名前は開発中のものです。
16/11/09 13:59:08.62 DtsDG8yY.net
3Dゲームでマウスをクリックした位置にある3Dモデルをできるだけ高速に取得したいのですが、
何かいい方法はありますか?
コリジョン(衝突判定)関数がありますが、当たり判定用のメッシュを用意しないといけないようなので
ちょっと手間がかかりすぎるのでできればもっと手軽な別の方法がいいですが

143:名前は開発中のものです。
16/11/10 02:38:50.44 woNsYOXh.net
他に方法無いやろ

144:名前は開発中のものです。
16/11/22 19:00:44.40 4Lu6ZO/B.net
ちょっとウンコしてくる

145:名前は開発中のものです。
16/11/22 19:35:51.98 amdDwmR+.net
Convert Mouse Location To World Spaceでライントレースしか分からない

146:名前は開発中のものです。
16/11/22 19:38:26.07 amdDwmR+.net
>>141
ue4スレと間違った

147:名前は開発中のものです。
16/12/10 02:51:28.41 H338C5QI.net
しまった!お尻ふいてなかった

148:名前は開発中のものです。
16/12/10 21:12:58.27 ijDtE922.net
>>138
画面描画には直接利用しないテクスチャに取得対象モデルをレンダリングしておいて判定するとか

149:名前は開発中のものです。
16/12/10 21:14:24.90 ijDtE922.net
とおもったら1月前かよ

150:名前は開発中のものです。
16/12/18 01:11:06.45 w4mjhhpa.net
初歩的なことですが、
画像を描画する際の関数の仕様について迷っています
例えば、描画系の関数をできるだけ少なくして、内部変数によってDXライブラリの描画関数を呼び分けるのがいいのか、
あるいは、描画系の関数を目的別に用意して、画面側で使い分けるのがいいか
フェードインの機能の場合、
前者なら「setModeFadeInの後、drawする」
後者なら、「drawとfadeInをそもそも別関数にする」
個人的には前者が正解のような気がしているのですが、
そもそも発想自体が間違っているのでしょうか?
御存知の方いれば、ご教授頂けると嬉しいです

151:名前は開発中のものです。
16/12/18 17:01:06.63 g4K5bJ5s.net
関数の仕様と言うよりは、抽象度とか設計とかの話なのかな?
なんとなくは分かるけど誤解してるかもしれないんで
数行程度のサンプルソースを書いてくれると嬉しい

152:名前は開発中のものです。
16/12/18 17:12:32.47 GrYJvN1j.net
個人的には後者の方が好き
状態が多いとバグの原因になる

153:名前は開発中のものです。
16/12/18 18:47:26.76 w4mjhhpa.net
>> 147
たしかに、「抽象度とか設計」の質問と言った方が適切かもしれません。失礼しました
具体的にいえば、以下のイメージです
■パターン1
if (ボタンが押されたら) {
画像A.setFadeIn(引数に透過速度などの更新情報);
}
画像A.draw();(透明度の加減処理。 また透過度が100以外なら、DXライブラリのSetDrawBlendModeを使うかを判定。フェードインが終わったら、内部変数のフラグを立てる)
if (画像A.IsFadeInComplete()) {
// フェードイン終わった!
}

154:名前は開発中のものです。
16/12/18 18:48:30.96 w4mjhhpa.net
■パターン2
if (ボタンが押されたら) {
グローバル変数B = true;
}
if (グローバル変数B) {
画像A.drawFadeIn(引数に透過速度などの更新情報。毎フレーム同じ情報を渡すのが違和感);
if (画像A.IsFadeInComplete()) {
// フェードイン終わった!
}
} else {
画像A.draw();
}
最初はパターン2でやっていたのですが、これだと例えば「回転とフェードインとかが同時にできない?」と思って、パターン1に変えました
すると、今後はフェードインの更新情報を画像Aに持たせたためか、あるいは、draw関数内の条件分岐が増えたせいか、処理が重くなってしまいました
この程度で重くなるのかも疑問ですが、そもそも両パターンともNGなのではと思い始めた次第です
ゲーム系プログラミングのお約束が分かってないのが、一番の原因ですが……
>>148
ご教授ありがとうございます。
何がバグの原因になるとか全然分からないので、大変参考になりました

155:名前は開発中のものです。
16/12/18 18:53:42.88 w4mjhhpa.net
132 133 の書き込みを読むべきでした すみません……
■パターン2
if (ボタンが押されたら) {
  グローバル変数B = true;
}
if (グローバル変数B) {
  画像A.drawFadeIn(引数に透過速度などの更新情報。毎フレーム同じ情報を渡すのが違和感);
  if (画像A.IsFadeInComplete()) {
    // フェードイン終わった!
  }
} else {
  画像A.draw();
}

156:名前は開発中のものです。
16/12/18 19:39:00.88 g4K5bJ5s.net
グローバル変数を使うかどうかとか
複数の状態を同時に実行できない問題をどうするかとかは別として
自分なら2の方向かなあ

157:名前は開発中のものです。
16/12/18 20:00:49.02 oO1EoBtD.net
>>146,>>149-151
細かい点ですが、「フェードイン」とは、画像Aが透明な状態から徐々に濃く(明るく)なっていく処理をさしているのですか?
ボタンを押さないとフェードイン処理が始まらないみたいなんですが、
そもそもボタンを押してないと、画像A.draw()で何を描画してるんですか?
また画像A.IsFadeInComplete()が真になると、何が起こるんですか?
この部分は問題を説明する上で、さんぷるにふくめるひつようがあるのですか?
またなぜ151のパターン2で、わざわざグローバル変数Bをサンプルに含めているのがよくわかりません
サンプルとしては、
if (ボタンが押されたら) {
  画像A.drawFadeIn(引数に透過速度などの更新情報。毎フレーム同じ情報を渡すのが違和感);
   :
でいいんじゃないですか
仕様がいまいちイメージできません

158:名前は開発中のものです。
16/12/18 20:04:49.88 GrYJvN1j.net
あーでもグローバルじゃなくてブラシクラス作ればいいかも

159:名前は開発中のものです。
16/12/18 20:08:44.65 oO1EoBtD.net
質問の意図は
■パターン1
画像A.draw(ボタンが押されたか、引数に透過速度などの更新情報);//毎フレーム同じ情報を渡すのが違和感
■パターン2
f (ボタンが押されたら) {
  画像A.drawFadeIn(引数に透過速度などの更新情報);
} else {
  画像A.draw();
}
でどっち?
みたいな話かと思ったけど、ちがうのか・・・

160:名前は開発中のものです。
16/12/18 20:41:41.19 w4mjhhpa.net
>>153
ごめんなさい たしかにサンプルが不適切です
この場合だとフェードインではなく、フェードアウトになります
ボタン押したら、画像が消えていくみたいな
質問の意図に関しては 155で指摘されている通りです
>>155
ありがとうございます
グローバルではなく、staticなローカル変数、あるいはブラシクラスを検討してみます
ブラシクラスとなると、画像インスタンスを受け取って、内部情報を更新するという意味かな

161:名前は開発中のものです。
16/12/18 21:01:52.62 w4mjhhpa.net
思った以上に反応があって、ちょっと焦ってました
156の「>>155」は、「>>152」が正しい
154の「グローバル」の意味が把握できていないけど、たぶんグローバル変数Bのことじゃないよね
156の自分の書き込みは無茶苦茶。グローバル変数Bとブラシクラスは関係ない
とりあえず方向性は見えてきたので、ありがとうございます

162:名前は開発中のものです。
16/12/18 21:08:52.00 oO1EoBtD.net
流れがつかめませんが、解決したんですか
ちなみに>>155でいうと、自分はパターン2派。可読性が良くなると思うから。
画像A.のdrawFadeIn()とdraw()で重複するブロックが肥大化してきたら、その重複部分をinline関数に切り出してる
しかし・・・
確かに可読性が悪いとストレスの原因になるが、
可読性を確保する労力が新たなストレスと生むというジレンマ・・・

163:名前は開発中のものです。
16/12/18 22:50:19.71 w4mjhhpa.net
>>158
混乱させてしまったようで、申し訳ないです
155の意図をやっと把握しました(訂正に訂正を重ねてホンマ……)
パターン1は、どこかでフェードインの命令要求を登録した後、draw関数を呼び出します
draw関数内では、透過度の変更要求の確認、透過度の更新、および、DXライブラリ「SetDrawBlendMode」の呼び出しを行います
透過度の変更要求がない場合は、SetDrawBlendModeを使いません
なので、通常描画もフェードイン描画も一律draw関数を呼びだすことになります
パターン2は drawFadeIn とdraw を別関数にします
フェードインするときは、drawFadeInを呼び出して、引数として透過度の更新情報を渡します
結論としては、皆さん「パターン2がマシ」と仰っているので、その路線で進めようと思います
描画処理専門のブラシクラスも含めて、検討してみます
可読性に関しては、最近、可読性を確保するためのストレスに負け始めてます
重要なのは重々承知ですが、やはり面倒……
趣味なはずなのに、仕事と同様のストレスを感じる

164:名前は開発中のものです。
16/12/18 23:01:1


165:7.32 ID:oO1EoBtD.net



166:名前は開発中のものです。
16/12/19 00:31:54.60 HwJJ4Rji.net
例えば「マリオが死ぬと画面がフェードアウトして画面が切り替わる」
…という処理があるとして

■パターン1
マリオの死亡処理のところに
具体的な切替演出の設定(この場合はフェードアウト)を書くことになる。
■パターン2
マリオ死亡時にやることは
画面切替フラグを立てるだけで、死亡処理に集中することが出来る。

画面切替の演出には、画面がどんどん暗くなる「フェードアウト」だけでなく、
真っ白になったり(ホワイトアウト)、ワイプしたり色んな演出パターンが考えられる。
実際にやるかどうかは別としてね。
そうなると、画面切替処理は独立させておいたほうが取り回しが良くなるのではないか?
というのがオイラの考える2のメリットかな。

167:名前は開発中のものです。
16/12/19 16:22:26.13 9RjupL+U.net
状態に対して××モードと名前をつけて
上手くハマるならそれを使えばいいよ

168:名前は開発中のものです。
16/12/19 23:36:24.22 ABRexmh1.net
>>161
わかりやすい例え、ありがとう
まさにそういう事例を想定していたので、とても参考になります
>>162
了解です

169:名前は開発中のものです。
17/01/08 23:39:08.63 3fqQn8Jq.net
久しぶりにDXライブラリ使ってたんだけど、文字入力して変換しようとするとIMEの変換候補がゲームウィンドウの左下に表示される。
ちなみにGoogleIMEでは左下でMicrosoftIMEは右下。
昔触ったときは文字の入力した文字のすぐそばに表示されてた気がするんだけどWin10(Win8?)から仕様が変わったんだろうか。
ぐぐったらWin8でIMEウィンドウ自体が出ない不具合があってそれは解消されたようなんだが。

170:名前は開発中のものです。
17/01/13 09:20:03.69 JxeCTkK7.net
文字入力といえば自作のアクションゲームで名前入力辞めマスタ
よーく考えるとユーザー自身しかしないだろうし

171:名前は開発中のものです。
17/01/13 09:22:32.67 JxeCTkK7.net
キーのログをとってmovieみたいに再現できる機能も省略
今なら動画をとろうと思えばキャプチャソフトを使えばよいし
楽になった分、今度こそ完成に近づくと良いけど

172:106
17/01/17 15:54:13.99 aj0DNk7d.net
スレに残しておきたいと感じた情報を書いておきます
>>106で沸いた疑問を縦800ピクセルの画像で比較検証したところですが
DrawRectGraphで一列ずつ描画するのと
SetDrawAreaで描画できる範囲を一列ずつ変更しながら描画するのでは
比べるのがおこがましいくらい
DrawRectGraphで一列ずつ描画する方が
軽かったという検証結果が出ました
12倍くらいの差がありましたので、10倍以上違うのは確実だと思います
ここまで違うのならどんな環境でもDrawRectGraphの方が良いのは確実なんじゃないかと思います
ラスタースクロールをシェーダ使わずに実装するならDrawRectGraphが良いです
以上、報告終わり

173:名前は開発中のものです。
17/01/29 19:37:06.79 rdbqqXVO.net
>>167
SetDrawAreaを使うと連続描画が途切れるからね

174:名前は開発中のものです。
17/01/30 18:28:11.60 2zIjyMmQ.net
Delayフレーム後にSoundHandleを指定の音量パン周波数で再生する
SoundEffect(int SoundHandle,int VolumePal,int PanPal,int FrequencyPal,int Delay)
こんな関数を作りたいんだけど実装方法が思いつかない
SetSoundCurrentTimeでマイナスの値を設定出来たら簡単なのに

175:名前は開発中のものです。
17/02/16 01:43:45.04 vIVM03On.net
マイクから入力される音声のdBを
監視するアプリって作れますか?

176:名前は開発中のものです。
17/02/26 02:54:28.23 NkbyLrdK.net
DX11対応の環境でサンプルプログラムをコンパイルし実行したらDX11で動いていましたが
この.exeをDX11非対応の環境で実行するとDX9などで動くんですか?
手元にDX11非対応の環境が無くて試せないんですが2Dゲーを作る分には特に気にしなくても大丈夫なんでしょうか

177:名前は開発中のものです。
17/02/26 02:56:31.45 NkbyLrdK.net
sage忘れ失礼しました

178:名前は開発中のものです。
17/02/26 04:39:50.74 cv+wlHl/.net
オリジナルシェーダ使ってなければ問題ないはず

179:名前は開発中のものです。
17/02/26 11:18:23.14 SbF7UdV7.net
Android対応のDXライブラリが公開されたようだね
Unityやcocos2dと比べるとメリットがあまりないのがアレだけど
(DX11対応みたいに中途半端になりそうなところがまたね……)

180:名前は開発中のものです。
17/02/26 11:24:07.56 SbF7UdV7.net
>>171
DX11でつくるのなら
DXライブラリは、DX11の機能のテッセレーションやジオメトリシェーダー
コンピュートシェーダーなど対応していないからあまりオススメしないぞい

181:名前は開発中のものです。
17/02/26 18:26:14.24 w1YArNR6.net
android対応dxライブラリマジやがw
ちょっとスマホゲー作りたくなってきた・・・

182:名前は開発中のものです。
17/02/26 23:50:04.99 UgWHSXy5.net
ゲームエンジンで実機デバックしてたから
VS2015の実機デバックがそのまま使える
DXライブラリのプログラムも実機でみれて楽しい

183:名前は開発中のものです。
17/02/27 17:14:55.41 HzyfcOK5.net
Android対応まじだったw
前に誰かがcocos2dでやってたの使ってみたんだけど
まともに動かんかったから公式で対応してくれるのはでかい
帰ったら自作ゲームを移植してみよう

184:名前は開発中のものです。
17/02/27 19:38:03.31 yzmBThPX.net
個人開発なのにそんなに手広くやって大丈夫なんだろか。
良い人である以上に人が良すぎてサポートで死にますよ。

185:名前は開発中のものです。
17/02/27 19:49:51.98 LeUk6F53.net
OSSだしgithubで開発すれば良いのに

186:名前は開発中のものです。
17/02/27 19:50:11.47 hCixZHbE.net
dxライブラリのあり方としての謎が深まる

187:名前は開発中のものです。
17/02/28 00:19:17.26 VdUT2lLZ.net
つかVS2015がandroid対応していたことに驚き

188:名前は開発中のものです。
17/02/28 01:06:31.48 kAgsABkj.net
今MSはマルチプラットフォームに必死だからね
Win10でBash使えるようにしたりLinuxにVisual Studioのコードエディタを公開したりと
1番驚いたのはThe&#160;Linux&#160;FoundationにMSが入った事だな

189:名前は開発中のものです。
17/02/28 01:07:15.70 kAgsABkj.net
ごめんスペースだと思ってコピペしたのが文字化けしてる
The Linux Foundationね

190:名前は開発中のものです。
17/02/28 01:27:32.13 VdUT2lLZ.net
試しにやってみたけど最後の実行が出来なかったorz
もう寝る

191:名前は開発中のものです。
17/02/28 14:20:17.58 9MuOvNLS.net
Android版をタブレットのC4droidでやってみたけどライブラリの中でエラー吐くみたいだ
大量のエラー吐くからさっぱり分かんないや
"ANative_Activity_onCreate"が" android_native_app_glue.h "と衝突して多重宣言しているとかなんとかから始まってBulletやOgg周りで参照エラーが出てる

192:名前は開発中のものです。
17/03/05 18:50:00.02 WYpdMPcL.net
DrawLine関数の挙動がPCごとに違う?なんかサブのノーパソで動かすと下に1ドットずれる
両方Directxのバ


193:ージョン11以降だからそこ辛味じゃないと思うんだけど…



194:名前は開発中のものです。
17/03/11 14:58:07.56 4brvAqUP.net
もう何年も前に、
ハードウェア描画は1ドットずれたりする場合があるだの
3Dのものを画面に映す(2Dに変換する)際に誤差が生じるだの
聞いたことあるけど、流石にそれは関係ないかしらね…

195:名前は開発中のものです。
17/03/16 07:40:17.58 06c/uHW3.net
座標の扱いはビデオカードごとに違うからね
古いオンボードだと0.5pxずれたりする

196:名前は開発中のものです。
17/03/19 15:23:34.43 85gVo7Ly.net
2dで影作るときってどうすればいいんだ
アルファ乗算の値下げながらDrawLineをずらして何本も描画していくのを思いついたけど絶対糞重くなるでしょ

197:名前は開発中のものです。
17/03/19 17:46:24.06 McAdhrov.net
影の形にこだわらなければいいんでないかい

198:名前は開発中のものです。
17/03/19 17:59:49.08 iXKgNie2.net
影ってどういう影なのか分からんけど
例えばスプライトのキャラに影つけるならキャラの形の白黒画像用意してDrawModiGraphで乗算合成とかじゃね

199:名前は開発中のものです。
17/03/20 14:37:04.24 PJ3OOU/G.net
スプライト底辺に黒い楕円置くだけやろ
それでアクションやマップ作成に支障が出るなら
潔く影なんて捨てる

200:名前は開発中のものです。
17/04/09 22:25:04.02 Fu+0leN1.net
マウスの入力についての質問です
マウスのサイドボタンの検出はDXライブラリではできないのでしょうか?
調べてみても、サイドボタンがXButton1とかXButton2と呼ばれていることしか得られませんでした
こう記述すればできるとか、DXライブラリ以外の実装方法があるとかあれば教えてください
よろしくお願いします

201:名前は開発中のものです。
17/04/09 22:43:19.29 A8iwvjAh.net
GetMouseInput()じゃダメなの?

202:名前は開発中のものです。
17/04/09 22:53:28.69 Fu+0leN1.net
>>195
公式リファレンスを見ながらGetMouseInput()の引数を全部試しましたが、どれを使っても検出されませんでした
ブラウザでサイドボタンを使って戻る進むができてるので、自分のサイドボタンが壊れている可能性はないです

203:名前は開発中のものです。
17/04/09 23:58:01.43 gIO/ILx4.net
>>196
URLリンク(dxlib.o.oo7.jp)
ここ見る限り、GetMouseInputで値取れないってことは
逆にマウスのサイドボタンがキーボードのフックで対処してるタイプかもしれない。
例えば、キーボードのBackSpaceで「戻る」、Shift+BackSpaceで「進む」を表現してるとか。
URLリンク(dxlib.o.oo7.jp)
後は関数自体の使い方に問題があるかもしれないので
ここで管理人さんが掲示してる最初のソースコードを試してみるとか。
情報が古いので今も使えるかわからないけど。

204:194です
17/04/10 00:31:27.44 Yp/MHnmL.net
>>197
ふたつのURLを見て試してみましたが検出されませんでした
さらにCheckHitKeyAll()も試してみましたが、これでもサイドボタンは検出されませんでした
ふたつ目のURLのように、もしかしたら実装されていない機能なのかもしれないです
DXライブラリ製作者さんの掲示板に質問・お願いしてみることにします
>>195 >>197 さん、どうもありがとうございました

205:194です
17/04/11 01:56:20.31 upA/YOkc.net
サイドボタンの検出の件ですが、無事解決しました
自分と同じようなことで悩んでいる/いた方のために書き残しておきます
簡単に言うと、サイドボタンの検出をするにはDXライブラリをバージョンアップする必要があるようです
以下のやり取りを見ていただければ、詳しいことが得られると思います
URLリンク(dxlib.o.oo7.jp)



206:。回の質問に関わってくださった皆様、改めてありがとうございました



207:名前は開発中のものです。
17/04/12 01:50:35.12 TuryebQE.net
白地に(アンチエイリアスかかった)黒のアイコンを表示してるんですが
これの白地を別の色にすると白地前提のアンチエイリアスが汚くなってしまいます。
白地に黒アイコンのものにアルファブレンドをかけると今度は黒が薄く見えなくなってしまう。。
Dxライブラリの知識ではないかもしれませんが、これを解決する手法のヒントなどありますでしょうか?

208:名前は開発中のものです。
17/04/12 02:02:34.21 TuryebQE.net
ごめんなさい書いた直後に自己解決してしまった
やっぱりよく調べて書くべきですね・・・

209:名前は開発中のものです。
17/04/14 21:46:05.15 bZxpbzr7.net
DXライブラリに関連してるかどうかわかりませんが
わからないことを質問してみます。
ファイナルファンタジー14(以下、FF14と略)などのプロが開発したゲームを拝見するとロード時間が短いように感じます
例えばDXライブラリを使って約14,000KBぐらいのMP3ファイルをロードしてメモリに読み込むようにコードを書くと
MP3ファイルのロードが完了するまでにコンマ数秒のロード時間が発生します
ですが、FF14のタイトル画面でしばらく放置するとプロローグムービーが開始されるわけですが、
内容を見る限り明らかに容量の多いムービーファイルをロードして再生してるように見えるのですが、
実際、FF14のゲームを起動してタイトル画面に移行するまでの時間は僅かです
私からの質問は、大容量のファイルをロードする場合に
ロード時間を短く済ませるための技術です
DXライブラリでゲーム開発をしてるのでDXライブラリを使用してのお知恵を拝借したい

210:名前は開発中のものです。
17/04/14 22:21:37.18 7sRUbSV9.net
効果音ではなく曲を全部メモリにロードするのは間違ってる
ファイルサイズの大きい曲や動画は読み込みながら再生するのが基本
そうじゃないと100GBの動画とかメモリに入りきらないようなものは再生できない

211:名前は開発中のものです。
17/04/14 22:38:34.80 bZxpbzr7.net
なるほど、必ずしもメモリにロードしてから再生しなくてもいいという考え方なのか
直接HDDからファイルをメモリーにロードしながら再生(ストリーミング再生)するわけか、
俺は大容量のファイルを分割でメモリに読み込んで
1ループのロード時間を短くする方向で考えていた

212:名前は開発中のものです。
17/04/14 23:52:44.66 7sRUbSV9.net
分かりやすく例えると、oggとかmp4なんかはzipで圧縮したような形式だから
再生するために元のwavに解凍すると10倍~100倍になる
メモリにロードするってことは、この巨大化したのを入れるってことだから
効果音のような小さなものでない限りは避けるべき

213:名前は開発中のものです。
17/04/15 01:19:09.73 RtlOPePd.net
ありがとう
おかげで疑問が解消されました

214:名前は開発中のものです。
17/04/15 03:44:15.65 3FEYykSP.net
あとはシングルスレッドの場合はどうしてもロード時に固まってしまうだろうから、マルチスレッドでロードを行うようにするのはどうだろうか?

215:名前は開発中のものです。
17/04/15 04:40:43.98 RtlOPePd.net
マルチスレッドということはC++11を扱うということですね
Core i7を乗せてるのでCore UPUに対応したゲーム開発も興味はあるが
技術的に敷居が少し高いので今はまだいいかな
最新のC++コンパイラも必要になるし
ゲームのプレイヤーがCore i7 や Core i5のCPUを乗せてないと威力は発揮されない

216:名前は開発中のものです。
17/04/15 09:19:30.20 +pklgBp/.net
短い場合(メモリー上にwave展開しない)
SetCreateSoundDataType( DX_SOUNDDATATYPE_MEMPRESS );
長い場合(ストリーミング再生)
SetCreateSoundDataType( DX_SOUNDDATATYPE_FILE );
どちらか書く

217:名前は開発中のものです。
17/04/15 09:44:18.23 +pklgBp/.net
URLリンク(jgame.blog.fc2.com)
あんたこのブログの人やろ頑張りや

218:名前は開発中のものです。
17/04/15 09:52:16.21 PBMOYWDr.net
ちなみに画像や音声のマルチスレッド読み込みはDXライブラリ標準機能で
SetUseAsyncLoadFlag(TRUE)使えば簡単よ

219:名前は開発中のものです。
17/04/15 11:40:04.16 3FEYykSP.net
C++11とか使ってませんが、ロード画面作るときにマルチスレッドを使いました。
あくまでロード時に凍るのを防ぐために使用するのでCPUがどうとかは無いですよ。
process.hをインクルードしてResumeThreadさせるだけで実装できます。

220:名前は開発中のものです。
17/04/15 13:07:47.39 poy2AG7G.net
何故だろう、急に挙動が変わった。
sizeが0を返すからファイルが見付からない訳じゃないと思うのだけど。
void* readbin( char *filename)
{
int size ,rsize ,h;
char *ptr;
if ( size = FileRead_size( filename ) == -1 ) errmsg( NOTREAD ,filename );
ptr = (char*)malloc(size+1);
if ( h = FileRead_open( filename ) == 0 ) errmsg( NOTOPEN ,filename );
rsize=FileRead_read(ptr ,size ,h);
printfDx( "%s : %d/%d\n" ,filename ,size ,rsize );
FileRead_close( h);
return ptr;
}

221:名前は開発中のものです。
17/04/15 13:25:19.21 JeCVIRaX.net
> ptr = (char*)malloc(size+1);
この+1はなに?
本題とは関係ないけど

222:名前は開発中のものです。
17/04/15 14:44:24.56 qT8WsIhy.net
DXLib 知らずに覗いてるだけでどう挙動が変わったかわからんので >>213 の疑問には答えられないが、
>>214
おそらくファイルのく中身は表示などに使う文字列だという前提だと、
文字列の終端は NULL で止める必要があるのでその 1byte 分を余計に確保している。
(今どきのコンパイラは malloc での確保と同時に \0 埋めをしてくれるのかもしれないけどちょっと危ないな。)
readbin() という名前からして文字列と言っても中身はバイト列と推測できるので、
ファイルの中身には終端 NULL を入れずに記録しているんだろう。

223:213
17/04/15 15:14:07.66 YQ+vHcvV.net
+1は苦し紛れにあーだこーだいじる過程でダメ元で付加してみたのでした。
末端に不定の1バイトが付加されるので無駄な容量食いではありますが、危険という認識はありませんでした。
早急に削除します。
そして、自己解決しました。if文の連結順序を誤解していました。何故今まで動いていたんだ・・・。
if ( size = FileRead_size( filename ) == -1 ) errmsg( NOTREAD ,filename );
if ( h = FileRead_open( filename ) == 0 ) errmsg( NOTOPEN ,filename );
↑これは↓こうですね。
if ( (size = FileRead_size( filename )) == -1 ) errmsg( NOTREAD ,filename );
if ( (h = FileRead_open( filename )) == 0 ) errmsg( NOTOPEN ,filename );
お騒がせしました。

224:名前は開発中のものです。
17/04/18 20:45:54.94 bJnkmQcY.net
ホラーだ

225:名前は開発中のものです。
17/04/29 01:27:41.32 /YvMYhCO.net
DXライブラリはgifアニメーションを再生できないのでしょうか?
DXライブラリ以外ならgifアニメ再生できたりするのでしょうか?
「こう記述すればできる」など教えてください

226:名前は開発中のものです。
17/04/29 06:09:30.20 SAAy66wJ.net
gifをそのまま読み込んで表示はできなかったはず
連番画像に変換するか、もしくは動画にするかだな

227:名前は開発中のものです。
17/04/29 16:48:35.10 /YvMYhCO.net
>>219
割とむつかしい事しなきゃ動画像は表現できないんですね・・・
爆発エフェクトとか魔法エフェクトとかgifで表現したかったんですが、少し億劫になってしまいました
回答ありがとうございました

228:名前は開発中のものです。
17/04/29 17:59:31.45 xrI1QiYS.net
LoadDivGraph使えば連番画像が配列に入るから簡単やで
っていうか簡単なエフェクトなら回転拡大縮小やブレンドパラメータの変更で表現できるんじゃない?

229:名前は開発中のものです。
17/04/29 18:40:06.93 EkJNcx6r.net
>>218
一応C#版ならサンプル転がってるね
規制でurl貼れないけど検索すればすぐ見つかる
でも221が言うようにDivGraph系使った方が楽だと思う

230:名前は開発中のものです。
17/05/05 10:05:26.44 NXBeyHLp.net
なるほど初期化とかのタイミングで一旦展開するのがエンジン的には普通なのか

231:名前は開発中のものです。
17/05/05 15:40:34.37 yUv3bLae.net
最初から専用形式化アニメGifくらいにしか出力できないツールとかでもない限り、
手間は大して変わらんだろうしな

232:名前は開発中のものです。
17/05/07 15:21:12.75 If6RMgU7.net
結局誰かが何処かで一所懸命動かしてるわけだしな

233:名前は開発中のものです。
17/05/09 08:34:24.56 K1FQSBk+.net
アニメーション用の画像を一枚にまとめた後ってLoadDivGraphでもDrawRectGraphでもアニメーションにできるけど
どっちの方が軽いとかってあるのかな

234:名前は開発中のものです。
17/05/09 09:38:53.90 2FI5hhgE.net
内部的にはほぼ同じ処理だと思う
どちらも一度のドローコールでまとめて描画するから速度はほとんど変わらないはず

235:名前は開発中のものです。
17/05/10 11:42:59.61 /rFUV6kx.net
FOR-NEXT 10億回ループまとめw追加&補正その4w
DarkGDK(Core i7 4770K)..     1.7秒
DarkBASIC(Core i7 4770K).     1.8秒
JavaScript(CeleronG1820)     2.3秒
DarkGDK(CeleronG1820)..     2.3秒
DarkBASIC(CeleronG1820).    2.5秒
AGK ver1.0(CeleronG1820)..   33.0秒
H.S.P. 3.4(CeleronG1820).     126.0秒 (*1) *New!
JavaScript(PS4Slim).        130.0秒 (*2)
EZ-BASIC(PlayStation2).    227.0秒 (*3)
99BASIC(Core i7 4770K).    330.0秒
99BASIC(CeleronG1820).    463.0秒
プチコン3号(new 3DS LL).    673.0秒
プチコンmkII(new 3DS LL)  20300.0秒 (*4)
プチコンmkII(new 3DS LL)  20500.0秒 (*5)
(*1) H.S.P.、簡易インタープリター言語
(*2) CPUリソース割り当てが極端に少ないか、サブCPU担当と予想される
(*3) SCPH-90000、BASIC STUDIO パワフルゲーム工房、ループ分割
(*4) スケーリングあり、ループ回数を100分の1にして、計測結果に100を掛けたもの、ループ分割
(*5) スケーリングなし、ループ回数を100分の1にして、計測結果に100を掛けたもの、ループ分割

236:名前は開発中のものです。
17/05/10 15:05:35.39 AO63hxX7.net
最適化ですっ飛ばしてる可能性は?

237:名前は開発中のものです。
17/05/12 23:43:37.67 6uV/zlUc.net
どうやら周回遅れの嵐がまた戻ってきたようだな

238:名前は開発中のものです。
17/05/25 10:49:09.36 EtJgGmd+.net
DrawRotaGraphやDrawExtendGraphで画像を拡大するとかなりジャギジャギになってしまうんですけど拡縮のアルゴリズムを変更みたいなことはできないんでしょうかね?

239:名前は開発中のものです。
17/05/25 11:21:21.11 yyfkJ8TD.net
SetDrawMode(DX_DRAWMODE_BILINEAR)

240:名前は開発中のものです。
17/05/25 12:32:57.53 EtJgGmd+.net
>232
リファレンスで確認したらまさにそのことが書いてありますね…
ありがとうございます

241:名前は開発中のものです。
17/05/26 00:14:22.05 rlfOgZbA.net
>>232
定数がラベル化されてて覚えたくないっぽい感じでいいなw

242:名前は開発中のものです。
17/05/26 01:39:42.52 L1fgx/JI.net
ちょっと何言ってるかわかりませんね

243:名前は開発中のものです。
17/05/27 18:30:23.12 XdDfcHqh.net
初心者なんですけど、メインループ内で音声ファイルをboolフラグ使って再生すると、
音声ファイルが再生終了するまで全体の動きが止まってしまうんですけどこれどうやったら回避できますかね?

244:名前は開発中のものです。
17/05/27 18:52:38.31 XdDfcHqh.net
>>236
if (collision == true) {
PlaySoundMem(Sound_Bar_Handle, DX_PLAYTYPE_NORMAL, TRUE);
collision = false;
StopSoundMem(Sound_Bar_Handle);

}
ちなみにこんな処理です

245:名前は開発中のものです。
17/05/27 20:33:09.58 brkGgSz8.net
DX_PLAYTYPE_BACKじゃなかったっけ

246:名前は開発中のものです。
17/05/27 22:17:05.92 XdDfcHqh.net
>>238
なんとまあ・・・
ありがとうございました
リファレンスしっかり見てから質問するようにします!

247:名前は開発中のものです。
17/05/29 02:06:45.40 p1cVfpaJ.net
ヒカル TV出演「年間5億は稼ぐ勢いですね」
URLリンク(www.youtube.com)
第1回案件王ランキング!YouTuberで1番稼いでるのは誰だ!
URLリンク(www.youtube.com)
ユーチューバーの儲けのカラクリを徹底検証!
URLリンク(www.youtube.com)
【給料公開】チャンネル登録者4万人突破記念!YouTuberの月収公開!
URLリンク(www.youtube.com)
誰も言わないなら俺がYouTuberのギャラ相場を教えます
URLリンク(www.youtube.com)
YouTuberになりたいのは馬鹿じゃない!YouTuberになる方法
URLリンク(www.youtube.com)
最高月収5000万円だとさ。年収じゃなくて「月収」な
おまえらもyoutubeに動画投稿したほうがいい
やろうと思えばスマホがあればできるぞ
最低2年はやらないとここまではいかないだろうけど才能とアイデアと
企画力と継続力があればが大儲けできる可能性がなくもない
まだまだ他の職種に比べれば競争率は低いからオススメ
顔出したくないならラファエルみたいに仮面つければいい

248:名前は開発中のものです。
17/06/08 10:48:04.41 emR6NVdG.net
スマホ版にもゲームパッドの関数がある
なんだこれ

249:名前は開発中のものです。
17/06/08 21:06:56.21 dElL6uGO.net
スマホ用ゲームパッドで使うんだろ

250:名前は開発中のものです。
17/06/09 09:39:03.45 DE3YMeBF.net
UnityやUE4がある今日、DXライブラリで作るメリットってなんだろう?
自分、DXライブラリで開発したいなと思い色々と調べていたんですが、調べれば調べるほど、UnityやUEが出てきてちょっと悩み中です。

251:名前は開発中のものです。
17/06/09 14:11:39.94 k1bCPNPm.net
PCが貧弱でUnityやUEだと重い、ぐらいかな
今から勉強するならあまりメリットは無いと思う

252:名前は開発中のものです。
17/06/09 15:55:37.40 /AOIMXs3.net
>>243
Unity, UE4 は作者からコードを引き離す方向で進化しているのに対して、
DXlib はガッツリコードを見せた上で分かりやすくという方向で、ある意味教育的なもの。
一度 DXlib で組めていれば GUI ツールでも中身がどう動いているか想像付くので
コードの内容もきっちり学びたければ無駄にはならないと思う。

253:名前は開発中のものです。
17/06/09 18:21:17.93 SGYRsMDo.net
>>243
俺の場合はVBで使えるからという理由だった

254:名前は開発中のものです。
17/06/11 14:59:07.03 0zNsaXZ9.net
>>243
こういう質問する奴はどうせUnity使うんだろw
Unityの方がグラ綺麗だし、アセットストアで何でも売ってる
ふんっ! せいぜいユニティちゃん使ってろよ
ちっとも全然まっっっったくうらやましくなんかねーからw

255:名前は開発中のものです。
17/06/12 03:41:17.25 yK1l09Lv.net
SetCreateSoundDataType(DX_SOUNDDATATYPE_FILE);で音をストリーミング再生するよう設定してるのに
タスクマネージャでディスクの欄を見ていても殆ど0%から動きません
メモリ使用量は1GB→60MBになったのでちゃんとストリーミング再生にはなってると思います
ストリーミング再生はディスクに負荷がかかると思っていたんですが、最近のHDDだと特に問題無いんですか?

256:名前は開発中のものです。
17/06/12 12:43:11.91 AYi3m4Li.net
無能ほど負荷とか並列化にこだわる法則

257:名前は開発中のものです。
17/06/12 15:21:18.37 eyqFi/CQ.net
そら無能じゃなきゃこんな板来ないしこんなライブラリ使わんからな

258:名前は開発中のものです。
17/06/14 10:21:57.41 v0unCno/.net
>>242
スマホにパッドがあったのか
嬉しい気もするけど携行性を重視した端末にでかい周辺機器をつなぐって奇妙な発想だな

259:名前は開発中のものです。
17/06/14 10:43:34.66 U2C2l7BT.net
今時の開発者は青歯も知らんのか

260:名前は開発中のものです。
17/06/14 18:41:50.21 ZT9fgl64.net
パパパパパパッドでタブレットwwwwwwww

261:名前は開発中のものです。
17/06/14 21:02:14.77 zAFWgH33.net
最近だとレイフォースがパッド対応で話題になってなかったっけ

262:名前は開発中のものです。
17/06/15 22:56:09.32 LMseahLk.net
ゲーム作りどころかプログラミング初心者です。
DXライブラリを用いてのゲーム製作を考えているのですが、C++の知識はどの程度必要になりますか?
C++の学習は早々に切り上げてゲーム製作のアルゴリズムやDXライブラリの使い方等を学習したほうがいいんですかね?
ちなみに今はC言語の苦C一通り終わらせて独習C++の半分くらいまでC++の学習を進めてます。

263:名前は開発中のものです。
17/06/15 23:41:14.12 1b6ck/rE.net
わからないところが出てきたらC++の学習に戻ればいいんじゃない

264:名前は開発中のものです。
17/06/15 23:55:33.06 LMseahLk.net
>>256
ではある程度C++について学んだ後はさっさとゲーム製作の学習に入っておkってことですかね?
ゲーム製作で必要になる主なC++知識って何なんでしょうか

265:名前は開発中のものです。
17/06/16 00:24:27.54 O/SyLshJ.net
そんなものは無い
Cだけでもゲームは作れる

266:名前は開発中のものです。
17/06/16 01:33:12.34 m1zHP4Hn.net
>>258
いやいやあんまりからかわないでくだしあ…
C++のクラスなんかの知識は必要だと聞いてます

267:名前は開発中のものです。
17/06/16 01:48:42.44 cvFevhqX.net
いや要らないしそういう設計になってる

268:名前は開発中のものです。
17/06/16 08:22:53.08 brlS6E6B.net
C++ってやや低級気味な言語だしオブジェクト指向なんかガン無視でフォートランみたいなコード書いても何も問題ない

269:名前は開発中のものです。
17/06/16 08:33:02.27 SGqKL1uB.net
DXライブラリ使うならC++知らず、C言語の知識のみでも何とかなりそう

270:名前は開発中のものです。
17/06/16 09:52:41.57 Pb7QpWU4.net
そもそもCで出来なくてC++で出来ることってクラス以外に何があるんだっけ

271:名前は開発中のものです。
17/06/16 12:01:13.26 Ogq0H9i2.net
分かって使うなら C++ の方が便利機能があるのできれいなコードが書けることが多いけど
知らないで無理に C++ を使うととんでもないコードができるので、それなら素直に C で書いた方がいい。
あと C++ クラスでデータ管理していて DXLib に渡すときに無茶なキャストをかけるとかいらない操作をあれこれしそうな予感がする。
>>261 が言ってるとおりコンパイラが C++ だとしても別に C++ の機能を無理に使う必要はないし、普通に C のコードが通る。
それを踏まえた上で C と C++ を比較するなら、
ゲームでもデータの格納、その操作が頻繁に起きるから C++ でクラスが使える点は非常に大きいと思う。
メモリ管理、文字列の扱い、ファイルなどの I/O 操作はどう考えても C++ が楽。
C++ だとループ処理もイテレータを使えるのが大きい。かなりすっきりする。
本当は例外が扱えるのも大きいけど DXLib 使うならライブラリ側の戻りを見とけばいいから余り問題はないか。

272:名前は開発中のものです。
17/06/16 15:08:58.97 gDyvoaaV.net
  ●●●ケネディ大統★領は何故、死なねばなら★なかったのか?●●●
  URLリンク(jbbs.livedoor.jp)
  この掲示板(万有サロン)に優秀な書き込みをして、総額148万円の賞金をゲット★しよう!(*^^)v
  URLリンク(jbbs.livedoor.jp) →リンクが不良なら★、検索窓に入★れる!

273:名前は開発中のものです。
17/06/16 21:05:08.34 m1zHP4Hn.net
>>264
詳しい回答ありがたや…
C++の知識は正しく用いるなら便利だけど必須ではないという認識でよろしいですかね。
とりあえずC++のクラス全般について一通り学んだらDXライブラリとかゲームプログラムの勉強に入ろうと思います。
他の方も回答してくれた方ありがとうございました
また何かあったら質問するかもしれませんがその時はよろしくお願いします

274:名前は開発中のものです。
17/06/17 05:06:47.45 ANL8I6I5.net
ジェネリック・プログラミング
処理の抽象化
デザインパターン
アルゴリズムによる計算量の見積もり。
N に比例する、線形探索をしない。
ハッシュ O(1)、2分探索 O(log N)
Boost

275:名前は開発中のものです。
17/06/17 18:30:16.74 FgtAF55Q.net
>>267
役に立たないとは言わないがプログラミング技術が好きな人向けで
ゲーム作る事と乖離してる

276:名前は開発中のものです。
17/06/17 18:45:10.75 nFYpcEEx.net
計算量くらいは意識しないとまともなゲーム作れないだろ

277:名前は開発中のものです。
17/06/18 01:35:21.10 PbdM1gWB.net
ループ条件分岐さえあれば組めないプログラムなんてないんやで

278:名前は開発中のものです。
17/06/18 04:57:30.53 ml1ulS2M.net
職業プログラマじゃないんだから、まずは動くもんが作れればいいんだってば。
それで遅かったらもっと勉強していい方法見付ければいいわけで。

279:名前は開発中のものです。
17/06/18 19:05:08.47 abC7Vm3t.net
個人製作レベルの小さなゲームだとオブジェクト指向の概念自体いらないっちゃいらないとは思う
でもわかりやすく作る武器としてC++を覚えたいなら
個人的な現状の感想を書いてみると
・いる
クラスとオブジェクト指向の概念、継承、包含、コンストラクタ、getterとsetterの概念、仮想関数(抽象クラス、多態性)
・いらないんじゃね?
テンプレート、演算子のオーバーロード、標準ライブラリ(std::vectorはあってもいいかも?)、多重継承
ゲーム作る上ではこんな文法より当たり判定とか回転とかのアルゴリズムの方がよっぽど大事ってのは思う

280:名前は開発中のものです。
17/06/18 20:43:53.58 nanwc7sE.net
重要なのは何を作るか詳細な挙動やパラメータまで考えることだろ
技術的なことはいざとなったら誰かに相談すれば済む

281:名前は開発中のものです。
17/06/18 21:13:19.18 LRmtmPIY.net
ゲームなら継承は超便利

282:名前は開発中のものです。
17/06/18 21:28:36.39 j1fZdyvt.net
クラス(構造体+メンバ関数)と継承は知っといた方が得だと思う
std::vectorは超絶におすすめ
変なエラーやバグ(配列の不正アクセス)が無くなる
多態性とかテンプレートは、二作目作るとき等に勉強すると「こんな便利な方法があったのかー」と感動するし、理解しやすい

283:名前は開発中のものです。
17/06/18 22:07:10.75 xRdxAyjX.net
>>272
いる項目の半分くらいはまだ未習ですね…
当たり判定とか回転とかのアルゴリズムってどこで勉強すればいいんですかね?
定番の参考書みたいなのがあったりするんでしょうか
>>275
クラスはある程度文法学習し終わりました
std::vectorはなんのことかさっぱりです

284:名前は開発中のものです。
17/06/18 23:14:19.78 QSbBBvPO.net
当たり判定は別にいいんだけど本当に難しいのは判定後の反発、押し出し処理
いまだにメーカーごとに意見が分かれる部分

285:名前は開発中のものです。
17/06/19 00:02:59.64 p2tfhpKK.net
有名な物理エンジン使ってるゲームでも
めり込んでおかしな動きしてることあるからな

286:名前は開発中のものです。
17/06/19 11:28:36.29 pl3YSaeH.net
>>276
ゲームじゃvector一番使うべ

287:名前は開発中のものです。
17/06/19 16:14:57.42 oi8Si/s0.net
>>278
Colision detectionで一発解決
そう、unityならね(´・ω・`)

288:名前は開発中のものです。
17/06/19 17:51:36.60 gZSjLbfM.net
>>279
まじか
よくわからなくなってきたので中途半端でやめずにとりあえずC++を一通りやってからゲーム制作勉強します…

289:名前は開発中のものです。
17/06/19 19:03:22.39 p2tfhpKK.net
>>281
>>256>>271

290:名前は開発中のものです。
17/06/20 10:12:50.70 Usr/uqTE.net
いくらC++を勉強したところでDXライブラリはゲームエンジンとしての限界点が低いから
とくにグラが汚いから覚悟しておくことだ
最新の C++ 11 できっちり組んだとしても、遊ぶ人から「これレトロゲーム?」って言われる(笑)

291:名前は開発中のものです。
17/06/20 10:28:18.35 39gfrlUT.net
素のシェーダを使えばそりゃ

292:名前は開発中のものです。
17/06/20 13:23:34.57 T/7j0XdF.net
デフォのトゥーンは輪郭線が綺麗で好きだな
いくつかトゥーン作ったけど結局デフォに落ち着いた

293:名前は開発中のものです。
17/06/22 23:00:29.04 2Sd5aLez.net
javaやC#の標準ライブラリですら
rectangleクラスのintersectで簡易当たり判定は楽にできるみたいなんだよね
思想の違いだとは思うがゲームライブラリならそれくらいあってもいいとは思った

294:名前は開発中のものです。
17/06/23 00:42:29.61 IOEH1G7m.net
MFCにCRectクラスのIntersectRectがあるよ
まあしかし四角の当たり判定がないくらいで不便って言うのなら c# に乗り換えたほうがいいと思う
c++は全般的に使い勝手あまりよくないから

295:名前は開発中のものです。
17/06/23 07:01:41.36 uGgDuqlH.net
そういえば3Dの衝突判定機能はいくつかあるけど2Dは無いんだな

296:俺が遊園地だ! ◆ExGQrDul2E
17/07/08 18:53:42.86 PjfJpjf3.net
pythonで入力ゲームを作ってます。
DXライブラリの、
 VisualC# 用パッケージ
で、ゲームパットは正常に動きますか?
pygameのゲームパットが難しいので、そちらが使えたら使おうかと思いました。

297:俺が遊園地だ!
17/07/08 19:17:30.02 PjfJpjf3.net
普通に使えた。
32bitだから64bitにしたらの不安が有ったけど、心配し過ぎでした。
お騒がせしました。
どうも、です。

298:名前は開発中のものです。
17/08/01 16:41:53.80 2q48AiqK.net
リファレンスのTellMovieToGraphのサンプルを参考に
LoadGraphでaviファイル読み込んでDrawGraphで映像を描画するプログラムを試してみたら
タスクマネージャで確認したところ動画の再生中はディスク使用量が常に100%近くなってしまうのですが
これはそういうものなんでしょうか?

299:名前は開発中のものです。
17/08/04 16:38:59.69 tsG7+X9W.net
DXライブラリを使ってC++で
アドベンチャーゲームを作ろうと思っています。
今時のノベルゲームでは無く、ファミコン時代のアドベンチャーゲームです。
今まではアクションゲームやシューティングゲームを作って来まして、
アドベンチャーは初挑戦なのでちょっと不安なんです。
企画だのシナリオだのの前に、まずはシステムや
アドベンチャーゲームを構成するプログラミングから考える必要がありますよね?
しかし、現段階でそれらを考えると、完全に独学のオリジナルになり、
凄く面倒なものを完成させてしまうかもしれません。
自分としては、ひな形とまでは言いませんが、
参考にできるものや、定石を学ぶ方法を模索しております。
なにかありませんか?サイトでも書籍でも構いません、教えて下さい。

300:名前は開発中のものです。
17/08/04 21:34:34.44 nr3e4i5V.net
githubにソースコード公開して作りながら適度に聞けば?

301:名前は開発中のものです。
17/08/08 03:23:59.67 te1eWtCq.net
ノベルなら公式のサンプルページにある
URLリンク(dxlib.o.oo7.jp)

302:名前は開発中のものです。
17/08/10 05:42:09.39 iSPIllot.net
>>294
ありがとございます
ただ、自分はどっちかっていうと
考え方を知りたいんですよ
アドベンチャーゲーム制作する上での
フラグの考え方や、変数の使い方です。
考えてみると、アドベンチャーゲームって
フラグめちゃ必要じゃないですかね
例えば、調べる項目が増えていくじゃないですか、
話すで選択できる相手とかも。
そして、キャラの台詞も、
質問二回目、三回目で返答内容変えたり。
そーいうの、どう考えて組み立てていけば
いいのかなって、、

303:名前は開発中のものです。
17/08/10 16:57:59.32 EVBv0/AO.net
RPGのイベントも話しかける相手や時期、話しかけた回数とかでサブイベント分岐させたりするじゃん
アドベンチャーゲームだからって専用の特殊な考え方やフラグ管理って必要ないと思う

304:名前は開発中のものです。
17/08/13 23:06:22.13 15NIY4cP.net
定石は無く、ゲームの仕様それぞれに合わせて考えるしかない
仕様が複雑ならより汎用的でいちいち面倒くさい重厚な構造になるし、
仕様が単純なら多少ごり押ししたような方法で手早く必要条件を満たす
そう、答えなきところに答えを出すのがゲームプログラミングというものだ

305:名前は開発中のものです。
17/08/14 02:28:34.22 hzdvLGH2.net
>>296
アドベンチャーゲームプレイしたことある?
ノベルじゃ無くてさ。
各シーン(場所)で出現する項目数も決まって無いし
その項目数もある項目を通過するたび項目数が増えるし、
その項目だって、何層もあった先の項目だったりする。
それが各シーンで統一できない状態なわけで、、、、
RPGなんかのフラグと同じじゃない、そんなシンプルに出来ない。
>>297
やはりゴリ押しかあ、、、、

306:名前は開発中のものです。
17/08/14 02:55:30.92 TRJCWwIN.net
場面ごとに専用のフラグや処理を作ると考えるんじゃなくて
進行フラグや取得アイテムに応じて出す選択肢を変えると考えるんだよ
なので仕組み的にはRPGとかと同じと言える
あとはスクリプトデータのフォーマットとか作り方の問題なので
それこそノベルゲームエンジンを参考にすればいい

307:名前は開発中のものです。
17/08/14 03:35:49.62 pHE8mMZP.net
ゲームの詳細が決まってないような段階で
プログラミングを抽象化するのは無謀な上に当事者は歴戦の勇士でもないという
それならいったんごり押しからの脱構築しかあるまい
そうやって作られたサンプルは動く仕様書として人に意見を聞くにも役に立つ

308:名前は開発中のものです。
17/08/14 11:01:43.32 vcZ6Fez8.net
>>298
>RPGなんかのフラグと同じじゃない、そんなシンプルに出来ない。
アンタの作ったRPGってちょっとした分岐も無い完全一本道でつまんないレールプレイングゲームになりそうだな

309:名前は開発中のものです。
17/08/14 12:27:23.39 iCSgoKHT.net
フラグはDBにまとめれば管理手段はどれも共通にできる
sqliteあたりを一通りさわれば可能性を感じられるかと

310:名前は開発中のものです。
17/08/14 23:08:47.65 qCrUMcpY.net
フラグ・クラス(というかセーブデータ・クラス)を作って、シリアライズ・デシリアライズする方法が楽だな
C#のシリアライザーやUnityのJsonでクラスがあれば、クラスまるごと簡単にファイル保存・読込できる
フラグがいくつ増えてもセーブ・ロードのコーディングしなくていい

311:名前は開発中のものです。
17/08/16 16:04:52.17 Gx1lkBAt.net
俺が書いたプログラムを毎回ウイルス扱いして止めようとするのはやめろノートン!

312:名前は開発中のものです。
17/12/31 19:25:19.56 /rN76OKL.net
簡単にお金が稼げる方法興味ある人だけ見てください。
グーグル検索⇒『来島のモノノリウエ』
YF53OEVNGR

313:名前は開発中のものです。
18/01/19 06:28:35.93 1cW9r6Ce.net
お勧めの便利な隠し関数あったら教えて

314:名前は開発中のものです。
18/01/19 08:36:00.78 XJZDKDzA.net
GetUseDirect3D11Device
GetUseDirect3D11DeviceContext
なんでも出来るぞ

315:名前は開発中のものです。
18/01/28 17:17:24.80 7DlFUx6z.net
うーん、この!

316:名前は開発中のものです。
18/02/12 18:32:23.17 5pbWzyoz.net
いまいち何ができるのかがわからん

317:名前は開発中のものです。
18/02/17 07:23:32.90 G/oBdhuK.net
☆ 日本の、改憲を行いましょう。現在、衆議員と参議院の
両院で、改憲議員が3分の2を超えております。
『憲法改正国民投票法』、でググってみてください。国会の発議は

318:r> すでに可能です。平和は勝ち取るものです。お願い致します。☆☆



319:名前は開発中のものです。
18/02/18 07:13:02.47 08zbUSEn.net
必要な人は自分で書いてるだろうけど一応
次の更新でfps値取得関数が追加されそう
URLリンク(dxlib.o.oo7.jp)

320:名前は開発中のものです。
18/02/19 05:11:46.55 3rsXcNLy.net
fpsの表示なんて、いるかあ?
こんなしょぼい機能を追加してしまうところにDXライブラリの作者のやる気の無さを感じるわ

321:名前は開発中のものです。
18/02/19 05:22:42.68 V52YqOZR.net
iOS版作ってる最中みたいだけど
iOS程度じゃやる気無しか

322:名前は開発中のものです。
18/02/19 06:47:24.41 3rsXcNLy.net
>iOS版作ってる最中みたいだけど
そりゃすごい、こういうのを期待してるんだお

323:名前は開発中のものです。
18/02/19 07:45:09.01 3rsXcNLy.net
Unityのfps表示のアセットを見ればわかることだけど、
ひとりのユーザーがfps表示のコンポーネントを公開すればみんなでそれを使えるようにすべきなんだよ
わざわざゲームエンジンに機能を追加しなくてもね
ひとりのユーザーが便利なコンポーネントを公開すればみんなでそれを使う
ということができるようにDXライブラリはもっとコンポーネント指向にして欲しいよなぁ
そのへんがもう遅れてるし、ユーザーも増えないし、コミュニティも育たない原因の一つだね

324:名前は開発中のものです。
18/02/19 07:53:25.65 rQjda85n.net
育ったコミュニティってどんなコミュニティなんよ?

325:名前は開発中のものです。
18/02/19 08:38:06.72 3rsXcNLy.net
ゲームエンジン界隈でいちばん育ったコミュニティはUnityでしょ
アセットストアやgithubなどに新しい機能や素材がたくさんあって、
そこから新しいユーザーが増えたり、ゲームが高品質・短時間・低コストで作れたりしてる
そういう人や素材の多さを見てさらにユーザーが増えるような好循環がある

326:名前は開発中のものです。
18/02/19 12:30:43.08 pD


327:BpwFKS.net



328:名前は開発中のものです。
18/02/19 13:10:01.54 MQhG+/C3.net
設計思想が全然違うものを引き合いに出されてもな
ユーザも古いライブラリの割には居るし

329:名前は開発中のものです。
18/02/19 19:33:21.30 rQjda85n.net
DXライブラリは管理人さんがこまめに更新、デバッグしてくれてるから
公式のファイル落とすだけで充分なんだという安心感があるのが逆に良い点だと思う
ユーザー同士のそういうやり取りには
公式本体ファイルのアップデートで使えなくなるのとか
組み合わせの相性が悪いのとかが出てきてもめんどくさいし
「こんな機能が欲しいです」→「○○で出来るだろ」→「どこでDL出来ますか?」
の流れが頻繁に出るのもうざいし、時間がたって消えたファイルの再Upクレクレもうざいじゃん
ユーザーを気にかけててこまめに更新を続けてくれる作者が居るコミュニティの場合
作者の独裁体制の方がユーザーは幸せだし、新規も入りやすいよ
逆に放任のところはユーザー同士の交流が活発な方が良いけどね

330:名前は開発中のものです。
18/02/20 18:33:46.88 fA7kJSoQ.net
いいライブラリだよな。
他言語用に移植されても良さそうなもんだが。

331:名前は開発中のものです。
18/02/21 15:47:15.99 1nbj1mbE.net
素晴らしいライブラリだと思うよ。
ここまでやって欲しくてこれ以上踏み込んで欲しくないラインがわかってる。

332:名前は開発中のものです。
18/02/21 22:34:52.58 Ucw8wVy1.net
Unityと比べるとblenderと親和性が良くない
逆にMMDやメタセコは良い
日本的なんだけどやはりUnityと違って世界には広まらない

333:名前は開発中のものです。
18/02/21 22:41:25.06 H0hgJRdI.net
まあ確かに世界に広まってユーザーが増えれば
今後もずっと使えるだろうって安心感も増えるよな

334:名前は開発中のものです。
18/02/21 22:48:35.83 kkwCD6fP.net
同じとこに這い寄ったって劣化版と見られるだけだべ
オンリーワンの強みを持てばいいのよ

335:名前は開発中のものです。
18/02/22 18:17:23.65 qW9SRz4G.net
持てばいいのよね

336:名前は開発中のものです。
18/02/23 01:02:51.27 IWXaYcmi.net
2Dゲー作るのにわざわざUnityなんて面倒なだけだし
ゲームの動作も重いからなぁ

337:名前は開発中のものです。
18/02/23 09:19:16.45 kxmlS11i.net
2Dゲー作るならDXライブラリの方が向いてるよな。
無駄な裏処理が少ないし
メインループ動作の基本的な考えやFPS固定前提でのエンジンなところも。
逆にDXライブラリで本格3Dゲー作ろうとは思わないけど。

338:名前は開発中のものです。
18/02/23 11:17:32.81 liJddYNV.net
>>218
ものっそい今更なんだけど
gifはムービーファイル扱いでロードするとアニメーション再生できたはずよ
過去スレで教えてもらったことがある

339:名前は開発中のものです。
18/02/23 13:04:40.91 dJxrVb2a.net
unityなんか素材をポンポンドロップしてプレハブ化してそれを呼び出すだけよ?超簡単w

340:名前は開発中のものです。
18/02/23 19:59:21.58 A9Xfzxjc.net
簡単に作れる と 自分の思うように作れる は全く違うからね

341:名前は開発中のものです。
18/02/25 17:25:26.15 r96XISKi.net
VisualStudio Express 2017には対応しないのかな?まあ2015でも別にいいんだが

342:名前は開発中のものです。
18/02/25 19:15:17.54 NZvHdLzy.net
いつの間にかMMDのアニメーションのfpsを変えられる関数が追加されてるな
前はMMDとDXライブラリはfpsが30倍違ったからモーション合わせるのが少し面倒だった

343:名前は開発中のものです。
18/03/04 01:03:33.22 bpU4ezJp.net
面倒かしら?

344:名前は開発中のものです。
18/03/04 02:55:50.19 1zP7Vw/Z.net
DXライブラリにもアセットみたいのがあればと思ったけど
ハ�


345:Cレベルなシェーダーマップやfbxに対応してない低レベルモデルしかサポートしてないし微妙だな



346:名前は開発中のものです。
18/03/08 07:47:12.60 3JaGjMOx.net
ゲームのレベルが低いうちはDXライブラリみたいな縛りがゆるくて自由に何でもできるゲームエンジンが優勢だったけど
わりと最近の、高度化されたゲームが増えるにつれて
ほかの人がつくった高品質・高機能なアセットが使えるゲームエンジンが優勢になっちゃった感じはする

347:名前は開発中のものです。
18/03/09 23:07:11.90 a5uZ81a6.net
ガワだけちゃっちゃと取り繕えるほうが今のトレンドにあってるからねえ
DXライブラリの本分とは別世界だわさ

348:名前は開発中のものです。
18/03/10 12:50:23.57 ARpShz0t.net
DXライブラリって元々2D専用で3Dはあとから要望で付けましたみたいなイメージある
3dゲーム作成はプログラム以外も大変だし手軽でクオリティ高くつくれるほうが今時XPみたいな低スペで動く軽さよりも魅力
あと利用規約とかいろいろみると結局物理エンジン自分で実装したりボーンいじるハメになるから全く個人制作向けではない

349:名前は開発中のものです。
18/03/10 16:37:51.91 4Kwil+iN.net
DXライブラリで 3D が出来るなんてただの都市伝説ですよ

350:名前は開発中のものです。
18/03/11 14:17:03.49 IH2EL2/u.net
シェーダ書くのは構わないんだけど自作モデルのメッシュ割りが下手でシェーダが活きない
モデリングセンスの壁ってあるよな
ついでに音楽センスも終わってるから作曲もやべえ

351:名前は開発中のものです。
18/03/11 14:36:45.50 zKX5fq8W.net
作曲は知識>>>センスなので勉強しよう

352:名前は開発中のものです。
18/03/12 21:57:02.23 9AivN1FY.net
全部勉強して作ってたらゲームなんて作れない、っていうか何したいか考える時間すらなくなると思うんだが

353:名前は開発中のものです。
18/03/13 09:38:33.56 jI2E+sAp.net
そうやってやらねぇ奴はずっと何もできねぇんだ

354:名前は開発中のものです。
18/03/13 14:24:59.33 +MCBtj4v.net
コード書くのは苦ではないし数学も物理学もその辺の工学部の学生程度にはあるんだけど
イラストとか音楽とか未知の世界すぎて戸惑ってるわ

355:名前は開発中のものです。
18/03/13 15:06:04.27 WvozeIrk.net
その辺はフリー素材で作ればいいんじゃないの

356:名前は開発中のものです。
18/03/14 01:15:43.12 o001Z/SH.net
BGMを自力でこなしてるやつなんて1割もおらんよ


次ページ
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch