- 1 名前:デフォルトの名無しさん mailto:sage [2007/11/27(火) 16:56:40 ]
- ※回答する人も、質問する人も必ず読んでください
これらに当てはまる人のための質問スレです。 1.C/C++は多少理解している。 2.最近DirectXを始めたばかり 3.SDKを見ても、Googleで検索しても、いまいち理解できない人 4.余計な雑談は不要ですよ 【 回答してくださる方 】 ・ できるだけ優しく質問に答えてあげてください。 ・ 優しく教えるのが嫌でしたら、解決するためのヒントだけでも結構です。 「ググれ」「SDK見れ」以外の回答でおながいします。 ・ 神ですら理解不能な質問は無視して下さい。 【 質問する方 】 ・ どんな事で躓いているのか明確にしよう。 ・ 長くならないなら躓いている部分のコードを晒してみれ。 ・ 解決した場合、お礼を言うのは当然だが、何をどうしたら解決したかを明確に書こう。 ・ 回答して貰ったら、出来るだけお礼もしよう。 【C++】 DirectX初心者質問スレ Part14 【C】 pc11.2ch.net/test/read.cgi/tech/1189257706/
- 477 名前:デフォルトの名無しさん [2008/01/13(日) 06:35:13 ]
- VC++2005ExpressEdition DirectX 9.0を使用しています。
Game.h Game.cpp Input.h Input.cppというファイルで入力によって値を変えようとしてるんですけど、Game.h内で class Game{ <略> privete: struct AIRPLANE{ FLOAT v; FLOAT roll; FLOAT pitch; }airplane; } と構造体を宣言して、Input.cpp内で構造体の値を入力によって変えたいんですがうまくいきません。 error C2061: 構文エラー : 識別子 'AIRPLANE' とエラーが出てしまいます。Input.cppの実際に値を変えようとしているところは #include "Input.h" <略> void Input::GetInput_Game(AIRPLANE airplane){ if(KEY_Z == TRUE){ airplane.v += 0.001f; } でInput.hのクラスでは "Game.h"をincludeして void GetInput_Game(AIRPLANE airplane); としています。キー入力はうまくいくのですが、構造体の受け渡しがうまくいきません。includeのやりかたが悪いのでしょうか?
- 478 名前:デフォルトの名無しさん mailto:sage [2008/01/13(日) 07:23:11 ]
- ひょっとしてそれはギャグでいっt
- 479 名前:デフォルトの名無しさん mailto:sage [2008/01/13(日) 09:49:30 ]
- . ィ
.._ .......、._ _ /:/l! :~""''.>゙' "~ ,、、''‐'、| _ ゙、'、::::::ノ:::::::_,.-=. _〜:、 /_.}'':, ``、/:::::::::__....,._ `゙'Y' _.ェ-、....._ /_゙''i゙ノ、ノ ,.--l‐''"~..-_'.x-='"゙ー 、`'-、 ,:' ノ゙ノブ " .!-'",/ `'-‐'') /\ `/ でノ-〈 .-''~ >'゙:: ‐'"゙./ ヽ.,' ~ / //::::: ', / ,:'゙
- 480 名前:デフォルトの名無しさん mailto:sage [2008/01/13(日) 09:57:14 ]
- >>477
君それ、DirectX全く関係ないから。 DirectXに手を出す前に、とりあえず君はコンソールアプリでも作って クラスと構造体、引数の受け渡しの勉強をしなおせ // 構造体定義 typedef struct { FLOAT v; FLOAT roll; FLOAT pitch; } AIRPLANE; // クラスメンバに構造体を加える class Game { private: AIRPLANE airplane; (略) }; void Input::GetInput_Game( Game *game ) { if( KEY_Z == TRUE ) { game->airplane.v += 0.001f; } } どういう動作をさせるつもりだか知らんが、だいたいこんな感じか
- 481 名前:デフォルトの名無しさん mailto:sage [2008/01/13(日) 10:15:02 ]
- 志村ぁ、属性属性!
- 482 名前:デフォルトの名無しさん mailto:sage [2008/01/13(日) 11:19:15 ]
- ああすまんwprivete→privateだけ気になってて間違えた
privateじゃなくてpublicねw
- 483 名前:デフォルトの名無しさん mailto:sage [2008/01/13(日) 15:25:11 ]
- ありがとうございます。
上手くいきました。
- 484 名前:デフォルトの名無しさん mailto:sage [2008/01/13(日) 17:44:37 ]
- DirectX SDK を使いたいんだけど、インストールの仕方がいまいちわからんのです。
いろいろ試したところ以下の操作でビルドできるようになったけど、これって正しい? 1. DirectX 9.0b SDK をダウンロードして c:\dx90bsdk に展開する 2. DirectX SDK - (November 2007) をダウンロードして c:dx90bsdk に上書きコピーする 3. インクルードパスに c:\dx90bsdk\Include を追加する アドバイスあればお願いします。
- 485 名前:デフォルトの名無しさん mailto:sage [2008/01/13(日) 17:50:40 ]
- 普通に実行すればインストーラーが勝手にやってくれるだろ
頭にウジが涌いているのか?
- 486 名前:デフォルトの名無しさん mailto:sage [2008/01/13(日) 17:54:33 ]
- >>484
1はいらない 2はアップグレードじゃないので単体で動作する むしろ、前のバージョンのSDKは抜くべき 3はその動作だけじゃ足りないはず わからなければ入門書を買ってきたほうがいい 時間とお金を考えたら1人で考えるのは無駄かもわからんね 本は自分で立ち読みして探せ 致命的なのは1と2 なんでこんなことした? 普通に最新のSDKをダウンロードしてこい アップグレードキットはない
- 487 名前:デフォルトの名無しさん mailto:sage [2008/01/13(日) 18:03:11 ]
- >485
まず DirectX 9.0b SDK をインストールしてビルドを試みたところ、最近のコードをビルドできなかった。 で、DirectX SDK - (November 2007) をダウンロードして上書きコピーしたらとりあえずビルドできた。 「そんなことしなくても○○をDLして入れればおk」とかアドバイスがあれば知りたいなと思って聞いてみた。 スマン>485
- 488 名前:デフォルトの名無しさん mailto:sage [2008/01/13(日) 18:10:20 ]
- >>486
アドバイスありがとう。明日、本屋にいってみるよ。
- 489 名前:デフォルトの名無しさん mailto:sage [2008/01/13(日) 18:30:40 ]
- ばーか
- 490 名前:デフォルトの名無しさん mailto:sage [2008/01/13(日) 19:07:33 ]
- >>487
>ダウンロードして上書きコピーしたら これ駄目 レジストリとか環境変数とかなんも考えないのか? ファイルだけ書き加えて動くもんなんてそうそうないから 動いた→OK は全体の構造を把握してない限りありえない 一度アンインストールしてもう一度インストールしなおせ その状態で進めるとまた問題が起こったときに何が原因かさっぱりわからなくなるぞ
- 491 名前:デフォルトの名無しさん [2008/01/13(日) 19:16:51 ]
- DirectX9.0c以上ってどれをダウンロードしたらいいんですかね?
いつも確認したら8.0になってるんですよ・・・
- 492 名前:デフォルトの名無しさん mailto:sage [2008/01/13(日) 19:22:45 ]
- Windows95はDirectX8.0aまでの対応だよ。
- 493 名前:デフォルトの名無しさん mailto:sage [2008/01/13(日) 19:38:56 ]
- そうだ
まずOSのバージョンの確認からだな たまに古いの使ってる分際で開発なんてしようと思うキチガイがいるから閉口する とりあえずXPにしろよな つか、もっというと金がない奴はゲーム開発なんてやろうと思うな 色々楽をしようとするたびに出費がかさむ職業だぞw なんでもケチるとなんにもできない上になんにもわからない だからなんのゲームもできない 入門書のこともそう 読めばわかるようなことだけど自分で調べるとなるとひと月ふた月平気で過ぎていく なんにも金を出さないと2年たっても3年たってもいつまでたってもゲームなんかできない
- 494 名前:デフォルトの名無しさん mailto:sage [2008/01/13(日) 20:45:34 ]
- 5000円の参考書買って役に立たなくても
「はずれか、チッ」としか思わなくなるようでないとだめ
- 495 名前:デフォルトの名無しさん mailto:sage [2008/01/13(日) 20:56:55 ]
- 古い環境での動作、古い環境での開発が求められる場合もあるだろ
まあガキの遊び程度だったら新OSでやった方が色々と楽だが あと、別に今時本がなくったって検索ワードを使いこなす技量があれば さほど情報に困ることはない もちろん本があるにこしたことはないけどね 楽をしようとするたびに出費がかさむというのには同意 馬鹿は大人しく金を使った方がいい
- 496 名前:デフォルトの名無しさん mailto:sage [2008/01/13(日) 21:00:35 ]
- VC++2005の本を買ったけど、.NETフレームワーク開発が主体だと気づいて
結局ほとんど使ってない俺
- 497 名前:デフォルトの名無しさん mailto:sage [2008/01/13(日) 21:21:23 ]
- >>493は言い過ぎかもしれんが、俺も専門書にかかる出費はけちるべきではないと思う。
- 498 名前:デフォルトの名無しさん mailto:sage [2008/01/13(日) 21:25:59 ]
- この分野はプログラミングの中でもニッチな方だから、
Web常に情報の蓄積がなく、本にしか書いてない基礎的情報も多い。
- 499 名前:デフォルトの名無しさん mailto:sage [2008/01/13(日) 21:26:18 ]
- >>495
ていうか、調べてもいいけど該当する情報を見つけるまでかなりかかる場合もあるしね お前が本がなくてもなんてのは本を十分みたり、たくさんの人と話す機会があって何かを学んだいま だからこそいえることだろ? なくてもいいというにもたくさん本をみたうえでないとなくてもいいといえないわけだから そういう情報なんだよね必要なのって あるものごとを決める平均値みたいなもの、最適な判断材料は糞も糞なりに全部みないと 最後の解は得られない たくさんの選択肢を判断できるだけの情報力があればあとは時代が変わるごとの 差分値だけで済む こうなってしまっている状態の人間を基準にしてもしょうがない はじめはなんでも買ってなんでも吸収する気でないととても普通にプログラムが作れるレベルまで届かない 低賃金の割りに意外とつらいと思うぜ
- 500 名前:デフォルトの名無しさん mailto:sage [2008/01/13(日) 21:56:42 ]
- ごめん。俺本買ったことないけど、使いこなせてるや。
- 501 名前:デフォルトの名無しさん mailto:sage [2008/01/13(日) 22:03:39 ]
- 金出して買う程の書籍とかないよな。
ネットで十分。
- 502 名前:デフォルトの名無しさん mailto:sage [2008/01/13(日) 22:04:50 ]
- まあ初心者レベルの情報だったら買うほどのこともないだろう
本屋に通えるだけの行動力があればいい
- 503 名前:デフォルトの名無しさん mailto:sage [2008/01/13(日) 23:10:22 ]
- >>500
わかってるつもりで実はわかってない ってのはよくある ゲーム系から業務系にいったときにちょっとだけ苦労した 実務の正確さがちょっと足りなったかな 精度を高めるためにちょっとした苦行がいった でもそれだけだったけどw
- 504 名前:デフォルトの名無しさん mailto:sage [2008/01/13(日) 23:12:43 ]
- ゲーム系は速さ重視だからな
業務系だとどうでもいいような決まりが多そうだ
- 505 名前:484 mailto:sage [2008/01/13(日) 23:35:48 ]
- 484です。
個人サイトとか MSDN とかを見て Visual Studio 2008 Express Edition で DirectX SDK のサンプルをビルドして実行できるようになった。 特に >>486 のコメントが参考になったよ。どもです。 ところで、DirectX (特に3D) プログラミングをするのにおすすめの本とかある? ネットで十分っていうコメントもあるけど。 ちなみにスキルは win32 API プログラミングはペゾルト本で一通りやってて、 ベクトル・行列の計算は苦にならない感じ(予習したから)。
- 506 名前:デフォルトの名無しさん mailto:sage [2008/01/13(日) 23:38:51 ]
- すすめられる程の本は無い。
ネットでOK。 DirectXに特化した本はロクなのない。
- 507 名前:デフォルトの名無しさん mailto:sage [2008/01/13(日) 23:41:35 ]
- >>505
1冊も買わないか 全部買って良いとこ取りするかのどっちかしかない 1冊あればOK的な本はない
- 508 名前:484 mailto:sage [2008/01/14(月) 00:53:51 ]
- >>506 >>507
そうか。しばらく DirectX SDK のサンプルと API リファレンスでがんばってみる。
- 509 名前:デフォルトの名無しさん mailto:sage [2008/01/14(月) 02:47:22 ]
- >>508
一冊も買わないなんて効率悪いだけだと思うぜ俺は 細かい技術が足りてないくせにできると思ってる奴のいうことだと思う 俺のこれまでの経験でいうとネットなんてざっとしか載ってない おおざっぱに知るだけ知って知った気でいる分にはそれでもいいけど はじめはいろんな本を読んでまず技術の土壌を固めるべき そっちのが速い いらないとか言ってる奴は自分は過去に他の分野の本を読んで細かい技術を身につけてる場合が多い そういう奴は新人とか育てるのものっすごい下手なのであまり信用しないほうがいい これまで自分が出会った人とかちょっとの間でも教え請うた人の存在とかすっかり頭から抜けてる 馬鹿で恩知らずな奴なのでもうこういう奴が技術的に伸びることはもうない 本を読むことは人を知ることでもある ネットでは薄い 色んな人の色んな考えを吸収するには本をたくさん読む必要がある プログラム構成がめちゃくちゃ下手糞な奴とかいるけど アイディアが浮かばないとか素質がないんじゃなくて単純なスキル不足である場合がほとんど グローバル変数・関数使いまくりのままとか糞なソースばっかり書いて何年たってもグローバル変数を使う初心者のままとか結構ザラw
- 510 名前:デフォルトの名無しさん mailto:sage [2008/01/14(月) 03:12:43 ]
- >509
それじゃ、一冊本のタイトルあげてみ?
- 511 名前:デフォルトの名無しさん mailto:sage [2008/01/14(月) 03:19:24 ]
- まあ本買うやつなんて旧世代の人間だけだな。
- 512 名前:デフォルトの名無しさん mailto:sage [2008/01/14(月) 03:23:01 ]
- >>510
誰向けの?
- 513 名前:デフォルトの名無しさん mailto:sage [2008/01/14(月) 03:23:06 ]
- 本だったら電車の中とか布団の中とか喫茶店でも読めるだろ
- 514 名前:デフォルトの名無しさん mailto:sage [2008/01/14(月) 03:29:22 ]
- DirectX SDK のサンプルってどうやってみれるの?
- 515 名前:デフォルトの名無しさん mailto:sage [2008/01/14(月) 03:29:44 ]
- >512
俺に聞かんでも自分で良書と思うもんあげればおk。
- 516 名前:デフォルトの名無しさん mailto:sage [2008/01/14(月) 03:39:21 ]
- >>514
DirectX Sample Viewer
- 517 名前:デフォルトの名無しさん mailto:sage [2008/01/14(月) 03:40:32 ]
- 俺のオススメ
Game Programming Gems 1-6 日本語版 (単行本) ゲームプログラミングのための3Dグラフィックス数学 (単行本(ソフトカバー)) 難しいので初心者にはオススメできないけど 絶版になる前には買っておいてほしいと思う 初心者にいいと思ったのは irectX ゲームグラフィックス プログラミング Ver. 2.1 Vista [NextCreator] (NEXT CREATOR) (大型本) ゲームエフェクトマニアックス (C MAGAZINE) (大型本) がおもしろいと思った 小さいプログラムを組みながら覚えるといいと思う 読んでないけどなんかいいかなと思った本は アクションゲームプログラミング (大型本) ホントに初心者がアクションゲーム作れるようになるかどうかやってみてくれw
- 518 名前:484 mailto:sage [2008/01/14(月) 03:46:42 ]
- >>512
たしかに自分が win32 API プログラミングを調べていたころを思い出すと ペゾルト本を読まなければ理解に時間がかったかも。 一度理解すれば API リファレンスでなんとかなるけど 道しるべとして本を頼るのも手だな。
- 519 名前:デフォルトの名無しさん mailto:sage [2008/01/14(月) 04:03:11 ]
- >>509
おちつけ 何か嫌なことでもあったか?
- 520 名前:デフォルトの名無しさん mailto:sage [2008/01/14(月) 04:09:23 ]
- >>509の社内人間関係を綴った本が出版されたら買う(w
- 521 名前:デフォルトの名無しさん mailto:sage [2008/01/14(月) 09:02:00 ]
- >>509は将来会社を引っ張っていく貴重な存在。
- 522 名前:デフォルトの名無しさん mailto:sage [2008/01/14(月) 12:08:48 ]
- 俺も一冊では足らず、DirectXでゲーム制作する本を四冊くらい買ったかな
しかしどうしても本では理解できず 最終的にネットの情報に助けられた事もあるのも確かだな 国内のサイトじゃなかったけど
- 523 名前:デフォルトの名無しさん mailto:sage [2008/01/14(月) 14:23:21 ]
- Managed DirectXでお勧めの入門書ってある?
洋書で黒い表紙の本がなかなか良かったんだけど、 和書だと見つからないんだよトニー
- 524 名前:デフォルトの名無しさん mailto:sage [2008/01/14(月) 14:33:57 ]
- >>523
ないと思う。自分もさらっと調べてみた事あるけど XNA以上に日本じゃ通らないような感じうけるしねぇ。 きっと和訳やその他の場合でも出版で十分なリターンが見込めない領域と思われてる そう邪推するぐらいにはManagedはないねぇ。
- 525 名前:デフォルトの名無しさん mailto:sage [2008/01/14(月) 14:43:21 ]
- C++/CLIでMDXしたいよぅ
- 526 名前:484 mailto:sage [2008/01/14(月) 14:46:55 ]
- 大きめの本屋2件まわって「マスタリングDirectXプログラミング」を買ってきた。
ttp://www.amazon.co.jp/%E3%83%9E%E3%82%B9%E3%82%BF%E3%83%AA%E3%83%B3%E3%82%B0DirectX%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0-%E6%A9%8B%E5%8F%A3-%E3%82%86%E3%81%86%E3%81%99%E3%81%91/dp/4797340258 立ち読みした感想 DirectX 関連本は工学社の緑色の本がいっぱいあったがどれも内容は微妙だった。 「DirectX 9プログラミング入門」は DirectX SDK のサンプルプログラムを載せて、ほんの少しコメントを足しただけのひどい本だった。 前書きにだまされて思わず買ってしまうところだった。 ttp://www.amazon.co.jp/DirectX-9%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E5%85%A5%E9%96%80-Windows-2000-XP%E7%89%88/dp/4886487262/ref=sr_1_13?ie=UTF8&s=books&qid=1200288761&sr=1-13 他にも何冊か読んだけど、あんまりいい本ないな。 ネットだけで十分っていう人はひどい本つかまされたのかな。
- 527 名前:デフォルトの名無しさん mailto:sage [2008/01/14(月) 15:02:52 ]
- それなら、「ネットだけで十分」じゃなく、「本は使えない、ネットの方がマシ」ってなるだろ
先に国語の教科書買った方がよかったんじゃない?
- 528 名前:デフォルトの名無しさん mailto:sage [2008/01/14(月) 15:22:41 ]
- 工学者のDirectXの本はヘルプをなぞるようにできてるだけだけど
色んな要素がつながってない初心者には全体が見渡せていいと思う 俺は超オススメ ただ、緑っぽい外装で中身が違う類似品があるので中身は見て買わないとw
- 529 名前:デフォルトの名無しさん mailto:sage [2008/01/14(月) 16:50:52 ]
- >>523
ManagedってUnmanagedとどう違うの? 関数名やクラス名が違うだけであんまり変わらないと思うんだけど。
- 530 名前:デフォルトの名無しさん mailto:sage [2008/01/14(月) 17:14:43 ]
- .NETかそうでないか
- 531 名前:デフォルトの名無しさん mailto:sage [2008/01/14(月) 17:18:42 ]
- >>516
ありがとうございます
- 532 名前:デフォルトの名無しさん mailto:sage [2008/01/14(月) 17:21:13 ]
- >>517
Game Programming Gemsはなかなか絶版にならないよ
- 533 名前:デフォルトの名無しさん mailto:sage [2008/01/14(月) 17:23:10 ]
- >>517
初心者用の2Dアクションゲーム本ならソフトバンクから出してるよ
- 534 名前:533 mailto:sage [2008/01/14(月) 17:26:44 ]
- あっ出てたw
- 535 名前:デフォルトの名無しさん mailto:sage [2008/01/14(月) 18:17:53 ]
- >>533
うーん、ただ2Dで満足してほしくないな 3Dを知ってる人間が作る2Dゲームのほうが圧倒的に出来がいいからw
- 536 名前:デフォルトの名無しさん mailto:sage [2008/01/14(月) 18:45:14 ]
- >>535
初心者本ね
- 537 名前:デフォルトの名無しさん mailto:sage [2008/01/14(月) 19:03:29 ]
- 3Dを知ってるのと2Dゲームの出来は別に関係ないよ
エフェクトに3Dを使う事もあるだろうけど、それは純粋な2Dゲーではないから もっとも、DirectX自体が2Dを3Dの一部とする考え方なので 2Dゲーを作るにも3Dの知識が少しは必要になる
- 538 名前:デフォルトの名無しさん mailto:sage [2008/01/14(月) 19:13:47 ]
- >>537
全然わかってないな 見た目は2Dでもゲームの空間を3Dにする技術のことを言ってるんだよ 表現次第でグラがいくら2Dでもゲームの空間を3Dにすることは可能 3Dの機能なんて理解してて当たり前
- 539 名前:デフォルトの名無しさん mailto:sage [2008/01/14(月) 19:32:33 ]
- だからそれは見た目2Dなだけの3Dゲーだっての
- 540 名前:デフォルトの名無しさん mailto:sage [2008/01/14(月) 19:33:25 ]
- タクティクスオウガみたいなのを想定しているのか?
- 541 名前:デフォルトの名無しさん mailto:sage [2008/01/14(月) 19:35:27 ]
- >>538が2Dゲーだと思ってるのは3次元上にビルボードを貼り付けた
3Dゲーの事を言ってるんだろ
- 542 名前:デフォルトの名無しさん mailto:sage [2008/01/14(月) 19:41:14 ]
- レイフォースが使ってる表現なんかのことじゃないの?
- 543 名前:デフォルトの名無しさん mailto:sage [2008/01/14(月) 19:46:57 ]
- まあFFなんかでも2Dの美麗マップ上を3D空間座標で
キャラが移動してたりするからな それを2Dゲーと見るか3Dゲーと見るかは人それぞれ
- 544 名前:デフォルトの名無しさん mailto:sage [2008/01/14(月) 20:04:59 ]
- >>543
そうそうそういうことそういうこと 高低差とか奥行きとかあるマップとか理解してもらえるといいと思う 螺旋階段とかw
- 545 名前:デフォルトの名無しさん mailto:sage [2008/01/14(月) 20:05:57 ]
- ま、一般的には3Dゲーって言うけれども
- 546 名前:デフォルトの名無しさん mailto:sage [2008/01/14(月) 20:18:54 ]
- >>545
2Dゲーっていうんじゃない? だって見た目3D機能使ってないように見えるんだよ? 内部の演算まで見通して「あ、これ3Dだ」っていえないと思うんだよね 2Dでうまくやってるかもしれないし
- 547 名前:デフォルトの名無しさん mailto:sage [2008/01/14(月) 20:20:34 ]
- あらかじめレンダリングしたデータを 2D で持ってるだけっしょ。
z-order などを工夫して立体っぽく見せてるだけで。
- 548 名前:デフォルトの名無しさん mailto:sage [2008/01/14(月) 20:29:45 ]
- 本当に重要なのは2Dか3Dかではなく、回転有りか無しかだけどな。
回転無しの3Dは全然難しくない。
- 549 名前:デフォルトの名無しさん mailto:sage [2008/01/14(月) 20:40:41 ]
- 正確には、回転と移動の組み合わせが難しい。
思い通りに座標点を制御するのはプログラムそのものだけじゃなく、 最低でも高三以上の線形代数の知識が必要。
- 550 名前:デフォルトの名無しさん mailto:sage [2008/01/14(月) 21:24:40 ]
- Release()し忘れたDirectxTextureなどを検出する方法ってありますか
- 551 名前:デフォルトの名無しさん mailto:sage [2008/01/14(月) 21:33:32 ]
- CComPtrでも使っとけ
- 552 名前:デフォルトの名無しさん mailto:sage [2008/01/14(月) 21:45:45 ]
- >>517
アクションゲームプログラミング (大型本)持ってるけど玄人以外にはいいと思う ページ構成は糞だけど
- 553 名前:デフォルトの名無しさん mailto:sage [2008/01/14(月) 21:52:11 ]
- >>547
3Dを表現した2Dの絵に当たり判定(地形なども含む)を合わせるときなんかは どうしても内部は3Dでもったほうが楽だ フラグとか利用して根性で2Dでも表現できるっちゃできるけど、 開発が長引いたときに地獄みると思うw
- 554 名前:デフォルトの名無しさん mailto:sage [2008/01/14(月) 22:00:34 ]
- 回転を一切使わない3Dって成り立つのか?
- 555 名前:デフォルトの名無しさん mailto:sage [2008/01/14(月) 22:02:55 ]
- >>554
何の話だよw カメラ固定なら拡大縮小だけでいけるんじゃね?w
- 556 名前:デフォルトの名無しさん mailto:sage [2008/01/14(月) 22:10:59 ]
- スマブラみたいに基本を2Dで、モデルを3Dでっていうのは成り立つ。
そういうのはあんまし線形代数の知識はいらん。
- 557 名前:デフォルトの名無しさん mailto:sage [2008/01/14(月) 23:03:41 ]
- >>556
GCで出たのは結構小技が冴える出来だったけどな 板ポリレーザーなんだけどカメラをぐるぐるまわしてもちゃんとレーザーに見える・・・みたいな
- 558 名前:デフォルトの名無しさん mailto:sage [2008/01/15(火) 01:37:58 ]
- >>554
ジャンプできる2Dアクションゲームは大抵、中身は回転を一切使わない3Dだよ。 古い例だとサークとか。
- 559 名前:デフォルトの名無しさん mailto:sage [2008/01/15(火) 12:52:33 ]
- VRシステムは回転をサポートしていません。
- 560 名前:デフォルトの名無しさん mailto:sage [2008/01/15(火) 22:59:20 ]
- パースペクティブシャドウマップで質問です。
スポットライトの場合、 matrix4x4 toShadowSpace = cameraView * cameraProj * lightView * lightProj; のようにするのが一般的だと思いますが、このlightProjの作り方がわかりません。 cameraの射影空間では、スポットライトのコーンがひしゃげてしまい ワールド空間のように、コーンから一意に射影行列を求める訳にはいきません。 現在はひしゃげたコーンから近似的に射影行列を作っていますが、 満足のいく精度ではありません。世の中一般ではどうするのが普通なんでしょうか?
- 561 名前:デフォルトの名無しさん mailto:sage [2008/01/15(火) 23:09:00 ]
- LPDIRECT3DTEXTURE9 pTexture;
と宣言していて、デストラクタで pTexture->Release(); と解放しようとすると 0x004897d1 でハンドルされていない例外が発生しました: 0xC0000005: 場所 0xcccccccc を読み込み中にアクセス違反が発生しました。 とエラーが出てしまいます。 初期化では D3DXCreateTextureFromFile(pD3DDevice,"sample.bmp",&pTexture) としています。 環境はdirectx9.0 , Visual C++ 2005です。 解放の仕方が悪いのでしょうか?
- 562 名前:デフォルトの名無しさん mailto:sage [2008/01/15(火) 23:10:17 ]
- ロード失敗したのに解放しようとしてるとか
- 563 名前:デフォルトの名無しさん mailto:sage [2008/01/15(火) 23:21:09 ]
- >562
そう思って if ( pTexture != NULL ) { pTexture->Release(); } としてみたんですが、それでもエラーが出てしまいます。
- 564 名前:デフォルトの名無しさん mailto:sage [2008/01/15(火) 23:23:54 ]
- NULLで初期化してる?
- 565 名前:デフォルトの名無しさん mailto:sage [2008/01/15(火) 23:30:11 ]
- >564
やってないことに気づいて if(FAILED(D3DXCreateTextureFromFile(pD3DDevice,"select_back.bmp",&pTexture))){ pTexture = NULL; return E_FAIL; } としてみましたが、やはりエラーが出てしまいます。
- 566 名前:デフォルトの名無しさん mailto:sage [2008/01/15(火) 23:38:02 ]
- if ( pTexture != NULL ) {
pTexture->Release(); pTexture = NULL; } 次はこれだ! ・・・なーんか違うような気もするが・・・w
- 567 名前:デフォルトの名無しさん mailto:sage [2008/01/15(火) 23:39:19 ]
- なんかたくさん聞かなきゃいけないけど
そもそもD3DDeviceは取得できてるの? それとテクスチャロードして、それ使って表示できてる?
- 568 名前:デフォルトの名無しさん mailto:sage [2008/01/15(火) 23:43:14 ]
- 当然アドレスは調べたんだろうな。
- 569 名前:デフォルトの名無しさん mailto:sage [2008/01/15(火) 23:46:55 ]
- >567
すいません、初期化やる場所が悪かったみたいで、コンストラクタ内でやったらか解決しました。 ありがとうございます。
- 570 名前:デフォルトの名無しさん mailto:sage [2008/01/16(水) 00:07:06 ]
-
} catch (...) {
- 571 名前:デフォルトの名無しさん mailto:sage [2008/01/16(水) 00:31:47 ]
- 変数の初期化は、その変数を最初に作ったときに必ずするべきだ
クラスのメンバ変数なら全てコンストラクタで初期化すべし
- 572 名前:デフォルトの名無しさん mailto:sage [2008/01/16(水) 07:25:37 ]
- >>569
はぁ? しばらく悩みそうだなお前・・・w
- 573 名前:デフォルトの名無しさん mailto:sage [2008/01/16(水) 19:55:28 ]
- Win32APIはある程度書けるけど、DirectXはまったく知らないって状態なんだけど
どの本買って勉強すればいい?
- 574 名前:デフォルトの名無しさん mailto:sage [2008/01/16(水) 19:55:57 ]
- ネットで十分
- 575 名前:デフォルトの名無しさん mailto:sage [2008/01/16(水) 20:20:53 ]
- そもそも何をしたいのかすら説明するのを面倒くさがる、
その必要性を鑑みることの出来ない人間が何をやっても無駄。
- 576 名前:デフォルトの名無しさん mailto:sage [2008/01/16(水) 20:48:54 ]
- >>575
氏ね
- 577 名前:デフォルトの名無しさん mailto:sage [2008/01/16(水) 21:32:46 ]
- 反論できずに罵倒しか出てこない場合、図星だったってことだ
|

|