DXライブラリ 総合スレッド その18
■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものです。
2014/05/07(水) 19:44:28.30ID:qr2Z08k5「DXライブラリ」に関するスレッドです。
DXライブラリに関するテクニックなどの情報交換などを行う事で、
多くのDXライブラリユーザのスキルの向上に役立てたら幸いです。
【公式】
http://homepage2.nifty.com/natupaji/DxLib/
【関連スレ】
C/C++ゲーム製作総合スレッド Part5
http://toro.2ch.net/test/read.cgi/gamedev/1389798031/
ゲームプログラムなら俺に聞け30
http://toro.2ch.net/test/read.cgi/tech/1388933972/
●DXライブラリではなくDirectXの質問ならこっちへ
【C++】DirectX初心者質問スレ【C】(プログラム技術板)
http://toro.2ch.net/test/read.cgi/tech/1370015791/
0245名前は開発中のものです。
2014/10/26(日) 13:36:06.83ID:E8C6pwr6.NETならC++/CLIでC++コードも使えるだろ
0246名前は開発中のものです。
2014/10/27(月) 08:45:34.43ID:J9FucjU6日本語の情報が非常に多い
初心者にはこれが何よりもありがたい
3Dの機能不足を感じるなら有料の高性能エンジンを買えば幸せになれると思う
0247名前は開発中のものです。
2014/10/28(火) 00:45:48.18ID:tOPrjBzt最新の機能よりも安定性がDXライブラリのウリだろ
0248名前は開発中のものです。
2014/10/28(火) 08:39:30.81ID:1D2a+NsY0249名前は開発中のものです。
2014/10/28(火) 09:38:08.25ID:v4eSh4Dp移動量と角度は分かっているんですが、これを移動ベクトルに変換するにはどういう処理を使えばいいんでしょうか?
0250名前は開発中のものです。
2014/10/28(火) 12:03:11.30ID:Jl8AFQ0Zx = cos( 角度(ラジアン) ) * 移動量
y = sin( 角度(ラジアン) ) * 移動量
0251名前は開発中のものです。
2014/10/28(火) 12:19:28.28ID:v4eSh4Dpありがとうございます
どうもググっても単位が分からなかったので…
0252名前は開発中のものです。
2014/10/28(火) 12:33:18.70ID:JevQPy40DXライブラリ関係なくね?
>>248
細かなバグが沢山あるよな。更新続いているのはプロジェクトが死んでいない証拠でもあるが。
それに、圧縮ファイルでしかソースを配布していないけど未だにバージョン管理してないのか。そのせいか知らんが、前にソース覗いた時はコメントアウトだらけで汚いと思った。
http://homepage2.nifty.com/natupaji/DxLib/dxlog.html
0253名前は開発中のものです。
2014/10/28(火) 12:53:01.50ID:tOPrjBzt0254名前は開発中のものです。
2014/10/28(火) 14:15:21.42ID:UI0YxfS60255名前は開発中のものです。
2014/10/28(火) 16:25:03.05ID:tOPrjBzt0256名前は開発中のものです。
2014/10/29(水) 19:27:43.30ID:nDYTAhVmアフィン変換で出て来て先人すげーって思った
あと出来るだけ調べてから作り始めようと思った
0257名前は開発中のものです。
2014/10/29(水) 21:03:37.57ID:BrTgdHMR0258名前は開発中のものです。
2014/10/31(金) 08:04:47.84ID:U80h+ZEpでっかい球体つくって、内側にテクスチャー張って
全体をとりかこんでるの?
0259名前は開発中のものです。
2014/10/31(金) 08:13:01.97ID:Bzg+c0BX0260名前は開発中のものです。
2014/10/31(金) 09:45:22.27ID:TM0lS7ojかといって雲テクスチャーをダイレクトに浮かせるとPS1ゲーみたいになるよね
ここら辺はシェーダーでなんとかすんのかな
0261名前は開発中のものです。
2014/10/31(金) 09:58:35.37ID:cxsthFeMスカイボックスで問題ないと思うけども・・・
あと視点が変わるから歪んで見えるのであって
常にカメラ位置から同じ相対位置に描画してれば
歪んでいるなんて認識されないと思う
0262名前は開発中のものです。
2014/10/31(金) 10:05:02.57ID:mzxP3CyX0263名前は開発中のものです。
2014/10/31(金) 12:26:40.01ID:U80h+ZEpあとは自分の動きに合わせて球体を移動させればいいんですね?
0264名前は開発中のものです。
2014/11/03(月) 22:24:05.93ID:R8zjXQsoすげえなあ山田マジック
0265名前は開発中のものです。
2014/11/05(水) 08:42:42.49ID:nnRJQYVa0266名前は開発中のものです。
2014/11/05(水) 13:33:26.05ID:Yql3FJ2Vつーか最後に描画してるから大きく見えるだけでヘルメットの大きさでいいんだぞ
0267名前は開発中のものです。
2014/11/06(木) 15:31:45.42ID:dj9eUtyQDXライブラリ置き場 使い方説明
(ttp://homepage2.nifty.com/natupaji/DxLib/use/dxuse_vc2013express.html)
のページの、
4.DXライブラリを使用するためのプロジェクトの設定を行う
にある
@ VisualStudio Express 2013 for Windows Desktop のメニューの
『プロジェクト』→『(プロジェクト名) のプロパティ』を選んで、
プロジェクトのプロパティダイアログを開きます。
((プロジェクト名)の部分は、今回は『test』になっている筈です)
A 次にダイアログの左上にある『構成(C)』と
書かれている項目を『アクティブ(Debug)』から『すべての構成』に変更します。
B 次にダイアログの左側のリストから『構成プロパティ』→『全般』を選びます。
このAでダイアログ左上にある構成(C)と書かれている項目が、
「アクティブ(Debug)」ではなくN/Aとなっていて変更ができないのですが、
何が原因なのでしょうか?
0268名前は開発中のものです。
2014/11/06(木) 16:18:05.54ID:dj9eUtyQ単にAとBの順番がひっくり返って書かれているだけなんですね
0269名前は開発中のものです。
2014/11/07(金) 18:52:58.79ID:g1w6i/cs0270名前は開発中のものです。
2014/11/07(金) 20:45:22.16ID:BtR0AX8u0271名前は開発中のものです。
2014/11/08(土) 21:17:09.54ID:B7FcDtZn0272名前は開発中のものです。
2014/11/08(土) 21:50:15.02ID:XDedz5Oa0273名前は開発中のものです。
2014/11/09(日) 00:26:50.85ID:FvDZcuWU0274名前は開発中のものです。
2014/11/10(月) 08:16:51.11ID:7xch10Mv0275名前は開発中のものです。
2014/11/15(土) 13:43:22.14ID:QyrToPll情報も豊富そうですから。
0276名前は開発中のものです。
2014/11/15(土) 14:37:37.63ID:qPQor38n0277名前は開発中のものです。
2014/11/15(土) 17:52:05.19ID:Szmnm54J0278名前は開発中のものです。
2014/11/15(土) 22:01:41.09ID:Cvi6GQeLというのは冗談として
DXライブラリはあくまで補助ツールであって、
そもそもC及びC++でゲームを作る難易度はかなり高いぞ 気をつけろよー
(っても、最近はソース公開してる人も多いけど)
0279名前は開発中のものです。
2014/11/15(土) 22:04:50.87ID:qPQor38nゲームの中身は全部自力必須や
0280名前は開発中のものです。
2014/11/16(日) 06:58:35.57ID:F31UOIODそれであれだけのゲームが作れるのかよw
俺のようなヘボプログラマには想像つかねぇ。
0281名前は開発中のものです。
2014/11/16(日) 11:14:12.94ID:WhBIy5gG既に存在するフレームワークの劣化コピー的なものを作るのに時間を費やすほど勿体無いことは無い
0282名前は開発中のものです。
2014/11/16(日) 14:14:25.29ID:o+xgbtyV0283名前は開発中のものです。
2014/11/16(日) 14:52:18.76ID:/4XwqfmW貼ってあったソースを改造したら妙な場所でバグが起きて、
しかもどう解決したらいいか分らないなんてあり得そうだから困る
所々スパゲッティと化した、失笑物のソースになったりもな
0284名前は開発中のものです。
2014/11/16(日) 14:54:06.48ID:b/SuP3c4みんながみんなアクションゲーム作りたいわけでもあるめぇ
0285名前は開発中のものです。
2014/11/16(日) 16:47:35.03ID:riq5DBfLそれ以外のゲームは海外に関心のあるゲーマーくらいしか知らない
0286名前は開発中のものです。
2014/11/16(日) 21:38:46.75ID:A6TdveEm0287名前は開発中のものです。
2014/11/16(日) 23:05:17.68ID:xwc2Bt1d0288名前は開発中のものです。
2014/11/16(日) 23:32:39.24ID:/4XwqfmW◯RPGやSLG(SIM)はマジで作るのが大変
いまやフル3D前提のレースゲームよりはある意味楽だけど、
それでも膨大な量のテキストとそれによって生じるバグの山、
複雑を極めるAIアルゴリズムの構築で死ねる
0289名前は開発中のものです。
2014/11/16(日) 23:53:18.57ID:L4G+kYwI0290名前は開発中のものです。
2014/11/17(月) 00:19:08.33ID:HOrI1iu2普通にDxライブラリ使わずにVCのみでやってたら
全く出来ないから助かってる
0291名前は開発中のものです。
2014/11/17(月) 07:13:59.13ID:lzdr7K+FWOLFRPGエディターやZG-Editorみたいなゲーム製作ツールを作れるようになるには
何をどうすればいいんでしょうか、何年くらいかかりますか?
やっぱり頑張って金貯めて依頼した方が早い?
0292名前は開発中のものです。
2014/11/17(月) 10:58:43.23ID:Ed6Bv+FJ0293名前は開発中のものです。
2014/11/17(月) 13:27:04.40ID:OuGMhHIcそれは褒めちぎり過ぎ
てか全然カバーする範囲が違う
0294名前は開発中のものです。
2014/11/17(月) 13:27:52.04ID:lzdr7K+F0295名前は開発中のものです。
2014/11/17(月) 14:32:05.41ID:6crS65ta0296名前は開発中のものです。
2014/11/17(月) 16:23:08.54ID:lzdr7K+F例えば4フレーム後にはここ、8フレーム後にはここ、みたいになってくるとどうすればいいのかさっぱり
座標とか角度とか指定する引数?っていうの?を保存しておく変数も必要ではないか→
それだと画像100枚、それぞれ1〜100フレーム後の座標だけでも2万の変数が必要だと?→
それだけでもこれだけの数になるのに角度や不透明度や縦横の拡大率とかあるし
5秒後までの動きをあらかじめ指定したいなら300フレーム分必要だし
一体いくつの変数が画像を表示するためだけに必要なのさ!?って感じで
どんな風にすりゃいいのかさっぱりわかんないんです
0297名前は開発中のものです。
2014/11/17(月) 17:48:55.95ID:/ugCaUBU外部のアニメーションファイルを読み込む場面だったり、アクションゲームの特殊な演出だとか、ユニークな場面だけだ
大抵「この座標まで1秒かけて移動してくれればいいや」とか「0.5秒で現在位置から左に3キャラ分移動させたい」とか、
現在座標と目標座標さえ分かってれば中間は補完出来るものばかりなはず
0298名前は開発中のものです。
2014/11/17(月) 18:26:39.29ID:lzdr7K+F0299名前は開発中のものです。
2014/11/17(月) 23:02:39.36ID:6Dp5C5AF0300名前は開発中のものです。
2014/11/17(月) 23:07:06.94ID:6Dp5C5AF整数型変数(4バイト)が100個あろうが200個あろうが誤差にすらならん
0301名前は開発中のものです。
2014/11/17(月) 23:40:41.41ID:tcmApZkJ0302名前は開発中のものです。
2014/11/18(火) 03:56:33.29ID:we07jERYわざと画像表示を遅延させるのかと思ったが違うよな。
0303名前は開発中のものです。
2014/11/18(火) 06:55:22.35ID:Thfd/91q0305名前は開発中のものです。
2014/11/18(火) 15:13:25.46ID:RVN7G/wK記録ポイントはフレーム主点で考えずに、移動ポイント主点で取れ
(フレーム値、X、Y)のリストでだ
リストの次のデータを参照したら
次のフレーム値までのフレーム数で座標の差を割って、毎フレームごとの座標値を増減させてやれ
実際に毎フレーム描画しなくても、だ
内部で毎フレーム座標計算さえしとけば
いきなり描画処理来ても、描きたい座標がわかるだろ
キャラが止まってようが、動いてようが座標計算処理はいつも同じだ
止まってる時と動いてる時で変える必要は全くない
0306名前は開発中のものです。
2014/11/18(火) 17:40:19.55ID:LlUF7uNH0307名前は開発中のものです。
2014/11/18(火) 20:48:01.41ID:7bbEzXMVユニークの使い方間違ってない?
0308名前は開発中のものです。
2014/11/19(水) 13:41:18.14ID:OOOAIV6R唯一とか個性的なとか、そういう意味じゃないの?
間違ってるとは思えないけど
0309名前は開発中のものです。
2014/11/19(水) 14:26:58.95ID:XOzf+VjY一般人のユニーク→個性的な
0310名前は開発中のものです。
2014/11/19(水) 16:11:06.14ID:id7T2TDI今、矩形による当たり判定を勉強しているんだけど
http://d.hatena.ne.jp/ono36/20070718/p1
理解は出来たよ。
ただ、このやり方で通用するのはシューティング等に使える
「自分と相手が当たった」というアバウトな判定だけの話だよね?
マリオがクリボーを踏みつけたり、
忍者くんでいうところの自分が踏みつけられたら気絶する、とか
実装したいときには、その矩形の上側から当たったかどうか、相手の上側に当たったかどうか
わからないとダメだよね?
その処理はどうすればいいのか、バカだからわからないんだ。
教えてください
0311名前は開発中のものです。
2014/11/19(水) 16:16:50.12ID:XOzf+VjYマリオの位置、敵の位置、そして加速度の方向(上で登っている状態か下へ降りている状態か)
それは置いといて、そういう処理がしたいなら上側と下側の判定を別に作ればいいじゃん
一つのオブジェクトに判定はひとつじゃなくてもいいんだぜ
0312名前は開発中のものです。
2014/11/19(水) 16:32:01.24ID:Xo18fFSF過去フレームの位置か差分の移動ベクトルはなにかと使うので動くキャラに持たせると便利
0313名前は開発中のものです。
2014/11/19(水) 16:36:41.40ID:MSY6gmXEオブジェクトは単一の判定のみで構成されているという概念は捨てた方がいい 単一の方が作るの楽だけど
まあ、マリオの場合はちょっと特殊な判定になってそうだけど
地上で足元すくわれたら死亡なのに、空中で足元当てたら撃破って単純そうでそうでもなさそう
もしかして、撃破判定が足元から伸びて地中にめり込んでる?
0314名前は開発中のものです。
2014/11/19(水) 16:37:15.69ID:id7T2TDI>マリオの位置、敵の位置、そして加速度の方向(上で登っている状態か下へ降りている状態か)
うん、それも考えたんだ。
でも、それだとプレイヤーがジャンプ中、つまり斜め移動中に
敵もジャンプしていたら、ややこしいことにならないかなあって。
ジャンプ移動中同士でぶつかったらお互いが弾き飛ばされるって処理をしたい場合、
横ジャンプ中だと降下中もX軸の移動量もあるから
「降りてる状態」だけの情報だけじゃ、判断出来ないと思うんだけど
違うかな????
あと、
>一つのオブジェクトに判定はひとつじゃなくてもいいんだぜ
これは、どんな感じになりますか?
疑似言語で構いませんので、ざっと流れを書いてみてほすい、、、、、
0315名前は開発中のものです。
2014/11/19(水) 16:41:40.24ID:id7T2TDIあ、それ、いい!
相手のぶつかる前の座標位置と
ぶつかったときの自分の座標位置を比較すれば
相手が自分に対してどこにいたか判断出来るってことだよね?
マジでそれで解決しそうだけど、、、、ほんと?????
それで進めてみるけど、ほんとにいける??
0316名前は開発中のものです。
2014/11/19(水) 16:52:45.83ID:XOzf+VjYマリオだとジャンプ上り中に横からぶつかった場合でも、マリオの足が敵の頭に触れてたら踏んだ判定になる
>ジャンプ移動中同士でぶつかったらお互いが弾き飛ばされるって処理をしたい
マリオにはそういう処理ないけどそういうこともしたいのか?
まずはやりたいことを洗い出して、それからじっくり何が必要か考える作業が必要じゃないかね
0317名前は開発中のものです。
2014/11/19(水) 16:54:05.38ID:id7T2TDIいや、やりたいことは
矩形当たり判定で、相手のどの面に当たったかを認識できるようにする、なんだ。
マリオの話は、例えとして出したゲーム。
0318名前は開発中のものです。
2014/11/19(水) 17:08:37.82ID:XOzf+VjYそれなら、重なった座標から位置を割り出すことが必要だね
まったく別の処理が必要だぞ
>>310の概念図と合わせて見れ
http://www.dotup.org/uploda/www.dotup.org9930.jpg
0319名前は開発中のものです。
2014/11/19(水) 17:10:08.59ID:id7T2TDIえ、四点必要なの??
お互いの矩形の左上の座標だけじゃダメ?
0320名前は開発中のものです。
2014/11/19(水) 17:10:34.05ID:XOzf+VjY0321名前は開発中のものです。
2014/11/19(水) 17:13:40.11ID:XOzf+VjY左上の座標+物体のXサイズYサイズの情報があればそれで4点あるのと同じだろ(原点、原点+x、原点+y、原点+x+y)
その数値を使って重なった位置を求めるだけ
余計なおせっかいだが、マリオみたいなゲームなら地上側の下座標を原点として考えるのをおすすめする
0322名前は開発中のものです。
2014/11/19(水) 17:21:35.64ID:id7T2TDI>左上の座標+物体のXサイズYサイズの情報があればそれで4点あるのと同じだろ(原点、原点+x、原点+y、原点+x+y)
あ、そうだった。ごめんごめん
>>320
>あとはごまかしの技術
これも気になる、、というか>>312の方法はあんまりお薦めしないってこと??
ID:XOzf+VjYは別のお薦め方法があるよってわけではない?
別に無いなら、>>310の概念図とあなたのくれた画像と>>312の内容で
進めてみようと思うんだけども。
0323名前は開発中のものです。
2014/11/19(水) 17:29:56.75ID:gyoeuLjK踏み付けとか体当たりというのは下や横への攻撃だから、
相手のどの面に当たったかじゃなくて、攻撃判定を特定方向に出すと考える。
自分も敵もキャラサイズより小さめのダメージ判定を持たせる。
ジャンプ下降中や体当たり中は、自分のダメージ判定をはみ出す形で、
足の位置や体側面に攻撃判定を作る。
0324名前は開発中のものです。
2014/11/19(水) 17:32:33.82ID:XOzf+VjY>>322
>>312のはあたったオブジェクトが動いてた方向がわかるだけで、あたった面を判定する処理とは別だよ
斜めに動く物体があると高確率で誤判定する
ほぼ縦に動いてる物体同士が真横同士でぶつかった場合でも、>>312の方法だと縦に衝突したと判定される
俺の解説した方法で判定しきれない高速物体との衝突の時、補助として使うといい
ごまかしが必要というのは初心者向けの判定方法だから。厳密にやるとお前のレベルだと対応しきれない複雑な処理になる
0325名前は開発中のものです。
2014/11/19(水) 17:39:25.95ID:JSiE6qgd0326名前は開発中のものです。
2014/11/19(水) 18:24:56.94ID:MSY6gmXEジャンプアクションならアクション特化のエディターで作った方がいいと思う
俺はどうあってもC++でゲーム制作技術を習得するんだ!とか、
既存のエディターではどうしても再現できない独創的な仕様がある!ってんでもない限りはね…
0327名前は開発中のものです。
2014/11/19(水) 19:42:21.22ID:HWXJ3kGs個人的には、今だにこういうライブラリ使ってる人って実行ファイル全て手作りしたいというか、開発工程も楽しみたい人だと思うんだよね
「俺の考えた最高の神ゲー」の方向にベクトルが向いてない作業はやりたくないというかなんというか
エディタの学習コストだってバカには出来ないし、エディタが想定していること以上の事は出来ないしわけだし
0328名前は開発中のものです。
2014/11/19(水) 20:14:48.98ID:id7T2TDI今は、C++でがんばりたい。
ただ、>>324
>>>312のはあたったオブジェクトが動いてた方向がわかるだけで、
>あたった面を判定する処理とは別だよ 、斜めに動く物体があると高確率で誤判定する
が気になってね。
俺のやろうとしてることはそんなに面倒なことなんだ?と。
キャラは16×16のサイズで作るんだが、1フレームの移動量もしれてる。
斜め同士で誤判定するかな?
最初にあたる場所って、必ず四面のうちのどこか一面じゃない?
0329名前は開発中のものです。
2014/11/19(水) 20:55:19.20ID:KxOI4VQJ角度範囲を区分けすりゃいいだけだろ
0330名前は開発中のものです。
2014/11/20(木) 02:40:41.39ID:dgv+wN41もっとハッキリいうと「正しい方法じゃない」
移動量が少しなら尚の事>>318で済ませるべき
面倒だとか言ってるが、ゲーム制作においてこの程度全然面倒なレベルじゃないぞ
普通にゲーム作ってりゃ、1ループは数千行以上になるからな
0331名前は開発中のものです。
2014/11/20(木) 08:41:44.89ID:Gr8PtlsJ0332名前は開発中のものです。
2014/11/20(木) 19:36:33.97ID:jtv/JIIc\敵 上 下
自\
上 跳 潰
下 死 跳
とかやったら良いんじゃね?
0333名前は開発中のものです。
2014/11/21(金) 22:49:14.07ID:oKQ7MpPk敵の原点より自機が上なら「踏み}、同じか下なら「ヤラレ」
くらいの判定でいいんじゃないのかな
0334名前は開発中のものです。
2014/11/22(土) 22:45:34.33ID:TZzsMwSR0335名前は開発中のものです。
2014/11/26(水) 23:22:57.28ID:vqx+/SFmロケットのコックピットから進行方向前方を見た視点を実装したくなったんだけど、
1メートルくらいの至近距離から数万キロの彼方まで描画範囲に含めるのはやっぱり無理?
ワールド座標系の単位をメートルとみなして1メートル〜10万キロまでの範囲を描画範囲にする
(SetCameraNearFarで手前クリップ距離を1、奥クリップ距離を10万×1000にする)と
Zバッファの精度が足りなくなって表示が破綻するし、そうかといって単位を1000キロとみなして
手前クリップ距離を100万分の1、奥クリップ距離を100くらいに設定すると今度は手前クリップ距離が
小さすぎてまたまた表示がおかしくなってしまう
超至近距離から超遠距離までの表示を破綻なく行わせるうまいやり方があれば教えてください
0336名前は開発中のものです。
2014/11/27(木) 03:01:51.80ID:Np08bBNv0337名前は開発中のものです。
2014/11/27(木) 07:13:48.90ID:2oW2fxZGレスサンクス
それって最初はロケットの近くだけを描画するようクリップ距離を設定して
その後遠くの天体だけを描画するようにクリップ距離を変更するってこと?
なにぶんDXライブラリに慣れてないので概念とどういう関数を使えばいいのかだけでも
教えてもらえるとありがたいです・・・
0338名前は開発中のものです。
2014/11/27(木) 14:33:04.80ID:Np08bBNv0339名前は開発中のものです。
2014/11/27(木) 18:34:12.41ID:VrpQfK3j表示するだけならある程度以降はガワだけにした方がいいというのはある
重いではすまないとんでもない世界がそこにはある…
なおテキトーな尺を設定して数万キロと言い張る事もできる模様
0340名前は開発中のものです。
2014/11/27(木) 20:48:52.28ID:1uknuqUu0341名前は開発中のものです。
2014/11/27(木) 21:14:59.42ID:LdUu5KPz0342名前は開発中のものです。
2014/11/28(金) 00:27:03.41ID:aWbQ15xyうーん・・・やっぱり厳しいのかな
MakeScreen関数についてはちょっと調べてみます
0343名前は開発中のものです。
2014/11/28(金) 04:18:58.91ID:N4kdgPkO1m〜10万km以内の全てのオブジェクト全部表示ははっきり言って現実的ではないね
自分の近場のオブジェクトだけ表示して、後は背景でごまかしちゃうのが一番いい
物にもよるけど実際に表示したとしても多分見えないし…
これはかなりよく使う手だよ
0344名前は開発中のものです。
2014/11/28(金) 11:03:42.37ID:wmQxOI0f労力と計算コストに対して、あんまり目立った変化なさそう
■ このスレッドは過去ログ倉庫に格納されています