トップページgamedev
1001コメント354KB

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

■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものです。2013/06/30(日) 23:57:05.06ID: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/
0346名前は開発中のものです。2013/09/01(日) 23:47:21.06ID:lf+IcCCv
>>345
kazuki云々はスルー推奨します
0347名前は開発中のものです。2013/09/02(月) 01:01:28.93ID:QJgiu08R
>>344

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

ここ。
この場合は、その return で返ってきた値が 1 だったら以下を実行するって事だね。
0348名前は開発中のものです。2013/09/02(月) 16:54:24.87ID:8PlDEGpq
さすがにこれはkazukiじゃないだろ
ちょっと敏感になりすぎだな
本人が来ない限り荒れることもあんまりないとは思うけど
0349名前は開発中のものです。2013/09/02(月) 23:44:04.41ID:UU3QmRU2
それで、Zバッファによる描画を二回行うと言うのは実用的な方法なんでしょうか?
クリップ距離を変えるのも速度が気になるし
クリップを変えたらZバッファの内容が消去されたりしちゃうのか
0350名前は開発中のものです。2013/09/03(火) 00:19:40.77ID:WG2TGOYr
>>347
解決しましたありがとうございます
0351名前は開発中のものです。2013/09/03(火) 02:15:55.70ID:fGZfDzyY
Zバッファの知識も3Dプログラミングの知識もあって,なんでおみゃーらDirectX行かないの?
0352名前は開発中のものです。2013/09/03(火) 02:23:51.44ID:hziIzZtX
苦労して行く意味がないから
0353名前は開発中のものです。2013/09/03(火) 11:15:48.07ID:IUCDpmVJ
いや必要なら普通にそのまま使うけど
0354名前は開発中のものです。2013/09/03(火) 11:58:41.36ID:hziIzZtX
今DXライブラリじゃ無理でDirectXじゃなきゃ実装出来ない演出ってあるか?
0355名前は開発中のものです。2013/09/03(火) 12:07:01.91ID:IUCDpmVJ
結局Dxライブラリをフロントに持ってきても、3D処理やシェーダについてはDirectXのレイヤで実装する訳だから、
そういう意味でも、Dxライブラリだけで何でも出来る訳じゃ無いでしょ
0356名前は開発中のものです。2013/09/03(火) 13:18:10.53ID:hziIzZtX
言い方が悪かったな
DirectXを使うってのは要はDirectXのラッパを自分で書くということだから、
完成度の高いDXライブラリを使わず、自前でDirectXのラッパ用意してまでやりたいことがあるか?ってこと

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

まぁ個人的見解だから、他の人の意見も聞きたかっただけだ すまん
0357名前は開発中のものです。2013/09/03(火) 13:36:14.47ID:qxxE0Ana
3Dはオプション豊富なOgre3Dに移行した
自前ライブラリはDirectX11での実験に必要な最低限の実装
SM5.0だと長いシェーダー書けるのはいいよ
DXライブラリは過去の互換と2D用なんで結局一番使う
0358名前は開発中のものです。2013/09/03(火) 15:34:49.76ID:IUCDpmVJ
>>356
具体的にやりたい事決まると沢山あると思うけど。
例えば汎用的なパスアニメーションとか。
あるいはちょいゲームロジック寄りになるが、一枚画像に並べた地形ドット絵をテクスチャとして、
マスに並べて表示するクラスを設計する時、わざわざDxライブラリ経由でやらなくても
直接書いた方が実行時の余計な呼び出しや整理もいらないから効率いいとか。

