- 1 名前:デフォルトの名無しさん mailto:sage [2009/06/22(月) 22:06:29 ]
- ※回答する人も、質問する人も必ず読んでください
これらに当てはまる人のための質問スレです。 1.C/C++は多少理解している。 2.最近DirectXを始めたばかり 3.SDKを見ても、Googleで検索しても、いまいち理解できない人 4.余計な雑談は不要ですよ 【 回答してくださる方 】 ・ できるだけ優しく質問に答えてあげてください。 ・ 優しく教えるのが嫌でしたら、解決するためのヒントだけでも結構です。 「ググれ」「SDK見れ」以外の回答でおながいします。 ・ 神ですら理解不能な質問は無視して下さい。 【 質問する方 】 ・ どんな事で躓いているのか明確にしよう。 ・ 長くならないなら躓いている部分のコードを晒してみれ。 ・ 解決した場合、お礼を言うのは当然だが、何をどうしたら解決したかを明確に書こう。 ・ 回答して貰ったら、出来るだけお礼もしよう。 【C++】 DirectX初心者質問スレ Part23 【C】 pc12.2ch.net/test/read.cgi/tech/1242977486/
- 779 名前:デフォルトの名無しさん mailto:sage [2009/08/11(火) 13:22:57 ]
- たぶんカレントディレクトリが変更されている
- 780 名前:デフォルトの名無しさん [2009/08/11(火) 13:27:29 ]
- >>779
カレントディレクトリで検索してみたら 確かにGetOpenFileNameが成功するとディレクトリが変わってしまうそうですね。 恐らくこれが原因だと思います、ありがとうございました!
- 781 名前:デフォルトの名無しさん mailto:sage [2009/08/11(火) 13:28:02 ]
- 現行のやつをカレントディレクトリに依存しないようにするのがいいけど、
とりあえず OFN_NOCHANGEDIR で試してみそ
- 782 名前:デフォルトの名無しさん [2009/08/11(火) 13:40:30 ]
- >>781
ちゃんと動くようになりました! ありがとうございます、昨日ここで1日詰まってたんで助かりました^^; 普段からフルパスで書いてるほうがいいんですかね・・・? ほとんどの場合カレントディレクトリ前提でソース書いてましたが…
- 783 名前:デフォルトの名無しさん mailto:sage [2009/08/11(火) 13:46:14 ]
- >>782
別にいい悪いはないが、相対アクセスをするときには常にカレントディレクトリがどこかを把握しておく必要がある。
- 784 名前:デフォルトの名無しさん [2009/08/11(火) 13:49:25 ]
- なるほど、たしかに相対する時はカレントディレクトリだとやりにくそうですね…
ありがとうございます、すごく参考になりました。
- 785 名前:デフォルトの名無しさん mailto:sage [2009/08/11(火) 14:04:09 ]
- >>784
老婆心ながら蛇足を描くと、 ゲームのようなデータファイルの多いソフトを開発する際は、相対アクセスの方が便利かもしれない。 VisualStudioのデバッグ時に作業ディレクトリを指定できるのでそこでカレントディレクトリを設定しておくと、 必要に応じて複数の動作環境を用意できる。 サンプルゲームが複数になってきたらそれで切り替えられる。
- 786 名前:デフォルトの名無しさん mailto:sage [2009/08/11(火) 14:44:23 ]
- Xファイルを別フォルダに入れて読み込んでも問題ないのに
テクスチャをXファイルと一緒に入れるとテクスチャだけ読み込まないのはなぜですか? 一応Xファイル内にはA.BMPのように書いて同じところにあるファイルを読むようにしているんですが・・・
- 787 名前:デフォルトの名無しさん mailto:sage [2009/08/11(火) 15:04:19 ]
- X-File内の画像のパスを画像ファイルのあるパスに設定しろ。
X-Fileを読み込むときに勝手にカレントディレクトリを移動してくれる訳じゃないぞ。
- 788 名前:デフォルトの名無しさん mailto:sage [2009/08/11(火) 15:09:49 ]
- やっぱりそれしかないですか・・・
わかりました
- 789 名前:デフォルトの名無しさん mailto:sage [2009/08/11(火) 18:01:10 ]
- やっぱりパス関連の面倒を見てくれるローダは、さっさと自分で作るべきだよな
- 790 名前:デフォルトの名無しさん mailto:sage [2009/08/11(火) 18:04:54 ]
- >>775
ようするにその角が丸みを帯びてるのか鋭いままなのかは計算では設定出来ないと言いたいのか?
- 791 名前:デフォルトの名無しさん mailto:sage [2009/08/11(火) 18:11:54 ]
- その通り
- 792 名前:デフォルトの名無しさん mailto:sage [2009/08/11(火) 19:19:55 ]
- どうでもいいが、頂点法線のスムージングの話で「鈍角」「鋭角」という用語を使うやつは初めて見た
- 793 名前:デフォルトの名無しさん mailto:sage [2009/08/11(火) 19:52:30 ]
- 「どうでもいい」のにレスする意味が分からない
- 794 名前:641 mailto:sage [2009/08/11(火) 19:59:15 ]
- なんにしろ、読み返してみれば鈍角さんがなんのことを言っているのかを
解明するだけの流れだったな。
- 795 名前:デフォルトの名無しさん mailto:sage [2009/08/11(火) 21:08:11 ]
- >>792
鈍角は90度を超える角で、鋭角は90度未満の角だよな、 小学校かどっかで習う範囲だと。
- 796 名前:デフォルトの名無しさん mailto:sage [2009/08/11(火) 22:46:42 ]
- だから誰もそんなことは問題にしてないんだって
- 797 名前:デフォルトの名無しさん mailto:sage [2009/08/11(火) 22:53:36 ]
- スムージングを使わずに単にポリゴン数を増やせばいいだけじゃん
- 798 名前:デフォルトの名無しさん mailto:sage [2009/08/11(火) 22:55:37 ]
- 本当にそれでいいと思うのならそうすればいい。
- 799 名前:デフォルトの名無しさん mailto:sage [2009/08/12(水) 00:42:40 ]
- 必要になったら実装すればいいだけで、大抵は平均化だけで十分。
というかデザイナとの相談だな。
- 800 名前:デフォルトの名無しさん mailto:sage [2009/08/12(水) 00:54:41 ]
- D3DXLoadMeshHierarchyFromX(
の LPD3DXFRAME* ppFrameHeirarchy, LPD3DXANIMATIONCONTROLLER* ppAnimController この部分をXファイルじゃなくて計算で組み立てたいんだが どっかに解説したサイトとかサンプルとかありませんかね? この単語で検索すれば出てくるとかヒントでも
- 801 名前:デフォルトの名無しさん mailto:sage [2009/08/12(水) 00:56:39 ]
- 平均化だけで十分って、立方体とかが悲しいことになるぞ。
相談も何も普通に法線を含めればいいだけの話だろ。
- 802 名前:デフォルトの名無しさん mailto:sage [2009/08/12(水) 00:59:11 ]
- >>800
自分でモデリングソフトのアニメーション部分を作るつもりなのか? というかそれ以前にプログラム云々以前で、 アニメーションを作る工程をやったことがあるのか?
- 803 名前:デフォルトの名無しさん mailto:sage [2009/08/12(水) 01:02:34 ]
- >>802
モデリングソフトのようなものを作ってまして
- 804 名前:デフォルトの名無しさん mailto:sage [2009/08/12(水) 01:10:48 ]
- またお前か
- 805 名前:デフォルトの名無しさん mailto:sage [2009/08/12(水) 02:07:36 ]
- DirectXのプログラミングはすぐに次のバージョンに移れるものですか?
最近DIrectXを始めたばかり、というか 9 か 10 を勉強するかで悩んでいます。 現在使用しているPCがWindowsXPで10が扱えまないので9にしようと考えていたのですが、 今後新しいOSが普及して10以降が主流になったりすると置いてかれるような気がしまして。 そのPCも大分ガタが来たので10が対応しているPCに買い替えることも考えています。 今は10対応といえばvistaくらいでしょうが・・・
- 806 名前:デフォルトの名無しさん mailto:sage [2009/08/12(水) 05:09:57 ]
- FromX使わない方が勉強になるね
頂点情報をバイナリ化したりとか色々出来るようになるし
- 807 名前:デフォルトの名無しさん mailto:sage [2009/08/12(水) 05:15:28 ]
- >>805
10はシェーダ必須だから敷居が高め。 まず9をFVF使用で書けるようになってから、9のシェーダ、10のシェーダと行くのが比較的平坦な道のりだと思う。 多分言ってる意味分かんないと思うけど要するに9のチュートリアルから始めていいんじゃないかなということだ。
- 808 名前:デフォルトの名無しさん mailto:sage [2009/08/12(水) 08:52:28 ]
- Easy Link Libraryの他にdirectx用のライブラリってありますか?
- 809 名前:デフォルトの名無しさん mailto:sage [2009/08/12(水) 08:56:42 ]
- たくさんある。
- 810 名前:デフォルトの名無しさん mailto:sage [2009/08/12(水) 09:07:07 ]
- 9でやった方が楽。
10は抽象化されていて、慣れてないと途方に暮れる。 10を改造して11にするのは難しくはなさそう。 製品を売るなら9。 趣味のライブラリなら、9&10共用。将来は10を捨てて9&11でもいい。
- 811 名前:デフォルトの名無しさん mailto:sage [2009/08/12(水) 09:30:14 ]
- 将来を見据えるなら11オンリーだろw
Windows7が出てしばらくすればさすがにXPはかなり数が減るし その頃にはDirectX9世代のビデオカードなんて淘汰されてるよ。 現状でさえ3世代前の代物なんだから。
- 812 名前:デフォルトの名無しさん mailto:sage [2009/08/12(水) 09:40:05 ]
- 11は今日からプログラムに取り掛かれない
- 813 名前:デフォルトの名無しさん mailto:sage [2009/08/12(水) 11:20:14 ]
- >>811
>Windows7が出てしばらくすればさすがにXPはかなり数が減るし そうかな?
- 814 名前:デフォルトの名無しさん mailto:sage [2009/08/12(水) 11:24:58 ]
- 自分が必要だと思う環境でプログラムを組めばいい。
他人に対してどうこう言う問題じゃない。 この分野の人間は自分がやっていることを他人に押しつけたがる者が少なからずいるが、 それは誰のためにもならない。
- 815 名前:デフォルトの名無しさん mailto:sage [2009/08/12(水) 11:32:41 ]
- DirectX9
・情報が豊富 ・今からでもプログラム可能 ・ゲーム作って配布するとしても、流石にDirect9対応必須をうたっていいと思う DirectX10 ・情報そこそこ ・Vistaなら今からでもプログラム可能 ・ゲームなどを売るにはつらい(XPユーザーが多いから) DirectX11 ・情報少ない ・将来的に主流になりそう ・今からプログラムするのは困難 とりあえず9で勉強して、おいおい必要に応じてうつればいいかと
- 816 名前:805 mailto:sage [2009/08/12(水) 11:54:56 ]
- レスありがとうございます。今は9で勉強しておくことにします。
- 817 名前:デフォルトの名無しさん [2009/08/12(水) 11:59:13 ]
- おまいらってやたら詳しいけど、趣味なの?本職なの?
- 818 名前:デフォルトの名無しさん mailto:sage [2009/08/12(水) 12:51:59 ]
- うるせえ黙れ
- 819 名前:デフォルトの名無しさん mailto:sage [2009/08/12(水) 18:29:21 ]
- こんなマッチョじゃ感情移入できない
アドルは永遠の優しい夢見る少年だろう どうみても童貞じゃないし
- 820 名前:デフォルトの名無しさん mailto:sage [2009/08/12(水) 21:33:17 ]
- >>813
いずれにしろDirectX10やDirectX11対応のゲームが増えてくれば Vistaか7のどちらかにするしかないがVistaは選択肢にはいらないだろ。 どうせ2,3年もすればXPも売られなくなるし 新規でPC買えば全部Windows7化されてるだろ。 いつまでもDirectX9+XPにしがみ付いて技術的に取り残されるのも馬鹿らしい。 趣味でやる分にはDirectX9でぜんぜん問題ないと思うけどね。
- 821 名前:デフォルトの名無しさん mailto:sage [2009/08/12(水) 21:56:00 ]
- 固定機能でお茶を濁したクズ本が消えるかと思うと
清々するわ
- 822 名前:デフォルトの名無しさん mailto:sage [2009/08/12(水) 22:04:30 ]
- 逆に本がぜんぜんでなくなってるよな。
もうついていけてないんだろうか。
- 823 名前:デフォルトの名無しさん mailto:sage [2009/08/12(水) 22:06:45 ]
- ていうかゲームなんて作るのやめろ
ゲーPGなんてまったく金にならないし 本とか買ってまで作るなマジで
- 824 名前:デフォルトの名無しさん mailto:sage [2009/08/12(水) 23:13:49 ]
- 金が目的なら株でもいじってろよw
- 825 名前:デフォルトの名無しさん mailto:sage [2009/08/13(木) 11:28:23 ]
- 3Dゲームのエフェクトを強引にキャンセルさせてCPU負荷を下げる方法ってないですか?
- 826 名前:デフォルトの名無しさん mailto:sage [2009/08/13(木) 11:35:32 ]
- >>825
えーと、それは自分が作ってるゲームに関する質問?
- 827 名前:デフォルトの名無しさん mailto:sage [2009/08/13(木) 12:45:36 ]
- 某エロゲのモザイク的な修正がパーティクルで実装されているので
- 828 名前:デフォルトの名無しさん mailto:sage [2009/08/13(木) 13:00:53 ]
- 実行ファイルを書きかえれ
- 829 名前:デフォルトの名無しさん mailto:sage [2009/08/13(木) 16:10:27 ]
-
工エエェェ(´д`)ェェエエ工工
- 830 名前:デフォルトの名無しさん mailto:sage [2009/08/13(木) 23:35:07 ]
- あそこが見たいだけじゃないのか?
- 831 名前:デフォルトの名無しさん mailto:sage [2009/08/13(木) 23:40:13 ]
- >>828
長門さんがこちらを見ています
- 832 名前:デフォルトの名無しさん mailto:sage [2009/08/14(金) 07:20:57 ]
- 脳内変換だ
- 833 名前:デフォルトの名無しさん mailto:sage [2009/08/14(金) 11:11:36 ]
- アニメーションコントローラーを使ったアニメーションで
1ループ分のアニメーションの完了を検知したいのですが、 // if(アニメーション時間 >= 1ループかかる時間) if(AnimationSet(AnimationID)->GetPeriodicPosition( ? ) >= AnimationSet(AnimationID)->GetPeriod()) このような判定で合っているでしょうか? 合ってる場合、「?」の部分の引数にはなにを指定したらいいのでしょう? msdnの解説では「アニメーションセットのローカル時間」と書いていますが、 GetPeriodicPosition()の戻り値こそがローカル時間ではないのでしょうか?
- 834 名前:デフォルトの名無しさん mailto:sage [2009/08/14(金) 11:34:13 ]
- なんかもう、誰も使ってない、仕様があやふやだし自分で作らない限り無間地獄から抜けられない
という結論が数年前から変わってない。
- 835 名前:デフォルトの名無しさん [2009/08/14(金) 11:56:07 ]
- いやいやDirectX使わないとXBOXやWindowsでゲーム作れないって
- 836 名前:833 mailto:sage [2009/08/14(金) 12:32:32 ]
- 自己解決(´・ω・`)
GetPeriodicPosition()はグローバルな時間をローカル時間に変換するメソッドのようで? 参照すべきだったのはトラックの方でした
- 837 名前:デフォルトの名無しさん mailto:sage [2009/08/14(金) 21:41:02 ]
- シェーダーで描画してるんですが
固定機能のフォグって同時に使えるんですかね? やってみたらかからないので、 やはりピクセルシェーダーで自前でかけるんでしょうか?
- 838 名前:デフォルトの名無しさん mailto:sage [2009/08/14(金) 21:53:15 ]
- ピクセルシェーダを自前で書くのなら、自前でかける
- 839 名前:デフォルトの名無しさん mailto:sage [2009/08/16(日) 02:53:20 ]
- DirectXのプログラミングを始めようとおもうのですが
これはSDKのチュートリアルにのってる最新のもの?から勉強していって良いのでしょうか? それとも以前のバージョンから順に勉強していくほうが良いのでしょうか?
- 840 名前:デフォルトの名無しさん mailto:sage [2009/08/16(日) 02:55:23 ]
- >>839
通常はそんなめんどくさいことはする必要はない。 ただしバージョンごとにできることと動かせる環境に差異があるので、 DirectXのバージョンを比較した記事をいくつか読んで、 自分の作りたいものがバージョンいくつがふさわしいか最初に決めること。 後々でバージョンを変更するのはプログラムを作り直すようなことと等しい。
- 841 名前:デフォルトの名無しさん mailto:sage [2009/08/16(日) 02:58:53 ]
- directxを更に使いやすくしたライブラリって通称名とかありますか?
また鉄板の物はありますか?
- 842 名前:デフォルトの名無しさん mailto:sage [2009/08/16(日) 03:05:53 ]
- >>841
山ほどある。 が、結局DirectX自体と直接格闘したほうが得るものが多い。 お勧めのライブラリはほかのヤツらよろしく。
- 843 名前:デフォルトの名無しさん mailto:sage [2009/08/16(日) 03:07:37 ]
- >>842
なるほど、ありがとうございます ある程度作れるようになったら、改めて探してみることにします
- 844 名前:839 mailto:sage [2009/08/16(日) 03:10:57 ]
- >>840
なるほど、勉強になりました。 ありがとうございます
- 845 名前:デフォルトの名無しさん mailto:sage [2009/08/16(日) 03:53:38 ]
- directx自体を理解してないとライブラリの使い方も理解出来ないからライブラリは無駄w
- 846 名前:デフォルトの名無しさん mailto:sage [2009/08/16(日) 03:57:10 ]
- そうそう、面法線を計算して頂点を共有する面頂点の合計を正規化したものを頂点の法線に設定してみたけど
球体の見た目はかなり綺麗に仕上がる 角度で適用するかどうか判別すれば尖った部分も表現出来るんじゃないか
- 847 名前:デフォルトの名無しさん mailto:sage [2009/08/16(日) 07:25:33 ]
- >>845
さすがにそれはない。 もしそうならEasyLinkLibraryはあんなに流行らなかった。
- 848 名前:デフォルトの名無しさん mailto:sage [2009/08/16(日) 08:04:06 ]
- >>846
モデルデータ制作者の意図のをエスパーのごとく判断するプログラムを作らない限り無理。 だったら普通に法線をデータに含めればいいだけだろ。 いったい何がしたいんだ?
- 849 名前:デフォルトの名無しさん mailto:sage [2009/08/16(日) 08:05:14 ]
- 大抵のライブラリは自由度を優先しててただのDirectXラッパーで終わってるから意味ないんだよ
例えば視点移動とかエフェクトとかがすべて内包されてて使用者はその中から選ぶだけとか そこまでやってあるライブラリなら意味があると思うけどないでしょ 仮に誰かが作ったとしても無料では出さないでしょ
- 850 名前:デフォルトの名無しさん mailto:sage [2009/08/16(日) 08:06:43 ]
- >>849
それもうライブラリじゃなくてただのツクールだから。
- 851 名前:デフォルトの名無しさん mailto:sage [2009/08/16(日) 08:07:12 ]
- >>848
とりあえずただの頂点データだけのメッシュをフォトリアルに表示する方法を模索してる
- 852 名前:デフォルトの名無しさん mailto:sage [2009/08/16(日) 08:09:38 ]
- >>851
だからなんで頂点データだけにする必要があるのかを聞いているんだが。
- 853 名前:デフォルトの名無しさん mailto:sage [2009/08/16(日) 08:11:10 ]
- >>849
Irrlichtとかがまさにそれじゃないか?
- 854 名前:デフォルトの名無しさん mailto:sage [2009/08/16(日) 08:13:38 ]
- >>852
ただのモデルビューアだから、決まったものを表示するわけじゃないので 最終的にはゲームを作りたいけど、とりあえずビューア作って勉強しつつライブラリに包括していってる ツクールの心臓部分になるかもしれない
- 855 名前:デフォルトの名無しさん mailto:sage [2009/08/16(日) 08:14:47 ]
- 法線がなかったらライティングしない、
あるならライティングする、が普通のモデルビューアーの挙動だと思うが
- 856 名前:デフォルトの名無しさん mailto:sage [2009/08/16(日) 08:17:19 ]
- だから最終目標がツクールレベルだから、法線さえ知らなくても最新ゲーム並みの画像が出せるライブラリを作ってる
自分用にw
- 857 名前:デフォルトの名無しさん mailto:sage [2009/08/16(日) 08:22:21 ]
- 法線なしで最新ゲームなみの画像とはこれはこれは大したもんだ。
デザイナーだったら3秒で投げ捨てろって言うライブラリだな。
- 858 名前:デフォルトの名無しさん mailto:sage [2009/08/16(日) 08:23:54 ]
- 自動生成した感じでもかなりリアルだけどな
- 859 名前:デフォルトの名無しさん mailto:sage [2009/08/16(日) 08:35:18 ]
- エッジの抽出をどうすんだって話じゃねえの
- 860 名前:デフォルトの名無しさん mailto:sage [2009/08/16(日) 09:13:15 ]
- モデリングソフトで簡単に出力できるものを、わざわざ利用しない理由の答えになっていない。
カラーで出力できるのに、わざわざモノクロ写真からカラー写真にしろと言っているのが理解できているのか?
- 861 名前:デフォルトの名無しさん mailto:sage [2009/08/16(日) 09:55:00 ]
- モノクロ写真をカラーにする技術は重宝されてるし、画像処理では主流の研究課題ですけど
- 862 名前:デフォルトの名無しさん mailto:sage [2009/08/16(日) 10:00:14 ]
- 頂点法線の取り扱いについて、多少話しが振れてくれれば
得るものもあるが、デザイナとかモデリングソフトとか 得るものが何もない。 >>モデルデータ制作者の意図のをエスパーのごとく判断するプログラムを作らない限り無理。 別にモデルデータ制作者の意図を反映する必要はない。
- 863 名前:デフォルトの名無しさん mailto:sage [2009/08/16(日) 10:35:16 ]
- >>861
元のツールがカラーで出力できるんだからそれでいいだろって話してんだろ。
- 864 名前:デフォルトの名無しさん mailto:sage [2009/08/16(日) 10:36:12 ]
- >別にモデルデータ制作者の意図を反映する必要はない。
デザイナーに言ったら殴り飛ばされそうなセリフだな
- 865 名前:デフォルトの名無しさん mailto:sage [2009/08/16(日) 10:49:53 ]
- 何小難しい討論してんだ
正確に描画したいなら法線をつけて出力する。 法線がない時は「とりあえずそれなりに描画する」ってやりたいだけだろ? 別にD3DXにだって、法線の自動生成機能はあるけど、別に批難するやつはいないだろ
- 866 名前:デフォルトの名無しさん mailto:sage [2009/08/16(日) 11:17:19 ]
- そもそも法線を自動化することも出来るってだけで法線入れればそっちを優先するだけだがw
- 867 名前:デフォルトの名無しさん mailto:sage [2009/08/16(日) 12:48:52 ]
- 質問です。
DrawTextを使って計算したFPSを表示したいのですが、LPSTR型に変換すると動かなくなります。LPSTR型にうまく変換する方法はありませんか?
- 868 名前:デフォルトの名無しさん mailto:sage [2009/08/16(日) 12:58:51 ]
- >>867
逆だ。プログラム全体をLPWSTRで統一するんだ。(Unicodeビルドしてるなら) オレはそれが嫌になってC++でWindowsプログラム書くのをやめた。
- 869 名前:デフォルトの名無しさん mailto:sage [2009/08/16(日) 13:01:04 ]
- なんでこのスレにいるの?
- 870 名前:デフォルトの名無しさん mailto:sage [2009/08/16(日) 15:45:23 ]
- ヒトリデモ オオク ノ ワカモノ ヲ ユニコード ノ ジゴクカラ スクイタイ
- 871 名前:デフォルトの名無しさん mailto:sage [2009/08/16(日) 15:47:40 ]
- 時代に取り残された老人は消えるべきだ
- 872 名前:デフォルトの名無しさん mailto:sage [2009/08/16(日) 17:19:28 ]
- SJISがデフォルトのOS上でプロジェクト新規作成したらユニコードデフォルトとか嫌がらせ以外の何者でもない
- 873 名前:デフォルトの名無しさん mailto:sage [2009/08/16(日) 17:36:36 ]
- 時代に取り残された老人は消えるべきだ
- 874 名前:デフォルトの名無しさん mailto:sage [2009/08/16(日) 17:42:06 ]
- もはやSJISがデフォルトにはなっていないが、いったいいつの時代の話をしているんだ?
- 875 名前:デフォルトの名無しさん mailto:sage [2009/08/16(日) 18:31:50 ]
- 今時のOSはユニコードが基本ってばっちゃが言ってたけど
- 876 名前:デフォルトの名無しさん mailto:sage [2009/08/16(日) 19:42:12 ]
- 最近のOSがどうだろうが関係ねえ。
社内のツールがすべてSJIS前提だから選択肢ねーんだよ。 という会社けっこうあるんじゃない。
- 877 名前:デフォルトの名無しさん mailto:sage [2009/08/16(日) 19:57:32 ]
- オープンソースのぜんぶSJISなのにどうすんの
- 878 名前:デフォルトの名無しさん mailto:sage [2009/08/16(日) 20:00:01 ]
- ゲームのパラメータファイルとかは、基本SJISだからなぁ
わざわざユニコで書く奴いるか?
- 879 名前:デフォルトの名無しさん mailto:sage [2009/08/16(日) 20:07:20 ]
- ツールが吐き出すXMLもUTF8が使われている時代に何を言ってるんだろう?
- 880 名前:デフォルトの名無しさん mailto:sage [2009/08/16(日) 20:18:40 ]
- XML厨のプログラマが自己満足で環境を整備しないとSJISでズルズルいくね。
そして、運用する側はタイプ総量とタイプミスが激増して精神病むの。
- 881 名前:デフォルトの名無しさん mailto:sage [2009/08/16(日) 21:18:14 ]
- 普通XMLはUTF-8で書くだろアホか
- 882 名前:デフォルトの名無しさん mailto:sage [2009/08/16(日) 21:19:58 ]
- UTF-8なら何も問題ないんだが、WindowsはUTF-16LEなわけよ。
- 883 名前:デフォルトの名無しさん mailto:sage [2009/08/16(日) 21:28:43 ]
- 3D空間で人が平面上を動き回れる状態で色々試しています。
人が2m弱として、地面を1000m四方と巨大な板を置いているのですがバンプマップが上手くかかりません。 バンプマップで凹凸を表現するには細分化しないと効果が出ないものなのでしょうか。 テクスチャスクロールだけで地面の上を動いているように見せたかったのに 同じ絵(凹凸)の部分を色んな方向から見ても大して変化せず違和感があります。
- 884 名前:デフォルトの名無しさん mailto:sage [2009/08/16(日) 21:36:59 ]
- >>868
unicodeは使ってないです。あと、LPCWSTRじゃ引き算とかが出来なくて困ります。他に解決方法はありませんか?
- 885 名前:デフォルトの名無しさん mailto:sage [2009/08/16(日) 21:42:55 ]
- 色んな方向から見て変化させるのは、パララックスマッピングとかでは?
バンプマッピングなら、光源の位置と向きを変化させると、見え方が変わると思います。
- 886 名前:デフォルトの名無しさん mailto:sage [2009/08/16(日) 21:43:32 ]
- >>884
というか、MBCSとUTF-16は相互に変換するAPIがあるぞ? 引き算の意味するところは分からんが。
- 887 名前:デフォルトの名無しさん mailto:sage [2009/08/16(日) 21:52:26 ]
- >>884
fpsをLPSTRに変換するというのは、もしかしてこういうことをやってるとか? int fps = ..... ; LPSTR lpstr = (LPSTR) fps; DrawText( .... );
- 888 名前:デフォルトの名無しさん mailto:sage [2009/08/16(日) 22:13:19 ]
- 文字コードの変換すら出来ないのはDirectX以前の問題だろ。
基本からやり直せ。
- 889 名前:デフォルトの名無しさん mailto:sage [2009/08/16(日) 22:13:48 ]
- >>887
大体そんな感じです。INTのポインタを入れたりしてみましたがダメでした。 漢字とかに変換するのが正解なんですかね?
- 890 名前:デフォルトの名無しさん mailto:sage [2009/08/16(日) 22:18:00 ]
- >>889
まずはC言語の入門書から読もうな。 このスレに来るのは3ヶ月くらい早すぎた。
- 891 名前:デフォルトの名無しさん mailto:sage [2009/08/16(日) 22:26:21 ]
- >>888
どうか可能か不可能かだけでもご教授を…
- 892 名前:デフォルトの名無しさん mailto:sage [2009/08/16(日) 22:41:28 ]
- 叶
- 893 名前:デフォルトの名無しさん mailto:sage [2009/08/16(日) 22:41:50 ]
- これは酷い
- 894 名前:デフォルトの名無しさん mailto:sage [2009/08/16(日) 23:56:53 ]
- 木曽がわかってないのに応用問題を解こうとして話を難しくしてる
- 895 名前:デフォルトの名無しさん mailto:sage [2009/08/17(月) 00:02:15 ]
- 初心者は死ね
それがこのスレの掟だ
- 896 名前:デフォルトの名無しさん mailto:sage [2009/08/17(月) 00:07:01 ]
- それはまた、エラいスレのタイトルと矛盾する掟だな。
- 897 名前:デフォルトの名無しさん mailto:sage [2009/08/17(月) 00:09:14 ]
- sprintf発見!確かに論外だ。
DIRECTXは続けるので、また詰まった時はお願いします。
- 898 名前:デフォルトの名無しさん mailto:sage [2009/08/17(月) 00:12:04 ]
- 流石にCの初心者までは扱いきれんだろw
- 899 名前:デフォルトの名無しさん mailto:sage [2009/08/17(月) 00:15:49 ]
- CがダメならC#を使えばいいじゃない
- 900 名前:デフォルトの名無しさん mailto:sage [2009/08/17(月) 04:04:17 ]
- メッシュコンテナ(D3DXMESHCONTAINER 構造体)から面ごとのマテリアル対応情報を取りだそうとしてるんだけど、
pMesh->GetAttributeTable()メソッドで取り出した、属性テーブル(D3DXATTRIBUTERANGE 構造体)の中の「AttribId」ってのは pMaterials[i]の添え字(i)に対応してるんでしょうか? 同じ属性テーブル内にある「FaceStart」というのも、インデックスバッファ内の面の構成データの格納順に対応してるのか疑問です・・・
- 901 名前:デフォルトの名無しさん mailto:sage [2009/08/17(月) 05:41:26 ]
- プロジェクトの設定をマルチバイト文字を使用するに変更すればいいだけじゃない
- 902 名前:デフォルトの名無しさん mailto:sage [2009/08/17(月) 05:44:49 ]
- >>900
出なかったからたぶんマテリアルとは関係ない メッシュをマトリックスグループみたいに分割することが出来てそのインデックス情報を格納するんじゃないかと でDraw???って関数でそのインデックスを指定するとその面だけが描画されるという
- 903 名前:デフォルトの名無しさん mailto:sage [2009/08/17(月) 05:49:18 ]
- ああ、そうか
マテリアルのインデックスを入れといてSetMaterialと連動させて その面だけを描画すればマテリアルのインデックスという意味にもなるのか まあ、ただ数字を入れて描画グループを分割出来るだけの代物だよ
- 904 名前:デフォルトの名無しさん mailto:sage [2009/08/17(月) 06:36:53 ]
- うーん、pMaterials[i]の添え字(i)と頂点番号(もとい、面番号)を関連付けるデータは
メッシュコンテナ内には無いのでしょうか? メッシュデータ内の全頂点から、あるマテリアルが適用されている頂点を特定したいのですが・・・
- 905 名前:904 mailto:sage [2009/08/17(月) 08:19:54 ]
- 多分、自己解決
ボーンコンビネーションテーブル(LPD3DXBONECOMBINATION型)に サブセット番号からメッシュデータ(最適化後)の頂点インデックスまで全て格納されてたので そちらを参照することにしました
- 906 名前:デフォルトの名無しさん mailto:sage [2009/08/17(月) 12:04:53 ]
- ttp://marupeke296.com/DXGSmp_No26_WorldTransMatrix.html
このサンプルプログラムを使って tiny.xを読み込んでも何もアニメーションしないのですが なぜでしょうか? ヒントだけでもいいので後生ですから教えてください・・><!
- 907 名前:デフォルトの名無しさん mailto:sage [2009/08/17(月) 12:37:41 ]
- DirectXで直線を引くにはどうすれば?(´・ω・`)
ポリゴンとかXファイルとかは表示できるのに・・・
- 908 名前:デフォルトの名無しさん mailto:sage [2009/08/17(月) 12:50:40 ]
- DrawPrimitiveでいけるやないかアホでんねん(´・ω・`)
- 909 名前:デフォルトの名無しさん mailto:sage [2009/08/17(月) 13:10:51 ]
- >>906
公式ならともかく、そこのページは管理人がちゃんと質問掲示板開いてるじゃないか そっちで質問しる・;(`ε()゙
- 910 名前:デフォルトの名無しさん mailto:sage [2009/08/17(月) 13:41:09 ]
- なんなんだ・・・
釣りなのか本気なのか・・・
- 911 名前:デフォルトの名無しさん mailto:sage [2009/08/17(月) 18:35:49 ]
- 残念ながら、釣りではありません。
- 912 名前:883 mailto:sage [2009/08/17(月) 19:09:07 ]
- >>885
ありがとうございます。 基本的にはカメラを固定した状態でも動き回るものはバンプ、 それ以外はパララックスという使い方が良さそうですね。 もちろん場合に寄りますけど。
- 913 名前:デフォルトの名無しさん mailto:sage [2009/08/17(月) 20:17:35 ]
- >>907
ttp://homepage2.nifty.com/natupaji/DxLib/dxfunc.html
- 914 名前:デフォルトの名無しさん [2009/08/17(月) 21:41:59 ]
- 現在DirectXを使ってゲームを作っているのですが、
ボタンが後ろに隠れてしまっています。 なので、ボタンがある位置にスプライトを使ってボタン用の画像を 表示しているのですが、時差が出来たりしてうまく機能しません。 どうすれば、ボタンそのものを前面に表示出るのでしょうか?
- 915 名前:デフォルトの名無しさん mailto:sage [2009/08/17(月) 21:45:23 ]
- DirectXにボタンなど無い
DirectXにスプライトなど無い
- 916 名前:デフォルトの名無しさん mailto:sage [2009/08/17(月) 22:07:50 ]
- 「Direct3Dで作っているゲームのキャラと地形のことで質問ですが…」
「Direct3Dにキャラや地形などない」
- 917 名前:デフォルトの名無しさん [2009/08/17(月) 22:09:25 ]
- >>915
ボタンはウィンドウズの標準のもので、 スプライトはID3DXSpriteです。
- 918 名前:デフォルトの名無しさん mailto:sage [2009/08/17(月) 22:21:26 ]
- ID3DXSpriteを使ってボタンの画像を描画しているのなら、
そもそも標準コントロールを使う必要性がない。
- 919 名前:デフォルトの名無しさん [2009/08/17(月) 22:51:14 ]
- >>918
それもそうですね。 DirectXのサンプルに使われているボタンは 標準コントロールを基にしてるのかと思ってましたが 今調べてみたら違いますね。 ご迷惑をおかけしました。
- 920 名前:デフォルトの名無しさん mailto:sage [2009/08/17(月) 22:53:43 ]
- まぁ、ツールを作る際にDirectXで描画されたものとWindosのコントロール併用することがあるから
色々試しても無駄にはならないことだけどね。
- 921 名前:デフォルトの名無しさん mailto:sage [2009/08/18(火) 01:52:08 ]
- Vistaか7ならどっちでも同じことだが
- 922 名前:デフォルトの名無しさん mailto:sage [2009/08/18(火) 08:20:52 ]
- 同じじゃねえよ。
どれだけ馬鹿なんだ?
- 923 名前:デフォルトの名無しさん mailto:sage [2009/08/18(火) 08:36:24 ]
- D3DXLoadMeshHierarchyFromX
の必要な LPD3DXALLOCATEHIERARCHY pAlloc,がインターフェイスのポインタと なっているのですが COMインターフェイスってなんでしょうか? 調べてもプログラムの再利用としか出てこないので全くわかりません。
- 924 名前:デフォルトの名無しさん mailto:sage [2009/08/18(火) 08:42:21 ]
- COMインターフェイスで検索しろ
- 925 名前:デフォルトの名無しさん mailto:sage [2009/08/18(火) 09:54:49 ]
- Direct3D 11.0, Direct3D 10.1/10.0, DXGI 1.0/1.1, Direct2D 1.0, DirectWrite, Windows Imaging Component (WIC) APIs. (DirectWrite and WIC have partial support)
あたりのサンプル実装がMSから出たぞ。 code.msdn.microsoft.com/WindowsAPICodePack
- 926 名前:デフォルトの名無しさん mailto:sage [2009/08/18(火) 10:52:08 ]
- >>923
そのあたりは、とにかくまずはサンプルコピペして、動きを見て、内容を理解し、自分で改良するしかない。 マジ。 理解しないままゲームとか作ると、あと後絶対苦労するから
- 927 名前:デフォルトの名無しさん mailto:sage [2009/08/18(火) 15:48:21 ]
- 1000に近づいてますが、質問させてください。
2D板ポリゴンの描画についてなのですが、DrawPrimitive系は重いので 1回で複数枚の板を表示するようにしてみました。 D3DXVECTOR4 vPos; D3DCOLOR color; D3DXVECTOR2 vTex; 上のようなメンバーを持った頂点オブジェクトの配列Vertexを作り、 for(int i = 0; i < Max; i++){ Vertex[i*4].vTex=D3DXVECTOR2(0.0f, 0.0f); Vertex[i*4+1].vTex=D3DXVECTOR2(1.0f, 0.0f); Vertex[i*4+2].vTex=D3DXVECTOR2(0.0, 1.0f); Vertex[i*4+3].vTex=D3DXVECTOR2(1.0f, 1.0f); } とu, vを初期化。そして、描画処理が入った数だけ Vertex[Cnt*4].vPos = D3DXVECTOR4(left, top, 0.0f, 1.0f); Vertex[Cnt*4+1].vPos = D3DXVECTOR4(right, top, 0.0f, 1.0f); Vertex[Cnt*4+2].vPos = D3DXVECTOR4(left, bottom, 0.0f, 1.0f); Vertex[Cnt*4+3].vPos = D3DXVECTOR4(right, bottom, 0.0f, 1.0f); ※color省略 Cnt++; とし、SetTextureして DrawPrimitiveUP(D3DPT_TRIANGLESTRIP, Cnt*2, Vertex, sizeof(VERTEX); としたらテクスチャがあらぬ方向に伸びました。何故か正しく表示できてるものもあるのですが・・・。 どこか根本的に勘違いしてるのでしょうか?ご指摘いただけませんか・・・。
- 928 名前:デフォルトの名無しさん mailto:sage [2009/08/18(火) 15:51:04 ]
- TRIANGLESTRIPがどういうものか調べてくるといい
- 929 名前:デフォルトの名無しさん mailto:sage [2009/08/18(火) 15:56:02 ]
- >>928
さっそくのご指摘ありがとうございます。 全部プリミティブが繋がってると言うことでしょうか? 他の部分は問題ないものとしてTRIANGLELISTで実装してみます。
- 930 名前:デフォルトの名無しさん mailto:sage [2009/08/18(火) 16:36:00 ]
- >>928
TRIANGLELISTでできました!1枚の板に6つ頂点使ってますが、 ちゃんとu,vと対応させたらOKでした。後は頂点インデックス使ったほうがいいですかね。 どれくらいパフォーンマンスに影響するかはわかりませんが。ともあれ即レス感謝です!
- 931 名前:デフォルトの名無しさん mailto:sage [2009/08/18(火) 16:42:06 ]
- >>930
すぐに非効率性に気づいてTRIANGLELIST+IndexBufferに移行するだろうがな。
- 932 名前:デフォルトの名無しさん mailto:sage [2009/08/19(水) 00:54:18 ]
- 解決したんじゃなくて先送りしただけという事に気づくんだw
- 933 名前:デフォルトの名無しさん mailto:sage [2009/08/19(水) 06:23:18 ]
- D3DXMATRIX mat;
D3DXVECTOR3 vec; パターン1: lpdevice->SetTransform( D3DTS_WORLD, &mat ); →vec(頂点)をDrawPrimitivで描画 パターン2: vec = vec * mat; →vec(頂点)をDrawPrimitivで描画(SetTransformしない) この2つは同じ結果になると思ってたんですが、どうやら違うらしいです。 SetTransformをせず、パターン1と同じ結果を得るためにはどうすればいいのでしょう?
- 934 名前:933 mailto:sage [2009/08/19(水) 07:24:03 ]
- 計算ミスってました(ノ∀`)
サーセン orz
- 935 名前:デフォルトの名無しさん mailto:sage [2009/08/19(水) 10:33:40 ]
- >>933
SetTransformしないってのは、座標変換しないって意味じゃないぞ。 初期値として単位行列が設定されているから、起動時から一度も設定してなければ 結果的に入力と出力が同じ座標になるが。 何もセットしなけいと別の場所でSetTransformした値が残っているので、 明示的に単位行列をセットすべき。
- 936 名前:デフォルトの名無しさん [2009/08/19(水) 14:55:22 ]
- ガラスのコップみたいな透明な物体を描画するには、
テクスチャーを透過するだけでいいんだな
- 937 名前:デフォルトの名無しさん mailto:sage [2009/08/19(水) 15:10:03 ]
- >>966
DeffUseのαを設定する形にすれば透過率を後から変更できるけどな。 いずれにせよ描画順に制約を受けるので注意。
- 938 名前:デフォルトの名無しさん mailto:sage [2009/08/19(水) 15:46:26 ]
- グラスの表現は透過率の調整だけじゃ出来ねえよ
プログラム以前に最低限のモデリングを経験してからにしろ。
- 939 名前:デフォルトの名無しさん [2009/08/19(水) 17:22:15 ]
- >>937
deffuseのアルファ値か、ありがとう! >>938 屈折の話とかかな? ヒントサンクス!
- 940 名前:デフォルトの名無しさん mailto:sage [2009/08/19(水) 20:09:42 ]
- マウスの左ボタンを押しているときにprintfDx関数で"Hello C World!\n"と出力し、
押してないときはclsDx関数で消すというコードを書いたつもりなのですがうまく消えてくれません。 どうしてでしょうか?初歩的な質問ですいませんが、よろしくおねがいします。 #include "DxLib.h" int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance,LPSTR lpCmdLine, int nCmdShow ){ ChangeWindowMode(TRUE);//ウィンドウモード if(DxLib_Init() == -1 || SetDrawScreen( DX_SCREEN_BACK )!=0) return -1;//初期化と裏画面化 char Key[256]; //ループ開始 while(ProcessMessage()==0 && ClearDrawScreen()==0 && !GetHitKeyStateAll( Key )){ //↑メッセージ処理 ↑画面をクリア //ココ↓ if( ( GetMouseInput() & MOUSE_INPUT_LEFT ) != 0 ) { // 押されている printfDx( "Hello C World!\n" ) ; } else // 押されていない { int clsDx( void ); } //ココ↑ ScreenFlip(); } DxLib_End(); return 0; }
- 941 名前:デフォルトの名無しさん mailto:sage [2009/08/19(水) 20:18:12 ]
- >>940
ここはDirectXのスレです。
- 942 名前:デフォルトの名無しさん mailto:sage [2009/08/19(水) 20:21:55 ]
- >>941
スレ違いでしたか、すいませんでした
- 943 名前:デフォルトの名無しさん [2009/08/20(木) 17:55:06 ]
- DirectX9とc++でゲームを作っているのだが、ゲーム会社に就職する
には、どれくらいの技術が必要ですか? よく聞く基準 ライブラリを作れるとか 簡単な3Dゲームが必要とか 2Dだったら、完成度が高くないといけない だいたいでいいから基準みたいなものはありますか?
- 944 名前:デフォルトの名無しさん mailto:sage [2009/08/20(木) 17:57:57 ]
- ゲーム1本作れればおkよ
- 945 名前:デフォルトの名無しさん mailto:sage [2009/08/20(木) 19:03:07 ]
- 人事担当じゃないから詳しいことは分からないけど、DirectXでゲームとして完成度の高いものを作っても意味ないよ。
一番は表現力。HLSLでSDKのサンプル以上の何かを出来ればそれだけで十分だったりも。 小規模な企業ならそれでいいけど、中規模以上の企業であれば数学・物理が人に教えることが出来るレベルじゃないとダメ。 ハードが変わっても求めたい答えとその計算方法が分かっていれば問題ないしね。 ちなみにバンナムは数学・物理中心で、簡単なC言語ソースの問題(穴埋め)。 任天堂は数学・物理中心、あとは一般常識と発想力。 大企業になると技術力をアピールする機会がなかったり、それ以前に蹴落とされるから注意してね。 まぁ、場違いな書き込みなんですけど。
- 946 名前:デフォルトの名無しさん mailto:sage [2009/08/20(木) 19:38:01 ]
- 板違いな奴は入れないお
レスする方もたいがいだけどな
- 947 名前:デフォルトの名無しさん mailto:sage [2009/08/20(木) 19:45:42 ]
- ゲームとして完成度の高いもの(笑)
- 948 名前:デフォルトの名無しさん mailto:sage [2009/08/20(木) 21:04:59 ]
- そもそもここは進路相談のスレじゃない
- 949 名前:デフォルトの名無しさん [2009/08/21(金) 00:03:24 ]
- >>947
面白いゲーム作れなくて、数学物理が出来ても仕方ないと思うけどな。 単なる技術のデモンストレーションみたいなゲームは嫌だろ。 ゲームとしての捻りが無ければ売れんだろうし。 ま、だからって数学物理がいらないとは言わないが。
- 950 名前:デフォルトの名無しさん mailto:sage [2009/08/21(金) 00:09:04 ]
- >>949
そういう人ばかりいたら駄目だろうが、当然面白いゲームを作るための人というのもまた別に雇用するだろう。
- 951 名前:デフォルトの名無しさん mailto:sage [2009/08/21(金) 00:23:24 ]
- ゲームが面白いかどうかなんて、グラフィックや企画、仕様による所が大きいだろーが
つーか、ここはプログラマ板だろ プログラマ(だぶん一人)が作った、転職、就職用ゲームが面白いかどうか、 なんて言ってるのは、ロートルの分って無いオッサンにしか見えん 挙動とかタイミングなんて言うなよ? それこそ、そのサンプルプログラムで言い訳だろ つまり、数学物理とは言わないが 技術スキルが分るサンプルやデモで十分 採用に面白い完成したゲームとか言ってる奴は、マジで組織のお荷物ぽっい いい年して技術が無く、技術的な問題可決もトンチレベルの発想で 結局、若い技術ある奴が残業や休日出勤でカバーとか、ねw
- 952 名前:デフォルトの名無しさん mailto:sage [2009/08/21(金) 00:26:00 ]
- ゲームってこれからも
どんどんどんどんどんどん 難しくなってくのかな? 昔はフォトンマップとか非線形計画問題とか考えなくても ゲーム作れたのに。 うざい、皆死ねばいいのに。
- 953 名前:デフォルトの名無しさん mailto:sage [2009/08/21(金) 00:36:28 ]
- うんうん、板もわきまえずに語りだす奴は皆氏ねばいいね
- 954 名前:デフォルトの名無しさん mailto:sage [2009/08/21(金) 02:14:38 ]
- ツールが増えてるからむしろ簡単になってるんじゃない?
- 955 名前:デフォルトの名無しさん mailto:sage [2009/08/21(金) 03:28:34 ]
- Physixスレがないのだがここでいいのかな
|

|