XNA 質問・相談スレッド 2
レス数が950を超えています。1000を超えると書き込みができなくなります。
0001デフォルトの名無しさん
2010/10/05(火) 22:13:35http://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プログラミングに関係のない話はご遠慮ください。
0002デフォルトの名無しさん
2010/10/05(火) 23:03:100003デフォルトの名無しさん
2010/10/06(水) 00:59:04多彩な弾幕だしてくるCAVEとか、やっぱすごいんだなと思う
0004デフォルトの名無しさん
2010/10/06(水) 01:10:22ようなシューティングを作ってほしい。
ぎゃる☆がんも絶対買うよ。
敵なんて体当たりだけでいい。同時に1種類の敵しかでないで撃破されたら
元の位置にもどして再登場とかやれば配列なんか覚えなくても作れるよ。
だから初心者は上記のようなシューティングからはじめるといい。
0005デフォルトの名無しさん
2010/10/07(木) 04:43:21新スレ乙
0006デフォルトの名無しさん
2010/10/07(木) 14:07:09剣を振ってるモーション中にBoundingBoxが重なったらライフを減らすようにしてますが
重なってる間減り続けてしまいます。
0007デフォルトの名無しさん
2010/10/07(木) 17:45:520008デフォルトの名無しさん
2010/10/07(木) 17:47:50ヒットする条件にbool型の変数を用意して
ヒットしたらfalseに切り替えるといいかも。
0009デフォルトの名無しさん
2010/10/07(木) 18:19:33一体に付き一発ずつ当てたい場合なら
敵のダメージ側に無敵時間を設けるか
どの攻撃にヒットしたっていうのを敵キャラに残しといて、前回と同じ攻撃はスルーするように。ダメージモーションが終わったらリセット。
一番最初に当てたキャラのみに当てたい場合なら
ヒットした後にプレイヤー側で攻撃終了フラグを立てる。次の攻撃やったり攻撃終了したりしたらフラグリセット。
0010デフォルトの名無しさん
2010/10/07(木) 19:06:42参考になるサイトや本はないでしょうか?
http://creators.xna.com/ja-jp/sample/chasecamera
今はこのサンプルソースと睨めっこしている最中ですが
まさか自動追尾カメラがこんなに複雑なコードで制御されてたとは・・・・・・
世の中の3Dゲームが全て神ゲーに見えて怖いです・・・・・・
0011デフォルトの名無しさん
2010/10/07(木) 21:25:08欧文フォントだと簡単に表示できるのでしょうか?
0012デフォルトの名無しさん
2010/10/07(木) 21:30:120013デフォルトの名無しさん
2010/10/07(木) 21:42:51具体的にわからない部分があるのでなく全体的に理解が難しいならば
参考書を読破するのがいいんじゃない、かなぁ。
0014デフォルトの名無しさん
2010/10/07(木) 21:48:12日本語も表示してるっぽいよ???
0015デフォルトの名無しさん
2010/10/07(木) 21:49:330016デフォルトの名無しさん
2010/10/07(木) 22:13:11例えば、ドラキュラHDの拡縮や、デススマ2やエスプガルーダ2にある
画面サイズアジャストのように、画面にカメラをよせたり離したり
するような処理は可能でしょうか。
0017デフォルトの名無しさん
2010/10/07(木) 22:15:440018デフォルトの名無しさん
2010/10/09(土) 01:04:35ありがとうございます。
検索してみたところ、実装したい処理をしているサイトをみつけました。
ただ、具体的にどのような記述をするものなのかがわかりません。
3D知識もからみそうなので1からチェックしたいと思うのですが
参考にできる本やサイトなどありますでしょうか。
あと、この処理が可能とわかっただけでも安心できましたので感謝いたします。
0019デフォルトの名無しさん
2010/10/09(土) 10:36:45http://msdn.microsoft.com/ja-jp/library/bb194912%28XNAGameStudio.31%29.aspx
XNA使うには行列とベクトルの基礎知識が必要。わからないなら高校数学やりなおし。
その上で「アフィン変換」でググる。
0020デフォルトの名無しさん
2010/10/10(日) 01:56:14これまで既存知識でやりくりしていたので、かなり大変そうです。
回転についてだけどそれを理解しないとはじまらない・・・
とにかく調べながら頑張ります。ありがとうございました。
0021デフォルトの名無しさん
2010/10/10(日) 03:37:040022デフォルトの名無しさん
2010/10/10(日) 11:08:26別に2次元でも4次元でも行列を使ったアフィン変換の記述は出来るぞ
0023デフォルトの名無しさん
2010/10/10(日) 11:37:460024デフォルトの名無しさん
2010/10/10(日) 19:16:25一応ゲーム作れてしまっているからなー。
0025デフォルトの名無しさん
2010/10/10(日) 19:43:18結果だけしっていて、それが使えれば問題。
たとえば回転行列がなぜああいう形式なのか、知らなくても問題はない。
どう使えばどんな結果が得られるのか、それが必要。
というか、それができないヤツはプログラミングなんて�_
0026デフォルトの名無しさん
2010/10/10(日) 21:49:220027デフォルトの名無しさん
2010/10/10(日) 21:50:570028デフォルトの名無しさん
2010/10/10(日) 22:21:540029デフォルトの名無しさん
2010/10/10(日) 23:56:09入門サイト系のサンプルって2Dのが多くてそれの改変からはじめる初心者が多いからね
0030デフォルトの名無しさん
2010/10/11(月) 00:07:15あまりにもおまじないが多くなりすぎる
0031デフォルトの名無しさん
2010/10/11(月) 00:16:44それこそ逆だろ。
なにをしたいかにもよるが、延々デバイスの初期化で行き詰まったりするよりは、
サンプルを改変しながら、その改変での動作変更を見て勉強する方が早いと漏れは思う。
サンプル眺めてると、だんだん全体像が頭に入ってくるし。
ただ、デバイスの初期化とか、根本的な部分を学ぶにはXNAは不適当。
隠蔽されちゃって見えんからな。
0032デフォルトの名無しさん
2010/10/11(月) 02:33:50勉強が目的なんじゃなくて、XNAで(もしくはXBOXの)作りたいゲームを作ることが
目的という人が多いだろうからなぁ、ことXNAに関しては。
そういう方向から入った人は、書式を知ってからその意味を理解するパターンも多い。
ていうか、現に参考書はそういう方法論とってるのが多いし。
0033デフォルトの名無しさん
2010/10/11(月) 02:58:29「C+やC#の理解から深める=基本書の読破」
「サンプル見ての勉強=過去問を沢山」
前者は確実に地力はつくが無駄知識もあり効率が悪い。
後者は目的達成の近道だが応用はきかず学んだ部分以外は零からの学習が要る。
新規の質問者は前者が多いけど回答者は後者の方法論で学んできた人が多くて
前者できた人間には遠い道に見える回答が多い、みたいな。
本当に2Dか3Dかの差なのかな??
0034デフォルトの名無しさん
2010/10/11(月) 03:03:23自分でもかけないのに、他人のコード読めるはずもなく。
0035デフォルトの名無しさん
2010/10/11(月) 03:16:08おまえは英語読めるか? 書けなくても読める漢字もたくさんあるだろ?
人間の頭はそういうふうにできてる。
初心者に完動品プログラムはかけないかもしれないが、動くプログラムのソースを読むことはできる。
関数名とか、基本が英語だからなんとなく機能を類推できるものも多い。
分からなければリファレンスの出番(英単語を調べたことぐらいあるだろ?)。
文法は参考書で覚える方がいいと思うが、APIはソースから入ってもいいと思う。
0036デフォルトの名無しさん
2010/10/11(月) 03:42:29確かに言い方が極端すぎた。
0037デフォルトの名無しさん
2010/10/11(月) 10:58:280038デフォルトの名無しさん
2010/10/11(月) 11:55:21プログラミング初めての人にはお勧めできない
遊びながら覚えるにしてもWinFormsから入ったほうがいい
0039デフォルトの名無しさん
2010/10/11(月) 13:35:39今まで DirectX 触ったことがあるとか言う人だったら、かなり簡単って思えるんだろうけども。
0040デフォルトの名無しさん
2010/10/11(月) 14:58:59でも、サンプルコード+コードの説明
という形式が初心者向け教本や入門用サイトのおきまりだし
理解は早そうとも思う。
forループで配列に代入とか、自分で思いつくより、みせられて
ああ、こういう考え方をするのか、と理解するのがイイんじゃないかなと。
0041デフォルトの名無しさん
2010/10/11(月) 18:29:23int[] array = new int[3,3];
となっていますが
int[,] array = new int[3,3];
の間違いかな。エラーがでるので左に「,」を入れたらうまくいきました。
0042デフォルトの名無しさん
2010/10/11(月) 18:42:33出版社のサポートページとかに誤植情報載ってると思うから見ておいた方が良いかもね
0043デフォルトの名無しさん
2010/10/11(月) 19:17:05学習センスゼロだな。
0044デフォルトの名無しさん
2010/10/11(月) 21:51:250045デフォルトの名無しさん
2010/10/11(月) 21:55:020046デフォルトの名無しさん
2010/10/11(月) 22:08:290047デフォルトの名無しさん
2010/10/12(火) 01:19:42自己解決した上に入門書のミスの告知をしたんだから褒めたまえよ
0048デフォルトの名無しさん
2010/10/12(火) 11:48:210049デフォルトの名無しさん
2010/10/13(水) 20:04:43「ゲーム作りで学ぶ〜」は読んだんですが、3Dは文字通り次元が違って苦戦してます。
特に、カメラ制御・当たり判定について詳しく解説してあるとありがたいのですが・・・・・・
0050デフォルトの名無しさん
2010/10/14(木) 09:21:110051デフォルトの名無しさん
2010/10/14(木) 12:20:32APIはだいたいXNAと同じだしC#わかるならちょっと勉強すればC++も十分読める
0052デフォルトの名無しさん
2010/10/14(木) 12:34:32頭が悪すぎだと思うからやめといたほうがいい
0053デフォルトの名無しさん
2010/10/14(木) 15:03:38もし2D→3Dの移行にベターな本があったら報告きぼん。
自分もゲーム作りで学ぶ〜は4,5冊読んだなかでわかりやすかったので
オススメしたけど、読んでみないとわからないしね。
てわけで3D初心者マニュアル本発掘の先駆者になってほしい。
0054デフォルトの名無しさん
2010/10/14(木) 20:19:370055デフォルトの名無しさん
2010/10/15(金) 02:27:52ゲームプログラミングのためのリアルタイム衝突判定
ちょいと高いし、プログラミング始めたばかりだと読むの辛い気もする。
あと、XNA ならライブラリ側で実装されてるし、辞書にさえもならないだろうけど。
まあ、興味があれば。
0056デフォルトの名無しさん
2010/10/15(金) 07:31:580057デフォルトの名無しさん
2010/10/15(金) 23:51:12おk
0058デフォルトの名無しさん
2010/10/16(土) 00:23:130059デフォルトの名無しさん
2010/10/16(土) 03:47:470060デフォルトの名無しさん
2010/10/16(土) 19:34:03ゲームでは最初メニュー画面で何か選ぶとメインのゲーム画面に
いったりしますがこういうのはどう処理にするのがいいのでしょうか?
フォームなら新しいフォームをnewして自分を消せばいいのですが
そういうのじゃないですよね?
0061デフォルトの名無しさん
2010/10/16(土) 19:43:25そういう感覚で作れるように設計する。
http://create.msdn.com/ja-JP/education/catalog/sample/game_state_management
0062デフォルトの名無しさん
2010/10/16(土) 20:12:31うひょー
むっず。
0063デフォルトの名無しさん
2010/10/16(土) 21:51:18gamestate=0がタイトル、1がオプション、2がステージ、、、10がゲームオーバー画面
みたく分けてやってるな。0のときスタートボタンで2に以降して
gamestate=2なのを条件にゲーム本編の処理を開始。
if (gamestate==2){処理内容、、、}みたいにでかい{}でそれぞれくくる。
ぜんぶUpdateメソッドに入ることになります。
0064デフォルトの名無しさん
2010/10/16(土) 22:12:180065デフォルトの名無しさん
2010/10/17(日) 11:21:23だって変数とわかりやすいんだモン
0066デフォルトの名無しさん
2010/10/17(日) 11:41:370067デフォルトの名無しさん
2010/10/17(日) 11:45:37それ、C# から始めればいいものをわざわざ C から教える教育の問題じゃないか?
0068デフォルトの名無しさん
2010/10/17(日) 14:38:03馬鹿は氏ね
0069デフォルトの名無しさん
2010/10/17(日) 14:40:10実際は1バイト
0070デフォルトの名無しさん
2010/10/17(日) 15:08:33詰め込みたいならビットマスクを隠蔽する関数群を使えって感じだろ。
それはともかく、boolにする意味はメモリの節約ではなく誤った代入などを防ぐため。
暗黙の変換をされちゃう言語だと意味ないが。
0071デフォルトの名無しさん
2010/10/17(日) 16:46:13誰か、boolが1ビットなんて言ってる? w
007269
2010/10/17(日) 16:50:55わかりにくくてすまん
0073デフォルトの名無しさん
2010/10/17(日) 20:38:090074デフォルトの名無しさん
2010/10/18(月) 02:16:18byteを使うほうが処理速度に影響するぐらいメモリは節約されますか?
0075デフォルトの名無しさん
2010/10/18(月) 03:57:23int を真偽値代わりに使うと、true == true が必ずしも true にならないとか、問題いっぱいある。
0076デフォルトの名無しさん
2010/10/18(月) 09:45:09boolの代わりに使ったり>>63のようなマジックナンバーは論外だけど
0077デフォルトの名無しさん
2010/10/18(月) 10:03:28タイトル、プレイ画面、ゲームオーバー画面みたいな大きなシーンの移動はClearしてPush、
ポーズ、オプション、ダイアログみたいな小さなシーンの移動は現在のスタックにPush。
public interface IScene { SceneResult Process(SceneResult result); }
public enum SceneResult : byte { None = 0x00, SuppressUpdate = 0x01, SuppressDraw = 0x02, StackTop = 0x80 }
シーンオブジェクトををこんな感じのインターフェイスにして、
private LinkedList<IScene> sceneStack = new LinkedList<IScene>();
private void OnUpdate()
{
var node = sceneStack.Last;
var result = SceneResult.StackTop;
while (node != null)
{
var scene = node.Value;
result = scene.Process(result);
node = node.Previous;
}
}
毎フレーム呼び出す。
ポーズ以下のUpdateを抑制したりするときはシーンの戻り値にSuppressUpdateフラグ立てておく、とか。
0078デフォルトの名無しさん
2010/10/18(月) 10:51:59マジックナンバーも本人が把握できてれば別にいいと思うけどなぁ。
0079デフォルトの名無しさん
2010/10/18(月) 12:08:28MSのガイドラインで非推奨だし、その使い方だと特にメモリの節約にもならないだろうし
ベースがintであることを前提にできたほうが扱いやすい
0080デフォルトの名無しさん
2010/10/18(月) 14:24:51なぜダメかと言うと、本人も把握できなくなるからだ
0081デフォルトの名無しさん
2010/10/18(月) 16:21:00state = 10; //ゲームオーバー画面へ
と書くんだったら(コメントくらいは書いてると信じる)
state = GameState.GameOver;
と書いた方が楽じゃん
0082デフォルトの名無しさん
2010/10/18(月) 18:31:280083デフォルトの名無しさん
2010/10/18(月) 19:16:080084デフォルトの名無しさん
2010/10/18(月) 23:49:57xna creators club(サンプルがおいてあったサイト)が
app hubというサイトに変わっているようなのですが、
目的のサンプルを見つけきれません。探し方を教えていただけないでしょうか?
educationのcontent catalogにサンプルがおいてあるのはわかったのですが、
カテゴリを絞る検索手段のみで文字列での検索手段がありません。
全文検索はあるのですが、フォーラムなどが引っかかってしまいます。
0085デフォルトの名無しさん
2010/10/19(火) 00:05:00書き込み少ないからさ。。。
0086デフォルトの名無しさん
2010/10/19(火) 07:08:540087デフォルトの名無しさん
2010/10/19(火) 08:19:450088デフォルトの名無しさん
2010/10/19(火) 12:18:24という意味なら、必要な時にContentManager.Loadを呼ぶだけ。
コンテンツパイプラインを通したくないなら、読み込む処理を自分で書く必要がある。
その場合ModelMeshは使えないと思うので自分でメッシュクラスとモデルクラス自作。
お勧めはできない。
0089デフォルトの名無しさん
2010/10/19(火) 12:38:03じゃあMMD作れないじゃんorz
0090デフォルトの名無しさん
2010/10/19(火) 12:41:130091デフォルトの名無しさん
2010/10/19(火) 14:26:550092デフォルトの名無しさん
2010/10/19(火) 14:41:380093デフォルトの名無しさん
2010/10/19(火) 14:42:51XNAのModelは使えないけど、どうせMMDの仕様に合わせて
そこらへんの自作は必要でしょ。たぶん君にはそれは無理だけど
MMD for XNAというのがあるらしいから試してみたら。
0094デフォルトの名無しさん
2010/10/19(火) 15:02:29プリミティブに描画するってことですね
0095デフォルトの名無しさん
2010/10/20(水) 17:08:36(時間:分:秒.ミリ秒7ケタ)ではなく、
(分:秒:ミリ秒2ケタ)で表示することは可能でしょうか?
0096デフォルトの名無しさん
2010/10/20(水) 18:05:01String.Format使うとか
0097デフォルトの名無しさん
2010/10/21(木) 12:51:43メタセコに球と立方体を置いたとすると
メッシュが2個ってことでしょうか?
0098デフォルトの名無しさん
2010/10/21(木) 14:29:02髪の毛を一部脱色して白くする奴居るだろ?
あのような単位だよ。
0099デフォルトの名無しさん
2010/10/21(木) 14:37:57なるほど。わかりません。
0100デフォルトの名無しさん
2010/10/21(木) 17:01:450101デフォルトの名無しさん
2010/10/22(金) 16:56:17ttp://www.microsoft.com/downloads/en/details.aspx?FamilyID=9ac86eca-206f-4274-97f2-ef6c8b1f478f
Microsoft XNA Game Studio 4.0 Language Pack (日本語)
ttp://www.microsoft.com/downloads/details.aspx?FamilyID=b3929d3b-3fe1-49dd-9cb1-c701b88d049d&displayLang=ja
Microsoft XNA Framework Redistributable 4.0
ttp://www.microsoft.com/downloads/en/details.aspx?FamilyID=a88c6dec-aeae-42cd-a108-d35c013c3b97
0102デフォルトの名無しさん
2010/10/22(金) 19:59:56360やWP7のCLRって2.0ベースだったはずだけどそこらへんはどうなってるんだろう
0103デフォルトの名無しさん
2010/10/22(金) 21:16:540104デフォルトの名無しさん
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.
0105デフォルトの名無しさん
2010/10/23(土) 02:53:55ドット絵の見下ろしアクションゲーの製作序盤なのですが、登場キャラを
増やすにしたがってUnloadしてメモリの空きを確保するようにしないと
重くてどうしようもなくなったりしてしまいますか?
ガベージコレクションという機能で自動的にメモリを最適化してくれる
という話もききましたが。
0106デフォルトの名無しさん
2010/10/23(土) 11:31:57コンテンツの管理はステージ単位くらいでいいと思います。そんなに心配する必要はありません。
0107デフォルトの名無しさん
2010/10/23(土) 18:11:30ありがとうございました。
メモリ管理のことも安心しました。
0108デフォルトの名無しさん
2010/10/24(日) 21:45:470109デフォルトの名無しさん
2010/10/24(日) 21:53:48処理落ちの原因なんてほとんど描画なんだからC#だろうと関係ないし
0110デフォルトの名無しさん
2010/10/24(日) 22:08:05PCゲームと違って、試作品を実機で動かしてみてガクガクなら確実に他の環境でも同じなんだから調整が簡単。
0111デフォルトの名無しさん
2010/10/26(火) 02:11:21もっと練り直すわ。
0112デフォルトの名無しさん
2010/10/26(火) 15:26:56今はspriteBatch.DrawStringで表示しています。
0113デフォルトの名無しさん
2010/10/26(火) 16:33:43String.Formatを使うことで(分:秒:ミリ秒)で表示することができました。
ただ、分と秒は2ケタで表示されるのですが、
ミリ秒のところだけ3ケタで表示されてしまいます。
0114デフォルトの名無しさん
2010/10/26(火) 18:41:320115デフォルトの名無しさん
2010/10/26(火) 21:09:47var 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
そんなもん使ってる参考書が悪い
0116デフォルトの名無しさん
2010/10/26(火) 21:30:50シコシコ作ってる奴は面倒くさくて移行しないし
作ってない奴は情報不足で玉砕するし
海外フォーラム読める奴は楽勝なのか?
0117デフォルトの名無しさん
2010/10/26(火) 21:32:400118デフォルトの名無しさん
2010/10/26(火) 21:39:22ついでに公式フォーラムで2.0を使ってる人がいて不思議なんだけど
0119デフォルトの名無しさん
2010/10/26(火) 21:40:170120デフォルトの名無しさん
2010/10/26(火) 21:51:54時間がかかるとバージョンアップする
バージョンアップして移行がスムーズに行く事は余りない
0121デフォルトの名無しさん
2010/10/26(火) 21:56:13↓
移行は当然の如く上手くいかない
↓
3.1に戻すにも.NETやらVSやら変ってて綺麗に戻らないんだろうな
↓
めんどくせーからこのまま行くか←いまここ
0122デフォルトの名無しさん
2010/10/27(水) 02:01:33今のままで、ちゃんと無難に製作すすんでるのに
変な不具合のリスク負いたくないし、それに見合ったメリットもないだろうと
0123デフォルトの名無しさん
2010/10/27(水) 03:48:21Xboxのゲーム作れるっていうのだけが動機だもの。
デザエモン、ツクールの次がXNAだっただけ。
0124デフォルトの名無しさん
2010/10/27(水) 12:33:42前バージョンけさなくていいし、いつでも戻せるし差分も取れる
0125デフォルトの名無しさん
2010/10/28(木) 15:21:21色々変更を余儀なくされそうで面倒だなぁ
0126デフォルトの名無しさん
2010/10/28(木) 16:59:25入門系の情報なんか殆ど死ぬし
0127デフォルトの名無しさん
2010/10/28(木) 19:27:53どうせ肝心のプログラムはかわらんのジャロ。
0128デフォルトの名無しさん
2010/10/28(木) 19:34:190129デフォルトの名無しさん
2010/10/28(木) 21:08:330130デフォルトの名無しさん
2010/10/29(金) 17:54:27↓
移行は当然の如く上手くいかない
↓
3.1に戻すにも.NETやらVSやら変ってて綺麗に戻らないんだろうな
↓
めんどくせーからこのまま行くか
↓
129「そんなの提出直前に4.0にコンバートすりゃいいんでそ。」
↓
めんどくせーからこのまま行くか←いまここ
0131デフォルトの名無しさん
2010/10/29(金) 18:02:52そのくせころころ仕様変わってVS入れ直し強制
Win版XNAとXbox版XNAに特化してもらったほうがまだマシ
極めつけはバージョンアップすると以前の機能が使えない?
アホかと
0132デフォルトの名無しさん
2010/10/29(金) 19:26:08おまえがアホ。
統合開発可能だからWin上とXbox上の両方で容易に動作確認ができるんじゃねぇか。
0133デフォルトの名無しさん
2010/10/29(金) 23:05:550134デフォルトの名無しさん
2010/10/30(土) 01:20:52統合優先で入門サイトやらなんやらに頻繁に出てくるような処理も平気で切り捨てるけど
0135デフォルトの名無しさん
2010/10/30(土) 21:24:25統合と称して「Windowsではvfetch使えないからXbox360からもvfetch削るか」と言っているようなものだ。
0136デフォルトの名無しさん
2010/10/30(土) 21:28:29「ここからここまで当たり判定の処理」みたいなのがわかりやすいように
バックに色つけて判断しやすくなったらステキじゃないか?
0137デフォルトの名無しさん
2010/10/30(土) 21:32:14DirectX11/SM5.0に対応してください
XNAは好きだし、.NETから今更戻りたくないし
いつまでWinとXboxで足の引っ張り合いしてんの?
あっちを立てればこっちが立たずみたいな
0138デフォルトの名無しさん
2010/10/30(土) 21:33:47プリミティブで描画
GameComponent作っとけば楽だよ
0139デフォルトの名無しさん
2010/10/30(土) 21:34:05regionじゃだめなのか?
0140デフォルトの名無しさん
2010/10/30(土) 21:44:08SlimDX使え
XNAなんかに期待するだけ無駄だぞ
0141デフォルトの名無しさん
2010/10/30(土) 21:46:550142デフォルトの名無しさん
2010/10/30(土) 21:48:2580〜400MSPでしか売れない
二重課税
vectorで1000円でPC版を売った方が金になるというインディーズゲームの現実(^w^)
0143デフォルトの名無しさん
2010/10/30(土) 21:49:270144デフォルトの名無しさん
2010/10/30(土) 21:52:06ゆとりワロタw
やる気がないだけだろ
調べろカス
0145デフォルトの名無しさん
2010/10/30(土) 21:53:460146デフォルトの名無しさん
2010/10/30(土) 21:59:00いまやレッドオーシャンにもほどがある。
0147デフォルトの名無しさん
2010/10/30(土) 22:11:03コンパクトだし、バージョンアップも容易
0148デフォルトの名無しさん
2010/10/30(土) 22:11:51正直に「できませーん」て言いなさい
0149デフォルトの名無しさん
2010/10/30(土) 22:14:11↓
移行は当然の如く上手くいかない
↓
3.1に戻すにも.NETやらVSやら変ってて綺麗に戻らないんだろうな
↓
めんどくせーからこのまま行くか
↓
129「そんなの提出直前に4.0にコンバートすりゃいいんでそ。」
↓
めんどくせーからこのまま行くか
↓
SlimDXに乗り換える
↓
何も考えずバージョンアップできる(゚д゚)ウマー
↓
氏ねよXNA←いまここ
0150デフォルトの名無しさん
2010/10/30(土) 22:15:290151デフォルトの名無しさん
2010/10/30(土) 22:18:040152デフォルトの名無しさん
2010/10/30(土) 22:56:26再生しようとしているのですがうまくいきません。
できればご教授いただけないでしょうか?
開発環境
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" にバインドされていますが、このボーンがスケルトンにありません。
とエラーが出てしまいました。
よろしくお願い致します。
0153デフォルトの名無しさん
2010/10/31(日) 00:57:15英語フォーラム読めない奴以外は3.1推奨
0154デフォルトの名無しさん
2010/10/31(日) 15:22:58〜XNA3.1を使って3Dアニメーション〜 - BIGLOBEなんでも相談室
http://soudan1.biglobe.ne.jp/qa6286305.html
おまえみたいなカスにはゲームなんか作れないから諦めろグズ
0155デフォルトの名無しさん
2010/10/31(日) 16:22:20たぶん3Dやってる時点で僕なんかより技術あるんで答えられぬ。
0156デフォルトの名無しさん
2010/11/01(月) 16:02:03ちと混乱するなw
0157デフォルトの名無しさん
2010/11/01(月) 18:46:060158デフォルトの名無しさん
2010/11/01(月) 19:29:24wP7にいたっては来年末までこなそうだし。
0159デフォルトの名無しさん
2010/11/01(月) 19:50:52できるなら海外での売り上げうpにつながるから(笑)とはいっとれん。
0160デフォルトの名無しさん
2010/11/01(月) 20:01:38>>159のようなゲームを作って売ったこともないワナビーがXNAを支えているのだなぁ
0161デフォルトの名無しさん
2010/11/01(月) 20:02:00でもMSのAppStoreを中心にPC、WP7はてんかいするかもしれないね。
360はやっぱ別市場になるのかな、わからんけど。
0162デフォルトの名無しさん
2010/11/01(月) 20:02:57ワナビ^2うぜーぞ、この素人が。
0163デフォルトの名無しさん
2010/11/01(月) 21:39:07XNAはそういう層にアッピルしたんだから当然さぁ
0164デフォルトの名無しさん
2010/11/01(月) 22:58:250165デフォルトの名無しさん
2010/11/02(火) 16:52:140166デフォルトの名無しさん
2010/11/02(火) 19:29:280167デフォルトの名無しさん
2010/11/03(水) 13:59:06詳しく
0168デフォルトの名無しさん
2010/11/03(水) 15:47:28Breath of Deathのことかと
英語だからプレイしにくいがとてもとてもドラクエっぽい
0169デフォルトの名無しさん
2010/11/05(金) 17:47:07「当たっても死なないが押し返される地形」を作りたいのですが
どのような方法があるでしょうか?
BoundingBoxで触れた方向をチェックすることはできないでしょうか?
0170デフォルトの名無しさん
2010/11/05(金) 17:57:32スーパーまりオクローンのソースでも眺めろ、
聞く前に調べろこのカスが!
0171デフォルトの名無しさん
2010/11/05(金) 19:19:500172デフォルトの名無しさん
2010/11/05(金) 22:54:320173デフォルトの名無しさん
2010/11/06(土) 10:52:040174デフォルトの名無しさん
2010/11/06(土) 18:07:55>>171
ブロック崩しに斜めヒットの判定をチェックするのがありました。
これの応用で左側にヒット状態=右に進めない(または移動させる)
上側にヒット=下に進めない(または移動させる)
のようにできる気がしてきました。
0175デフォルトの名無しさん
2010/11/06(土) 18:29:55既に触れるダメージをうける地形まで作ったところです。
でもFC版ドラえもん魔境編のように重なることができてしまうので
押し返しにトライしてます。
0176デフォルトの名無しさん
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();
}
0177デフォルトの名無しさん
2010/11/06(土) 23:57:29特定範囲の内部に入ったら
範囲の法線の向きに自機に力を加えればいいんじゃないの
0178デフォルトの名無しさん
2010/11/07(日) 23:57:15なるほど、そういう考え方もあるんですね。
計算式は難しそうですが成功すれば配置しやすそうです。
チャレンジしてみます。
0179デフォルトの名無しさん
2010/11/10(水) 03:50:35アルファ付PNGの透明部分が、しっかり抜けるときと、抜けない(背景色で塗りつぶし)ときがある
どうも、描画順番によるものだということがわかったのだが
3.1のきはこの辺考えなくてもよかったけど、4.0では距離順にソートしないと駄目とかになったの?
それとも、なんかオプション増えたの?
教えてください
0180デフォルトの名無しさん
2010/11/10(水) 16:33:070181デフォルトの名無しさん
2010/11/11(木) 11:03:30BoundingSphereのようにメッシュを利用出来れば簡単そうなのですが
BoundingBoxでメッシュを使う方法がわからなくて……
0182デフォルトの名無しさん
2010/11/14(日) 02:48:16グラフィック関係を扱っていると繰り返し出てくる
GraphicsDeviceクラスって何を表してるの?
グラフィックなデバイスだけら、グラボやグラフィックメモリのことかと思ったんだが
なんか違うような気がする。
イメージつかむのにアドバイスください
0183デフォルトの名無しさん
2010/11/14(日) 04:06:22解像度やアスペクト比の設定から2D/3Dグラフィック描画環境の構築まで
グラフィック関連の主軸となる要素を担うクラス、ってことでいいんだろうか・・・・・・
正直、ブラックボックスというか呪文みたいなものだから俺も詳細とか知らないで使ってるんだよね・・・・・・・
0184デフォルトの名無しさん
2010/11/15(月) 20:48:10回答サンクス
よくわからんけど使える、グラフィック関係の何かって認識程度で
今のところ支障がないっぽい
0185デフォルトの名無しさん
2010/11/17(水) 03:14:54ストレージ絡み微妙に変更とか、まじ勘弁して欲しいわ
0186デフォルトの名無しさん
2010/11/17(水) 04:36:30まだC#でオタオタしてるレベルだから逆にダメージ低そうなオイラ
0187デフォルトの名無しさん
2010/11/17(水) 06:16:05俺も移行完了。
Modelの頂点情報の仕様変更が面倒だった。
あと、PointSprite廃止とか。
これで、しばらくは移行しなくていいし、まったり。 (´ー`)y━~~
0188デフォルトの名無しさん
2010/11/17(水) 12:39:500189デフォルトの名無しさん
2010/11/17(水) 21:47:39私にはそのくらいしか答えてあげられません
0190デフォルトの名無しさん
2010/11/17(水) 23:07:38新規プロジェクトに
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)で呼んだら画面が紫色になりました。
バックグラウンドを勝手に塗りつぶしてほしくないのですが、どうしたらよいですか?
0191デフォルトの名無しさん
2010/11/18(木) 19:25:51それなりに日本で売れる気がする
0192デフォルトの名無しさん
2010/11/18(木) 19:38:550193デフォルトの名無しさん
2010/11/18(木) 19:45:37やるなら「おでかけダンジョン」みたいなやつだろうな。
プログラムはそこそこめんどうくさそうだ。
0194デフォルトの名無しさん
2010/11/18(木) 20:25:500195デフォルトの名無しさん
2010/11/19(金) 00:13:19WindowsPhone7 用に何か作るの?
でなければ XP でも 4.0 いけるけど
0196190
2010/11/19(金) 04:47:23GraphicsDevice.SetRenderTarget()はDrawで呼ぶんじゃなくて
Updateで呼ぶのか・・・・
0197デフォルトの名無しさん
2010/11/19(金) 09:41:44自己解決しても解決策おいていってくれる人って好きよ(はぁと)
0198デフォルトの名無しさん
2010/11/19(金) 12:13:15平面や四角形はBoundingBoxを使って自分でサイズ指定する以外に当たり判定を作る手段はないのでしょうか?
0199デフォルトの名無しさん
2010/11/21(日) 15:50:230200デフォルトの名無しさん
2010/11/21(日) 20:14:340201デフォルトの名無しさん
2010/11/21(日) 20:30:18この為だけにクリエイターズクラブとやらに登録するわ
MSXで投稿してた頃を思い出すぜ
0202デフォルトの名無しさん
2010/11/21(日) 21:19:15モーション作成とかに使えれば面白そうだなーと思う
0203デフォルトの名無しさん
2010/11/21(日) 21:33:17せめてネットにアクセスできればいいんだけど。
0204デフォルトの名無しさん
2010/11/21(日) 22:04:21・XBOX360インディーズゲーム
・XNA GS入れてないWindows(対象はVista以降)
の両方で動くアプリを作っているんですが、後者はGuideが使えなかったような…
0205デフォルトの名無しさん
2010/11/22(月) 03:08:55企業なみに技術力ないXNA初心者で扱えるシロモノなんじゃろか。
できるならすごい興味あるんだけどね。
0206デフォルトの名無しさん
2010/11/22(月) 03:15:31Windows版のXNAでも使えるのを期待してみたいw
0207デフォルトの名無しさん
2010/11/22(月) 21:11:080208デフォルトの名無しさん
2010/11/22(月) 21:58:42USB対応ならPS3で使える?
0209デフォルトの名無しさん
2010/11/22(月) 22:30:46含みをこめて言ってるのか、それとも質問なのか
0210デフォルトの名無しさん
2010/11/22(月) 23:50:56後者はたまによくいるくらいだろ
0211デフォルトの名無しさん
2010/11/24(水) 01:15:11ストリップで4頂点で四角形を描画しています。
その4頂点を それぞれずらすと、ポリゴンの繋ぎ目 真ん中に / のような感じでテクスチャが歪んでしまいます。
歪ませないようにはどうすればいいでしょうか?
XNA 3.1 で BasicEffect を使用している為、シェーダーを使わないで解決する方法を探してます。
どこかいいサイトなどありましたら是非教えてください。
よろしくお願いします。
0212デフォルトの名無しさん
2010/11/24(水) 21:55:20今、3Dフィールドの当たり判定で四苦八苦してるんだけど
この動画見ると、エリア(黄色線で囲った範囲)ごとに一つずつ単純にBoundingBoxで作ってるのかな?
結局、XNAで地面の凹凸を表現するにはこの方法しかないのかな?
メッシュ使って凹凸に合わせて当たり判定自動生成〜、なんて便利な機能は無し?
0213デフォルトの名無しさん
2010/11/25(木) 00:51:43なんか勘違いしてないかな AABB って書いてあるよ
凸凹表現ではなくこの箱はポリゴンごとの詳細チェックを枝刈するものだよ?
で レイピックみたいなのはなかったと思うな
そんなんあったらいいけどね
0214デフォルトの名無しさん
2010/11/25(木) 10:29:18私はランドスケープによる当たり判定してます。
ほとんどの人がこの方法じゃないかな?
1.当たり判定用の地面を三角ポリゴンのみで作る。
2.Model(4.0ならMeshPart)から頂点データを取り出す。
3.調べたい場所のXとZ座標から、全ての三角形の内包判定。
4.当たっていたら、そのポリゴンとの交差する高さも計算する。
その高さにキャラを移動させれば、地面の凹凸に合わせて移動させられる。
当たっていなかったら、行き止まりにする。
私は内包判定とかは、自前で計算してますが....。
XNAのRayとかで、ライブラリを使って判定することもできるはず。
0215デフォルトの名無しさん
2010/11/25(木) 19:14:39自分の知らない用語が山ほど・・・・・・
今までBounding〜を使うことしか頭にありませんでしたw
ええと、まずは頂点データを取り出す方法と内包判定の計算方法から調べてみます。ありがとうございました!
0216デフォルトの名無しさん
2010/11/25(木) 20:34:160217デフォルトの名無しさん
2010/11/25(木) 23:51:030218デフォルトの名無しさん
2010/11/26(金) 00:01:40エースコンバットみたいなゲームならランドスケープが楽チンだね。
>>215
AABB はXYZの軸に沿ったBoundingBoxのことだよ 軸に沿うから回転しないのね。
で、そのモデルを内包するようにオフラインで最大最小頂点求めて作るんだ。
だから槍とか、しなった刀とか斜めってる細長いのは、ロスがデカイんだ。
そこで、OBBってのがあってね…って言ってると限がないので、ググればすぐ見つかるよ。
内包はXNAにあるからそれ使えばいいと思うよ。
問題なのはきっとレイ(直線)だね。
表裏判定も決めなきゃいけないし、貫通したときにヒットしたポリゴンで最も手前を取って交点を求めたり、
内包されてて交点がない場合とか、結構メンドクサイよ。
DirectXだと、それをやってくれるレイピックって関数があるんだ。
XNAにはないんだよねー。
だ…誰かテクスチャの歪みの対処方法教えてくれないかなァ…
0219214
2010/11/26(金) 08:05:50AABBとOBBか....。(初めて聞く言葉です。)
ランドスケープと回転してない直方体(球)ぐらいしか当たり判定を
してこなかったから、大変参考になります。
0220デフォルトの名無しさん
2010/11/29(月) 00:00:40http://hibari.2ch.net/test/read.cgi/tech/1290795733/
0221デフォルトの名無しさん
2010/11/29(月) 10:28:48誰か地形の当たり判定を実装する為の良いサンプルソースとか解説サイト知りませんか?
0222デフォルトの名無しさん
2010/11/29(月) 11:39:470223デフォルトの名無しさん
2010/11/29(月) 19:53:22これ使ってみた奴いないの?
ttp://ameblo.jp/junk-f/day-20100403.html
俺はなんかやってることが理解できなくて不気味だから使えないけど、できるんかよこんなので…?
次回以降の説明とか見てもマジ意味不明。こんなことしなくちゃならんの?
0224デフォルトの名無しさん
2010/11/29(月) 21:07:300225デフォルトの名無しさん
2010/11/30(火) 00:09:510226デフォルトの名無しさん
2010/12/01(水) 10:18:571.キャラクターの眼前にRayを飛ばす
2.Rayとマップモデルの三角ポリゴンとの衝突判定
3.衝突したら三角ポリゴンの高さを調べる
4.高さが一定値以下だったら段差、一定値以上だったら壁として移動処理
と、いう処理をマップモデルと衝突判定を取る方法として思いついたんですが
2と3をどう処理すれば良いのかがわかりませんorz
0227デフォルトの名無しさん
2010/12/01(水) 19:08:28まあ、箱と球以外の当たり判定は俺もさっぱりなんですがねw
レイと三角ポリゴンの交差判定はちょこちょこ挑戦してるんだけど
VertexBuffer型とIndexBuffer型にモデルメッシュからデータ取得したところで止まってるなぁ・・・・
個人的には基本EASYなXNAの中ではかなり難易度の高い処理なんじゃないかと思ってたりするんだけど
サンプルソースや解説サイトをほとんど見かけないってことは、単に俺がノータリンなだけなんだろうかw
0228デフォルトの名無しさん
2010/12/01(水) 20:08:30一面を三角ポリゴン2つで構成した四角形ってことですスイマセン
0229デフォルトの名無しさん
2010/12/02(木) 04:32:01>サンプルソースや解説サイトをほとんど見かけない
まず殆どマップ衝突判定のソースはないだろうね
うちはSlimDXのRay/Triのコリジョン使って2〜3日程でマップ移動の壁・床システムを自力で作った
もちろん、XNAにも流用できると思うけど
Ray/Triでは距離(distance)を取得できるからこれを利用するのいいのかな
0230214
2010/12/02(木) 05:39:46ランドスケープなら、真下にRayを飛ばせばできます。
ランドスケープと内包判定などで検索するといくつか情報出てくるみたいですが、
私が作ったときより情報が減ったような?
内積を使って判定します。
壁の高さが必要ないなら、みつからなかったら壁にしたほうが速度が速くなると思います。
>>227
当たり判定は、表示モデルとは別にローポリで作った方がいいと思います。
私の場合は1200ポリゴンのコリジョンモデルを使っています。
(エリア分けするので、けっこうハイポリな巨大なマップでもいける。ポリゴン密度が同じならコストは変わらない。)
エリア毎に最初に分けるので、速度のコスト0(メモリに負担がかかる。4MByte程度)で、12ポリゴン程度にまず絞り込みます。
そこから、12ポリゴンを総当りです。
XBOX360のシングルコアの60フレで1フレーム50〜60箇所、30フレで120箇所程度の当たり判定ができています。
(背景表示、15程度のスキンモデルも同時に表示している。)
マルチスレッドにすればもっといけそうですが、試していません。
GCのF-ZERO-Xは、50台のマシンが60フレで動いてたけどどうやって当たり判定とってたんだろう?気になる。
XBOX360と比べたらかなり速度が厳しいと思うのだが。
0232214
2010/12/02(木) 06:26:34かなり大きめのマップ、地形とスキンモデルのシャドウ表示(セルフもあり)、
また地形とスキンモデルにノーマルマップを使用しているので、
1フレーム当たりの地形判定は、2倍程度の速度が出せるはずです。
実験はしてませんが....。
速度は参考程度で。
0233281
2010/12/02(木) 22:30:42レスサンクス。
通常マップの上に衝突判定用マップ重ねて>>226っぽい処理すればいいのかな?
VertexBufferとIndexBuffer抜き出して内積計算するんだと思うんだが、中身がNULLで使い方がわからないという・・・
取り出し方って「VertexBuffer VertexBuffer = Model.Meshes[0].VertexBuffer;」で合ってる?
0234デフォルトの名無しさん
2010/12/03(金) 02:04:43レイで平面上に投影しても同じかな
ここでいうランドスケープは モデリングされた地形のことなのかな?
僕はハイトマップとかで作るものを想像しちゃうなランドスケープは
通常のマップってのがよくわからないけど描画モデルのことなら そういうことだと思う
描画モデルはハイポリ 当たり判定モデルはローポリだと思う
そもそも当たり用は見えないし ポリゴンたくさんあったら探すのに時間かかるだけだもんね
精巧に判定が必要なら しょうがないけど 作るもの次第かな
0235214
2010/12/03(金) 05:31:13foreach (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
モデリングされた地形のことをランドスケープと思って話していました。
どっちが一般的なのかはよくわからないです。
0238214
2010/12/03(金) 06:32:32いや、mesh_part使ってるのか。
でも、mesh.MeshParts[0]でアクセスしてるし....。
適当に調整してください。
0239デフォルトの名無しさん
2010/12/07(火) 01:18:26GCのF-ZERO-Xは知らんけどね
厳しいのなら50台あっても全部判定してないんじゃないかなぁ
プレイヤの見える範囲だけとか そもそも球体でやってるんじゃないかな
簡単で早いでしょ sqrt 使わなきゃ
地形のことかな? 僕なら当たり判定という処理はしないな
やるなら動ける範囲内かどうかのチェックをすると思うな
プレイヤが居る床は最初に決まってるわけだから おのずとそれに隣接する床もわかるからね
すると当たりようのポリゴンを探す必要がないと思うんだ
後は法線で面の上に乗ってるかだけ見ればいいんじゃないかな?
0240デフォルトの名無しさん
2010/12/08(水) 23:10:02Collidable Model
ttp://www.theomader.com/public/collidable_model.html
0241デフォルトの名無しさん
2010/12/11(土) 13:34:21とりあえずRenderTarget2Dを使う方法を考え付いて試したんだけど
1フレームに複数回呼ぶと、FPSがすごい勢いで下がるので使えんかったよ。
1回だと問題ない(FPS60)のに、2回だと急にFPSが10以下とかになるんだよな。
で、別の切り口とかあったら教えてほしいのだけど、よろしくお願いします。
0242デフォルトの名無しさん
2010/12/11(土) 13:40:460243デフォルトの名無しさん
2010/12/16(木) 06:52:00実装する(エフェクトも含め画面全部の更新を数フレームストップ)場合は
どのように処理するのが一般的でしょうか?
0244デフォルトの名無しさん
2010/12/16(木) 10:04:46fxファイルを編集していますが、
コメントアウトや、予約後などが色分けされません。
単なるテキストエディタのようになっており非常に見にくいです。
どうすれば、色分けされるのでしょうか?
0245デフォルトの名無しさん
2010/12/16(木) 11:31:52開発止まっちゃったんかな、サイト消える前の開発状況見てかなり期待してたんだけど
0246デフォルトの名無しさん
2010/12/16(木) 12:56:23その間動かさなきゃいいだけだろ
描画や更新を止める必要はない
0247デフォルトの名無しさん
2010/12/16(木) 17:55:08expressは無理だった気がする
0248デフォルトの名無しさん
2010/12/16(木) 20:48:09キーワード強調表示ができるテキストエディタ使えば?
本格的にやるならFX ComposerやRenderMonkey使うし
需要がないんでしょ
0249デフォルトの名無しさん
2010/12/18(土) 17:30:341d-b9a9-47901e81b22b
>アニメーション情報はコンテントパイプライン上で常に60fpsに再サンプリングされ、
同時にフレーム間の補間も行っています。
これが本当に行われているかわからん。
Metasequoiaとkeynoteプラグインの組み合わせで作った Xファイルは
DirectXSDK付属のDirectX Viewerで正常に補完されるが、SkinningSampleでは
keynote上のキーフレームしかでない。
自宅環境では、正しいファイルが作れないので、Xファイルのフォーマットに
不足があるかをハッキリさせたい。
最悪、ソフトを変えるなり、DXUTを参考に補完とかするのかな?
0250デフォルトの名無しさん
2010/12/18(土) 23:42:37ありがとうございます。
独自に時間を加算していたメソッド外に全処理を一時的に飛ばすことで
解決しました。
0251デフォルトの名無しさん
2010/12/19(日) 00:28:24ステージ1のメソッド{時間計測変数int timeStage1++}
ヒットストップ用のメソッド{int hitStop++}
みたいなそれぞれの状態の時間を保持する変数を1フレームごと増加させて
でヒット状態のときヒットストップ用のメソッドにとばしてhitStop変数が
4になったらステージ1のメソッドに戻す、という。初心者考えだから
スマートじゃないと思いますが、ポーズでメニュー開くのもだいたいこんな
感じですよね、きっと。
0252デフォルトの名無しさん
2010/12/19(日) 09:59:35現在2Dのシューティングを作っているのですが、教えて欲しいことがあります。
2Dの画像の回転なのですが、どういう風にやればいいでしょうか。
大元になるものは学校で教師が作ったもので、一通りやりたいことはできるものらしいのですが、
質問した際には、public class Sprite(別のクラス内)というところにある
public void SetDestAngle(Vector2 center, float angle)
{
origin = center;
rotation = MathHelper.ToRadians(angle);
}
という記述を回転させたい画像に組み込め、という風に言われたのですが、
どこに追加すればいいかよくわからなくてうまくいってません。
プログラム云々に関する知識が足りないと思っているので、しっかりと説明できているかわかりませんが、
どうかよろしくお願いします。
0253デフォルトの名無しさん
2010/12/19(日) 10:29:21もう回転させた画像用意しろよ
0254デフォルトの名無しさん
2010/12/19(日) 10:39:050255デフォルトの名無しさん
2010/12/19(日) 10:59:32すみません、自力でできました。
スレ汚し失礼しました。
0256デフォルトの名無しさん
2010/12/19(日) 14:14:53自己解決オメ。
0257デフォルトの名無しさん
2010/12/19(日) 15:57:010258デフォルトの名無しさん
2010/12/20(月) 12:18:34いかにもDirectXらしい悪いところを真似してる感じ
0259デフォルトの名無しさん
2010/12/20(月) 12:19:08げいつ
0260デフォルトの名無しさん
2010/12/20(月) 16:12:110261デフォルトの名無しさん
2010/12/20(月) 18:52:530262デフォルトの名無しさん
2010/12/20(月) 21:44:06とか言って楽しんでたのに4.0の野郎・・・
DrawIndexedPrimitiveややこしいわかんね氏ね
ラーニングんとこのサンプルは低脳でもわかるようシンプルにして頂きたい
0263デフォルトの名無しさん
2010/12/21(火) 01:41:50俺は XNAのガチガチのスプライトがなぁ…
テクスチャと座標の4頂点自由に設定したくなったら 正射影で頂点バッファとかポリゴン描画になって一気にメンドくさくなる
たぶんこれ だいたい作る羽目になると思うけどな
それをみんながやらなくていいように用意したのがライブラリだと思うんだがなぁ
嫌なら使うな とか言ってるとますます過疎っちゃうな
タダなんだけどな… 最近はUDKとかがゲーム作るには楽そうだなぁ
0264デフォルトの名無しさん
2010/12/21(火) 02:03:10俺はもうVS1.1で解決させちゃったなそれw
なんなら、ここに貼ってやろうか?
0265デフォルトの名無しさん
2010/12/21(火) 02:27:41みんな使うなら
0266デフォルトの名無しさん
2010/12/21(火) 03:02:43ここに同じ主旨のshaderあるぞ
//Move to screen space.
Out.ScreenPos.x = (In.ObjectPos.x - halfScreenWidth) / halfScreenWidth;
Out.ScreenPos.y = (In.ObjectPos.y - halfScreenHeight) / halfScreenHeight;
0267デフォルトの名無しさん
2010/12/21(火) 12:13:59ありがとう! やっぱシェーダー使うんだね
オイラは BasicEffect 使ってたよ
機能的にも特別なことする必要なかったからなぁ
screenPos -= 0.5f;
float2 result = screenPos.xy / ScreenSize.xy * 2 - 1;
*2 はハーフサイズになっちゃうから2倍にしてるんだろうけど
0.5 と -1 はなんだろう?
-0.5 は正規化座標系のセンタリング?
>>266
ここで言うスクリーンポジションは正規化空間なのか
だから >>265 のも正規化しちゃうんだね
0268デフォルトの名無しさん
2010/12/21(火) 12:43:51vertexの座標を同じ式で弄れば行けハズ。試した事ないが
>>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)ずれるから必要。
これは公式にも無いかもしれない。
0269268
2010/12/21(火) 12:54:48上下反転する 266
上下反転しない 265
0270デフォルトの名無しさん
2010/12/22(水) 00:26:29ドットずれかぁ
どおりで 0.5減算でセンタリングだとすると 正規化前に減算してるから座標系が合わないからおかしいなぁと思ってたんだ
ピクセルのレンダリング中心が0.5にあるってのは なんかで聞いたか見たことあるな
バイリニアの巻き込みのやつだったっけかな なんかで見たよ
で -1 で減算してるのが -1 〜 1 のセンタリングなんだね
なるほどなるほど
やっと把握できた 丁寧に説明してくれて ホントありがとう!
サラっとわかるように僕はもっと勉強しないとな
0271デフォルトの名無しさん
2010/12/24(金) 17:01:52BoundingBoxを使えば当たっているかの判定ができるところまで調べたのですが、
当たっている方向を調べるにはどうすればいいのでしょうか、例えばマリオの?ブロックとか
当たる方向によって乗ったりぶつかったりコインが出たりしますよね、あんなのがやりたいんですが。
とりあえず考えたのは、6面全部別のBoundingBoxを使う方法ですが、
6倍当たり判定をやるのはさすがにまずそうなので
何かいい方法があったらお願いします
0272デフォルトの名無しさん
2010/12/24(金) 18:03:07移動してるほうの進行ベクトルじゃダメなの?
0273デフォルトの名無しさん
2010/12/24(金) 18:57:51斜め上にジャンプしてる時とか
下にも横にもぶつかりうりますよね?
0274デフォルトの名無しさん
2010/12/24(金) 19:12:25え? ん?
だから進行ベクトルなんだけど?
なんか言葉の勘違いかもしれないので…
最終的には移動方向の進行ベクトルは1本のベクトルになるよ?
0275デフォルトの名無しさん
2010/12/24(金) 19:25:06>最終的には移動方向の進行ベクトルは1本のベクトルになるよ?
移動方向への進行ベクトルってのは>>273でいう斜めってのとは別ものですか?
0276デフォルトの名無しさん
2010/12/24(金) 19:27:53> ?んーわかんないです。
もうこの人には何言っても無理な予感w
0277デフォルトの名無しさん
2010/12/24(金) 19:29:000278デフォルトの名無しさん
2010/12/24(金) 19:30:200279デフォルトの名無しさん
2010/12/24(金) 19:58:23俺もあんま詳しくないけど、
X方向への食い込みが大きければ横から、Y方向への食い込みが大きければ下から
ってことにするんじゃなかったっけ?
0280デフォルトの名無しさん
2010/12/24(金) 20:08:480281デフォルトの名無しさん
2010/12/24(金) 23:28:49基本的に どちらか または 両方 が動いているからぶつかるんであって
動いていないと ぶつかることはないんだよ?
動くってことは進行方向があるってことでしょ?
もし最初から重なってるなら それはただ進行方向ゼロのベクトルってだけじゃない
>>275 「ベクトル」という定義そのもの自体を調べてみてよ きっとわかると思うよ
AABBは ただ内包する軸に沿った箱だから形状が大雑把になっただけでしょ?
方向とは関係ないと思うんだけどな
0282デフォルトの名無しさん
2010/12/24(金) 23:39:50□→◆
マリオが例に出てるんだから普通のバウンディングボックスなんじゃないかなぁ
マリオの例だと斜めは移動方向だけど、
上に大きく右にちょっとジャンプしたからといって下からぶつかるとは限らない
なので衝突時の際の各ボックスの中心間のベクトルを考えればいいんじゃないかな
移動は離散的だからこれで完全じゃない(例:移動が超高速)けど
その辺の細かい所はわからないや
0283デフォルトの名無しさん
2010/12/24(金) 23:50:12AABBが軸に沿ったバウンディングボックス。XNAのBoundingBox構造体はAABB。
衝突した面を求めるなら中心間のベクトルじゃダメだよ。
■のどの面に□が衝突したかを中心間のベクトルの方向で調べるとすると、
□□
■
は上側に衝突してるけど
□□□□□□□□□□□□□□
■
は右側になっちゃう
0284デフォルトの名無しさん
2010/12/24(金) 23:53:38けど、AABBとかどこで使うか解らないや
教えてえろいひと
0285デフォルトの名無しさん
2010/12/24(金) 23:55:01難しいな衝突判定わ
0286デフォルトの名無しさん
2010/12/25(土) 00:00:39>□→◆
これって AABBじゃないと思うんだけどな…
ちょっと逆に教えて欲しいんですが
AABB で線と点の衝突ってどういうことだろう?
ま 線でも点でもどっちでもいいけど 内包すれば
ただの長方形だから 考え方に変わりはないと思うんだ
でもオイラの認識違いかもしれないから是非 教えて欲しいな
>移動は離散的だからこれで完全じゃない(例:移動が超高速)
これだけど超高速でも 単に過去の位置と今現在の位置の差分でOKだと思うけどなぁ ダメ?
0287デフォルトの名無しさん
2010/12/25(土) 00:01:48進行方向が分かってもどの面に衝突するかはわかんないだろ
0288デフォルトの名無しさん
2010/12/25(土) 00:03:440289デフォルトの名無しさん
2010/12/25(土) 00:04:46AABBはただのバウンディングボックスのことだと思う
OBBは面積が小さくなるように、オブジェクトごとの軸を適切に置き換えたやつ
こっちは計算はなんか難しげ
0291デフォルトの名無しさん
2010/12/25(土) 00:08:14進行方向に移動しているわけだから AABB だとむしろわかるんじゃない?
ひょっとして45度の完全斜めを貫くベクトルの場合 どの「面」とあたるかのこと言ってるのかな?
0292デフォルトの名無しさん
2010/12/25(土) 00:14:47どの面に当たるかは進行方向と重なったときの位置関係の両方の情報がないと分からん
0293デフォルトの名無しさん
2010/12/25(土) 00:23:56たとえば右上の進行方向ベクトルとした場合
片方の箱に右上の頂点が 相手側に内包されてるAABBなわけだから
・上面が衝突したことにするか
・右面が衝突したことにするか
は 先にどっちを調べるかで結果が変わるから実装依存だよ
これについては 正解はなく どっちにするかはお好きな方でOKじゃない?
0294デフォルトの名無しさん
2010/12/25(土) 00:30:11右にあたるか上にあたるかは位置関係がわからないと無理、って話じゃないの
0295デフォルトの名無しさん
2010/12/25(土) 00:30:47斜め45度ってのは速度のベクトルのことか?
だとしたら斜め45度で箱の上に着地したら側面にぶつかるか箱の上に乗るかは実装依存なのか?
それとも頂点と頂点がぴったしぶつかる感じの事を言ってるのか?
0296デフォルトの名無しさん
2010/12/25(土) 00:31:590297デフォルトの名無しさん
2010/12/25(土) 00:32:360298デフォルトの名無しさん
2010/12/25(土) 00:33:310299デフォルトの名無しさん
2010/12/25(土) 00:42:56>>295
>だとしたら斜め45度で箱の上に着地したら側面にぶつかるか箱の上に乗るかは実装依存なのか?
そうだね 実装次第だと思うよ
頂点同士がぴったりぶつかる話じゃないよ
着地ということだから右下45度の速度ベクトルとする
AABBは ちょうど正方形を考えて欲しい
*----*
l A l
l *-+--*
*--+-* l
l B l
*----*
これを見て右下の速度ベクトルである場合 どっちの面に衝突していると言える?
Aのチェック時に右の面を先に見る場合は そこで打ち切ら右面にヒットとなる
が 下面を先にチェックするとした面にヒットしたことになる
つまり どっちもヒットしている45の場合は 答えが出せない
だから好きなように実装依存だと言ってるんだよ?
0300デフォルトの名無しさん
2010/12/25(土) 00:51:45正方形の角同士が同じだけ互いに内包する図のつもりなんだ
0301デフォルトの名無しさん
2010/12/25(土) 00:53:29l A l
l *-+--*
*--+-* l
l B l
*----*
0302デフォルトの名無しさん
2010/12/25(土) 00:57:34そういう意味なら実装依存だろうね
0303デフォルトの名無しさん
2010/12/25(土) 08:50:420304デフォルトの名無しさん
2010/12/25(土) 11:51:06まぁ 往々にしてそういうレアケースがバグとなっちゃうんだけどさ
でも普段は進行ベクトルと衝突処理でマリオのは実装できる
ただ方向を処理する際にどっちが優先されるか または両方あたりにするかは実装次第ってこと
0305デフォルトの名無しさん
2010/12/25(土) 21:47:43IsFixedTimeStep = true; と書いただけでCPU負荷が100%になって、
フレームレートも54〜55辺りになるんですが、誰か原因わかりますか?
ちなみにfalseに設定するとCPU負荷は0〜1%で安定して60FPS出ます。
以下環境。
CPU: Core i3 540 / GPU: オンチップのやつ / RAM: 4GB
Windows7 64bit / XNA 3.1
0306デフォルトの名無しさん
2010/12/25(土) 21:53:09ディスプレイのリフレッシュレートは60ある?
その数字でFPSは頭打ちになるよ。
IsFixedTimeStep = trueだとね。
0307デフォルトの名無しさん
2010/12/25(土) 23:06:44リフレッシュレートは59Hzでした。
ググってみたらこんな記事出てきたがさっぱり。
http://forums.create.msdn.com/forums/p/42632/279792.aspx
0308デフォルトの名無しさん
2010/12/26(日) 10:23:06ttp://blogs.msdn.com/b/ito/archive/2010/12/23/metasequoia-and-xna-part-4.aspx
0309306
2010/12/26(日) 11:10:04ごめん、ナナメ読みしてたw
SynchronizeWithVerticalRetrace = true
のつもりで言ってた。
結局、>>305の原因は分からなくてゴメン。
0311デフォルトの名無しさん
2010/12/30(木) 21:40:00for (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ポリゴンはないだろって思うのだが
この描き方だともんだいあるのか?
0312デフォルトの名無しさん
2010/12/30(木) 22:52:21あと1ポリゴンを1000回と1000ポリゴンを1回では全然違う。
0313デフォルトの名無しさん
2010/12/30(木) 23:18:59ハテナから頭の悪そうな子供のエントリを持ってきて
荒らすのは辞めなさい
0314311
2010/12/31(金) 05:14:41テクスチャを貼った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ポリゴンぐらい平気で書いてるので
書き方で回避できるもんだいじゃないかな?と考えてる。
0315デフォルトの名無しさん
2010/12/31(金) 07:46:19画面スクロール時に50回ぐらいnewとディスポーズしてる
とにかく書いてるような事は
ねーよ
0316311
2010/12/31(金) 08:25:59確かに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個の配列が入ってる
0317デフォルトの名無しさん
2010/12/31(金) 13:20:310318デフォルトの名無しさん
2010/12/31(金) 14:27:03今必要なら使えばいい
所詮DirectXのラッパーなんだから他の環境に移行したとしても無駄にはならん
0319デフォルトの名無しさん
2010/12/31(金) 15:06:17DrawPrimitivesとpass.Begin(end)は重い処理なので、
1000回もやれば、当然重たくなる。
→DrawPrimitivesはできるだけ少なく。
pass.Begin(end)もできるだけまとめて、変更回数を少なくする。
>>316
3頂点しか用意してないということは、1000回同じ場所にポリゴンを描画してるわけですよね?
つまり、Zテストがまったく機能しない状態。
ポリゴンの描画サイズはどのぐらいですか?
フィルレートが足りなくて処理落ちしてるのでは?
→Z値(優先順位)を個別に設定して、手前から描画する。
この辺を気をつければ、そこそこの速度が出るはず。
初心者なので、見当はずれなこといってたらごめん。
0320デフォルトの名無しさん
2010/12/31(金) 15:18:26近い将来、Kinect対応するみたいですね。
私の予想(希望)では、
XBOX360の次世代機にも対応するんではないかと思ってます。
GS6.0とかになってそうですが。
0321311
2010/12/31(金) 17:13:22乱数で頂点を生成してDrawUserPrimitives使って描画する方法では
DrawUserIndexedPrimitivesで3頂点を繰り返し書く方法とは違い
1000ポリゴンでフレームレートが落ちることが無く表示できることがわかりました。
この方法なら8000ポリゴンぐらいまで書くだけなら書けるみたい。
確認に、3頂点を繰り返し格納したものをDrawUserPrimitivesで表示すると
やはり1000ポリゴンぐらいから重たくなってきた。
ってことは、重複した頂点(またはポリゴン)の処理が非常に重たいという結論で良いんだろうか?
0322デフォルトの名無しさん
2010/12/31(金) 17:28:430323319
2010/12/31(金) 18:14:27頂点が重複すること自体は、頂点が減るのでバーテックスシェーダー的にはよい事です。
(メモリと速度面で。)
ただ今回の場合は、完全に一致したポリゴンなので、Zテストがうまく機能しなくなるので、
重たくなるということです。
ポリゴン自体が重なる(完全に同じ座標ではない)ことは、Zテストが有効になるので、
速度面で有利になります。
また同一座標のポリゴン表示は、乱数で決めたときと違って、カリングできないので、
速度面で不利です。(通常、カリングすればポリゴン数は約半分になる。)
0324311
2011/01/01(土) 15:26:26乱数で作った頂点なら、VertexBufferを使ったほうが少しだけ早くなった
1フレームあたりで8000→9000ポリゴンになったぐらい
同一ポリゴンの描画と変わらず。
>>323
完全一致はまずいということで、理解しました。
言われてみれば、カリングしてるのですから実際に描画されてるポリゴンは半分の
4000ポリゴンぐらいになるわけか
これで、作成方針がだいたい見えてきました、ありがとうございます。
立方体を1個づつ描画するのではなく、描画するためのバッファを作り
そこに溜め込んでから描画することにします。
しかし、バッファを毎フレーム更新するとなると、こんどはCPU負荷との戦いになりそう
0325デフォルトの名無しさん
2011/01/04(火) 16:25:13うぜえええ
デフォルトの設定をReachにするにはどうしたらいいんですかね
0326デフォルトの名無しさん
2011/01/05(水) 15:50:00このサンプルデータの自機の弾の出し方がわかる方、
教えて頂ければ助かります。
0327デフォルトの名無しさん
2011/01/05(水) 16:10:230328デフォルトの名無しさん
2011/01/05(水) 16:18:530329デフォルトの名無しさん
2011/01/05(水) 16:24:03「このサンプルを弾が撃てるように改造してください」
という意味なんだろうけど、
こんな書き方する奴に日本語で説明して通じると思う者はいない。
0330326
2011/01/05(水) 16:35:49あなたたちは黙っていればいいんです。
このサンプルを改造して、弾を出るようにした人が
どうしたかを教えてくれればいいのです。
私がこんなにしたいだから、2chでも少しはいるハズです。
0331デフォルトの名無しさん
2011/01/05(水) 16:38:300332デフォルトの名無しさん
2011/01/05(水) 17:10:040333デフォルトの名無しさん
2011/01/05(水) 17:25:15弾の実装をしようしましたが、うまいこといきません。
0334デフォルトの名無しさん
2011/01/05(水) 18:57:25とりあえず簡単な実装方法書いとこう。
まず、弾のクラスをつくる。
んで、Update で
プレイヤーがボタン押したら玉を出す。(List<弾> tamas にいれる。)
Draw では弾があったら描画したらいいので
foreach (var tama in tamas)
DrawTama(tama);
といった感じになるだろ。
DrawTama は自分で弾のモデル作るか、ポイントスプライトって言うのをやるかのどっちかだろう。
簡単なのは、そのサンプルの飛行機のモデルを小さくして、それを弾として使えばいい。カミカゼカミカゼ
あとは、ステージの外に出た弾を削除するだけ。
0335デフォルトの名無しさん
2011/01/05(水) 19:13:290336デフォルトの名無しさん
2011/01/05(水) 19:22:470337デフォルトの名無しさん
2011/01/05(水) 19:27:09C#もゲーム製作の基礎もわからないのにXNAなんかに手を出すのが間違ってる
0338デフォルトの名無しさん
2011/01/05(水) 19:29:30確かに。
ここで聞くよりも公式のフォーラムとかで聞いた方が良いね
0339デフォルトの名無しさん
2011/01/05(水) 19:33:270340デフォルトの名無しさん
2011/01/05(水) 19:35:02何故かゲームの作り方を知らない初心者が簡単にゲームが作れると勘違いしてるのがなあ
0341デフォルトの名無しさん
2011/01/05(水) 19:42:40「もっと具体的にお願いします」としか答えられないよ…
まずどこまで言葉が通じるのか分からん
tama.Position += tama.Velocity * dt; の意味が分からないレベルなのか
それともそういうのは分かってて弾の描画が分からないのか
0342デフォルトの名無しさん
2011/01/05(水) 20:11:22そういうのはわかってて基本的な構文は覚えたけど、
DirectXは触った事ありませんとか射影変換とか初耳な人はXNA向いてますか?
0343デフォルトの名無しさん
2011/01/05(水) 20:13:45向き不向きなどは心配すべきことではありません。
やるかやらないか。
本当は分かっているはずです。
0344デフォルトの名無しさん
2011/01/05(水) 22:25:15マイクロソフトってWEB開発経験無い奴しか居ないんじゃねーか?
0345デフォルトの名無しさん
2011/01/05(水) 22:30:040346デフォルトの名無しさん
2011/01/05(水) 23:10:070347デフォルトの名無しさん
2011/01/06(木) 01:10:39nearclip=1.0f
farclip=10000.0f
でも消えちゃうんだけだけど、どうしたら良いんですかね
0348デフォルトの名無しさん
2011/01/07(金) 07:39:56また、XNAの欠点を補える方法ってある?
欠点1.ポーティング: XNAtouch、SilverSPrite、ExEn(計画段階)くらい?
欠点2・GUIでの対話的開発: これは…なんかいいのない?
0349デフォルトの名無しさん
2011/01/07(金) 08:08:00あと、unityの方をあんまり詳しく知らないのでなんとも。
0350デフォルトの名無しさん
2011/01/08(土) 15:01:46裏面だけ描画してない?
0351デフォルトの名無しさん
2011/01/08(土) 21:13:30その件に関してはスプライトバッチ描画後に、
毎回Zバッファをデフォルト設定したらなんとか正常に
1000離れると消えちゃうのは、
フィールド変数で保持してるはずだった数値をローカルで宣言してたからで、
それも解消しました
が、今度は一部モデルでテクスチャが正常に表示できないんです
正直BasicEffectも良くわかってなくて何がおかしいのか
ttp://files.or.tl/up3776.png
0352デフォルトの名無しさん
2011/01/09(日) 08:34:43何使ってるのかようわからんけど
1つのモデルに複数のマテリアルがある場合にうまくいってないとかじゃね?
0353デフォルトの名無しさん
2011/01/11(火) 09:53:490354デフォルトの名無しさん
2011/01/11(火) 20:55:04ドットの境界をクッキリと表示させるにはどうすればいいですか?
spriteBatch.GraphicsDevice.SamplerStates[0].MagFilter = TextureFilter.Point;
spriteBatch.GraphicsDevice.RenderState.MultiSampleAntiAlias = false;
GraphicsDeviceManager.PreferMultiSampling = false;
辺りは試してみたのですが、全滅でした。
0355デフォルトの名無しさん
2011/01/12(水) 00:40:46SpriteBatchは使わないので、はっきり分からないけど、
GraphicsDevice.SamplerStates[0] = SamplerState.PointWrap;
はどう?
もしくはシェーダー内で上書きしてるとか?
0356デフォルトの名無しさん
2011/01/12(水) 09:08:35ご存じないでしょうか。形式はFBXでもLWOでも3DSでもなんでもいいんですが。
0357デフォルトの名無しさん
2011/01/12(水) 09:23:25このサンプルの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 が見つかりません。」というエラーが出てしまいます……
0358デフォルトの名無しさん
2011/01/12(水) 16:50:43クラス作るのはめんどいのでUpdateだけをデリゲートで渡す方法とかありあせんか?
0359デフォルトの名無しさん
2011/01/12(水) 17:10:30こんなのを予めつくっといて、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);
}
}
0360デフォルトの名無しさん
2011/01/12(水) 17:34:05だめぽいですね
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です。
0361デフォルトの名無しさん
2011/01/12(水) 18:26:47ありがとうございます。
やっぱ、デフォルトではないんですね。
使わせてもらいます
0362デフォルトの名無しさん
2011/01/20(木) 23:26:20(網羅的な内容の本)
を探してます。
英語でも構わないので教えてください。
0363デフォルトの名無しさん
2011/01/21(金) 11:32:34MSDN
0364デフォルトの名無しさん
2011/01/21(金) 21:37:370365デフォルトの名無しさん
2011/01/21(金) 21:44:32落とした財布はPorter
メカゴジラVSモスドン
の三本です
0366デフォルトの名無しさん
2011/01/21(金) 21:52:450367デフォルトの名無しさん
2011/01/21(金) 23:56:04があるじゃん
0368デフォルトの名無しさん
2011/01/22(土) 07:45:54ゆとりみたいで怖ぇーんだよ
0369デフォルトの名無しさん
2011/01/22(土) 13:27:040370デフォルトの名無しさん
2011/01/22(土) 15:49:040371デフォルトの名無しさん
2011/01/28(金) 14:41:46BGM/SE再生専用のクラスを用意して、音関連は全てその中で処理したいんですがContent.Loadが使えなくて……
0372デフォルトの名無しさん
2011/01/28(金) 21:00:30public void LoadContent(ContentManager contentManager) { ここで読み込む }
}
class MyGame : Game {
private AudioPlayer audioPlayer;
protected override void LoadContent() { audioPlayer.LoadContent(ContentManager); }
}
こんな感じで
0373デフォルトの名無しさん
2011/01/30(日) 03:54:250374デフォルトの名無しさん
2011/01/30(日) 17:33:40DirectXよりXNAの方がいいのかな?
0375デフォルトの名無しさん
2011/01/30(日) 17:40:010376デフォルトの名無しさん
2011/01/30(日) 18:59:430377デフォルトの名無しさん
2011/01/31(月) 03:34:55だが、開発者の負担はぐっと下がると思う。IntelliSense きくし、おおよそのフレームワークが整ってる。
まあ、C++ or DirectX が不快に感じるなら XNA 選ぶといいと思う。
0378デフォルトの名無しさん
2011/01/31(月) 09:49:04特に配るつもりもなく初心者が軽く楽しんでみるなら言語違うがGLScene
C#使いたいならXNA
本気でやるならC++でDirectX
がいいんじゃないかね
0379デフォルトの名無しさん
2011/01/31(月) 10:38:56C++,DirectXよりはずっと使いやすいけど勉強するときの難易度自体は大差ないと思う
0380デフォルトの名無しさん
2011/02/01(火) 17:58:350381デフォルトの名無しさん
2011/02/02(水) 13:51:280382デフォルトの名無しさん
2011/02/02(水) 15:24:13異常に使いやすい完璧なIDE
0383デフォルトの名無しさん
2011/02/02(水) 16:40:43コンパイルが遅いのとデザイナが微妙かなって以外は正統進化のように感じてる
0384デフォルトの名無しさん
2011/02/02(水) 18:23:540385デフォルトの名無しさん
2011/02/02(水) 18:25:43使ったことないけど爆速っていうし
0386デフォルトの名無しさん
2011/02/02(水) 19:09:39でも、C#ってぶっちゃけ常時バックグラウンドでコンパイルし続けてるからなぁ。
WPFみたいなXAMLからのコード生成後に改めてコンパイルしてるもの以外はコンパイル時間ほとんど感じないはずだけど。
0387デフォルトの名無しさん
2011/02/02(水) 19:14:410388デフォルトの名無しさん
2011/02/02(水) 19:43:47xaml->bamlへコンパイルするでしょ
コードビハインドでもa.g.cs/a.g.i.cs/a.g.vb/a.g.i.vbみたいなの出来るし
重いから、俺はデザイナは普段OFFにしてる
0389デフォルトの名無しさん
2011/02/02(水) 19:47:26デザイナが生成するコードは、リソースからXAML(BAML)を読み込んで
C#のフィールドにコントロールの参照を代入してるだけ
0390デフォルトの名無しさん
2011/02/02(水) 22:02:58英語でもかまわないんですが。
0391デフォルトの名無しさん
2011/02/02(水) 22:17:510392デフォルトの名無しさん
2011/02/02(水) 22:19:270393デフォルトの名無しさん
2011/02/02(水) 22:26:34角度を付けて坂のようなオブジェクトを作りたいんですが・・・
0394デフォルトの名無しさん
2011/02/02(水) 22:30:39いや、XAMLからの生成物はBAMLとC#/VBコード。
生成されたコードの方にはInitializeComponentメソッドとかが定義されてる。
0395デフォルトの名無しさん
2011/02/03(木) 09:21:53WEBなら@ITの記事とか未確認飛行CのC#のコーナーがいい感じだと思った。
0396デフォルトの名無しさん
2011/02/03(木) 12:07:47ソースコードはどんな風に記述すればいいのでしょうか?
0397デフォルトの名無しさん
2011/02/03(木) 13:13:39bool old;
bool posedge;
bool negedge;
void update()
{
bool now = (key.Buttons.A == ButtonState.Pressed)? 1 : 0;
old = now;
}
}
0398デフォルトの名無しさん
2011/02/03(木) 13:17:35{
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;
}
}
みたいにトリガーを作る?
0399デフォルトの名無しさん
2011/02/03(木) 14:14:09public 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の入力クラスを触らないようにすると便利
コードはあくまでイメージね
0400デフォルトの名無しさん
2011/02/03(木) 14:39:070401デフォルトの名無しさん
2011/02/03(木) 16:07:070402デフォルトの名無しさん
2011/02/03(木) 21:42:030403デフォルトの名無しさん
2011/02/06(日) 15:36:17VC#Expressで、デバッグ時に、
ブレークポイント一覧ウィンドウは
表示されてますか?
どうしても出てこないんです。
よろしくお願いします
0404デフォルトの名無しさん
2011/02/06(日) 15:44:11で な い の ね
ttp://msdn.microsoft.com/ja-jp/library/02ckd1z7.aspx
0405デフォルトの名無しさん
2011/02/06(日) 17:48:450406デフォルトの名無しさん
2011/02/11(金) 21:43:35モデルが動画の裏に隠れちゃって画面に表示されない。文字は普通に描画できるのに・・・・・・
動画に3Dモデルを重ねて描画する方法を教えてくれないか?
0407406
2011/02/11(金) 21:49:10書き込んだ直後に自己解決してしまった。
モデル描画処理の中に動画再生処理入れとけばいいのなw
0408デフォルトの名無しさん
2011/02/13(日) 14:36:37キャラクターの向いている方向と傾く方向を合わせるにはどうすれば良いでしょうか?
Matrix.CreateRotationX(UpRoatation)だと軸に沿った方向にしか傾かせられないし・・・・・・
0409デフォルトの名無しさん
2011/02/13(日) 15:36:370410デフォルトの名無しさん
2011/02/13(日) 17:28:541個1個確認するのみ?
0411デフォルトの名無しさん
2011/02/13(日) 19:00:24助かりました、ありがとうございます
0412デフォルトの名無しさん
2011/02/14(月) 01:49:19そう
でも効率悪いので、
独自の入力管理を作って、
必要な情報は1フレームに1回だけ
取得するようにして、
ゲーム中は管理後の変数だけを
調べるようにしたほうがいい。
0413デフォルトの名無しさん
2011/02/14(月) 03:41:13・新しく押された
・連打
0414デフォルトの名無しさん
2011/02/14(月) 08:36:210415デフォルトの名無しさん
2011/02/14(月) 09:54:490416デフォルトの名無しさん
2011/02/14(月) 12:55:190417デフォルトの名無しさん
2011/02/14(月) 12:59:27そして>>415よw おまいのその返しはなんだw
なんかしらんがツボったw
0418デフォルトの名無しさん
2011/02/14(月) 13:43:500419デフォルトの名無しさん
2011/02/14(月) 14:11:33Game使ってる場合も同じじゃないかな。
0420デフォルトの名無しさん
2011/02/19(土) 00:11:25単純にPC配布だけなら内容がエロでも大丈夫ですかね?
教えてエロい人
0421デフォルトの名無しさん
2011/02/19(土) 00:17:430422デフォルトの名無しさん
2011/02/19(土) 00:27:120423デフォルトの名無しさん
2011/02/19(土) 12:29:27確認用のダイアログを使うと開発環境入れないと動かなかったり
0424デフォルトの名無しさん
2011/02/20(日) 17:57:40.970425デフォルトの名無しさん
2011/02/20(日) 18:09:57.550426デフォルトの名無しさん
2011/02/25(金) 16:11:57.36メインループでレンダリングしてる最中に、
サブスレッドを立ててそこからテクスチャやらモデル等のGraphicsDeviceが必要なオブジェクトの生成をしても問題ないのかな?
多分問題なく動いてはいるけど参考資料がなくて正しい動作なのか判らない。
0427デフォルトの名無しさん
2011/02/25(金) 20:50:53.58スレッドってあのスレッド?
擬似タスク(笑)じゃなくて?
だったらスレッド1つ呼ぶたびに1ms使うからぶっちゃけ超遅いでしょ?
俺の知識が足りないだけならスマンコ
0428デフォルトの名無しさん
2011/02/26(土) 13:51:11.320429デフォルトの名無しさん
2011/02/26(土) 14:11:32.500430デフォルトの名無しさん
2011/02/26(土) 18:29:20.26XNA Game Studio 4.0のスタンドアロン版
0431デフォルトの名無しさん
2011/02/26(土) 19:27:05.870432デフォルトの名無しさん
2011/02/26(土) 19:32:59.240433デフォルトの名無しさん
2011/02/28(月) 09:23:00.25なんで擬似タスクなんか出てくるのかと思ったけどもしかして360版のSystem.Threading.ThreadってWindows版と違うのかね。
私が聞きたいのはWindows版のGraphicsDeviceがスレッドセーフなのかって事だったんだけど、
Texture,VertexBuffer,IndexBufferみたいなGraphicsDeviceをコンストラクタ引数に取るオブジェクトをバックグラウンドで生成したいんですよ。
0434デフォルトの名無しさん
2011/02/28(月) 12:24:43.07そんなに面倒な事じゃないから、試してみては?
0435426
2011/02/28(月) 15:14:20.64ただWindows版でのグラフィックスリソースの非同期生成について言及された記事が見つからなかったので、
妥当な実装なのか聞きたかった次第です。
0436デフォルトの名無しさん
2011/02/28(月) 22:47:43.800437デフォルトの名無しさん
2011/03/03(木) 22:58:22.59じゃあ、いいんじゃね?
ただ、スレッドはウィンドウズ的に1ms使うから処理重たくなったら覚悟じゃないですか
いーんなら別にいいです
0438デフォルトの名無しさん
2011/03/04(金) 09:01:09.62箱庭ゲーとかでロード画面挟まずにロードするにはスレッド使うしかないじゃん?
他に何か有効な手段でもあるの?
0439デフォルトの名無しさん
2011/03/04(金) 10:15:53.38まあ非同期I/O使ってコードがぐちゃぐちゃするよりはスレッドを使う方が
コードの見通しは良くなっていいけど。
0440デフォルトの名無しさん
2011/03/04(金) 10:57:38.07Updateのところでロード処理を進める
0441デフォルトの名無しさん
2011/03/04(金) 11:36:42.98それにStreamの非同期IOはデリゲートのBeginInvoke使ってるからどの道スレッドじゃないの
0442デフォルトの名無しさん
2011/03/31(木) 14:43:25.30ModelProcessorなら出力型はModelみたいな。
0443デフォルトの名無しさん
2011/04/03(日) 06:00:23.19どういった方法がメジャーなんだろうか?
思いついたのが、描画を行うテクスチャをいちど別画面に全て書き出して
このときにアルファ合成で弾痕がついたテクスチャを作成する
そのご、実際のテクスチャとして割り当てるって方式なんだが
他になんかいい方法とかないかな?
0444デフォルトの名無しさん
2011/04/04(月) 09:26:55.930445デフォルトの名無しさん
2011/04/17(日) 00:23:36.95Game.Components.Add()されたときに呼ばれるのかなと
思ってたが、ブレークかけても全く引っかからないし。
MSDN見たらGame.Initialize()されたときに呼ばれるとか……
ということは、後からGameComponentクラスがAddされたときは
Initializeは明示的に呼ばないと絶対に呼ばれない、ってことなのかな?
0446デフォルトの名無しさん
2011/04/17(日) 12:31:16.720447デフォルトの名無しさん
2011/04/23(土) 14:11:39.460448デフォルトの名無しさん
2011/04/29(金) 13:40:49.30一緒に仕事をしたいのはこういうタイプ
0449デフォルトの名無しさん
2011/04/29(金) 13:42:50.300450デフォルトの名無しさん
2011/05/01(日) 15:17:13.82以下のような問題に悩まされています。
もしよろしければ、どなたかご助言を頂けませんでしょうか。
�@問題:
「異なるクラスのオブジェクト間で、深度バッファが上手く効かない」
�A今扱っているコードについて:
私の手元にあったコードをビルドして実行すると、「立方体状の3次元空間が表示され、その中を5つの球体クラスのオブジェクトが跳ね回る様子」をユーザは見ることができます。
このコードを改造して、立方体状の空間の中央に、三角錐クラスのオブジェクトを配置しました。
この改造後のコードをビルドして実行すると、「立方体状の空間の中央に三角錐のオブジェクトがそびえ立ち、その周囲を球体のオブジェクトが飛び回る様子」をユーザは見ることができます。
�B現在の見え方:
しかし、深度バッファが上手く効いていないのか、三角錐オブジェクトが、他のオブジェクトよりも常に手前側に表示されてしまいます。
5つの球体間では、深度バッファは有効なように見えます。しかし、各球体と三角錐間では、深度バッファは無効なように見えます。
拙い文章ですみません。
どうぞよろしくお願いします。
0451デフォルトの名無しさん
2011/05/01(日) 15:57:49.27深度バッファへの書き込みがうまくいってないか、
深度テストがうまくいってないか....。
もしかすると、Z値の計算がうまくいっていないのかもしれないし....。
文章だけで判断するのは限界があります。
それほど大きくないプロジェクトなら、
プロジェクト一式をアップしてみるのはどうでしょう?
原因を調査できるかもしれません。
0452デフォルトの名無しさん
2011/05/01(日) 16:46:12.41ありがとうございます。
プロジェクト一式は、以下からダウンロードできます。
http://www.dotup.org/uploda/www.dotup.org1589990.zip.html
passは"depth"です
よろしくお願いします
0453451
2011/05/01(日) 17:09:47.28ダウンロードしてみたところ、
デバッグ用クラス一式とPlayerクラスがないようです。
ソースを見てみたのですが、
spriteBatch()を使用されてますね。
これを使うと、3Dのレンダリングステートをいじるので問題が出てきます。
いったんspriteBatch()をはずすか、
3D関係の描画前に、
ZテストやZライトを明示的にONする命令を入れていみてください。
0454451
2011/05/01(日) 17:22:07.30ごめんなさい。
XBOX360でビルドした為だったようです。
Windowsではちゃんと動きました。
これからデバッグしてみます。
0455451
2011/05/01(日) 17:34:24.48viewマトリックスとprojectionマトリックスが、
球体と三角錐とで違うことが問題です。
player.Draw(cameraPosition, cameraTarget, cameraVector);
を削除して、
player.Draw(view, projection);
で、球体と同じviewとprojectionマトリックスを渡すようにしてください。
Playerクラスには、
viewとprojectionを受け取れるDraw()メソッドを追加して適切に変更してください。
こちらの環境では、前後関係がちゃんと描画できるようになりました。
0456451
2011/05/01(日) 17:39:54.22aspectRatio, 1.0f, 1000.0f);
を
aspectRatio, 0.01f, 100.0f);
として、
球体のprojectionと完全に同じすることで、直ることも確認しました。
ただ、>>455のように、明示的に同じviewとprojectionを使うように
したほうが、プログラムとしてはいいですね。
0457デフォルトの名無しさん
2011/05/01(日) 17:56:04.66ありがとうございます。返信が遅くてすみません
>viewマトリックスとprojectionマトリックスが、球体と三角錐とで違うことが問題です。
>球体のprojectionと完全に同じすることで、直ることも確認しました。
2種類の解決方法の間で共通しているのは、球体と三角錐間のprojectionの共有のように見えます。
これはつまり、projectionが各オブジェクト間で共有されていることが重要であると認識して良いのでしょうか?
それとも、viewの共有も重要と考えるべきでしょうか?
--------------------------------------------------
どうも、私は基礎的な知識がかなり足りないようです。
もっと勉強しなければいけませんね。
ご助言ありがとうございます。
0458451
2011/05/01(日) 18:03:18.64projectionを共通化することが重要です。
そうしないと、Zバッファに書き込まれる値の意味が変わってくるからです。
またviewマトリックスも共通にすべきです。(今回の場合は同じ値が入っているようですが。)
同じカメラを使っているという意味で。
がんばってくださいませ。
0459デフォルトの名無しさん
2011/05/01(日) 18:04:13.63Player.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日程悩んでいたので、大変助かりました。
誠にありがとうございました。
0460デフォルトの名無しさん
2011/05/01(日) 18:04:55.01精進します…
0461萌主(元株主w) 忍法帖【Lv=40,xxxPT】 【東電 78.0 %】
2011/05/01(日) 18:06:44.42私も初心者なのでよくわからないですが、
物体をみるカメラは1つなので、
そのカメラへの値(viewとprojection)は1つにするべきなんだと思います。
0464451
2011/05/01(日) 18:18:04.83現在、「Rushing Punch<ラッシングパンチ>」というゲームを
ピアレビューに出したのですが、まだ目立たない位置にある
ためか、レビューしてもらえません。
あと2週間ぐらいして、上の方の方が消えてくるとレビューして
いただけると思うのですが...。
もしお時間いただけるようなら、ピアレビューしていただけると
幸いです。
微妙にスレ違い申し訳ないです。
0465デフォルトの名無しさん
2011/05/01(日) 18:18:06.05なるほど。なんとなくわかってきました
「使うカメラはいつもひとつ!」ですね
0466デフォルトの名無しさん
2011/05/01(日) 18:19:20.14興味あります。みてみますね
0467451
2011/05/01(日) 18:19:52.30そういうことになります。
また画面を2分割や4分割にして、
3Dの対戦ゲームなどを作るときは
カメラが2つや4つになるので、
その数分のviewとprojectionのセットを作ることになります。
0468デフォルトの名無しさん
2011/05/02(月) 13:21:05.11させてください。
複数の変換行列を結合したいとき、単純に掛けるだけでいいんでしょうか?
それとも、SRTに分解してそれぞれの要素を結合させて変換行列に
するのがただしいのでしょうか?
0469デフォルトの名無しさん
2011/05/02(月) 13:40:26.63最終的に変換が適用される時に
v'=A*B*C*v
のように使われるなら、T=A*B*Cとしておいて
v'=T*v
もちろんこうしても構わない
0470デフォルトの名無しさん
2011/05/06(金) 11:00:27.95勝手に変換はしてくれるんだけどさ・・・
なんとなく
0471デフォルトの名無しさん
2011/05/06(金) 11:52:40.550472470
2011/05/06(金) 17:24:04.32ラーニングで絞ってサンプルを探してたんで
Performance Measuring Sample
をいろいろいじってみます〜
0473デフォルトの名無しさん
2011/05/07(土) 23:27:41.28あれって基本的に全部同じインスタンスなのかな?
EffectやTexture2Dに設定されたGraphicsDeviceは
使われることはないでおk?
0474デフォルトの名無しさん
2011/05/08(日) 13:26:00.190475uy
2011/05/15(日) 01:58:13.940476デフォルトの名無しさん
2011/05/17(火) 18:56:24.960477デフォルトの名無しさん
2011/05/18(水) 14:01:18.43昭和のシステムかw
0478デフォルトの名無しさん
2011/05/19(木) 09:07:43.320479デフォルトの名無しさん
2011/05/19(木) 19:52:41.64どういった方法でやるのがよいでしょうか?
0480デフォルトの名無しさん
2011/05/20(金) 06:29:13.26LoadContent()の中でforで一括配置するんではなく
一旦static変数に格納して逐次そこから受け渡しするとかそういうこと?
staticクラスじゃなくてもクラス名を引数にして渡すことも出来るみたいだけど
まだ初心者だからよく判らん
0481デフォルトの名無しさん
2011/05/20(金) 09:38:23.57var 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みたいなレベルでレスするのは相手に悪いんでないの。
0482デフォルトの名無しさん
2011/05/20(金) 11:04:37.93そうやって中身をコピーするのかなるほど。
0483デフォルトの名無しさん
2011/05/20(金) 12:11:51.71ありがとうございます。そういうことです。ただ、それだと、
4byte/pixelのやつしか対応できなくて例外のでるテクスチャがありました。
テクスチャをレンダリングターゲットとして書きこむというのが
常套手段のようですが、マルチスレッドで複製しようとすると
メインループの描画処理とバッティングしてしまうので
今イチ使い勝手が悪くて。何が最善なのかなと書き込んだ次第です。
0484デフォルトの名無しさん
2011/05/20(金) 12:23:14.30例外出るのはtexture1.TextureFormatでswitchして、
new byte[texture1.Width * texture1.Height * 4];
の4を変更すればいいはず。
別のターゲットにレンダリングするって言うと複製と言うよりは複写って感じがするな。
0485デフォルトの名無しさん
2011/05/20(金) 12:45:50.17ありがとうございます。おっしゃるとおりです。
switchするのが最善かもしれません。ただ、TextureFormatがやたらと
たくさんあるのと私がそれらのバイト数の区別できないのが問題だw
0486デフォルトの名無しさん
2011/05/20(金) 13:13:37.700487デフォルトの名無しさん
2011/05/20(金) 19:45:16.950488デフォルトの名無しさん
2011/05/21(土) 13:55:14.860489デフォルトの名無しさん
2011/05/21(土) 14:46:54.25XMLなんだから好きに読み込めよ。
0490デフォルトの名無しさん
2011/05/21(土) 15:39:25.190491デフォルトの名無しさん
2011/05/21(土) 15:50:57.230492デフォルトの名無しさん
2011/05/21(土) 17:52:05.02で自分で聞いて自分で説明
0493デフォルトの名無しさん
2011/05/21(土) 18:12:09.98colladaの物理はエンジンに依存しないのでは?
0494デフォルトの名無しさん
2011/05/21(土) 18:16:43.09わかったようなわからんようなw
とりあえずトンスル
0495デフォルトの名無しさん
2011/05/21(土) 22:16:40.000496デフォルトの名無しさん
2011/05/21(土) 22:23:29.980497デフォルトの名無しさん
2011/05/23(月) 08:57:34.950498デフォルトの名無しさん
2011/05/23(月) 14:06:22.890499デフォルトの名無しさん
2011/05/23(月) 19:29:02.340500デフォルトの名無しさん
2011/05/23(月) 22:40:51.850501デフォルトの名無しさん
2011/05/24(火) 20:02:58.10<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。
0502デフォルトの名無しさん
2011/05/24(火) 23:33:36.57プロジェクトの開始に
360あるいはWindowsを選べば
もうそれはXNAで、C#も書けるしDirectxも書けるってことでいいんですか?
素人過ぎる質問してスイマセン
0503デフォルトの名無しさん
2011/05/24(火) 23:39:36.660504デフォルトの名無しさん
2011/05/25(水) 00:17:09.67C# とDirectX同列に並べんなw
XNA = 内部的にDirectXを使ってて、C# で書けるゲーム開発フレームワーク
パフォーマンスチューニングの必要はあるものの、ほぼX箱360とWindowsのクロス開発可能
Game Studio 4.0入れたら出て来るプロジェクトテンプレートはXNAのもの。
0505デフォルトの名無しさん
2011/05/25(水) 08:10:51.130506デフォルトの名無しさん
2011/05/25(水) 09:07:51.920507デフォルトの名無しさん
2011/05/25(水) 10:00:52.600508デフォルトの名無しさん
2011/05/25(水) 15:05:37.49ロードと違ってセーブはユーザーストレージを使わなきゃだめ?
0509デフォルトの名無しさん
2011/05/25(水) 19:27:06.80Webで手に入るサンプルなんかはGS3.0ベースで4.0じゃ使えない関数?でてくるし
0510デフォルトの名無しさん
2011/05/25(水) 22:00:19.04xmlファイルにマップを書いて読み込みたいんですが、
例えば
00000
01010
00000
01010
みたいにそれぞれ改行混じると文字コードの関係で不都合ありそうだし
きれいなやり方ってないですか?
0511デフォルトの名無しさん
2011/05/25(水) 22:06:03.85char[] trimchar = new char[] { '\n'};
String[] map = str.Split(trimchar);
for(int i = 0; i < 30; i++){
map[i] = map[i].Replace(" ", "");
}
適当に書いたらこんな感じになりました\(^q^)/
0512デフォルトの名無しさん
2011/05/27(金) 21:22:15.60いいんじゃないの?
そういえば俺はASのhitTestみたいな機能が無いかどうか知りたかったんだった
Flashではブラシで図形描いてそれをムービークリップにし、
任意の座標とhitTestしてマップ作ったけど
XNAではそういうの出来ないのかね
0513デフォルトの名無しさん
2011/05/28(土) 10:07:40.920514デフォルトの名無しさん
2011/05/28(土) 11:00:12.550515デフォルトの名無しさん
2011/05/28(土) 13:42:52.38↓にFoods[]を付け足したい時、xmlファイルにはどう書けばいいの?
namespace MyDataTypes
{
public class PetData
{
public string Name;
public string Species;
public float Weight;
public int Age;
public int[] Foods;
}
}
0516デフォルトの名無しさん
2011/05/28(土) 17:20:50.77馬鹿杉。
悪いことは言わないから、もう少し学習力をつけないと、この先マジでどうにもならんぞ?
0517デフォルトの名無しさん
2011/05/28(土) 17:29:47.82namespace 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>
で動くよ
0518デフォルトの名無しさん
2011/05/28(土) 17:36:26.00馬鹿乙
0519デフォルトの名無しさん
2011/05/28(土) 17:39:54.810520デフォルトの名無しさん
2011/05/28(土) 19:09:03.25第三者だけど
C#内で配列に1行で1度に代入するみたいなことを
XMLでは出来ないの?
0521デフォルトの名無しさん
2011/05/29(日) 18:14:42.830522デフォルトの名無しさん
2011/05/29(日) 18:47:12.010523デフォルトの名無しさん
2011/05/29(日) 18:50:40.340524デフォルトの名無しさん
2011/05/29(日) 20:09:39.650525デフォルトの名無しさん
2011/05/31(火) 11:05:31.830526デフォルトの名無しさん
2011/05/31(火) 14:36:21.40麻雀で役(ターツ)が重複(衝突)するのは
リャンペーコー or 七トイツ
三連コー or 順子*3
亜両面 でのタンキ or 両面 (符が変わるのと、平和が付くか付かないか)
の3種類でよいでしょうか?
0527デフォルトの名無しさん
2011/05/31(火) 22:14:50.800528デフォルトの名無しさん
2011/06/02(木) 18:54:04.120529デフォルトの名無しさん
2011/06/02(木) 19:17:00.190530デフォルトの名無しさん
2011/06/02(木) 20:11:21.410531デフォルトの名無しさん
2011/06/07(火) 18:50:45.870532デフォルトの名無しさん
2011/06/07(火) 21:50:46.65当たりじゃね?
0533デフォルトの名無しさん
2011/06/12(日) 11:25:40.96どう使い分けるの?
0534デフォルトの名無しさん
2011/06/13(月) 17:41:58.310535デフォルトの名無しさん
2011/06/16(木) 22:26:06.17全部のインスタンスが自分専用の画像をロードして保持しちゃうの?
0536デフォルトの名無しさん
2011/06/21(火) 05:28:22.120537デフォルトの名無しさん
2011/06/23(木) 01:08:12.13記憶が間違ってなければContentManagerが同じリソースの多重ロードを抑制するようになってるはず
0538デフォルトの名無しさん
2011/06/23(木) 09:47:41.99Androidアプリを作る気がしない、こっち楽すぎて
0539デフォルトの名無しさん
2011/06/23(木) 13:03:18.600540デフォルトの名無しさん
2011/06/23(木) 21:23:20.49DrawRectangle(x,y,height,width,color)
みたいなメソッドがあったら教えてくれ
0541デフォルトの名無しさん
2011/06/24(金) 09:04:00.360542デフォルトの名無しさん
2011/06/24(金) 09:28:28.894.0以降もこのやり方で高速化ってできるのか?
確か非推奨みたいな感じじゃなかったっけ?
0543デフォルトの名無しさん
2011/06/24(金) 13:38:22.830544デフォルトの名無しさん
2011/06/26(日) 00:22:42.61亀レスwww
ありがとう
0545デフォルトの名無しさん
2011/06/29(水) 01:39:13.80x86開発に詳しい知人が、XNAは専用コントローラ(XBOX360のやつ)しか使えないからオワコンだお言っていた
時代はC++とDirectXだとのこと。
0546デフォルトの名無しさん
2011/06/29(水) 01:50:33.21そのコントローラーの問題から。
日本だと箱の出荷台数的問題で、Xboxインディーズゲームもあんまり流行ってないし。
もっぱら、WP7 開発用。
Silverlight 5で、Xnaのかなり基礎的な部分だけだけど、3D描画にXNA互換のAPI使えるようになるから、
ブラウザー向け3Dアプリでは使えるかも。
0547デフォルトの名無しさん
2011/06/29(水) 09:06:26.10でもMDXで360コンにアクセスすると、左右のトリガーで合わせて一本の軸として検出されるんだよなあ
XNAではどういう風に軸を分離してるんだろう
0548デフォルトの名無しさん
2011/06/29(水) 09:34:10.280549デフォルトの名無しさん
2011/06/29(水) 09:56:50.620550デフォルトの名無しさん
2011/06/29(水) 15:08:03.780551デフォルトの名無しさん
2011/06/29(水) 15:24:07.15俺もDirectXマスターしたい
0552デフォルトの名無しさん
2011/06/29(水) 17:59:33.39どうやってそれを処理して描画させればいいんだ?
draw(string moziretu){
for(int i = 0; i < moziretu.length ; i++)
{
int tempchar = i番目の文字 - '0'
tempchar の値ごとにdrawRectangle 調整して描画だよん
}
}
こんな感じか?
0553デフォルトの名無しさん
2011/06/29(水) 20:20:10.16XBIG市場で一山当てるなんて幻想は今すぐ捨てたほうがいい。
円高だし、二重課税されるし、80、240、400という意味不明な価格設定の縛り。
タグとかストレージのお作法を全部自前でやらなきゃいけないし
ピアレビューというコミュニティという名のめんどくさいシステム。
Xbox360でゲーム開発すること自体が好きで趣味でやるならいいけど、開発費とか考えるなら全然割に合わない。
多くのXBIG開発者はそれに気付いているはずだ。
よほど面白いゲームを作らないとこの市場では一山当てられない。それも誰もが購入に至るようなとても面白いゲーム。しかもインディーズゲーム。
上手い絵師に頼んでエロCG集を1000円で販売するほうが、XBIGでの売上の十倍は売れる。
それこそ全レスする暇があるならバイトでもサラリーマンプログラマでもやってたほうがいい。主よ。この市場は最初から腐ってる。
0554天使 ◆uL5esZLBSE
2011/07/01(金) 20:14:06.26変数に$ついてる言語触ってるって事だよね
いちいちSHIFT+4キーおして $ 打ちまくってる感触はどう?
0555デフォルトの名無しさん
2011/07/01(金) 22:04:06.700556デフォルトの名無しさん
2011/07/01(金) 22:42:36.710557デフォルトの名無しさん
2011/07/03(日) 09:29:49.400558デフォルトの名無しさん
2011/07/03(日) 12:21:36.230559デフォルトの名無しさん
2011/07/09(土) 14:20:34.32お勧めとかあったら教えていただきたい
0560デフォルトの名無しさん
2011/07/16(土) 17:43:14.850561デフォルトの名無しさん
2011/07/18(月) 00:23:24.370562デフォルトの名無しさん
2011/07/18(月) 21:14:08.71コントローラ持ってなかったら作ってなかったけど
0563561
2011/07/19(火) 17:17:23.19せめて方法があるかないかだけでも教えてくれ。
VS無しではxnbへの書き出しは出来ないのか? マップエディターみたいなツールは作れないと言うことなのか?
0564デフォルトの名無しさん
2011/07/19(火) 17:22:25.720565デフォルトの名無しさん
2011/07/19(火) 17:36:17.52一応、PCで動かすことしか考えてないけど
カスタムパイプラインとか書いて、諸々を一つのxnbにまとめてあるから
実行時でもxnbじゃないテクスチャが読み込めるよ とかそう言うのだったら間に合ってる(なんか言い方がきついけど悪気はない)
0566デフォルトの名無しさん
2011/07/19(火) 17:50:00.98Microsoft.Xna.Framework.Content.Pipeline
参照追加して呼べばいいよ
0567デフォルトの名無しさん
2011/07/19(火) 17:50:53.340568デフォルトの名無しさん
2011/07/19(火) 18:07:26.06これか! ずっとTask以外のネームスペースのやつ見てた。
ContentWriterはコンストラクタがないし…という感じで
0569デフォルトの名無しさん
2011/07/23(土) 21:43:28.80まじかよくそばこう
売る箱を持ってなかった
0570デフォルトの名無しさん
2011/07/23(土) 21:45:51.030571561-568
2011/07/24(日) 05:22:40.08VS無しでxnbを作る一番簡単な方法は、プロジェクトファイルを作成してMSBuildを実行して
間接的にMicrosoft.Xna.Framework.Content.Pipline.Task.BuildContentを使うことです。
もしくはMicrosoft.Build以下にMSBuildとおなじ物があるのでそれを使う。
BuildContentは簡単に生成することはできますが、下準備とかメンドクサイし、
いろいろ整えてExecute()しても、設定してないLoggerに書き込もうとするし、そのLoggerは直接指定出来ないし
まあ、とにかくうまくいきません。
0572デフォルトの名無しさん
2011/07/24(日) 16:29:10.13ちなみにそれ再配布できないよね・・・。
あとさ、XNA4って3.1に比べて微妙に改悪じゃね?
不便なことが増えるばっかり。よくなったところはどこよ?
0573デフォルトの名無しさん
2011/07/24(日) 16:45:25.93自前で.xnb書き出せばよし
0574デフォルトの名無しさん
2011/07/24(日) 17:42:55.66C#(XNA3.1)に移植しようとしたのですが、真っ黒になり何も表示されません。
移植元 http://kagaminer.in/~rin/smoke.zip
移植先 http://kagaminer.in/~rin/xnatest.zip
どこか間違っているところとかあるのでしょうか?
0575デフォルトの名無しさん
2011/07/24(日) 17:58:50.01ソース晒して他人にデバッグさせようとか、図々しいにもほどがある。
0576デフォルトの名無しさん
2011/07/24(日) 18:02:53.520577デフォルトの名無しさん
2011/07/24(日) 21:00:15.14これって、
http://ime.nu/kagaminer.in/
の中の人が質問してるの?
こんなんもデバッグできない馬鹿が作ってるの?
アホなの? 氏ぬの?
0578デフォルトの名無しさん
2011/07/24(日) 21:01:44.30貼り間違えた orz
0579デフォルトの名無しさん
2011/07/24(日) 21:17:15.09プログラムは思った通りではなく、書いた通りに動くとは
重々理解しているつもりですが、どこがおかしいのやら……
>>577
はい、そうです。何かまずいところでもあったでしょうか?
ちなみに、ページ中の画面写真はイメージです。
0580デフォルトの名無しさん
2011/07/25(月) 01:16:50.59自己レスです。
WVPに渡すMatrixの数値が食い違うことに気づき、色々調べたところ、
XNAは右手系というやつで計算方法が違うということを知りました。
XNA側に無理やりC++で出した行列の値を設定したところ、表示できました。
そこで、質問を変えますが、このHLSLを、右手系という計算方法でも
正しく表示できるように対応させるにはどうすればよいでしょうか?
0581デフォルトの名無しさん
2011/07/25(月) 02:03:54.79右手系と左手系を分かってるか?
その違いを理解すれば、ものすごく簡単な話しだぞ。
具体的には、軸を1本、符号反転するだけだ。
0582デフォルトの名無しさん
2011/07/25(月) 02:16:20.84下記を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;
0583デフォルトの名無しさん
2011/07/25(月) 10:40:06.76切り替えてビルドするたびにコンテンツが連動してリビルドされるから、10分ちょい待たされる。
0584デフォルトの名無しさん
2011/07/25(月) 10:46:51.94コンテンツのプロジェクトを外せない?
0585デフォルトの名無しさん
2011/07/25(月) 11:10:59.86あーそういうことか。
普段ビルド無効にしてカスタムプロセッサを弄った時だけ、
プロジェクト名指しで強制的にビルドさせてやればいいんだな。
サンクス
0586デフォルトの名無しさん
2011/07/25(月) 20:42:01.47ライティング・シャドウイングのエンジンってないかな?
0587デフォルトの名無しさん
2011/07/26(火) 00:02:06.640588デフォルトの名無しさん
2011/07/29(金) 11:14:09.89昔(XNA3.0出る前後の頃)はWeb上でのフリー配布に限るって
どこかに書いてあった気がするんだが、今ぐぐると全く出てこないんだ。
Windows用の同人ゲをCDで出す予定で、そこにXNAクリエイター向けの
オマケとして、XBOX360版の.ccgameを突っ込もうかなとか考えているんだが。
0589デフォルトの名無しさん
2011/07/29(金) 14:06:28.57配布するのはいいが、プレイするユーザーのこと考えてるか?
0590デフォルトの名無しさん
2011/07/29(金) 14:33:04.50プレイ対象者はMSに年99$上納してるヤシに限定しても特に悪くはないだろ、と思ってる。
0591デフォルトの名無しさん
2011/07/29(金) 22:58:35.37インディーズで出してるこびとスタジオも昔から360用ccgame入りをコミケで売ってるからNE☆
0592デフォルトの名無しさん
2011/07/29(金) 23:46:00.16コンパイル済みのアセンブリとアセット配れば十分じゃないの
0593デフォルトの名無しさん
2011/07/30(土) 08:53:52.71コマンドラインツールが配布されていた気がするのですが
見つけられません。ご存知でないでしょうk?
0594デフォルトの名無しさん
2011/07/30(土) 12:13:51.46XNA4では、D3D10形式のシェーダファイルでないと読めないのでしょうか。
昔のシェーダファイルを使いまわしたいのですが、もしや解決策はない?
0595デフォルトの名無しさん
2011/08/01(月) 16:36:53.11文字入力とか漢字変換とか、どうやれば良いでしょうか?
0596デフォルトの名無しさん
2011/08/01(月) 16:44:08.11それ見て理解できなければ改めて質問します。
0597デフォルトの名無しさん
2011/08/01(月) 16:47:16.01Windowsとそれ以外とじゃ違うし
0598デフォルトの名無しさん
2011/08/03(水) 08:15:48.68それ以外のピクセルを真っ黒に描画したい(マスクつくりたい)
ちなみにカスタムシェーダは使えない
なんかやり方ないかな?
0599598
2011/08/03(水) 08:20:46.37誰か助けてくださいませ
0600デフォルトの名無しさん
2011/08/03(水) 11:28:16.74オフスクリーン使え。
スキンメッシュなんざググれば(ry
0601598
2011/08/03(水) 12:59:12.75オフスクリーン≒レンダターゲット?ならTexture2D対象にやってるっす
問題はモデル真っ黒にしたいけどそれってピクセルシェーダでやらなきゃ
だけどSkinnedEffect使わなきゃだからカスタムシェーダ使えねえってこと
SkinnedEffect+AlphaTestはできんのかなーって?
0602デフォルトの名無しさん
2011/08/03(水) 22:02:06.97レンダーターゲットの使い方工夫しろよ、低脳
0603デフォルトの名無しさん
2011/08/04(木) 01:51:30.42Windowsではビルド通ったけどXBOX360では通らない
GraphicsDevice.RenderStateにあるかと思ったらないし
0604デフォルトの名無しさん
2011/08/04(木) 11:18:30.02VS2008+XNA3.1です。
0605デフォルトの名無しさん
2011/08/10(水) 00:50:22.71Update()のタイミングに合わせてスレッドを動かす方法が知りたいです。
0606デフォルトの名無しさん
2011/08/11(木) 10:07:44.46タスク並列がやりたいんだったら、.NET4+WinならParallel.Invokeが簡単。
それが使えないならThreadPoolで実行させてWaitHandleで待機する。
当たり判定のような特定のループが無茶苦茶重いんなら
タスク並列よりもそのループを並列化したほうがずっと楽で確実に速くなる。
0607デフォルトの名無しさん
2011/08/11(木) 15:28:29.040608デフォルトの名無しさん
2011/08/11(木) 22:14:29.350609デフォルトの名無しさん
2011/08/11(木) 22:27:52.78とんでもなく数が多ければコア数倍に近づくだろうけど実際のゲームで速くなんのかな
0610デフォルトの名無しさん
2011/08/12(金) 22:03:57.900611デフォルトの名無しさん
2011/08/12(金) 23:01:52.400612デフォルトの名無しさん
2011/08/13(土) 09:55:00.41device.BlendState = BlendState.NonPremultiplied;
のような命令の時点で負荷をかけてしまうのでしょうか?
0613デフォルトの名無しさん
2011/08/17(水) 01:30:31.76んで、ログを見ると
スレッド 0xf900001c はコード 0 (0x0) で終了しました。
みたいなのが毎フレーム出てくる
XBOX360のThreadPoolはThreadを本当にPoolしてるのか……?
0614デフォルトの名無しさん
2011/08/17(水) 10:43:09.020615デフォルトの名無しさん
2011/08/18(木) 10:20:26.51>>614 サンクス
0616デフォルトの名無しさん
2011/08/24(水) 09:08:11.88sprite.BatchのDrawの第4パラメーターの色指定で
色を時間に応じて替えさせるために変数を代入したいのですが
new Color(120, 120, 120)
とするのと
int x;
x = 120;
new Color(x, 120, 120)
とで結果が違ってしまいます。nex Colorの中のxにとても大きな
数値となって入っているような感じです。int型を代入させようとしているのが
いけないのでしょうか。しかし()内は整数のようですし・・・もしint型が原因ならば
どのような型の変数を代入すればいいのでしょうか。
0617デフォルトの名無しさん
2011/08/24(水) 15:21:12.370618デフォルトの名無しさん
2011/08/24(水) 15:55:17.32このへん4.0と変わってるからバージョン書いた方がいいよ
0619デフォルトの名無しさん
2011/08/24(水) 20:32:32.62どうもありがとうございます。byte型を入れてみたところ予定どうりの
色調整ができました!
>>618
アドバイスありがとうございます、これから気をつけます。
現在の手元のバージョンは3.1でした。
言われて調べてみたところ、どうやらインディーズは4.0での
提出のみとなるようですね。透明処理などの仕様も変わるとか・・・。
早速移行してみようと思います。
0620デフォルトの名無しさん
2011/08/24(水) 23:37:53.58自動変換で書式の違いでエラーがいくつも出るのは覚悟していたのですが
・XACTで作ったサウンドファイルを読み込んでくれない。
また、別の方法で音をならせることもできそうです。
・Contentを右クリックしてVisualStudio2010で画像を読み込みなおしても
「This file was compiled with wrong version of the XNA framework」
とのエラー。
後者の原因がわかりません。Contentに生の画像ファイルを置いて2010で
読み込んでいるのに何でこのようなエラーが出るのかおしえていただけないでしょうか。
遠い道ながら完成の道は見えていたところだったので、嫌な汗が噴出してます。
ならば1からと新規作成を起動しようとしたらビデオカード不対応といわれて
ショック大きい・・・。どうかよろしくおねがいいたします。
0621デフォルトの名無しさん
2011/08/25(木) 00:53:08.52Reachにしてみれば?
0622デフォルトの名無しさん
2011/08/25(木) 11:11:12.12ありがとうございました。おかげさまでビルドに成功しました。
昨晩は絶望したのですが、それで最初からはじめてコピーも使って
以前の状態にもどりつつあります。これは個人的な報告ですが
移行作業の参考になる人もいるかもしれないので。
XACTエラーは4.0のフォルダにあるものを使わなかったのが原因のようでした。
Contentは原因わかりませんが、バージョン上げても2008のタブもあった
事と関係あるのかも。プロジェクトが2008で作ったものを参照したがってた
のか・・・あまりよくわかりませんが最初から作ったので問題なくなりました。
テクスチャサイズの最大値が、2008では警告だったのにこっちはエラーに
なるんですね。つくり直しました。
0623デフォルトの名無しさん
2011/08/25(木) 11:36:28.15spriteBatch.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つしか表示できなくなってるようです。
勘違いだったらごめんなさい。
0624デフォルトの名無しさん
2011/08/25(木) 14:11:59.47ごめんなさい。
パラメーターの意味あいが変わって、表示優先度などがメチャクチャに
なっていただけみたいです。大間違いですみません。
0625デフォルトの名無しさん
2011/08/29(月) 12:14:59.36同フレームに同時にならすと音がその倍、大きくなってしまいます。
forループ内に音を出す命令を書いた場合や
複数のザコに攻撃が同時ヒットした場合のヒット音など。
何か良い解決策はないでしょうか?
0626デフォルトの名無しさん
2011/08/29(月) 12:27:07.720627デフォルトの名無しさん
2011/08/29(月) 21:24:00.20シチュエーションによって2人に・3人にと同時ヒット数がいろいろなので
その方法だと厳しいようです。
0628デフォルトの名無しさん
2011/08/29(月) 22:18:13.55当たり判定してすぐに鳴らさないであとでまとめて鳴らすとかどうとでも
0629デフォルトの名無しさん
2011/08/30(火) 16:50:52.20同時再生で音が大きくなるのはプログラムで回避すべき問題なんですね。
了解しました。
音をならすシチュエーションで変数を動かして、その変数で一つの音を
鳴らすように工夫してみます。
回答ありがとうございました。
0630デフォルトの名無しさん
2011/08/30(火) 17:27:50.69つか、実際プロが作ったゲームをプレイしてみてその辺をどうしてるか参考にしてみては?
0631デフォルトの名無しさん
2011/08/30(火) 22:16:50.230632デフォルトの名無しさん
2011/08/31(水) 11:07:00.68あれから解決しました。
bool型でsoundplay変数を作って
音をならしたい時はそれぞれの場面でならすのでなくこの変数をtrueに。
if(bool soundplay == false)でならす条件を絞って
trueになったフレームにだけ音をならして3フレームでfalseにもどっと
その間は音が重ねてでないようにしました。
0633デフォルトの名無しさん
2011/08/31(水) 17:10:52.89たとえば自前でSpriteFontの描画ロジック積むとか
XNA3.1です
0634デフォルトの名無しさん
2011/08/31(水) 23:04:48.73透明色指定の方法教えてください
0635デフォルトの名無しさん
2011/08/31(水) 23:20:43.56アルファチャンネル使う
0636デフォルトの名無しさん
2011/09/01(木) 01:31:44.43どうもです
アルファチャンネルを調べてみます
0637デフォルトの名無しさん
2011/09/01(木) 02:28:29.82方法を検索しても使う漢字全て調べて使えるようにするっていう方法しか見つからないのですが・・・
0638デフォルトの名無しさん
2011/09/01(木) 04:37:28.18JISコードの漢字の並び順は第一水準、第二水準と並んでいる(ボソ
もしくは、後で拡張出来るようにする予定でもなければ、セリフとかのリソースをスキャンしてxmlを生成するプログラムをくんでも良いし
(そしてそれをコンパイル時に実行するようにしても良いし)
ちなみに、今の時代、オンボでもなければビデオメモリは少なくても512MBはあるだろうから、
第一水準までのすべての漢字を取り込んだところで、気にするほどパフォーマンスは落ちないだろうよ。
0639デフォルトの名無しさん
2011/09/01(木) 16:53:02.41文字列のビットマップデータを取得したらテクスチャにSetDataで書き込むだけ
0640デフォルトの名無しさん
2011/09/02(金) 10:44:16.680641デフォルトの名無しさん
2011/09/02(金) 13:50:26.77もっと古くても2005年以降のintelマザボならオンボードで動く。
0642デフォルトの名無しさん
2011/09/05(月) 05:32:03.19この機能をオフにできませんか?
テクスチャの端に背景色を配置して対処してますが面倒です。
0643デフォルトの名無しさん
2011/09/05(月) 10:56:03.890644デフォルトの名無しさん
2011/09/05(月) 20:22:01.27Texture2Dで2Dドット絵なんですが
例えば25×25サイズのドット絵を描画するとき、この端っこに背景色以外のドットが
あると、右端にそのドットがある場合などは、その絵の右に
ビヨーンと右端の色を伸ばして塗りつぶしたふうになってしまいます。
0645デフォルトの名無しさん
2011/09/06(火) 01:02:29.64図解してくれよ
0646デフォルトの名無しさん
2011/09/06(火) 01:42:08.430647デフォルトの名無しさん
2011/09/06(火) 15:33:54.42絵にしてみるとこんな感じです。
ttp://uploader.sakura.ne.jp/src/up56183.png
>>646
ありがとうございます。
検索してでてきたのは3Dのほうでしたが、どうもそれがらみのようです。
0648デフォルトの名無しさん
2011/09/06(火) 18:59:23.450649デフォルトの名無しさん
2011/09/06(火) 21:26:37.81ttp://ichigo-up.com/cgi/up/qqq/nm41311.png.html
>>648
大丈夫。実際のゲーム画像ではありません。
0650デフォルトの名無しさん
2011/09/06(火) 22:55:18.85この絵でゲーム出してwwwwwwwww
0651デフォルトの名無しさん
2011/09/06(火) 23:08:26.500652デフォルトの名無しさん
2011/09/07(水) 01:26:31.220653デフォルトの名無しさん
2011/09/07(水) 01:39:54.420654デフォルトの名無しさん
2011/09/19(月) 16:17:08.520655デフォルトの名無しさん
2011/09/19(月) 17:47:06.57http://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);
テクスチャアドレッシングモードの変更だけじゃだめぽいね。
0656デフォルトの名無しさん
2011/09/20(火) 01:08:53.99よく考えると当然のことなんだよな……
0657デフォルトの名無しさん
2011/09/20(火) 01:27:04.63やはり一旦別のテクスチャに描画する必要があるのでしょうか?
0658デフォルトの名無しさん
2011/09/20(火) 17:11:50.59なんで下位互換が無いのこのライブラリ
まぁなんか作る前に気付けて良かった
やっぱObjective-C最強やね!
0659デフォルトの名無しさん
2011/09/20(火) 18:25:56.71http://jin115.com/archives/51811583.html
0660デフォルトの名無しさん
2011/09/20(火) 19:26:01.45百歩譲って皇家はまだ理解できるけど王家って・・・
EmperorとKingは全く格が異なるのにそんなことも理解できないの?
0661デフォルトの名無しさん
2011/09/21(水) 04:57:25.54王のいない一国の中で王だろうが皇だろうがどっちでもいいじゃん、そんなのw
0662デフォルトの名無しさん
2011/09/21(水) 22:53:42.70Syntax error.
Ok
0663デフォルトの名無しさん
2011/09/23(金) 12:19:18.01で、どう違うの?
C#を統べるMSがエンペラーでソニーワールド内だけでC#を統括しているソニーがキングってこと?
0664デフォルトの名無しさん
2011/09/23(金) 12:28:46.92天皇というのは中国と対等であるという意味において
まったく異なる
0665デフォルトの名無しさん
2011/09/23(金) 14:23:09.020666デフォルトの名無しさん
2011/09/23(金) 19:46:37.540667デフォルトの名無しさん
2011/09/23(金) 22:40:35.950668デフォルトの名無しさん
2011/09/25(日) 17:33:35.530669デフォルトの名無しさん
2011/10/01(土) 23:03:17.690670デフォルトの名無しさん
2011/10/02(日) 07:08:58.39sqliteでもつかっとけ
0671デフォルトの名無しさん
2011/10/05(水) 19:09:06.480672デフォルトの名無しさん
2011/10/08(土) 12:16:05.42mat.Decomposeで取得されるQuaternionと
Quaternion.CreateFromRotationMatrix(mat)で取得されるQuaternionは
常に同じになりますか?
0673デフォルトの名無しさん
2011/10/11(火) 01:22:47.65普通に音声の再生はできるのですが、
FFTをかけるとスペクトルが-10dBと-80dB付近を行ったり来たりしています。
たぶん、奇数番目の値がケタ上げに使っていると思ったのですが、
いかんせんそれから先に進まない状態です。
誰か実験した方とかいませんか?
0674デフォルトの名無しさん
2011/10/12(水) 03:41:03.85たとえばXNAコード内にDirectcomputeを使用したりとか
0675デフォルトの名無しさん
2011/10/12(水) 04:24:43.950676デフォルトの名無しさん
2011/10/13(木) 22:32:15.570677デフォルトの名無しさん
2011/10/14(金) 17:43:15.21竹島は韓国領土などととんでもない嘘を世界に向けて発信したキムテヒを許さないぞ!!!
☆フジテレビ抗議デモin銀座☆
【時間】 平成23年10月15日土曜日 【集合】13:45【出発】14:00
【場所】 東京都千代田区大手町2-7-2常盤橋公園
【抗議内容】 フジテレビ偏向報道への抗議・反日女優キムテヒドラマへの徹底抗議
公式HP
http://yuh20112525.kagennotuki.com/
0678デフォルトの名無しさん
2011/10/16(日) 17:47:37.67これは避けられませんか?
具体的にspriteBatch.Drawカラーの(255,255,255,100)の透明指定を使って
いるのですが・・・
0679デフォルトの名無しさん
2011/10/17(月) 03:01:37.78BlendStateをNonPremultipliedに
0680デフォルトの名無しさん
2011/10/17(月) 20:19:16.93できました!
目的のとおりの透明になりました。ありがとうございます!
0681デフォルトの名無しさん
2011/10/17(月) 21:30:49.730682デフォルトの名無しさん
2011/10/17(月) 23:28:54.11全てラスタースクロールって出来ますか?
(オブジェクト=BG、キャラ、文字等の表示物)
0683デフォルトの名無しさん
2011/10/17(月) 23:59:13.05画面全体を波打たせたりしたいんなら
いったんレンダーターゲットに描いてピクセルシェーダが簡単爆速
0684デフォルトの名無しさん
2011/10/18(火) 00:02:33.340685デフォルトの名無しさん
2011/10/18(火) 00:09:08.77ありがとうございます。
ただのエフェクトで使用します。
http://www.youtube.com/watch?v=vB0Hbelvux4
怒首領蜂大復活で、ある条件時に裏面に行く際ラスターエフェクトがかかる。
この処理がしたかったのです。
0686デフォルトの名無しさん
2011/10/18(火) 01:53:12.77あらためて見てプロが作ったゲームってすごいな。
プレイよりもそっちに目がいってしまう。
0687デフォルトの名無しさん
2011/10/26(水) 11:48:35.450688デフォルトの名無しさん
2011/10/26(水) 19:01:08.57本物のラスタースクロールなんて糞重くて面倒臭いだけ
0689688
2011/10/26(水) 19:33:22.440690デフォルトの名無しさん
2011/10/28(金) 18:01:22.56そんなにすごいのかと思ってたが
プログラミングで試行錯誤してたんだろうね
0691デフォルトの名無しさん
2011/10/29(土) 00:02:01.820692デフォルトの名無しさん
2011/10/29(土) 12:58:47.630693デフォルトの名無しさん
2011/10/30(日) 15:29:42.743行で解説頼む
0694デフォルトの名無しさん
2011/10/30(日) 17:55:12.34あるある
0695デフォルトの名無しさん
2011/10/30(日) 19:58:10.310696デフォルトの名無しさん
2011/10/30(日) 22:11:33.720697デフォルトの名無しさん
2011/10/31(月) 11:16:01.06ストレージサービスの使い方?
それともシリアライズ?
0698デフォルトの名無しさん
2011/11/06(日) 19:12:31.35できれば、ボタンやテキストフィールドのあるフォームを使いたいのですが。
0699デフォルトの名無しさん
2011/11/06(日) 23:36:24.15それかMCI使う
0700デフォルトの名無しさん
2011/11/07(月) 14:53:36.210701デフォルトの名無しさん
2011/11/08(火) 00:24:10.530702デフォルトの名無しさん
2011/11/08(火) 15:18:56.690703デフォルトの名無しさん
2011/11/12(土) 09:27:19.15配列の配列(二次元配列のように使うジャグ配列)は
***[0] = new int[5];
という感じでいけるのですが
配列の配列の配列はどのようにサイズ指定を書けばいいんでしょうか?
***[0][0] = new int[5]; とやってもだめ
***[0] = new int[3][5]; とやってもだめです
回答よろしくおねがいします。
0704デフォルトの名無しさん
2011/11/12(土) 12:10:58.46for (int i = 0; i < a.Length; i++) {
a[i] = new int[3][];
for (int j = 0; j < a[i].Length; j++) {
a[i][j] = new int[5];
}
}
}
0705デフォルトの名無しさん
2011/11/12(土) 14:57:06.88代入のしかたまで・・・!どうもありがとうございました
動作も成功を確認しました。
それまで3次元配列だったのですが敵の配置を増やすにしたがっ
Xbox上ではまだわかりませんがPC上ではかなり重くなっていたので
ジャグ配列に変えることにしたのですが、助かりました。
0706デフォルトの名無しさん
2011/11/12(土) 15:39:23.710707デフォルトの名無しさん
2011/11/12(土) 16:23:10.03でもゲームでその程度が問題になるってよっぽどだぞ
他に原因がありそう
0708デフォルトの名無しさん
2011/11/13(日) 17:52:45.58>でもゲームでその程度が問題になるってよっぽどだぞ
きっと自分はプログラミング下手で効率の悪い処理をしているのだと思います。
敵Aが
「80配置されて」「5回にわけて」[6way弾発射] →[80,6,5]
それぞれの弾に10種類あるパラメーターに全てこの配列
敵Aと同じようなのが15種類あたりでフレームとびが顕著に・・・
0709デフォルトの名無しさん
2011/11/14(月) 11:57:01.37イテレーターを使わないとバグを量産しますよ。
0710デフォルトの名無しさん
2011/11/14(月) 14:50:46.93それくらいのことでバグを量産できてしまう人の方が何か問題があるんだろう
0711デフォルトの名無しさん
2011/11/14(月) 15:13:51.850712デフォルトの名無しさん
2011/11/14(月) 16:07:51.090713デフォルトの名無しさん
2011/11/14(月) 18:38:19.90すべてのソース内において的確に修正を行える天才なんだね。
こりゃまいったわ、ぐうの音もでねえ。
ここに大天才現る!
0714デフォルトの名無しさん
2011/11/14(月) 18:43:09.57もちろんバグも出ない
0715デフォルトの名無しさん
2011/11/14(月) 19:29:59.15別にプログラムがデータの個数に依存して書かれてるわけじゃ無いんだから、問題なさそうだけど。
0716デフォルトの名無しさん
2011/11/15(火) 00:45:27.20そのタスクシステムってのは
イテレータつかわずに自前でコレクション管理してるの?
バグフリーとか相当品質高そーだね。
0717デフォルトの名無しさん
2011/11/15(火) 00:57:46.450718デフォルトの名無しさん
2011/11/15(火) 13:11:48.990719デフォルトの名無しさん
2011/11/15(火) 14:24:35.860720デフォルトの名無しさん
2011/11/15(火) 16:35:58.620721デフォルトの名無しさん
2011/11/15(火) 16:37:17.38必要なコードを書く間抜けがいるんだなw
0722デフォルトの名無しさん
2011/11/15(火) 16:39:11.790723デフォルトの名無しさん
2011/11/15(火) 22:03:01.850724デフォルトの名無しさん
2011/11/15(火) 22:17:08.88JITコンパイラーの都合で、1次元配列の方が最適化が効きやすい
だから、1次元配列を2重に使ってる配列の配列の方が速くなる“ことがある”
って話は聞いたことある。
まあ、内部実装考えたら普通は多次元配列の方が速いはずなんで、
それが狂うときはJITの都合ってこと。
0725デフォルトの名無しさん
2011/11/16(水) 00:03:50.31for (int i = 0; i < a.Length; i++) a[i] += 1;
一次元配列のこういう形のループはILの配列専用命令が使われて
JITで特別に強力な最適化がかかるらしい(配列の場合はforeachでも同様に最適化される)
だから a[i][j] への連続したアクセスが
for (int i = 0; i < a.Length; i++) for (int j = 0; j < a[i].Length; j++) a[i][j] += 1;
の形に書けるなら一般に配列の配列のほうが速くなる
バラバラにアクセスされるならたぶん多次元配列の方が速い
0726デフォルトの名無しさん
2011/11/16(水) 00:21:18.380727デフォルトの名無しさん
2011/11/16(水) 00:27:38.14前にやったことある気がするけどよく覚えてないんだよ
0728デフォルトの名無しさん
2011/11/16(水) 00:33:20.95いちいちつっかかるんじゃねーよオメーはよー
0729デフォルトの名無しさん
2011/11/16(水) 00:41:03.02涙を拭けよ
0730デフォルトの名無しさん
2011/11/16(水) 11:44:15.570731デフォルトの名無しさん
2011/11/17(木) 09:25:09.390732デフォルトの名無しさん
2011/11/18(金) 11:06:24.43C風に言うところのポインタ分岐とで、どちらが早いのか揉めたことがある
一方はGPUで条件分岐入れると糞重くなるから似た構造のCPUでも自明のことだと、
もう一方はプリフェッチが効かなくなるから遅くなると
んでベンチマーク組んでやってみたが、PC上ではパフォーマンスの違いは見られなかった
XBOX360(PowerPC)やWindowsPhone(ARM)だとまた違う結果が出るのかもな
0733デフォルトの名無しさん
2011/11/18(金) 11:22:07.39最初あまりにも差が大きかったからメソッドのインライン展開を抑制したら差は小さくなったけど
やっぱりそれでもswitchの方が若干速かった
0734デフォルトの名無しさん
2011/11/18(金) 11:58:42.540735デフォルトの名無しさん
2011/11/18(金) 14:41:29.20って言わないと片手落ちだな
0736デフォルトの名無しさん
2011/11/18(金) 14:44:44.88おまw
GPUは条件分岐むちゃくちゃ苦手、CPUとは構造違いすぎるとかくらい知っとけよ。
0737733
2011/11/18(金) 17:07:47.16インライン展開で遅くなってたんじゃなくて、純粋に分岐の測定がしたいから
インライン展開を抑制してswitchの方を遅くした
ポリモーフィズムだとインライン展開できないから、
(実際はやってるらしいけど分岐先がバラバラだと効果が薄い)
実際にパフォーマンスに響くのは分岐云々よりもほとんどそれだと思う
最適化は終盤になってそこがネックになったらというのは同意
0738デフォルトの名無しさん
2011/11/18(金) 17:42:53.91動的なインライン展開が効いて、switchと違って分岐予測も効きやすい分
ポリモーフィズムの方がもしかしたら速くなるかもね
測ってみないことには何も言えないけど
0739デフォルトの名無しさん
2011/11/18(金) 21:39:20.28命令キャッシュのヒット率の方が支配的な要因だったりして。
0740デフォルトの名無しさん
2011/11/18(金) 21:49:58.830741デフォルトの名無しさん
2011/11/21(月) 12:29:19.450742デフォルトの名無しさん
2011/11/22(火) 15:18:18.68あげることはできませんね。
攻撃をうけたキャラを白く点滅させたいのですが、spritebatchの記述で
絵を白く(元絵より明るい色に)する方法はないでしょうか?
一応、白く塗りつぶしたキャラ絵をもう一枚重ねて点滅させてみせる方法も
可能ではありますが描画の負荷が倍になってしまうので
できることならパラメーターをいじって元絵の色を白色にしたいのです。
0743デフォルトの名無しさん
2011/11/22(火) 16:48:37.760744デフォルトの名無しさん
2011/11/22(火) 17:22:13.780745デフォルトの名無しさん
2011/11/22(火) 21:26:38.03ありがとうございます。
シェーダーもレンダーステートも全く知らないので調べてみます。
既に少しは検索しましたがむずかしそうですね。
0746デフォルトの名無しさん
2011/11/25(金) 16:30:59.750747デフォルトの名無しさん
2011/11/26(土) 00:45:41.21余計な手間掛けさせやがって!とか
0748デフォルトの名無しさん
2011/11/26(土) 00:52:13.950749デフォルトの名無しさん
2011/11/26(土) 00:55:31.16その先は50歩100歩だから別にXNAのランタイムのインストール手間くらいどうってことないと思う。
0750デフォルトの名無しさん
2011/11/26(土) 01:44:29.16http://shop.melonbooks.co.jp/shop/sp_213001009897_roots_musket.php
0751デフォルトの名無しさん
2011/11/30(水) 13:01:27.410752デフォルトの名無しさん
2011/12/04(日) 18:16:51.84バウンディングスフィアって楕円形は設定できないのですか?
0753デフォルトの名無しさん
2011/12/05(月) 15:19:44.480754デフォルトの名無しさん
2011/12/06(火) 00:33:56.490755デフォルトの名無しさん
2011/12/06(火) 04:08:25.30楕円形を書く場合のパラメーターを教えていただきたいとおもいます
BoundingSphere bounds = new BoundingSphere(中心座標, 半径);
とだけ把握しているのですが・・
>>754
大変だったらそうしようと思っていますw
0756デフォルトの名無しさん
2011/12/06(火) 09:53:13.98http://www.youtube.com/watch?v=LLyTiQIwv2M
0757デフォルトの名無しさん
2011/12/06(火) 14:20:28.690758デフォルトの名無しさん
2011/12/11(日) 22:37:14.64だってSphere=球体だろ?
0759デフォルトの名無しさん
2011/12/19(月) 20:58:17.210760デフォルトの名無しさん
2011/12/19(月) 22:10:49.34空間分割から押し出し処理までまで自作せにゃならんのだろ?
物理エンジン使えば一発なのに。ついでにUNITY使えばもっと楽なのに。
0761デフォルトの名無しさん
2011/12/19(月) 22:41:35.40つって入門書買ったような初心者が最適解を見つけ出すのは困難
0762デフォルトの名無しさん
2011/12/19(月) 23:12:18.50API
0763デフォルトの名無しさん
2011/12/20(火) 01:31:02.070764デフォルトの名無しさん
2011/12/20(火) 18:25:10.46だが、ゲームエンジンがAPIになれないわけでもない。
0765デフォルトの名無しさん
2011/12/21(水) 00:49:36.81実行時のウィンドウの起動位置について、
C#でフォームアプリケーションを作成する場合のように、
XNAのプロジェクトでも指定をすることはできないでしょうか?
解説のあるページなどあれば教えていただけると助かります。
マルチディスプレイ環境で開発を行なっており、デバッグ時だけでもサブディスプレイの方で起動させたい次第です・・・。
0766デフォルトの名無しさん
2011/12/21(水) 00:52:05.11本題に関係ないとは思いますが誤字がありました。
開発環境、VisualC#2010Expressの間違いですね。
そんな環境知らない・・・。
0767デフォルトの名無しさん
2011/12/21(水) 10:54:44.880768デフォルトの名無しさん
2011/12/22(木) 00:10:14.000769デフォルトの名無しさん
2011/12/22(木) 00:14:00.42XNAはDirectXの薄いラッパーだからDirectXの知識もバッチリ(というかDirectXわからないとXNAは厳しい)
Unityみたいなのに比べればよっぽど潰しが利くよ
0770デフォルトの名無しさん
2011/12/22(木) 01:08:20.75ご回答いただきありがとうございます。
[DllImport("user32.dll")]
private static extern void SetWindowPos(System.IntPtr hWnd,
System.IntPtr hWndInsertAfter,
int x, int y, int cx, int cy, int uFlags);
このメソッドを使用することで実現できました。
0771デフォルトの名無しさん
2011/12/22(木) 01:29:02.420772デフォルトの名無しさん
2011/12/22(木) 02:31:04.210773デフォルトの名無しさん
2011/12/22(木) 02:32:29.59一つじゃないでしょ?
0774デフォルトの名無しさん
2011/12/22(木) 10:11:05.710775デフォルトの名無しさん
2011/12/22(木) 11:02:33.44ありがとうわかりました
0776デフォルトの名無しさん
2011/12/22(木) 13:24:11.37c++だとカンストで配列定義したものを検証して
(配列要素にコマンドが入ってて全て検証したカンストだけを真と返す)
できるけど、unityだと配列使えないしLISTで定義してもカンストできないから使えないんだよね。
何かいい方法ないかな?
0777デフォルトの名無しさん
2011/12/22(木) 13:43:24.64あと、余計なお世話だけどプログラム以前に
他人が読みやすい文章書く練習したほうがいい。
俺には「コマンド入力のアルゴリズム」も
「カンストで配列定義したものを検証して」も何言いたいのかわからん。
XNAスレでunityのこと質問してるのも意味不明。
0778デフォルトの名無しさん
2011/12/22(木) 15:45:30.980779デフォルトの名無しさん
2011/12/22(木) 19:21:17.08ボタンや方向全部用のint型変数とbool型変数わりあてて
bool leftKeyOn
int leftKeyTime みたいな
キーダウンするとそのボタン(方向キー)にわりあてた変数で
boolがTrueになってTrueだとintが増えて時間カウントして
時間が15すぎるとfalseとint=0にもどされる
15になる前に下、右、XボタンがTrueになってると波動拳が出る。
と、そんなふうになるだろうなぁ。
あ、下を先におさないといけないから下のintの数値が右よりもひくくないと
いけないからそれも技が出る条件にするか。
0780デフォルトの名無しさん
2011/12/22(木) 20:13:46.79いや、これはunityとかXNAとか関係ない部分だから。
日本語はなあ…コード見せないと俺もうまく伝えられんわ。
�@キー入力のオンオフを#defineで定数aに割り当てる。定数をビットで初期化し、スイッチにする。
�Aキー入力を取得してビットを加算する。
これで各入力が一つの変数bに収められる。
�Bbを配列に記録する。最大60フレームほどをカバーするために配列の上限は60個。この配列をcとする。
�Cコマンドのデータベースを作る。
constでコマンド名を複数羅列dし、
各コマンド名に配列を割り当てる。
配列にはコマンドの入%9
0781デフォルトの名無しさん
2011/12/22(木) 20:14:01.21いや、これはunityとかXNAとか関係ない部分だから。
日本語はなあ…コード見せないと俺もうまく伝えられんわ。
�@キー入力のオンオフを#defineで定数aに割り当てる。定数をビットで初期化し、スイッチにする。
�Aキー入力を取得してビットを加算する。
これで各入力が一つの変数bに収められる。
�Bbを配列に記録する。最大60フレームほどをカバーするために配列の上限は60個。この配列をcとする。
�Cコマンドのデータベースを作る。
constでコマンド名を複数羅列dし、
各コマンド名に配列を割り当てる。
配列にはコマンドの入力順にaをいれていく。配列末尾には入力末尾を示す定数ビットeを入れ、e|25としておく。
25はコマンド入力の入力フレームの限界値。25フレーム以内にコマンド入力しないとコマンド不成立になる。
�Ddをポインタで参照し、コマンド入力の可否で成立したコマンドを特定する。
�Eそれぞれのプレイヤーの成立コマンド、あたり判定を判定し、モーション、体力ゲージに反映させる。
この�Cと�Dのポインタで一度に参照できる複数の定数のカタマリと、定数それぞれに配列が入力されているデータが、unityだと微妙に作れない。
単純な配列をうまく作れない。
配列LISTを定数に入れても定数へのポインタが作れない。
XNAでもC#ならポインタは使えないし、
こういったデータが必要になる事もあるだろ?
それともXNAには何か他に良い方法があるの?
0782デフォルトの名無しさん
2011/12/22(木) 20:14:40.720783デフォルトの名無しさん
2011/12/22(木) 20:41:16.72ポインタの代わりに配列のオブジェクト参照と要素のインデックスをセットにした構造体を使うとか
どうとでもできるだろ
0784デフォルトの名無しさん
2011/12/22(木) 23:06:40.930785デフォルトの名無しさん
2011/12/23(金) 00:48:25.44どうとでもなるもんなんですか・・・
頭が固いのかもしれませんね。
>>784
これapphubの格ゲーではビジュアルの完成度高いなあ。
http://catalog.create.msdn.com/ja-JP/GameDetails.aspx?catalogEntryId=d22c9d94-ef09-48e5-a59e-7295dbcc61d6&type=2
apphubって初めて登録したけどソースコードが見られたりするの?
0786デフォルトの名無しさん
2011/12/23(金) 00:52:20.950787デフォルトの名無しさん
2011/12/23(金) 01:21:04.260788デフォルトの名無しさん
2012/01/07(土) 10:24:09.84クライアント(2ちゃんビューアとか) が腐ってたんじゃね?
0789デフォルトの名無しさん
2012/01/25(水) 11:17:58.950790デフォルトの名無しさん
2012/01/25(水) 15:53:03.35Windows8まで待ちじゃないかな
windowsが標準でXNAFramework搭載して、マーケットがXNA対応して、
モバイルはカスタムシェーダ使えるように、せめてそれくらい必要だけど
それすら望めないという
0791デフォルトの名無しさん
2012/01/25(水) 16:13:40.33Windows以外のプラットフォームに注目が持っていかれてて
XNAより楽チン高品質マルチプラットな開発環境がうじゃうじゃ存在する
もう時代にそぐわないんじゃないだろうか、XNA&DirectX
0792デフォルトの名無しさん
2012/01/25(水) 21:51:08.82XNA is dead て海外のサイトで特集やってたよ
0793デフォルトの名無しさん
2012/01/25(水) 22:55:42.620794デフォルトの名無しさん
2012/01/26(木) 00:44:29.24当面、パフォーマンス欲しいところはネイティブで書いてくれって方針から、
DirectX生 + C++ にフォーカス戻っちゃってるけど。
でも、ゲームもなぁ、描画回り以外はそこまで C++ にこだわりたくないしなぁ…
0795デフォルトの名無しさん
2012/01/26(木) 00:48:51.48過去資産の使いまわしって意味では一通りの枠組みは用意してあるはずだしね
ここからまた新しいゲーム用開発プラットフォームを用意しますってんなら
えーにもなるけど
0796デフォルトの名無しさん
2012/01/26(木) 01:06:52.230797デフォルトの名無しさん
2012/01/26(木) 02:08:46.54C++今更戻れない。UnityかPSSuiteSDK行けってこと?
0798デフォルトの名無しさん
2012/01/26(木) 03:02:09.21そうなると、中間層はさまないと個別最適化大変。
結局、MS 側の開発コストの問題でああいう実装取らざるを得ない。
大部分はC#で書く前提で、性能必要な部分だけに使うよう、コンパクトにまとめて、
かつ、C++ の歴史的な泥臭い部分をある程度カットしたような言語は欲しいよなぁ。
0799デフォルトの名無しさん
2012/01/26(木) 07:30:48.11MSも内部ではC#ネイティブコンパイラ使ってるらしいからできない
話ではないと思うんだけど。
0800デフォルトの名無しさん
2012/01/26(木) 08:19:16.600801デフォルトの名無しさん
2012/01/26(木) 11:08:37.740802デフォルトの名無しさん
2012/01/26(木) 11:11:06.57なんだそれ、自分とこのソースは隠して他所のは覗き見しちゃうわけか
さすがMS、頭いいなーーー
0803デフォルトの名無しさん
2012/01/26(木) 11:16:25.74難読化すらされてない超綺麗なソース
0804デフォルトの名無しさん
2012/01/26(木) 12:58:27.80海賊版いくらでもつくれるってのは商売用じゃない。
0805デフォルトの名無しさん
2012/01/26(木) 12:59:21.49かなりスレ違いの内容ってが悲しいよね。。
0806デフォルトの名無しさん
2012/01/26(木) 13:32:36.03Javaなんて15年位前からあるし、C#だってそろそろ10年選手だろ。
コピーで問題になんてなってんのかい?
0807デフォルトの名無しさん
2012/01/26(木) 13:37:25.06C#はツールに使われることは多いけど、C#製パッケージ見たことあるか?
C#がデコンパイルできなかったら今頃新規案件でC++を駆逐してる。
0808デフォルトの名無しさん
2012/01/26(木) 13:42:06.94MagickaとかTerrariaとか
0809デフォルトの名無しさん
2012/01/26(木) 13:52:12.98技術的に見るべきとこはないから。
あと、Terrariaは速攻クローンできてたような気もする。
0810デフォルトの名無しさん
2012/01/26(木) 14:00:29.590811デフォルトの名無しさん
2012/01/26(木) 14:01:26.61問題だね
0812デフォルトの名無しさん
2012/01/26(木) 14:17:45.76プロプラもいろいろあるんだけどな。
ゲームに限ったら速度の問題や資源管理をプログラマーが、
綿密に行いたいって事からあまり使いたがらないのはあるよ。
あとはC++にしがみついてる人たちの圧力と、
ゲームコンソールだと開発環境にC#のコンパイラが無いくらい。
そういう言語は選ばれませんの答えとしてはあなたが書いたことは的外れではないかね?
0813デフォルトの名無しさん
2012/02/01(水) 20:08:46.03レンダーターゲットを変更したら失われてしまうんですか?
0814デフォルトの名無しさん
2012/02/04(土) 04:33:33.450815デフォルトの名無しさん
2012/02/17(金) 00:33:14.68・2万文字全指定
・ツールで使う文字だけ抜き出して設定
これ以外になんかベターな方法ない?
0816デフォルトの名無しさん
2012/02/17(金) 00:35:48.91PCだったらGetGlyphOutlineでもSystem.DrawingでもWPFでも何でも使える
0817デフォルトの名無しさん
2012/02/18(土) 00:24:11.000818デフォルトの名無しさん
2012/02/22(水) 01:38:42.54WinRTはC#も.NETを介さないネイティブみたいなものらしいけど
XNAの扱いがいまいちわからない
0819デフォルトの名無しさん
2012/02/22(水) 01:43:56.05仕組み的には何も新しくない
MetroではXNAはサポートされない
0820デフォルトの名無しさん
2012/02/28(火) 23:55:00.65XNAについて知りたいので概略がわかる1冊教えて下さい
0821デフォルトの名無しさん
2012/02/29(水) 00:23:06.280822デフォルトの名無しさん
2012/02/29(水) 18:37:37.56英語だけどな
0823820
2012/02/29(水) 22:45:42.17自分で調べた限り適当な本が存在しません
0824デフォルトの名無しさん
2012/03/01(木) 02:20:50.48オレイリ本が早く和訳されるのを祈るのみ・・・
0825デフォルトの名無しさん
2012/03/02(金) 01:50:16.640826デフォルトの名無しさん
2012/03/06(火) 02:27:02.180827デフォルトの名無しさん
2012/03/06(火) 03:21:40.84IME使いたいってことならどっかのサイトにサンプルあったよ?
0828デフォルトの名無しさん
2012/03/10(土) 22:06:08.30WPなら入力コントローラーの画像を表示して、
360やWindowsなら何も表示させないって動作させるにはどうすれば・・・
0829デフォルトの名無しさん
2012/03/11(日) 11:07:40.210830デフォルトの名無しさん
2012/03/11(日) 11:38:21.83だな
実行時に判断とか意味ない
0831デフォルトの名無しさん
2012/03/11(日) 11:52:06.770832デフォルトの名無しさん
2012/04/20(金) 15:42:06.02今後もバージョンアップするたびにこうなる?
0833デフォルトの名無しさん
2012/04/21(土) 02:51:54.63今後バージョンアップされるかどうかあやしい。
もうこれ使っている人自体ほとんどいないと思うぞ。
今は全部エンジン任せの時代だもの。
0834デフォルトの名無しさん
2012/04/21(土) 03:54:47.530835デフォルトの名無しさん
2012/04/21(土) 04:21:39.290836デフォルトの名無しさん
2012/04/21(土) 22:05:56.96エンジンにできなくてXNAにできることあるだろうか?
エンジンとはいっても結構低レベルアクセスできるからなあ。
0837デフォルトの名無しさん
2012/04/21(土) 22:18:13.12アクション、シューティング、RPG、パズルゲー
ぐらいしかできないじゃん
映像部分より他に手間がかかるから、エンジン積んで効率上がるわけでもないし
そもそも個人でやっているから、そんなハイテク使う意味ないし
0838デフォルトの名無しさん
2012/04/21(土) 23:07:49.44レスありがとう。エンジンにもいろいろあるけど、XNAと比較されるのは、
3DもできるUnityやUDKだと思う。それらは上記以外にRTS含むシミュにも向く。
できないと思うのはADV?でも、それもつくられてるようだし。
エンジンって映像以外のAIやシーン管理やUI(フォント)、エディタも
提供するもんじゃないの?だから、効率は相当良いはず。
XNAだから楽、XNAだからできる、ってものが知りたい。
0839デフォルトの名無しさん
2012/04/21(土) 23:25:41.850840デフォルトの名無しさん
2012/04/21(土) 23:58:46.24向き不向きがあるんだよ
0841デフォルトの名無しさん
2012/04/22(日) 07:43:32.23コンテンツパイプライン周りとかはさらにシンプル化が進んでる感じだな
まあそのパイプラインプロセスは自分で書くわけだが。
適切なパイプライン拡張作れば例えばテキストと画像突っ込んだだけでADVができるツールキットとか作れるだろうし、
割とプリミティブに近い部分まで触れるからXNAはゲームフレークワークを作るためのフレークワークなんじゃなかろうか
XNAだからできるとか、XNAにしかできないことといったら個人での箱○やWP上で動くゲームの開発だろ。
0842デフォルトの名無しさん
2012/04/22(日) 13:34:08.74丁寧なレスありがとう。
Importer(パイプライン)の実装はUnityでもできることを確認してる。
XNAは動的読み込みがランタイムだけではできないのがマイナスかも。
ただ、XNB形式でコンテンツがデフォで保護されるのはいいと思った。
フレークワークを作るためのフレークワークってのは同意。
箱とWPは確かにXNAにしかできないね。だが、WP8がネイティブ許容されて
Unity参入する予定であることとWinRTへの非採用を考えると、
そうしたMS固有のXNAの利点はなくなっていく気がする。
エンジンと住み分けるためには、低レベル機能の充実が必要と思う。
エンジンも低レベル扱えるけど商用であるからには弄れる限度がある。
ただ、XNAも現状ではそれと同程度の低機能なのが問題だ。
(クロスプラットやFW開発労力が原因だろうが)
例えば、動画再生ひとつとっても細かい制御ができないのは不満で、
エンジンに優っていると思えるAPIが見当たらない。
SharpDXに移るのがよい解決策かな。XNA(マルチプラットフォーム)と
SharpDX(高機能)をコード共有して使い分けるとか。
0843デフォルトの名無しさん
2012/04/22(日) 13:50:16.76低レベルラッパー(高機能)のいいとこどりしてほしかったんだが。
ま、なんにせよ現状のままだとXNAに将来はないし、マイクロソフトにも
頑張ろうって姿勢が見えないもん。
0844デフォルトの名無しさん
2012/04/22(日) 15:06:58.260845デフォルトの名無しさん
2012/04/22(日) 15:38:51.57フレームワークがゲームエンジン以上の低層アクセスができない場合、
フレームワークの存在価値はまったくなくなると思うんだけど。
逆にエンジンがフレームワークと同等に低層アクセスできるなら、
それはフレームワークを内包するといえるでしょ。
0846デフォルトの名無しさん
2012/04/22(日) 15:43:08.56FBXファイルなどをを読み込む機能を自作しないとだめなんでしょ?
0847デフォルトの名無しさん
2012/04/22(日) 15:47:46.40そもそもライブラリ/フレームワーク/エンジンというのは、どれも
基盤という点で大差ない。比較することはおかしくないんじゃない?
基盤の機能の粒度と基盤を利用することによる実装の制限(例えば、
ライブラリと異なりFWはそれを利用することにより実装の指向性がきまる)
がそれらの差であり、そしてより粒度が高いものが粒度が低いものを兼ねるとき、
粒度が低いものの存在価値はどうなるのかというのをいってるの。
0848デフォルトの名無しさん
2012/04/22(日) 15:48:10.830849デフォルトの名無しさん
2012/04/22(日) 16:52:11.44ほとんどスクリプトで構築していくようなゲームの場合、必要ないんだよな
0850デフォルトの名無しさん
2012/04/22(日) 17:21:23.26ほとんどスクリプトで構築するゲームとは?具体例求む。
対話的エディタもUnityはじめエンジンの利点ではあるんだが利点の一部に過ぎないと思う。
コリジョン、ポストエフェクト、シーン管理、リソース管理、ビヘイビア、
経路探索、カメラ、GUI、スプライトアニメ
必要ないものなんてあるか?
決してエンジンの宣伝したいわけではなくXNAをくさしたいわけでもない
んだけどすまんね。エンジンはだめという主張が感情的な強がりにみえてしまうんだ。
ある程度使いこんだ人の、納得できるXNAの利点とエンジンの欠点が聞きたい。
0851デフォルトの名無しさん
2012/04/22(日) 17:41:36.11俺が今作っているものには必要ないというだけ
3Dアクション多用したゲームなら俺もこれ使うよ
0852デフォルトの名無しさん
2012/04/22(日) 17:47:13.07勘違いすまん。2Dゲームかな?頑張ってくれ。
0853デフォルトの名無しさん
2012/04/22(日) 17:58:11.620854デフォルトの名無しさん
2012/04/22(日) 18:02:03.28自分が想像できる範囲のゲームでしか考えてなさそうだな
自分が作りたいゲームがUnityに適合しているならそれでいいじゃん
ただ俺は非効率的だからやらないというだけ
0855デフォルトの名無しさん
2012/04/22(日) 18:11:35.48いや、俺はXNAユーザだよ。アクション興味ないし。
ただ、エンジンにこれをを完全に置き換えるポテンシャルがあるのではないかと
思ってるだけ。そして、つくるものによってはエンジンに非効率な部分があるという主張を
聞くけど、それが本当なのか具体的に何を指しているのか知りたいだけです。
0856デフォルトの名無しさん
2012/04/22(日) 18:23:24.39入力デバイスに関しても何も考えなくていい
0857デフォルトの名無しさん
2012/04/22(日) 18:24:57.25ヴィジュアル的に3Dで表現するがそれは本質じゃないよね?
0858デフォルトの名無しさん
2012/04/22(日) 18:29:49.530859デフォルトの名無しさん
2012/04/22(日) 18:30:28.30おお。レスありがとう。たしかに入力はいいね。特にWP。
Win下のゲームパッドについては逆に皮肉になっちゃうがw
0860デフォルトの名無しさん
2012/04/22(日) 18:31:14.00unity使ったことない
ぼくのらいふ0だからもうこれ以上いじめないでね
0861デフォルトの名無しさん
2012/04/22(日) 18:33:24.98すまん、荒れるような煽りっぽい書き込みはよそうよ。
久しぶりにスレ活性化してるんだから、まともに建設的な話をしたほうがいいじゃん。
エンジンはXNAに脅威だけど、逆にXNAを選ぶからこそ氾濫するエンジン製に
勝てる部分もあるかもしれない。そういうのを検証していくべきと思うんだ。
0862デフォルトの名無しさん
2012/04/22(日) 18:39:02.940863デフォルトの名無しさん
2012/04/22(日) 18:42:56.96ツールの制作に最適
ゲームに関しては動的なオブジェクトが大量にあると重い
minecraftのようなものを作ろうとすると、マップを狭くするしかない
狭くていいならUnityで作るほうが楽だけどね
0864デフォルトの名無しさん
2012/04/22(日) 18:50:35.38いいひとだ、愛してる^^。
俺も一番の理由はそれ。下はゲームエンジンのこと指してるの?
UnityはGBufferつくってるせいかも。あれでポリゴン2倍っしょ。
XNAも結構重くてさ、インスタンシングやQuadTreeや各種カリングや色々
実装してはいるんだけどFPS全然でない…。
200回DrawPrimitiveで30万ポリゴンでIntel HD Graphicsで20Fps切るんだけど
こんなもんなんだろうか。
0865デフォルトの名無しさん
2012/04/22(日) 18:56:07.15ポートって開けっ放しでいいのかなぁ。
開けて送って受けて閉じてを毎回高速に繰り返せばいいのかなぁ。
0866デフォルトの名無しさん
2012/04/22(日) 18:56:26.24これって多すぎなんかな?
0867デフォルトの名無しさん
2012/04/22(日) 18:58:36.99それXNA関係ない…。Winオンリーか否かで結構変わるよ。
tcp serverとかでぐぐればいくらでもでてくるって。
0868デフォルトの名無しさん
2012/04/22(日) 19:03:00.50GPUさんひぃひぃいうのかなあ。
0869デフォルトの名無しさん
2012/04/22(日) 19:06:51.84UDPだけどこゆのどう?
ttp://salaam.codeplex.com/
0870デフォルトの名無しさん
2012/04/22(日) 19:07:00.15難しい数学的部分やデバイス関連もライブラリでやれるて、ほどよく3Dを理解しながらやれる感じ
エンジンは更に楽だけど、それで培った知識が他で使えるかといったら微妙
絵描きが画像フォーマットのアルゴリズムを理解しなくてもいいという感じに近い
0871デフォルトの名無しさん
2012/04/22(日) 19:15:15.35培った知識か…
エンジンでもSRTやらQuarternionやらの知識必要だと思う。
各種用語わかんないともち使えないし。
プロがエンジン使ってる時点で世間で要求されるのはエンジン上の知識とも
とれるわけで。そもDX叩くのが必要になる機会ってなさそ。
あと、学習というのは必要時に必要なぶん、行うべきことだと思う。
0872デフォルトの名無しさん
2012/04/22(日) 19:32:10.830873デフォルトの名無しさん
2012/04/22(日) 19:36:57.98とっつきやすいんでわ?以前モデラのひとが1週間でそこそこ形になるもの
つくってるって話題になったような。
XNAって逆にやればやるほど深みにはまっちゃうような気が。
FPSとの戦いはもうやだよ…
0874デフォルトの名無しさん
2012/04/22(日) 20:20:59.600875デフォルトの名無しさん
2012/04/22(日) 20:27:37.320876デフォルトの名無しさん
2012/04/23(月) 00:10:27.39ドキュメントも
0877デフォルトの名無しさん
2012/04/23(月) 01:18:53.78サンプルはJScriptが多いようだけどC#しか使ったことない
0878デフォルトの名無しさん
2012/04/23(月) 02:08:22.60app hubのゴミはサンプルといわない。もうちょっと頑張って、使いまわし
しやすくしたり、高度な感じにできるだろうに。
webにソース付きのも多いけど大体2008年あたりから更新サイト減ってる。
対してunityサンプルは高品質かつ完成品に近いサンプルが多い。
もち今が旬だから更新頻度も高い。よって、そゆのじゃUnityにゃ勝てん。
0879デフォルトの名無しさん
2012/04/23(月) 02:11:17.64向こうに行けばいいのに
0880デフォルトの名無しさん
2012/04/23(月) 02:12:14.08気がまわらなくてすまんね。でも、app hubのサンプルは正直お察しレベルじゃない?
初学者のお勉強用くらいのものだと思う。
0881デフォルトの名無しさん
2012/04/23(月) 02:13:49.15レス見ればわかると思うけど、俺は別にunity信者じゃないです。
そもそもエンジンのなかで特にunityを特別視してもない。
0882デフォルトの名無しさん
2012/04/23(月) 05:08:37.35やっぱ仕様人口はJavaScriptが多そう。
でも、JavaScript使ってるプロジェクトは軒並み、コード量増えてきたら泣いてる印象。
自分の観測範囲内での話だけど。
0883デフォルトの名無しさん
2012/04/23(月) 12:06:45.30この事に関してだけはGoogleさんの言う通りだと思う
0884デフォルトの名無しさん
2012/04/23(月) 13:37:51.190885デフォルトの名無しさん
2012/04/23(月) 15:10:29.21この流れを見てさらに移行が進む
0886デフォルトの名無しさん
2012/04/23(月) 15:27:53.66やりたいことがどんどん描けるね
初心者の俺でも2日でマップと生物を自動生成できるようになった
あとはAI作って生態系作るだけ
XNAは1週間かかっても座標変換など3D表示の仕方で停滞
DxLibも同じところで停滞
0887デフォルトの名無しさん
2012/04/23(月) 16:46:01.400888デフォルトの名無しさん
2012/04/23(月) 19:11:23.100889デフォルトの名無しさん
2012/04/23(月) 19:38:18.360890デフォルトの名無しさん
2012/04/23(月) 20:57:46.790891デフォルトの名無しさん
2012/04/23(月) 22:15:16.900892デフォルトの名無しさん
2012/04/23(月) 22:17:34.840893デフォルトの名無しさん
2012/04/23(月) 22:20:05.620894デフォルトの名無しさん
2012/04/23(月) 22:26:41.79不満もかなりあるからなぁ…
XNAはほんときれいな設計になってるんだけどなぁ…
0895デフォルトの名無しさん
2012/04/24(火) 00:49:00.730896デフォルトの名無しさん
2012/04/25(水) 01:30:20.090897デフォルトの名無しさん
2012/05/01(火) 19:36:36.540898デフォルトの名無しさん
2012/05/02(水) 15:15:37.130899デフォルトの名無しさん
2012/05/03(木) 14:10:23.66XNAでViewport.Project関数を使ってワールド座標をスクリーン座標に変換してるんだけど
カメラの後ろにある物の座標まで変換されてしまうよ。
これを防ぐ方法無いですか?
0900899
2012/05/03(木) 14:13:47.06あるワールド座標がカメラの後ろにあるか前にあるか判定する方法ないですか?
0901デフォルトの名無しさん
2012/05/03(木) 14:42:20.120902デフォルトの名無しさん
2012/05/04(金) 14:27:47.35カメラのビューカリング(写っているいるものを判定)がやりたいのなら、
new BoundingFrustum(camera.View * camera.Projection).Contains()
使えばいいよ。
アクティブなXNA仲間がいて少し嬉しい。お互いがんばろ。
0903デフォルトの名無しさん
2012/05/04(金) 18:48:02.89ここ人いたのかw
対象の座標に視点のワールド変換行列の逆行列をかけてZのプラスマイナスで判定してた。
その方法試してみる。
0904デフォルトの名無しさん
2012/05/04(金) 21:23:34.41たとえば、3角形のテクスチャの淵を赤くて太い線で囲うような処理です。
簡単にできそうだったから、しばらく調べたのですが、方法を見つけることができませんでした。
ご教授お願いします。
0905デフォルトの名無しさん
2012/05/05(土) 07:59:49.010906デフォルトの名無しさん
2012/06/15(金) 21:26:28.99Unityは2ヶ月ぐらい触りました。XNAの勉強がしたいです
0907デフォルトの名無しさん
2012/06/23(土) 12:27:24.54http://pc.watch.impress.co.jp/docs/column/kaigai/20120622_541879.html
XNAは実質メンテナンスモード?
未来は明るくなさそうだな
0908デフォルトの名無しさん
2012/06/24(日) 07:16:42.820909デフォルトの名無しさん
2012/06/24(日) 10:07:38.90鯖上でコンパイラ走らすんじゃね?
0910デフォルトの名無しさん
2012/06/24(日) 10:40:10.630911デフォルトの名無しさん
2012/06/24(日) 19:04:31.790912デフォルトの名無しさん
2012/06/24(日) 19:10:07.730913デフォルトの名無しさん
2012/06/24(日) 19:42:51.650914デフォルトの名無しさん
2012/06/25(月) 09:44:52.14生はめんどくさすぎでしょう
0915デフォルトの名無しさん
2012/06/25(月) 14:57:40.90最初のゲームコンストラクタで以下の設定と
graphics.PreferredDepthStencilFormat = DepthFormat.Depth32;
後に以下の方法がある気がしますが
GraphicsDevice.PresentationParameters.AutoDepthStencilFormat = DepthFormat.Depth32;
違いや優先度的なものはありますか?
0916デフォルトの名無しさん
2012/07/06(金) 14:40:59.75「ゲーム作りで学ぶC#」
自分はこれがいちばん解りやすかった。
3.0対応ってなってるけど全く問題ない。
0917デフォルトの名無しさん
2012/07/12(木) 04:35:55.59C#の理解さえあればいいから「独習C#」もあわせてよむといいお
0918デフォルトの名無しさん
2012/07/12(木) 08:53:43.790919デフォルトの名無しさん
2012/07/12(木) 20:59:09.310920デフォルトの名無しさん
2012/07/13(金) 19:31:40.91>>912
0921デフォルトの名無しさん
2012/07/13(金) 19:43:40.450922デフォルトの名無しさん
2012/07/13(金) 21:04:27.40C#も捨てるのか?
0923デフォルトの名無しさん
2012/07/14(土) 11:55:22.83C#の言語仕様自体はよいものだけどMSは.NETへの注力を抑える方針だと思う。
MSが展開するすべてでWinRTに統一する今後は仮想マシンの存在意義が薄れる。
MS的なXNAの存在意義も薄れてる。
0924デフォルトの名無しさん
2012/07/17(火) 17:42:19.80http://create.msdn.com/ja-JP/home/news/xnajapanmail_20120713
0925デフォルトの名無しさん
2012/07/19(木) 03:50:24.258は大コケするのだ
そんな来ない未来に照準を合わせてどうする
0926デフォルトの名無しさん
2012/07/19(木) 08:46:26.850927デフォルトの名無しさん
2012/07/19(木) 13:59:48.548がこけようが、.NETとXNAが弱まっていくのは変わんないよ。
8がこけるとMS離れが加速すると思う。
0928デフォルトの名無しさん
2012/07/20(金) 00:43:43.570929デフォルトの名無しさん
2012/07/20(金) 11:02:31.33かといって欠けりんごシュに流れるとも思えないのだが?
0930デフォルトの名無しさん
2012/07/24(火) 19:07:15.69本体ならどうかはわかりませんがVisualStudioでPCで動かす分には
重くなって設定数かえたりした
0931デフォルトの名無しさん
2012/07/24(火) 21:48:29.580932デフォルトの名無しさん
2012/07/24(火) 22:34:26.200933デフォルトの名無しさん
2012/07/24(火) 23:17:00.25弱まるではないけど
バージョンアップは無いだろうし対応もされなくなっていくだろうなあ。
専門学校で使ってるらしいけど彼らが可哀想杉
0934デフォルトの名無しさん
2012/07/24(火) 23:20:24.15それよく聞くんだけど、そこまで神経質になるなら最初からC+使ったほうが。
参照渡しでどれほどの違いが生まれるかテスト結果を
公開しているサイトはないだろうか?
0935デフォルトの名無しさん
2012/07/24(火) 23:30:58.94XNA5まではギリギリ出るんではないだろうか。
silverlightと対応してキリが良いし。
DirectX10対応とモバイルのシェーダ対応はしてくれるはずだ。
次世代XBOXはわからないけど、それで終わりかな。
パフォーマンスの話で気になったんだけど、
VertexBufferインスタンスを複数に分けることは、
ひとまとめにしてオフセットで切り替えるのと比べて遅くなるだろうか?
GraphicsDevice.SetVertexBuffer(vertexBuffer)を使うか
GraphicsDevice.SetVertexBuffer(vertexBuffer,vertexIndex)を使うかで。
0936デフォルトの名無しさん
2012/07/24(火) 23:31:46.420937デフォルトの名無しさん
2012/07/25(水) 21:01:24.78全てに3という数値を入れるよりも
全て変数にしてconstしたほうが軽くなる、という感じでしょうか
>>932
new Vector2()は使いまくっています
とりあえず重くなったら無駄に多かったキャラ数を減らす方向です。
0938デフォルトの名無しさん
2012/07/25(水) 21:18:29.28例えばVector3.TransformはVector3を返すものと
戻り値はvoidで引数をrefで渡してoutで結果を返すものがあるけど
前者は渡す値返す値それぞれコピーが発生するけど後者は参照渡してるだけだからコピーが発生しない、と。
PCで動かす分にはわりとどうでもいいけど、箱○で動かすとなると.NET CFのGCがポンコツだからGCでゲーム処理がしばらく止まったりする。
PCでもそこを使う処理が多いと露骨に影響したりするかもしれないけど、まず他の部分をいじって解決できそうなものであれば
他の部分を先に見直すとよろし。どんな物をどう作ってるかは知らんし。
0939デフォルトの名無しさん
2012/07/25(水) 21:54:27.55ありがとうございます。
Xbox本体のほうが影響大きいのか、、心配になってきたのでためします。
0940デフォルトの名無しさん
2012/07/25(水) 22:02:41.38値型と参照型について区別しておいたほうがいいよ。
値型はコピーしようがnewしようが、ヒープを消費しない。
0941デフォルトの名無しさん
2012/07/28(土) 19:11:41.65役に立ちそうだね
0942デフォルトの名無しさん
2012/07/29(日) 10:29:19.760943デフォルトの名無しさん
2012/07/30(月) 10:22:30.37アンチエイリアスかかってボヤけてしまうんですがこれはしかたないんでしょうか?
「2.0f」なら倍だからドット崩れしないかとも思いましたが
やはりボヤけてしまいます。
ドットをボヤけさせたくなければ二倍の大きさで登録しないとだめでしょうか。
0944デフォルトの名無しさん
2012/07/30(月) 11:13:09.12パラメタで設定できるよ。
昔のはBegin()の中で設定できたけど、今のはどこにあったかな。
0945デフォルトの名無しさん
2012/07/30(月) 11:57:44.04SamplerState を PointWrap か PointClamp にしてみ。
0946デフォルトの名無しさん
2012/07/30(月) 18:14:54.06ありがとうございます。
それのため拡大して登録していたのでできるとわかっただけで安心します。
しかし、それをどこで設定すればよいのかがわからないのです。
フィールドでしょうか?Begin()の中でしょうか?
0947デフォルトの名無しさん
2012/07/30(月) 18:24:23.76spriteBatch.Begin(SpriteSortMode.Immediate, BlendState.AlphaBlend, SamplerState.PointClamp, DepthStencilState.None, RasterizerState.CullCounterClockwise);
こんな感じか。
0948デフォルトの名無しさん
2012/07/30(月) 19:12:18.50これで小さい絵で軽くできそうです。
0949デフォルトの名無しさん
2012/07/30(月) 19:26:03.15素晴らしい。
容量節約になりますが、大きい絵を読み込むよりも
動作も軽くなるものでしょうか。
そうだとしたらなおうれしいです。
0950デフォルトの名無しさん
2012/07/30(月) 20:42:41.300951デフォルトの名無しさん
2012/07/30(月) 20:58:44.800952デフォルトの名無しさん
2012/07/30(月) 21:08:53.77ありがとうございます、そういう事なんです。
拡大処理をするゆえのコスト(それもドットバイドットで)と
大きいテクスチャを処理するゆえのコスト
両方考えられるのですが
前者のコストのほうが小さいといいのですが
逆だったら少し困りますねw
0953デフォルトの名無しさん
2012/07/31(火) 08:58:49.433Dポリゴン扱える人はすごいわ。
0954デフォルトの名無しさん
2012/07/31(火) 14:48:08.16なんだが、俺もまだわからんことが山のようになるなー。
0955デフォルトの名無しさん
2012/07/31(火) 23:27:55.240956デフォルトの名無しさん
2012/08/03(金) 20:30:52.850957デフォルトの名無しさん
2012/08/04(土) 11:37:27.04同時にならしても音量が増加しない設定方法があれば
教えていただきたいです。
仕様ならばあきらめて変数を使って回避する方法は考えてはいるのですが・・・
0958デフォルトの名無しさん
2012/08/04(土) 15:45:38.18「ビーム発射>ザコが同時死亡>爆音」がひどい
bool型の変数を組んでオフからオンになった瞬間にならして
(そのオンになると同時に音を鳴らす命令とオフに戻る命令をつむ)
1フレームに同じ音が同時再生されないようにしたら
無事爆音は解消しました。
0959デフォルトの名無しさん
2012/08/04(土) 23:09:20.86多謝!
0960デフォルトの名無しさん
2012/08/05(日) 01:57:36.32ところで、もう二度とこねぇよ あばよってシチュェーションでも
再見っていうのかなぁ中国語って・・・。
0961デフォルトの名無しさん
2012/08/05(日) 02:44:17.83日本語と同じで
すみません、またの機会に^^; →またの機会なんぞ望んでない
じゃなかろうかw
(続く保障もないのにto be コンテニュード書いちゃいそうなザコ製作者より)
0962デフォルトの名無しさん
2012/08/08(水) 02:06:07.86XNA Todayを見るにコミュニティは壊滅状態だが
0963デフォルトの名無しさん
2012/08/08(水) 15:30:34.45サンプルコードダウンロードできねぇ…
0964デフォルトの名無しさん
2012/08/08(水) 21:05:32.76ブラウザでF5押してみ
0965デフォルトの名無しさん
2012/08/09(木) 01:19:22.55やっぱり出来ないよ。例えば
http://msdn.microsoft.com/ja-jp/library/bb447672(v=xnagamestudio.40)
ここの「ViewportProjection_Sample.zip のダウンロード。」
からプロジェクト、ダウンロードしてみてよ。リンクが繋がってない
0966デフォルトの名無しさん
2012/08/11(土) 01:21:11.52知らなかったわ
これ知ってたらどんだけ効率あがったんだよちくそー
0967デフォルトの名無しさん
2012/08/11(土) 01:30:39.250968デフォルトの名無しさん
2012/08/12(日) 02:23:01.690969デフォルトの名無しさん
2012/08/12(日) 12:10:19.060970デフォルトの名無しさん
2012/08/12(日) 19:08:42.950971デフォルトの名無しさん
2012/08/12(日) 21:20:29.55パーティクル 3D
http://xbox.create.msdn.com/ja-JP/education/catalog/sample/particle_3d
0972デフォルトの名無しさん
2012/08/13(月) 10:40:42.350973デフォルトの名無しさん
2012/08/16(木) 20:56:50.080以上なら、0以下なら、みたいに最高感度がいいでしょうか。
一般的にどうなんだろう、少しは遊びを作ったほうがいいのかな。
0974デフォルトの名無しさん
2012/08/16(木) 21:28:07.160975デフォルトの名無しさん
2012/08/16(木) 21:59:59.980976デフォルトの名無しさん
2012/08/17(金) 01:15:54.810977デフォルトの名無しさん
2012/08/17(金) 10:49:52.08アクションゲームでも今時の感覚ならアリだと思うが?
デジタル入力を尊重したいならDPADでも動くように処理を振ったら良いし
ななめ移動に√2処理すればいいだろ
0978デフォルトの名無しさん
2012/08/17(金) 20:58:03.210979デフォルトの名無しさん
2012/08/19(日) 10:32:42.57パズルゲームとかで敏感すぎてイライラしたことあるな。
通常のアクションゲームはほとんどそんなことないのに。
0980デフォルトの名無しさん
2012/08/19(日) 15:51:39.930981デフォルトの名無しさん
2012/08/19(日) 16:35:41.82ちょっとくらい遊び入れてくれないと、勝手に入力されたことになっていらつく。
0982デフォルトの名無しさん
2012/08/19(日) 19:06:21.770983デフォルトの名無しさん
2012/08/19(日) 21:08:29.690984デフォルトの名無しさん
2012/08/19(日) 21:28:43.37レス数が950を超えています。1000を超えると書き込みができなくなります。