関数だけを見るんじゃなくて、具体的なシチュエーション前提にして、その時の実行イメージ考えると、ちょいちょいあると思う。
少なくとも、Dxライブラリだけあれば他はいらないって事は無いかなと
0359名前は開発中のものです。2013/09/03(火) 15:36:12.38ID:IUCDpmVJ
>>357
Ogitarが便利だよな。bulletとも組み合わせやすいし。
… Dxライブラリと大分立場違う物だけども
0360名前は開発中のものです。2013/09/03(火) 16:19:07.79ID:hziIzZtX
>>358
効率面で言えばちょい無駄な実装になることはちょくちょくあるな
今のPC環境でその速度差が問題になることはないが
0361名前は開発中のものです。2013/09/03(火) 16:46:58.99ID:IUCDpmVJ
まぁ速度差って話だと実際内容次第なので横に置いとくんだけど、それより
元々直接ハンドリングできてどうすりゃいいかもはっきりわかってる時は、わざわざDxライブラリに合わせていらない処理書くことも無いかなって事。その効率
0362名前は開発中のものです。2013/09/03(火) 18:31:50.41ID:vy4OesbY
つーか、自分で実装した蓄積があれば
そっち使うだろ普通
0363名前は開発中のものです。2013/09/03(火) 19:38:53.31ID:D+5YHDag
これからゲーム作成を始める人たちなんだろ
0364名前は開発中のものです。2013/09/03(火) 19:41:09.72ID:hziIzZtX
なんでDirectX直叩き経験者前提なんだよ
0365名前は開発中のものです。2013/09/03(火) 19:45:19.40ID:IUCDpmVJ
どこにもそんな前提の話は無いと思うが
0366名前は開発中のものです。2013/09/03(火) 19:47:21.29ID:TiiNbJCS
直叩きできるけどもしかしてできないのって言いたいだけちゃうん?
俺も7.0時代にbitbltよりずっとはやーいとか言って叩いてたから資格は十分だな

ツクールだろうがライブラリだろうがやりたい事できてる内はなんでもいいんじゃね
0367名前は開発中のものです。2013/09/03(火) 20:06:09.25ID:D+5YHDag
前提はないな。
そしてどちらとも書いていない。

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

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

>>362 の話に関しても状況次第で、単に有名で興味があったから使ってみたかったってのと、
複数人で作業する時、たまたまDxライブラリを使う話になってたので、後から来た俺もそれに従って参加したから、
これも状況次第で使う事はあるよって話だ。
直接扱えるからって、Dxライブラリを使わないなんて事は無いよって話。
0369名前は開発中のものです。2013/09/03(火) 20:30:54.05ID:hziIzZtX
ん?逆じゃね?
>>351は、「既にDXライブラリを使っていて直叩きやってないユーザー」に対しての
「なんでDXライブラリからDirectX直打ちに乗り換えないの?」って意味だろ

そりゃ過去に使ってたなら流用する部分はあるだろう
0370名前は開発中のものです。2013/09/03(火) 20:35:55.30ID:hziIzZtX
レスしといてなんだが、ややこしくなってるのはどうでもいい部分っぽいから終わりにしとこうぜ
なんかすまんかった
0371名前は開発中のものです。2013/09/03(火) 21:30:12.27ID:vUU3Uyzc
でもDXライブラリで入門してそこそこコード書いてから
DirectXを自前で呼ぶ手順を試してみるのは
もう難しいって事はなくなってるだろうし、得る物がないとも思わないな

