[過去ログ]
SlimDXについて語ろうぜ (197レス)
SlimDXについて語ろうぜ http://mevius.5ch.net/test/read.cgi/gamedev/1264902081/
上
下
前
次
1-
新
通常表示
512バイト分割
レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索
歴削→次スレ
栞削→次スレ
過去ログメニュー
43: 名前は開発中のものです。 [sage] 2010/10/24(日) 16:49:12 ID:0z3YDA8C 2次元エフェクトならWindows Presentation Foundation Pixel Shader Effects Libraryがお勧め 一通りまとまっててWPF使わなくても参考になる http://mevius.5ch.net/test/read.cgi/gamedev/1264902081/43
44: 名前は開発中のものです。 [sage] 2010/10/24(日) 17:13:50 ID:41k51lwY >>43 thx! まさにそれ落として読んでましたw サンプル動画も見たんですが、どう考えても宝の山ですww ただHLSLの基本がまだまだなので理解力がヤバイですorz ティーカップの人の本を買って熟読するしかないですね。 P.S. SlimDXの2DゲームエンジンってGorgonってのしかなさそうですね。 まぁ、自分用の作るから別にいいんですが、参考にしてみようかと。 SDL.netのスプライト周りが面白かったんで、その変も参考にしたいですね。 つーかGorgonはWin7(x64)だと何故
かインストールで弾かれるw .Net3.5は最初から入ってる筈なのにインストーラーが馬鹿なのかな? だからあれほどzipでくれと言ってるのに。 http://mevius.5ch.net/test/read.cgi/gamedev/1264902081/44
45: 名前は開発中のものです。 [] 2010/11/13(土) 09:04:43 ID:snFVsDxl TextLayoyt:SetDrawingEffect()に渡すIClientDrawingEffectの実装の仕方がさっぱりわからん C#での実装の仕方を教えてほしい http://mevius.5ch.net/test/read.cgi/gamedev/1264902081/45
46: 名前は開発中のものです。 [sage] 2010/11/13(土) 12:26:45 ID:qup/FXee DirectWrite使ったことないけど見てみたらComPointerに吹いた COMのIDWriteTextRendererをC#のCOM相互運用で実装して返せばいいのかな できなくはないんだろうけど俺には無理というかやりたくない http://mevius.5ch.net/test/read.cgi/gamedev/1264902081/46
47: 名前は開発中のものです。 [sage] 2010/11/14(日) 13:07:09 ID:VAytE0MM TextLayoutでクラスを実体化させたあとGetDrawingEffect()で取り出せる。(嘘) http://mevius.5ch.net/test/read.cgi/gamedev/1264902081/47
48: 名前は開発中のものです。 [] 2010/12/15(水) 17:22:05 ID:W0ff0zj1 visualstudio2010でslimdxsamplesのSimpleModel10をデバッグすると DXGI_ERROR_UNSUPPORTEDって出て途中で止まるんだけど理由わかりますか? http://mevius.5ch.net/test/read.cgi/gamedev/1264902081/48
49: 名前は開発中のものです。 [sage] 2010/12/15(水) 17:31:36 ID:D5FJhaCt >>48 ハードウェアがサポートしてないから。 ただ、サポートしてないと言っても色々あって、 プログラムが必要としてない機能をデバイスに要求してて失敗してるだけなら、 それを外すことで他の部分は動かせるようになる。 http://mevius.5ch.net/test/read.cgi/gamedev/1264902081/49
50: 名前は開発中のものです。 [] 2010/12/15(水) 21:24:32 ID:q2iTm1kx >>49 やっぱりハードの問題だったか。 ありがとうございます http://mevius.5ch.net/test/read.cgi/gamedev/1264902081/50
51: 名前は開発中のものです。 [sage] 2010/12/18(土) 01:42:46 ID:4XOJBpRQ SlimDX使ってる人少ないなぁ。 やっぱりC#でDirectX使うのは少数派なんだろうな。 MicrosoftはなぜDirectXサポートを止めたのだろうか。 無理矢理XNAに引きずり込みたかったのだろうけど。 http://mevius.5ch.net/test/read.cgi/gamedev/1264902081/51
52: 名前は開発中のものです。 [sage] 2010/12/18(土) 09:57:31 ID:JWorHuxc DirectX生で使うような人の多くは速度やらGCやらでC#は避けるんだろうなぁ あとドキュメントもほぼ全てC/C++向けに書かれてるし。 まぁ何だかんだ言ってC#の手軽さとXNAはよくあってると思う。 MSが作ってるだけあってよく作り込まれたフレームワークだし。 http://mevius.5ch.net/test/read.cgi/gamedev/1264902081/52
53: 名前は開発中のものです。 [sage] 2010/12/18(土) 11:43:06 ID:NqdLgtTb 悪い意味で他にライバルが居ないんだよな C++は別格としても、それ以外ではC#のほかに現実的な選択肢が無い http://mevius.5ch.net/test/read.cgi/gamedev/1264902081/53
54: 名前は開発中のものです。 [sage] 2010/12/18(土) 20:11:14 ID:4XOJBpRQ やっぱりC++が現実的だよね。 DX10以降になればWindows API Code Packが使えるのかな。 http://mevius.5ch.net/test/read.cgi/gamedev/1264902081/54
55: 名前は開発中のものです。 [sage] 2010/12/18(土) 21:50:41 ID:K2tyzowz 俺はアプリやゲーム自体はC++で作りたいんだけど エディタとかは簡単にC#で作りたいんだよね そこで困るんだよなぁ DirectXを使用しないC#なんて描画が遅くて話にならないし 使うにしても現状XNAしか選択肢が無いけれどXBOXの仕様にひっぱられて DirectX9までの中途半端な物しか使えない やっぱりC#から普通にDirectXを呼び出せるManagedDirectXの存在は 必須だったと思うんだが、なぜ開発をやめてしまったのか・・・ だからSlimDXには超期待している http://mevius.5c
h.net/test/read.cgi/gamedev/1264902081/55
56: 名前は開発中のものです。 [sage] 2010/12/18(土) 21:53:45 ID:JWorHuxc エディタなら配布のこともあまり考えなくて良いからSlimDXは良い選択だと思う http://mevius.5ch.net/test/read.cgi/gamedev/1264902081/56
57: 名前は開発中のものです。 [sage] 2010/12/18(土) 22:23:40 ID:4XOJBpRQ けどC#+SlimDXだと、DirectX+Net Framework+SlimDXが必要だからね。 SlimDxは添付できるし、DirectXもNet FrameworkもXP以降は最初から入って いるけど、今の最新にする場合はやっぱりインスコ必要だし。 そこが一番面倒なとこ。 SlimDxはDirectXの薄いラッパーだから、変に集約してなくて使いやすいので 選択肢としてはいいとは思う。 http://mevius.5ch.net/test/read.cgi/gamedev/1264902081/57
58: 名前は開発中のものです。 [sage] 2010/12/18(土) 22:56:19 ID:5bWq6Od2 まあD言語とかの選択肢がないではないけどな。 WPFとの組み合わせが確立できるといいんだけどなぁ。 http://mevius.5ch.net/test/read.cgi/gamedev/1264902081/58
59: 名前は開発中のものです。 [sage] 2010/12/18(土) 23:58:01 ID:4XOJBpRQ WPFはゲームには使えないだろ。 ブラウザゲー程度かと。 D言語は昨日サイト見てたけど、言語仕様がガラパゴスな感じ だったね http://mevius.5ch.net/test/read.cgi/gamedev/1264902081/59
60: 名前は開発中のものです。 [sage] 2010/12/19(日) 09:49:54 ID:+uUW/+wM D言語って言語仕様だけ見ればかなり良い言語だと思うんだけど。 基本はC系だしガラパゴスな感じってのがよく分からん。 ただ、これでゲーム作るとなるとC#なんて目じゃ無いぐらいドキュメントが少ないっていう。 http://mevius.5ch.net/test/read.cgi/gamedev/1264902081/60
61: 名前は開発中のものです。 [sage] 2010/12/19(日) 14:39:17 ID:tZJ4XwZS Dは互換性のない言語仕様変更をしょっちゅうやってるから実用言語としては話にならない C#も言語仕様は拡張しまくってるけど、MSだから上位互換は絶対に保たれる http://mevius.5ch.net/test/read.cgi/gamedev/1264902081/61
62: 名前は開発中のものです。 [sage] 2010/12/19(日) 14:55:42 ID:tl1Xfhrg >>61 D言語ってそんなに互換性のない仕様変更多いのか。 自作ゲームで採用するのを見送ってよかったぜ。 >>60 基本C系だけど、色んな言語のいろいろな機能を取り込んでいるから 機能多すぎと言った方がいいかもしれない。 まあ、基本だけ覚えて後は使わなければいいのだけど、それだとD言語 をわざわざ選択する必要はないし、ある機能を使ってこそ意味があると 思う。 http://mevius.5ch.net/test/read.cgi/gamedev/1264902081/62
63: 名前は開発中のものです。 [sage] 2010/12/19(日) 16:50:41 ID:+uUW/+wM なんかD言語スレ見たくなってしまったなw http://mevius.5ch.net/test/read.cgi/gamedev/1264902081/63
64: 名前は開発中のものです。 [sage] 2010/12/19(日) 17:15:07 ID:tl1Xfhrg あー、変な話降ってすまない。 元のSlimDXの話をどうぞ。 http://mevius.5ch.net/test/read.cgi/gamedev/1264902081/64
65: 名前は開発中のものです。 [sage] 2010/12/19(日) 19:59:21 ID:oIwD3nP1 優越決まっても、別に最初から最後まで それしか知らないそればかり使えない事は無い ゲハ板の住人でもあるまいし C言語わかってもDirectX SDKのDXUT読める奴はそう居ない シェーダーとか使いこなせるようになるまでは C#でもDでもいいんじゃないか http://mevius.5ch.net/test/read.cgi/gamedev/1264902081/65
66: 名前は開発中のものです。 [sage] 2010/12/19(日) 20:34:24 ID:+uUW/+wM むしろシェーダーとか使うようになるまでが言語の差が出てくると思うんだが 3Dの基礎はどの言語でも変わらない訳だし http://mevius.5ch.net/test/read.cgi/gamedev/1264902081/66
67: 名前は開発中のものです。 [sage] 2010/12/19(日) 21:34:42 ID:oIwD3nP1 曖昧な書き方して、意味を取り違えられたかな? CやC++で初めるのは良いよ 後々PIXを使えないと死ぬので、どのみちCヘッダーぐらい 読め無いと生き残れない だけど、DXUTをガチで相手したら駄目 Cがこういう糞言語という訳でない http://mevius.5ch.net/test/read.cgi/gamedev/1264902081/67
68: 名前は開発中のものです。 [sage] 2010/12/19(日) 22:36:29 ID:EYwGO04p DXUTはそれ自体が大規模化しちゃって、 DirectX(3D)の使い方を調べるのはやや不向きになっちゃってるのが残念だよね。 その点はSlimDXのサンプルのほうが簡潔で分かりやすい。 そいや、C#でプリミティブのVertexBuffer用のデータを作成するのって 皆はどうやってる? やっぱりstructを定義して1個ずつインスタンスを初期化していくんですかね。 この部分、ジェネリックがうまいこと動かずにすごく苦労する。 http://mevius.5ch.net/test/read.cgi/gamedev/1264902081/68
69: 名前は開発中のものです。 [sage] 2010/12/19(日) 22:48:47 ID:2VEpyIA3 unsafeでポインタ使いまくり SlimDXなんか使ってる時点で安全性なんか関係ない http://mevius.5ch.net/test/read.cgi/gamedev/1264902081/69
70: 名前は開発中のものです。 [sage] 2010/12/20(月) 22:37:09 ID:YK+Rc81C ポインタ使いまくりなら最初からC++でやればいい気がするが? http://mevius.5ch.net/test/read.cgi/gamedev/1264902081/70
71: 名前は開発中のものです。 [sage] 2010/12/20(月) 23:00:57 ID:Ml895Bvs なんでそういう極論になるかな。 速度的にクリティカルなところとか、どうしても低レベルな処理をしたいところはあるだろ。 そういう箇所って言うのは一般にはほんの一部なんで、 そこのためだけに面倒なC++を使う必要がないのは大きなメリット。 http://mevius.5ch.net/test/read.cgi/gamedev/1264902081/71
72: 名前は開発中のものです。 [sage] 2010/12/21(火) 00:32:03 ID:N/+0RCBN ところで結構作り進めて今更気がついた。 DirectX9でのロスト対策がどうしようもないんだけどどうすればいい? Device.Resetかけた時点でInvalidCallを吐き出して進まん・・・ http://mevius.5ch.net/test/read.cgi/gamedev/1264902081/72
73: 名前は開発中のものです。 [sage] 2010/12/21(火) 01:17:54 ID:FsRX6CKW >>72 Direct3D9以前のデバイスロスト対策は、それはもう大変なんだよ。 今からやるならおすすめしないね。 仕事上、どうしてもやらないとというなら頑張れ。 >>69-71 ちょっと違うんだな。VertexBufferは速度面に問題があるのではなくて、 ジェネリックが使えない部分で困ってるんだよ。 C++のように何でもかんでもテンプレート化ということはできないから。 http://mevius.5ch.net/test/read.cgi/gamedev/1264902081/73
74: 名前は開発中のものです。 [sage] 2010/12/21(火) 05:58:42 ID:UFi6vgUK わからん。専用のstruct定義して配列流しこむ以外に何かあるの? もしかしてC++でいうTMPとか駆使してFVFや頂点宣言を自動で解決したいとかいう話? http://mevius.5ch.net/test/read.cgi/gamedev/1264902081/74
75: 名前は開発中のものです。 [sage] 2010/12/21(火) 08:52:18 ID:FsRX6CKW >>74 MemoryStreamにバイト単位で書き込んでいく方法もある。 どうもこのあたりの部分をジェネリックでうまく一般化出来ないんだよね。 C#相談室あたりで質問したけど無理、という結論になったことが。 http://mevius.5ch.net/test/read.cgi/gamedev/1264902081/75
76: 名前は開発中のものです。 [] 2010/12/21(火) 10:07:33 ID:IUyb5141 なんだコイツ? 会話する気が無いのか? VertexBufferの作成やSetFVFが簡単にできる C++の構文で、C#にはできないのはな〜だ? ってwなぞなぞかよw 聞きかじった知識があるだけで、何も理解してない だろコレ http://mevius.5ch.net/test/read.cgi/gamedev/1264902081/76
77: 名前は開発中のものです。 [sage] 2010/12/21(火) 11:45:06 ID:FsRX6CKW >>76 書かれてるレスをなぞなぞ呼ばわりしてるんだったら、 理解してないのはお前じゃないか。 SlimDXはC#でDirectXを扱えるようになる便利なライブラリだが、 VertexBufferのフォーマットを色々と弄りたい時に C#の文法上の制限から扱いにくい場合があるという話をしているだけ。 http://mevius.5ch.net/test/read.cgi/gamedev/1264902081/77
78: 名前は開発中のものです。 [sage] 2010/12/21(火) 11:59:41 ID:IUyb5141 じゃあ、C++文法上だとどんな書き方ができる? http://mevius.5ch.net/test/read.cgi/gamedev/1264902081/78
79: 名前は開発中のものです。 [sage] 2010/12/21(火) 13:40:09 ID:589aNUur 頂点扱うメソッドやクラスはなんでもかんでも<TVertex>と書きたいということ? インターフェイス使って interface IPosition3D { Vector3 Position3D { get; set; } } interface ITexCoord2D { Vector2 TexCoord2D { get; set; } } where TVertex : struct, IPosition3D, ITexCoord2D みたいな感じで可能 構造体の場合は実行時に特殊化されるのでインターフェイス経由のメンバアクセスでもボックス化は発生しないけど プロパティ経由だからインライン展開されたとして
もコピーは消えないのでどうしても遅くなるのは仕方ない MemoryStreamとか使っていい程度なんだったら別に問題にはならんでしょ http://mevius.5ch.net/test/read.cgi/gamedev/1264902081/79
80: 名前は開発中のものです。 [] 2010/12/21(火) 14:33:36 ID:IUyb5141 ガキはほっといて、C#のメタプログラミングで VertexDeclarationの自動化を解決させちまおうぜ C++の静的じゃなくて、AttributeとReflectorを使った動的メタプログラミング 定義部 struct HOGEVertex { [VertexElement(type = DeclarationType.D3DDECLTYPE_FLOAT3 ,usage = Decl arationUsage.D3DDECLUSAGE_POSITION)] Vector3 Position; [VertexElement(type = DeclarationType.D3DDECLTYPE_FLOAT2 ,usage = Decl arationUsage.D3DDECLUSAGE_TEXCOORD)]
Vector2 UV; ... 読み込み部 VertexElement[] ReadFVFAttribute<T>() where T : struct { var vertexElements = new List<VertexElement>(); foreach(var fi in typeof(T).GetFields()) { foreach(var attr in fi.GetType().GetCustomAttributes(false)) { if (attr.GetType() == typeof(VertexElementAttribute) ) vertexElements.add(new 略); ... result = vertexElements.ToArray(); } http://mevius.5ch.net/test/read.cgi/gamedev/1264902081/80
81: 名前は開発中のものです。 [sage] 2010/12/21(火) 15:10:37 ID:FsRX6CKW >>80 なんじゃこりゃw すごい動的なコードだなぁ。 VertexBuilder的なクラスの階層でジェネリックにすればいいのかなと 思って色々試したんだけど、うまくいかなかったんだよね。 http://mevius.5ch.net/test/read.cgi/gamedev/1264902081/81
82: 名前は開発中のものです。 [sage] 2010/12/21(火) 16:03:41 ID:589aNUur それだったら別にリフレクションなんか使わなくても VertexElement[]を返すプロパティを宣言したインターフェイスをHOGEVertexに実装させて whereで要求すればいいだけじゃないの? http://mevius.5ch.net/test/read.cgi/gamedev/1264902081/82
83: 名前は開発中のものです。 [sage] 2010/12/21(火) 16:08:34 ID:IUyb5141 それC++でやってたソースみた事あんのか? なんだかな C++もC#も知らない その自分が未熟なことも知らない しまいには人を見下すだけで会話もできない http://mevius.5ch.net/test/read.cgi/gamedev/1264902081/83
84: 名前は開発中のものです。 [sage] 2010/12/21(火) 16:10:35 ID:IUyb5141 >>82 うん 俺もこんなの使って無い http://mevius.5ch.net/test/read.cgi/gamedev/1264902081/84
85: 82 [sage] 2010/12/21(火) 16:15:24 ID:589aNUur 直接関係ないけどGetCustomAttributesがフィールドの宣言順に返ってくる保証は無いよ。 順番が保証されてるフィールド情報の列挙方法はリフレクションAPIには無いので、 VertexElement属性には明示的にインデックスを付ける必要がある。 どうせリフレクション使うんだったら、staticプロパティとしてVertexElement[]を返すプロパティを定義してしまって そっちに属性を付けた方がいいかもしれない。 http://mevius.5ch.net/test/read.cgi/gamedev/1264902081/85
86: 名前は開発中のものです。 [sage] 2010/12/21(火) 17:09:39 ID:IUyb5141 >>85 >宣言順に返ってくる保証は無いよ 本番では使って無くてよかったw 後の継承設計を考えると、staticなVertexDeclarationを 渡す、IVertexDeclarationProvider{ GetDeclaration(); }じゃないかな。 たぶん、みんなこういうことしてるのではないかなぁ DrawableObj<T> where T: struct , IVertexDeclarationProvider { Draw() //毎フレーム { gd.VertexFormat(T.GetDeclaration()); vb.SetData(T_array); } } class HogeEffected
Obj : DrawableObj<HogeVertexA> リフレクション使うとしたら、ゲーム開始やLoading中に、 プロジェクト中のstaticな要素をパラメータ付けて初期化するとか(破棄&GCするとか) 。 ゲームのメインループ外に処理にできないと設計の意味が無い。 http://mevius.5ch.net/test/read.cgi/gamedev/1264902081/86
87: 名前は開発中のものです。 [sage] 2010/12/21(火) 18:38:36 ID:Xai41NPW インターフェイスのstaticメンバはサポートされてないので staticフィールドを返すインスタンスメンバとして実装してdefault(T).GetDeclaration()かな http://mevius.5ch.net/test/read.cgi/gamedev/1264902081/87
88: 名前は開発中のものです。 [sage] 2010/12/21(火) 20:51:48 ID:N/+0RCBN >>73 亀レスすまぬ 普通にロスト起こした時にSpriteやらのリセットをしてなかっただけだった。無事に対策できたっぽい 失礼しました http://mevius.5ch.net/test/read.cgi/gamedev/1264902081/88
89: 名前は開発中のものです。 [sage] 2010/12/21(火) 23:09:44 ID:IUyb5141 >>87 ゴメンtypo × T.GetDeclaration() //コンパイルできません ○ T_array[0].GetDeclaration() //こんなもんかな それから型パラメータは TVertex とかにしないとスゲー読みづらい http://mevius.5ch.net/test/read.cgi/gamedev/1264902081/89
90: 名前は開発中のものです。 [sage] 2010/12/21(火) 23:25:18 ID:Xai41NPW いやdefault(T).GetDeclaration()のほうがいい 構造体なのでdefault(T)でインスタンスが作れる http://mevius.5ch.net/test/read.cgi/gamedev/1264902081/90
91: 名前は開発中のものです。 [sage] 2010/12/21(火) 23:36:17 ID:Xai41NPW それと、リフレクション使うならこういうふうにシングルトンでキャッシュするのがいいよ class VertexInfo<TVertex> { public static readonly VertexInfo<TVertex> Instance = new VertexInfo<TVertex>(); public VertexElement[] Format { get; set; } private VertexInfo() { /*ここでリフレクション使ってFormatを初期化*/ } } http://mevius.5ch.net/test/read.cgi/gamedev/1264902081/91
92: 名前は開発中のものです。 [sage] 2011/01/23(日) 21:16:58 ID:v5GChX7G 俺MDXから入った身なんだけど、Spriteでの拡大とか回転に悩んでるんだが。 SlimDXでのDirectX9オンリーで作りたいんだけど、MDXで作ってた時みたいにSprite.Draw2DでやろうとしてもDX10/11にしか無いんだよね。 要するにSlimDXでSpriteの拡大とか回転ってどうやんの? 本家DirectXの知識は殆ど無い。 http://mevius.5ch.net/test/read.cgi/gamedev/1264902081/92
93: 名前は開発中のものです。 [sage] 2011/01/23(日) 21:28:14 ID:IvAtt79g Transformに変換行列入れる ネイティブのD3DXのラッパーっていうのはなんか気持ち悪いからSpriteは自作してるなあ http://mevius.5ch.net/test/read.cgi/gamedev/1264902081/93
94: 名前は開発中のものです。 [sage] 2011/01/23(日) 22:19:47 ID:v5GChX7G >>93 いまいちキチンと分かって無いんだけど、Matrix.Transformation2Dってものがあったんで試してみた。 が、表示されん。きちんと描画してるはずなのに何故だ・・・ http://mevius.5ch.net/test/read.cgi/gamedev/1264902081/94
95: 名前は開発中のものです。 [sage] 2011/01/24(月) 00:11:56 ID:ZV2/0eH0 >>94 SlimDXのサンプルは単純でよく出来てるから、 それを真似するところから始めるといいよ。 http://mevius.5ch.net/test/read.cgi/gamedev/1264902081/95
96: 名前は開発中のものです。 [sage] 2011/01/24(月) 17:28:23 ID:SbpYcvOy サンプルを見てみたが、SpriteとTexture使った拡大とか無かったわ・・・ うーむ、俺の考え違いだったのかも知れない。やはり一から勉強しなおす必要がありそうだ。 http://mevius.5ch.net/test/read.cgi/gamedev/1264902081/96
97: 名前は開発中のものです。 [sage] 2011/01/24(月) 17:33:40 ID:ZV2/0eH0 >>96 俺の場合、2Dの板ポリをGPU描画することが大半なので専用の計算をしている。 座標系が2D系と同じにすることを意図して、 Z軸のマイナス側からカメラを向ける。 そして板ポリの座標系がそれに合うようにワールド座標を設定しておく方式。 http://mevius.5ch.net/test/read.cgi/gamedev/1264902081/97
98: 名前は開発中のものです。 [sage] 2011/01/24(月) 17:45:20 ID:SbpYcvOy >>97 なるほど、ちょっとじっくり勉強しつつ試してみます。ありです。 ただMDX見たいなDraw2Dのように簡単に拡大とか出来たりする奴はSlimDXのDX9には無いってことでいいのかな。 ずっとMDXに頼ってきて最近SlimDXに移ってきたから・・・ 無知ですみません http://mevius.5ch.net/test/read.cgi/gamedev/1264902081/98
99: 名前は開発中のものです。 [sage] 2011/01/24(月) 18:02:45 ID:ZV2/0eH0 >>98 それならなおさらD3DXSpriteを使えばいいじゃん。 http://mevius.5ch.net/test/read.cgi/gamedev/1264902081/99
100: 名前は開発中のものです。 [sage] 2011/01/26(水) 21:53:12 ID:q2pNSJtE 度々すまない。 俺が思ってる簡単に拡大とかって言うのは、 Sprite.Draw(位置,Rectangle,サイズ,ロケーション) 見たいなもので、それが無いのかなと甘い考えをしてた。 D3DXSpriteと言われても良く分からなかった。 もうこれで分からなかったら迷惑になりそうなので引きます・・・ http://mevius.5ch.net/test/read.cgi/gamedev/1264902081/100
101: 名前は開発中のものです。 [sage] 2011/01/26(水) 22:59:48 ID:Dys02ewd >>100 D3DXFontには変換座標かけつつ描画するモードがあるから、 たぶんSpriteにもあるはずなんだけど。 ただし、D3DXFontの場合は描画が遅くなったのであしからず。 (なぜかというと、変換かけない場合はVertexエンジンを使用せずに描画するから) http://mevius.5ch.net/test/read.cgi/gamedev/1264902081/101
102: 名前は開発中のものです。 [sage] 2011/01/26(水) 23:00:52 ID:q2pNSJtE >>101 なるほど。試してみます。 お騒がせしました http://mevius.5ch.net/test/read.cgi/gamedev/1264902081/102
103: 名前は開発中のものです。 [sage] 2011/02/21(月) 01:33:37.79 ID:FjA/EdKJ SlimDX初心者です。 画像を表示するためにDirect3D9でテクスチャ表示をしようと思っているのですがどうしたら良いのか教えていただけないでしょうか? DirectInputを利用したキーボード入力、Direct3D9を利用した背景色の設定は出来ました。 http://mevius.5ch.net/test/read.cgi/gamedev/1264902081/103
104: 名前は開発中のものです。 [sage] 2011/02/21(月) 04:26:22.73 ID:e+9Xrrk1 >>103 サンプルプロジェクトのソースコードを読め。 http://mevius.5ch.net/test/read.cgi/gamedev/1264902081/104
105: 名前は開発中のものです。 [sage] 2011/02/21(月) 20:14:03.45 ID:da8+AaWU >>103 とりあえずこのへん http://www21.atwiki.jp/csharpgamedev/pages/18.html http://mevius.5ch.net/test/read.cgi/gamedev/1264902081/105
106: 名前は開発中のものです。 [age] 2011/03/12(土) 19:58:15.04 ID:gPTtXzoi age http://mevius.5ch.net/test/read.cgi/gamedev/1264902081/106
107: 名前は開発中のものです。 [sage] 2011/03/24(木) 15:10:27.06 ID:o/XjgpCP 3DモデルのツールみたいなものをSlimDXで作ろうとしてるのですが、別ウィンドウでダイアログを 出してボタン等のコントロールを表示することってできるのですか? http://mevius.5ch.net/test/read.cgi/gamedev/1264902081/107
108: 名前は開発中のものです。 [sage] 2011/03/24(木) 15:12:42.59 ID:+jtjlJX2 もちろんできる 普通にWinFormsやWPFで作って表示すればいいだけ というより、フォーム上に貼り付けたコントロールの上にSlimDXの描画を行う http://mevius.5ch.net/test/read.cgi/gamedev/1264902081/108
109: 107 [sage] 2011/03/24(木) 16:52:06.20 ID:o/XjgpCP Winformに配置する部分ってフォームデザイナも使えるんですか? http://mevius.5ch.net/test/read.cgi/gamedev/1264902081/109
110: 名前は開発中のものです。 [sage] 2011/03/24(木) 17:00:46.83 ID:+jtjlJX2 使える SlimDXで描画したい部分にはパネルでも貼り付けといて そのウィンドウハンドルをDeviceのコンストラクタに渡せ http://mevius.5ch.net/test/read.cgi/gamedev/1264902081/110
111: 107 [sage] 2011/03/24(木) 17:14:42.98 ID:o/XjgpCP なるほど、そのやり方でやってみます。 ありがとうございました。 http://mevius.5ch.net/test/read.cgi/gamedev/1264902081/111
112: 107 [sage] 2011/03/24(木) 17:48:46.54 ID:o/XjgpCP フォーム表示までできたのですが、 // var form = new RenderForm("SlimDX Sample"); ←はコメントアウトして var device = new Device(new Direct3D(), 0, DeviceType.Hardware, パネル.Handle, CreateFlags.HardwareVertexProcessing, new PresentParameters() というやり方で合っていますでしょうか? http://mevius.5ch.net/test/read.cgi/gamedev/1264902081/112
113: 名前は開発中のものです。 [sage] 2011/03/25(金) 10:54:48.65 ID:L6sPV2wn SlimDXのサンプルが掲載されているWebサイトって無いですか? 海外サイトでも構いません。 http://mevius.5ch.net/test/read.cgi/gamedev/1264902081/113
114: 名前は開発中のものです。 [sage] 2011/03/25(金) 21:09:55.09 ID:vv767kg8 >>112 ウィンドウハンドルを入れるところは合ってるけど、色んなものが抜けてる。 とりあえずDirect3Dオブジェクトを外に出して、更にPresentParametersに 適切な値を設定するところから。 >>113 ttp://www21.atwiki.jp/csharpgamedev/pages/18.html あとSlimDX SDKのサンプル。 http://mevius.5ch.net/test/read.cgi/gamedev/1264902081/114
115: 名前は開発中のものです。 [sage] 2011/03/25(金) 21:18:59.16 ID:8nQu2/1X XNACCのサンプルとDirectXSDKのサンプル(C++)が一番役立つ http://mevius.5ch.net/test/read.cgi/gamedev/1264902081/115
116: 名前は開発中のものです。 [sage] 2011/03/29(火) 23:06:19.15 ID:7uGGHTvI 2点引っかかっている箇所があります。 どなたかヒントなどお持ちの方いらっしゃいましたら教えてください…。 ? 新しいテクスチャを作る際のTexture2DDescriptionのパラメータで Usage=Default OptionFlags=None CpuAccessFlags=None この3つのどれか一つでもDefault/None/Noneから別のに変えるとnew Texture2Dのところ(*)でInvalid Callエラーが出ます ネット上では同様の症例にたどり着けなかったのですが可能性のある原因など思い当たる方は
いらっしゃいますか? (Default/None/Noneの状態だと普通に作れます) ////////////////////////////////////////// Texture2DDescription testTexDesc = new Texture2DDescription(); //他のパラメータ省略 testTexDesc.Usage = ResourceUsage.Default; testTexDesc.OptionFlags = ResourceOptionFlags.None; testTexDesc.CpuAccessFlags = CpuAccessFlags.None; Texture2D testtex = new Texture2D(dx11Device, testTexDesc); //* ////////////////////////////////////////// http://mevius.5ch.net/test/read.cgi/gamede
v/1264902081/116
117: 名前は開発中のものです。 [sage] 2011/03/29(火) 23:06:29.29 ID:7uGGHTvI ? テクスチャ(Texture2D)からピクセルを読み出したかったのでGetPixel的なメソッドを作っているのですが Direct3D11以降、テクスチャのロックをするメソッドはdx11デバイスのImmediateContext.MapSubresource(〜);で正しいでしょうか? (もしくはtex.AsSurface(〜).Map(〜)…?) Direct3D10までのTexture2DインスタンスにはMap()メソッドがあるようなのですがDirect3D11のTexture2Dには見当たらず、調べてみたら前述のメソッドがそれっ
ぽいような感じを受けました。 テクスチャのCpuAccessFlagを変更できないのでそのメソッドでいいのか確認できないのですが、もし定石のやり方があれば知っておきたいと思っています。 /////////環境 Windows7 64bit Visual C# 2010 Express Edition SlimDXのバージョンは昨日までJune 2010でした 今日March 2011にアップデートして参照設定置き換えましたが症状はまったく変化しませんでした 参照DLLはx86Verとx64Ver両方で試しましたがどちらも同じでした。 ろくに英語読めないながら海外のサイトなどをちょっと見たところでは Win7 64bitという
のがどうも相性が悪そうな感じを受けるのですが… http://mevius.5ch.net/test/read.cgi/gamedev/1264902081/117
118: 名前は開発中のものです。 [sage] 2011/04/05(火) 18:00:52.28 ID:+LS+lOHR 海外でもいいので情報交換をしてるフォーラムってないんですか? http://mevius.5ch.net/test/read.cgi/gamedev/1264902081/118
119: 名前は開発中のものです。 [sage] 2011/04/06(水) 02:47:44.18 ID:PtBPsaxE gamedev.netはslimDX関連のスレッドをよく見かけるなぁ http://mevius.5ch.net/test/read.cgi/gamedev/1264902081/119
120: 名前は開発中のものです。 [sage] 2011/04/09(土) 10:55:44.62 ID:sKYCeLl0 SlimDXでDirectX関連で確保したメモリは、最後に手動で開放しないと残ってしまうんですか? http://mevius.5ch.net/test/read.cgi/gamedev/1264902081/120
121: 名前は開発中のものです。 [sage] 2011/04/09(土) 12:36:51.53 ID:QWLtEJqL うん たしかナントカManagerみたいなのがあって そのstaticメンバとして全てのDirectX関連のリソースへの強参照を保持してて わざわざGCを動かなくしてる糞設計だったはず http://mevius.5ch.net/test/read.cgi/gamedev/1264902081/121
122: 名前は開発中のものです。 [sage] 2011/04/09(土) 13:35:47.32 ID:oX/gW5Mu オレは自前でリソース専用のガベコレを用意して、 明示的に解放させてるな(システムとしては参照カウンタ方式) SlimDX付属のフレームワークもそうなってるだろ? http://mevius.5ch.net/test/read.cgi/gamedev/1264902081/122
123: 名前は開発中のものです。 [sage] 2011/04/12(火) 16:16:23.71 ID:Y/I5qVEj SlimDXにあるUnprojectってスクリーン空間からオブジェクト空間にベクトルを射影させる関数ですか? MDXにあるUnprojectとは引数が違っている様に思うのですが、使い方が分かりません。 http://mevius.5ch.net/test/read.cgi/gamedev/1264902081/123
メモ帳
(0/65535文字)
上
下
前
次
1-
新
書
関
写
板
覧
索
設
栞
歴
あと 74 レスあります
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.012s