1 :デフォルトの名無しさん2010/10/05(火) 22:13:35
■前スレ
http://hibari.2ch.net/test/read.cgi/tech/1190558621/
■公式
http://www.microsoft.com/japan/xna/
http://xna-studio.jp/
http://blogs.msdn.com/xnajapan/
■関連スレ
【Xbox 360】 XNA Game Studio その10 【C#】
http://hibari.2ch.net/test/read.cgi/gamedev/1254356087/
C#, C♯, C#相談室 Part62
http://hibari.2ch.net/test/read.cgi/tech/1284775031/
ここは技術的な質問スレです。XNAプログラミングに関係のない話はご遠慮ください。
http://hibari.2ch.net/test/read.cgi/tech/1190558621/
■公式
http://www.microsoft.com/japan/xna/
http://xna-studio.jp/
http://blogs.msdn.com/xnajapan/
■関連スレ
【Xbox 360】 XNA Game Studio その10 【C#】
http://hibari.2ch.net/test/read.cgi/gamedev/1254356087/
C#, C♯, C#相談室 Part62
http://hibari.2ch.net/test/read.cgi/tech/1284775031/
ここは技術的な質問スレです。XNAプログラミングに関係のない話はご遠慮ください。
2 :デフォルトの名無しさん2010/10/05(火) 23:03:10
>>1乙
3 :デフォルトの名無しさん2010/10/06(水) 00:59:04
敵弾で苦労してるという話見ると
多彩な弾幕だしてくるCAVEとか、やっぱすごいんだなと思う
多彩な弾幕だしてくるCAVEとか、やっぱすごいんだなと思う
6 :デフォルトの名無しさん2010/10/07(木) 14:07:09
剣を振った攻撃を一度だけあてるにはどうすればいいでしょうか?
剣を振ってるモーション中にBoundingBoxが重なったらライフを減らすようにしてますが
重なってる間減り続けてしまいます。
剣を振ってるモーション中にBoundingBoxが重なったらライフを減らすようにしてますが
重なってる間減り続けてしまいます。
8 :デフォルトの名無しさん2010/10/07(木) 17:47:50
>>6
ヒットする条件にbool型の変数を用意して
ヒットしたらfalseに切り替えるといいかも。
ヒットする条件にbool型の変数を用意して
ヒットしたらfalseに切り替えるといいかも。
7 :デフォルトの名無しさん2010/10/07(木) 17:45:52
今回のヒットで既に減らしたよん、という事を覚えておけばいい
9 :デフォルトの名無しさん2010/10/07(木) 18:19:33
>6
一体に付き一発ずつ当てたい場合なら
敵のダメージ側に無敵時間を設けるか
どの攻撃にヒットしたっていうのを敵キャラに残しといて、前回と同じ攻撃はスルーするように。ダメージモーションが終わったらリセット。
一番最初に当てたキャラのみに当てたい場合なら
ヒットした後にプレイヤー側で攻撃終了フラグを立てる。次の攻撃やったり攻撃終了したりしたらフラグリセット。
一体に付き一発ずつ当てたい場合なら
敵のダメージ側に無敵時間を設けるか
どの攻撃にヒットしたっていうのを敵キャラに残しといて、前回と同じ攻撃はスルーするように。ダメージモーションが終わったらリセット。
一番最初に当てたキャラのみに当てたい場合なら
ヒットした後にプレイヤー側で攻撃終了フラグを立てる。次の攻撃やったり攻撃終了したりしたらフラグリセット。
10 :デフォルトの名無しさん2010/10/07(木) 19:06:42
FPSを作りたいんですが、カメラ制御で苦戦してます。
参考になるサイトや本はないでしょうか?
http://creators.xna.com/ja-jp/sample/chasecamera
今はこのサンプルソースと睨めっこしている最中ですが
まさか自動追尾カメラがこんなに複雑なコードで制御されてたとは・・・・・・
世の中の3Dゲームが全て神ゲーに見えて怖いです・・・・・・
参考になるサイトや本はないでしょうか?
http://creators.xna.com/ja-jp/sample/chasecamera
今はこのサンプルソースと睨めっこしている最中ですが
まさか自動追尾カメラがこんなに複雑なコードで制御されてたとは・・・・・・
世の中の3Dゲームが全て神ゲーに見えて怖いです・・・・・・
13 :デフォルトの名無しさん2010/10/07(木) 21:42:51
>>10
具体的にわからない部分があるのでなく全体的に理解が難しいならば
参考書を読破するのがいいんじゃない、かなぁ。
具体的にわからない部分があるのでなく全体的に理解が難しいならば
参考書を読破するのがいいんじゃない、かなぁ。
11 :デフォルトの名無しさん2010/10/07(木) 21:25:08
XNAでは通常日本語フォントの文字列を表示できないとありますが、
欧文フォントだと簡単に表示できるのでしょうか?
欧文フォントだと簡単に表示できるのでしょうか?
12 :デフォルトの名無しさん2010/10/07(木) 21:30:12
さすがに文字の表示くらいググればいくらでも出てくるだろ…
14 :デフォルトの名無しさん2010/10/07(木) 21:48:12
「ゲーム作りで学ぶ」のドライビングゲームの項で
日本語も表示してるっぽいよ???
日本語も表示してるっぽいよ???
16 :デフォルトの名無しさん2010/10/07(木) 22:13:11
2Dゲームで拡縮を実装したいのですが、良い方法がみつからず行き詰っています。
例えば、ドラキュラHDの拡縮や、デススマ2やエスプガルーダ2にある
画面サイズアジャストのように、画面にカメラをよせたり離したり
するような処理は可能でしょうか。
例えば、ドラキュラHDの拡縮や、デススマ2やエスプガルーダ2にある
画面サイズアジャストのように、画面にカメラをよせたり離したり
するような処理は可能でしょうか。
17 :デフォルトの名無しさん2010/10/07(木) 22:15:44
最近見た気がするけどSpriteBatch.Beginの引数に変換行列を渡す
18 :デフォルトの名無しさん2010/10/09(土) 01:04:35
>>17
ありがとうございます。
検索してみたところ、実装したい処理をしているサイトをみつけました。
ただ、具体的にどのような記述をするものなのかがわかりません。
3D知識もからみそうなので1からチェックしたいと思うのですが
参考にできる本やサイトなどありますでしょうか。
あと、この処理が可能とわかっただけでも安心できましたので感謝いたします。
ありがとうございます。
検索してみたところ、実装したい処理をしているサイトをみつけました。
ただ、具体的にどのような記述をするものなのかがわかりません。
3D知識もからみそうなので1からチェックしたいと思うのですが
参考にできる本やサイトなどありますでしょうか。
あと、この処理が可能とわかっただけでも安心できましたので感謝いたします。
19 :デフォルトの名無しさん2010/10/09(土) 10:36:45
>>18
http://msdn.microsoft.com/ja-jp/library/bb194912%28XNAGameStudio.31%29.aspx
XNA使うには行列とベクトルの基礎知識が必要。わからないなら高校数学やりなおし。
その上で「アフィン変換」でググる。
http://msdn.microsoft.com/ja-jp/library/bb194912%28XNAGameStudio.31%29.aspx
XNA使うには行列とベクトルの基礎知識が必要。わからないなら高校数学やりなおし。
その上で「アフィン変換」でググる。
20 :デフォルトの名無しさん2010/10/10(日) 01:56:14
>>19
これまで既存知識でやりくりしていたので、かなり大変そうです。
回転についてだけどそれを理解しないとはじまらない・・・
とにかく調べながら頑張ります。ありがとうございました。
これまで既存知識でやりくりしていたので、かなり大変そうです。
回転についてだけどそれを理解しないとはじまらない・・・
とにかく調べながら頑張ります。ありがとうございました。
21 :デフォルトの名無しさん2010/10/10(日) 03:37:04
こういうやりとり見ると3Dに入るととたんにレベルが別次元にとぶのを感じるわ
22 :デフォルトの名無しさん2010/10/10(日) 11:08:26
>>21
別に2次元でも4次元でも行列を使ったアフィン変換の記述は出来るぞ
別に2次元でも4次元でも行列を使ったアフィン変換の記述は出来るぞ
24 :デフォルトの名無しさん2010/10/10(日) 19:16:25
2Dだけど、ポジションと、アニメと変数とあたり判定だけで
一応ゲーム作れてしまっているからなー。
一応ゲーム作れてしまっているからなー。
25 :デフォルトの名無しさん2010/10/10(日) 19:43:18
そもそも行列とは? なんて、哲学的な知識はいらない。
結果だけしっていて、それが使えれば問題。
たとえば回転行列がなぜああいう形式なのか、知らなくても問題はない。
どう使えばどんな結果が得られるのか、それが必要。
というか、それができないヤツはプログラミングなんて?
結果だけしっていて、それが使えれば問題。
たとえば回転行列がなぜああいう形式なのか、知らなくても問題はない。
どう使えばどんな結果が得られるのか、それが必要。
というか、それができないヤツはプログラミングなんて?
29 :デフォルトの名無しさん2010/10/10(日) 23:56:09
計算が難しいんじゃなくてどうやって書くのかの書式がわからないだけなんだと思う
入門サイト系のサンプルって2Dのが多くてそれの改変からはじめる初心者が多いからね
入門サイト系のサンプルって2Dのが多くてそれの改変からはじめる初心者が多いからね
30 :デフォルトの名無しさん2010/10/11(月) 00:07:15
そういうスタイルで勉強するにはXNAは複雑すぎるとおもう
あまりにもおまじないが多くなりすぎる
あまりにもおまじないが多くなりすぎる
31 :デフォルトの名無しさん2010/10/11(月) 00:16:44
>>30
それこそ逆だろ。
なにをしたいかにもよるが、延々デバイスの初期化で行き詰まったりするよりは、
サンプルを改変しながら、その改変での動作変更を見て勉強する方が早いと漏れは思う。
サンプル眺めてると、だんだん全体像が頭に入ってくるし。
ただ、デバイスの初期化とか、根本的な部分を学ぶにはXNAは不適当。
隠蔽されちゃって見えんからな。
それこそ逆だろ。
なにをしたいかにもよるが、延々デバイスの初期化で行き詰まったりするよりは、
サンプルを改変しながら、その改変での動作変更を見て勉強する方が早いと漏れは思う。
サンプル眺めてると、だんだん全体像が頭に入ってくるし。
ただ、デバイスの初期化とか、根本的な部分を学ぶにはXNAは不適当。
隠蔽されちゃって見えんからな。
32 :デフォルトの名無しさん2010/10/11(月) 02:33:50
>>30
勉強が目的なんじゃなくて、XNAで(もしくはXBOXの)作りたいゲームを作ることが
目的という人が多いだろうからなぁ、ことXNAに関しては。
そういう方向から入った人は、書式を知ってからその意味を理解するパターンも多い。
ていうか、現に参考書はそういう方法論とってるのが多いし。
勉強が目的なんじゃなくて、XNAで(もしくはXBOXの)作りたいゲームを作ることが
目的という人が多いだろうからなぁ、ことXNAに関しては。
そういう方向から入った人は、書式を知ってからその意味を理解するパターンも多い。
ていうか、現に参考書はそういう方法論とってるのが多いし。
33 :デフォルトの名無しさん2010/10/11(月) 02:58:29
個人的に受験で例えるなら
「C+やC#の理解から深める=基本書の読破」
「サンプル見ての勉強=過去問を沢山」
前者は確実に地力はつくが無駄知識もあり効率が悪い。
後者は目的達成の近道だが応用はきかず学んだ部分以外は零からの学習が要る。
新規の質問者は前者が多いけど回答者は後者の方法論で学んできた人が多くて
前者できた人間には遠い道に見える回答が多い、みたいな。
本当に2Dか3Dかの差なのかな??
「C+やC#の理解から深める=基本書の読破」
「サンプル見ての勉強=過去問を沢山」
前者は確実に地力はつくが無駄知識もあり効率が悪い。
後者は目的達成の近道だが応用はきかず学んだ部分以外は零からの学習が要る。
新規の質問者は前者が多いけど回答者は後者の方法論で学んできた人が多くて
前者できた人間には遠い道に見える回答が多い、みたいな。
本当に2Dか3Dかの差なのかな??
34 :デフォルトの名無しさん2010/10/11(月) 03:03:23
C+ ? はおいておいて、普通に経験の問題です。
自分でもかけないのに、他人のコード読めるはずもなく。
自分でもかけないのに、他人のコード読めるはずもなく。
35 :デフォルトの名無しさん2010/10/11(月) 03:16:08
>>34
おまえは英語読めるか? 書けなくても読める漢字もたくさんあるだろ?
人間の頭はそういうふうにできてる。
初心者に完動品プログラムはかけないかもしれないが、動くプログラムのソースを読むことはできる。
関数名とか、基本が英語だからなんとなく機能を類推できるものも多い。
分からなければリファレンスの出番(英単語を調べたことぐらいあるだろ?)。
文法は参考書で覚える方がいいと思うが、APIはソースから入ってもいいと思う。
おまえは英語読めるか? 書けなくても読める漢字もたくさんあるだろ?
人間の頭はそういうふうにできてる。
初心者に完動品プログラムはかけないかもしれないが、動くプログラムのソースを読むことはできる。
関数名とか、基本が英語だからなんとなく機能を類推できるものも多い。
分からなければリファレンスの出番(英単語を調べたことぐらいあるだろ?)。
文法は参考書で覚える方がいいと思うが、APIはソースから入ってもいいと思う。
40 :デフォルトの名無しさん2010/10/11(月) 14:58:59
>>34
でも、サンプルコード+コードの説明
という形式が初心者向け教本や入門用サイトのおきまりだし
理解は早そうとも思う。
forループで配列に代入とか、自分で思いつくより、みせられて
ああ、こういう考え方をするのか、と理解するのがイイんじゃないかなと。
でも、サンプルコード+コードの説明
という形式が初心者向け教本や入門用サイトのおきまりだし
理解は早そうとも思う。
forループで配列に代入とか、自分で思いつくより、みせられて
ああ、こういう考え方をするのか、と理解するのがイイんじゃないかなと。
36 :デフォルトの名無しさん2010/10/11(月) 03:42:29
ソースを読めるレベルに達しているのかのか、というつもりで書いた。
確かに言い方が極端すぎた。
確かに言い方が極端すぎた。
37 :デフォルトの名無しさん2010/10/11(月) 10:58:28
プログラムの勉強の仕方までなんて相談には載れないからどっかいけよ
38 :デフォルトの名無しさん2010/10/11(月) 11:55:21
最低限、C#の経験なくてもソース見たら何書いてるかだいたい解る人向けだな
プログラミング初めての人にはお勧めできない
遊びながら覚えるにしてもWinFormsから入ったほうがいい
プログラミング初めての人にはお勧めできない
遊びながら覚えるにしてもWinFormsから入ったほうがいい
39 :デフォルトの名無しさん2010/10/11(月) 13:35:39
XNA でもまだなんか DirectX 的なレイヤーの臭い残ってるしね。
今まで DirectX 触ったことがあるとか言う人だったら、かなり簡単って思えるんだろうけども。
今まで DirectX 触ったことがあるとか言う人だったら、かなり簡単って思えるんだろうけども。
41 :デフォルトの名無しさん2010/10/11(月) 18:29:23
ゲーム作りで学ぶC#の、多次元配列の項目ですが175ページで
int[] array = new int[3,3];
となっていますが
int[,] array = new int[3,3];
の間違いかな。エラーがでるので左に「,」を入れたらうまくいきました。
int[] array = new int[3,3];
となっていますが
int[,] array = new int[3,3];
の間違いかな。エラーがでるので左に「,」を入れたらうまくいきました。
42 :デフォルトの名無しさん2010/10/11(月) 18:42:33
誤植じゃないの?
出版社のサポートページとかに誤植情報載ってると思うから見ておいた方が良いかもね
出版社のサポートページとかに誤植情報載ってると思うから見ておいた方が良いかもね
43 :デフォルトの名無しさん2010/10/11(月) 19:17:05
リファレンスで文法ぐらい調べろよ。
学習センスゼロだな。
学習センスゼロだな。
47 :デフォルトの名無しさん2010/10/12(火) 01:19:42
>>43
自己解決した上に入門書のミスの告知をしたんだから褒めたまえよ
自己解決した上に入門書のミスの告知をしたんだから褒めたまえよ
49 :デフォルトの名無しさん2010/10/13(水) 20:04:43
3Dゲームのプログラミングに役立つオススメ参考書ってありますか?
「ゲーム作りで学ぶ〜」は読んだんですが、3Dは文字通り次元が違って苦戦してます。
特に、カメラ制御・当たり判定について詳しく解説してあるとありがたいのですが・・・・・・
「ゲーム作りで学ぶ〜」は読んだんですが、3Dは文字通り次元が違って苦戦してます。
特に、カメラ制御・当たり判定について詳しく解説してあるとありがたいのですが・・・・・・
53 :デフォルトの名無しさん2010/10/14(木) 15:03:38
>>49
もし2D→3Dの移行にベターな本があったら報告きぼん。
自分もゲーム作りで学ぶ〜は4,5冊読んだなかでわかりやすかったので
オススメしたけど、読んでみないとわからないしね。
てわけで3D初心者マニュアル本発掘の先駆者になってほしい。
もし2D→3Dの移行にベターな本があったら報告きぼん。
自分もゲーム作りで学ぶ〜は4,5冊読んだなかでわかりやすかったので
オススメしたけど、読んでみないとわからないしね。
てわけで3D初心者マニュアル本発掘の先駆者になってほしい。
51 :デフォルトの名無しさん2010/10/14(木) 12:20:32
普通のDirectXの本読むのがいいと思う
APIはだいたいXNAと同じだしC#わかるならちょっと勉強すればC++も十分読める
APIはだいたいXNAと同じだしC#わかるならちょっと勉強すればC++も十分読める
52 :デフォルトの名無しさん2010/10/14(木) 12:34:32
解説がないと分からないようではなぁ
頭が悪すぎだと思うからやめといたほうがいい
頭が悪すぎだと思うからやめといたほうがいい
55 :デフォルトの名無しさん2010/10/15(金) 02:27:52
当たり判定なら
ゲームプログラミングのためのリアルタイム衝突判定
ちょいと高いし、プログラミング始めたばかりだと読むの辛い気もする。
あと、XNA ならライブラリ側で実装されてるし、辞書にさえもならないだろうけど。
まあ、興味があれば。
ゲームプログラミングのためのリアルタイム衝突判定
ちょいと高いし、プログラミング始めたばかりだと読むの辛い気もする。
あと、XNA ならライブラリ側で実装されてるし、辞書にさえもならないだろうけど。
まあ、興味があれば。
56 :デフォルトの名無しさん2010/10/15(金) 07:31:58
Visual C# 2008で使うXNAは3.1日本語版でいいでしょうか?
57 :デフォルトの名無しさん2010/10/15(金) 23:51:12
>>56
おk
おk
60 :デフォルトの名無しさん2010/10/16(土) 19:34:03
画面遷移について教えてください。
ゲームでは最初メニュー画面で何か選ぶとメインのゲーム画面に
いったりしますがこういうのはどう処理にするのがいいのでしょうか?
フォームなら新しいフォームをnewして自分を消せばいいのですが
そういうのじゃないですよね?
ゲームでは最初メニュー画面で何か選ぶとメインのゲーム画面に
いったりしますがこういうのはどう処理にするのがいいのでしょうか?
フォームなら新しいフォームをnewして自分を消せばいいのですが
そういうのじゃないですよね?
61 :デフォルトの名無しさん2010/10/16(土) 19:43:25
62 :デフォルトの名無しさん2010/10/16(土) 20:12:31
>>61
うひょー
むっず。
うひょー
むっず。
63 :デフォルトの名無しさん2010/10/16(土) 21:51:18
自分は、gamestate変数をint型で用意して
gamestate=0がタイトル、1がオプション、2がステージ、、、10がゲームオーバー画面
みたく分けてやってるな。0のときスタートボタンで2に以降して
gamestate=2なのを条件にゲーム本編の処理を開始。
if (gamestate==2){処理内容、、、}みたいにでかい{}でそれぞれくくる。
ぜんぶUpdateメソッドに入ることになります。
gamestate=0がタイトル、1がオプション、2がステージ、、、10がゲームオーバー画面
みたく分けてやってるな。0のときスタートボタンで2に以降して
gamestate=2なのを条件にゲーム本編の処理を開始。
if (gamestate==2){処理内容、、、}みたいにでかい{}でそれぞれくくる。
ぜんぶUpdateメソッドに入ることになります。
76 :デフォルトの名無しさん2010/10/18(月) 09:45:09
整数はintがほとんどでたまにlong使うくらいでintより小さいのはめったに使わないな
boolの代わりに使ったり>>63のようなマジックナンバーは論外だけど
boolの代わりに使ったり>>63のようなマジックナンバーは論外だけど
78 :デフォルトの名無しさん2010/10/18(月) 10:51:59
>>76
マジックナンバーも本人が把握できてれば別にいいと思うけどなぁ。
マジックナンバーも本人が把握できてれば別にいいと思うけどなぁ。
80 :デフォルトの名無しさん2010/10/18(月) 14:24:51
>>78
なぜダメかと言うと、本人も把握できなくなるからだ
なぜダメかと言うと、本人も把握できなくなるからだ
65 :デフォルトの名無しさん2010/10/17(日) 11:21:23
boolですむところもintを使うのが初心者クオリティ
だって変数とわかりやすいんだモン
だって変数とわかりやすいんだモン
67 :デフォルトの名無しさん2010/10/17(日) 11:45:37
>>65
それ、C# から始めればいいものをわざわざ C から教える教育の問題じゃないか?
それ、C# から始めればいいものをわざわざ C から教える教育の問題じゃないか?
70 :デフォルトの名無しさん2010/10/17(日) 15:08:33
今時1bitのbool型なんて存在しないだろ
詰め込みたいならビットマスクを隠蔽する関数群を使えって感じだろ。
それはともかく、boolにする意味はメモリの節約ではなく誤った代入などを防ぐため。
暗黙の変換をされちゃう言語だと意味ないが。
詰め込みたいならビットマスクを隠蔽する関数群を使えって感じだろ。
それはともかく、boolにする意味はメモリの節約ではなく誤った代入などを防ぐため。
暗黙の変換をされちゃう言語だと意味ないが。
71 :デフォルトの名無しさん2010/10/17(日) 16:46:13
>>70
誰か、boolが1ビットなんて言ってる? w
誰か、boolが1ビットなんて言ってる? w
72 :692010/10/17(日) 16:50:55
気にしてはいけないと書いたのはbool型が実際にメモリ上でどう表されるか気にしてはいけなという意味ね
わかりにくくてすまん
わかりにくくてすまん
74 :デフォルトの名無しさん2010/10/18(月) 02:16:18
intの汎用性が高いので少数でもなければint使ってるけど
byteを使うほうが処理速度に影響するぐらいメモリは節約されますか?
byteを使うほうが処理速度に影響するぐらいメモリは節約されますか?
75 :デフォルトの名無しさん2010/10/18(月) 03:57:23
うーん、別に性能名はどうでもいいんだけども。
int を真偽値代わりに使うと、true == true が必ずしも true にならないとか、問題いっぱいある。
int を真偽値代わりに使うと、true == true が必ずしも true にならないとか、問題いっぱいある。
79 :デフォルトの名無しさん2010/10/18(月) 12:08:28
enumの型指定(: byteとか)は特に理由が無い限りはやらないほうがいいよ
MSのガイドラインで非推奨だし、その使い方だと特にメモリの節約にもならないだろうし
ベースがintであることを前提にできたほうが扱いやすい
MSのガイドラインで非推奨だし、その使い方だと特にメモリの節約にもならないだろうし
ベースがintであることを前提にできたほうが扱いやすい
81 :デフォルトの名無しさん2010/10/18(月) 16:21:00
把握できるかどうかは置いといて、わざわざマジックナンバーを使う意味がわからない
state = 10; //ゲームオーバー画面へ
と書くんだったら(コメントくらいは書いてると信じる)
state = GameState.GameOver;
と書いた方が楽じゃん
state = 10; //ゲームオーバー画面へ
と書くんだったら(コメントくらいは書いてると信じる)
state = GameState.GameOver;
と書いた方が楽じゃん
84 :デフォルトの名無しさん2010/10/18(月) 23:49:57
プログラムとは少し違うんですがXNA関連で質問です。
xna creators club(サンプルがおいてあったサイト)が
app hubというサイトに変わっているようなのですが、
目的のサンプルを見つけきれません。探し方を教えていただけないでしょうか?
educationのcontent catalogにサンプルがおいてあるのはわかったのですが、
カテゴリを絞る検索手段のみで文字列での検索手段がありません。
全文検索はあるのですが、フォーラムなどが引っかかってしまいます。
xna creators club(サンプルがおいてあったサイト)が
app hubというサイトに変わっているようなのですが、
目的のサンプルを見つけきれません。探し方を教えていただけないでしょうか?
educationのcontent catalogにサンプルがおいてあるのはわかったのですが、
カテゴリを絞る検索手段のみで文字列での検索手段がありません。
全文検索はあるのですが、フォーラムなどが引っかかってしまいます。
85 :デフォルトの名無しさん2010/10/19(火) 00:05:00
公式サイトの質問なら公式フォーラムで聞いたほうがいんでない?
書き込み少ないからさ。。。
書き込み少ないからさ。。。
86 :デフォルトの名無しさん2010/10/19(火) 07:08:54
すみません。XNAってモデルファイルを動的に読み込むことってできないのでしょうか?
88 :デフォルトの名無しさん2010/10/19(火) 12:18:24
動的にの意味が分からない。起動時じゃなくて必要になったときに初めて読み込みたい
という意味なら、必要な時にContentManager.Loadを呼ぶだけ。
コンテンツパイプラインを通したくないなら、読み込む処理を自分で書く必要がある。
その場合ModelMeshは使えないと思うので自分でメッシュクラスとモデルクラス自作。
お勧めはできない。
という意味なら、必要な時にContentManager.Loadを呼ぶだけ。
コンテンツパイプラインを通したくないなら、読み込む処理を自分で書く必要がある。
その場合ModelMeshは使えないと思うので自分でメッシュクラスとモデルクラス自作。
お勧めはできない。
90 :デフォルトの名無しさん2010/10/19(火) 12:41:13
PCで実行するなら普通に生ファイル読み書きすればいいだろう
92 :デフォルトの名無しさん2010/10/19(火) 14:41:38
カス子使ってるニンジャチョップみたいのはどうやってるんだろう
93 :デフォルトの名無しさん2010/10/19(火) 14:42:51
だから普通にファイルから読み込む処理書いて自前で描画するだけ。
XNAのModelは使えないけど、どうせMMDの仕様に合わせて
そこらへんの自作は必要でしょ。たぶん君にはそれは無理だけど
MMD for XNAというのがあるらしいから試してみたら。
XNAのModelは使えないけど、どうせMMDの仕様に合わせて
そこらへんの自作は必要でしょ。たぶん君にはそれは無理だけど
MMD for XNAというのがあるらしいから試してみたら。
94 :デフォルトの名無しさん2010/10/19(火) 15:02:29
なるほど。Xファイルを自分で解析して頂点バッファを作って
プリミティブに描画するってことですね
プリミティブに描画するってことですね
95 :デフォルトの名無しさん2010/10/20(水) 17:08:36
TimeSpanで時間を表示するとき、
(時間:分:秒.ミリ秒7ケタ)ではなく、
(分:秒:ミリ秒2ケタ)で表示することは可能でしょうか?
(時間:分:秒.ミリ秒7ケタ)ではなく、
(分:秒:ミリ秒2ケタ)で表示することは可能でしょうか?
96 :デフォルトの名無しさん2010/10/20(水) 18:05:01
可能だけど、今はToString()かな?
String.Format使うとか
String.Format使うとか
112 :デフォルトの名無しさん2010/10/26(火) 15:26:56
>>96
今はspriteBatch.DrawStringで表示しています。
今はspriteBatch.DrawStringで表示しています。
113 :デフォルトの名無しさん2010/10/26(火) 16:33:43
>>96
String.Formatを使うことで(分:秒:ミリ秒)で表示することができました。
ただ、分と秒は2ケタで表示されるのですが、
ミリ秒のところだけ3ケタで表示されてしまいます。
String.Formatを使うことで(分:秒:ミリ秒)で表示することができました。
ただ、分と秒は2ケタで表示されるのですが、
ミリ秒のところだけ3ケタで表示されてしまいます。
97 :デフォルトの名無しさん2010/10/21(木) 12:51:43
メッシュってどういう単位でしょう?
メタセコに球と立方体を置いたとすると
メッシュが2個ってことでしょうか?
メタセコに球と立方体を置いたとすると
メッシュが2個ってことでしょうか?
98 :デフォルトの名無しさん2010/10/21(木) 14:29:02
>>97
髪の毛を一部脱色して白くする奴居るだろ?
あのような単位だよ。
髪の毛を一部脱色して白くする奴居るだろ?
あのような単位だよ。
99 :デフォルトの名無しさん2010/10/21(木) 14:37:57
>>98
なるほど。わかりません。
なるほど。わかりません。
102 :デフォルトの名無しさん2010/10/22(金) 19:59:56
.NET4ベースなの?驚きだな
360やWP7のCLRって2.0ベースだったはずだけどそこらへんはどうなってるんだろう
360やWP7のCLRって2.0ベースだったはずだけどそこらへんはどうなってるんだろう
104 :デフォルトの名無しさん2010/10/22(金) 21:21:45
上
>XNA Game Studio 4.0 includes the XNA Framework 4.0,
> which is a set of managed libraries designed for game development
> based on Microsoft .NET Framework 4.
>XNA Game Studio 4.0 includes the XNA Framework 4.0,
> which is a set of managed libraries designed for game development
> based on Microsoft .NET Framework 4.
105 :デフォルトの名無しさん2010/10/23(土) 02:53:55
雛形にあるUnload()メソッドはどんな時に使うんでしょうか?
ドット絵の見下ろしアクションゲーの製作序盤なのですが、登場キャラを
増やすにしたがってUnloadしてメモリの空きを確保するようにしないと
重くてどうしようもなくなったりしてしまいますか?
ガベージコレクションという機能で自動的にメモリを最適化してくれる
という話もききましたが。
ドット絵の見下ろしアクションゲーの製作序盤なのですが、登場キャラを
増やすにしたがってUnloadしてメモリの空きを確保するようにしないと
重くてどうしようもなくなったりしてしまいますか?
ガベージコレクションという機能で自動的にメモリを最適化してくれる
という話もききましたが。
106 :デフォルトの名無しさん2010/10/23(土) 11:31:57
自分でUnloadContentを呼んではいけません。必要な時に勝手に呼ばれます。
コンテンツの管理はステージ単位くらいでいいと思います。そんなに心配する必要はありません。
コンテンツの管理はステージ単位くらいでいいと思います。そんなに心配する必要はありません。
107 :デフォルトの名無しさん2010/10/23(土) 18:11:30
>>106
ありがとうございました。
メモリ管理のことも安心しました。
ありがとうございました。
メモリ管理のことも安心しました。
108 :デフォルトの名無しさん2010/10/24(日) 21:45:47
そういえばインディーズゲームを遊んでて処理オチとかみたことないね。
109 :デフォルトの名無しさん2010/10/24(日) 21:53:48
そりゃ個人レベルのしょぼいゲームで処理落ちしてたら話にならんわ
処理落ちの原因なんてほとんど描画なんだからC#だろうと関係ないし
処理落ちの原因なんてほとんど描画なんだからC#だろうと関係ないし
110 :デフォルトの名無しさん2010/10/24(日) 22:08:05
360上でさえ快適に動けばいいんだから当たり前。
PCゲームと違って、試作品を実機で動かしてみてガクガクなら確実に他の環境でも同じなんだから調整が簡単。
PCゲームと違って、試作品を実機で動かしてみてガクガクなら確実に他の環境でも同じなんだから調整が簡単。
111 :デフォルトの名無しさん2010/10/26(火) 02:11:21
XBLAのスコットがクオリティ高すぎて製作中のゲームがカスに思えてきた。
もっと練り直すわ。
もっと練り直すわ。
114 :デフォルトの名無しさん2010/10/26(火) 18:41:32
4.0にしたらFromFileがなくなってて参考書全く役立たずで涙目
115 :デフォルトの名無しさん2010/10/26(火) 21:09:47
>>113
var ts = new TimeSpan(0, 0, 12, 34, 567);
var dt = new DateTime(ts.Ticks);
var str = dt.ToString("mm:ss:ff");
書式指定使うならこうかなあ。本来間違った使い方だけど。
.NET4ではDateTimeにしなくてもTimeSpan.ToStringにフォーマットを直接指定できるようになった。
>>114
そんなもん使ってる参考書が悪い
var ts = new TimeSpan(0, 0, 12, 34, 567);
var dt = new DateTime(ts.Ticks);
var str = dt.ToString("mm:ss:ff");
書式指定使うならこうかなあ。本来間違った使い方だけど。
.NET4ではDateTimeにしなくてもTimeSpan.ToStringにフォーマットを直接指定できるようになった。
>>114
そんなもん使ってる参考書が悪い
116 :デフォルトの名無しさん2010/10/26(火) 21:30:50
4.0に移行した奴ってどんだけいるんだろ
シコシコ作ってる奴は面倒くさくて移行しないし
作ってない奴は情報不足で玉砕するし
海外フォーラム読める奴は楽勝なのか?
シコシコ作ってる奴は面倒くさくて移行しないし
作ってない奴は情報不足で玉砕するし
海外フォーラム読める奴は楽勝なのか?
118 :デフォルトの名無しさん2010/10/26(火) 21:39:22
なんで移行しないの?
ついでに公式フォーラムで2.0を使ってる人がいて不思議なんだけど
ついでに公式フォーラムで2.0を使ってる人がいて不思議なんだけど
122 :デフォルトの名無しさん2010/10/27(水) 02:01:33
>>118
今のままで、ちゃんと無難に製作すすんでるのに
変な不具合のリスク負いたくないし、それに見合ったメリットもないだろうと
今のままで、ちゃんと無難に製作すすんでるのに
変な不具合のリスク負いたくないし、それに見合ったメリットもないだろうと
119 :デフォルトの名無しさん2010/10/26(火) 21:40:17
英語ダメで新しいもの好きでもないような奴がXNAなんかに手を出すのがもとより間違ってる
123 :デフォルトの名無しさん2010/10/27(水) 03:48:21
>>119
Xboxのゲーム作れるっていうのだけが動機だもの。
デザエモン、ツクールの次がXNAだっただけ。
Xboxのゲーム作れるっていうのだけが動機だもの。
デザエモン、ツクールの次がXNAだっただけ。
120 :デフォルトの名無しさん2010/10/26(火) 21:51:54
何か作るには時間がかかる
時間がかかるとバージョンアップする
バージョンアップして移行がスムーズに行く事は余りない
時間がかかるとバージョンアップする
バージョンアップして移行がスムーズに行く事は余りない
121 :デフォルトの名無しさん2010/10/26(火) 21:56:13
何も考えずバージョンアップする
↓
移行は当然の如く上手くいかない
↓
3.1に戻すにも.NETやらVSやら変ってて綺麗に戻らないんだろうな
↓
めんどくせーからこのまま行くか←いまここ
↓
移行は当然の如く上手くいかない
↓
3.1に戻すにも.NETやらVSやら変ってて綺麗に戻らないんだろうな
↓
めんどくせーからこのまま行くか←いまここ
124 :デフォルトの名無しさん2010/10/27(水) 12:33:42
ソースのバージョン管理ツール使っていれば気軽に移行できる
前バージョンけさなくていいし、いつでも戻せるし差分も取れる
前バージョンけさなくていいし、いつでも戻せるし差分も取れる
125 :デフォルトの名無しさん2010/10/28(木) 15:21:21
年内に発売できない人は4.0にしろとか書いてあったけど、
色々変更を余儀なくされそうで面倒だなぁ
色々変更を余儀なくされそうで面倒だなぁ
126 :デフォルトの名無しさん2010/10/28(木) 16:59:25
ただでさえ少ない情報が更に当てにならなくなるからな
入門系の情報なんか殆ど死ぬし
入門系の情報なんか殆ど死ぬし
127 :デフォルトの名無しさん2010/10/28(木) 19:27:53
そんなに違うものなの?
どうせ肝心のプログラムはかわらんのジャロ。
どうせ肝心のプログラムはかわらんのジャロ。
130 :デフォルトの名無しさん2010/10/29(金) 17:54:27
何も考えずバージョンアップする
↓
移行は当然の如く上手くいかない
↓
3.1に戻すにも.NETやらVSやら変ってて綺麗に戻らないんだろうな
↓
めんどくせーからこのまま行くか
↓
129「そんなの提出直前に4.0にコンバートすりゃいいんでそ。」
↓
めんどくせーからこのまま行くか←いまここ
↓
移行は当然の如く上手くいかない
↓
3.1に戻すにも.NETやらVSやら変ってて綺麗に戻らないんだろうな
↓
めんどくせーからこのまま行くか
↓
129「そんなの提出直前に4.0にコンバートすりゃいいんでそ。」
↓
めんどくせーからこのまま行くか←いまここ
131 :デフォルトの名無しさん2010/10/29(金) 18:02:52
WinとXboxを統合的に開発させようという仕様がまず間違ってる
そのくせころころ仕様変わってVS入れ直し強制
Win版XNAとXbox版XNAに特化してもらったほうがまだマシ
極めつけはバージョンアップすると以前の機能が使えない?
アホかと
そのくせころころ仕様変わってVS入れ直し強制
Win版XNAとXbox版XNAに特化してもらったほうがまだマシ
極めつけはバージョンアップすると以前の機能が使えない?
アホかと
132 :デフォルトの名無しさん2010/10/29(金) 19:26:08
>>131
おまえがアホ。
統合開発可能だからWin上とXbox上の両方で容易に動作確認ができるんじゃねぇか。
おまえがアホ。
統合開発可能だからWin上とXbox上の両方で容易に動作確認ができるんじゃねぇか。
133 :デフォルトの名無しさん2010/10/29(金) 23:05:55
使えないのは>>131だな
134 :デフォルトの名無しさん2010/10/30(土) 01:20:52
基本仕様はあんまかわってねえよ
統合優先で入門サイトやらなんやらに頻繁に出てくるような処理も平気で切り捨てるけど
統合優先で入門サイトやらなんやらに頻繁に出てくるような処理も平気で切り捨てるけど
135 :デフォルトの名無しさん2010/10/30(土) 21:24:25
Xbox360固有の機能がある以上、両プラットフォームで容易に動作確認などという幻想は既に崩れ去ってるんだよ。
統合と称して「Windowsではvfetch使えないからXbox360からもvfetch削るか」と言っているようなものだ。
統合と称して「Windowsではvfetch使えないからXbox360からもvfetch削るか」と言っているようなものだ。
136 :デフォルトの名無しさん2010/10/30(土) 21:28:29
バックに色つける機能つかないかなぁ。
「ここからここまで当たり判定の処理」みたいなのがわかりやすいように
バックに色つけて判断しやすくなったらステキじゃないか?
「ここからここまで当たり判定の処理」みたいなのがわかりやすいように
バックに色つけて判断しやすくなったらステキじゃないか?
138 :デフォルトの名無しさん2010/10/30(土) 21:33:47
>>136
プリミティブで描画
GameComponent作っとけば楽だよ
プリミティブで描画
GameComponent作っとけば楽だよ
139 :デフォルトの名無しさん2010/10/30(土) 21:34:05
>>136
regionじゃだめなのか?
regionじゃだめなのか?
137 :デフォルトの名無しさん2010/10/30(土) 21:32:14
全然金にならないXBIGなんかどうでもいいので
DirectX11/SM5.0に対応してください
XNAは好きだし、.NETから今更戻りたくないし
いつまでWinとXboxで足の引っ張り合いしてんの?
あっちを立てればこっちが立たずみたいな
DirectX11/SM5.0に対応してください
XNAは好きだし、.NETから今更戻りたくないし
いつまでWinとXboxで足の引っ張り合いしてんの?
あっちを立てればこっちが立たずみたいな
140 :デフォルトの名無しさん2010/10/30(土) 21:44:08
>>137
SlimDX使え
XNAなんかに期待するだけ無駄だぞ
SlimDX使え
XNAなんかに期待するだけ無駄だぞ
142 :デフォルトの名無しさん2010/10/30(土) 21:48:25
1ドル80円の円高
80〜400MSPでしか売れない
二重課税
vectorで1000円でPC版を売った方が金になるというインディーズゲームの現実(^w^)
80〜400MSPでしか売れない
二重課税
vectorで1000円でPC版を売った方が金になるというインディーズゲームの現実(^w^)
144 :デフォルトの名無しさん2010/10/30(土) 21:52:06
>入門サイトがないから困る
ゆとりワロタw
やる気がないだけだろ
調べろカス
ゆとりワロタw
やる気がないだけだろ
調べろカス
145 :デフォルトの名無しさん2010/10/30(土) 21:53:46
Mac買ってObjective Cなんてやりたくありませーん
148 :デフォルトの名無しさん2010/10/30(土) 22:11:51
>>145
正直に「できませーん」て言いなさい
正直に「できませーん」て言いなさい
146 :デフォルトの名無しさん2010/10/30(土) 21:59:00
iPhone ももう無理だよ。
いまやレッドオーシャンにもほどがある。
いまやレッドオーシャンにもほどがある。
152 :デフォルトの名無しさん2010/10/30(土) 22:56:26
こんばんわ、今XNA3.1を使って3Dアニメーションを
再生しようとしているのですがうまくいきません。
できればご教授いただけないでしょうか?
開発環境
VisualStudio2008 C#
XNA3.1
3Dアニメ作成ツール
Softimage_Mod_Tool_7.5
3Dアニメを表示させているソース
ttp://create.msdn.com/ja-JP/education/catalog/sample/skinned_model
現状
ttp://tkina.web.fc2.com/kaihatu/siryou/Softimage-CharacterAnimationForXNA/No01_OriginalModel.htm
上のサイト様の手順に沿いModToolで簡単なアニメーションを作り
FBXで出力したモデルをSkinningSample-3.1に読み込ませてビルドしたところ
頂点はボーン "DeformerRoot" にバインドされていますが、このボーンがスケルトンにありません。
とエラーが出てしまいました。
よろしくお願い致します。
再生しようとしているのですがうまくいきません。
できればご教授いただけないでしょうか?
開発環境
VisualStudio2008 C#
XNA3.1
3Dアニメ作成ツール
Softimage_Mod_Tool_7.5
3Dアニメを表示させているソース
ttp://create.msdn.com/ja-JP/education/catalog/sample/skinned_model
現状
ttp://tkina.web.fc2.com/kaihatu/siryou/Softimage-CharacterAnimationForXNA/No01_OriginalModel.htm
上のサイト様の手順に沿いModToolで簡単なアニメーションを作り
FBXで出力したモデルをSkinningSample-3.1に読み込ませてビルドしたところ
頂点はボーン "DeformerRoot" にバインドされていますが、このボーンがスケルトンにありません。
とエラーが出てしまいました。
よろしくお願い致します。
154 :デフォルトの名無しさん2010/10/31(日) 15:22:58
>>152
〜XNA3.1を使って3Dアニメーション〜 - BIGLOBEなんでも相談室
http://soudan1.biglobe.ne.jp/qa6286305.html
おまえみたいなカスにはゲームなんか作れないから諦めろグズ
〜XNA3.1を使って3Dアニメーション〜 - BIGLOBEなんでも相談室
http://soudan1.biglobe.ne.jp/qa6286305.html
おまえみたいなカスにはゲームなんか作れないから諦めろグズ
153 :デフォルトの名無しさん2010/10/31(日) 00:57:15
4.0は入門サイト見てさあ始めようってやつが玄関先で躓く仕組みになってるからな
英語フォーラム読めない奴以外は3.1推奨
英語フォーラム読めない奴以外は3.1推奨
155 :デフォルトの名無しさん2010/10/31(日) 16:22:20
答えられるなら答えたいが2Dしかわからぬ。
たぶん3Dやってる時点で僕なんかより技術あるんで答えられぬ。
たぶん3Dやってる時点で僕なんかより技術あるんで答えられぬ。
156 :デフォルトの名無しさん2010/11/01(月) 16:02:03
Zuneも書くから3.1は抜けられないけど、4.0と行ったり来たりすると
ちと混乱するなw
ちと混乱するなw
158 :デフォルトの名無しさん2010/11/01(月) 19:29:24
Zuneは日本にこねえしな。
wP7にいたっては来年末までこなそうだし。
wP7にいたっては来年末までこなそうだし。
159 :デフォルトの名無しさん2010/11/01(月) 19:50:52
ZuneはインディーズのDLもできるの?
できるなら海外での売り上げうpにつながるから(笑)とはいっとれん。
できるなら海外での売り上げうpにつながるから(笑)とはいっとれん。
160 :デフォルトの名無しさん2010/11/01(月) 20:01:38
4.0で非サポートになったのに売り上げうpとかw
>>159のようなゲームを作って売ったこともないワナビーがXNAを支えているのだなぁ
>>159のようなゲームを作って売ったこともないワナビーがXNAを支えているのだなぁ
162 :デフォルトの名無しさん2010/11/01(月) 20:02:57
>>160
ワナビ^2うぜーぞ、この素人が。
ワナビ^2うぜーぞ、この素人が。
163 :デフォルトの名無しさん2010/11/01(月) 21:39:07
>>160
XNAはそういう層にアッピルしたんだから当然さぁ
XNAはそういう層にアッピルしたんだから当然さぁ
161 :デフォルトの名無しさん2010/11/01(月) 20:02:00
まだそこら辺のアナウンスはでてないだろ。
でもMSのAppStoreを中心にPC、WP7はてんかいするかもしれないね。
360はやっぱ別市場になるのかな、わからんけど。
でもMSのAppStoreを中心にPC、WP7はてんかいするかもしれないね。
360はやっぱ別市場になるのかな、わからんけど。
165 :デフォルトの名無しさん2010/11/02(火) 16:52:14
例外的なヒット作はすごいらしいしそうじゃないのはほとんどスルーされてそうだし作品規模にもよると思う
166 :デフォルトの名無しさん2010/11/02(火) 19:29:28
ドラクエっぽい骨RPGは3万いったそうだね。
167 :デフォルトの名無しさん2010/11/03(水) 13:59:06
>>166
詳しく
詳しく
168 :デフォルトの名無しさん2010/11/03(水) 15:47:28
>>167
Breath of Deathのことかと
英語だからプレイしにくいがとてもとてもドラクエっぽい
Breath of Deathのことかと
英語だからプレイしにくいがとてもとてもドラクエっぽい
169 :デフォルトの名無しさん2010/11/05(金) 17:47:07
2Dシューティングで、デススマイルズのような
「当たっても死なないが押し返される地形」を作りたいのですが
どのような方法があるでしょうか?
BoundingBoxで触れた方向をチェックすることはできないでしょうか?
「当たっても死なないが押し返される地形」を作りたいのですが
どのような方法があるでしょうか?
BoundingBoxで触れた方向をチェックすることはできないでしょうか?
170 :デフォルトの名無しさん2010/11/05(金) 17:57:32
>>169
スーパーまりオクローンのソースでも眺めろ、
聞く前に調べろこのカスが!
スーパーまりオクローンのソースでも眺めろ、
聞く前に調べろこのカスが!
171 :デフォルトの名無しさん2010/11/05(金) 19:19:50
ゲーム作りで学ぶ〜のピンポンのに当たる位置を調べるのがあった気がするなあ
174 :デフォルトの名無しさん2010/11/06(土) 18:07:55
レスありがとうございます。
>>171
ブロック崩しに斜めヒットの判定をチェックするのがありました。
これの応用で左側にヒット状態=右に進めない(または移動させる)
上側にヒット=下に進めない(または移動させる)
のようにできる気がしてきました。
>>171
ブロック崩しに斜めヒットの判定をチェックするのがありました。
これの応用で左側にヒット状態=右に進めない(または移動させる)
上側にヒット=下に進めない(または移動させる)
のようにできる気がしてきました。
172 :デフォルトの名無しさん2010/11/05(金) 22:54:32
まず地形無しで作れよ
175 :デフォルトの名無しさん2010/11/06(土) 18:29:55
>>172
既に触れるダメージをうける地形まで作ったところです。
でもFC版ドラえもん魔境編のように重なることができてしまうので
押し返しにトライしてます。
既に触れるダメージをうける地形まで作ったところです。
でもFC版ドラえもん魔境編のように重なることができてしまうので
押し返しにトライしてます。
177 :デフォルトの名無しさん2010/11/06(土) 23:57:29
>>175
特定範囲の内部に入ったら
範囲の法線の向きに自機に力を加えればいいんじゃないの
特定範囲の内部に入ったら
範囲の法線の向きに自機に力を加えればいいんじゃないの
178 :デフォルトの名無しさん2010/11/07(日) 23:57:15
>>177
なるほど、そういう考え方もあるんですね。
計算式は難しそうですが成功すれば配置しやすそうです。
チャレンジしてみます。
なるほど、そういう考え方もあるんですね。
計算式は難しそうですが成功すれば配置しやすそうです。
チャレンジしてみます。
173 :デフォルトの名無しさん2010/11/06(土) 10:52:04
DirectXで描画するウィンドウってひとつしか作れないでしょうか?
176 :デフォルトの名無しさん2010/11/06(土) 19:45:33
アルファチャンネルのあるビルボード(たとえば木のテクスチャ)を何枚も重ねると後ろが矩形状に抜けてしまいます。
これを回避するにはZソートを使うとよい、とネットで調べて分かったのですが、
以下のソースを実際にどのようにいじればZソートができるのかがわかりません。
ご教授お願いします。
foreach(ModelMesh m in model.Meshes){
foreach(BasicEffect e in m.Effects){
e.EnableDefaultLighting();
e.World = Matrix.Identity;
e.View = Matrix.CreateLookAt(new Vector3(0, 10, 10), Vector3.Zero, Vector3.Up);
e.Projection = Matrix.CreatePerspectiveFieldOfView(MathHelper.PiOver4, 4f / 3f, 10, 1000);
}
m.Draw();
}
これを回避するにはZソートを使うとよい、とネットで調べて分かったのですが、
以下のソースを実際にどのようにいじればZソートができるのかがわかりません。
ご教授お願いします。
foreach(ModelMesh m in model.Meshes){
foreach(BasicEffect e in m.Effects){
e.EnableDefaultLighting();
e.World = Matrix.Identity;
e.View = Matrix.CreateLookAt(new Vector3(0, 10, 10), Vector3.Zero, Vector3.Up);
e.Projection = Matrix.CreatePerspectiveFieldOfView(MathHelper.PiOver4, 4f / 3f, 10, 1000);
}
m.Draw();
}
179 :デフォルトの名無しさん2010/11/10(水) 03:50:35
XNA4.0に3.1で作ったビルボードを移植したんだが
アルファ付PNGの透明部分が、しっかり抜けるときと、抜けない(背景色で塗りつぶし)ときがある
どうも、描画順番によるものだということがわかったのだが
3.1のきはこの辺考えなくてもよかったけど、4.0では距離順にソートしないと駄目とかになったの?
それとも、なんかオプション増えたの?
教えてください
アルファ付PNGの透明部分が、しっかり抜けるときと、抜けない(背景色で塗りつぶし)ときがある
どうも、描画順番によるものだということがわかったのだが
3.1のきはこの辺考えなくてもよかったけど、4.0では距離順にソートしないと駄目とかになったの?
それとも、なんかオプション増えたの?
教えてください
181 :デフォルトの名無しさん2010/11/11(木) 11:03:30
3Dゲームの壁や障害物(長方形)の当たり判定で悩んでます。何か良い方法はありませんか?
BoundingSphereのようにメッシュを利用出来れば簡単そうなのですが
BoundingBoxでメッシュを使う方法がわからなくて……
BoundingSphereのようにメッシュを利用出来れば簡単そうなのですが
BoundingBoxでメッシュを使う方法がわからなくて……
182 :デフォルトの名無しさん2010/11/14(日) 02:48:16
すげー根本的っていうか、基本的な部分な質問ですまないんだけど
グラフィック関係を扱っていると繰り返し出てくる
GraphicsDeviceクラスって何を表してるの?
グラフィックなデバイスだけら、グラボやグラフィックメモリのことかと思ったんだが
なんか違うような気がする。
イメージつかむのにアドバイスください
グラフィック関係を扱っていると繰り返し出てくる
GraphicsDeviceクラスって何を表してるの?
グラフィックなデバイスだけら、グラボやグラフィックメモリのことかと思ったんだが
なんか違うような気がする。
イメージつかむのにアドバイスください
183 :デフォルトの名無しさん2010/11/14(日) 04:06:22
>>182
解像度やアスペクト比の設定から2D/3Dグラフィック描画環境の構築まで
グラフィック関連の主軸となる要素を担うクラス、ってことでいいんだろうか・・・・・・
正直、ブラックボックスというか呪文みたいなものだから俺も詳細とか知らないで使ってるんだよね・・・・・・・
解像度やアスペクト比の設定から2D/3Dグラフィック描画環境の構築まで
グラフィック関連の主軸となる要素を担うクラス、ってことでいいんだろうか・・・・・・
正直、ブラックボックスというか呪文みたいなものだから俺も詳細とか知らないで使ってるんだよね・・・・・・・
184 :デフォルトの名無しさん2010/11/15(月) 20:48:10
>>183
回答サンクス
よくわからんけど使える、グラフィック関係の何かって認識程度で
今のところ支障がないっぽい
回答サンクス
よくわからんけど使える、グラフィック関係の何かって認識程度で
今のところ支障がないっぽい
185 :デフォルトの名無しさん2010/11/17(水) 03:14:54
面倒臭かったけど 4.0 になんとか移行した
ストレージ絡み微妙に変更とか、まじ勘弁して欲しいわ
ストレージ絡み微妙に変更とか、まじ勘弁して欲しいわ
186 :デフォルトの名無しさん2010/11/17(水) 04:36:30
>>185
まだC#でオタオタしてるレベルだから逆にダメージ低そうなオイラ
まだC#でオタオタしてるレベルだから逆にダメージ低そうなオイラ
187 :デフォルトの名無しさん2010/11/17(水) 06:16:05
>>185
俺も移行完了。
Modelの頂点情報の仕様変更が面倒だった。
あと、PointSprite廃止とか。
これで、しばらくは移行しなくていいし、まったり。 (´ー`)y━~~
俺も移行完了。
Modelの頂点情報の仕様変更が面倒だった。
あと、PointSprite廃止とか。
これで、しばらくは移行しなくていいし、まったり。 (´ー`)y━~~
188 :デフォルトの名無しさん2010/11/17(水) 12:39:50
移行したいけどWindows 7持ってない
195 :デフォルトの名無しさん2010/11/19(金) 00:13:19
>>188
WindowsPhone7 用に何か作るの?
でなければ XP でも 4.0 いけるけど
WindowsPhone7 用に何か作るの?
でなければ XP でも 4.0 いけるけど
189 :デフォルトの名無しさん2010/11/17(水) 21:47:39
働いて、買えば?
私にはそのくらいしか答えてあげられません
私にはそのくらいしか答えてあげられません
190 :デフォルトの名無しさん2010/11/17(水) 23:07:38
XNA3.1での質問です
新規プロジェクトに
public Texture2D test()
{
RenderTarget2D temp = new RenderTarget2D(graphics.GraphicsDevice,
100, 100, 1, SurfaceFormat.Color);
graphics.GraphicsDevice.SetRenderTarget(0, temp);
graphics.GraphicsDevice.Clear(Color.Gray);
graphics.GraphicsDevice.SetRenderTarget(0, null);
return temp.GetTexture();
}
って関数ついかして
Draw(GameTime gameTime)で呼んだら画面が紫色になりました。
バックグラウンドを勝手に塗りつぶしてほしくないのですが、どうしたらよいですか?
新規プロジェクトに
public Texture2D test()
{
RenderTarget2D temp = new RenderTarget2D(graphics.GraphicsDevice,
100, 100, 1, SurfaceFormat.Color);
graphics.GraphicsDevice.SetRenderTarget(0, temp);
graphics.GraphicsDevice.Clear(Color.Gray);
graphics.GraphicsDevice.SetRenderTarget(0, null);
return temp.GetTexture();
}
って関数ついかして
Draw(GameTime gameTime)で呼んだら画面が紫色になりました。
バックグラウンドを勝手に塗りつぶしてほしくないのですが、どうしたらよいですか?
196 :1902010/11/19(金) 04:47:23
>>190は自己解決しました
GraphicsDevice.SetRenderTarget()はDrawで呼ぶんじゃなくて
Updateで呼ぶのか・・・・
GraphicsDevice.SetRenderTarget()はDrawで呼ぶんじゃなくて
Updateで呼ぶのか・・・・
197 :デフォルトの名無しさん2010/11/19(金) 09:41:44
>>196
自己解決しても解決策おいていってくれる人って好きよ(はぁと)
自己解決しても解決策おいていってくれる人って好きよ(はぁと)
191 :デフォルトの名無しさん2010/11/18(木) 19:25:51
萌えキャラ使ったローグライクなゲーム作ったら
それなりに日本で売れる気がする
それなりに日本で売れる気がする
193 :デフォルトの名無しさん2010/11/18(木) 19:45:37
>>191
やるなら「おでかけダンジョン」みたいなやつだろうな。
プログラムはそこそこめんどうくさそうだ。
やるなら「おでかけダンジョン」みたいなやつだろうな。
プログラムはそこそこめんどうくさそうだ。
194 :デフォルトの名無しさん2010/11/18(木) 20:25:50
ローグといえばメモリやCPUの乏しかった時代のパソコンゲームだったという印象はあるな
198 :デフォルトの名無しさん2010/11/19(金) 12:13:15
球体モデルの当たり判定は「Model.Meshes[0].BoundingSphere」で簡単に作れたんですが
平面や四角形はBoundingBoxを使って自分でサイズ指定する以外に当たり判定を作る手段はないのでしょうか?
平面や四角形はBoundingBoxを使って自分でサイズ指定する以外に当たり判定を作る手段はないのでしょうか?
200 :デフォルトの名無しさん2010/11/21(日) 20:14:34
対応されたとしてどうやって作ればいいのか見当がつかないな
201 :デフォルトの名無しさん2010/11/21(日) 20:30:18
ひさびさにwktkする題材だよな
この為だけにクリエイターズクラブとやらに登録するわ
MSXで投稿してた頃を思い出すぜ
この為だけにクリエイターズクラブとやらに登録するわ
MSXで投稿してた頃を思い出すぜ
202 :デフォルトの名無しさん2010/11/21(日) 21:19:15
Kinect、ゲームで使うのは難しそうだけど、
モーション作成とかに使えれば面白そうだなーと思う
モーション作成とかに使えれば面白そうだなーと思う
203 :デフォルトの名無しさん2010/11/21(日) 21:33:17
Xbox360でモーションデータを作成するとしてパソコンに持ってくる方法ってある?
せめてネットにアクセスできればいいんだけど。
せめてネットにアクセスできればいいんだけど。
204 :デフォルトの名無しさん2010/11/21(日) 22:04:21
XNA3.1のStorage系って、結局Guide使えないと使えないのかな?
・XBOX360インディーズゲーム
・XNA GS入れてないWindows(対象はVista以降)
の両方で動くアプリを作っているんですが、後者はGuideが使えなかったような…
・XBOX360インディーズゲーム
・XNA GS入れてないWindows(対象はVista以降)
の両方で動くアプリを作っているんですが、後者はGuideが使えなかったような…
205 :デフォルトの名無しさん2010/11/22(月) 03:08:55
kinectをいかせるのは3Dなんじゃないかなぁ。
企業なみに技術力ないXNA初心者で扱えるシロモノなんじゃろか。
できるならすごい興味あるんだけどね。
企業なみに技術力ないXNA初心者で扱えるシロモノなんじゃろか。
できるならすごい興味あるんだけどね。
206 :デフォルトの名無しさん2010/11/22(月) 03:15:31
KinectってUSB対応だし、
Windows版のXNAでも使えるのを期待してみたいw
Windows版のXNAでも使えるのを期待してみたいw
208 :デフォルトの名無しさん2010/11/22(月) 21:58:42
>>206
USB対応ならPS3で使える?
USB対応ならPS3で使える?
209 :デフォルトの名無しさん2010/11/22(月) 22:30:46
208は「USBだからって使えるっていう単純なモノじゃねーだろ」という
含みをこめて言ってるのか、それとも質問なのか
含みをこめて言ってるのか、それとも質問なのか
210 :デフォルトの名無しさん2010/11/22(月) 23:50:56
仮にもプログラム板での発言だぞ
後者はたまによくいるくらいだろ
後者はたまによくいるくらいだろ
211 :デフォルトの名無しさん2010/11/24(水) 01:15:11
テクスチャ付ポリゴンを DrawPrimitive で描画してるのですが、
ストリップで4頂点で四角形を描画しています。
その4頂点を それぞれずらすと、ポリゴンの繋ぎ目 真ん中に / のような感じでテクスチャが歪んでしまいます。
歪ませないようにはどうすればいいでしょうか?
XNA 3.1 で BasicEffect を使用している為、シェーダーを使わないで解決する方法を探してます。
どこかいいサイトなどありましたら是非教えてください。
よろしくお願いします。
ストリップで4頂点で四角形を描画しています。
その4頂点を それぞれずらすと、ポリゴンの繋ぎ目 真ん中に / のような感じでテクスチャが歪んでしまいます。
歪ませないようにはどうすればいいでしょうか?
XNA 3.1 で BasicEffect を使用している為、シェーダーを使わないで解決する方法を探してます。
どこかいいサイトなどありましたら是非教えてください。
よろしくお願いします。
212 :デフォルトの名無しさん2010/11/24(水) 21:55:20
http://www.youtube.com/watch?v=leiZ9uOSzfE&feature=related
今、3Dフィールドの当たり判定で四苦八苦してるんだけど
この動画見ると、エリア(黄色線で囲った範囲)ごとに一つずつ単純にBoundingBoxで作ってるのかな?
結局、XNAで地面の凹凸を表現するにはこの方法しかないのかな?
メッシュ使って凹凸に合わせて当たり判定自動生成〜、なんて便利な機能は無し?
今、3Dフィールドの当たり判定で四苦八苦してるんだけど
この動画見ると、エリア(黄色線で囲った範囲)ごとに一つずつ単純にBoundingBoxで作ってるのかな?
結局、XNAで地面の凹凸を表現するにはこの方法しかないのかな?
メッシュ使って凹凸に合わせて当たり判定自動生成〜、なんて便利な機能は無し?
213 :デフォルトの名無しさん2010/11/25(木) 00:51:43
>>212
なんか勘違いしてないかな AABB って書いてあるよ
凸凹表現ではなくこの箱はポリゴンごとの詳細チェックを枝刈するものだよ?
で レイピックみたいなのはなかったと思うな
そんなんあったらいいけどね
なんか勘違いしてないかな AABB って書いてあるよ
凸凹表現ではなくこの箱はポリゴンごとの詳細チェックを枝刈するものだよ?
で レイピックみたいなのはなかったと思うな
そんなんあったらいいけどね
214 :デフォルトの名無しさん2010/11/25(木) 10:29:18
>>212
私はランドスケープによる当たり判定してます。
ほとんどの人がこの方法じゃないかな?
1.当たり判定用の地面を三角ポリゴンのみで作る。
2.Model(4.0ならMeshPart)から頂点データを取り出す。
3.調べたい場所のXとZ座標から、全ての三角形の内包判定。
4.当たっていたら、そのポリゴンとの交差する高さも計算する。
その高さにキャラを移動させれば、地面の凹凸に合わせて移動させられる。
当たっていなかったら、行き止まりにする。
私は内包判定とかは、自前で計算してますが....。
XNAのRayとかで、ライブラリを使って判定することもできるはず。
私はランドスケープによる当たり判定してます。
ほとんどの人がこの方法じゃないかな?
1.当たり判定用の地面を三角ポリゴンのみで作る。
2.Model(4.0ならMeshPart)から頂点データを取り出す。
3.調べたい場所のXとZ座標から、全ての三角形の内包判定。
4.当たっていたら、そのポリゴンとの交差する高さも計算する。
その高さにキャラを移動させれば、地面の凹凸に合わせて移動させられる。
当たっていなかったら、行き止まりにする。
私は内包判定とかは、自前で計算してますが....。
XNAのRayとかで、ライブラリを使って判定することもできるはず。
215 :デフォルトの名無しさん2010/11/25(木) 19:14:39
>>213-214
自分の知らない用語が山ほど・・・・・・
今までBounding〜を使うことしか頭にありませんでしたw
ええと、まずは頂点データを取り出す方法と内包判定の計算方法から調べてみます。ありがとうございました!
自分の知らない用語が山ほど・・・・・・
今までBounding〜を使うことしか頭にありませんでしたw
ええと、まずは頂点データを取り出す方法と内包判定の計算方法から調べてみます。ありがとうございました!
218 :デフォルトの名無しさん2010/11/26(金) 00:01:40
ランドスケープは建物の中のときは適さないよね。
エースコンバットみたいなゲームならランドスケープが楽チンだね。
>>215
AABB はXYZの軸に沿ったBoundingBoxのことだよ 軸に沿うから回転しないのね。
で、そのモデルを内包するようにオフラインで最大最小頂点求めて作るんだ。
だから槍とか、しなった刀とか斜めってる細長いのは、ロスがデカイんだ。
そこで、OBBってのがあってね…って言ってると限がないので、ググればすぐ見つかるよ。
内包はXNAにあるからそれ使えばいいと思うよ。
問題なのはきっとレイ(直線)だね。
表裏判定も決めなきゃいけないし、貫通したときにヒットしたポリゴンで最も手前を取って交点を求めたり、
内包されてて交点がない場合とか、結構メンドクサイよ。
DirectXだと、それをやってくれるレイピックって関数があるんだ。
XNAにはないんだよねー。
だ…誰かテクスチャの歪みの対処方法教えてくれないかなァ…
エースコンバットみたいなゲームならランドスケープが楽チンだね。
>>215
AABB はXYZの軸に沿ったBoundingBoxのことだよ 軸に沿うから回転しないのね。
で、そのモデルを内包するようにオフラインで最大最小頂点求めて作るんだ。
だから槍とか、しなった刀とか斜めってる細長いのは、ロスがデカイんだ。
そこで、OBBってのがあってね…って言ってると限がないので、ググればすぐ見つかるよ。
内包はXNAにあるからそれ使えばいいと思うよ。
問題なのはきっとレイ(直線)だね。
表裏判定も決めなきゃいけないし、貫通したときにヒットしたポリゴンで最も手前を取って交点を求めたり、
内包されてて交点がない場合とか、結構メンドクサイよ。
DirectXだと、それをやってくれるレイピックって関数があるんだ。
XNAにはないんだよねー。
だ…誰かテクスチャの歪みの対処方法教えてくれないかなァ…
219 :2142010/11/26(金) 08:05:50
>>218
AABBとOBBか....。(初めて聞く言葉です。)
ランドスケープと回転してない直方体(球)ぐらいしか当たり判定を
してこなかったから、大変参考になります。
AABBとOBBか....。(初めて聞く言葉です。)
ランドスケープと回転してない直方体(球)ぐらいしか当たり判定を
してこなかったから、大変参考になります。
221 :デフォルトの名無しさん2010/11/29(月) 10:28:48
XNAのAABBとかRayって参考サイト少ないなぁ・・・
誰か地形の当たり判定を実装する為の良いサンプルソースとか解説サイト知りませんか?
誰か地形の当たり判定を実装する為の良いサンプルソースとか解説サイト知りませんか?
223 :デフォルトの名無しさん2010/11/29(月) 19:53:22
>地形
これ使ってみた奴いないの?
ttp://ameblo.jp/junk-f/day-20100403.html
俺はなんかやってることが理解できなくて不気味だから使えないけど、できるんかよこんなので…?
次回以降の説明とか見てもマジ意味不明。こんなことしなくちゃならんの?
これ使ってみた奴いないの?
ttp://ameblo.jp/junk-f/day-20100403.html
俺はなんかやってることが理解できなくて不気味だから使えないけど、できるんかよこんなので…?
次回以降の説明とか見てもマジ意味不明。こんなことしなくちゃならんの?
226 :デフォルトの名無しさん2010/12/01(水) 10:18:57
自分も当たり判定の処理で悩んでます……
1.キャラクターの眼前にRayを飛ばす
2.Rayとマップモデルの三角ポリゴンとの衝突判定
3.衝突したら三角ポリゴンの高さを調べる
4.高さが一定値以下だったら段差、一定値以上だったら壁として移動処理
と、いう処理をマップモデルと衝突判定を取る方法として思いついたんですが
2と3をどう処理すれば良いのかがわかりませんorz
1.キャラクターの眼前にRayを飛ばす
2.Rayとマップモデルの三角ポリゴンとの衝突判定
3.衝突したら三角ポリゴンの高さを調べる
4.高さが一定値以下だったら段差、一定値以上だったら壁として移動処理
と、いう処理をマップモデルと衝突判定を取る方法として思いついたんですが
2と3をどう処理すれば良いのかがわかりませんorz
233 :2812010/12/02(木) 22:30:42
>>229-232
レスサンクス。
通常マップの上に衝突判定用マップ重ねて>>226っぽい処理すればいいのかな?
VertexBufferとIndexBuffer抜き出して内積計算するんだと思うんだが、中身がNULLで使い方がわからないという・・・
取り出し方って「VertexBuffer VertexBuffer = Model.Meshes[0].VertexBuffer;」で合ってる?
レスサンクス。
通常マップの上に衝突判定用マップ重ねて>>226っぽい処理すればいいのかな?
VertexBufferとIndexBuffer抜き出して内積計算するんだと思うんだが、中身がNULLで使い方がわからないという・・・
取り出し方って「VertexBuffer VertexBuffer = Model.Meshes[0].VertexBuffer;」で合ってる?
227 :デフォルトの名無しさん2010/12/01(水) 19:08:28
それだと超ローポリ(一面が三角2ポリゴンの四角形とか)のモデルにしか使えなくね?
まあ、箱と球以外の当たり判定は俺もさっぱりなんですがねw
レイと三角ポリゴンの交差判定はちょこちょこ挑戦してるんだけど
VertexBuffer型とIndexBuffer型にモデルメッシュからデータ取得したところで止まってるなぁ・・・・
個人的には基本EASYなXNAの中ではかなり難易度の高い処理なんじゃないかと思ってたりするんだけど
サンプルソースや解説サイトをほとんど見かけないってことは、単に俺がノータリンなだけなんだろうかw
まあ、箱と球以外の当たり判定は俺もさっぱりなんですがねw
レイと三角ポリゴンの交差判定はちょこちょこ挑戦してるんだけど
VertexBuffer型とIndexBuffer型にモデルメッシュからデータ取得したところで止まってるなぁ・・・・
個人的には基本EASYなXNAの中ではかなり難易度の高い処理なんじゃないかと思ってたりするんだけど
サンプルソースや解説サイトをほとんど見かけないってことは、単に俺がノータリンなだけなんだろうかw
229 :デフォルトの名無しさん2010/12/02(木) 04:32:01
>>227
>サンプルソースや解説サイトをほとんど見かけない
まず殆どマップ衝突判定のソースはないだろうね
うちはSlimDXのRay/Triのコリジョン使って2〜3日程でマップ移動の壁・床システムを自力で作った
もちろん、XNAにも流用できると思うけど
Ray/Triでは距離(distance)を取得できるからこれを利用するのいいのかな
>サンプルソースや解説サイトをほとんど見かけない
まず殆どマップ衝突判定のソースはないだろうね
うちはSlimDXのRay/Triのコリジョン使って2〜3日程でマップ移動の壁・床システムを自力で作った
もちろん、XNAにも流用できると思うけど
Ray/Triでは距離(distance)を取得できるからこれを利用するのいいのかな
230 :2142010/12/02(木) 05:39:46
>>226
ランドスケープなら、真下にRayを飛ばせばできます。
ランドスケープと内包判定などで検索するといくつか情報出てくるみたいですが、
私が作ったときより情報が減ったような?
内積を使って判定します。
壁の高さが必要ないなら、みつからなかったら壁にしたほうが速度が速くなると思います。
>>227
当たり判定は、表示モデルとは別にローポリで作った方がいいと思います。
私の場合は1200ポリゴンのコリジョンモデルを使っています。
(エリア分けするので、けっこうハイポリな巨大なマップでもいける。ポリゴン密度が同じならコストは変わらない。)
エリア毎に最初に分けるので、速度のコスト0(メモリに負担がかかる。4MByte程度)で、12ポリゴン程度にまず絞り込みます。
そこから、12ポリゴンを総当りです。
XBOX360のシングルコアの60フレで1フレーム50〜60箇所、30フレで120箇所程度の当たり判定ができています。
(背景表示、15程度のスキンモデルも同時に表示している。)
マルチスレッドにすればもっといけそうですが、試していません。
GCのF-ZERO-Xは、50台のマシンが60フレで動いてたけどどうやって当たり判定とってたんだろう?気になる。
XBOX360と比べたらかなり速度が厳しいと思うのだが。
ランドスケープなら、真下にRayを飛ばせばできます。
ランドスケープと内包判定などで検索するといくつか情報出てくるみたいですが、
私が作ったときより情報が減ったような?
内積を使って判定します。
壁の高さが必要ないなら、みつからなかったら壁にしたほうが速度が速くなると思います。
>>227
当たり判定は、表示モデルとは別にローポリで作った方がいいと思います。
私の場合は1200ポリゴンのコリジョンモデルを使っています。
(エリア分けするので、けっこうハイポリな巨大なマップでもいける。ポリゴン密度が同じならコストは変わらない。)
エリア毎に最初に分けるので、速度のコスト0(メモリに負担がかかる。4MByte程度)で、12ポリゴン程度にまず絞り込みます。
そこから、12ポリゴンを総当りです。
XBOX360のシングルコアの60フレで1フレーム50〜60箇所、30フレで120箇所程度の当たり判定ができています。
(背景表示、15程度のスキンモデルも同時に表示している。)
マルチスレッドにすればもっといけそうですが、試していません。
GCのF-ZERO-Xは、50台のマシンが60フレで動いてたけどどうやって当たり判定とってたんだろう?気になる。
XBOX360と比べたらかなり速度が厳しいと思うのだが。
231 :2142010/12/02(木) 05:44:54
>>230
4MByteは飽くまで参考程度で。
たぶんこんなにかからない。
体感ではそのぐらい増えたような気がするんだが....。
4MByteは飽くまで参考程度で。
たぶんこんなにかからない。
体感ではそのぐらい増えたような気がするんだが....。
232 :2142010/12/02(木) 06:26:34
>>230
かなり大きめのマップ、地形とスキンモデルのシャドウ表示(セルフもあり)、
また地形とスキンモデルにノーマルマップを使用しているので、
1フレーム当たりの地形判定は、2倍程度の速度が出せるはずです。
実験はしてませんが....。
速度は参考程度で。
かなり大きめのマップ、地形とスキンモデルのシャドウ表示(セルフもあり)、
また地形とスキンモデルにノーマルマップを使用しているので、
1フレーム当たりの地形判定は、2倍程度の速度が出せるはずです。
実験はしてませんが....。
速度は参考程度で。
239 :デフォルトの名無しさん2010/12/07(火) 01:18:26
>>230
GCのF-ZERO-Xは知らんけどね
厳しいのなら50台あっても全部判定してないんじゃないかなぁ
プレイヤの見える範囲だけとか そもそも球体でやってるんじゃないかな
簡単で早いでしょ sqrt 使わなきゃ
地形のことかな? 僕なら当たり判定という処理はしないな
やるなら動ける範囲内かどうかのチェックをすると思うな
プレイヤが居る床は最初に決まってるわけだから おのずとそれに隣接する床もわかるからね
すると当たりようのポリゴンを探す必要がないと思うんだ
後は法線で面の上に乗ってるかだけ見ればいいんじゃないかな?
GCのF-ZERO-Xは知らんけどね
厳しいのなら50台あっても全部判定してないんじゃないかなぁ
プレイヤの見える範囲だけとか そもそも球体でやってるんじゃないかな
簡単で早いでしょ sqrt 使わなきゃ
地形のことかな? 僕なら当たり判定という処理はしないな
やるなら動ける範囲内かどうかのチェックをすると思うな
プレイヤが居る床は最初に決まってるわけだから おのずとそれに隣接する床もわかるからね
すると当たりようのポリゴンを探す必要がないと思うんだ
後は法線で面の上に乗ってるかだけ見ればいいんじゃないかな?
228 :デフォルトの名無しさん2010/12/01(水) 20:08:30
三角2ポリゴンってなんだw
一面を三角ポリゴン2つで構成した四角形ってことですスイマセン
一面を三角ポリゴン2つで構成した四角形ってことですスイマセン
234 :デフォルトの名無しさん2010/12/03(金) 02:04:43
ランドスケープってば XZ から対象ポリゴンを絞って比率というか線形補完で高さを求めるんじゃなかったっけ?
レイで平面上に投影しても同じかな
ここでいうランドスケープは モデリングされた地形のことなのかな?
僕はハイトマップとかで作るものを想像しちゃうなランドスケープは
通常のマップってのがよくわからないけど描画モデルのことなら そういうことだと思う
描画モデルはハイポリ 当たり判定モデルはローポリだと思う
そもそも当たり用は見えないし ポリゴンたくさんあったら探すのに時間かかるだけだもんね
精巧に判定が必要なら しょうがないけど 作るもの次第かな
レイで平面上に投影しても同じかな
ここでいうランドスケープは モデリングされた地形のことなのかな?
僕はハイトマップとかで作るものを想像しちゃうなランドスケープは
通常のマップってのがよくわからないけど描画モデルのことなら そういうことだと思う
描画モデルはハイポリ 当たり判定モデルはローポリだと思う
そもそも当たり用は見えないし ポリゴンたくさんあったら探すのに時間かかるだけだもんね
精巧に判定が必要なら しょうがないけど 作るもの次第かな
235 :2142010/12/03(金) 05:31:13
>>233
foreach (ModelMeshPart mesh_part in mesh.MeshParts) {
VertexElement[] vertex_format;
vertex_format = mesh_part.VertexBuffer.VertexDeclaration.GetVertexElements();
vert = new VertexPositionTextureNormalBinormalTangentColor[mesh_part.NumVertices];
mesh.MeshParts[0].VertexBuffer.GetData<VertexPositionTextureNormalBinormalTangentColor>(vert);
index_data = new short[mesh_part.IndexBuffer.IndexCount];
mesh.MeshParts[0].IndexBuffer.GetData<short>(index_data);
}
私は上のような感じでとってます。
2〜3行目は頂点フォーマット確認用の為だけなので、
頂点フォーマットがわかっているなら必要ないです。
>>234
モデリングされた地形のことをランドスケープと思って話していました。
どっちが一般的なのかはよくわからないです。
foreach (ModelMeshPart mesh_part in mesh.MeshParts) {
VertexElement[] vertex_format;
vertex_format = mesh_part.VertexBuffer.VertexDeclaration.GetVertexElements();
vert = new VertexPositionTextureNormalBinormalTangentColor[mesh_part.NumVertices];
mesh.MeshParts[0].VertexBuffer.GetData<VertexPositionTextureNormalBinormalTangentColor>(vert);
index_data = new short[mesh_part.IndexBuffer.IndexCount];
mesh.MeshParts[0].IndexBuffer.GetData<short>(index_data);
}
私は上のような感じでとってます。
2〜3行目は頂点フォーマット確認用の為だけなので、
頂点フォーマットがわかっているなら必要ないです。
>>234
モデリングされた地形のことをランドスケープと思って話していました。
どっちが一般的なのかはよくわからないです。
236 :2142010/12/03(金) 06:11:58
>>235
GS4.0での場合です。
GS3.1は別の場所に頂点データがあります。
正確な場所は失念。
GS4.0での場合です。
GS3.1は別の場所に頂点データがあります。
正確な場所は失念。
237 :2142010/12/03(金) 06:29:43
>>235
foreachのループ意味ないですね。
最初と最後の1行は削除してください。
バグみつけてしまった。 orz
foreachのループ意味ないですね。
最初と最後の1行は削除してください。
バグみつけてしまった。 orz
238 :2142010/12/03(金) 06:32:32
>>237
いや、mesh_part使ってるのか。
でも、mesh.MeshParts[0]でアクセスしてるし....。
適当に調整してください。
いや、mesh_part使ってるのか。
でも、mesh.MeshParts[0]でアクセスしてるし....。
適当に調整してください。
241 :デフォルトの名無しさん2010/12/11(土) 13:34:21
2枚以上のテクスチャを重ねて1つのメッシュに張る方法としてどんなのがあるだろ?
とりあえずRenderTarget2Dを使う方法を考え付いて試したんだけど
1フレームに複数回呼ぶと、FPSがすごい勢いで下がるので使えんかったよ。
1回だと問題ない(FPS60)のに、2回だと急にFPSが10以下とかになるんだよな。
で、別の切り口とかあったら教えてほしいのだけど、よろしくお願いします。
とりあえずRenderTarget2Dを使う方法を考え付いて試したんだけど
1フレームに複数回呼ぶと、FPSがすごい勢いで下がるので使えんかったよ。
1回だと問題ない(FPS60)のに、2回だと急にFPSが10以下とかになるんだよな。
で、別の切り口とかあったら教えてほしいのだけど、よろしくお願いします。
243 :デフォルトの名無しさん2010/12/16(木) 06:52:00
格闘ゲームなどにある「ヒットストップ」のようなものを
実装する(エフェクトも含め画面全部の更新を数フレームストップ)場合は
どのように処理するのが一般的でしょうか?
実装する(エフェクトも含め画面全部の更新を数フレームストップ)場合は
どのように処理するのが一般的でしょうか?
246 :デフォルトの名無しさん2010/12/16(木) 12:56:23
>>243
その間動かさなきゃいいだけだろ
描画や更新を止める必要はない
その間動かさなきゃいいだけだろ
描画や更新を止める必要はない
250 :デフォルトの名無しさん2010/12/18(土) 23:42:37
>>246
ありがとうございます。
独自に時間を加算していたメソッド外に全処理を一時的に飛ばすことで
解決しました。
ありがとうございます。
独自に時間を加算していたメソッド外に全処理を一時的に飛ばすことで
解決しました。
251 :デフォルトの名無しさん2010/12/19(日) 00:28:24
>>250ですが具体的には
ステージ1のメソッド{時間計測変数int timeStage1++}
ヒットストップ用のメソッド{int hitStop++}
みたいなそれぞれの状態の時間を保持する変数を1フレームごと増加させて
でヒット状態のときヒットストップ用のメソッドにとばしてhitStop変数が
4になったらステージ1のメソッドに戻す、という。初心者考えだから
スマートじゃないと思いますが、ポーズでメニュー開くのもだいたいこんな
感じですよね、きっと。
ステージ1のメソッド{時間計測変数int timeStage1++}
ヒットストップ用のメソッド{int hitStop++}
みたいなそれぞれの状態の時間を保持する変数を1フレームごと増加させて
でヒット状態のときヒットストップ用のメソッドにとばしてhitStop変数が
4になったらステージ1のメソッドに戻す、という。初心者考えだから
スマートじゃないと思いますが、ポーズでメニュー開くのもだいたいこんな
感じですよね、きっと。
244 :デフォルトの名無しさん2010/12/16(木) 10:04:46
VC#2008で
fxファイルを編集していますが、
コメントアウトや、予約後などが色分けされません。
単なるテキストエディタのようになっており非常に見にくいです。
どうすれば、色分けされるのでしょうか?
fxファイルを編集していますが、
コメントアウトや、予約後などが色分けされません。
単なるテキストエディタのようになっており非常に見にくいです。
どうすれば、色分けされるのでしょうか?
247 :デフォルトの名無しさん2010/12/16(木) 17:55:08
>>244
expressは無理だった気がする
expressは無理だった気がする
248 :デフォルトの名無しさん2010/12/16(木) 20:48:09
>>244
キーワード強調表示ができるテキストエディタ使えば?
本格的にやるならFX ComposerやRenderMonkey使うし
需要がないんでしょ
キーワード強調表示ができるテキストエディタ使えば?
本格的にやるならFX ComposerやRenderMonkey使うし
需要がないんでしょ
245 :デフォルトの名無しさん2010/12/16(木) 11:31:52
intelishadeでggr
開発止まっちゃったんかな、サイト消える前の開発状況見てかなり期待してたんだけど
開発止まっちゃったんかな、サイト消える前の開発状況見てかなり期待してたんだけど
249 :デフォルトの名無しさん2010/12/18(土) 17:30:34
ttp://social.msdn.microsoft.com/Forums/ja-JP/xnagameja/thread/aa5ea326-8308-41
1d-b9a9-47901e81b22b
>アニメーション情報はコンテントパイプライン上で常に60fpsに再サンプリングされ、
同時にフレーム間の補間も行っています。
これが本当に行われているかわからん。
Metasequoiaとkeynoteプラグインの組み合わせで作った Xファイルは
DirectXSDK付属のDirectX Viewerで正常に補完されるが、SkinningSampleでは
keynote上のキーフレームしかでない。
自宅環境では、正しいファイルが作れないので、Xファイルのフォーマットに
不足があるかをハッキリさせたい。
最悪、ソフトを変えるなり、DXUTを参考に補完とかするのかな?
1d-b9a9-47901e81b22b
>アニメーション情報はコンテントパイプライン上で常に60fpsに再サンプリングされ、
同時にフレーム間の補間も行っています。
これが本当に行われているかわからん。
Metasequoiaとkeynoteプラグインの組み合わせで作った Xファイルは
DirectXSDK付属のDirectX Viewerで正常に補完されるが、SkinningSampleでは
keynote上のキーフレームしかでない。
自宅環境では、正しいファイルが作れないので、Xファイルのフォーマットに
不足があるかをハッキリさせたい。
最悪、ソフトを変えるなり、DXUTを参考に補完とかするのかな?
252 :デフォルトの名無しさん2010/12/19(日) 09:59:35
長文気味になりますが、失礼します。
現在2Dのシューティングを作っているのですが、教えて欲しいことがあります。
2Dの画像の回転なのですが、どういう風にやればいいでしょうか。
大元になるものは学校で教師が作ったもので、一通りやりたいことはできるものらしいのですが、
質問した際には、public class Sprite(別のクラス内)というところにある
public void SetDestAngle(Vector2 center, float angle)
{
origin = center;
rotation = MathHelper.ToRadians(angle);
}
という記述を回転させたい画像に組み込め、という風に言われたのですが、
どこに追加すればいいかよくわからなくてうまくいってません。
プログラム云々に関する知識が足りないと思っているので、しっかりと説明できているかわかりませんが、
どうかよろしくお願いします。
現在2Dのシューティングを作っているのですが、教えて欲しいことがあります。
2Dの画像の回転なのですが、どういう風にやればいいでしょうか。
大元になるものは学校で教師が作ったもので、一通りやりたいことはできるものらしいのですが、
質問した際には、public class Sprite(別のクラス内)というところにある
public void SetDestAngle(Vector2 center, float angle)
{
origin = center;
rotation = MathHelper.ToRadians(angle);
}
という記述を回転させたい画像に組み込め、という風に言われたのですが、
どこに追加すればいいかよくわからなくてうまくいってません。
プログラム云々に関する知識が足りないと思っているので、しっかりと説明できているかわかりませんが、
どうかよろしくお願いします。
256 :デフォルトの名無しさん2010/12/19(日) 14:14:53
>>252
自己解決オメ。
自己解決オメ。
253 :デフォルトの名無しさん2010/12/19(日) 10:29:21
それで判らないなら
もう回転させた画像用意しろよ
もう回転させた画像用意しろよ
255 :デフォルトの名無しさん2010/12/19(日) 10:59:32
>>253,254
すみません、自力でできました。
スレ汚し失礼しました。
すみません、自力でできました。
スレ汚し失礼しました。
258 :デフォルトの名無しさん2010/12/20(月) 12:18:34
でも確かにSpriteBatchに限らずXNAは引数の意味やオーバーロードが分かりにくい気はする
いかにもDirectXらしい悪いところを真似してる感じ
いかにもDirectXらしい悪いところを真似してる感じ
260 :デフォルトの名無しさん2010/12/20(月) 16:12:11
素でわかりにくい上に色々切り落としていくから更にカオスに
261 :デフォルトの名無しさん2010/12/20(月) 18:52:53
元が悪いものを叩き上げていいものに見せようという発想はセガに通じるものがある。
263 :デフォルトの名無しさん2010/12/21(火) 01:41:50
だな 理解するために用意されたシンプルなサンプルであって欲しいと思うよ
俺は XNAのガチガチのスプライトがなぁ…
テクスチャと座標の4頂点自由に設定したくなったら 正射影で頂点バッファとかポリゴン描画になって一気にメンドくさくなる
たぶんこれ だいたい作る羽目になると思うけどな
それをみんながやらなくていいように用意したのがライブラリだと思うんだがなぁ
嫌なら使うな とか言ってるとますます過疎っちゃうな
タダなんだけどな… 最近はUDKとかがゲーム作るには楽そうだなぁ
俺は XNAのガチガチのスプライトがなぁ…
テクスチャと座標の4頂点自由に設定したくなったら 正射影で頂点バッファとかポリゴン描画になって一気にメンドくさくなる
たぶんこれ だいたい作る羽目になると思うけどな
それをみんながやらなくていいように用意したのがライブラリだと思うんだがなぁ
嫌なら使うな とか言ってるとますます過疎っちゃうな
タダなんだけどな… 最近はUDKとかがゲーム作るには楽そうだなぁ
264 :デフォルトの名無しさん2010/12/21(火) 02:03:10
>>263
俺はもうVS1.1で解決させちゃったなそれw
なんなら、ここに貼ってやろうか?
俺はもうVS1.1で解決させちゃったなそれw
なんなら、ここに貼ってやろうか?
265 :デフォルトの名無しさん2010/12/21(火) 02:27:41
ttp://codepad.org/34210xhv
みんな使うなら
みんな使うなら
267 :デフォルトの名無しさん2010/12/21(火) 12:13:59
>>265
ありがとう! やっぱシェーダー使うんだね
オイラは BasicEffect 使ってたよ
機能的にも特別なことする必要なかったからなぁ
screenPos -= 0.5f;
float2 result = screenPos.xy / ScreenSize.xy * 2 - 1;
*2 はハーフサイズになっちゃうから2倍にしてるんだろうけど
0.5 と -1 はなんだろう?
-0.5 は正規化座標系のセンタリング?
>>266
ここで言うスクリーンポジションは正規化空間なのか
だから >>265 のも正規化しちゃうんだね
ありがとう! やっぱシェーダー使うんだね
オイラは BasicEffect 使ってたよ
機能的にも特別なことする必要なかったからなぁ
screenPos -= 0.5f;
float2 result = screenPos.xy / ScreenSize.xy * 2 - 1;
*2 はハーフサイズになっちゃうから2倍にしてるんだろうけど
0.5 と -1 はなんだろう?
-0.5 は正規化座標系のセンタリング?
>>266
ここで言うスクリーンポジションは正規化空間なのか
だから >>265 のも正規化しちゃうんだね
268 :デフォルトの名無しさん2010/12/21(火) 12:43:51
BasicEffectでもWorld,View,Projectionが単位行列なら、
vertexの座標を同じ式で弄れば行けハズ。試した事ないが
>>266と>>267は式変形すれば解るが縮尺は同じ式
(267は上下反転するかな?)
あとはここの内容
ttp://msdn.microsoft.com/ja-jp/library/bb206341(VS.85).aspx
>ビューポートのクリッピング ボリュームの範囲は、X 方向につい
>ては -1.0 〜 1.0、Y 方向については 1.0 〜 -1.0
とあるが、ハーフサイズ?とか何処かでそう言う説明の仕方されてるなら
わかってるかな?
-0.5は、ドット単位だと(-0.5,-0.5)ずれるから必要。
これは公式にも無いかもしれない。
vertexの座標を同じ式で弄れば行けハズ。試した事ないが
>>266と>>267は式変形すれば解るが縮尺は同じ式
(267は上下反転するかな?)
あとはここの内容
ttp://msdn.microsoft.com/ja-jp/library/bb206341(VS.85).aspx
>ビューポートのクリッピング ボリュームの範囲は、X 方向につい
>ては -1.0 〜 1.0、Y 方向については 1.0 〜 -1.0
とあるが、ハーフサイズ?とか何処かでそう言う説明の仕方されてるなら
わかってるかな?
-0.5は、ドット単位だと(-0.5,-0.5)ずれるから必要。
これは公式にも無いかもしれない。
266 :デフォルトの名無しさん2010/12/21(火) 03:02:43
ttp://create.msdn.com/ja-JP/education/catalog/tutorial/optimization_highfrequency
ここに同じ主旨のshaderあるぞ
//Move to screen space.
Out.ScreenPos.x = (In.ObjectPos.x - halfScreenWidth) / halfScreenWidth;
Out.ScreenPos.y = (In.ObjectPos.y - halfScreenHeight) / halfScreenHeight;
ここに同じ主旨のshaderあるぞ
//Move to screen space.
Out.ScreenPos.x = (In.ObjectPos.x - halfScreenWidth) / halfScreenWidth;
Out.ScreenPos.y = (In.ObjectPos.y - halfScreenHeight) / halfScreenHeight;
270 :デフォルトの名無しさん2010/12/22(水) 00:26:29
上下反転はスクリーン上だとYが下に進むと+になるからね
ドットずれかぁ
どおりで 0.5減算でセンタリングだとすると 正規化前に減算してるから座標系が合わないからおかしいなぁと思ってたんだ
ピクセルのレンダリング中心が0.5にあるってのは なんかで聞いたか見たことあるな
バイリニアの巻き込みのやつだったっけかな なんかで見たよ
で -1 で減算してるのが -1 〜 1 のセンタリングなんだね
なるほどなるほど
やっと把握できた 丁寧に説明してくれて ホントありがとう!
サラっとわかるように僕はもっと勉強しないとな
ドットずれかぁ
どおりで 0.5減算でセンタリングだとすると 正規化前に減算してるから座標系が合わないからおかしいなぁと思ってたんだ
ピクセルのレンダリング中心が0.5にあるってのは なんかで聞いたか見たことあるな
バイリニアの巻き込みのやつだったっけかな なんかで見たよ
で -1 で減算してるのが -1 〜 1 のセンタリングなんだね
なるほどなるほど
やっと把握できた 丁寧に説明してくれて ホントありがとう!
サラっとわかるように僕はもっと勉強しないとな
271 :デフォルトの名無しさん2010/12/24(金) 17:01:52
すみません質問です。
BoundingBoxを使えば当たっているかの判定ができるところまで調べたのですが、
当たっている方向を調べるにはどうすればいいのでしょうか、例えばマリオの?ブロックとか
当たる方向によって乗ったりぶつかったりコインが出たりしますよね、あんなのがやりたいんですが。
とりあえず考えたのは、6面全部別のBoundingBoxを使う方法ですが、
6倍当たり判定をやるのはさすがにまずそうなので
何かいい方法があったらお願いします
BoundingBoxを使えば当たっているかの判定ができるところまで調べたのですが、
当たっている方向を調べるにはどうすればいいのでしょうか、例えばマリオの?ブロックとか
当たる方向によって乗ったりぶつかったりコインが出たりしますよね、あんなのがやりたいんですが。
とりあえず考えたのは、6面全部別のBoundingBoxを使う方法ですが、
6倍当たり判定をやるのはさすがにまずそうなので
何かいい方法があったらお願いします
272 :デフォルトの名無しさん2010/12/24(金) 18:03:07
>>271
移動してるほうの進行ベクトルじゃダメなの?
移動してるほうの進行ベクトルじゃダメなの?
273 :デフォルトの名無しさん2010/12/24(金) 18:57:51
>>272
斜め上にジャンプしてる時とか
下にも横にもぶつかりうりますよね?
斜め上にジャンプしてる時とか
下にも横にもぶつかりうりますよね?
274 :デフォルトの名無しさん2010/12/24(金) 19:12:25
>>273
え? ん?
だから進行ベクトルなんだけど?
なんか言葉の勘違いかもしれないので…
最終的には移動方向の進行ベクトルは1本のベクトルになるよ?
え? ん?
だから進行ベクトルなんだけど?
なんか言葉の勘違いかもしれないので…
最終的には移動方向の進行ベクトルは1本のベクトルになるよ?
275 :デフォルトの名無しさん2010/12/24(金) 19:25:06
?んーわかんないです。
>最終的には移動方向の進行ベクトルは1本のベクトルになるよ?
移動方向への進行ベクトルってのは>>273でいう斜めってのとは別ものですか?
>最終的には移動方向の進行ベクトルは1本のベクトルになるよ?
移動方向への進行ベクトルってのは>>273でいう斜めってのとは別ものですか?
279 :デフォルトの名無しさん2010/12/24(金) 19:58:23
>>271
俺もあんま詳しくないけど、
X方向への食い込みが大きければ横から、Y方向への食い込みが大きければ下から
ってことにするんじゃなかったっけ?
俺もあんま詳しくないけど、
X方向への食い込みが大きければ横から、Y方向への食い込みが大きければ下から
ってことにするんじゃなかったっけ?
281 :デフォルトの名無しさん2010/12/24(金) 23:28:49
えっと 「衝突」ってのはさ
基本的に どちらか または 両方 が動いているからぶつかるんであって
動いていないと ぶつかることはないんだよ?
動くってことは進行方向があるってことでしょ?
もし最初から重なってるなら それはただ進行方向ゼロのベクトルってだけじゃない
>>275 「ベクトル」という定義そのもの自体を調べてみてよ きっとわかると思うよ
AABBは ただ内包する軸に沿った箱だから形状が大雑把になっただけでしょ?
方向とは関係ないと思うんだけどな
基本的に どちらか または 両方 が動いているからぶつかるんであって
動いていないと ぶつかることはないんだよ?
動くってことは進行方向があるってことでしょ?
もし最初から重なってるなら それはただ進行方向ゼロのベクトルってだけじゃない
>>275 「ベクトル」という定義そのもの自体を調べてみてよ きっとわかると思うよ
AABBは ただ内包する軸に沿った箱だから形状が大雑把になっただけでしょ?
方向とは関係ないと思うんだけどな
287 :デフォルトの名無しさん2010/12/25(土) 00:01:48
>>281
進行方向が分かってもどの面に衝突するかはわかんないだろ
進行方向が分かってもどの面に衝突するかはわかんないだろ
291 :デフォルトの名無しさん2010/12/25(土) 00:08:14
>>287
進行方向に移動しているわけだから AABB だとむしろわかるんじゃない?
ひょっとして45度の完全斜めを貫くベクトルの場合 どの「面」とあたるかのこと言ってるのかな?
進行方向に移動しているわけだから AABB だとむしろわかるんじゃない?
ひょっとして45度の完全斜めを貫くベクトルの場合 どの「面」とあたるかのこと言ってるのかな?
276 :デフォルトの名無しさん2010/12/24(金) 19:27:53
横からだがw
> ?んーわかんないです。
もうこの人には何言っても無理な予感w
> ?んーわかんないです。
もうこの人には何言っても無理な予感w
278 :デフォルトの名無しさん2010/12/24(金) 19:30:20
いやAABB同士の衝突ならどの面に当たったかは進行方向だけじゃ分からないだろ
282 :デフォルトの名無しさん2010/12/24(金) 23:39:50
AABBだと、面だけじゃなく線と点の衝突もあるような
□→◆
マリオが例に出てるんだから普通のバウンディングボックスなんじゃないかなぁ
マリオの例だと斜めは移動方向だけど、
上に大きく右にちょっとジャンプしたからといって下からぶつかるとは限らない
なので衝突時の際の各ボックスの中心間のベクトルを考えればいいんじゃないかな
移動は離散的だからこれで完全じゃない(例:移動が超高速)けど
その辺の細かい所はわからないや
□→◆
マリオが例に出てるんだから普通のバウンディングボックスなんじゃないかなぁ
マリオの例だと斜めは移動方向だけど、
上に大きく右にちょっとジャンプしたからといって下からぶつかるとは限らない
なので衝突時の際の各ボックスの中心間のベクトルを考えればいいんじゃないかな
移動は離散的だからこれで完全じゃない(例:移動が超高速)けど
その辺の細かい所はわからないや
286 :デフォルトの名無しさん2010/12/25(土) 00:00:39
>>282
>□→◆
これって AABBじゃないと思うんだけどな…
ちょっと逆に教えて欲しいんですが
AABB で線と点の衝突ってどういうことだろう?
ま 線でも点でもどっちでもいいけど 内包すれば
ただの長方形だから 考え方に変わりはないと思うんだ
でもオイラの認識違いかもしれないから是非 教えて欲しいな
>移動は離散的だからこれで完全じゃない(例:移動が超高速)
これだけど超高速でも 単に過去の位置と今現在の位置の差分でOKだと思うけどなぁ ダメ?
>□→◆
これって AABBじゃないと思うんだけどな…
ちょっと逆に教えて欲しいんですが
AABB で線と点の衝突ってどういうことだろう?
ま 線でも点でもどっちでもいいけど 内包すれば
ただの長方形だから 考え方に変わりはないと思うんだ
でもオイラの認識違いかもしれないから是非 教えて欲しいな
>移動は離散的だからこれで完全じゃない(例:移動が超高速)
これだけど超高速でも 単に過去の位置と今現在の位置の差分でOKだと思うけどなぁ ダメ?
290 :2822010/12/25(土) 00:06:52
>>286 このたびは、色々と誤解を招いたみたいで
283 :デフォルトの名無しさん2010/12/24(金) 23:50:12
それ逆
AABBが軸に沿ったバウンディングボックス。XNAのBoundingBox構造体はAABB。
衝突した面を求めるなら中心間のベクトルじゃダメだよ。
■のどの面に□が衝突したかを中心間のベクトルの方向で調べるとすると、
□□
■
は上側に衝突してるけど
□□□□□□□□□□□□□□
■
は右側になっちゃう
AABBが軸に沿ったバウンディングボックス。XNAのBoundingBox構造体はAABB。
衝突した面を求めるなら中心間のベクトルじゃダメだよ。
■のどの面に□が衝突したかを中心間のベクトルの方向で調べるとすると、
□□
■
は上側に衝突してるけど
□□□□□□□□□□□□□□
■
は右側になっちゃう
284 :デフォルトの名無しさん2010/12/24(金) 23:53:38
俺も相対ベクトルだけでも良いような気がするな
けど、AABBとかどこで使うか解らないや
教えてえろいひと
けど、AABBとかどこで使うか解らないや
教えてえろいひと
289 :デフォルトの名無しさん2010/12/25(土) 00:04:46
あ、それと俺282だけどAABBとOBB勘違いしてた
AABBはただのバウンディングボックスのことだと思う
OBBは面積が小さくなるように、オブジェクトごとの軸を適切に置き換えたやつ
こっちは計算はなんか難しげ
AABBはただのバウンディングボックスのことだと思う
OBBは面積が小さくなるように、オブジェクトごとの軸を適切に置き換えたやつ
こっちは計算はなんか難しげ
292 :デフォルトの名無しさん2010/12/25(土) 00:14:47
もともとそういう話だろ
どの面に当たるかは進行方向と重なったときの位置関係の両方の情報がないと分からん
どの面に当たるかは進行方向と重なったときの位置関係の両方の情報がないと分からん
293 :デフォルトの名無しさん2010/12/25(土) 00:23:56
45度の場合は実装依存だよ
たとえば右上の進行方向ベクトルとした場合
片方の箱に右上の頂点が 相手側に内包されてるAABBなわけだから
・上面が衝突したことにするか
・右面が衝突したことにするか
は 先にどっちを調べるかで結果が変わるから実装依存だよ
これについては 正解はなく どっちにするかはお好きな方でOKじゃない?
たとえば右上の進行方向ベクトルとした場合
片方の箱に右上の頂点が 相手側に内包されてるAABBなわけだから
・上面が衝突したことにするか
・右面が衝突したことにするか
は 先にどっちを調べるかで結果が変わるから実装依存だよ
これについては 正解はなく どっちにするかはお好きな方でOKじゃない?
295 :デフォルトの名無しさん2010/12/25(土) 00:30:47
>>293
斜め45度ってのは速度のベクトルのことか?
だとしたら斜め45度で箱の上に着地したら側面にぶつかるか箱の上に乗るかは実装依存なのか?
それとも頂点と頂点がぴったしぶつかる感じの事を言ってるのか?
斜め45度ってのは速度のベクトルのことか?
だとしたら斜め45度で箱の上に着地したら側面にぶつかるか箱の上に乗るかは実装依存なのか?
それとも頂点と頂点がぴったしぶつかる感じの事を言ってるのか?
299 :デフォルトの名無しさん2010/12/25(土) 00:42:56
293だけどさ
>>295
>だとしたら斜め45度で箱の上に着地したら側面にぶつかるか箱の上に乗るかは実装依存なのか?
そうだね 実装次第だと思うよ
頂点同士がぴったりぶつかる話じゃないよ
着地ということだから右下45度の速度ベクトルとする
AABBは ちょうど正方形を考えて欲しい
*----*
l A l
l *-+--*
*--+-* l
l B l
*----*
これを見て右下の速度ベクトルである場合 どっちの面に衝突していると言える?
Aのチェック時に右の面を先に見る場合は そこで打ち切ら右面にヒットとなる
が 下面を先にチェックするとした面にヒットしたことになる
つまり どっちもヒットしている45の場合は 答えが出せない
だから好きなように実装依存だと言ってるんだよ?
>>295
>だとしたら斜め45度で箱の上に着地したら側面にぶつかるか箱の上に乗るかは実装依存なのか?
そうだね 実装次第だと思うよ
頂点同士がぴったりぶつかる話じゃないよ
着地ということだから右下45度の速度ベクトルとする
AABBは ちょうど正方形を考えて欲しい
*----*
l A l
l *-+--*
*--+-* l
l B l
*----*
これを見て右下の速度ベクトルである場合 どっちの面に衝突していると言える?
Aのチェック時に右の面を先に見る場合は そこで打ち切ら右面にヒットとなる
が 下面を先にチェックするとした面にヒットしたことになる
つまり どっちもヒットしている45の場合は 答えが出せない
だから好きなように実装依存だと言ってるんだよ?
294 :デフォルトの名無しさん2010/12/25(土) 00:30:11
たとえ30度でも、
右にあたるか上にあたるかは位置関係がわからないと無理、って話じゃないの
右にあたるか上にあたるかは位置関係がわからないと無理、って話じゃないの
296 :デフォルトの名無しさん2010/12/25(土) 00:31:59
位置も、重心の位置だけじゃダメで頂点の位置も分からんとイカンね
300 :デフォルトの名無しさん2010/12/25(土) 00:51:45
ごめん 図がズレちゃったよ
正方形の角同士が同じだけ互いに内包する図のつもりなんだ
正方形の角同士が同じだけ互いに内包する図のつもりなんだ
302 :デフォルトの名無しさん2010/12/25(土) 00:57:34
>正方形の角同士が同じだけ互いに内包する
そういう意味なら実装依存だろうね
そういう意味なら実装依存だろうね
304 :デフォルトの名無しさん2010/12/25(土) 11:51:06
上記の場合は ぴったり45度で同じ量だけ衝突した場合の本当にレアなケースなんだ
まぁ 往々にしてそういうレアケースがバグとなっちゃうんだけどさ
でも普段は進行ベクトルと衝突処理でマリオのは実装できる
ただ方向を処理する際にどっちが優先されるか または両方あたりにするかは実装次第ってこと
まぁ 往々にしてそういうレアケースがバグとなっちゃうんだけどさ
でも普段は進行ベクトルと衝突処理でマリオのは実装できる
ただ方向を処理する際にどっちが優先されるか または両方あたりにするかは実装次第ってこと
305 :デフォルトの名無しさん2010/12/25(土) 21:47:43
XNAの新規プロジェクトを立ち上げて、
IsFixedTimeStep = true; と書いただけでCPU負荷が100%になって、
フレームレートも54〜55辺りになるんですが、誰か原因わかりますか?
ちなみにfalseに設定するとCPU負荷は0〜1%で安定して60FPS出ます。
以下環境。
CPU: Core i3 540 / GPU: オンチップのやつ / RAM: 4GB
Windows7 64bit / XNA 3.1
IsFixedTimeStep = true; と書いただけでCPU負荷が100%になって、
フレームレートも54〜55辺りになるんですが、誰か原因わかりますか?
ちなみにfalseに設定するとCPU負荷は0〜1%で安定して60FPS出ます。
以下環境。
CPU: Core i3 540 / GPU: オンチップのやつ / RAM: 4GB
Windows7 64bit / XNA 3.1
309 :3062010/12/26(日) 11:10:04
>>307
ごめん、ナナメ読みしてたw
SynchronizeWithVerticalRetrace = true
のつもりで言ってた。
結局、>>305の原因は分からなくてゴメン。
ごめん、ナナメ読みしてたw
SynchronizeWithVerticalRetrace = true
のつもりで言ってた。
結局、>>305の原因は分からなくてゴメン。
306 :デフォルトの名無しさん2010/12/25(土) 21:53:09
CPU100%云々は分からないけど、
ディスプレイのリフレッシュレートは60ある?
その数字でFPSは頭打ちになるよ。
IsFixedTimeStep = trueだとね。
ディスプレイのリフレッシュレートは60ある?
その数字でFPSは頭打ちになるよ。
IsFixedTimeStep = trueだとね。
307 :デフォルトの名無しさん2010/12/25(土) 23:06:44
>>306
リフレッシュレートは59Hzでした。
ググってみたらこんな記事出てきたがさっぱり。
http://forums.create.msdn.com/forums/p/42632/279792.aspx
リフレッシュレートは59Hzでした。
ググってみたらこんな記事出てきたがさっぱり。
http://forums.create.msdn.com/forums/p/42632/279792.aspx
308 :デフォルトの名無しさん2010/12/26(日) 10:23:06
メタセコ・Keynoteのデータが簡単に読み込めるようになったみたい
ttp://blogs.msdn.com/b/ito/archive/2010/12/23/metasequoia-and-xna-part-4.aspx
ttp://blogs.msdn.com/b/ito/archive/2010/12/23/metasequoia-and-xna-part-4.aspx
310 :2492010/12/26(日) 18:47:35
>>308
やっぱり、メタセコ側のプラグインで再サンプリングしてる
なに考えてあんな返信したんだ
やっぱり、メタセコ側のプラグインで再サンプリングしてる
なに考えてあんな返信したんだ
311 :デフォルトの名無しさん2010/12/30(木) 21:40:00
XNA3.1でポリゴン1枚を
for (int i = 0; i < 1000; i++)
{
foreach (EffectPass pass in effect.CurrentTechnique.Passes)
{
pass.Begin();
graphics.GraphicsDevice.DrawUserIndexedPrimitives<VertexPositionNormalTexture>(
PrimitiveType.TriangleList, _data, 0, _data.Length, _indices, 0, 1);
pass.End();
}
}
って感じでかいたら、1000枚程度で
フレームレート落ちてきた。
Radeon4350でも1フレーム1000ポリゴンはないだろって思うのだが
この描き方だともんだいあるのか?
for (int i = 0; i < 1000; i++)
{
foreach (EffectPass pass in effect.CurrentTechnique.Passes)
{
pass.Begin();
graphics.GraphicsDevice.DrawUserIndexedPrimitives<VertexPositionNormalTexture>(
PrimitiveType.TriangleList, _data, 0, _data.Length, _indices, 0, 1);
pass.End();
}
}
って感じでかいたら、1000枚程度で
フレームレート落ちてきた。
Radeon4350でも1フレーム1000ポリゴンはないだろって思うのだが
この描き方だともんだいあるのか?
313 :デフォルトの名無しさん2010/12/30(木) 23:18:59
>>311
ハテナから頭の悪そうな子供のエントリを持ってきて
荒らすのは辞めなさい
ハテナから頭の悪そうな子供のエントリを持ってきて
荒らすのは辞めなさい
312 :デフォルトの名無しさん2010/12/30(木) 22:52:21
まず、内部のforeachは何回まわっているのか?
あと1ポリゴンを1000回と1000ポリゴンを1回では全然違う。
あと1ポリゴンを1000回と1000ポリゴンを1回では全然違う。
314 :3112010/12/31(金) 05:14:41
いや、やりたいことは2Dのマップチップのかわりに
テクスチャを貼った3Dの箱をたくさん並べて
それで床やら壁やらを表現したいのよ
で、プリミティブで作ったブロックをたくさん並べると
非常に重たい処理になるようで困ってるのよ
>>312
foreach (EffectPass pass in effect.CurrentTechnique.Passes)
の部分は1回しか回ってない。
試しに頂点バッファに1000ポリゴン分のデータを突っ込んで
graphics.GraphicsDevice.DrawUserIndexedPrimitives<VertexPositionNormalTexture>(
PrimitiveType.TriangleList, _data, 0, _data.Length, _indices, 0, 1000);
とか書いてループを1回にしても結果は変わらなかった。
なので、プリミティブを描画するときの負荷は1ポリゴンを1000回と
1000ポリゴンを1回では等価だと考えられる。
ただModelMeshつかっての描画の場合は10000ポリゴンぐらい平気で書いてるので
書き方で回避できるもんだいじゃないかな?と考えてる。
テクスチャを貼った3Dの箱をたくさん並べて
それで床やら壁やらを表現したいのよ
で、プリミティブで作ったブロックをたくさん並べると
非常に重たい処理になるようで困ってるのよ
>>312
foreach (EffectPass pass in effect.CurrentTechnique.Passes)
の部分は1回しか回ってない。
試しに頂点バッファに1000ポリゴン分のデータを突っ込んで
graphics.GraphicsDevice.DrawUserIndexedPrimitives<VertexPositionNormalTexture>(
PrimitiveType.TriangleList, _data, 0, _data.Length, _indices, 0, 1000);
とか書いてループを1回にしても結果は変わらなかった。
なので、プリミティブを描画するときの負荷は1ポリゴンを1000回と
1000ポリゴンを1回では等価だと考えられる。
ただModelMeshつかっての描画の場合は10000ポリゴンぐらい平気で書いてるので
書き方で回避できるもんだいじゃないかな?と考えてる。
315 :デフォルトの名無しさん2010/12/31(金) 07:46:19
エスパーすると
画面スクロール時に50回ぐらいnewとディスポーズしてる
とにかく書いてるような事は
ねーよ
画面スクロール時に50回ぐらいnewとディスポーズしてる
とにかく書いてるような事は
ねーよ
316 :3112010/12/31(金) 08:25:59
>>315
確かにnewは何回かしてるけど50回もしとらんしなぁ
Draw部分全文
protected override void Draw(GameTime gameTime)
{
GraphicsDevice.Clear(Color.CornflowerBlue);
// TODO: Add your drawing code here
graphics.GraphicsDevice.VertexDeclaration = new VertexDeclaration(
graphics.GraphicsDevice, VertexPositionNormalTexture.VertexElements);
Matrix world = Matrix.Identity;
Matrix view = Matrix.CreateLookAt(new Vector3(0, 0, 5), new Vector3(0, 0, 0), Vector3.Up);
Matrix projection = Matrix.CreatePerspectiveFieldOfView(
MathHelper.ToRadians(45), graphics.GraphicsDevice.Viewport.AspectRatio, 0.1f, 1000.0f);
effect.World = world;
effect.View = view;
effect.Projection = projection;
effect.Begin();
for (int i = 0; i < 1; i++)
{
foreach (EffectPass pass in effect.CurrentTechnique.Passes)
{
pass.Begin();
graphics.GraphicsDevice.DrawUserIndexedPrimitives<VertexPositionNormalTexture>(
PrimitiveType.TriangleList, _data, 0, _data.Length, _indices, 0, 1000);
pass.End();
}
}
effect.End();
FPS(gameTime);
base.Draw(gameTime);
}
FPSはフレームレート表示用の関数、_dataはVertexPositionNormalTextureで3頂点のみ、_indices,はInitialize()で{0,1,2,0,1,2,,,,,}って感じで3000個の配列が入ってる
確かにnewは何回かしてるけど50回もしとらんしなぁ
Draw部分全文
protected override void Draw(GameTime gameTime)
{
GraphicsDevice.Clear(Color.CornflowerBlue);
// TODO: Add your drawing code here
graphics.GraphicsDevice.VertexDeclaration = new VertexDeclaration(
graphics.GraphicsDevice, VertexPositionNormalTexture.VertexElements);
Matrix world = Matrix.Identity;
Matrix view = Matrix.CreateLookAt(new Vector3(0, 0, 5), new Vector3(0, 0, 0), Vector3.Up);
Matrix projection = Matrix.CreatePerspectiveFieldOfView(
MathHelper.ToRadians(45), graphics.GraphicsDevice.Viewport.AspectRatio, 0.1f, 1000.0f);
effect.World = world;
effect.View = view;
effect.Projection = projection;
effect.Begin();
for (int i = 0; i < 1; i++)
{
foreach (EffectPass pass in effect.CurrentTechnique.Passes)
{
pass.Begin();
graphics.GraphicsDevice.DrawUserIndexedPrimitives<VertexPositionNormalTexture>(
PrimitiveType.TriangleList, _data, 0, _data.Length, _indices, 0, 1000);
pass.End();
}
}
effect.End();
FPS(gameTime);
base.Draw(gameTime);
}
FPSはフレームレート表示用の関数、_dataはVertexPositionNormalTextureで3頂点のみ、_indices,はInitialize()で{0,1,2,0,1,2,,,,,}って感じで3000個の配列が入ってる
319 :デフォルトの名無しさん2010/12/31(金) 15:06:17
>>314
DrawPrimitivesとpass.Begin(end)は重い処理なので、
1000回もやれば、当然重たくなる。
→DrawPrimitivesはできるだけ少なく。
pass.Begin(end)もできるだけまとめて、変更回数を少なくする。
>>316
3頂点しか用意してないということは、1000回同じ場所にポリゴンを描画してるわけですよね?
つまり、Zテストがまったく機能しない状態。
ポリゴンの描画サイズはどのぐらいですか?
フィルレートが足りなくて処理落ちしてるのでは?
→Z値(優先順位)を個別に設定して、手前から描画する。
この辺を気をつければ、そこそこの速度が出るはず。
初心者なので、見当はずれなこといってたらごめん。
DrawPrimitivesとpass.Begin(end)は重い処理なので、
1000回もやれば、当然重たくなる。
→DrawPrimitivesはできるだけ少なく。
pass.Begin(end)もできるだけまとめて、変更回数を少なくする。
>>316
3頂点しか用意してないということは、1000回同じ場所にポリゴンを描画してるわけですよね?
つまり、Zテストがまったく機能しない状態。
ポリゴンの描画サイズはどのぐらいですか?
フィルレートが足りなくて処理落ちしてるのでは?
→Z値(優先順位)を個別に設定して、手前から描画する。
この辺を気をつければ、そこそこの速度が出るはず。
初心者なので、見当はずれなこといってたらごめん。
321 :3112010/12/31(金) 17:13:22
>>319
乱数で頂点を生成してDrawUserPrimitives使って描画する方法では
DrawUserIndexedPrimitivesで3頂点を繰り返し書く方法とは違い
1000ポリゴンでフレームレートが落ちることが無く表示できることがわかりました。
この方法なら8000ポリゴンぐらいまで書くだけなら書けるみたい。
確認に、3頂点を繰り返し格納したものをDrawUserPrimitivesで表示すると
やはり1000ポリゴンぐらいから重たくなってきた。
ってことは、重複した頂点(またはポリゴン)の処理が非常に重たいという結論で良いんだろうか?
乱数で頂点を生成してDrawUserPrimitives使って描画する方法では
DrawUserIndexedPrimitivesで3頂点を繰り返し書く方法とは違い
1000ポリゴンでフレームレートが落ちることが無く表示できることがわかりました。
この方法なら8000ポリゴンぐらいまで書くだけなら書けるみたい。
確認に、3頂点を繰り返し格納したものをDrawUserPrimitivesで表示すると
やはり1000ポリゴンぐらいから重たくなってきた。
ってことは、重複した頂点(またはポリゴン)の処理が非常に重たいという結論で良いんだろうか?
323 :3192010/12/31(金) 18:14:27
>>321
頂点が重複すること自体は、頂点が減るのでバーテックスシェーダー的にはよい事です。
(メモリと速度面で。)
ただ今回の場合は、完全に一致したポリゴンなので、Zテストがうまく機能しなくなるので、
重たくなるということです。
ポリゴン自体が重なる(完全に同じ座標ではない)ことは、Zテストが有効になるので、
速度面で有利になります。
また同一座標のポリゴン表示は、乱数で決めたときと違って、カリングできないので、
速度面で不利です。(通常、カリングすればポリゴン数は約半分になる。)
頂点が重複すること自体は、頂点が減るのでバーテックスシェーダー的にはよい事です。
(メモリと速度面で。)
ただ今回の場合は、完全に一致したポリゴンなので、Zテストがうまく機能しなくなるので、
重たくなるということです。
ポリゴン自体が重なる(完全に同じ座標ではない)ことは、Zテストが有効になるので、
速度面で有利になります。
また同一座標のポリゴン表示は、乱数で決めたときと違って、カリングできないので、
速度面で不利です。(通常、カリングすればポリゴン数は約半分になる。)
324 :3112011/01/01(土) 15:26:26
>>322
乱数で作った頂点なら、VertexBufferを使ったほうが少しだけ早くなった
1フレームあたりで8000→9000ポリゴンになったぐらい
同一ポリゴンの描画と変わらず。
>>323
完全一致はまずいということで、理解しました。
言われてみれば、カリングしてるのですから実際に描画されてるポリゴンは半分の
4000ポリゴンぐらいになるわけか
これで、作成方針がだいたい見えてきました、ありがとうございます。
立方体を1個づつ描画するのではなく、描画するためのバッファを作り
そこに溜め込んでから描画することにします。
しかし、バッファを毎フレーム更新するとなると、こんどはCPU負荷との戦いになりそう
乱数で作った頂点なら、VertexBufferを使ったほうが少しだけ早くなった
1フレームあたりで8000→9000ポリゴンになったぐらい
同一ポリゴンの描画と変わらず。
>>323
完全一致はまずいということで、理解しました。
言われてみれば、カリングしてるのですから実際に描画されてるポリゴンは半分の
4000ポリゴンぐらいになるわけか
これで、作成方針がだいたい見えてきました、ありがとうございます。
立方体を1個づつ描画するのではなく、描画するためのバッファを作り
そこに溜め込んでから描画することにします。
しかし、バッファを毎フレーム更新するとなると、こんどはCPU負荷との戦いになりそう
317 :デフォルトの名無しさん2010/12/31(金) 13:20:31
xnaってマイクロソフト見捨てずに、続けると思います?
320 :デフォルトの名無しさん2010/12/31(金) 15:18:26
>>317
近い将来、Kinect対応するみたいですね。
私の予想(希望)では、
XBOX360の次世代機にも対応するんではないかと思ってます。
GS6.0とかになってそうですが。
近い将来、Kinect対応するみたいですね。
私の予想(希望)では、
XBOX360の次世代機にも対応するんではないかと思ってます。
GS6.0とかになってそうですが。
318 :デフォルトの名無しさん2010/12/31(金) 14:27:03
んな大したもんじゃないだろ
今必要なら使えばいい
所詮DirectXのラッパーなんだから他の環境に移行したとしても無駄にはならん
今必要なら使えばいい
所詮DirectXのラッパーなんだから他の環境に移行したとしても無駄にはならん
322 :デフォルトの名無しさん2010/12/31(金) 17:28:43
VertexBufferを使ってみてはどうだろう?
325 :デフォルトの名無しさん2011/01/04(火) 16:25:13
>XNA Framework HiDef プロファイルに対応する Direct3D デバイスが見つかりませんでした
うぜえええ
デフォルトの設定をReachにするにはどうしたらいいんですかね
うぜえええ
デフォルトの設定をReachにするにはどうしたらいいんですかね
326 :デフォルトの名無しさん2011/01/05(水) 15:50:00
http://create.msdn.com/ja-JP/education/catalog/sample/chasecamera
このサンプルデータの自機の弾の出し方がわかる方、
教えて頂ければ助かります。
このサンプルデータの自機の弾の出し方がわかる方、
教えて頂ければ助かります。
341 :デフォルトの名無しさん2011/01/05(水) 19:42:40
XNAに限らずどこでも>>326みたいな質問の仕方したら
「もっと具体的にお願いします」としか答えられないよ…
まずどこまで言葉が通じるのか分からん
tama.Position += tama.Velocity * dt; の意味が分からないレベルなのか
それともそういうのは分かってて弾の描画が分からないのか
「もっと具体的にお願いします」としか答えられないよ…
まずどこまで言葉が通じるのか分からん
tama.Position += tama.Velocity * dt; の意味が分からないレベルなのか
それともそういうのは分かってて弾の描画が分からないのか
342 :デフォルトの名無しさん2011/01/05(水) 20:11:22
>>341
そういうのはわかってて基本的な構文は覚えたけど、
DirectXは触った事ありませんとか射影変換とか初耳な人はXNA向いてますか?
そういうのはわかってて基本的な構文は覚えたけど、
DirectXは触った事ありませんとか射影変換とか初耳な人はXNA向いてますか?
327 :デフォルトの名無しさん2011/01/05(水) 16:10:23
弾なんかでねーよ
330 :3262011/01/05(水) 16:35:49
>>327-329
あなたたちは黙っていればいいんです。
このサンプルを改造して、弾を出るようにした人が
どうしたかを教えてくれればいいのです。
私がこんなにしたいだから、2chでも少しはいるハズです。
あなたたちは黙っていればいいんです。
このサンプルを改造して、弾を出るようにした人が
どうしたかを教えてくれればいいのです。
私がこんなにしたいだから、2chでも少しはいるハズです。
329 :デフォルトの名無しさん2011/01/05(水) 16:24:03
エスパーすると、
「このサンプルを弾が撃てるように改造してください」
という意味なんだろうけど、
こんな書き方する奴に日本語で説明して通じると思う者はいない。
「このサンプルを弾が撃てるように改造してください」
という意味なんだろうけど、
こんな書き方する奴に日本語で説明して通じると思う者はいない。
333 :デフォルトの名無しさん2011/01/05(水) 17:25:15
326>>
弾の実装をしようしましたが、うまいこといきません。
弾の実装をしようしましたが、うまいこといきません。
334 :デフォルトの名無しさん2011/01/05(水) 18:57:25
実装しようとしたなら、それを見せるといい。コード見せれば教えてくれる可能性は高くなる。
とりあえず簡単な実装方法書いとこう。
まず、弾のクラスをつくる。
んで、Update で
プレイヤーがボタン押したら玉を出す。(List<弾> tamas にいれる。)
Draw では弾があったら描画したらいいので
foreach (var tama in tamas)
DrawTama(tama);
といった感じになるだろ。
DrawTama は自分で弾のモデル作るか、ポイントスプライトって言うのをやるかのどっちかだろう。
簡単なのは、そのサンプルの飛行機のモデルを小さくして、それを弾として使えばいい。カミカゼカミカゼ
あとは、ステージの外に出た弾を削除するだけ。
とりあえず簡単な実装方法書いとこう。
まず、弾のクラスをつくる。
んで、Update で
プレイヤーがボタン押したら玉を出す。(List<弾> tamas にいれる。)
Draw では弾があったら描画したらいいので
foreach (var tama in tamas)
DrawTama(tama);
といった感じになるだろ。
DrawTama は自分で弾のモデル作るか、ポイントスプライトって言うのをやるかのどっちかだろう。
簡単なのは、そのサンプルの飛行機のモデルを小さくして、それを弾として使えばいい。カミカゼカミカゼ
あとは、ステージの外に出た弾を削除するだけ。
336 :デフォルトの名無しさん2011/01/05(水) 19:22:47
実際ここは新人のやる気を失わせて潰すスレだからなぁ・・・
338 :デフォルトの名無しさん2011/01/05(水) 19:29:30
>>336
確かに。
ここで聞くよりも公式のフォーラムとかで聞いた方が良いね
確かに。
ここで聞くよりも公式のフォーラムとかで聞いた方が良いね
337 :デフォルトの名無しさん2011/01/05(水) 19:27:09
むしろXNA自体が…
C#もゲーム製作の基礎もわからないのにXNAなんかに手を出すのが間違ってる
C#もゲーム製作の基礎もわからないのにXNAなんかに手を出すのが間違ってる
340 :デフォルトの名無しさん2011/01/05(水) 19:35:02
XNAはゲームの作り方を知ってる人が使うにはいいものなのに
何故かゲームの作り方を知らない初心者が簡単にゲームが作れると勘違いしてるのがなあ
何故かゲームの作り方を知らない初心者が簡単にゲームが作れると勘違いしてるのがなあ
343 :デフォルトの名無しさん2011/01/05(水) 20:13:45
あなたがもし、目標を目指すなら、
向き不向きなどは心配すべきことではありません。
やるかやらないか。
本当は分かっているはずです。
向き不向きなどは心配すべきことではありません。
やるかやらないか。
本当は分かっているはずです。
344 :デフォルトの名無しさん2011/01/05(水) 22:25:15
AppHubのフォーラム遅ー
マイクロソフトってWEB開発経験無い奴しか居ないんじゃねーか?
マイクロソフトってWEB開発経験無い奴しか居ないんじゃねーか?
347 :デフォルトの名無しさん2011/01/06(木) 01:10:39
350 :デフォルトの名無しさん2011/01/08(土) 15:01:46
>>347
裏面だけ描画してない?
裏面だけ描画してない?
351 :デフォルトの名無しさん2011/01/08(土) 21:13:30
>>350
その件に関してはスプライトバッチ描画後に、
毎回Zバッファをデフォルト設定したらなんとか正常に
1000離れると消えちゃうのは、
フィールド変数で保持してるはずだった数値をローカルで宣言してたからで、
それも解消しました
が、今度は一部モデルでテクスチャが正常に表示できないんです
正直BasicEffectも良くわかってなくて何がおかしいのか
ttp://files.or.tl/up3776.png
その件に関してはスプライトバッチ描画後に、
毎回Zバッファをデフォルト設定したらなんとか正常に
1000離れると消えちゃうのは、
フィールド変数で保持してるはずだった数値をローカルで宣言してたからで、
それも解消しました
が、今度は一部モデルでテクスチャが正常に表示できないんです
正直BasicEffectも良くわかってなくて何がおかしいのか
ttp://files.or.tl/up3776.png
352 :デフォルトの名無しさん2011/01/09(日) 08:34:43
>>351
何使ってるのかようわからんけど
1つのモデルに複数のマテリアルがある場合にうまくいってないとかじゃね?
何使ってるのかようわからんけど
1つのモデルに複数のマテリアルがある場合にうまくいってないとかじゃね?
348 :デフォルトの名無しさん2011/01/07(金) 07:39:56
unityに対するXNAのいいとこって何さ?
また、XNAの欠点を補える方法ってある?
欠点1.ポーティング: XNAtouch、SilverSPrite、ExEn(計画段階)くらい?
欠点2・GUIでの対話的開発: これは…なんかいいのない?
また、XNAの欠点を補える方法ってある?
欠点1.ポーティング: XNAtouch、SilverSPrite、ExEn(計画段階)くらい?
欠点2・GUIでの対話的開発: これは…なんかいいのない?
349 :デフォルトの名無しさん2011/01/07(金) 08:08:00
出た時期の問題もあるしなぁ。
あと、unityの方をあんまり詳しく知らないのでなんとも。
あと、unityの方をあんまり詳しく知らないのでなんとも。
354 :デフォルトの名無しさん2011/01/11(火) 20:55:04
SpriteBatch.Draw()で20倍に拡大した場合に輪郭がぼけてしまうのですが、
ドットの境界をクッキリと表示させるにはどうすればいいですか?
spriteBatch.GraphicsDevice.SamplerStates[0].MagFilter = TextureFilter.Point;
spriteBatch.GraphicsDevice.RenderState.MultiSampleAntiAlias = false;
GraphicsDeviceManager.PreferMultiSampling = false;
辺りは試してみたのですが、全滅でした。
ドットの境界をクッキリと表示させるにはどうすればいいですか?
spriteBatch.GraphicsDevice.SamplerStates[0].MagFilter = TextureFilter.Point;
spriteBatch.GraphicsDevice.RenderState.MultiSampleAntiAlias = false;
GraphicsDeviceManager.PreferMultiSampling = false;
辺りは試してみたのですが、全滅でした。
355 :デフォルトの名無しさん2011/01/12(水) 00:40:46
>>354
SpriteBatchは使わないので、はっきり分からないけど、
GraphicsDevice.SamplerStates[0] = SamplerState.PointWrap;
はどう?
もしくはシェーダー内で上書きしてるとか?
SpriteBatchは使わないので、はっきり分からないけど、
GraphicsDevice.SamplerStates[0] = SamplerState.PointWrap;
はどう?
もしくはシェーダー内で上書きしてるとか?
360 :デフォルトの名無しさん2011/01/12(水) 17:34:05
>>355
だめぽいですね
spriteBatch.GraphicsDevice.RenderState.MultiSampleAntiAlias = false;
spriteBatch.GraphicsDevice.RenderState.PointSpriteEnable = false;
spriteBatch.GraphicsDevice.SamplerStates[0].MagFilter = TextureFilter.Point;
spriteBatch.GraphicsDevice.SamplerStates[0].MinFilter = TextureFilter.Point;
spriteBatch.GraphicsDevice.SamplerStates[0].MipFilter = TextureFilter.Point;
spriteBatch.GraphicsDevice.SamplerStates[0].AddressU = TextureAddressMode.Wrap;
spriteBatch.GraphicsDevice.SamplerStates[0].AddressV = TextureAddressMode.Wrap;
spriteBatch.GraphicsDevice.SamplerStates[0].AddressW = TextureAddressMode.Wrap;
spriteBatch.Draw(...)
までやってみましたが、変わらずでした。
あ、言い忘れましたがXNA3.1です。
だめぽいですね
spriteBatch.GraphicsDevice.RenderState.MultiSampleAntiAlias = false;
spriteBatch.GraphicsDevice.RenderState.PointSpriteEnable = false;
spriteBatch.GraphicsDevice.SamplerStates[0].MagFilter = TextureFilter.Point;
spriteBatch.GraphicsDevice.SamplerStates[0].MinFilter = TextureFilter.Point;
spriteBatch.GraphicsDevice.SamplerStates[0].MipFilter = TextureFilter.Point;
spriteBatch.GraphicsDevice.SamplerStates[0].AddressU = TextureAddressMode.Wrap;
spriteBatch.GraphicsDevice.SamplerStates[0].AddressV = TextureAddressMode.Wrap;
spriteBatch.GraphicsDevice.SamplerStates[0].AddressW = TextureAddressMode.Wrap;
spriteBatch.Draw(...)
までやってみましたが、変わらずでした。
あ、言い忘れましたがXNA3.1です。
356 :デフォルトの名無しさん2011/01/12(水) 09:08:35
XNAのModelオブジェクトをファイルにエクスポートする実装を
ご存じないでしょうか。形式はFBXでもLWOでも3DSでもなんでもいいんですが。
ご存じないでしょうか。形式はFBXでもLWOでも3DSでもなんでもいいんですが。
357 :デフォルトの名無しさん2011/01/12(水) 09:23:25
http://create.msdn.com/ja-JP/education/catalog/?devarea=6
このサンプルのHeightMapInfoContent.csに記述されている
public override string GetRuntimeType(TargetPlatform targetPlatform)
{
return "HeightmapCollision.HeightMapInfo, " +
"HeightmapCollision, Version=1.0.0.0, Culture=neutral";
}
public override string GetRuntimeReader(TargetPlatform targetPlatform)
{
return "HeightmapCollision.HeightMapInfoReader, " +
"HeightmapCollision, Version=1.0.0.0, Culture=neutral";
}
この部分は具体的に何を指定しているのでしょうか?
サンプルを現在制作中の3Dゲームに組み込もうとしているのですが
そのままだと「ContentTypeReader Game1.HeightMapInfoReader, Game1,Version=1.0.0.0, Culture=neutral が見つかりません。」というエラーが出てしまいます……
このサンプルのHeightMapInfoContent.csに記述されている
public override string GetRuntimeType(TargetPlatform targetPlatform)
{
return "HeightmapCollision.HeightMapInfo, " +
"HeightmapCollision, Version=1.0.0.0, Culture=neutral";
}
public override string GetRuntimeReader(TargetPlatform targetPlatform)
{
return "HeightmapCollision.HeightMapInfoReader, " +
"HeightmapCollision, Version=1.0.0.0, Culture=neutral";
}
この部分は具体的に何を指定しているのでしょうか?
サンプルを現在制作中の3Dゲームに組み込もうとしているのですが
そのままだと「ContentTypeReader Game1.HeightMapInfoReader, Game1,Version=1.0.0.0, Culture=neutral が見つかりません。」というエラーが出てしまいます……
358 :デフォルトの名無しさん2011/01/12(水) 16:50:43
毎フレームアップデートするときGameComponentを継承しないといけませんか?
クラス作るのはめんどいのでUpdateだけをデリゲートで渡す方法とかありあせんか?
クラス作るのはめんどいのでUpdateだけをデリゲートで渡す方法とかありあせんか?
359 :デフォルトの名無しさん2011/01/12(水) 17:10:30
>>358
こんなのを予めつくっといて、Gameクラスにインスタンス持たせといて、
あとはお好きなように
sealed class DelegateCollection : GameComponent
{
public readonly List<Action<GameTime>> delegateList = new List<Action<GameTime>>();
public DelegateCollection(Game game) : base(game){}
public override void Update(GameTime gameTime)
{
delegateList.ForEach(a => a(gameTime));
base.Update(gameTime);
}
}
こんなのを予めつくっといて、Gameクラスにインスタンス持たせといて、
あとはお好きなように
sealed class DelegateCollection : GameComponent
{
public readonly List<Action<GameTime>> delegateList = new List<Action<GameTime>>();
public DelegateCollection(Game game) : base(game){}
public override void Update(GameTime gameTime)
{
delegateList.ForEach(a => a(gameTime));
base.Update(gameTime);
}
}
361 :デフォルトの名無しさん2011/01/12(水) 18:26:47
>>359
ありがとうございます。
やっぱ、デフォルトではないんですね。
使わせてもらいます
ありがとうございます。
やっぱ、デフォルトではないんですね。
使わせてもらいます
362 :デフォルトの名無しさん2011/01/20(木) 23:26:20
XNAのAPIリファレンスのような本
(網羅的な内容の本)
を探してます。
英語でも構わないので教えてください。
(網羅的な内容の本)
を探してます。
英語でも構わないので教えてください。
363 :デフォルトの名無しさん2011/01/21(金) 11:32:34
>>362
MSDN
MSDN
365 :デフォルトの名無しさん2011/01/21(金) 21:44:32
来週のサザエさんは
落とした財布はPorter
メカゴジラVSモスドン
の三本です
落とした財布はPorter
メカゴジラVSモスドン
の三本です
371 :デフォルトの名無しさん2011/01/28(金) 14:41:46
メインメソッドの「protected override void LoadContent()」内以外でコンテンツロードするにはどうすれば良いですか?
BGM/SE再生専用のクラスを用意して、音関連は全てその中で処理したいんですがContent.Loadが使えなくて……
BGM/SE再生専用のクラスを用意して、音関連は全てその中で処理したいんですがContent.Loadが使えなくて……
377 :デフォルトの名無しさん2011/01/31(月) 03:34:55
XNA の方がいいとは言えない。インストールが面倒だし。
だが、開発者の負担はぐっと下がると思う。IntelliSense きくし、おおよそのフレームワークが整ってる。
まあ、C++ or DirectX が不快に感じるなら XNA 選ぶといいと思う。
だが、開発者の負担はぐっと下がると思う。IntelliSense きくし、おおよそのフレームワークが整ってる。
まあ、C++ or DirectX が不快に感じるなら XNA 選ぶといいと思う。
378 :デフォルトの名無しさん2011/01/31(月) 09:49:04
「いい」って目的によって変わると思うが
特に配るつもりもなく初心者が軽く楽しんでみるなら言語違うがGLScene
C#使いたいならXNA
本気でやるならC++でDirectX
がいいんじゃないかね
特に配るつもりもなく初心者が軽く楽しんでみるなら言語違うがGLScene
C#使いたいならXNA
本気でやるならC++でDirectX
がいいんじゃないかね
379 :デフォルトの名無しさん2011/01/31(月) 10:38:56
C++がわからないからXNA使うんではなくてC#が使いたいから使うもんだよな
C++,DirectXよりはずっと使いやすいけど勉強するときの難易度自体は大差ないと思う
C++,DirectXよりはずっと使いやすいけど勉強するときの難易度自体は大差ないと思う
380 :デフォルトの名無しさん2011/02/01(火) 17:58:35
XBLIGにリリースするだけの目的だから学びやすさとかすぐれてるかとかまったく考えたことない
383 :デフォルトの名無しさん2011/02/02(水) 16:40:43
最近Delphiから移行してきたけどC#はなかなかよい
コンパイルが遅いのとデザイナが微妙かなって以外は正統進化のように感じてる
コンパイルが遅いのとデザイナが微妙かなって以外は正統進化のように感じてる
384 :デフォルトの名無しさん2011/02/02(水) 18:23:54
C#のコンパイルは十分はやいだろ、C++なんてどうすんだよ。
385 :デフォルトの名無しさん2011/02/02(水) 18:25:43
Delphiに比べたらってことだろ
使ったことないけど爆速っていうし
使ったことないけど爆速っていうし
386 :デフォルトの名無しさん2011/02/02(水) 19:09:39
パーサーはPascalベースなDelphi速そう。
でも、C#ってぶっちゃけ常時バックグラウンドでコンパイルし続けてるからなぁ。
WPFみたいなXAMLからのコード生成後に改めてコンパイルしてるもの以外はコンパイル時間ほとんど感じないはずだけど。
でも、C#ってぶっちゃけ常時バックグラウンドでコンパイルし続けてるからなぁ。
WPFみたいなXAMLからのコード生成後に改めてコンパイルしてるもの以外はコンパイル時間ほとんど感じないはずだけど。
388 :デフォルトの名無しさん2011/02/02(水) 19:43:47
動的に読み込むコードを書かない限り
xaml->bamlへコンパイルするでしょ
コードビハインドでもa.g.cs/a.g.i.cs/a.g.vb/a.g.i.vbみたいなの出来るし
重いから、俺はデザイナは普段OFFにしてる
xaml->bamlへコンパイルするでしょ
コードビハインドでもa.g.cs/a.g.i.cs/a.g.vb/a.g.i.vbみたいなの出来るし
重いから、俺はデザイナは普段OFFにしてる
389 :デフォルトの名無しさん2011/02/02(水) 19:47:26
BAMLはXAMLのデータをバイナリにしてるだけで、実行時にパースしてるのは一緒
デザイナが生成するコードは、リソースからXAML(BAML)を読み込んで
C#のフィールドにコントロールの参照を代入してるだけ
デザイナが生成するコードは、リソースからXAML(BAML)を読み込んで
C#のフィールドにコントロールの参照を代入してるだけ
394 :デフォルトの名無しさん2011/02/02(水) 22:30:39
>>389
いや、XAMLからの生成物はBAMLとC#/VBコード。
生成されたコードの方にはInitializeComponentメソッドとかが定義されてる。
いや、XAMLからの生成物はBAMLとC#/VBコード。
生成されたコードの方にはInitializeComponentメソッドとかが定義されてる。
390 :デフォルトの名無しさん2011/02/02(水) 22:02:58
XNA入門記事とか書籍でおすすめってありますか?
英語でもかまわないんですが。
英語でもかまわないんですが。
393 :デフォルトの名無しさん2011/02/02(水) 22:26:34
BoundingBoxって軸に水平な箱しか作れないんでしょうか?
角度を付けて坂のようなオブジェクトを作りたいんですが・・・
角度を付けて坂のようなオブジェクトを作りたいんですが・・・
395 :デフォルトの名無しさん2011/02/03(木) 09:21:53
本なら独習C#のCS4.0対応版がちょっと前に出版されてた。
WEBなら@ITの記事とか未確認飛行CのC#のコーナーがいい感じだと思った。
WEBなら@ITの記事とか未確認飛行CのC#のコーナーがいい感じだと思った。
396 :デフォルトの名無しさん2011/02/03(木) 12:07:47
例えばAボタンを押しっぱなしの状態から、Aボタンを離した瞬間に判定を出力したいのですが、
ソースコードはどんな風に記述すればいいのでしょうか?
ソースコードはどんな風に記述すればいいのでしょうか?
398 :デフォルトの名無しさん2011/02/03(木) 13:17:35
途中で送信しちゃった orz
{
bool old;
bool posedge;
bool negedge;
void update()
{
posedge = negedge = 0;
bool now = (key.Buttons.A == ButtonState.Pressed)? 1 : 0;
posedge = ~old & now;
negedge = ~now & old;
old = now;
}
}
みたいにトリガーを作る?
{
bool old;
bool posedge;
bool negedge;
void update()
{
posedge = negedge = 0;
bool now = (key.Buttons.A == ButtonState.Pressed)? 1 : 0;
posedge = ~old & now;
negedge = ~now & old;
old = now;
}
}
みたいにトリガーを作る?
399 :デフォルトの名無しさん2011/02/03(木) 14:14:09
class Input {
public bool IsKeyUp(GameKey key) { return prev[key].IsPressed && !curr[key].IsPresssed; } // キーが離された
public bool IsKeyDown(GameKey key) { return !prev[key].IsPressed && curr[key].IsPressed; } // キーが押された
public bool IsKeyPressed(GameKey key) { return curr[key].IsPressed; } // キーが押されている
public void Update() { prev = curr; curr = 現在の全てのキーの状態; } // 毎フレーム呼ぶ
}
こういうクラスを作っといて、他のクラスからは直接XNAの入力クラスを触らないようにすると便利
コードはあくまでイメージね
public bool IsKeyUp(GameKey key) { return prev[key].IsPressed && !curr[key].IsPresssed; } // キーが離された
public bool IsKeyDown(GameKey key) { return !prev[key].IsPressed && curr[key].IsPressed; } // キーが押された
public bool IsKeyPressed(GameKey key) { return curr[key].IsPressed; } // キーが押されている
public void Update() { prev = curr; curr = 現在の全てのキーの状態; } // 毎フレーム呼ぶ
}
こういうクラスを作っといて、他のクラスからは直接XNAの入力クラスを触らないようにすると便利
コードはあくまでイメージね
403 :デフォルトの名無しさん2011/02/06(日) 15:36:17
すみません。
VC#Expressで、デバッグ時に、
ブレークポイント一覧ウィンドウは
表示されてますか?
どうしても出てこないんです。
よろしくお願いします
VC#Expressで、デバッグ時に、
ブレークポイント一覧ウィンドウは
表示されてますか?
どうしても出てこないんです。
よろしくお願いします
406 :デフォルトの名無しさん2011/02/11(金) 21:43:35
3Dモデル描画→WMV動画再生→動画をテクスチャに貼り付けて描画、って感じで処理させてるんだけど
モデルが動画の裏に隠れちゃって画面に表示されない。文字は普通に描画できるのに・・・・・・
動画に3Dモデルを重ねて描画する方法を教えてくれないか?
モデルが動画の裏に隠れちゃって画面に表示されない。文字は普通に描画できるのに・・・・・・
動画に3Dモデルを重ねて描画する方法を教えてくれないか?
407 :4062011/02/11(金) 21:49:10
すまん
書き込んだ直後に自己解決してしまった。
モデル描画処理の中に動画再生処理入れとけばいいのなw
書き込んだ直後に自己解決してしまった。
モデル描画処理の中に動画再生処理入れとけばいいのなw
408 :デフォルトの名無しさん2011/02/13(日) 14:36:37
3Dモデルを傾かせたい(上を見上げた感じにしたい)んですが
キャラクターの向いている方向と傾く方向を合わせるにはどうすれば良いでしょうか?
Matrix.CreateRotationX(UpRoatation)だと軸に沿った方向にしか傾かせられないし・・・・・・
キャラクターの向いている方向と傾く方向を合わせるにはどうすれば良いでしょうか?
Matrix.CreateRotationX(UpRoatation)だと軸に沿った方向にしか傾かせられないし・・・・・・
409 :デフォルトの名無しさん2011/02/13(日) 15:36:37
Matrix.CreateFromAxisAngle(モデルの右方向ベクトル, 回転量);
411 :デフォルトの名無しさん2011/02/13(日) 19:00:24
>>409
助かりました、ありがとうございます
助かりました、ありがとうございます
410 :デフォルトの名無しさん2011/02/13(日) 17:28:54
コントローラのボタンがどれも押されてないことを取得するのはどうすればよいでしょうか
1個1個確認するのみ?
1個1個確認するのみ?
412 :デフォルトの名無しさん2011/02/14(月) 01:49:19
>>410
そう
でも効率悪いので、
独自の入力管理を作って、
必要な情報は1フレームに1回だけ
取得するようにして、
ゲーム中は管理後の変数だけを
調べるようにしたほうがいい。
そう
でも効率悪いので、
独自の入力管理を作って、
必要な情報は1フレームに1回だけ
取得するようにして、
ゲーム中は管理後の変数だけを
調べるようにしたほうがいい。
413 :デフォルトの名無しさん2011/02/14(月) 03:41:13
この程度の入力管理は標準であってもよさそうなもんなのにな
・新しく押された
・連打
・新しく押された
・連打
414 :デフォルトの名無しさん2011/02/14(月) 08:36:21
この程度さえ出来ないでXNAやるとかアホすぐる
416 :デフォルトの名無しさん2011/02/14(月) 12:55:19
このスレってやけに>>414みたいな初心者馬鹿にするやつ湧いてくるな
415 :デフォルトの名無しさん2011/02/14(月) 09:54:49
じゃあお前Vector3使うの禁止な
417 :デフォルトの名無しさん2011/02/14(月) 12:59:27
愛のムチに見えなくも無い。
そして>>415よw おまいのその返しはなんだw
なんかしらんがツボったw
そして>>415よw おまいのその返しはなんだw
なんかしらんがツボったw
418 :デフォルトの名無しさん2011/02/14(月) 13:43:50
ウィンドウが最前面にないときは処理をスキップしたいのですがどうすればよいですか
419 :デフォルトの名無しさん2011/02/14(月) 14:11:33
FormのActivateとDeactivateイベントをハンドルして、現在の状態フラグを更新する。
Game使ってる場合も同じじゃないかな。
Game使ってる場合も同じじゃないかな。
423 :デフォルトの名無しさん2011/02/19(土) 12:29:27
XNAって意外と実行環境難しいよね
確認用のダイアログを使うと開発環境入れないと動かなかったり
確認用のダイアログを使うと開発環境入れないと動かなかったり
426 :デフォルトの名無しさん2011/02/25(金) 16:11:57.36
GraphicsDeviceについてなんですけど、
メインループでレンダリングしてる最中に、
サブスレッドを立ててそこからテクスチャやらモデル等のGraphicsDeviceが必要なオブジェクトの生成をしても問題ないのかな?
多分問題なく動いてはいるけど参考資料がなくて正しい動作なのか判らない。
メインループでレンダリングしてる最中に、
サブスレッドを立ててそこからテクスチャやらモデル等のGraphicsDeviceが必要なオブジェクトの生成をしても問題ないのかな?
多分問題なく動いてはいるけど参考資料がなくて正しい動作なのか判らない。
427 :デフォルトの名無しさん2011/02/25(金) 20:50:53.58
>>426
スレッドってあのスレッド?
擬似タスク(笑)じゃなくて?
だったらスレッド1つ呼ぶたびに1ms使うからぶっちゃけ超遅いでしょ?
俺の知識が足りないだけならスマンコ
スレッドってあのスレッド?
擬似タスク(笑)じゃなくて?
だったらスレッド1つ呼ぶたびに1ms使うからぶっちゃけ超遅いでしょ?
俺の知識が足りないだけならスマンコ
433 :デフォルトの名無しさん2011/02/28(月) 09:23:00.25
>>427
なんで擬似タスクなんか出てくるのかと思ったけどもしかして360版のSystem.Threading.ThreadってWindows版と違うのかね。
私が聞きたいのはWindows版のGraphicsDeviceがスレッドセーフなのかって事だったんだけど、
Texture,VertexBuffer,IndexBufferみたいなGraphicsDeviceをコンストラクタ引数に取るオブジェクトをバックグラウンドで生成したいんですよ。
なんで擬似タスクなんか出てくるのかと思ったけどもしかして360版のSystem.Threading.ThreadってWindows版と違うのかね。
私が聞きたいのはWindows版のGraphicsDeviceがスレッドセーフなのかって事だったんだけど、
Texture,VertexBuffer,IndexBufferみたいなGraphicsDeviceをコンストラクタ引数に取るオブジェクトをバックグラウンドで生成したいんですよ。
428 :デフォルトの名無しさん2011/02/26(土) 13:51:11.32
XPでもつかえるXNA?ってないんですか?
430 :デフォルトの名無しさん2011/02/26(土) 18:29:20.26
>>428
XNA Game Studio 4.0のスタンドアロン版
XNA Game Studio 4.0のスタンドアロン版
434 :デフォルトの名無しさん2011/02/28(月) 12:24:43.07
自分は激しく点滅してうまく行かなかったけど、
そんなに面倒な事じゃないから、試してみては?
そんなに面倒な事じゃないから、試してみては?
435 :4262011/02/28(月) 15:14:20.64
既に実装済みで多分問題なく動いてるんですよ。
ただWindows版でのグラフィックスリソースの非同期生成について言及された記事が見つからなかったので、
妥当な実装なのか聞きたかった次第です。
ただWindows版でのグラフィックスリソースの非同期生成について言及された記事が見つからなかったので、
妥当な実装なのか聞きたかった次第です。
437 :デフォルトの名無しさん2011/03/03(木) 22:58:22.59
>>435
じゃあ、いいんじゃね?
ただ、スレッドはウィンドウズ的に1ms使うから処理重たくなったら覚悟じゃないですか
いーんなら別にいいです
じゃあ、いいんじゃね?
ただ、スレッドはウィンドウズ的に1ms使うから処理重たくなったら覚悟じゃないですか
いーんなら別にいいです
438 :デフォルトの名無しさん2011/03/04(金) 09:01:09.62
何でそんなスレッド毛嫌いしてるの
箱庭ゲーとかでロード画面挟まずにロードするにはスレッド使うしかないじゃん?
他に何か有効な手段でもあるの?
箱庭ゲーとかでロード画面挟まずにロードするにはスレッド使うしかないじゃん?
他に何か有効な手段でもあるの?
440 :デフォルトの名無しさん2011/03/04(金) 10:57:38.07
>>438
Updateのところでロード処理を進める
Updateのところでロード処理を進める
439 :デフォルトの名無しさん2011/03/04(金) 10:15:53.38
XNAでも非同期I/Oは使えるはずだが。
まあ非同期I/O使ってコードがぐちゃぐちゃするよりはスレッドを使う方が
コードの見通しは良くなっていいけど。
まあ非同期I/O使ってコードがぐちゃぐちゃするよりはスレッドを使う方が
コードの見通しは良くなっていいけど。
441 :デフォルトの名無しさん2011/03/04(金) 11:36:42.98
ファイルの非同期入力まではいいけど、読み終わったファイルをUpdate内で解析してデバイスに転送とかしてたらそれなりにコストかかるじゃないですか
それにStreamの非同期IOはデリゲートのBeginInvoke使ってるからどの道スレッドじゃないの
それにStreamの非同期IOはデリゲートのBeginInvoke使ってるからどの道スレッドじゃないの
442 :デフォルトの名無しさん2011/03/31(木) 14:43:25.30
ContentProcessor<,>の派生クラスから出力型を特定できないでしょうか?
ModelProcessorなら出力型はModelみたいな。
ModelProcessorなら出力型はModelみたいな。
443 :デフォルトの名無しさん2011/04/03(日) 06:00:23.19
3Dで作った、壁や床に弾痕や血のりのテクスチャを重ねて書きたいのだが
どういった方法がメジャーなんだろうか?
思いついたのが、描画を行うテクスチャをいちど別画面に全て書き出して
このときにアルファ合成で弾痕がついたテクスチャを作成する
そのご、実際のテクスチャとして割り当てるって方式なんだが
他になんかいい方法とかないかな?
どういった方法がメジャーなんだろうか?
思いついたのが、描画を行うテクスチャをいちど別画面に全て書き出して
このときにアルファ合成で弾痕がついたテクスチャを作成する
そのご、実際のテクスチャとして割り当てるって方式なんだが
他になんかいい方法とかないかな?
444 :デフォルトの名無しさん2011/04/04(月) 09:26:55.93
壁や床ならその上に銃痕などのテクスチャを張った板ポリを描くだけで良い。
445 :デフォルトの名無しさん2011/04/17(日) 00:23:36.95
GameComponent.Initializeの呼び出されるタイミングが今ひとつ謎です……
Game.Components.Add()されたときに呼ばれるのかなと
思ってたが、ブレークかけても全く引っかからないし。
MSDN見たらGame.Initialize()されたときに呼ばれるとか……
ということは、後からGameComponentクラスがAddされたときは
Initializeは明示的に呼ばないと絶対に呼ばれない、ってことなのかな?
Game.Components.Add()されたときに呼ばれるのかなと
思ってたが、ブレークかけても全く引っかからないし。
MSDN見たらGame.Initialize()されたときに呼ばれるとか……
ということは、後からGameComponentクラスがAddされたときは
Initializeは明示的に呼ばないと絶対に呼ばれない、ってことなのかな?
448 :デフォルトの名無しさん2011/04/29(金) 13:40:49.30
そう考えたら龍神録の人は作り易い、分かりやすいをモットーに良く作ったと思うよw
一緒に仕事をしたいのはこういうタイプ
一緒に仕事をしたいのはこういうタイプ
450 :デフォルトの名無しさん2011/05/01(日) 15:17:13.82
現在、私は3Dの勉強中です。
以下のような問題に悩まされています。
もしよろしければ、どなたかご助言を頂けませんでしょうか。
?問題:
「異なるクラスのオブジェクト間で、深度バッファが上手く効かない」
?今扱っているコードについて:
私の手元にあったコードをビルドして実行すると、「立方体状の3次元空間が表示され、その中を5つの球体クラスのオブジェクトが跳ね回る様子」をユーザは見ることができます。
このコードを改造して、立方体状の空間の中央に、三角錐クラスのオブジェクトを配置しました。
この改造後のコードをビルドして実行すると、「立方体状の空間の中央に三角錐のオブジェクトがそびえ立ち、その周囲を球体のオブジェクトが飛び回る様子」をユーザは見ることができます。
?現在の見え方:
しかし、深度バッファが上手く効いていないのか、三角錐オブジェクトが、他のオブジェクトよりも常に手前側に表示されてしまいます。
5つの球体間では、深度バッファは有効なように見えます。しかし、各球体と三角錐間では、深度バッファは無効なように見えます。
拙い文章ですみません。
どうぞよろしくお願いします。
以下のような問題に悩まされています。
もしよろしければ、どなたかご助言を頂けませんでしょうか。
?問題:
「異なるクラスのオブジェクト間で、深度バッファが上手く効かない」
?今扱っているコードについて:
私の手元にあったコードをビルドして実行すると、「立方体状の3次元空間が表示され、その中を5つの球体クラスのオブジェクトが跳ね回る様子」をユーザは見ることができます。
このコードを改造して、立方体状の空間の中央に、三角錐クラスのオブジェクトを配置しました。
この改造後のコードをビルドして実行すると、「立方体状の空間の中央に三角錐のオブジェクトがそびえ立ち、その周囲を球体のオブジェクトが飛び回る様子」をユーザは見ることができます。
?現在の見え方:
しかし、深度バッファが上手く効いていないのか、三角錐オブジェクトが、他のオブジェクトよりも常に手前側に表示されてしまいます。
5つの球体間では、深度バッファは有効なように見えます。しかし、各球体と三角錐間では、深度バッファは無効なように見えます。
拙い文章ですみません。
どうぞよろしくお願いします。
451 :デフォルトの名無しさん2011/05/01(日) 15:57:49.27
>>450
深度バッファへの書き込みがうまくいってないか、
深度テストがうまくいってないか....。
もしかすると、Z値の計算がうまくいっていないのかもしれないし....。
文章だけで判断するのは限界があります。
それほど大きくないプロジェクトなら、
プロジェクト一式をアップしてみるのはどうでしょう?
原因を調査できるかもしれません。
深度バッファへの書き込みがうまくいってないか、
深度テストがうまくいってないか....。
もしかすると、Z値の計算がうまくいっていないのかもしれないし....。
文章だけで判断するのは限界があります。
それほど大きくないプロジェクトなら、
プロジェクト一式をアップしてみるのはどうでしょう?
原因を調査できるかもしれません。
452 :デフォルトの名無しさん2011/05/01(日) 16:46:12.41
>>451
ありがとうございます。
プロジェクト一式は、以下からダウンロードできます。
http://www.dotup.org/uploda/www.dotup.org1589990.zip.html
passは"depth"です
よろしくお願いします
ありがとうございます。
プロジェクト一式は、以下からダウンロードできます。
http://www.dotup.org/uploda/www.dotup.org1589990.zip.html
passは"depth"です
よろしくお願いします
453 :4512011/05/01(日) 17:09:47.28
>>452
ダウンロードしてみたところ、
デバッグ用クラス一式とPlayerクラスがないようです。
ソースを見てみたのですが、
spriteBatch()を使用されてますね。
これを使うと、3Dのレンダリングステートをいじるので問題が出てきます。
いったんspriteBatch()をはずすか、
3D関係の描画前に、
ZテストやZライトを明示的にONする命令を入れていみてください。
ダウンロードしてみたところ、
デバッグ用クラス一式とPlayerクラスがないようです。
ソースを見てみたのですが、
spriteBatch()を使用されてますね。
これを使うと、3Dのレンダリングステートをいじるので問題が出てきます。
いったんspriteBatch()をはずすか、
3D関係の描画前に、
ZテストやZライトを明示的にONする命令を入れていみてください。
454 :4512011/05/01(日) 17:22:07.30
>>453
ごめんなさい。
XBOX360でビルドした為だったようです。
Windowsではちゃんと動きました。
これからデバッグしてみます。
ごめんなさい。
XBOX360でビルドした為だったようです。
Windowsではちゃんと動きました。
これからデバッグしてみます。
455 :4512011/05/01(日) 17:34:24.48
>>452
viewマトリックスとprojectionマトリックスが、
球体と三角錐とで違うことが問題です。
player.Draw(cameraPosition, cameraTarget, cameraVector);
を削除して、
player.Draw(view, projection);
で、球体と同じviewとprojectionマトリックスを渡すようにしてください。
Playerクラスには、
viewとprojectionを受け取れるDraw()メソッドを追加して適切に変更してください。
こちらの環境では、前後関係がちゃんと描画できるようになりました。
viewマトリックスとprojectionマトリックスが、
球体と三角錐とで違うことが問題です。
player.Draw(cameraPosition, cameraTarget, cameraVector);
を削除して、
player.Draw(view, projection);
で、球体と同じviewとprojectionマトリックスを渡すようにしてください。
Playerクラスには、
viewとprojectionを受け取れるDraw()メソッドを追加して適切に変更してください。
こちらの環境では、前後関係がちゃんと描画できるようになりました。
456 :4512011/05/01(日) 17:39:54.22
Playerクラスの
aspectRatio, 1.0f, 1000.0f);
を
aspectRatio, 0.01f, 100.0f);
として、
球体のprojectionと完全に同じすることで、直ることも確認しました。
ただ、>>455のように、明示的に同じviewとprojectionを使うように
したほうが、プログラムとしてはいいですね。
aspectRatio, 1.0f, 1000.0f);
を
aspectRatio, 0.01f, 100.0f);
として、
球体のprojectionと完全に同じすることで、直ることも確認しました。
ただ、>>455のように、明示的に同じviewとprojectionを使うように
したほうが、プログラムとしてはいいですね。
457 :デフォルトの名無しさん2011/05/01(日) 17:56:04.66
>>456
ありがとうございます。返信が遅くてすみません
>viewマトリックスとprojectionマトリックスが、球体と三角錐とで違うことが問題です。
>球体のprojectionと完全に同じすることで、直ることも確認しました。
2種類の解決方法の間で共通しているのは、球体と三角錐間のprojectionの共有のように見えます。
これはつまり、projectionが各オブジェクト間で共有されていることが重要であると認識して良いのでしょうか?
それとも、viewの共有も重要と考えるべきでしょうか?
--------------------------------------------------
どうも、私は基礎的な知識がかなり足りないようです。
もっと勉強しなければいけませんね。
ご助言ありがとうございます。
ありがとうございます。返信が遅くてすみません
>viewマトリックスとprojectionマトリックスが、球体と三角錐とで違うことが問題です。
>球体のprojectionと完全に同じすることで、直ることも確認しました。
2種類の解決方法の間で共通しているのは、球体と三角錐間のprojectionの共有のように見えます。
これはつまり、projectionが各オブジェクト間で共有されていることが重要であると認識して良いのでしょうか?
それとも、viewの共有も重要と考えるべきでしょうか?
--------------------------------------------------
どうも、私は基礎的な知識がかなり足りないようです。
もっと勉強しなければいけませんね。
ご助言ありがとうございます。
458 :4512011/05/01(日) 18:03:18.64
>>457
projectionを共通化することが重要です。
そうしないと、Zバッファに書き込まれる値の意味が変わってくるからです。
またviewマトリックスも共通にすべきです。(今回の場合は同じ値が入っているようですが。)
同じカメラを使っているという意味で。
がんばってくださいませ。
projectionを共通化することが重要です。
そうしないと、Zバッファに書き込まれる値の意味が変わってくるからです。
またviewマトリックスも共通にすべきです。(今回の場合は同じ値が入っているようですが。)
同じカメラを使っているという意味で。
がんばってくださいませ。
459 :デフォルトの名無しさん2011/05/01(日) 18:04:13.63
>>456
Player.Drawへの引数として,Sphere.Drawに渡すのと同じprojectionを渡すように修正しました。
また、Player.csファイルのDrawメソッド内の2重ループで
effect.Projection = Matrix.CreatePerspectiveFieldOfView(MathHelper.ToRadians(45.0f),aspectRatio, 1.0f, 1000.0f);
と記述していた部分をコメントアウトして
effect.Projection = projection; // Player.Drawが引数として受け取るprojection
という記述に書き換えました。
その結果、正しい前後関係で三角錐と球体が描画されました。
このことから、オブジェクト間でのprojectionの共有が必要であるということが推測できます。
しかし、なぜprojectionの共有が必要なのかはわかりません。
もう少し詳しく調べてみます。
この問題で2日程悩んでいたので、大変助かりました。
誠にありがとうございました。
Player.Drawへの引数として,Sphere.Drawに渡すのと同じprojectionを渡すように修正しました。
また、Player.csファイルのDrawメソッド内の2重ループで
effect.Projection = Matrix.CreatePerspectiveFieldOfView(MathHelper.ToRadians(45.0f),aspectRatio, 1.0f, 1000.0f);
と記述していた部分をコメントアウトして
effect.Projection = projection; // Player.Drawが引数として受け取るprojection
という記述に書き換えました。
その結果、正しい前後関係で三角錐と球体が描画されました。
このことから、オブジェクト間でのprojectionの共有が必要であるということが推測できます。
しかし、なぜprojectionの共有が必要なのかはわかりません。
もう少し詳しく調べてみます。
この問題で2日程悩んでいたので、大変助かりました。
誠にありがとうございました。
461 :萌主(元株主w) 忍法帖【Lv=40,xxxPT】 【東電 78.0 %】 2011/05/01(日) 18:06:44.42
>>459
私も初心者なのでよくわからないですが、
物体をみるカメラは1つなので、
そのカメラへの値(viewとprojection)は1つにするべきなんだと思います。
私も初心者なのでよくわからないですが、
物体をみるカメラは1つなので、
そのカメラへの値(viewとprojection)は1つにするべきなんだと思います。
463 :4512011/05/01(日) 18:10:48.05
>>461
うはwww
間違って、別スレの名前登録してしまった。
451です。
みなかったことにしてwww
うはwww
間違って、別スレの名前登録してしまった。
451です。
みなかったことにしてwww
465 :デフォルトの名無しさん2011/05/01(日) 18:18:06.05
>>461
なるほど。なんとなくわかってきました
「使うカメラはいつもひとつ!」ですね
なるほど。なんとなくわかってきました
「使うカメラはいつもひとつ!」ですね
467 :4512011/05/01(日) 18:19:52.30
>>465
そういうことになります。
また画面を2分割や4分割にして、
3Dの対戦ゲームなどを作るときは
カメラが2つや4つになるので、
その数分のviewとprojectionのセットを作ることになります。
そういうことになります。
また画面を2分割や4分割にして、
3Dの対戦ゲームなどを作るときは
カメラが2つや4つになるので、
その数分のviewとprojectionのセットを作ることになります。
460 :デフォルトの名無しさん2011/05/01(日) 18:04:55.01
うわあ!レス書いてるあいだにレスが返って来てた///
精進します…
精進します…
462 :4512011/05/01(日) 18:07:10.24
>>460
www
www
464 :4512011/05/01(日) 18:18:04.83
正体がばれついでに....。
現在、「Rushing Punch<ラッシングパンチ>」というゲームを
ピアレビューに出したのですが、まだ目立たない位置にある
ためか、レビューしてもらえません。
あと2週間ぐらいして、上の方の方が消えてくるとレビューして
いただけると思うのですが...。
もしお時間いただけるようなら、ピアレビューしていただけると
幸いです。
微妙にスレ違い申し訳ないです。
現在、「Rushing Punch<ラッシングパンチ>」というゲームを
ピアレビューに出したのですが、まだ目立たない位置にある
ためか、レビューしてもらえません。
あと2週間ぐらいして、上の方の方が消えてくるとレビューして
いただけると思うのですが...。
もしお時間いただけるようなら、ピアレビューしていただけると
幸いです。
微妙にスレ違い申し訳ないです。
466 :デフォルトの名無しさん2011/05/01(日) 18:19:20.14
>>464
興味あります。みてみますね
興味あります。みてみますね
468 :デフォルトの名無しさん2011/05/02(月) 13:21:05.11
厳密にはXNAと関係ないんですが、他に聞けるところがないので質問
させてください。
複数の変換行列を結合したいとき、単純に掛けるだけでいいんでしょうか?
それとも、SRTに分解してそれぞれの要素を結合させて変換行列に
するのがただしいのでしょうか?
させてください。
複数の変換行列を結合したいとき、単純に掛けるだけでいいんでしょうか?
それとも、SRTに分解してそれぞれの要素を結合させて変換行列に
するのがただしいのでしょうか?
469 :デフォルトの名無しさん2011/05/02(月) 13:40:26.63
"結合"を定義してくれ
最終的に変換が適用される時に
v'=A*B*C*v
のように使われるなら、T=A*B*Cとしておいて
v'=T*v
もちろんこうしても構わない
最終的に変換が適用される時に
v'=A*B*C*v
のように使われるなら、T=A*B*Cとしておいて
v'=T*v
もちろんこうしても構わない
470 :デフォルトの名無しさん2011/05/06(金) 11:00:27.95
XNA4.0のサンプルプロジェクトって無いのかな、
勝手に変換はしてくれるんだけどさ・・・
なんとなく
勝手に変換はしてくれるんだけどさ・・・
なんとなく
472 :4702011/05/06(金) 17:24:04.32
あぁ、ありがと
ラーニングで絞ってサンプルを探してたんで
Performance Measuring Sample
をいろいろいじってみます〜
ラーニングで絞ってサンプルを探してたんで
Performance Measuring Sample
をいろいろいじってみます〜
473 :デフォルトの名無しさん2011/05/07(土) 23:27:41.28
GraphicsDeviceっていっぱい必要になるところがあるけど
あれって基本的に全部同じインスタンスなのかな?
EffectやTexture2Dに設定されたGraphicsDeviceは
使われることはないでおk?
あれって基本的に全部同じインスタンスなのかな?
EffectやTexture2Dに設定されたGraphicsDeviceは
使われることはないでおk?
479 :デフォルトの名無しさん2011/05/19(木) 19:52:41.64
texture2Dを複製したいのですが、
どういった方法でやるのがよいでしょうか?
どういった方法でやるのがよいでしょうか?
480 :デフォルトの名無しさん2011/05/20(金) 06:29:13.26
>>479
LoadContent()の中でforで一括配置するんではなく
一旦static変数に格納して逐次そこから受け渡しするとかそういうこと?
staticクラスじゃなくてもクラス名を引数にして渡すことも出来るみたいだけど
まだ初心者だからよく判らん
LoadContent()の中でforで一括配置するんではなく
一旦static変数に格納して逐次そこから受け渡しするとかそういうこと?
staticクラスじゃなくてもクラス名を引数にして渡すことも出来るみたいだけど
まだ初心者だからよく判らん
481 :デフォルトの名無しさん2011/05/20(金) 09:38:23.57
エスパーすると
var texture1 = Content.Load<Texture2D>("hoge");
var texture2 = new Texture2D(texture1.GraphicsDevice, texture1.Width, texture1.Height, texture1.LevelOfDetail, texture1.TextureUsage, texture1.Format);
byte[] buffer = new byte[texture1.Width * texture1.Height * 4];
texture1.GetData(buffer);
texture2.SetData(buffer);
こういうことだと思うが。
流石に>>480みたいなレベルでレスするのは相手に悪いんでないの。
var texture1 = Content.Load<Texture2D>("hoge");
var texture2 = new Texture2D(texture1.GraphicsDevice, texture1.Width, texture1.Height, texture1.LevelOfDetail, texture1.TextureUsage, texture1.Format);
byte[] buffer = new byte[texture1.Width * texture1.Height * 4];
texture1.GetData(buffer);
texture2.SetData(buffer);
こういうことだと思うが。
流石に>>480みたいなレベルでレスするのは相手に悪いんでないの。
483 :デフォルトの名無しさん2011/05/20(金) 12:11:51.71
>>481
ありがとうございます。そういうことです。ただ、それだと、
4byte/pixelのやつしか対応できなくて例外のでるテクスチャがありました。
テクスチャをレンダリングターゲットとして書きこむというのが
常套手段のようですが、マルチスレッドで複製しようとすると
メインループの描画処理とバッティングしてしまうので
今イチ使い勝手が悪くて。何が最善なのかなと書き込んだ次第です。
ありがとうございます。そういうことです。ただ、それだと、
4byte/pixelのやつしか対応できなくて例外のでるテクスチャがありました。
テクスチャをレンダリングターゲットとして書きこむというのが
常套手段のようですが、マルチスレッドで複製しようとすると
メインループの描画処理とバッティングしてしまうので
今イチ使い勝手が悪くて。何が最善なのかなと書き込んだ次第です。
484 :デフォルトの名無しさん2011/05/20(金) 12:23:14.30
>>483
例外出るのはtexture1.TextureFormatでswitchして、
new byte[texture1.Width * texture1.Height * 4];
の4を変更すればいいはず。
別のターゲットにレンダリングするって言うと複製と言うよりは複写って感じがするな。
例外出るのはtexture1.TextureFormatでswitchして、
new byte[texture1.Width * texture1.Height * 4];
の4を変更すればいいはず。
別のターゲットにレンダリングするって言うと複製と言うよりは複写って感じがするな。
485 :デフォルトの名無しさん2011/05/20(金) 12:45:50.17
>>484
ありがとうございます。おっしゃるとおりです。
switchするのが最善かもしれません。ただ、TextureFormatがやたらと
たくさんあるのと私がそれらのバイト数の区別できないのが問題だw
ありがとうございます。おっしゃるとおりです。
switchするのが最善かもしれません。ただ、TextureFormatがやたらと
たくさんあるのと私がそれらのバイト数の区別できないのが問題だw
482 :デフォルトの名無しさん2011/05/20(金) 11:04:37.93
質問した者じゃないけど、俺も同じトコ悩んだ
そうやって中身をコピーするのかなるほど。
そうやって中身をコピーするのかなるほど。
486 :デフォルトの名無しさん2011/05/20(金) 13:13:37.70
MSDNに各フォーマットのビット数書いてあるけど必要なフォーマットだけ用意しておけば十分だと思う
488 :デフォルトの名無しさん2011/05/21(土) 13:55:14.86
colladaのインポータで物理演算のパラメータを読み込めるやつってあるかな?
489 :デフォルトの名無しさん2011/05/21(土) 14:46:54.25
何のエンジンだか書かずに、ただの馬鹿かと。
XMLなんだから好きに読み込めよ。
XMLなんだから好きに読み込めよ。
493 :デフォルトの名無しさん2011/05/21(土) 18:12:09.98
>>489
colladaの物理はエンジンに依存しないのでは?
colladaの物理はエンジンに依存しないのでは?
492 :デフォルトの名無しさん2011/05/21(土) 17:52:05.02
こんな凄い組み方見つけたんだがお前ら知ってっかーみたいな
で自分で聞いて自分で説明
で自分で聞いて自分で説明
494 :デフォルトの名無しさん2011/05/21(土) 18:16:43.09
>>492
わかったようなわからんようなw
とりあえずトンスル
わかったようなわからんようなw
とりあえずトンスル
495 :デフォルトの名無しさん2011/05/21(土) 22:16:40.00
XNAはPC(非XBOX)で使うなら商用利用でもライセンスフリーだっけ?
501 :デフォルトの名無しさん2011/05/24(火) 20:02:58.10
ContentのXMLファイルってどこに何書きゃ良いの?
<XnaContent>
<!-- TODO: replace this Asset with your own XML asset data. -->
<Asset Type="System.String">111
<map>222<map>
</Asset>
</XnaContent>
エラー 1 There was an error while deserializing intermediate XML.
'Element' は、XmlNodeType としては無効です。 行 5、位置 4。
<XnaContent>
<!-- TODO: replace this Asset with your own XML asset data. -->
<Asset Type="System.String">111
<map>222<map>
</Asset>
</XnaContent>
エラー 1 There was an error while deserializing intermediate XML.
'Element' は、XmlNodeType としては無効です。 行 5、位置 4。
502 :デフォルトの名無しさん2011/05/24(火) 23:33:36.57
Visual studio 2010とGamestudio4.0を導入していれば
プロジェクトの開始に
360あるいはWindowsを選べば
もうそれはXNAで、C#も書けるしDirectxも書けるってことでいいんですか?
素人過ぎる質問してスイマセン
プロジェクトの開始に
360あるいはWindowsを選べば
もうそれはXNAで、C#も書けるしDirectxも書けるってことでいいんですか?
素人過ぎる質問してスイマセン
504 :デフォルトの名無しさん2011/05/25(水) 00:17:09.67
>>502
C# とDirectX同列に並べんなw
XNA = 内部的にDirectXを使ってて、C# で書けるゲーム開発フレームワーク
パフォーマンスチューニングの必要はあるものの、ほぼX箱360とWindowsのクロス開発可能
Game Studio 4.0入れたら出て来るプロジェクトテンプレートはXNAのもの。
C# とDirectX同列に並べんなw
XNA = 内部的にDirectXを使ってて、C# で書けるゲーム開発フレームワーク
パフォーマンスチューニングの必要はあるものの、ほぼX箱360とWindowsのクロス開発可能
Game Studio 4.0入れたら出て来るプロジェクトテンプレートはXNAのもの。
506 :デフォルトの名無しさん2011/05/25(水) 09:07:51.92
C#で3D扱えるものでSlimDXっていうのがありますが、XNAより作り易いですか?
508 :デフォルトの名無しさん2011/05/25(水) 15:05:37.49
セーブをContent内のファイルに対してやるにはどうすりゃいいの?
ロードと違ってセーブはユーザーストレージを使わなきゃだめ?
ロードと違ってセーブはユーザーストレージを使わなきゃだめ?
509 :デフォルトの名無しさん2011/05/25(水) 19:27:06.80
やっぱなんか書籍ないと素人には無理だな・・
Webで手に入るサンプルなんかはGS3.0ベースで4.0じゃ使えない関数?でてくるし
Webで手に入るサンプルなんかはGS3.0ベースで4.0じゃ使えない関数?でてくるし
510 :デフォルトの名無しさん2011/05/25(水) 22:00:19.04
ボンバーマンのような2Dゲーを作ってます
xmlファイルにマップを書いて読み込みたいんですが、
例えば
00000
01010
00000
01010
みたいにそれぞれ改行混じると文字コードの関係で不都合ありそうだし
きれいなやり方ってないですか?
xmlファイルにマップを書いて読み込みたいんですが、
例えば
00000
01010
00000
01010
みたいにそれぞれ改行混じると文字コードの関係で不都合ありそうだし
きれいなやり方ってないですか?
511 :デフォルトの名無しさん2011/05/25(水) 22:06:03.85
String str = game1.Content.Load<String>("Games/Maps/Test/XMLFile1");
char[] trimchar = new char[] { '\n'};
String[] map = str.Split(trimchar);
for(int i = 0; i < 30; i++){
map[i] = map[i].Replace(" ", "");
}
適当に書いたらこんな感じになりました\(^q^)/
char[] trimchar = new char[] { '\n'};
String[] map = str.Split(trimchar);
for(int i = 0; i < 30; i++){
map[i] = map[i].Replace(" ", "");
}
適当に書いたらこんな感じになりました\(^q^)/
512 :デフォルトの名無しさん2011/05/27(金) 21:22:15.60
>>511
いいんじゃないの?
そういえば俺はASのhitTestみたいな機能が無いかどうか知りたかったんだった
Flashではブラシで図形描いてそれをムービークリップにし、
任意の座標とhitTestしてマップ作ったけど
XNAではそういうの出来ないのかね
いいんじゃないの?
そういえば俺はASのhitTestみたいな機能が無いかどうか知りたかったんだった
Flashではブラシで図形描いてそれをムービークリップにし、
任意の座標とhitTestしてマップ作ったけど
XNAではそういうの出来ないのかね
515 :デフォルトの名無しさん2011/05/28(土) 13:42:52.38
ttp://msdn.microsoft.com/ja-jp/library/ff604979.aspx
↓にFoods[]を付け足したい時、xmlファイルにはどう書けばいいの?
namespace MyDataTypes
{
public class PetData
{
public string Name;
public string Species;
public float Weight;
public int Age;
public int[] Foods;
}
}
↓にFoods[]を付け足したい時、xmlファイルにはどう書けばいいの?
namespace MyDataTypes
{
public class PetData
{
public string Name;
public string Species;
public float Weight;
public int Age;
public int[] Foods;
}
}
516 :デフォルトの名無しさん2011/05/28(土) 17:20:50.77
>>515
馬鹿杉。
悪いことは言わないから、もう少し学習力をつけないと、この先マジでどうにもならんぞ?
馬鹿杉。
悪いことは言わないから、もう少し学習力をつけないと、この先マジでどうにもならんぞ?
517 :デフォルトの名無しさん2011/05/28(土) 17:29:47.82
>>516が答えられない馬鹿なのかただの低学歴なのかは知らんが、とりあえず
namespace MyDataTypes
{
public class PetData
{
public string Name;
public string Species;
public float Weight;
public int Age;
public int[] Foods = new int[2];
}
}
とでもしとけば
<Foods>
<Item>1</Item>
<Item>2</Item>
</Foods>
で動くよ
namespace MyDataTypes
{
public class PetData
{
public string Name;
public string Species;
public float Weight;
public int Age;
public int[] Foods = new int[2];
}
}
とでもしとけば
<Foods>
<Item>1</Item>
<Item>2</Item>
</Foods>
で動くよ
518 :デフォルトの名無しさん2011/05/28(土) 17:36:26.00
>>517
馬鹿乙
馬鹿乙
520 :デフォルトの名無しさん2011/05/28(土) 19:09:03.25
>>517
第三者だけど
C#内で配列に1行で1度に代入するみたいなことを
XMLでは出来ないの?
第三者だけど
C#内で配列に1行で1度に代入するみたいなことを
XMLでは出来ないの?
521 :デフォルトの名無しさん2011/05/29(日) 18:14:42.83
Windows用ゲームでXNA流行らないのなんでだろうと思いながら勉強してたけど、XBOXコントローラでしか操作できないのな…
525 :デフォルトの名無しさん2011/05/31(火) 11:05:31.83
Win限定なら普通にAPIも呼べるんだから何でも好きなの使えばいいよ
526 :デフォルトの名無しさん2011/05/31(火) 14:36:21.40
すれ違いなのは、重々承知で、ここに質問デス
麻雀で役(ターツ)が重複(衝突)するのは
リャンペーコー or 七トイツ
三連コー or 順子*3
亜両面 でのタンキ or 両面 (符が変わるのと、平和が付くか付かないか)
の3種類でよいでしょうか?
麻雀で役(ターツ)が重複(衝突)するのは
リャンペーコー or 七トイツ
三連コー or 順子*3
亜両面 でのタンキ or 両面 (符が変わるのと、平和が付くか付かないか)
の3種類でよいでしょうか?
527 :デフォルトの名無しさん2011/05/31(火) 22:14:50.80
そう
544 :デフォルトの名無しさん2011/06/26(日) 00:22:42.61
>>527
亀レスwww
ありがとう
亀レスwww
ありがとう
528 :デフォルトの名無しさん2011/06/02(木) 18:54:04.12
セットアッププロジェクトで必須コンポーネント一覧にXNAがないんですけど、どうすればいいんですか?
535 :デフォルトの名無しさん2011/06/16(木) 22:26:06.17
スプライトのインスタンスごとにインスタンスの数だけ同じ画像をロードさせた場合、
全部のインスタンスが自分専用の画像をロードして保持しちゃうの?
全部のインスタンスが自分専用の画像をロードして保持しちゃうの?
537 :デフォルトの名無しさん2011/06/23(木) 01:08:12.13
>>535
記憶が間違ってなければContentManagerが同じリソースの多重ロードを抑制するようになってるはず
記憶が間違ってなければContentManagerが同じリソースの多重ロードを抑制するようになってるはず
540 :デフォルトの名無しさん2011/06/23(木) 21:23:20.49
普通の四角形を描画するのはどうすりゃいいの?
DrawRectangle(x,y,height,width,color)
みたいなメソッドがあったら教えてくれ
DrawRectangle(x,y,height,width,color)
みたいなメソッドがあったら教えてくれ
541 :デフォルトの名無しさん2011/06/24(金) 09:04:00.36
SpriteBatchで1ピクセルのテクスチャを好きな矩形にレンダリングすればいい
542 :デフォルトの名無しさん2011/06/24(金) 09:28:28.89
あーそれ系の話でspriteBatchの処理回数を減らす云々で高速化ってネタ結構見るけど、
4.0以降もこのやり方で高速化ってできるのか?
確か非推奨みたいな感じじゃなかったっけ?
4.0以降もこのやり方で高速化ってできるのか?
確か非推奨みたいな感じじゃなかったっけ?
545 :デフォルトの名無しさん2011/06/29(水) 01:39:13.80
XNAはオワコンなの?
x86開発に詳しい知人が、XNAは専用コントローラ(XBOX360のやつ)しか使えないからオワコンだお言っていた
時代はC++とDirectXだとのこと。
x86開発に詳しい知人が、XNAは専用コントローラ(XBOX360のやつ)しか使えないからオワコンだお言っていた
時代はC++とDirectXだとのこと。
546 :デフォルトの名無しさん2011/06/29(水) 01:50:33.21
まあ、PC 向けゲームに XNA 使う人はいないわね。
そのコントローラーの問題から。
日本だと箱の出荷台数的問題で、Xboxインディーズゲームもあんまり流行ってないし。
もっぱら、WP7 開発用。
Silverlight 5で、Xnaのかなり基礎的な部分だけだけど、3D描画にXNA互換のAPI使えるようになるから、
ブラウザー向け3Dアプリでは使えるかも。
そのコントローラーの問題から。
日本だと箱の出荷台数的問題で、Xboxインディーズゲームもあんまり流行ってないし。
もっぱら、WP7 開発用。
Silverlight 5で、Xnaのかなり基礎的な部分だけだけど、3D描画にXNA互換のAPI使えるようになるから、
ブラウザー向け3Dアプリでは使えるかも。
547 :デフォルトの名無しさん2011/06/29(水) 09:06:26.10
入力周りだけMDX使えばいいだけだろ
でもMDXで360コンにアクセスすると、左右のトリガーで合わせて一本の軸として検出されるんだよなあ
XNAではどういう風に軸を分離してるんだろう
でもMDXで360コンにアクセスすると、左右のトリガーで合わせて一本の軸として検出されるんだよなあ
XNAではどういう風に軸を分離してるんだろう
548 :デフォルトの名無しさん2011/06/29(水) 09:34:10.28
あれ?C++とDirectXでも専用コントローラしか使えないんじゃないの?
552 :デフォルトの名無しさん2011/06/29(水) 17:59:33.39
アルファベットの大文字小文字と数字と記号の一部のみの画像を作っちゃってtexture2Dに読み込ませる場合
どうやってそれを処理して描画させればいいんだ?
draw(string moziretu){
for(int i = 0; i < moziretu.length ; i++)
{
int tempchar = i番目の文字 - '0'
tempchar の値ごとにdrawRectangle 調整して描画だよん
}
}
こんな感じか?
どうやってそれを処理して描画させればいいんだ?
draw(string moziretu){
for(int i = 0; i < moziretu.length ; i++)
{
int tempchar = i番目の文字 - '0'
tempchar の値ごとにdrawRectangle 調整して描画だよん
}
}
こんな感じか?
554 :天使 ◆uL5esZLBSE 2011/07/01(金) 20:14:06.26
Rubyバカにしてる子ってさ
変数に$ついてる言語触ってるって事だよね
いちいちSHIFT+4キーおして $ 打ちまくってる感触はどう?
変数に$ついてる言語触ってるって事だよね
いちいちSHIFT+4キーおして $ 打ちまくってる感触はどう?
559 :デフォルトの名無しさん2011/07/09(土) 14:20:34.32
XNA4.0対応の書籍ってどんなのがでてます?
お勧めとかあったら教えていただきたい
お勧めとかあったら教えていただきたい
561 :デフォルトの名無しさん2011/07/18(月) 00:23:24.37
XNB周りで質問なんだが、コンパイル時ではなく、実行時にContentWriterでxnbファイルを書き出したい場合どうすれば良い?
563 :5612011/07/19(火) 17:17:23.19
>>561 だが
せめて方法があるかないかだけでも教えてくれ。
VS無しではxnbへの書き出しは出来ないのか? マップエディターみたいなツールは作れないと言うことなのか?
せめて方法があるかないかだけでも教えてくれ。
VS無しではxnbへの書き出しは出来ないのか? マップエディターみたいなツールは作れないと言うことなのか?
562 :デフォルトの名無しさん2011/07/18(月) 21:14:08.71
XNA楽でいいな 2Dゲーム作って遊んでます
コントローラ持ってなかったら作ってなかったけど
コントローラ持ってなかったら作ってなかったけど
564 :デフォルトの名無しさん2011/07/19(火) 17:22:25.72
えっと、PC前提でいいの?
565 :デフォルトの名無しさん2011/07/19(火) 17:36:17.52
>>564
一応、PCで動かすことしか考えてないけど
カスタムパイプラインとか書いて、諸々を一つのxnbにまとめてあるから
実行時でもxnbじゃないテクスチャが読み込めるよ とかそう言うのだったら間に合ってる(なんか言い方がきついけど悪気はない)
一応、PCで動かすことしか考えてないけど
カスタムパイプラインとか書いて、諸々を一つのxnbにまとめてあるから
実行時でもxnbじゃないテクスチャが読み込めるよ とかそう言うのだったら間に合ってる(なんか言い方がきついけど悪気はない)
568 :デフォルトの名無しさん2011/07/19(火) 18:07:26.06
Microsoft.Xna.Framework.Content.Pipeline.Tasks.BuildContent
これか! ずっとTask以外のネームスペースのやつ見てた。
ContentWriterはコンストラクタがないし…という感じで
これか! ずっとTask以外のネームスペースのやつ見てた。
ContentWriterはコンストラクタがないし…という感じで
571 :561-5682011/07/24(日) 05:22:40.08
結局のところ、単純にオブジェクトを好きなプロセッサ・ライタを通してxnbとして書き込むのは無理っぽいです。
VS無しでxnbを作る一番簡単な方法は、プロジェクトファイルを作成してMSBuildを実行して
間接的にMicrosoft.Xna.Framework.Content.Pipline.Task.BuildContentを使うことです。
もしくはMicrosoft.Build以下にMSBuildとおなじ物があるのでそれを使う。
BuildContentは簡単に生成することはできますが、下準備とかメンドクサイし、
いろいろ整えてExecute()しても、設定してないLoggerに書き込もうとするし、そのLoggerは直接指定出来ないし
まあ、とにかくうまくいきません。
VS無しでxnbを作る一番簡単な方法は、プロジェクトファイルを作成してMSBuildを実行して
間接的にMicrosoft.Xna.Framework.Content.Pipline.Task.BuildContentを使うことです。
もしくはMicrosoft.Build以下にMSBuildとおなじ物があるのでそれを使う。
BuildContentは簡単に生成することはできますが、下準備とかメンドクサイし、
いろいろ整えてExecute()しても、設定してないLoggerに書き込もうとするし、そのLoggerは直接指定出来ないし
まあ、とにかくうまくいきません。
572 :デフォルトの名無しさん2011/07/24(日) 16:29:10.13
>>571
ちなみにそれ再配布できないよね・・・。
あとさ、XNA4って3.1に比べて微妙に改悪じゃね?
不便なことが増えるばっかり。よくなったところはどこよ?
ちなみにそれ再配布できないよね・・・。
あとさ、XNA4って3.1に比べて微妙に改悪じゃね?
不便なことが増えるばっかり。よくなったところはどこよ?
573 :デフォルトの名無しさん2011/07/24(日) 16:45:25.93
>>571
自前で.xnb書き出せばよし
自前で.xnb書き出せばよし
574 :デフォルトの名無しさん2011/07/24(日) 17:42:55.66
C++(DirectX+HLSL)で書かれたパーティクルのサンプルを、
C#(XNA3.1)に移植しようとしたのですが、真っ黒になり何も表示されません。
移植元 http://kagaminer.in/~rin/smoke.zip
移植先 http://kagaminer.in/~rin/xnatest.zip
どこか間違っているところとかあるのでしょうか?
C#(XNA3.1)に移植しようとしたのですが、真っ黒になり何も表示されません。
移植元 http://kagaminer.in/~rin/smoke.zip
移植先 http://kagaminer.in/~rin/xnatest.zip
どこか間違っているところとかあるのでしょうか?
577 :デフォルトの名無しさん2011/07/24(日) 21:00:15.14
579 :デフォルトの名無しさん2011/07/24(日) 21:17:15.09
>>575-576
プログラムは思った通りではなく、書いた通りに動くとは
重々理解しているつもりですが、どこがおかしいのやら……
>>577
はい、そうです。何かまずいところでもあったでしょうか?
ちなみに、ページ中の画面写真はイメージです。
プログラムは思った通りではなく、書いた通りに動くとは
重々理解しているつもりですが、どこがおかしいのやら……
>>577
はい、そうです。何かまずいところでもあったでしょうか?
ちなみに、ページ中の画面写真はイメージです。
580 :デフォルトの名無しさん2011/07/25(月) 01:16:50.59
>>579
自己レスです。
WVPに渡すMatrixの数値が食い違うことに気づき、色々調べたところ、
XNAは右手系というやつで計算方法が違うということを知りました。
XNA側に無理やりC++で出した行列の値を設定したところ、表示できました。
そこで、質問を変えますが、このHLSLを、右手系という計算方法でも
正しく表示できるように対応させるにはどうすればよいでしょうか?
自己レスです。
WVPに渡すMatrixの数値が食い違うことに気づき、色々調べたところ、
XNAは右手系というやつで計算方法が違うということを知りました。
XNA側に無理やりC++で出した行列の値を設定したところ、表示できました。
そこで、質問を変えますが、このHLSLを、右手系という計算方法でも
正しく表示できるように対応させるにはどうすればよいでしょうか?
581 :デフォルトの名無しさん2011/07/25(月) 02:03:54.79
>>580
右手系と左手系を分かってるか?
その違いを理解すれば、ものすごく簡単な話しだぞ。
具体的には、軸を1本、符号反転するだけだ。
右手系と左手系を分かってるか?
その違いを理解すれば、ものすごく簡単な話しだぞ。
具体的には、軸を1本、符号反転するだけだ。
582 :デフォルトの名無しさん2011/07/25(月) 02:16:20.84
>>581
下記をHLSLに追加することでできました。
もしかしたら厳密には間違っているのかもしれませんが、
ひとまずは移植元と同じ表示を再現できました。
ありがとうございます!!
float4x4 view = g_view;
float4x4 proj = g_proj;
view[0].x = -view[0].x;
view[0].z = -view[0].z;
view[2].x = -view[2].x;
view[2].z = -view[2].z;
view[3].z = -view[3].z;
proj[2].x = -proj[2].x;
proj[2].y = -proj[2].y;
proj[2].z = -proj[2].z;
proj[2].w = -proj[2].w;
下記をHLSLに追加することでできました。
もしかしたら厳密には間違っているのかもしれませんが、
ひとまずは移植元と同じ表示を再現できました。
ありがとうございます!!
float4x4 view = g_view;
float4x4 proj = g_proj;
view[0].x = -view[0].x;
view[0].z = -view[0].z;
view[2].x = -view[2].x;
view[2].z = -view[2].z;
view[3].z = -view[3].z;
proj[2].x = -proj[2].x;
proj[2].y = -proj[2].y;
proj[2].z = -proj[2].z;
proj[2].w = -proj[2].w;
575 :デフォルトの名無しさん2011/07/24(日) 17:58:50.01
間違ってるから表示されないんだろ、アホか。
ソース晒して他人にデバッグさせようとか、図々しいにもほどがある。
ソース晒して他人にデバッグさせようとか、図々しいにもほどがある。
576 :デフォルトの名無しさん2011/07/24(日) 18:02:53.52
ソース晒せって言ったり、するなっていったり困るね。まったく。
583 :デフォルトの名無しさん2011/07/25(月) 10:40:06.76
DebugとReleaseを切り替えるたびにカスタムプロセッサがリビルドかかるの、これどうにかならんの?
切り替えてビルドするたびにコンテンツが連動してリビルドされるから、10分ちょい待たされる。
切り替えてビルドするたびにコンテンツが連動してリビルドされるから、10分ちょい待たされる。
584 :デフォルトの名無しさん2011/07/25(月) 10:46:51.94
ソリューション構成のビルド対象とゲームプロジェクトの依存関係から
コンテンツのプロジェクトを外せない?
コンテンツのプロジェクトを外せない?
585 :デフォルトの名無しさん2011/07/25(月) 11:10:59.86
>>584
あーそういうことか。
普段ビルド無効にしてカスタムプロセッサを弄った時だけ、
プロジェクト名指しで強制的にビルドさせてやればいいんだな。
サンクス
あーそういうことか。
普段ビルド無効にしてカスタムプロセッサを弄った時だけ、
プロジェクト名指しで強制的にビルドさせてやればいいんだな。
サンクス
586 :デフォルトの名無しさん2011/07/25(月) 20:42:01.47
フリーで使えるXNA用の
ライティング・シャドウイングのエンジンってないかな?
ライティング・シャドウイングのエンジンってないかな?
588 :デフォルトの名無しさん2011/07/29(金) 11:14:09.89
XBOX360用の.ccgameの配布条件って昔と変わった?つか条件なくなった?
昔(XNA3.0出る前後の頃)はWeb上でのフリー配布に限るって
どこかに書いてあった気がするんだが、今ぐぐると全く出てこないんだ。
Windows用の同人ゲをCDで出す予定で、そこにXNAクリエイター向けの
オマケとして、XBOX360版の.ccgameを突っ込もうかなとか考えているんだが。
昔(XNA3.0出る前後の頃)はWeb上でのフリー配布に限るって
どこかに書いてあった気がするんだが、今ぐぐると全く出てこないんだ。
Windows用の同人ゲをCDで出す予定で、そこにXNAクリエイター向けの
オマケとして、XBOX360版の.ccgameを突っ込もうかなとか考えているんだが。
589 :デフォルトの名無しさん2011/07/29(金) 14:06:28.57
さすが、考えてること同様、お粗末な頭だ。
配布するのはいいが、プレイするユーザーのこと考えてるか?
配布するのはいいが、プレイするユーザーのこと考えてるか?
590 :デフォルトの名無しさん2011/07/29(金) 14:33:04.50
ccgameはゲーム本体とは別にXNAクリエイター向けのおまけとして作ったものだから
プレイ対象者はMSに年99$上納してるヤシに限定しても特に悪くはないだろ、と思ってる。
プレイ対象者はMSに年99$上納してるヤシに限定しても特に悪くはないだろ、と思ってる。
591 :デフォルトの名無しさん2011/07/29(金) 22:58:35.37
正確には公式で問い合わせたほうがいいけど、
インディーズで出してるこびとスタジオも昔から360用ccgame入りをコミケで売ってるからNE☆
インディーズで出してるこびとスタジオも昔から360用ccgame入りをコミケで売ってるからNE☆
592 :デフォルトの名無しさん2011/07/29(金) 23:46:00.16
XNAクリエイター向けだったら
コンパイル済みのアセンブリとアセット配れば十分じゃないの
コンパイル済みのアセンブリとアセット配れば十分じゃないの
593 :デフォルトの名無しさん2011/07/30(土) 08:53:52.71
XNA4で Effect.CompileEffectFromFile相当の処理をさせるために、
コマンドラインツールが配布されていた気がするのですが
見つけられません。ご存知でないでしょうk?
コマンドラインツールが配布されていた気がするのですが
見つけられません。ご存知でないでしょうk?
594 :デフォルトの名無しさん2011/07/30(土) 12:13:51.46
自己解決しました。app hubのstock effect sampleです。
XNA4では、D3D10形式のシェーダファイルでないと読めないのでしょうか。
昔のシェーダファイルを使いまわしたいのですが、もしや解決策はない?
XNA4では、D3D10形式のシェーダファイルでないと読めないのでしょうか。
昔のシェーダファイルを使いまわしたいのですが、もしや解決策はない?
595 :デフォルトの名無しさん2011/08/01(月) 16:36:53.11
XNAで作られたゲームを拡張して、ゲーム中に文字チャット機能入れたいと思うんですが、
文字入力とか漢字変換とか、どうやれば良いでしょうか?
文字入力とか漢字変換とか、どうやれば良いでしょうか?
596 :デフォルトの名無しさん2011/08/01(月) 16:44:08.11
もう一度ググったらそれっぽいのが出てきました。
それ見て理解できなければ改めて質問します。
それ見て理解できなければ改めて質問します。
597 :デフォルトの名無しさん2011/08/01(月) 16:47:16.01
聞くときは動作環境も一緒にね
Windowsとそれ以外とじゃ違うし
Windowsとそれ以外とじゃ違うし
598 :デフォルトの名無しさん2011/08/03(水) 08:15:48.68
あるモデルをアルファテストでピクセル抜いた上で
それ以外のピクセルを真っ黒に描画したい(マスクつくりたい)
ちなみにカスタムシェーダは使えない
なんかやり方ないかな?
それ以外のピクセルを真っ黒に描画したい(マスクつくりたい)
ちなみにカスタムシェーダは使えない
なんかやり方ないかな?
600 :デフォルトの名無しさん2011/08/03(水) 11:28:16.74
>>598,599
オフスクリーン使え。
スキンメッシュなんざググれば(ry
オフスクリーン使え。
スキンメッシュなんざググれば(ry
601 :5982011/08/03(水) 12:59:12.75
>>600
オフスクリーン≒レンダターゲット?ならTexture2D対象にやってるっす
問題はモデル真っ黒にしたいけどそれってピクセルシェーダでやらなきゃ
だけどSkinnedEffect使わなきゃだからカスタムシェーダ使えねえってこと
SkinnedEffect+AlphaTestはできんのかなーって?
オフスクリーン≒レンダターゲット?ならTexture2D対象にやってるっす
問題はモデル真っ黒にしたいけどそれってピクセルシェーダでやらなきゃ
だけどSkinnedEffect使わなきゃだからカスタムシェーダ使えねえってこと
SkinnedEffect+AlphaTestはできんのかなーって?
602 :デフォルトの名無しさん2011/08/03(水) 22:02:06.97
>>601
レンダーターゲットの使い方工夫しろよ、低脳
レンダーターゲットの使い方工夫しろよ、低脳
599 :5982011/08/03(水) 08:20:46.37
それとモデルはSkinnedModelで変形させたい
誰か助けてくださいませ
誰か助けてくださいませ
603 :デフォルトの名無しさん2011/08/04(木) 01:51:30.42
XBOX360ではHLSLのPointScaleEnableとPointScale_A〜Cは使えないの?
Windowsではビルド通ったけどXBOX360では通らない
GraphicsDevice.RenderStateにあるかと思ったらないし
Windowsではビルド通ったけどXBOX360では通らない
GraphicsDevice.RenderStateにあるかと思ったらないし
605 :デフォルトの名無しさん2011/08/10(水) 00:50:22.71
XNAでスレッドを使って処理を分散しているサンプルとかないですか?
Update()のタイミングに合わせてスレッドを動かす方法が知りたいです。
Update()のタイミングに合わせてスレッドを動かす方法が知りたいです。
606 :デフォルトの名無しさん2011/08/11(木) 10:07:44.46
見たことないな。マルチスレッドは苦労の割になかなか速くならないし。
タスク並列がやりたいんだったら、.NET4+WinならParallel.Invokeが簡単。
それが使えないならThreadPoolで実行させてWaitHandleで待機する。
当たり判定のような特定のループが無茶苦茶重いんなら
タスク並列よりもそのループを並列化したほうがずっと楽で確実に速くなる。
タスク並列がやりたいんだったら、.NET4+WinならParallel.Invokeが簡単。
それが使えないならThreadPoolで実行させてWaitHandleで待機する。
当たり判定のような特定のループが無茶苦茶重いんなら
タスク並列よりもそのループを並列化したほうがずっと楽で確実に速くなる。
609 :デフォルトの名無しさん2011/08/11(木) 22:27:52.78
データ並列の当たり判定とかどうなんだろう
とんでもなく数が多ければコア数倍に近づくだろうけど実際のゲームで速くなんのかな
とんでもなく数が多ければコア数倍に近づくだろうけど実際のゲームで速くなんのかな
610 :デフォルトの名無しさん2011/08/12(金) 22:03:57.90
デフォルトで使えるspriteFontの類って著作権等の権利形態はどうなってるの?
612 :デフォルトの名無しさん2011/08/13(土) 09:55:00.41
レンダーステートの変更はGPUに負担をかけると聞いたのですが、
device.BlendState = BlendState.NonPremultiplied;
のような命令の時点で負荷をかけてしまうのでしょうか?
device.BlendState = BlendState.NonPremultiplied;
のような命令の時点で負荷をかけてしまうのでしょうか?
613 :デフォルトの名無しさん2011/08/17(水) 01:30:31.76
XBOX360でThreadPool使ってみたら恐ろしく重くなった
んで、ログを見ると
スレッド 0xf900001c はコード 0 (0x0) で終了しました。
みたいなのが毎フレーム出てくる
XBOX360のThreadPoolはThreadを本当にPoolしてるのか……?
んで、ログを見ると
スレッド 0xf900001c はコード 0 (0x0) で終了しました。
みたいなのが毎フレーム出てくる
XBOX360のThreadPoolはThreadを本当にPoolしてるのか……?
614 :デフォルトの名無しさん2011/08/17(水) 10:43:09.02
そういうもんだから管理は自分で
615 :デフォルトの名無しさん2011/08/18(木) 10:20:26.51
車輪の再発明したら箱でもスレッド毎回作り直されることなくなったわw
>>614 サンクス
>>614 サンクス
616 :デフォルトの名無しさん2011/08/24(水) 09:08:11.88
sprite.Batchのカラーで悩んでいます。
sprite.BatchのDrawの第4パラメーターの色指定で
色を時間に応じて替えさせるために変数を代入したいのですが
new Color(120, 120, 120)
とするのと
int x;
x = 120;
new Color(x, 120, 120)
とで結果が違ってしまいます。nex Colorの中のxにとても大きな
数値となって入っているような感じです。int型を代入させようとしているのが
いけないのでしょうか。しかし()内は整数のようですし・・・もしint型が原因ならば
どのような型の変数を代入すればいいのでしょうか。
sprite.BatchのDrawの第4パラメーターの色指定で
色を時間に応じて替えさせるために変数を代入したいのですが
new Color(120, 120, 120)
とするのと
int x;
x = 120;
new Color(x, 120, 120)
とで結果が違ってしまいます。nex Colorの中のxにとても大きな
数値となって入っているような感じです。int型を代入させようとしているのが
いけないのでしょうか。しかし()内は整数のようですし・・・もしint型が原因ならば
どのような型の変数を代入すればいいのでしょうか。
617 :デフォルトの名無しさん2011/08/24(水) 15:21:12.37
byte
618 :デフォルトの名無しさん2011/08/24(水) 15:55:17.32
3.1?
このへん4.0と変わってるからバージョン書いた方がいいよ
このへん4.0と変わってるからバージョン書いた方がいいよ
619 :デフォルトの名無しさん2011/08/24(水) 20:32:32.62
>>617
どうもありがとうございます。byte型を入れてみたところ予定どうりの
色調整ができました!
>>618
アドバイスありがとうございます、これから気をつけます。
現在の手元のバージョンは3.1でした。
言われて調べてみたところ、どうやらインディーズは4.0での
提出のみとなるようですね。透明処理などの仕様も変わるとか・・・。
早速移行してみようと思います。
どうもありがとうございます。byte型を入れてみたところ予定どうりの
色調整ができました!
>>618
アドバイスありがとうございます、これから気をつけます。
現在の手元のバージョンは3.1でした。
言われて調べてみたところ、どうやらインディーズは4.0での
提出のみとなるようですね。透明処理などの仕様も変わるとか・・・。
早速移行してみようと思います。
620 :デフォルトの名無しさん2011/08/24(水) 23:37:53.58
VisualStudio2010をいれて、XNA4.0に移行してみました。
自動変換で書式の違いでエラーがいくつも出るのは覚悟していたのですが
・XACTで作ったサウンドファイルを読み込んでくれない。
また、別の方法で音をならせることもできそうです。
・Contentを右クリックしてVisualStudio2010で画像を読み込みなおしても
「This file was compiled with wrong version of the XNA framework」
とのエラー。
後者の原因がわかりません。Contentに生の画像ファイルを置いて2010で
読み込んでいるのに何でこのようなエラーが出るのかおしえていただけないでしょうか。
遠い道ながら完成の道は見えていたところだったので、嫌な汗が噴出してます。
ならば1からと新規作成を起動しようとしたらビデオカード不対応といわれて
ショック大きい・・・。どうかよろしくおねがいいたします。
自動変換で書式の違いでエラーがいくつも出るのは覚悟していたのですが
・XACTで作ったサウンドファイルを読み込んでくれない。
また、別の方法で音をならせることもできそうです。
・Contentを右クリックしてVisualStudio2010で画像を読み込みなおしても
「This file was compiled with wrong version of the XNA framework」
とのエラー。
後者の原因がわかりません。Contentに生の画像ファイルを置いて2010で
読み込んでいるのに何でこのようなエラーが出るのかおしえていただけないでしょうか。
遠い道ながら完成の道は見えていたところだったので、嫌な汗が噴出してます。
ならば1からと新規作成を起動しようとしたらビデオカード不対応といわれて
ショック大きい・・・。どうかよろしくおねがいいたします。
621 :デフォルトの名無しさん2011/08/25(木) 00:53:08.52
Hidefじゃなくて
Reachにしてみれば?
Reachにしてみれば?
622 :デフォルトの名無しさん2011/08/25(木) 11:11:12.12
>>621
ありがとうございました。おかげさまでビルドに成功しました。
昨晩は絶望したのですが、それで最初からはじめてコピーも使って
以前の状態にもどりつつあります。これは個人的な報告ですが
移行作業の参考になる人もいるかもしれないので。
XACTエラーは4.0のフォルダにあるものを使わなかったのが原因のようでした。
Contentは原因わかりませんが、バージョン上げても2008のタブもあった
事と関係あるのかも。プロジェクトが2008で作ったものを参照したがってた
のか・・・あまりよくわかりませんが最初から作ったので問題なくなりました。
テクスチャサイズの最大値が、2008では警告だったのにこっちはエラーに
なるんですね。つくり直しました。
ありがとうございました。おかげさまでビルドに成功しました。
昨晩は絶望したのですが、それで最初からはじめてコピーも使って
以前の状態にもどりつつあります。これは個人的な報告ですが
移行作業の参考になる人もいるかもしれないので。
XACTエラーは4.0のフォルダにあるものを使わなかったのが原因のようでした。
Contentは原因わかりませんが、バージョン上げても2008のタブもあった
事と関係あるのかも。プロジェクトが2008で作ったものを参照したがってた
のか・・・あまりよくわかりませんが最初から作ったので問題なくなりました。
テクスチャサイズの最大値が、2008では警告だったのにこっちはエラーに
なるんですね。つくり直しました。
623 :デフォルトの名無しさん2011/08/25(木) 11:36:28.15
alpha.brend.modeを
spriteBatch.Begin
(SpriteSortMode.BackToFront, BlendState.NonPremultiplied);
にしました。
仕様変更の結果(?)
以前表示されていた背景が表示されなくなって不思議に思ったのですがどうやら
spriteBatch.Draw(BG115, new Vector2(0, 0), new Rectangle(posB, 0, 1240, 600), new Color(255, 255, 255)
, 0.0f, new Vector2(0, 0), 1.0f, SpriteEffects.None, 0.3f);
spriteBatch.Draw(BG115, new Vector2(0, 0), new Rectangle(posB - 1220, 0, 1200, 600), new Color(255, 255, 255)
, 0.0f, new Vector2(0, 0), 1.0f, SpriteEffects.None, 0.3f);
背景が同時1つしか表示できなくなってるようです。
勘違いだったらごめんなさい。
spriteBatch.Begin
(SpriteSortMode.BackToFront, BlendState.NonPremultiplied);
にしました。
仕様変更の結果(?)
以前表示されていた背景が表示されなくなって不思議に思ったのですがどうやら
spriteBatch.Draw(BG115, new Vector2(0, 0), new Rectangle(posB, 0, 1240, 600), new Color(255, 255, 255)
, 0.0f, new Vector2(0, 0), 1.0f, SpriteEffects.None, 0.3f);
spriteBatch.Draw(BG115, new Vector2(0, 0), new Rectangle(posB - 1220, 0, 1200, 600), new Color(255, 255, 255)
, 0.0f, new Vector2(0, 0), 1.0f, SpriteEffects.None, 0.3f);
背景が同時1つしか表示できなくなってるようです。
勘違いだったらごめんなさい。
624 :デフォルトの名無しさん2011/08/25(木) 14:11:59.47
↑
ごめんなさい。
パラメーターの意味あいが変わって、表示優先度などがメチャクチャに
なっていただけみたいです。大間違いですみません。
ごめんなさい。
パラメーターの意味あいが変わって、表示優先度などがメチャクチャに
なっていただけみたいです。大間違いですみません。
625 :デフォルトの名無しさん2011/08/29(月) 12:14:59.36
Cueを使用して効果音を鳴らせていますが
同フレームに同時にならすと音がその倍、大きくなってしまいます。
forループ内に音を出す命令を書いた場合や
複数のザコに攻撃が同時ヒットした場合のヒット音など。
何か良い解決策はないでしょうか?
同フレームに同時にならすと音がその倍、大きくなってしまいます。
forループ内に音を出す命令を書いた場合や
複数のザコに攻撃が同時ヒットした場合のヒット音など。
何か良い解決策はないでしょうか?
626 :デフォルトの名無しさん2011/08/29(月) 12:27:07.72
再生数に合わせて音量を落とすとか
627 :デフォルトの名無しさん2011/08/29(月) 21:24:00.20
>>626
シチュエーションによって2人に・3人にと同時ヒット数がいろいろなので
その方法だと厳しいようです。
シチュエーションによって2人に・3人にと同時ヒット数がいろいろなので
その方法だと厳しいようです。
628 :デフォルトの名無しさん2011/08/29(月) 22:18:13.55
そんなのロジックの問題でしょ
当たり判定してすぐに鳴らさないであとでまとめて鳴らすとかどうとでも
当たり判定してすぐに鳴らさないであとでまとめて鳴らすとかどうとでも
629 :デフォルトの名無しさん2011/08/30(火) 16:50:52.20
>>628
同時再生で音が大きくなるのはプログラムで回避すべき問題なんですね。
了解しました。
音をならすシチュエーションで変数を動かして、その変数で一つの音を
鳴らすように工夫してみます。
回答ありがとうございました。
同時再生で音が大きくなるのはプログラムで回避すべき問題なんですね。
了解しました。
音をならすシチュエーションで変数を動かして、その変数で一つの音を
鳴らすように工夫してみます。
回答ありがとうございました。
630 :デフォルトの名無しさん2011/08/30(火) 17:27:50.69
>>629
つか、実際プロが作ったゲームをプレイしてみてその辺をどうしてるか参考にしてみては?
つか、実際プロが作ったゲームをプレイしてみてその辺をどうしてるか参考にしてみては?
632 :デフォルトの名無しさん2011/08/31(水) 11:07:00.68
>>630-631
あれから解決しました。
bool型でsoundplay変数を作って
音をならしたい時はそれぞれの場面でならすのでなくこの変数をtrueに。
if(bool soundplay == false)でならす条件を絞って
trueになったフレームにだけ音をならして3フレームでfalseにもどっと
その間は音が重ねてでないようにしました。
あれから解決しました。
bool型でsoundplay変数を作って
音をならしたい時はそれぞれの場面でならすのでなくこの変数をtrueに。
if(bool soundplay == false)でならす条件を絞って
trueになったフレームにだけ音をならして3フレームでfalseにもどっと
その間は音が重ねてでないようにしました。
633 :デフォルトの名無しさん2011/08/31(水) 17:10:52.89
SpriteFontってSpriteBatch.DrawString以外では使えんの?
たとえば自前でSpriteFontの描画ロジック積むとか
XNA3.1です
たとえば自前でSpriteFontの描画ロジック積むとか
XNA3.1です
634 :デフォルトの名無しさん2011/08/31(水) 23:04:48.73
四角のポリゴンにテクスチャを張ったのは出来たんですけど
透明色指定の方法教えてください
透明色指定の方法教えてください
635 :デフォルトの名無しさん2011/08/31(水) 23:20:43.56
透明色は過去の遺物
アルファチャンネル使う
アルファチャンネル使う
636 :デフォルトの名無しさん2011/09/01(木) 01:31:44.43
>>635
どうもです
アルファチャンネルを調べてみます
どうもです
アルファチャンネルを調べてみます
637 :デフォルトの名無しさん2011/09/01(木) 02:28:29.82
XNAで不特定多数の漢字を表示することって不可能なのでしょうか?
方法を検索しても使う漢字全て調べて使えるようにするっていう方法しか見つからないのですが・・・
方法を検索しても使う漢字全て調べて使えるようにするっていう方法しか見つからないのですが・・・
638 :デフォルトの名無しさん2011/09/01(木) 04:37:28.18
>>637
JISコードの漢字の並び順は第一水準、第二水準と並んでいる(ボソ
もしくは、後で拡張出来るようにする予定でもなければ、セリフとかのリソースをスキャンしてxmlを生成するプログラムをくんでも良いし
(そしてそれをコンパイル時に実行するようにしても良いし)
ちなみに、今の時代、オンボでもなければビデオメモリは少なくても512MBはあるだろうから、
第一水準までのすべての漢字を取り込んだところで、気にするほどパフォーマンスは落ちないだろうよ。
JISコードの漢字の並び順は第一水準、第二水準と並んでいる(ボソ
もしくは、後で拡張出来るようにする予定でもなければ、セリフとかのリソースをスキャンしてxmlを生成するプログラムをくんでも良いし
(そしてそれをコンパイル時に実行するようにしても良いし)
ちなみに、今の時代、オンボでもなければビデオメモリは少なくても512MBはあるだろうから、
第一水準までのすべての漢字を取り込んだところで、気にするほどパフォーマンスは落ちないだろうよ。
639 :デフォルトの名無しさん2011/09/01(木) 16:53:02.41
Windows限定でいいならP/InvokeやSystem.Drawing使って文字描画するのは難しくない
文字列のビットマップデータを取得したらテクスチャにSetDataで書き込むだけ
文字列のビットマップデータを取得したらテクスチャにSetDataで書き込むだけ
641 :デフォルトの名無しさん2011/09/02(金) 13:50:26.77
動く。
もっと古くても2005年以降のintelマザボならオンボードで動く。
もっと古くても2005年以降のintelマザボならオンボードで動く。
642 :デフォルトの名無しさん2011/09/05(月) 05:32:03.19
画像の端っこが、画像部分をはみ出して横に伸びてしまうんですが
この機能をオフにできませんか?
テクスチャの端に背景色を配置して対処してますが面倒です。
この機能をオフにできませんか?
テクスチャの端に背景色を配置して対処してますが面倒です。
643 :デフォルトの名無しさん2011/09/05(月) 10:56:03.89
状況がわからん、どんなふうになるの?
644 :デフォルトの名無しさん2011/09/05(月) 20:22:01.27
>>643
Texture2Dで2Dドット絵なんですが
例えば25×25サイズのドット絵を描画するとき、この端っこに背景色以外のドットが
あると、右端にそのドットがある場合などは、その絵の右に
ビヨーンと右端の色を伸ばして塗りつぶしたふうになってしまいます。
Texture2Dで2Dドット絵なんですが
例えば25×25サイズのドット絵を描画するとき、この端っこに背景色以外のドットが
あると、右端にそのドットがある場合などは、その絵の右に
ビヨーンと右端の色を伸ばして塗りつぶしたふうになってしまいます。
645 :デフォルトの名無しさん2011/09/06(火) 01:02:29.64
>>644
図解してくれよ
図解してくれよ
646 :デフォルトの名無しさん2011/09/06(火) 01:42:08.43
テクスチャアドレッシングモードがクランプになってんじゃね?
647 :デフォルトの名無しさん2011/09/06(火) 15:33:54.42
>>645
絵にしてみるとこんな感じです。
ttp://uploader.sakura.ne.jp/src/up56183.png
>>646
ありがとうございます。
検索してでてきたのは3Dのほうでしたが、どうもそれがらみのようです。
絵にしてみるとこんな感じです。
ttp://uploader.sakura.ne.jp/src/up56183.png
>>646
ありがとうございます。
検索してでてきたのは3Dのほうでしたが、どうもそれがらみのようです。
648 :デフォルトの名無しさん2011/09/06(火) 18:59:23.45
すまん。 画像で笑ってしまった。
649 :デフォルトの名無しさん2011/09/06(火) 21:26:37.81
655 :デフォルトの名無しさん2011/09/19(月) 17:47:06.57
表示結果
http://ichigo-up.com/cgi/up/qqq/nm41730.png.html
コード(Draw()の中身)
GraphicsDevice.Clear(Color.CornflowerBlue);
spriteBatch.Begin(SpriteBlendMode.AlphaBlend, SpriteSortMode.FrontToBack, SaveStateMode.None);
GraphicsDevice.SamplerStates[0].AddressU = TextureAddressMode.Wrap;
GraphicsDevice.SamplerStates[0].AddressV = TextureAddressMode.Wrap;
spriteBatch.Draw(mami, new Vector2(0, 0), new Rectangle(-100, -100, 800, 600), Color.White);
spriteBatch.End();
base.Draw(gameTime);
テクスチャアドレッシングモードの変更だけじゃだめぽいね。
http://ichigo-up.com/cgi/up/qqq/nm41730.png.html
コード(Draw()の中身)
GraphicsDevice.Clear(Color.CornflowerBlue);
spriteBatch.Begin(SpriteBlendMode.AlphaBlend, SpriteSortMode.FrontToBack, SaveStateMode.None);
GraphicsDevice.SamplerStates[0].AddressU = TextureAddressMode.Wrap;
GraphicsDevice.SamplerStates[0].AddressV = TextureAddressMode.Wrap;
spriteBatch.Draw(mami, new Vector2(0, 0), new Rectangle(-100, -100, 800, 600), Color.White);
spriteBatch.End();
base.Draw(gameTime);
テクスチャアドレッシングモードの変更だけじゃだめぽいね。
656 :デフォルトの名無しさん2011/09/20(火) 01:08:53.99
SpriteSortMode.Immediateにするとできた。
よく考えると当然のことなんだよな……
よく考えると当然のことなんだよな……
657 :デフォルトの名無しさん2011/09/20(火) 01:27:04.63
テクスチャの一部を切り出してタイリングするにはどうすればよいのでしょうか?
やはり一旦別のテクスチャに描画する必要があるのでしょうか?
やはり一旦別のテクスチャに描画する必要があるのでしょうか?
658 :デフォルトの名無しさん2011/09/20(火) 17:11:50.59
バージョン変わる毎に使えなくなる機能が多い……
なんで下位互換が無いのこのライブラリ
まぁなんか作る前に気付けて良かった
やっぱObjective-C最強やね!
なんで下位互換が無いのこのライブラリ
まぁなんか作る前に気付けて良かった
やっぱObjective-C最強やね!
660 :デフォルトの名無しさん2011/09/20(火) 19:26:01.45
所で何でNHKは宮家の事を王家って言うの?
百歩譲って皇家はまだ理解できるけど王家って・・・
EmperorとKingは全く格が異なるのにそんなことも理解できないの?
百歩譲って皇家はまだ理解できるけど王家って・・・
EmperorとKingは全く格が異なるのにそんなことも理解できないの?
661 :デフォルトの名無しさん2011/09/21(水) 04:57:25.54
>>660
王のいない一国の中で王だろうが皇だろうがどっちでもいいじゃん、そんなのw
王のいない一国の中で王だろうが皇だろうがどっちでもいいじゃん、そんなのw
663 :デフォルトの名無しさん2011/09/23(金) 12:19:18.01
>>660
で、どう違うの?
C#を統べるMSがエンペラーでソニーワールド内だけでC#を統括しているソニーがキングってこと?
で、どう違うの?
C#を統べるMSがエンペラーでソニーワールド内だけでC#を統括しているソニーがキングってこと?
662 :デフォルトの名無しさん2011/09/21(水) 22:53:42.70
MIYAKE
Syntax error.
Ok
Syntax error.
Ok
667 :デフォルトの名無しさん2011/09/23(金) 22:40:35.95
>>662
664 :デフォルトの名無しさん2011/09/23(金) 12:28:46.92
アジアにおいて王というのは中国の下僕であって
天皇というのは中国と対等であるという意味において
まったく異なる
天皇というのは中国と対等であるという意味において
まったく異なる
665 :デフォルトの名無しさん2011/09/23(金) 14:23:09.02
そんなことをドヤ顔で語られたところでスレ違いどころか板違いなんだがな
669 :デフォルトの名無しさん2011/10/01(土) 23:03:17.69
テキストファイルのデータ(id,name,price,type,・・・)*200を読みこませるのってどうするのがベターなの?
670 :デフォルトの名無しさん2011/10/02(日) 07:08:58.39
>>669
sqliteでもつかっとけ
sqliteでもつかっとけ
672 :デフォルトの名無しさん2011/10/08(土) 12:16:05.42
SRT行列matがあったとして
mat.Decomposeで取得されるQuaternionと
Quaternion.CreateFromRotationMatrix(mat)で取得されるQuaternionは
常に同じになりますか?
mat.Decomposeで取得されるQuaternionと
Quaternion.CreateFromRotationMatrix(mat)で取得されるQuaternionは
常に同じになりますか?
673 :デフォルトの名無しさん2011/10/11(火) 01:22:47.65
XNA4.0のMicrophone使った人いますか?
普通に音声の再生はできるのですが、
FFTをかけるとスペクトルが-10dBと-80dB付近を行ったり来たりしています。
たぶん、奇数番目の値がケタ上げに使っていると思ったのですが、
いかんせんそれから先に進まない状態です。
誰か実験した方とかいませんか?
普通に音声の再生はできるのですが、
FFTをかけるとスペクトルが-10dBと-80dB付近を行ったり来たりしています。
たぶん、奇数番目の値がケタ上げに使っていると思ったのですが、
いかんせんそれから先に進まない状態です。
誰か実験した方とかいませんか?
674 :デフォルトの名無しさん2011/10/12(水) 03:41:03.85
XNAとDirectX11は併用できますか?
たとえばXNAコード内にDirectcomputeを使用したりとか
たとえばXNAコード内にDirectcomputeを使用したりとか
675 :デフォルトの名無しさん2011/10/12(水) 04:24:43.95
やったことないから確実なことは言えないけど、Win限定ならP/Invoke使えば出来るんじゃない?
677 :デフォルトの名無しさん2011/10/14(金) 17:43:15.21
韓国に媚びうるフジテレビに徹底抗議する!!!
竹島は韓国領土などととんでもない嘘を世界に向けて発信したキムテヒを許さないぞ!!!
☆フジテレビ抗議デモin銀座☆
【時間】 平成23年10月15日土曜日 【集合】13:45【出発】14:00
【場所】 東京都千代田区大手町2-7-2常盤橋公園
【抗議内容】 フジテレビ偏向報道への抗議・反日女優キムテヒドラマへの徹底抗議
公式HP
http://yuh20112525.kagennotuki.com/
竹島は韓国領土などととんでもない嘘を世界に向けて発信したキムテヒを許さないぞ!!!
☆フジテレビ抗議デモin銀座☆
【時間】 平成23年10月15日土曜日 【集合】13:45【出発】14:00
【場所】 東京都千代田区大手町2-7-2常盤橋公園
【抗議内容】 フジテレビ偏向報道への抗議・反日女優キムテヒドラマへの徹底抗議
公式HP
http://yuh20112525.kagennotuki.com/
678 :デフォルトの名無しさん2011/10/16(日) 17:47:37.67
透明処理をしようとすると、何か透き通ってるというよりも白っぽくなってしまうんですが
これは避けられませんか?
具体的にspriteBatch.Drawカラーの(255,255,255,100)の透明指定を使って
いるのですが・・・
これは避けられませんか?
具体的にspriteBatch.Drawカラーの(255,255,255,100)の透明指定を使って
いるのですが・・・
679 :デフォルトの名無しさん2011/10/17(月) 03:01:37.78
>>678
BlendStateをNonPremultipliedに
BlendStateをNonPremultipliedに
680 :デフォルトの名無しさん2011/10/17(月) 20:19:16.93
>>679
できました!
目的のとおりの透明になりました。ありがとうございます!
できました!
目的のとおりの透明になりました。ありがとうございます!
682 :デフォルトの名無しさん2011/10/17(月) 23:28:54.11
画面に表示されている複数のオブジェクトを
全てラスタースクロールって出来ますか?
(オブジェクト=BG、キャラ、文字等の表示物)
全てラスタースクロールって出来ますか?
(オブジェクト=BG、キャラ、文字等の表示物)
683 :デフォルトの名無しさん2011/10/17(月) 23:59:13.05
そんなもん今時存在しないけど具体的に何がしたいの
画面全体を波打たせたりしたいんなら
いったんレンダーターゲットに描いてピクセルシェーダが簡単爆速
画面全体を波打たせたりしたいんなら
いったんレンダーターゲットに描いてピクセルシェーダが簡単爆速
685 :デフォルトの名無しさん2011/10/18(火) 00:09:08.77
>683
ありがとうございます。
ただのエフェクトで使用します。
http://www.youtube.com/watch?v=vB0Hbelvux4
怒首領蜂大復活で、ある条件時に裏面に行く際ラスターエフェクトがかかる。
この処理がしたかったのです。
ありがとうございます。
ただのエフェクトで使用します。
http://www.youtube.com/watch?v=vB0Hbelvux4
怒首領蜂大復活で、ある条件時に裏面に行く際ラスターエフェクトがかかる。
この処理がしたかったのです。
686 :デフォルトの名無しさん2011/10/18(火) 01:53:12.77
>>685
あらためて見てプロが作ったゲームってすごいな。
プレイよりもそっちに目がいってしまう。
あらためて見てプロが作ったゲームってすごいな。
プレイよりもそっちに目がいってしまう。
688 :デフォルトの名無しさん2011/10/26(水) 19:01:08.57
ピクセルシェーダでサンプルする座標を三角関数で適当にずらすだけ
本物のラスタースクロールなんて糞重くて面倒臭いだけ
本物のラスタースクロールなんて糞重くて面倒臭いだけ
689 :6882011/10/26(水) 19:33:22.44
ああ本物っていうかソフトウェア処理とか1ラインずつ描画するとかのことね
690 :デフォルトの名無しさん2011/10/28(金) 18:01:22.56
昔、ダライアスがラスタースクロールですげぇすげぇ言われてて
そんなにすごいのかと思ってたが
プログラミングで試行錯誤してたんだろうね
そんなにすごいのかと思ってたが
プログラミングで試行錯誤してたんだろうね
692 :デフォルトの名無しさん2011/10/29(土) 12:58:47.63
XNAはじめてから市販のクソゲーにちょっと寛容になれた気がする。
694 :デフォルトの名無しさん2011/10/30(日) 17:55:12.34
>>692
あるある
あるある
693 :デフォルトの名無しさん2011/10/30(日) 15:29:42.74
セーブとロードが分かりにくすぎる・・・
3行で解説頼む
3行で解説頼む
697 :デフォルトの名無しさん2011/10/31(月) 11:16:01.06
>>693
ストレージサービスの使い方?
それともシリアライズ?
ストレージサービスの使い方?
それともシリアライズ?
698 :デフォルトの名無しさん2011/11/06(日) 19:12:31.35
C#でマイクを使いたいのでXNAを検討しています。必ずゲームのウィンドウが表示されるのは、どうにかならないのでしょうか?
できれば、ボタンやテキストフィールドのあるフォームを使いたいのですが。
できれば、ボタンやテキストフィールドのあるフォームを使いたいのですが。