すぐに役立つ類の何かにはならないから、今ゲーム作りたいって状況ならやめとけと思うけど
0372名前は開発中のものです。2013/09/03(火) 21:46:08.61ID:EPT65Efm
DXライブラリにない機能を使いたくなって、どうやったら実装できるかなーと、
API調べたら、やたらややこしい説明しかなくて
たかがこれくらいのことになんでこんな記述しないといけないんだよ
と思って結局手付かずな俺。
0373名前は開発中のものです。2013/09/03(火) 23:42:30.01ID:AgKjDaEC
レガシ―なコードを見るとじんましんが止まらなくなる病に陥って以来DirectXを諦めた
0374名前は開発中のものです。2013/09/04(水) 02:33:41.29ID:V8uAb/ln
APIがわからないと、DirectXいじれないんだぜ・・・
0375名前は開発中のものです。2013/09/04(水) 09:07:52.99ID:PoFEVG9R
それはもしかしてwin32での基本的なメインループすらわからんとかそういうレベルの話か
0376名前は開発中のものです。2013/09/04(水) 10:36:55.09ID:9eCFdU3A
Winアプリの基礎くらい知っとくと便利だよ
環境設定とか作れる
0377>>3492013/09/04(水) 15:11:12.06ID:oOzyrc7U
わしの質問が流れた
0378名前は開発中のものです。2013/09/04(水) 18:35:21.10ID:XiGKlGSH
まあ元々DXlibは初心者のDirectX入門の側面も持ってる的なことを
管理人さんがどっかで言ってた気がするしな
DXlibで不自由さを感じたらDirectX直叩きってのも自然な流れじゃないの
0379名前は開発中のものです。2013/09/04(水) 23:01:10.21ID:xFCoeJ7x
DXライブラリ界の有名人(?)が、こぞって紹介してるゲームエフェクト講座が結構良いな
0380名前は開発中のものです。2013/09/04(水) 23:14:59.97ID:XiGKlGSH
>>379
なにそれ詳しく
0381名前は開発中のものです。2013/09/04(水) 23:51:09.47ID:xFCoeJ7x
大学サークルの身内用Wikiっぽいのでリンクを貼るかどうか少し躊躇ったが、そこは気にしないことにする。

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

今のところ2Dゲーム用の模様。技術的に難しいことを言ってるわけではない。
公開関数+αくらいで出来るシンプルな内容なんだけど、凄くよくまとまってる。
0382名前は開発中のものです。2013/09/05(木) 00:07:07.42ID:59ih9t5v
くっそ身内っぽい雰囲気で聞いてちょっと罪悪感があるんだが
これをDXライブラリ界の有名人が紹介してるの?
DXライブラリ界の有名人ってのがどんな人を指すかよく知らんが
0383名前は開発中のものです。2013/09/05(木) 00:11:13.63ID:AoZFkRqA
有名人ってわけでもない
ただ作品にDXライブラリ使ってるってだけ
同人STGやる人なら作品知ってるかもくらいの人
0384名前は開発中のものです。2013/09/05(木) 00:41:15.23ID:hBmpTHcx
何で貼るだけ貼って出所隠すの?
有名人どころか今年の東京ゲームショーに出展する超新星同人ゲームサークルのプログラマだよ

http://twitter.com/hart_edsf/status/375248375513231361
http://www.indiegame-fest.com/
0385名前は開発中のものです。2013/09/05(木) 00:54:25.79ID:dv6vewus
>>384
隠す意図は無かったんだけど、スマンカッタ。
こういうとき、どこまで貼ればいいか難しいね。
0386名前は開発中のものです。2013/09/05(木) 02:46:42.48ID:1kKDr+Kj
バックで動画再生させながらプレイする横スクロールのアクション作ってんだけど、
PlayMovieToGraph 使って DrawGraph系で動かしたらかなりカクカクになっちゃった
何で再生するのがベスト?
0387名前は開発中のものです。2013/09/05(木) 02:51:43.87ID:AoZFkRqA
ゲーム画面で動画を再生したいならそれ以外の方法はないだろ
動画自体を軽くするしか方法はない
0388名前は開発中のものです。2013/09/05(木) 02:58:25.17ID:1kKDr+Kj
>>387
だよなぁ、ビットレート下げて様子みるわ。サンクス
0389名前は開発中のものです。2013/09/05(木) 03:32:39.50ID:1hDQc12B
バックで動画再生なんてやれるのかw
知らんかったわ。
LDゲームが作れるなw
0390名前は開発中のものです。2013/09/05(木) 16:03:31.78ID:FhkmhNsp
そりゃまぁ・・・ツクールじゃないしw
0391名前は開発中のものです。2013/09/05(木) 16:26:37.51ID:bU+8tFoJ
>>389
タイムギャルお願いしますw
0392名前は開発中のものです。2013/09/07(土) 13:30:51.24ID:FDYu5pLB
2Dエフェクト作成より3Dエフェクトの作り方が知りたい
どこにもサンプルないしどうやって作るかもまず見つからないし…
0393名前は開発中のものです。2013/09/07(土) 14:45:38.35ID:ZlVgxMBF
2Dエフェクトの座標を3Dにするだけじゃね?
0394名前は開発中のものです。2013/09/07(土) 15:37:36.36ID:htv4gya2
サンプルとか書きようが無い。何故って、基本的にそれまで自分が書いてる処理の応用編だから。つまり、

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

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

ちなみにピクセルシェーダでのエフェクト計算(例えばブラーやソラリとか)みたいにポイントポイントで見れば
書籍もサイトもあるよ。
で、それらと自分の処理を組み合わせて考えてアウトプットになるって事。
0395名前は開発中のものです。2013/09/07(土) 15:45:48.23ID:htv4gya2
てか応用編の世界なので、何も知らない人に言葉で説明しようとするとやたら長い話になってしまうが、

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

シェーダでのピクセルエフェクト(UとVの二軸の世界でのエフェクト)については、
よくOpenGLの世界で記事やソース書いてる人いるので
それをDirectX(HLSL)の世界に応用したらいいと思う。基本的な理屈は同じだから。
0396名前は開発中のものです。2013/09/07(土) 18:12:31.43ID:d9gbAoy/
>>392
ゲームエフェクトの本やら資料やら探したら、むしろ3D中心で出てくる印象なんだけどなあ
0397名前は開発中のものです。2013/09/07(土) 23:57:28.78ID:+vlGUbQx
エフェクトって言ってもいろいろあるしねえ
具体的に○○みたいなエフェクトのやり方がわからないとかならまだしも
"3D"のエフェクトがわからないってのはそもそも3D処理がわかってないんじゃね
0398名前は開発中のものです。2013/09/08(日) 01:48:23.76ID:kVPN97ld
C言語やC++はOSにそこまで依存してないよね?
なのにDXライブラリは完全Windows専用なの?
0399名前は開発中のものです。2013/09/08(日) 02:10:18.84ID:pEGzS2EK
「なのに」って意味が分からん
DXライブラリはWindowsのDirectXをC/C++から簡単に使うための物だから
Windows専用にならない理由がないだろ

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

しかし俺はSDLは使う気にならないな
自分が興味がないMacやLinuxのユーザーサポートまで要求されるのも迷惑だから
0400名前は開発中のものです。2013/09/08(日) 02:53:24.55ID:W1OuVwxQ
クロスプラットフォームしたいんならunityでも使っとけ
0401名前は開発中のものです。2013/09/08(日) 09:47:25.57ID:KLzYDzFE
>>398
グラフィックスAPIのDirectXがWindows専用だからな
MacとかLinuxもサポートするならOpenGLになる

WindowsとLinuxでAPIを使い分けるならOgre3DかUnity
OpenGLで両方まかなうならSDLやQtという選択肢になる
0402名前は開発中のものです。2013/09/08(日) 18:55:16.43ID:LAHZLQTL
3Dエフェクトってキャラクターや地形と違ってアニメーションするじゃん
勿論キャラクターはポージングこそするものの
ポリゴンの頂点数が変わり続けたりテクスチャのマッピングが移動したりするエフェクトをどうやって流れるように描画させるのか
という疑問が
0403名前は開発中のものです。2013/09/08(日) 19:57:53.44ID:FwvXMDor
>>402
DXライブラリでは頂点バッファをいじれないみたいだから、
頂点数の増減は小さいオブジェクトを繰り返し描画で変化、
または高解像用と低解像用を用意しておくとか。
テクスチャスクロールはシェーダーを自作すれば簡単
0404名前は開発中のものです。2013/09/08(日) 23:12:47.36ID:mUJYpIY3
>>402
頂点数の増減て見たままそのままの実装する必要あるか?
内部的に常に必要な最大頂点数持っておいて、VertexShaderで不要なタイミングにおいては表示外に追いやったり隣り合った頂点と整列させておいたり、
あるいはアルファで非表示状態にしたりすればいいんじゃないの?
0405名前は開発中のものです。2013/09/08(日) 23:41:45.22ID:ifdr6uiA
理論なら誰でも考えつくからソースで具体例を出せってことでしょ
0406名前は開発中のものです。2013/09/09(月) 00:52:34.08ID:G0Y/JpfZ
一般的には理論もしくは発想が難しいのであって
それをコードに落とし込むのは誰でもできる底辺の仕事なんですが…
0407名前は開発中のものです。2013/09/09(月) 00:53:09.91ID:/U6TdIo4
>>402
そもそも3Dエフェクトで拡大・縮小以外の変形をするエフェクトってあんまりみたこと無いんだが
しっかり骨組みまで見たことあるゲームが携帯機程度の低スペな奴しか見たこと無いからかもしれんが
アニメーション付きのビルボードの組み合わせとかが今でも大部分を占めてるように思う
3Dエフェクト使う時でも拡大・縮小にテクスチャのアニメーションでごまかすとか環境マップ使ってるやつぐらいしかパッと思い浮かばない
0408名前は開発中のものです。2013/09/09(月) 01:14:18.67ID:QfE1BbtL
誰でも考え付くならエフェクトで頂点増減とか言わないと思う
話ももっと具体的なはず
0409名前は開発中のものです。2013/09/09(月) 01:17:22.36ID:CepS0XFh
どう実装するの?って奴は勉強不足なだけだからググれってことだな
0410名前は開発中のものです。2013/09/09(月) 01:17:45.87ID:QfE1BbtL
>>407
レンダーターゲットに対してPixelShaderでポストエフェクトとか、
メッシュ表示の際にも同様にアルファや色の変更とか色々出てくると思う
0411名前は開発中のものです。2013/09/09(月) 01:30:37.78ID:/U6TdIo4
>>410
それはどっちもピクセルシェーダを弄るようなエフェクトの一例だよね
そこは3Dエフェクトだろうがビルボードだろうがあまり大きな変化はないと思うんだけど
拡大・縮小以外の変形みたいな頂点そのものを増減したり、不規則に変化させるようなことを必要とするエフェクトの例とかってある?
0412名前は開発中のものです。2013/09/09(月) 02:23:49.57ID:o9OOchYv
コードに落とすのは簡単(キリッとか言っちゃって結局出ないコード
いつもの流れだ

簡単なら一般的な方法でいいんでテッセレーションやってみせろよ
0413名前は開発中のものです。2013/09/09(月) 02:40:36.70ID:/U6TdIo4
なんでそんなにコードを出すことにこだわるんだ
ちょっと前のマリオのジャンプで粘着してた乞食じゃあるまいし
それにどんなエフェクト作るかの話もしてなくて3Dエフェクト全般の話しかしてないのになんでコードが出てくるんだよ
あと>>405とか誰もソースの話なんか出てないだろ
0414名前は開発中のものです。2013/09/09(月) 02:52:58.18ID:G0Y/JpfZ
金も払わず「サンプルよこせ」「そこまでいうならやって見せろ」
この質問者様が質問して下さっているっていう発想からして完全にkazukiだろ
0415名前は開発中のものです。2013/09/09(月) 03:02:03.26ID:/U6TdIo4
いや今回のこれはkazukiじゃないと思う
初っ端から煽りに来ることはあんまりないと思うしあいつ今職業訓練に必死みたいだし
0416名前は開発中のものです。2013/09/09(月) 03:13:33.64ID:CepS0XFh
すっかり痛い子の代名詞になっちゃったなkazuki
0417名前は開発中のものです。2013/09/09(月) 03:17:21.92ID:/U6TdIo4
まあいい反面教師にはなるかもしれない
あいつはスレの全員から嫌われてるから本人降臨しない限りスレも荒れないしな
あと本人はテッセレーションなんて分からないと思うぞ
座標を自分の感覚で適当に決めて直打ちしちゃう奴だし
0418名前は開発中のものです。2013/09/10(火) 02:30:01.06ID://nCPrx/
kazukiが誰をさしてるのか未だにわからないけど
0419名前は開発中のものです。2013/09/10(火) 05:57:31.03ID:fLtKfWgb
kazukiとは、過去にポナルポやタクトと名乗って恥ずかしいことをやらかしてきた男のゲ製でのHN
ブログ消して逃亡する癖があるからリアルタイムで遭遇したことないとわからんだろうな
ヲチスレがあったんだが埋まってから立ってないようだ
ズブの素人なのに絵師やプログラマになりきって講座サイトを作りたがるアスペの自演魔とでも言えばいいか

スレチだが
0420名前は開発中のものです。2013/09/10(火) 09:18:59.67ID:9Qs7WFMi
自愛性みたいなやつだろ?
あいつはすぐわかる
0421名前は開発中のものです。2013/09/10(火) 09:31:48.84ID://nCPrx/
頂点数の増減って結局vistaじゃないと出来ないらしいけど
剣の振った軌跡エフェクトとかは頂点を直接操作してるの?
ボーンとかいれて
0422名前は開発中のものです。2013/09/10(火) 10:28:45.28ID:1N7dl6m4
軌跡の表現って、例えば帯状に流れて消えてくような物の事なら、実際その時による。
頂点数3*2*8個のポリを帯状に並べた物を固定で持っておいて、cpu側からは座標xyz+アルファの減衰用値1つをセットとにしてfloat4で8セット渡して
vertexshaderで計算した。
座標は起点から数フレーム毎に直前の座標を一つ後ろにコピーするようにして、
減衰値も直前の値の1/8を引いた物を順次セットしてく流れ。

他の方法だと、単に板ポリに描いた形をその時の軌跡に沿った位置と角度に変えながら変形とか。そんなかんじ
0423名前は開発中のものです。2013/09/10(火) 10:29:51.57ID:1N7dl6m4
あ、>>422 は俺が実際に考えてやった方法。
別にこうするもんだ、って話じゃない。
0424名前は開発中のものです。2013/09/10(火) 13:23:33.80ID://nCPrx/
ガンツってオンラインゲームの剣の軌跡が特徴的だった気がする
0425名前は開発中のものです。2013/09/10(火) 15:35:01.90ID:VwJiEoYm
ずっと標準関数のfopen_sとかfread_s使ってたんだけど
DXlibの使えば非同期読み込みできたんだな
これって非同期書き込みって出来ないの?
0426名前は開発中のものです。2013/09/10(火) 15:52:46.41ID:gIhnnlB1
>>421
毎年この時期に発売してるゲームグラフィックスって本は結構参考になったりならなかったりするけど面白いから読むべし
2009年版によるとナルティメットは頂点にボーンを入れて引っ張り出してる
>>422のはトレイルポリゴンというらしい
0427名前は開発中のものです。2013/09/10(火) 18:23:10.98ID:1N7dl6m4
>>426
名前ついてたのかwwありがとう
0428名前は開発中のものです。2013/09/12(木) 07:30:32.01ID:aJt0MyQP
いつの間にか3.11にバージョンが上がっとる
ちらほらとWindows8向けの修正が入ってるようだ
0429名前は開発中のものです。2013/09/13(金) 10:47:00.12ID:VRcMxm/5
>>422
参考になった
見た感じ無双は前者っぽいな
0430名前は開発中のものです。2013/09/13(金) 21:57:15.39ID:fqMMV2ZF
前スレ辺りで
3DのRPGとかでよくキャラの足元の地面の種類によって足音や土煙を変えてる方法
ってのに
ポリゴンモデルのテクスチャによって判定してる
って答えがあったけど
今のDXlibでこれ実現する方法ってある?
指定ポリゴンに使われているテクスチャを得るような関数は無いし
その為に自分で既存の関数使って実装しようにも大まかな方向性すらちょっと分からない
0431名前は開発中のものです。2013/09/13(金) 22:02:40.77ID:V6fOnFO4
テクスチャの実物じゃなくて論理マップを別に持っておくだけじゃないの?
0432名前は開発中のものです。2013/09/13(金) 22:26:09.11ID: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として分けるとか属性用のテクスチャを用意するとか
0433名前は開発中のものです。2013/09/13(金) 22:27:47.79ID:mrOA/UVs
普通に>>922の方法が現実的だと思うよ
必要なメモリは今のPCの性能に比べたら大したことないんで
わざわざバッドノウハウみたいな方法を使って制約を増やす必要性がないという
0434名前は開発中のものです。2013/09/13(金) 22:50:46.62ID:V6fOnFO4
この >>922 みたいな方法がいわゆる論理マップの持ち方だよな
ドラクエみたいに格子状に並べるマップもそうだし、配置するオブジェクトが無規則自由配置でも同じこと
0435名前は開発中のものです。2013/09/13(金) 23:48:26.06ID:fqMMV2ZF
なるほど
>>922の方法が良かったのか
しかしこれって
下から床、空間、床2、空間
みたいな位置関係のときは難しくないかな
>>432もわざわざ引用してくれてありがとう
0436名前は開発中のものです。2013/09/14(土) 00:26:05.17ID:/6ff2SkL
>>435
平面の格子じゃなく立体の格子を作ればそれも別に難しくないだろう
0437名前は開発中のものです。2013/09/14(土) 00:31:06.20ID:p0lDHWdr
>>435
>下から床、空間、床2、空間

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

より単純な方法
単純に床の高さ違いの部屋ならば、高さで単純に切替え出来ます。
0438名前は開発中のものです。2013/09/14(土) 00:45:52.46ID:kQXZslGf
やっぱ次元増やすしかないか
それでもメモリなんて今どきならあんまり気にしなくてもいいのだろうか
格子の目をどれだけ細かくするかによるんだろうけど

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

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

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

というか、そんなふうに作ってから悩むべきことを何もできてない段階でゴチャゴチャ考えると
何もできない愚図になってしまうよ
0440名前は開発中のものです。2013/09/14(土) 01:39:47.66ID:kQXZslGf
いや3次元空間を自由に飛び回るタイプなんで俺の場合は他の2軸と等価なんだわ
正直作り方の下手さをスペックで補ってる感があるんで
今回の件以外の部分でかなり演算量とかメモリ使ってるからちょっと聞いてみたかった
だいぶ出来上がってきたんでそろそろエフェクトについても本腰入れて頑張ってみようかと思って昔の話題を引っ張り出してきたんだ
0441名前は開発中のものです。2013/09/14(土) 01:44:37.73ID:F13ppTHh
お前ら3Dの話がさらっとできて羨ましいな。
俺は2Dがやっとだっつーに。
0442名前は開発中のものです。2013/09/14(土) 02:18:36.24ID:qldeAamL
今どき数値データで専有するメモリなんて大したことないだろ
実際にどのくらいのバイト数になるのか計算して言ってるのか?
0443名前は開発中のものです。2013/09/14(土) 02:30:33.15ID:76PA/33Z
何も出来てないし、作ることもないのに心配だけしてるんだと思うよ
試算すれば今のPCで問題になるわけないのわかることだし

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

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

こんなこと言うわけない
ちょいと実験用のステージ作ってテストすればわかることだもんよ
0444名前は開発中のものです。2013/09/14(土) 03:13:27.71ID:qldeAamL
いや作る必要すらないよ
必要な変数の見積もり出すだけでおk
0445名前は開発中のものです。2013/09/14(土) 08:21:22.07ID:TW6+8u9G
そもそも着地してる面のシェーダーの種類によって足音を変えられたりはしないの?
dxlibだと簡単にやってくれるんだろうけど、保存されてるシェーダー名とか分かるんだろ?
だったらゲームの中で統一した名前持って・・・

って文字列の比較はご法度?
■ このスレッドは過去ログ倉庫に格納されています