14/12/13 11:46:25.95 Dafl5gLs.net
回答する人も、質問する人も必ず読んでください
これらに当てはまる人のための質問スレです。
1.C/C++は多少理解している。
2.最近DirectXを始めたばかり
3.SDKを見ても、Googleで検索しても、いまいち理解できない人
4.余計な雑談は不要ですよ
【 回答してくださる方 】
・ できるだけ優しく質問に答えてあげてください。
・ 優しく教えるのが嫌でしたら、解決するためのヒントだけでも結構です。
「ググれ」「SDK見れ」以外の回答でおながいします。
・ 神ですら理解不能な質問は無視して下さい。
【 質問する方 】
・ どんな事で躓いているのか明確にしよう。
・ 長くならないなら躓いている部分のコードを晒してみれ。
・ 解決した場合、お礼を言うのは当然だが、何をどうしたら解決したかを明確に書こう。
・ 回答して貰ったら、出来るだけお礼もしよう。
>>2リンク
2:デフォルトの名無しさん
14/12/13 11:47:05.64 Dafl5gLs.net
現在の最新バージョンはDirectX 11.2です。
Games for Windows and the DirectX SDK
URLリンク(blogs.msdn.com)
DirectX Tool Kit
URLリンク(directxtk.codeplex.com)
DirectXTex texture processing library
URLリンク(directxtex.codeplex.com)
C#でDirectX又はXNA系の情報を探してる人は
MonoGame
URLリンク(www.monogame.net)
SharpDX
URLリンク(sharpdx.org)
【C++】 DirectX初心者質問スレ Part38 【C】
スレリンク(tech板)
3:デフォルトの名無しさん
14/12/13 11:50:40.78 zKb7f+m/.net
スレ建て被った
向こうはそのまま落としましょう(´・ω・`)
4:デフォルトの名無しさん
14/12/13 11:58:16.33 zKb7f+m/.net
DirectX12関連
URLリンク(blogs.msdn.com)
5:デフォルトの名無しさん
14/12/13 12:02:19.87 Dafl5gLs.net
被らないようにと2分ほど様子見したのが逆に仇となったか…
6:デフォルトの名無しさん
14/12/15 18:23:29.27 ILL9b4Is.net
もうちょっと頑張ってスレ伸ばさないと、向こうに書き込まれて、両方ぐだぐなになる予感。
7:デフォルトの名無しさん
14/12/15 18:37:37.47 WC1FFBtF.net
頑張るも何も、何か質問がないと・・・
8:デフォルトの名無しさん
14/12/15 22:07:09.07 4crcxMI+.net
すいません質問させてください。
1週間くらい前にDirectX11を始めて、スクリーン座標で画像を出せました。
立方体も表示させてみて、2D画像を透過してみたのですがちゃんと透過されませんでした。
α値が0の場合はピクセルシェーダーでdiscardをしてとりあえず解決出来たのですが、
ほかの部分が半透明のはずなのに透過されません。
α値はピクセルシェーダーで直接値を変えているので大丈夫なはずです。
ラスタライズのCullFaceも切ってみたり、ブレンドステートを色々設定してみたのですが効果がありませんでした。
ステートなどはどちらも同じものを使っています。
DirectXは11が最初なのでまだまだわからないところがたくさんです。
ご教授よろしくお願いします。
9:デフォルトの名無しさん
14/12/15 23:43:07.25 4crcxMI+.net
すいません、時間を置いていじっていたのでブレンドステートなどをいじっている間に描画順が逆になっていたようです。
クラスは分けているはずなのに…。
初歩的なミス失礼しました。
10:デフォルトの名無しさん
14/12/16 12:05:10.18 uKYEes97.net
すいません、時間を置いていじっていたのでブレンドステートなどをいじっている間に描画順が逆になっていたようです。
クラスは分けているはずなのに…。
初歩的なミス失礼しました。
11:デフォルトの名無しさん
14/12/17 03:46:23.77 Dc8RbGIm.net
「Windowsでのゲームを語るときが来た」―2015年1月に公式発表を控える「Windows 10」ではXbox Liveと抜本的に統合される? - 4Gamer.net
URLリンク(www.4gamer.net)
12:デフォルトの名無しさん
14/12/17 06:26:12.66 Dc8RbGIm.net
DX12 CPU Performance Leaked, Way Faster Than DX11 - Threading Model Resembles AMD's Mantle
URLリンク(wccftech.com)
13:デフォルトの名無しさん
14/12/19 18:53:03.60 lw5rbYxR.net
まだDirectX11も完全に使いこなせてないのに12が出るのか…
遅いな俺
14:デフォルトの名無しさん
14/12/19 21:03:14.96 5Bz5AivO.net
イーフロが民事再生。
シェーダーが黒い。
まるで食い逃げ客
15:デフォルトの名無しさん
14/12/19 22:07:11.06 ZltX/rn0.net
未だにDirectX9ですが何か
16:デフォルトの名無しさん
14/12/23 10:49:28.19 0H8B5Rn0.net
スクリーン上にスプライトを描くとき三角を二つ並べて四角形にすると思うんですが、
頂点カラーを使うと三角形の並べ方によって結果が違ってしまい困っています
B-W B-W W-B 中心の色を比べると左では(W+W)/2 中央と右では(B+W)/2になってしまいますよね
|/| |\| |/| BWは頂点カラーで黒と白とかなんでもいいです
W-W W-W W-W
見た目の一貫性を保つにはどのような方法があるでしょうか
17:デフォルトの名無しさん
14/12/23 10:54:14.96 0H8B5Rn0.net
すいませんおもいっきりずれました
黒─白 黒─白 白─黒
│/│ │\│ │/│
白─白 白─白 白─白
18:デフォルトの名無しさん
14/12/23 12:17:13.00 k8juOkqo.net
並べ方を統一すれば良いだけじゃないのか?
19:デフォルトの名無しさん
14/12/26 10:39:46.49 I+lVsNUR.net
いまさらD3D10の話題で恐縮です。(正確には10.1だけど)
デバッガでVSまでは動作しているのがわかるのですが、
PSが全く動作してないようです。(パイプラインウィンドウでPSが出てこない)
いろいろ試したのですが理由がわからず途方に暮れています。
詳しくは以下になります。
d3dsdkのd3d10のtutorial7を元に、
technicとかのeffectを使用しないように作り変えました。
しかしながら、なぜかポリゴンが表示されません。
デバッガでみると、vs完了後の幾何はウィンドウ内に入ってるようなので、
DirectXMathへの変換もうまくいっているようです。
d3d11は使ったことあるので基本的な知識はあります。
20:19
14/12/26 10:40:31.58 I+lVsNUR.net
ネットでd3d10で、effectを使わずポリゴンを表示するサンプルを探したのですが、
d3d10のサンプルはMSのものがtechnicを使ってるせいか、
みつかりませんでした。
21:デフォルトの名無しさん
14/12/27 20:05:02.73 KHqINXTa.net
11の時もeffect使ってたん?
22:20
14/12/27 20:46:02.38 lwhm2HOG.net
directxmathに置き換えた時に、
転置してシェーダに渡す必要があったみたい。
それなおしたらちゃんと絵がでました...。
23:デフォルトの名無しさん
14/12/30 22:30:18.57 XxhmeMXM.net
自分の上司のdirectX使ってバリバリゲーム作ってた人達が軒並みUnityに移っていく
自分は全くdirectX使えないんだけど、何でdirectXで凄い3Dゲーム作れてた人達までUnityに行くの?
24:デフォルトの名無しさん
14/12/30 22:42:02.01 eN0LA0SP.net
移植性?
25:デフォルトの名無しさん
14/12/31 01:29:07.31 RfkRVbA+.net
>>23
DirectXにかけてた時間を他の作業に割けるからじゃないかな
あとスマホ対応なんかが楽
26:デフォルトの名無しさん
14/12/31 18:09:42.76 bes6lyZk.net
D3D9でパレット処理系の関数があったので試しているんですが、
MSDNを見てもいまいち使い方がわからないものがあるので教えてください。
IDirect3DDevice9::GetPaletteEntries、SetPaletteEntries、
GetCurrentTexturePalette、SetCurrentTexturePaletteの4つなんですが、
指定パレットの色に描画結果が変わりません。
以下のような感じで実装しています。
//頂点位置設定
UINT PaletteNo;
PALETTEENTRY palette[256];
//paletteにパレット内容を設定(RGB値を設定するだけなので内容は省略します)
p_IDirect3DDevice9->GetCurrentTexturePalette(&PaletteNo);
p_IDirect3DDevice9->SetPaletteEntries(PaletteNo,palette);
27:26
14/12/31 18:10:25.79 bes6lyZk.net
一気に書き込めなかったので分割投稿します
色が変わらないんですが、
使い方が間違っているのかそもそも効果がないのかわかりません。
効果がないとしたらパレットつきのテクスチャが生成できるビデオカードは既にないはずなので
これらの命令が何のためにあるのか…
あと、GetPaletteEntriesの使い方がわかりません。
PALETTEENTRY currentPalette[256];
p_IDirect3DDevice9->SetPaletteEntries(0,currentPalette);
上記のように実装するとメモリ共有違反エラーで落ちてしまいます。
PALETTEENTRY currentPalette[65536];としても同様でした。
この辺わかる方いませんか?
※パレット部分に関して調査しているだけなので
テクスチャロードをメモリに展開→パレット修正→VRAM転送で一応対処できることはわかっています
28:デフォルトの名無しさん
15/01/07 15:34:11.37 dF8ucFth.net
URLリンク(blogs.msdn.com)
テンプレートみたいなのは作らないって言ってたのにこの人ツンデレか・・・・
29:デフォルトの名無しさん
15/01/21 22:28:58.41 8U8b2nwU.net
URLリンク(japanese.engadget.com)
12の詳細発表と同時にSDKも公開して欲しいな
30:デフォルトの名無しさん
15/01/22 02:37:32.39 FM1q3zV4.net
7以降なら10へアップグレード無料だって
DirectX12は10のみでも問題なさそうだね
31:デフォルトの名無しさん
15/01/22 07:24:16.12 LOQzAGts.net
これからDirectXを使ったゲーム開発の勉強を始めていきたいんですが、先立って少し教えて欲しい事があります
まずDirectXを使った描画系開発経験がありません。WindowsAPIでなら多少はあります。
知りたいのはコアロジックとIO(そもそもDirectXはIO担当という事でいいんですよね?)をどこまで分離できるか、です。
理想の学習ルートはやりたいことをWindowsAPIで実装し、その上でGet/SetUIの実体をGet/SetWinAPIからGet/SetDirectXに置き換えていく事ですが、
(無論、WindowsAPIで作る時点で結合度を低くして特定のクラスや構造体、シグネチャに依存するような事は無いようにして、です)
この時、DirectXが私が考えている以上にコード全体に渡って汚らしく横断する物であればこの考えは破綻します。
ここが勉強方法の大きな分岐点となるので、お教えくださいませんか。
32:デフォルトの名無しさん
15/01/22 08:20:48.38 hOE6mujY.net
マルチプラットフォームなフレームワークだとかだと
レンダラー等の実装を分離してOpenGLやソフトウェアだとか他のを利用できるのが殆ど
シェーダーの違いとか他で未実装な機能があるし完全なコンパチには出来ないけどね
33:デフォルトの名無しさん
15/01/22 14:36:04.82 cZlOLLyd.net
今の3D処理はGPUにメモリを積んでどんどん仕事を投げる方に進んでるから
パフォーマンス重視するとコアロジックもそれに依存するようになる
シェーダにスクリプト渡すの当たり前
既に組んである物を Win32->DirectX 移植する程度なら問題ないのかな?
勉強のためにいったんWin32を挟むのはNG
34:デフォルトの名無しさん
15/01/22 17:27:31.64 LOQzAGts.net
>>32
そうなんですね、最終的にはUnityとかにも手を出したいんですが
まずはプレーンなDirectXから触りたいので、もう少し調べたり作り始めたりしてみてみます
>>33
そうなんですね、ではもうWin32はきっぱり忘れて白紙からはじめたほうがいいんでしょうね。
もしDirectXコーディングのデザインパターンを学ぶ上でオススメの書籍などあれば教えてください。
とりあえずもうお作法は抜きで入門書片手に作り始めてしまいましたが、だらだら写して書くだけでは多分頭に残らないので・・・
35:デフォルトの名無しさん
15/01/22 19:01:34.25 FM1q3zV4.net
Windowsプログラミングの勉強とかしたいんならともかく
ゲームを作るのが目的でUnityを考えてるんなら最初からUnityでいいと思うよ
Unityを使ってみてどういうものなのか理解した上で
必要と思うならDirectXでいろいろやってみたほうがいい
とか書くとこのスレが更に過疎ってしまいそうだけど
36:デフォルトの名無しさん
15/01/22 19:34:12.65 hOE6mujY.net
本格的な3D物やりたいならSDKのサンプルをコンパイル実行してソースちょっと眺めるだけで止めといたほうが良い
ゲーム内で使えるアニメーションとか当たり判定、物理演算とか個人で勉強しながらやるには多すぎるし
結局やりたいことがゲーム自体を作るのが目標なのかゲームを作れる自分用ライブラリなのかハッキリと決める
37:デフォルトの名無しさん
15/01/23 23:31:38.62 2RR6QxjD.net
ManagedDirectXについての質問はこのスレでしてもいいんでしょうか?
38:デフォルトの名無しさん
15/01/27 13:06:36.67 XERxqsl2.net
Microsoft Soft-Launches the Highly Anticipated DirectX 12 'Low Level' API in Recent Windows 10 Update
URLリンク(wccftech.com)
39:デフォルトの名無しさん
15/01/28 21:06:20.12 Rh7TkJwS.net
DirectXに興味を持ったんだが、これはWTL使わずに書いてくのが一般的なんですか?
ネットのサンプル見るとプロシージャごりごり書いてるソースしかないので
40:デフォルトの名無しさん
15/01/28 21:38:00.98 xAct8fPp.net
WTLはATLが必須でEEには付属せずに無償でだと別途に入手とか面倒だったし
最低限のウィンドウプロシャージャが書いてあればいいんだからサンプルには使われないだけだろ
普通のアプリケーションならともかくゲーム本体でも必要ないし
41:デフォルトの名無しさん
15/01/29 11:05:33.67 8fkAl7xN.net
>>35
Unityで3Dゲー作ってもコンシューマ機で動くのが実証されたからね・・・
自前で3Dのゲームライブラリ持ってる人以外はUnityに行かない理由がない。
42:デフォルトの名無しさん
15/01/30 03:30:08.43 KPANLF0G.net
Xファイル解析してスキンメッシュアニメーションを作成しているものです
例えば男と女では身長・肩幅などが異なりますがボーンの構造は一緒ですよね
そこで異なるメッシュ(男・女)でモーションを共通はできないのでしょうか?
同一モーションを男女で分けてXファイル出力して見比べたのですが
アニメーション(AnimationKey)の平行移動のみ数値が異なってました
つまり平行移動が含まれてしまう場合モーションの共通化する手段はないということでしょうか?
また、モーション作成ソフトや近年のキャラクターの身長などを自由に変更できるオンラインゲーム等では
そこらへんをどう解決しているかどなたか資料かアドバイス頂けないでしょうか?
43:デフォルトの名無しさん
15/01/30 08:29:54.55 VPsNtM23.net
ikか補正してるんじゃないの?
それに体の動きにはほとんど平行移動が入らないと思うが
44:デフォルトの名無しさん
15/01/30 11:07:21.87 kF/DIWcS.net
437 デフォルトの名無しさん sage 2015/01/30(金) 07:34:50.58 NP+G5g7q
俺のそそり立つチンコ見てビビったから延期してるんだろ
45:デフォルトの名無しさん
15/01/30 11:36:35.06 VPsNtM23.net
お、おう・・・そんなの見せたら大抵ビビるだろうな(´・ω・`)
46:デフォルトの名無しさん
15/02/03 15:17:41.03 PEE4K+0t.net
えんきった
47:デフォルトの名無しさん
15/02/04 11:47:41.81 kErMECZ6.net
恵方真木
48:デフォルトの名無しさん
15/02/05 18:55:42.53 YXvEKvs8.net
Khronos Groupがクロスプラットフォーム型の次世代グラフィックスAPI「glNext」をGDC 2015で発表予定 - 4Gamer.net
URLリンク(www.4gamer.net)
49:デフォルトの名無しさん
15/02/06 18:50:47.12 O9DsWVzT.net
新しいAPI出すのも結構だが、モデルの読み込みをさくっとできるようにしておいて欲しい…
50:デフォルトの名無しさん
15/02/06 22:52:01.84 /UY9BmXl.net
SetTextureStageState()ってステージ数は
最近のビデオカードでも4つまでってどっかでみたんだけど
チームフォートレス2とかのゲームで壁にいろんなスプレーとかで複数のテクスチャブレンドしてんのはどうやってなの?
壁の凹凸にそってるから、板ポリを薄く貼り付けただけってわけでもなさそうなんだけど
51:デフォルトの名無しさん
15/02/07 21:51:32.55 AvtStqdJ.net
いつの時代の話だよ、その4つまでとかいう記事は相当前だぞw
どういう仕組みかはわからないけど、ボリュームテクスチャあたりじゃない?
動的にテクスチャに描いてるだけっても考えられるけど
52:デフォルトの名無しさん
15/02/09 15:00:27.08 2EOmAxg9.net
DirectX12
URLリンク(www.anandtech.com)
53:デフォルトの名無しさん
15/02/09 18:23:00.10 K+vMBy00.net
12とglNextどっちやろうかなあ
54:デフォルトの名無しさん
15/02/09 18:25:40.02 sBN76GX2.net
いらっしゃいませ
55:デフォルトの名無しさん
15/02/12 21:07:01.94 G3TuSDDc.net
新スレ知らずに、久々に来た。
なんかDirectX始めてやるみたいなカキコミが多いね。
Unityの台頭でますます過疎かと思いきや意外。
自分はどうもUnity触る気にならない。
あれだけ苦痛だったDirectXでゴリゴリ書くのが今はとても楽しい。
マゾ体質になっちゃったのかもw
さすがにDirectX9のままだったらイヤになってたと思うけど、
DirectX10で体系的に整理され、11でかなり良くなったから気に入ってるんだよね。
C++も最近のC++11ですごく良くなったし、
奇しくも11揃い。
これからもC++11&DX11で組んでいくだろうなぁ。
DirectX12はどうなんだろう?
56:デフォルトの名無しさん
15/02/13 10:29:49.08 r/E2oVuv.net
もうドライバは存在してるみたいだし
今年のBUILDで一般公開されるのかな
57:デフォルトの名無しさん
15/02/13 21:27:19.22 /mSRVDxy.net
Direct3Dはもういい。ころころ仕様変えるし。
今さらC++でDirect3Dもないだろ。
我慢ならんのは左手座標系が標準なこと。右手座標系にも変更できるけど
そう簡単でない。おかげで物理シミュレーションでは左手外積,左手
58:軸性 ベクトル導入しないと方程式の形が変わってしまう。 こんなのゲーム好きな奴はいいだろうけど、シミュレーションに使う気にも なれない. もう、OpenGL, Open Dynamic Engine, Unityでええわ。 OpenGL, Open Dynamic Engineを使うのにはまだC++やC言語につき合う必要が あるが、もう禿どもの言語にはウンザリだわ。 計算機の性能が上がって、並列処理の技術が発展しているいまC言語やC++なんて トランジスタ,抵抗,コンデンサ,トランス丸出しの糞言語だ。 まだFortranの方が良い
59:デフォルトの名無しさん
15/02/13 21:37:11.24 Cem8Aman.net
ドヤァ
60:デフォルトの名無しさん
15/02/13 21:58:07.87 TRwdiGc8.net
座標系については同意。
より一般的で歴史も長い数学・物理の世界に合わせろよってんだ。
61:デフォルトの名無しさん
15/02/13 23:21:53.68 tsjQPQar.net
DirectXの左手座標系が標準とかD3DRMの頃のおはなし?
62:デフォルトの名無しさん
15/02/14 02:26:50.58 7HUxA6jb.net
DirectXに標準の座標系なんてないのに何をドヤ顔で書いてるんだろうな・・・
DirectX5時代のRMモードから止まったままなんかねぇ。
63:デフォルトの名無しさん
15/02/14 02:33:24.55 7HUxA6jb.net
ちなみにUnityは左手座標だぞ。
64:デフォルトの名無しさん
15/02/14 02:34:51.22 5wPh+SJg.net
つーか俺はいまだにグラフィックスAPIを
次々増やしているのがウザ
いいんじゃねえの11のままで
大して変わりようがねえだろもう
65:デフォルトの名無しさん
15/02/14 02:40:02.54 mdFXnq+F.net
11は12と併存するらしいよ。
飽くなきパフォーマンス追求は12で。
手頃に3Dは従来通り11で。
というスタンスらしい。
66:デフォルトの名無しさん
15/02/14 09:36:27.49 9LKm64MZ.net
UnityとかDXLibとかミドルやラッパーの話ならともかく
GLの話は宗教論争になるからGLのスレでやろうな
67:デフォルトの名無しさん
15/02/14 10:59:15.66 JOCy6f+R.net
それよりも3Dモデルの読み込みをもっと簡単にしてくれ…
DirectXTKのModelクラスもまだスキンメッシュ対応してないんでしょ?
68:デフォルトの名無しさん
15/02/14 19:23:33.80 mkLJAcUo.net
>>62
ええ?本当か! あーあ、内部的にはDirectx11かDirect3D使ってるからなあ。
ゲームにはいいかもしれんが、力学シミュレーションには合わん。
最も、左手外積,左手軸性ベクトル、左手クォータニオンを定義すればオイラー
の方程式とか、クォータニオンの微分方程式は問題ないが。
しかし,やめてほしいね。やっぱり、OpenGLとかODEにぎゃくもどりかねえ。
バリバリのC++(それもCUDA相当の並列処理付)で3Dグラフィックやりたいなあ。
ODE(Open Dynamic Engine)は内部的にはC++(クラスで作成しているのに)
インターフェースはC仕様だと?
馬鹿も休み休みに言え。構造体と関数ポインタ剥き出しでイライラするわ。
どうでもいいこまごまことまでさらけだすならC++でクラスで包めよ。馬鹿製作者
69:デフォルトの名無しさん
15/02/14 19:28:50.61 mkLJAcUo.net
>>61
はいはい。あなたのような博学の人がちょっとさわれば右手座標系に
できるでしょうよ。しかし、ダウンロードしたばかりのデフォルト状態
では左手座標系だ。それなら丁寧な解説サイトでも書けよ。
そんなこともせんで、知ったかぶりしてるだけの馬鹿が。お前なんか
部下から要らねえて陰口たたかれてんだよ。死ね
70:デフォルトの名無しさん
15/02/14 20:03:11.87 sxbVXZzA.net
>>67
DirectXなのはwinだけだよ。
osxやandroid,iosではOpenGLだし、winでも引数指定でGLで起動できるよ。
71:デフォルトの名無しさん
15/02/14 20:24:29.99 LVYvKyYL.net
Xfileってなんで廃止になったの?
SDKmeshなんてどのソフトもサポートしてなくて不便なんだけど
72:デフォルトの名無しさん
15/02/14 21:04:51.01 PhStbudy.net
>>68
DirectX SDK時代ならともかく今のDirectXのサンプルって右手座標系で書かれてるからどうぞ?
あとDirectXで書かれているXNAってのが右手座標系標準だからおすすめだよお(鼻ホジ
>>70
確か、意訳すると「今ここに汎用なメッシュライブラリ(D3DX)があるが、お前ら自分のゲームにこれ本当に使いたいか?」
みたいなことをのたまってた覚えが・・・
本音としては面倒くさくなったんじゃない? 業界標準となりうる立場で
フォーマット仕様やライブラリをDirectXの名のもとにサポートするのが
その結果ライブラリどころか仕様すら不透明なFBXが跋扈してるのが正直よくわからんけど
とりあえず手ごろなメッシュライブラリはパーフェクトなものじゃないけどAssimpあたりがお勧め
・・・なんだけどもう手軽に3Dモデル動かしたいならUnity使おうよマジで
メッシュライブラリは自前で書きたくないけどDirectXは生で使うってもう今時頓珍漢なシチュエーションだよ・・・
73:デフォルトの名無しさん
15/02/14 21:22:41.03 TtejSo3n.net
unityもいいけどそれに依存しすぎるとハシゴ外されたとき詰むから、DirectXやGLも少しはさわっといた方がいいと思うわ。
74:デフォルトの名無しさん
15/02/14 21:24:00.02 mkLJAcUo.net
わかったよ.DirectXはMFCみたいな役目だったんだ。もう終わったなw
75:デフォルトの名無しさん
15/02/14 21:27:37.98 mkLJAcUo.net
>>71
ブチ切れ、ごくろうさまです。馬~鹿w
76:デフォルトの名無しさん
15/02/14 21:34:19.69 5wPh+SJg.net
多分Effectも梯子外すんだろうな~
MSはこれがあるから、、
77:デフォルトの名無しさん
15/02/14 21:44:04.98 PhStbudy.net
>>74
右手左手には認識の間違いを気付けたようで何よりだけど
そういやなんでお前はODEじゃなくてBullet使わんの?
>>75
HLSLじゃなくてエフェクトファイルのことならD3D10で標準APIに組み込まれたのに
D3D11の中期以降OSSの外部ライブラリになった時点でもう梯子外されてるんじゃね
78:デフォルトの名無しさん
15/02/14 21:55:54.14 mkLJAcUo.net
>>62
ああ、そうかい。じゃあ、unityを右手座標系に変更できる方法も簡単に知ってるだろうな。
それも知らんなら黙っとけ。屑が
79:デフォルトの名無しさん
15/02/14 22:14:32.37 TtejSo3n.net
汎用性を考えたらD3Dのエフェクトみたいなのが無くなるのは仕方ないでしょ。
元からそんなに使い道があったわけじゃないし。
80:デフォルトの名無しさん
15/02/14 22:43:13.66 5wPh+SJg.net
いやいやいやEffectは必須でしょ
他に何が無くなってもいいから
あれだけは残してくれなきゃ。
シェーダ管理システムって、
程度の良し悪しはあるにしても
誰もが作らなきゃならんもんだし
81:デフォルトの名無しさん
15/02/14 22:49:41.14 PhStbudy.net
むしろD3D10で本体に組み込まれちゃったのが意外だったくらいだしねえ
とはいえ「レンダリングパスを制御するDSL」という目的には"汎用品として力不足"だったのが原因なだけで
目的そのものは十分ニーズがあったのよね、メッシュライブラリにも同じことが言えるけど
エフェクトファイルがMMD界隈で生き残ってるのを見てると勿体無かったなあとも思う
82:デフォルトの名無しさん
15/02/14 23:11:55.64 EjU/GIUk.net
>>77
座標系がどうとかそういう面倒なことを考えなくていいようにゲームエンジン使うんじゃないの?
目的が左手座標を倒すことになってる気がするよ。
83:デフォルトの名無しさん
15/02/16 09:40:42.52 tQGykdZf.net
よくわからんけどDirectX11を勉強するにはどのサイトみればいいの?
ゲームつくろーってサイトのDirectX9講座並みに簡単だといいんだけど
84:デフォルトの名無しさん
15/02/16 21:01:16.86 L2tliPgO.net
ゲームソフト作ってる馬鹿には右手も左手も関係ないだろうよ。
しかし、これを物理シミュレーションに使いたいと思う人間には非常に重要だ。
座標系によって方程式の形やクォータニオンの微分方程式がかわるだろうから。
もっとも、左手系なら左手外積、左手軸性ベクトル、左手クォータニオンを
導入すれば方程式の形は変わらないだろうが(その代り、数値は逆符号になる
だろうけど)
しかし、シミュレーションでもうひとつ鍵をにぎっているのはマルチメディア
タイマーだ。C#使えるならたぶん大丈夫だと思うけど。普通のOnTimerなんて
糞でとても使えない。
85:デフォルトの名無しさん
15/02/16 21:06:53.82 L2tliPgO.net
>>76
ああ、悪かった。お前の心臓にBulletぶちこまんで悪かった。
もっと早くやって墓の下に葬ってやりたかった.すまん。許してくれw
86:デフォルトの名無しさん
15/02/16 21:54:39.77 kwUp02iQ.net
unity は普通ゲームに使うよね?
結果に機械的に変換かければ済むんじゃないの
87:デフォルトの名無しさん
15/02/16 23:23:09.56 dACAzpIV.net
文脈に沿わない単語を垂れ流して無知を取り繕う姿は不憫よのぉ
88:デフォルトの名無しさん
15/02/17 01:58:20.83 OS4NV74W.net
正直DirectXTKのModelクラスでスキンメッシュ読み込めれるようになれば個人的にはOKかな。
今でもスキニング用のメッシュを読み込む機能は付いてるみたいだし。
89:デフォルトの名無しさん
15/02/17 09:29:14.83 6gQYt6Vb.net
>>86
お前のことか?
90:デフォルトの名無しさん
15/02/17 10:25:47.92 A1nZFeGu.net
ゲームだろうと物理計算だろうとDirectXでもGLでもどっちでもいいじゃん。
どっちのAPIも座標系の区別無いし、
D3DXにも右手用の関数用意されてるから自前で書く必要ないし。
91:デフォルトの名無しさん
15/02/17 16:33:49.53 YwXbTF9I.net
ごちゃごちゃ喧嘩して自分の意見通したいなら自作のゲームでもうpってから話したらどう?
それが凄けりゃそいつの話参考にするわ。
素人意見だけど間違っちゃいないだろ?(´・ω・`)
92:デフォルトの名無しさん
15/02/17 16:42:58.53 sT/CiA2T.net
自作うpって勝っても相手に粘着されるじゃないの
失うものなき無敵の人なら積極的に駆除するか放置するしかない
93:デフォルトの名無しさん
15/02/17 17:30:23.11 Exd3QkyZ.net
>>90
ゲーム作ってるのは座標系を気にしない馬鹿らしいから
このお方には同じ土俵に立っていただけないと思うよw
94:デフォルトの名無しさん
15/02/17 22:29:53.00 17lLv4ax.net
>>92
その程度のことで済むからなw おめでたい奴らだ
95:デフォルトの名無しさん
15/02/17 22:32:52.26 17lLv4ax.net
>>89
>>ゲームだろうと物理計算だろうとDirectXでもGLでもどっちでもいいじゃん。
>どっちのAPIも座標系の区別無いし、
お前、正真正銘の馬鹿だな。なんちゃってゲームでも作ってろよ。阿呆が
96:デフォルトの名無しさん
15/02/17 23:40:10.53 F2NE4Kvp.net
>>94
え、使うAPIでなにか変わるってこと?
算術系のクラスをプラットフォーム毎に変えたりしたことないよ。
97:デフォルトの名無しさん
15/02/18 07:59:06.50 yf7GcFzI.net
予めモデルデータの座標を変換して使うからでしょ
相変わらず、directxの自作シェーダはよく落ちる。
少しパラメータを設定し忘れただけで、ディスプレイ出力がなくなり、電源の強制終了を余儀なくされる
ここだけms-dos時代に帰ったような印象
98:デフォルトの名無しさん
15/02/18 16:10:53.30 Rxmje5lQ.net
子供が駄々こねてるだけだから無視が得策かと
99:デフォルトの名無しさん
15/02/18 20:36:10.42 BquEl0Wy.net
とガキにいわれてもなあw
100:デフォルトの名無しさん
15/02/18 21:04:25.45 qab6qVbu.net
DirectXもOpenGLも新しくなるから今やることがない
101:デフォルトの名無しさん
15/02/19 04:57:34.74 c1VQS5up.net
DirectX 12 versus DirectX 11 ? Over 100fps Difference on Unreleased GPU
URLリンク(wccftech.com)
102:デフォルトの名無しさん
15/02/19 21:01:01.80 Wx4v0eEi.net
DirectX12調べてみたけど、パフォーマンス出すために、けっこうなパズルを解く必要がありそうだね。
でも、うまくやればパフォーマンス出るし、遣り甲斐はありそうだ。
103:デフォルトの名無しさん
15/02/20 05:41:17.60 I+scCS4N.net
[内容: DirectX 11 の DXUT :: DXUTState :: m_State の使い方に関して。]
DirectX SDKの "DXUT"について、ちょっと質問です。
現在の開発環境は、OS: Windows 7 SP1, C++での開発環境は VC++2010 Express SP1, Windows 8 SDKを導入済み、DirectX11.0 用のSDK (June 2010)を使っています。
DXUTState
というインターフェイスがありますよね、DirectX 9c の後半頃からありますが。こいつの DXUTState::m_State
は実質的には DXUTを使うにあたってのグローバル・クラス変数的、な役割だと思うのですが。
DXUTを使う場合、グローバル変数 g_DXUTState がすでにあるのに、グローバル変数で直接アクセスしないで、GetDXUTState() で関数ポインタ一時変数やとにかくローカル変数
経由でメンバ変数やメンバ関数にアクセスしています。
その本質的な理由(データを隠す以外の)を教えてください。自分なりに想像してみたのですが、はっきりしません。
・マルチスレッドでのデッドロックを避けるために、排他制御で必須?
・CPU(やGPU)のキャッシュメモリ(L1,L2,L3, etc) を有効・高速に使えるため?
・シェーダ活用での相性的に。
・(やっぱり単にデータを隠したいだけ。C++らしく。)
・(MicroSoftだから。風格・威厳がコードには必須。)
いずれC言語にカスタム化(必要な部分のみ)したいと考えていたのですが、どうも以前のフレームワーク移植時のようにはいかないような気がして、質問してみました。
使いづらいため、DXUTでの DXUTState::m_State 間接アクセスの理由を知っておきたいです。
どうかお願いします。
(※ちなみに、C++を使うにしても、メンバーはすべてPublicで結構です。可読性が良いので。)
104:デフォルトの名無しさん
15/02/20 09:42:36.10 3q+ODrAx.net
>>102
カプセル化以上の意味はなんてねえべ
自分だけが使うソースで変数直アクセスしたいなら好きにすればいいけど
ライブラリとして提供が前提なら、特に疑問を差し挟むようなところじゃないでしょ
105:デフォルトの名無しさん
15/02/21 17:33:38.18 xr2mPrUH.net
C++, Dirext3D? 外国人が作ったものがそんなにありがたいのか?
それを得意そうに言ってるお前らの額に「馬鹿」の文字がうっうすらと浮かんでるぞw
MFC時代のテクニックゴチャゴチャ言ってんじゃないよ。
時代はお前らの上を通り過ぎてるんだよ。老人介護施設でN&&BASICやMS-DOS
でもやってろ。糞どもが
106:デフォルトの名無しさん
15/02/21 17:34:39.61 xr2mPrUH.net
N88BASIC
107:デフォルトの名無しさん
15/02/21 20:19:50.65 adKR7XRI.net
>>104
チミが
108:ありがたがって使ってるこの2ちゃんも外国にある鯖を経由して守られておられるのだぞ
109:デフォルトの名無しさん
15/02/21 23:01:38.46 RKwT+bn0.net
directshowで動画プレイヤー作ってるんですが
シークバーにポインタを持って行くとその位置の画像が表示されるのって
どうやって作ればいいのでしょう?
再生中の動画をもう一つ開いてシークしてキャプチャすれば
できそうな気もしますが普通そんなことしないですよね?
110:デフォルトの名無しさん
15/02/22 15:02:31.01 TfAgRNIZ.net
>>106
もうすぐ無くなるけどな
111:デフォルトの名無しさん
15/02/22 15:03:24.05 TfAgRNIZ.net
>>107
スレリンク(tech板)
112:デフォルトの名無しさん
15/02/22 23:30:36.46 zvR+mDah.net
ちょっと抽象的に。102です。
_Aという巨(おお)きめのクラス型があり、COM形式互換で定義されているので、
C++だけでなくC言語でもなんとか扱えます(多分VBやC# とかでも)。
で、問題のグローバル変数的なクラスAは
class _A
{
.S
{
// member variables //
.a
.b
.c
...
// member fuctions //
->pa
->pb
->pz
}
};
という形をしており 実際にアクセスしたいのはA.S.a や A.S.b ないしは
A.S->pa() やA.S->pb() です。
(※前者はメンバ変数、後者は関数ポインタでセッティングされたメンバ関数。)
実行中ずっと使えるグローバル変数は g_Aとして既にあります。
_A g_A;
確かDirectX 9 SDK の2004 October以前までは扱いが簡単だったのです。
ちょっとすっきりそのままではないものの、おおむねフレームワーク中でも
g_A.S.{a | b | ... } や g_A.S->{pa | pb | ...}();
の形式ででアクセスしていましたから。C言語にも移植しやすかった。
113:デフォルトの名無しさん
15/02/22 23:32:00.64 zvR+mDah.net
102=110です。
でも DirectX 9c 以降 DirectX 12直前の今(DX11 SDK June 2010とか)に至るまで、すなわち
DXUT
という(サンプル)フレームワークになって以来(私が思うに)幾分トリッキーな方法で A.Sにアクセスしているんです。
グローバルクラス変数 g_A の各メンバ関数の実体アドレスに間接的にアクセスするためのstatic関数が一つ設けてあります。
static FUNCA_POINTER func_a( *_A pA, args...)
{
// 今回問題にしたい、ローカル&staticな変数 m_a //
static FUNCA m_a; // FUNCA型の、staticな実体
m_a = A->S->pa; // pa はFUNCAのポインタ型
m_a = GET_pointerA(&m_a; //
...
return &m_a // g_Aクラス変数のアドレスを返却。
}
どれかのメンバ関数をつかうときはargsを欲しい関数を指すよう変えることで このstatic関数で一律でアクセスします。
l_a = func_a(g_A, args...);
で関数ポインタ(A.Sのメンバ pa や pb など)を捕まえ、使い方は
l_a(args...); l_b(args...); l_c(args...);
となります。この形式だとブレーク中以外は、l_aやl_b がどんなことやってるのかデバッガ上でも見えにくくなります。
FUNCA_POINTER とかでいちいちローカル変数l_a や l_bを作らないと、メンバ関数にアクセスできない。
なんでマイクロソフトさんはこんな面倒なやり方をD3Dサンプルの標準にしてしまったのか? と。
ひょっとして最近のやり方の方が、以前の直(じか)アクセスと比べて、CPUキャッシュをコンパクトに
使ったり、マルチスレッドでもセーフなのかな? といぶかってしまって。。。
114:デフォルトの名無しさん
15/02/22 23:40:23.80 zvR+mDah.net
ああそう、static FUNCA_POINTER func_a( *_A pA, args...) {`}
関数内部のstaticクラス変数 m_a への初期化は一回きりです。
static m_a =
115:*(A->S->pa); // 初回呼び出し時にg_Aの実体をm_aにコピー。
116:デフォルトの名無しさん
15/02/23 01:17:21.14 SL0u2Msj.net
DXUT11/Core/DXUT.cppの話だよな?
static関数とやらはGetDXUTStateだとしても全然違うコードにしか思えんが…
とまれ、C言語に移植しやすいという理由だけで
メンバ関数ではなくメンバ変数に直に触れるべきだという主張なら
なんかもうどうでもいいや
余談だけど最新のはCodeplexにある"DXUT for Direct3D 11"ね
あんま代わり映えないけど
117:デフォルトの名無しさん
15/02/23 08:30:58.20 RvcTu0/J.net
コンテキスト指向な組み方なだけかな
処理系に依存しにくい形でオブジェクト指向、モジュール分割とインスタンス複製を実現させようとしている
C++がないターゲットに移植しやすくするためなんだが、クラスを宣言している以上、目的が失われている
つまり、そういう分野で実装してきた人の癖
118:デフォルトの名無しさん
15/02/23 16:10:28.81 FJE4rE9K.net
>>100
これCrossfileとかSLIの話か
確かメモリ共有出来るようになるんだよね
流石にシングルじゃここまで差は出ないだろうな
119:デフォルトの名無しさん
15/02/25 00:00:00.25 ad8wEy58.net
英文を斜め読みしたけど、多分そうなんじゃないかな
バッファのmiscにULTIMATED_SUPER_GREAT_SHARED定数とかが追加されるのかも
minmap以外にも頂点とテクスチャ(readonly)も共有可能になるんじゃないかね
それにしても、シェーダは女みたいだ。 FOR UPDATEなしでデータベースを更新するような王以外全駒落ちなゲーム
120:デフォルトの名無しさん
15/02/26 01:41:04.52 f+4GOEWX.net
DX12 Enables Cross-SLI Between AMD and Nvidia GPUs
URLリンク(wccftech.com)
121:デフォルトの名無しさん
15/02/26 11:21:09.27 iz3nPw7D.net
>>117
APIレベルでマルチGPUがサポートされるのは安心だね。
122:デフォルトの名無しさん
15/02/26 19:28:15.79 4dOU8pyf.net
ベンダー違いはメモリ共有不可。11と同じ制限ありじゃないかな
相方のレンダーターゲット、リソースを共有できない
123:デフォルトの名無しさん
15/02/26 19:31:42.45 mPSm5dsR.net
今開発のメインってやっぱり11なんですか?
9じゃないとXPの人は使えないと見たんですが
124:デフォルトの名無しさん
15/02/26 19:36:07.48 3vJWZJKa.net
もうXPは切ってもいいだろ
125:デフォルトの名無しさん
15/02/27 20:21:14.83 jWIxKLNs.net
そんな事よりもIMEをきちんとしたものを作れ。
IME使ってるとイライラする。
IMEが糞のせいで精神的苦痛を受けたとマイクロソフトに1億ドルの訴訟を
おこすことできんかね
126:デフォルトの名無しさん
15/02/27 20:23:40.04 jWIxKLNs.net
DirectX11だろうが12だろうが13だろうがもう使わんよ。
平気で仕様を変更するこんな糞会社のライブラリなんてありがたがって使えるか?
マクドナルドのハンバーガーみたいにshitだ
127:デフォルトの名無しさん
15/02/27 20:46:56.96 fadAmOpD.net
>>122
元々おまけソフトウェアで、嫌なら別のを買って使えっていうスタンスじゃん
逆に金になる物は、コピーアプリケーションをOSとofficeレベルで囲って淘汰する
えxpぉれrに始まり、Visual Studioに続き、ブラウザ、Visio、skypeと繋がり、
今度はスマフォで同じ事を行おうとしている。
つまり無理
128:デフォルトの名無しさん
15/02/27 20:50:11.52 jWIxKLNs.net
googleでもyahooでもいいけどまともなIME作ってくれない?
WindowsじゃなくてMacOSやLinuxでいいから
129:20
15/02/27 22:37:53.45 sR865Q9I.net
前に座標系について盛り上がってる人いて、
何いってんだ?と思ってたけど、
実際にやってみるとzのクリップが違うことに気づいた。
まぁ左手とか右手とかは関係ないけど。
やってみないと気づかないことってあるね。
130:126
15/02/27 22:39:19.26 sR865Q9I.net
あ、20じゃないです。
131:デフォルトの名無しさん
15/02/27 23:02:27.46 LuK3zT5D.net
シャドウマップ用の行列作る時も意識しなきゃいけない時があって地味にウザいのよね>クリップ座標系の違い
そこに関しちゃ誤差レベルだけどDirect3Dの方が合理的なのでglNextで統一して欲しいところ
132:デフォルトの名無しさん
15/02/28 06:44:05.12 Rdd+kDAJ.net
Directx10 3Dプログラミングという本が安く売ってたので買ってきたのですが
Directx11とのコードの互換性ってどうですか?
大きな違いがあるならDirectx11の本も注文しようと思うのですがよろしくお願いします
133:デフォルトの名無しさん
15/02/28 07:34:01.68 Rdd+kDAJ.net
すいません
msdnに書いてありました
134:デフォルトの名無しさん
15/02/28 10:26:12.90 GhUQ/rd3.net
10は無視でいい。
11だけ見ればよし。
135:デフォルトの名無しさん
15/02/28 11:33:31.76 cr/Uywnu.net
>>129
その10の本。 俺も持っている。
ジオメトリシェーダ周辺がグラフィクスとは違うからと切り捨てられている。
その本だけだと一部のジオメトリシェーダは実装できない。
136:デフォルトの名無しさん
15/02/28 13:56:15.68 Rdd+kDAJ.net
>>131
>>132
ありがとうございます
結構わかりやすそうな感じなのでとりあえずこの本で頑張ってみようと思います
137:126
15/02/28 14:17:11.33 R2G0AOIf.net
>>133
apiの10てところを11に加えて、
deviceをcontextに一部変えてやればだいたい大丈夫。
引数が少し増減してるとこもググればわかる。
10の勉強は11でも十分役立つから
後は11の新機能だけ追加勉強したらいい。
138:126
15/02/28 14:21:41.74 R2G0AOIf.net
>>134
あ、effectはなくなるからスルーで。
シェーダは11のサンプルが10でもいける。
139:デフォルトの名無しさん
15/02/28 16:54:00.47 Rdd+kDAJ.net
>>134
どうもありがとうございます
参考にさせてもらいます
140:デフォルトの名無しさん
15/02/28 17:34:50.00 OFsucKZW.net
DirectX Mathってのがあるようだが、これは数学に使えるのかね?
141:デフォルトの名無しさん
15/02/28 17:39:10.97 GhUQ/rd3.net
あくまで3Dグラフィックス用。
142:デフォルトの名無しさん
15/02/28 23:22:41.82 5o9oueFk.net
行列は学校で習うのと掛ける順番が左右逆なので注意。
143:デフォルトの名無しさん
15/03/01 02:19:31.69 X0CVxi61.net
directXは数学の教科書と違って、行ベクトル×転置行列だぜ。
おまけに左手座標系を採用している。剛体の回転の運動方程式、クォータニオン
の微分方程式は教科書では右手座標系を基準にしている。
だとしたら、微分方程式の係数の符号が変わらないか?という疑問が出てくる。
答えは左手外積と左手軸性ベクトルを導入したら全く問題ないのだが、そんなの
NSDNに書いてあるか?
左手座標系が標準だけど右手座標系にもできると書いてる馬鹿がいるが、それが
簡単にできるようになってるか?
おまけに、MSDN円環のマニュアル見ると、座標変換行列とベクトルの回転行列の区別も
書かれてない。そりゃあ,両者の要素は全く同じだけどさ。しかし、回転移動操作
ごとに(アフィン変換じゃなくて,4×4の同次変換で話をしている)、座標変換行列は
右側に、ベクトルの回転行列は左側に順次乗じていくことすら書いてない。
そして、DirectX11では数学関数を変更しましただと?ふざけるな!
お前んとこの糞ライブラリなんて2度とつかいたくねえよ。ゲームソフト
作ってるわけじゃなし。
144:デフォルトの名無しさん
15/03/01 02:21:35.49 X0CVxi61.net
MSDN円環→MSDN
145:デフォルトの名無しさん
15/03/01 03:03:31.72 j75M38lJ.net
お前OpenGLスレでも馬鹿なこと書いてるな
492 名前:デフォルトの名無しさん[] 投稿日:2015/02/27(金) 21:55:42.91 ID:jWIxKLNs
まあ,DirectXもOpenGLもMFCのレベルだろうな。
もう少しすれば、C#みたいに簡単にWindowsソフトが作れるような3Dソフトが
出てくるだろうな.Unityみたいな。
だが、おれはゲームには全く興味がない。Unityに期待するのは物理シミュレーション
と背景がリアリティにできることだ。一応、ベクトルのピッチ,ヨー,ロール角の指定
とクォータニオンが使えそうだがな。しかし,それよりも重要なのはマルチメディア
タイマーの正確なタイマー割り込みだ。OnTimerみたいな糞使えるか!
正式のNetFrameworkは使えるかもしれんが,mono版はどうなのか?
それともマルティメディアタイマーはNetFrameworkやmonoとは独立なものか?
146:デフォルトの名無しさん
15/03/01 03:04:20.00 FdbO14Jf.net
どうしたの?
147:デフォルトの名無しさん
15/03/01 03:43:48.26 10N5XYqO.net
mul(m,v)でなくmul(v,m)がよいとされるのは、
dp4が使われるというだけであって、
別にmul(m,v)がコンパイルできないというわけではない。
(気になるほどのパフォーマンス差ってある?)
積の順序と左手右手は無関係。
dxもglもどちらかに依存しているということはない。(固定機能時代を除く)
148:144
15/03/01 04:01:34.76 10N5XYqO.net
ググったら、HLSLのmatrixのrow-majorかcolumn-majorかを切り替えられるのか。
URLリンク(msdn.microsoft.com)
149:デフォルトの名無しさん
15/03/01 09:52:13.27 6ijce9uo.net
>>140
気付くの遅すぎ
150:デフォルトの名無しさん
15/03/01 10:24:37.72 rmnnWm7Z.net
なんも気付いてないよ
ライブラリに要素を格納する前に渡すデータの座標系を確認する自分の責任と
ライブラリが採用する列/行優先のポリシーをごっちゃにしてるだけだよ
151:デフォルトの名無しさん
15/03/01 12:04:10.53 X0CVxi61.net
>>142
だから何なのさ。くだらねえゲームでも作ってろ。中年
152:デフォルトの名無しさん
15/03/01 12:05:38.07 X0CVxi61.net
>>147
おまえみたいな奴を人の後ろからしか吠えれない弱い犬というんだよ。
黙ってひっこんでろ。糞が
153:デフォルトの名無しさん
15/03/01 15:58:22.12 yY2Fb3ih.net
IDって便利だよね
154:デフォルトの名無しさん
15/03/03 13:41:02.90 /BC8ACmY.net
[GDC 2015]AMD独自API「Mantle“1.0”」が事実上の終了。AMDはDirectX 12と次世代OpenGLの利用を呼びかけ - 4Gamer.net
URLリンク(www.4gamer.net)
155:デフォルトの名無しさん
15/03/03 21:04:51.33 YJpvZmSV.net
はやいな
156:デフォルトの名無しさん
15/03/04 21:58:35.26 ash2xzd6.net
[GDC 2015]Khronos,新世代グラフィックスAPI「Vulkan」を正式発表。OpenGL時代のしがらみを捨てた,スリムでハイエンドなAPIに - 4Gamer.net
URLリンク(www.4gamer.net)
157:デフォルトの名無しさん
15/03/08 00:06:59.60 ixZn4liD.net
hlsl3.0でシェーダを書いているのですがコンパイル時にunexpected integer constantというエラーが出ます。
エラーの意味が分からないのでどこを疑えばいいのかもわかりません。教えてください。
該当箇所にはint Array[4] {0, 1, 0, -1};と書いてあり、怪しいところはない(と思う)です。
周囲のセミコロン忘れなども一通り確認しましたが問題ないようです。
解答お願いします。
158:デフォルトの名無しさん
15/03/08 18:19:05.55 E4G6plHt.net
イコール挟んでないだけじゃないの?
159:デフォルトの名無しさん
15/03/08 21:11:20.01 E4G6plHt.net
int Array[4] = {0, 1, 0, -1};
160:>>154
15/03/09 16:26:06.09 pgPMIaJk.net
C#er時代の癖が仇に出ましたな
くだらないことでお手数をおかけしてすみませんでした
161:デフォルトの名無しさん
15/03/14 16:09:03.45 JgbxQbz3.net
テキスト表示したいのですが。
事前にテクスチャに書き込んでおいて…ていうのが一番いいとは思いますが、
動的に内容を書き換えたいのでこの方法がとれません。
1.GDI関数でテキストをメモリ上にレンダリングしてイメージ作成。(今回は1024x1024が埋まるくらいの文章とします。)
2.そのイメージをd3dデバイス上にアップロード。
3.d3dでレンダリングして表示。
この処理にかかる時間ってだいたいどの程度でしょうか?
200msec以内で終わるような処理でしょうか?
もっとかかりそうなら、どうにか事前書き込みの方法を考えたいと思いますが。
また、テキストレンダリングにはどの関数使うといいですか?GDIだけでなくD2Dにもあるようですが。
162:デフォルトの名無しさん
15/03/14 17:04:30.23 Q3yBAVmP.net
>>158
使う文字全部詰め込んだテクスチャを作って、
使う文字に応じてテクスチャアドレスを変えるようにする方式は?
スプライトアニメーションの要領。
DirectXTKのSpriteFontはこの方式。
パフォーマンス、動的変更可能な点ではこれが有力。
欠点は、ミップマップが使えないこと。
隣の文字をサンプルしてしまうことによる滲みの問題が発生するからね。
この欠点が許容できないなら、GDI描画で。
パフォーマンスのほどは知らない、ごめん。
163:デフォルトの名無しさん
15/03/14 17:06:00.16 HQm1xD51.net
>>158
処理の詳細も環境も不明なのにms単位で性能語るほどアホなことはねえから欲しい回答はやらんが
毎フレームテクスチャの書き込みを行うこと自体は、例え60fpsを目指していてもさほど無茶な処理ではないよ
フォント表示という性質上必要なところだけ書き込むとかの最適化の余地は大きいだろうしね
D2D(DWrite)は速度的な面ではGDIと大差無いからリアルタイム用途では期待しない方がいいけど
D3Dとの相互運用の面で使いやすくはある(D2D1.1が使える環境に限定されるが)
164:158
15/03/14 22:51:57.78 58xbhFc5.net
>>160
60fpsでも無茶な処理ではないということがわかって助かりました。
d2dを調べる必要もなさそうですね。
>>159
spritefontは知りませんでした。
調べてみます。
165:デフォルトの名無しさん
15/03/15 22:02:38.46 GUgoPvqo.net
1→2→3の過程を毎フレームごとにするのはあまりお勧めしないがな。
毎フレームごとに変化する文字を人間が読めるわけないから
同じ文字を表示しているフレーム間ってのがあるはず
その間に1と2の過程を毎回やるのは無駄がありすぎる
テクスチャに文字を書いて、それをSpriteで表示するだけでいい。
そうすれば重い処理はテクスチャを上書きするときだけになる。
んで、それをもっとも簡単に出来るのはD2D
166:デフォルトの名無しさん
15/03/19 21:31:21.40 8Q6gDQNf.net
directshow最近興味持って調べてるんだが情報が少ない気がする。
ひょっとしてもうすたれてきてんの?
167:デフォルトの名無しさん
15/03/19 22:01:18.48 eVhqWWja.net
というか、もう廃れた。
あれには相当苦労した。
その昔、「DirectShowと戦うスレ」というのがあって、
自分もお世話になっていたんだが、
そのスレタイから察してしかるべし。
168:デフォルトの名無しさん
15/03/20 00:10:12.75 g2jeL/Sd.net
っていうことは、動画関係のライブラリって今何が主流?
169:デフォルトの名無しさん
15/03/20 00:23:43.19 tRAsdcnU.net
>>164
あったねぇまだログ残してるわ
170:デフォルトの名無しさん
15/03/20 01:26:20.08 iSOivUYl.net
後継とされるAPI はMedia Foundation、基本的にDirectShowの焼き直しな感じだし
Win8でようやくD3D11のテクスチャに直接GPUデコードできるようなったという微妙っぷり
情報はさらに少なくひたすらMSDNの英文と睨めっこするハメになるよ
どうせ今のWindowsでも動くんだからDirectShowでええやろと思ったけど
baseclassesとかWin7 SDKのサンプルから引っ張ってこにゃならんみたいだし面倒くせえなあ
171:デフォルトの名無しさん
15/03/20 19:53:51.98 g2jeL/Sd.net
結局は情報少ないのは変わらんのかあ・・
動画系はやる人少ないのかね・・
172:デフォルトの名無しさん
15/03/20 20:10:48.42 +TQl6zzI.net
動機の問題だろう
個人でゲーム作りたいって思ったら導入しやすいdirectXを学ぶ人が多いが
動画みたいって思ってDirectShowを学ぶ人はそうはいない
フリーで完成されたのがすでにあるからな
173:デフォルトの名無しさん
15/03/21 22:38:24.05 wTPdkcAS.net
ちなみのその direct show で質問なのですが、
ビデオを拡大再生すると、ニアーポイントで拡大してくれやがって、品質が非常に悪いです。
これをバイリニアとかの高等なフィルタに変更する方法はありますか?
俺が調べるに、SampleGrabberを使う方法があるらしいが、
SampleGrabberは動画からサムネイルなどを生成するために有るものなので、
これを再生に使うのは気持ち悪いです。
何とかなりませんか?
174:デフォルトの名無しさん
15/03/21 22:41:35.61 wTPdkcAS.net
てかDirectShow難すぎ。DirectXが赤子だ。
175:デフォルトの名無しさん
15/03/21 23:04:19.14 PvKmnrB7.net
スレ違いって言っておくよ
176:デフォルトの名無しさん
15/03/21 23:21:38.45 ETr71mg2.net
DirectShowとDirectXって全くの別物なのかね?
今DXライブラリ使って動画系のやつ作ってるんだが,
動画機能をもっと高機能にしたくてDirectshow覚えようとしてるんだが
DrectXを先におぼえた方がいいとかある?
177:デフォルトの名無しさん
15/03/21 23:35:09.15 PvKmnrB7.net
ない
178:デフォルトの名無しさん
15/03/22 00:21:23.27 9FPWs8uL.net
CBaseVideoRenderer VMR9 カスタムアロケータ
とかで検索すればD3D9テクスチャへ動画のサンプルデータを書き込む例が
ちょろちょろ出てくるからそのへん応用してがんばりたまへ
179:170
15/03/22 01:36:17.18 XatTIShe.net
>>175
ありがとう。うまくいったよ。
180:デフォルトの名無しさん
15/03/23 01:32:02.15 t5iQrOJL.net
Direct系ということで、昔はDirectXで描画したポリゴンの表面にDirectShowで再生した動画をテクスチャで貼る、
みたいな連携が可能だったようだ。
途中からいらない子にされて、Direct系とは別でWindowsのSDKに左遷された。
このあたりも導入のややこしさに一役買ってる。
181:デフォルトの名無しさん
15/03/23 06:17:14.04 ZLg1a82N.net
NVIDIA and AMD Ready For Next Generation DirectX 12 API - Showcase New Features and Benefits of D3D12 API
URLリンク(wccftech.com)
182:デフォルトの名無しさん
15/03/23 12:12:11.13 2nOY15CL.net
Microsoft Details New Graphics Investments In Windows 10
URLリンク(microsoft-news.com)
やっぱりDirectX12はDirect3Dのみの更新なのか
183:デフォルトの名無しさん
15/03/23 20:52:16.82 v5lqXW2+.net
>>148
俺は中年じゃあない。お前こそ、いかつい髭ツラでよ、サングラスかけてよ、
きゃいきゃいの女の子画いて「にんまーっ」としてるおっさんだろw
気色わるーーーーーっ。 糞氏
184:デフォルトの名無しさん
15/03/23 22:11:56.18 WgZK7xll.net
ポリゴンの表面に動画を貼るって、
波打つジオメトリの面に動画を再生しても見づらいだけで
デモ用の見せかけグラフィックにしか使い道なくね?
オマケにレンダリングが動画の時間軸がに引き摺られるから使いづらそうだ。
というか、DirectShowって随分前にlegacyに落とされていたような?
185:デフォルトの名無しさん
15/03/23 22:14:02.99 WgZK7xll.net
というか、そんな事を書き込みに来たんじゃない。
Windowsは等幅フォントが弱すぎる。。 MSゴシックもうヤダ。
186:デフォルトの名無しさん
15/03/23 22:19:16.22 WgZK7xll.net
もう一言だけ。
Windowsは、ウィンドウシステムをころころ変えるんじゃなくて
【リリース毎にフォントを変更しろ!】
アスペ的に確信するが、絶対にフォントをころころ変更した方が万人に喜ばれるから。。
つまり【ヒラギノ】よこせ
187:デフォルトの名無しさん
15/03/28 16:25:24.83 /OKG1/Xj.net
>波打つジオメトリの面に動画を再生しても見づらいだけで
板ポリにテクスチャ貼り付ければいいじゃないかwww相当馬鹿だ。
何故わざわざそんなことする必要があるかって?
動画をウィンドウサイズや画面サイズにスケーリングするのに
DirectXでハードウェア処理したいからだ。
これからは4kディスプレイも出回ってくるので、
ますますそういった必要性が出てくる。
188:デフォルトの名無しさん
15/03/29 02:22:48.33 R9UejuHe.net
来たかな
URLリンク(msdn.microsoft.com)(v=vs.85).aspx
189:デフォルトの名無しさん
15/04/02 19:02:33.36 yvQnAQ9W.net
>>184
発想が貧弱だな
190:デフォルトの名無しさん
15/04/21 22:21:58.13 k+lIUh1M.net
☆ 日本の核武装は絶対に必須ですわ。☆
URLリンク(www.soumu.go.jp)
☆ 日本国民の皆様方、2016年7月の『第24回 参議院選挙』で、改憲の参議院議員が
3分の2以上を超えると日本国憲法の改正です。皆様方、必ず投票に自ら足を運んでください。
私たちの日本国憲法を絶対に改正しましょう。☆
191:デフォルトの名無しさん
15/04/22 01:32:05.48 Y7MPxtQ4.net
★ 炭水化物=砂糖 ★
「いつものパン」があなたを殺す: 脳を一生、老化させない食事 (デイビッド パールマター 2015/1/16)
URLリンク(www.amazon.co.jp)
ダダモ博士のNEW血液型健康ダイエット (集英社文庫)
O型とB型は小麦、とうもろこし、蕎麦を食べると体調が悪くなり太ります
URLリンク(www.amazon.co.jp)
砂糖は心身を蝕む危険な食材、脳のエネルギーの嘘 動脈硬化、免疫力低下、うつ病
URLリンク(biz-journal.jp)
チョコレートは超危険食品 強い依存性、糖尿病の恐れ…妊婦や子供は摂取要注意
URLリンク(biz-journal.jp)
統合失調症、うつ病、パニック障害は糖を抜くと3日で治った。
URLリンク(i.imgur.com)
URLリンク(i.imgur.com)
★すべての不調は首が原因だった!
★長引く痛みの原因は、血管が9割 (奥野祐次 ワニブックスPLUS新書 2015/2/7)
★あなたの不調、実は「脳脊髄液減少症」かも!?
★その不調は遅延型フードアレルギーです!
↓
スレリンク(shapeup板:73番)
192:デフォルトの名無しさん
15/04/26 10:44:26.80 zD1fNCmz.net
古いゲームなどで解像度を変更すると他のアプリケーションのサイズが強制的に変更されるものが
ありますがあれはどうやっているのでしょうか教えて下さい
193:デフォルトの名無しさん
15/04/26 11:49:53.03 4U5fjQVj.net
フルスクリーンモードで低い解像度を設定するとよくそうなる
やり方というよりWindowsの仕様
194:デフォルトの名無しさん
15/04/26 12:10:12.78 zD1fNCmz.net
サイズ変更されたくないので原因を知るために自分のプログラムで再現しようとしてました
変更される時とされない時の違いはWM_WININICHANGEがブロードキャストされているかどうかのようなので
自分でWM_WINIINICHANGEを送ってみたけどだめ
色々試したけど再現不能でした
諦めるか……
195:デフォルトの名無しさん
15/04/26 12:32:15.26 4U5fjQVj.net
まあ回避したいだけなら任意解像度のレンダーターゲット噛ませて
フルスクリーンのモードをデスクトップの解像度に固定するか
全画面ウィンドウで仮想フルスクリーンするかした方が楽だなあ
196:デフォルトの名無しさん
15/04/27 23:52:34.52 QafP8JGJ.net
dxライブラリで作ってた動画ファイルを扱うソフトを
directx9とdirectshowに置き換えた。
置き換え直後はファンタスティックな映像に変化したりと
不具合だらけだったが何とか落ち着いた。
やっぱなるべく自分で作るようにした方がやりがいがある
197:デフォルトの名無しさん
15/04/28 08:22:01.05 O7BFAgR1.net
VMRアロケータ書いたわけか。おつかれさん
198:デフォルトの名無しさん
15/04/28 20:54:48.46 5WxSLMt8.net
よくやったな・・・。
DirectShowは地獄やで。
199:デフォルトの名無しさん
15/04/30 13:40:39.01 iDcC+qzm.net
VMRアロケータだけならそんなに苦じゃないんだがな。
自前でフィルタ書くのは大変。ピン周りが地獄。
それはそうと俺の記憶違いかもしれないんだが、
昔XPでDirectX9を触っていた頃は、小さなスワップチェーンから、
大きなウィンドウにプレゼントした時、
バイリニアで拡大されて表示されていたように思うんだよ。
それが最近触ったら、フィルタなしでギザギザに拡大されたんだが、
Vistaぐらいから何かプレゼント周りの仕様変わったの?
激しく不便なんだが。
200:デフォルトの名無しさん
15/04/30 19:38:10.19 zIUQVwbz.net
directshowは動画ファイル再生してピクセルデータ取得くらいやってないから
まだ全然使いこなせてないわ
201:デフォルトの名無しさん
15/04/30 22:58:14.67 GC8GRmfy.net
D3D9のスワップチェインなら昔からポイントフィルタで汚かったと思うで
ちなみにD3D11のはバイリニアフィルタになっとる
202:デフォルトの名無しさん
15/05/09 15:16:00.00 ZEKE174I.net
githubに移動するのかな?
URLリンク(github.com)
203:デフォルトの名無しさん
15/05/09 15:18:03.40 ZEKE174I.net
それと12関連の話
URLリンク(directxtk.codeplex.com)
204:デフォルトの名無しさん
15/05/11 22:01:25.26 ZekxbwC5.net
質問です。
D3DXLoadMeshFromXで.xファイルを読み込み、動的に頂点位置を弄っているのですが
D3DXMESH_VB_DYNAMIC オプションを指定して動的頂点バッファを作成すると
フルスクリーン<->ウィンドウモード切り替え時に呼ぶ
pD3DDevice->Reset() でD3DERR_INVALIDCALL が返されてしまいます。
リセット前にメッシュ内の頂点バッファを開放する必要があると思うのですが、
その方法がわかりません。
ID3DXMesh::GetVertexBuffer でもダメそうですし。
メッシュごと開放するしかないのでしょうか?
環境はWindowsXP、DirectX9です。
205:デフォルトの名無しさん
15/05/12 00:03:17.59 P8yXA8AP.net
o D3DUSAGE_DYNAMICはD3DPOOL_DEFAULTリソースにしか指定できない
o D3DPOOL_DEFAULTリソースはReset前に手動で解放する必要がある
o GetVertexBufferで頂点バッファを取得できるがID3DXMeshが所有権を手放すわけではない
o 例え解放できたとしてもID3DXMeshに任意の頂点バッファを指定するメソッドがない
大人しくID3DXMeshごと作り直しなはれ
206:デフォルトの名無しさん
15/05/12 00:44:00.59 ylqMkeqf.net
ありがとうございます。
そうですよね、解放できたとしてもSetVertexBuffer みたいな関数も見当たらないですし
ID3DXMeshごと作り直す事にします。
メッシュの作り直し用に、D3DXMESH_SYSTEMMEM フラグを指定して
D3DXLoadMeshFromX を呼びメッシュをずっと保持しておき、
メッシュの作り直しにはD3DXMESH_VB_DYNAMIC フラグを指定してID3DXMesh::CloneMesh() で行う事にしました。
207:デフォルトの名無しさん
15/05/12 13:48:26.49 BES+X+9m.net
Windows環境でDirect3D9を使用しての2D描画について質問があります。
IDirect3DDevice9::CreateOffscreenPlainSurfaceで作ったサーフェスに
キャラクターの2D画像を読み込ませてバックバッファに転送して描画させているのですが、
IDirect3DDevice9::StretchRectで転送すると透過色を使用出来ないようなので
透過色を有効にしてサーフェスからバックバッファへ転送を行う良い方法をご存知ありませんか?
208:デフォルトの名無しさん
15/05/12 14:52:33.24 Z/MhgXt8.net
StretchRectって速いの?
テクスチャに画像を読み込んでDrawPrimitive的なので描画するのが普通なんで、
君もそうしたら?抜き色はシェーダーでも出来るし、固定機能でも出来る。
209:デフォルトの名無しさん
15/05/12 16:14:07.68 BES+X+9m.net
>>205
了解です
テクスチャに画像を準備させて描画するやり方で2D画像描画の処理をしようと思います
ご教授ありがとうございました。
210:デフォルトの名無しさん
15/05/12 16:28:40.90 Z/MhgXt8.net
ドットバイドットで表示したい場合は、頂点座標に気をつけてな。
ポイントは自分の思っている座標から0.5fを引くことだ。
サイズ16の画像なら、頂点座標は { -0.5f, -0.5f, 16-0.5f, 16-0.5f }; だ。
何故そうなるか詳しく知りたかったらググってくれ。
頂点座標が出力先バッファのピクセルの中央に来るから、
テクスチャのテクセルを中心に考えると0.5fずれるんだ。
211:デフォルトの名無しさん
15/05/12 16:41:19.16 BES+X+9m.net
>>207
今までその辺りが中途半端な理解だったのでサーフェスで2Dを処理したかったのですが、
テクスチャでの正確な2D描画処理のため納得が行くまで調べようと思います。
ありがとう。
212:デフォルトの名無しさん
15/05/15 01:40:57.38 TIs7ez9w.net
D3DXMatrixLookAtLHでeye(0,1,0)at(0,0,0)up(0,1,0)を指定すると何も表示されなくなって
pEye.xかpEye.zのどちらか片方に0にならないように小さい値を入れると思ったとおりに表示されます。
小さい値を入れるか他の関数を使う以外に解決法ありますか?
213:デフォルトの名無しさん
15/05/15 02:07:49.46 mEOzS/y6.net
LookAtは視線と上方ベクトルの外積が零になるような指定はできない
まあ逆にいえば上方ベクトルを視線と一緒に適切にぶん回せるならLookAtで良いんだが
FPSみたいなのはともかく3Dツールみたいな拘束の無いカメラにはLookAtは合わんぜよ
214:デフォルトの名無しさん
15/05/15 07:07:11.54 ZRdcOfW9.net
URLリンク(www.c3.club.kyutech.ac.jp)
215:デフォルトの名無しさん
15/05/15 14:08:51.49 9jq8yKrJ.net
ジオメトリシェーダで球を生成するコードを書いたがジオメトリシェーダの出力情報は1024スカラまでって制限に引っかかって頓挫してる。つーか1024って少なすぎだろー。何にもできねーよそれじゃーさー
216:デフォルトの名無しさん
15/05/15 17:25:13.59 ZRdcOfW9.net
ジオメトリシェーダで玉を生成してんの?
217:デフォルトの名無しさん
15/05/15 17:36:54.83 W0xCkYxQ.net
そう、directxtkから正20面体のコードぱくってhlslに移植してここまでは良かったが制限がきつくて面分割出来んかった
218:デフォルトの名無しさん
15/05/15 18:03:11.47 ZRdcOfW9.net
同じ形を複製するならDrawInstanced系をお勧めする
球のモデルを一個用意して、それを指定した数だけシェーダに通す命令だ
これを使えばジオメトリシェーダで球をわざわざ作らなくていい
もちろん、数を指定しただけだと同じ位置に同じものを複製するだけなので
位置情報が詰まった構造化バッファーなんかをシェーダに送る必要がある
219:デフォルトの名無しさん
15/05/15 19:24:34.56 WZ+HCGJP.net
DrawInstanceは糞遅かった記憶があるな
200程度で、フレームレートが60から10ぐらいまで落ちてカクカク
モデル自体は50頂点。
まあクアドロ600なんだけど
220:デフォルトの名無しさん
15/05/15 22:05:20.85 I4xYWqQ3.net
ジオメトリシェーダの典型的な使い方では、1頂点から、せいぜい4頂点の面を貼ってパーティクル表現するとかで、
そんな大量の頂点を生成する多面体なんて発想は全然なかったな。
興味深くはあるけど、原理的に複雑な形状にはできないんだし、
より多くの面を作りたいなら、ジオメトリシェーダ+テッセレータとかでいいんでない?
221:デフォルトの名無しさん
15/05/16 22:27:23.49 d8QxvWwL.net
CPUからGPUに渡す情報は少ない方が良いとも聞くし
なるべくGPUで生成した方がスマートで速いかなあと思ったんだが。
インスタンシングで作り直すよ。
222:デフォルトの名無しさん
15/05/16 22:29:32.81 F6Xs2OJ7.net
>>218
基本的にはその通りなんだけど、ある程度複雑な形状となるとジオメトリインスタンシングが適切だろうね。
健闘を祈るよ。
223:デフォルトの名無しさん
15/05/17 17:13:21.43 Dt9yvYGA.net
DirectxsdkのPNTriangles11が崩れて表示される。
リファレンスラスタライザにするとちゃんと表示されることからドライバのバグだと思うんだけど、、
AMDのグラボでちゃんと表示出来てる方いれば
ドライバのバージョン教えて。
うちはRadion HD 5670 (AMD Catalyst 14.12)です。
224:デフォルトの名無しさん
15/05/17 20:59:51.15 Dt9yvYGA.net
俺のテストコードせいでドライバがぶっこわれてただけだった。(壊れるのもどうかと思うが)
再起動したら直った。
お騒がせすまんこ
225:デフォルトの名無しさん
15/05/24 04:55:52.28 0mlO0Wy5.net
DirectX 12 Boosts Draw Calls By 330% On 3 Year Old GTX 670, More Details Revealed
URLリンク(wccftech.com)
226:デフォルトの名無しさん
15/06/07 02:52:14.45 OJkvDfaF.net
質問です!
単刀直入に言うと、テクスチャから2Dポリゴンが
微かにはみ出してしまいという症状が出て困っています。
DirectX9で、描画はテクスチャ座標やら何やらを指定した頂点バッファを
SetStreamSourceでストリームにバウンドして行ってます。
PNG画像をテクスチャにしているのですが、
ポリゴンの形の縁がはみ出るものと、テクスチャ画像の透明部にそってはみ出る場合があります。
ほんの1ドット程度ですが気になって辛いです。
どうかお力添えをお願いします。
227:デフォルトの名無しさん
15/06/07 13:28:37.55 SCyqkJaA.net
XY座標に0.5足してみるといい
DirectX10以降は気にしなくていいと聞いたことがあるが
228:デフォルトの名無しさん
15/06/07 15:16:38.22 OJkvDfaF.net
>>224
回答有難うございます!
うーん、しかし座標、テクスチャ座標、両方、全部試したけどはみ出しが消えない……
229:デフォルトの名無しさん
15/06/07 19:39:40.09 Bg679xnz.net
ミップマップか?
230:デフォルトの名無しさん
15/06/07 20:55:22.86 OJkvDfaF.net
>>226
231:デフォルトの名無しさん
15/06/07 20:59:02.21 OJkvDfaF.net
>>226
ミップマップ?は使ってないですね……。多分。
>>224 さんのアドバイスを実行したらかなり改善しましたが、
まだうっすらとポリゴンの縁が目に見える形で残っているんですよね。
書き込みミス失礼
232:デフォルトの名無しさん
15/06/07 21:24:20.49 qWZU0Be8.net
頂点座標の調整は0.5の"減算"な…
「はみ出す」が曖昧だけどまあ大体フィルタリングで隣のピクセル拾ってるパターンだから
元画像にちゃんとマージン取ってあるか、テクスチャアドレッシングモードは適切かの確認
透明部の縁が気になるなら乗算済みアルファを試してみる、くらいかしらね
233:226
15/06/08 01:48:48.13 kuPymiUn.net
減算でしたスマソ
234:224
15/06/08 01:49:20.04 kuPymiUn.net
224でした申し訳ない
235:デフォルトの名無しさん
15/06/08 02:09:57.85 DpcdWlc7.net
Direct2D初めてみたばかりの初心者です。
現在、 URLリンク(code.msdn.microsoft.com) のソースを元に、ちょっといじっていまして
とありえず、任意のビットマップに色をつけてみたいのですがうまくいきません。
256x256のRGBA構造を自分で操作したいのですが、どなたか教えてください。
よろしくお願いします。
myBmp()は、CreateDeviceResources(HWND hWnd)の中で呼び出しています。
ID2D1Bitmap *pBmp=NULL;
void myBmp(){D2D1_SIZE_U size = {256,256};D2D1_PIXEL_FORMAT pixelFormat = D2D1::PixelFormat(DXGI_FORMAT_B8G8R8A8_UNORM,D2D1_ALPHA_MODE_IGNORE);
pRenderTarget->CreateBitmap(size,D2D1::BitmapProperties( pixelFormat), &pBmp);
BYTE myImage[256 * 256 * 4];
for ( int y = 0; y < 256; y++ )for ( int x = 0; x < 256; x++ ){
// bgra ?
myImage[x + y * 256 * 4 + 0] = 0xFF;myImage[x + y * 256 * 4 + 1] = 0x00;myImage[x + y * 256 * 4 + 2] = 0x00;myImage[x + y * 256 * 4 + 3] = 0xFF;
}
D2D1_RECT_U rect = D2D1::RectU(0, 0, 256, 256);pBmp->CopyFromMemory( &rect, myImage, 256*4);
}
void Render(HWND hWnd){HRESULT hr; hr = ::CreateDeviceResources(hWnd);if(!SUCCEEDED(hr)) return;
if(pRenderTarget->CheckWindowState() & D2D1_WINDOW_STATE_OCCLUDED) return;
pRenderTarget->BeginDraw();pRenderTarget->Clear(D2D1::ColorF(0.0F, 0.0F, 0.0F));pRenderTarget->DrawBitmap(pBmp,D2D1::RectF(0,0,256,256));pRenderTarget->EndDraw();
}
236:デフォルトの名無しさん
15/06/08 03:10:10.45 DpcdWlc7.net
自己解決。。x*4忘れてたorz
237:デフォルトの名無しさん
15/06/08 17:42:48.12 FJKiao6d.net
NICT の NIRVANA改
カッチョイイ
238:デフォルトの名無しさん
15/06/13 07:04:05.00 azyOMa9j.net
DirectX9ですが
画像を複数表示するにはどうすればいいですか
239:デフォルトの名無しさん
15/06/15 08:40:35.18 dWbjA8KI.net
X9をやめてD2Dを使う
240:デフォルトの名無しさん
15/07/01 17:12:46.88 fBC12bhy.net
そろそろあげ
241:デフォルトの名無しさん
15/07/08 01:42:49.09 7D3f022O.net
HLSLで配列を初期化する際、
前方の一部だけ指定したい
int a[100]={1,2,3}; //こんな感じに
何か良いテクニックありますか?
242:デフォルトの名無しさん
15/07/08 21:29:37.49 GOX2kVSQ.net
ムリ
243:デフォルトの名無しさん
15/07/21 22:02:37.51 pGHGuv92.net
あのう・・・
DirectWrite で DWRITE_FONT_STRETCH をいくら設定しても効かないんですが、
誰か使えている人いますか?
244:デフォルトの名無しさん
15/07/31 03:42:05.35 ZvlPzE2R.net
Windows10だとDX11のDebugフラグつけたDeviceの作成に失敗するけどDX12になったから?
245:デフォルトの名無しさん
15/07/31 09:04:06.39 bMoNQi9D.net
>>241
d3d11sdklayers.dllが入ってないんでないの
確か対応するバージョンのWindows SDKのインストール時に入ったはずだけど
246:デフォルトの名無しさん
15/07/31 14:04:47.75 R58DjZqg.net
>>241
Previewの時経験したけど、アップデートするたびにデバッグ無効化になったから、毎回SDKインストールしてたよ
247:デフォルトの名無しさん
15/07/31 15:11:02.56 iTUugRSo.net
他でも聞いてみたのですが解決しないのでこちらで質問させてください
現在windows8.1 gtx970の環境なのですがシステム情報、gpuコントロールパネル共にdirectx11.0となっています。
最新がdirectx11.2とのことなのでこれにしたいのですがどうすれば11.2表示に出来るでしょうか?
248:デフォルトの名無しさん
15/07/31 15:15:12.22 +vtwnI8Q.net
そのNVIDIAコンパネのシステム情報に「Direct3D API バージョン: 11.2」ってなってるじゃろ
249:デフォルトの名無しさん
15/07/31 15:32:13.50 iTUugRSo.net
>>245
directxランタイムバージョン11.0
direct3D API 11.2
direct3D 機能レベル11_1
となっています
250:デフォルトの名無しさん
15/07/31 18:54:07.68 iTUugRSo.net
>>245
申し訳ないのですが>>244についてもう少し詳しく教えて下さると助かります
251:デフォルトの名無しさん
15/08/02 15:19:01.61 kJfkZ9rX.net
d3d11でVBをリングバッファとして使いたい。
VBへの要素の追加はNoOverWriteフラグでロックして行う。
NoOverWriteでは、GPU処理中の要素には
上書き禁止だそうだが、
どの要素が処理中かどうかって
どこまでわかるんだ?
リファレンスにはクエリで聞けとあるが
わかるのはGPUがアイドルかどうかで
荒らすぎてつかえない。
252:デフォルトの名無しさん
15/08/02 16:38:46.20 S1ftOYKr.net
>>248
おまえがプログラマとして使えないだけやん
253:デフォルトの名無しさん
15/08/02 16:56:39.53 Xe3deOvi.net
どの文書見て実装してるのか知らんがNoOverwriteで順に最後まで書き込んだら
Discardでまた最初から書き込むのが基本やで
254:デフォルトの名無しさん
15/08/03 08:56:38.70 225rt27W.net
discardでロックすると
それまで積んでた要素が失われる。
全て描画に送った後じゃないとdiscard出来ない制約が生まれる。
それを満たす為にはpushとpopを同期させる作りにしなきゃならん。
結局VBをリングバッファとして扱うのは
難しい為
この方法は止める。
255:デフォルトの名無しさん
15/08/03 10:47:28.77 ptKzu2cW.net
>discardでロックすると
>それまで積んでた要素が失われる。
これは何を言いたいの?
256:デフォルトの名無しさん
15/08/03 11:55:26.80 sKq+Zt9x.net
リングバッファ風に書き込んでVBを描画に使い回したいんじゃなくて
リングバッファそのものとして頂点情報の保持にも使いたいってことかね
いまいちその動機が読めないが、リングバッファてことは上限数は決まってるんだから
上限数分のVBを二つ用意すればできないこともない
257:デフォルトの名無しさん
15/08/03 14:16:37.33 tmEEi9D6.net
いやVBをリングバッファ的に使って描画を回したい。前者の通り。
用途は例えるならポイントスプライト。
座標管理側はVBに座標を次々にpush、
描画側はVBから可能範囲を描画し一気にpop。
制約が無いのが理想で、双方ストール無くぶんまわせる構造。
258:デフォルトの名無しさん
15/08/03 14:22:12.30 tmEEi9D6.net
ただ、それは難しい。
例えばVBのサイズが100で、99まで埋まっているとする。
そこに2要素pushする場合、
1つは普通にpush、もう1つは先頭に戻ってdiscardでpushする必要があるが、
discardした時点で先の1つは消失、じゃあdiscard時には描画を挟むのか、、とか
これを許すなら、もっと根本的に見直した方がい良さそうという結論。
259:デフォルトの名無しさん
15/08/03 14:54:40.40 gjcc/JJR.net
日本語でおk
まずはこれを読め
260: https://msdn.microsoft.com/ja-jp/library/ee416245.aspx >>253の使い方が正解に近いと思うが
261:デフォルトの名無しさん
15/08/03 15:43:45.74 ptKzu2cW.net
>じゃあdiscard時には描画を挟むのか
挟めばいいじゃない。ついでにリングバッファにする必要もない。
バッファが埋まったら描画、を繰り返せばよい。
描画中の頂点バッファをdiscardでLockしても描画は止まらない。
262:デフォルトの名無しさん
15/08/03 19:17:03.33 tmEEi9D6.net
描画側を能動的に回して
描画可能な頂点を刈り込むんじゃなくて
描画側を受動的に置いて
頂点が用意出来たら描画要求するのか
なるほど、やっと理解出来ました
よくよくみたら至極普通な話だったね
どうも
263:デフォルトの名無しさん
15/08/06 00:12:28.66 MDZOirvv.net
シェーダの勉強がてらシャドウマップ実装してみたから
続いてSSAO試してみようと思ってるんだけど必要な深度バッファは
シャドウマップと同じで光源座標からのレンダーで合ってるかな?
264:デフォルトの名無しさん
15/08/06 00:17:26.10 YtIxgi9m.net
ちがうんじゃね
スクリーンベースだから
265:デフォルトの名無しさん
15/08/30 11:15:11.35 4eVrttaS.net
DirectXでフルスクリーンに切り替えできるゲームを作っています。
ディスプレイ解像度のアスペクト比は4:3とか16:9とか、21:9とか、色いろあるみたいなのでそれぞれの環境で動作テストをしたいのですが
そんなに色々なディスプレイを購入するお金がありません。
何かいいテスト方法はないでしょうか(特に21:9ディスプレイ)
266:デフォルトの名無しさん
15/08/30 11:23:31.27 MD2IuXoy.net
固定値でWindowモードにしてテストするしかないだろJK
267:デフォルトの名無しさん
15/08/30 12:10:23.71 sWYg82Ms.net
>>261
Windowsの画面解像度を変えればイイんじゃない?
268:デフォルトの名無しさん
15/08/30 12:38:26.14 4eVrttaS.net
>>263
その方法は快適で確かなのですが、21:9みたいな極端なアスペクト比の解像度がないんです。
>>262
それしかないみたいですね。
やってみます。
回答ありがとうございました。
269:デフォルトの名無しさん
15/08/30 21:31:27.78 0fx918D3.net
>>261
実機テストしたいなら、実物ないとテストにならん。買え。
真面目に開発やるなら、更にSLIとサラウンド環境もテスト必須。
旧世代から最新世代まで、CPUも各種用意。
それが最低ラインだ。
270:デフォルトの名無しさん
15/08/31 00:53:14.67 RRNNmzmB.net
最低ではなく最高ラインだろ。それw
271:デフォルトの名無しさん
15/08/31 02:12:51.12 4zTsoFnu.net
16:9とか売れ筋のは買ってでも試すべきだと思うが、
それ以外で試せないのは潔くサポート外にすべきだな
272:デフォルトの名無しさん
15/09/02 10:51:48.85 UB/zVeMA.net
8月の核テロ犠牲者
元「モー娘。」市井紗耶香 母急死に悲痛「本当に信じられない」
今月23日、実母が急性大動脈解離で死去していたことを発表した。 61歳だったという。
URLリンク(twitter.com)
紺野比奈子さんって漫画家さん急死。8月18日に急性心臓疾患で急逝。16日までツイートされていた
URLリンク(twitter.com)
池袋の歩道で16日、乗用車が乗り上げ歩行者5人をはねた事故で、重体の女性死亡 容疑者の医師「ラーメン食べた。疲れて居眠り…」
路上寝込みによる交通死亡事故が埼玉県で8名 / ところかまわず眠りこける人が激増(写真多数)
URLリンク(ameblo.jp)
米サンオノフレ原発の「廃炉」を決めた三菱重工製の「欠陥製品」を使って、
8月11日から動かし始めたのが、鹿児島県の川内原発1号機なのです。8月だけで3人死亡…福島原発作業員
URLリンク(twitter.com) mada/status/637724233125113857
被ばく専門医育成に予算5億円
多くの住民が被ばくすること前提の再稼動って…どう考えても変じゃない? 安保反対よりも子ども達の未来を守ることの方が大切なんだが
URLリンク(twitter.com) amada/status/638158571151069184
他の国々のように、日本もさらに多くの原子力発電所を作ろうとしています。
多くの人々が核の汚染の影響で死んでいるのに、彼らは幻想の中に生きています。
人々は、放射の影響で不必要に死んでいます。汚染による死者の数は、他のいかなる原因よりも多いです。
ahjzfl-1/04zpzf/n0gkne
安全な原子力エネルギーをつくることはできません。それはわれわれの免疫組織を破壊し、ずっと昔に征服された病気が今また復活しはじめています。
magazines/si5n7k/04zpzf/tdgsoh
マイトレーヤは、世界中の核分裂による原子力発電所を直ちに閉鎖することを助言されます。
人間が生きるための呼吸そのものが脅かされている--彼はいかなる人間よりもその危険をよくご存じである。
33116k/yitdsf/u198z0
マイトレーヤが公に話し始めるとき、彼はこのことについて話されるでしょう。
273:デフォルトの名無しさん
15/09/04 03:17:13.15 LDUDJb8w.net
DirectX9.0cを利用していてシェーダモデル3.0を使用してます
どうしても導入したいHLSLのソース(関数群)があるのですが(SMAAの処理になります)
#define SMAAMad(a, b, c) mad(a, b, c) の行が undeclared identifier mad とエラーが出ます
そこで質問をお願いしたいです
1.madは調べた所シェーダーモデル5.0以上でサポートと表示されている、つまりDirectX11以降でない場合使えない
2.その場合回避方法はあるのか
お手数ですがどなたかご教授お願いします
274:デフォルトの名無しさん
15/09/04 11:35:59.55 FRpWLToA.net
自分で実装すればいいじゃん
madを調べたんなら戻り値がab+cって書いてあるの気が付かなかったか?
275:デフォルトの名無しさん
15/09/14 17:55:59.37 tmWO62/r.net
DirectX12のよい日本語解説サイトとか無いっすかね
ひたすらリファとサンプル読んでいるけど、英語つらいっす
というか一体どうしちまったんだ・・・検索してもまるでひっかからない
今や誰もDirctX12なんぞ興味ないのかいな
276:デフォルトの名無しさん
15/09/14 18:35:15.88 GDLdRuoL.net
そもそもNDAで色々提供されていたとかなんとか、未だにパブリックになってないファイルとかあるし。
ゲームエンジンで開発するのがスタンダードなのに、直に扱うのはエンジン作るか特殊なツール作る人だけだよ!
277:デフォルトの名無しさん
15/09/14 18:49:20.88 tmWO62/r.net
>>272
まさに特殊なツールの方で、DirectX9で作ってたのを作り直すのにどうせなら最新の・・・
と思っていたのですが、こりゃ厳しいですねぇ
ようやく文字描画まで来ましたが、おとなしくDirectX11にしておきます。レスサンクスです
278:デフォルトの名無しさん
15/09/14 20:09:03.05 JYLpXYKx.net
12になって、より初心者お断り感が強くなったね・・・
279:デフォルトの名無しさん
15/09/14 20:34:24.99 6PJU4LbS.net
UnityキディやUEキディのせいでCGエンジニアの技術は衰退するんだな
280:デフォルトの名無しさん
15/09/14 21:37:06.17 plliZxwM.net
イマイチ12を使う理由がない。
11でも性能に不満はないし
281:デフォルトの名無しさん
15/09/14 23:29:06.91 GVsHOVKD.net
今から勉強するなら11か12で10以前はナイ感じでしょうか?
解説サイトが8や9ばかりで、今それを見て勉強していいものなのか初心者にはさっぱりです
プログラマーさん教えて下さい
282:デフォルトの名無しさん
15/09/14 23:44:58.90 sJyZG+NW.net
10以前じゃなくて9以前がいらねーだな
10ならまあいいんじゃないかと
283:デフォルトの名無しさん
15/09/15 00:30:39.16 8tf01HmR.net
>>277
ぶっちゃけゲームエンジンで開発する方法を学ぶほうが良い。
面倒になるから。現代のDXは素人が直に触るものでない。
284:デフォルトの名無しさん
15/09/15 01:16:59.83 0vTJVQPd.net
うーんそうですか。DirectXの前に色々触ってきます…
回答して下さった方々ありがとうございます
285:デフォルトの名無しさん
15/09/17 02:01:27.19 ef5OJAMO.net
マイクロソフトがそう言ってるしね
とりあえずDirectXTKがテンプレートと一緒に対応するの待ってる
中の人頑張ってください
286:デフォルトの名無しさん
15/09/22 17:07:38.67 h24ihHJx.net
I/O BOOKS社の「DirectX 11 3Dプログラミング」という本の購入を検討しているのですが
DirectX11からはXファイルをサポートしていないということで
この本ではなんの形式を使って解説されているのでしょうか?
287:デフォルトの名無しさん
15/09/22 17:36:26.43 C1FtREIH.net
>>282
本屋で立ち読みして来い、カス
288:デフォルトの名無しさん
15/09/22 18:22:38.10 h24ihHJx.net
>>283
田舎なせいか周辺の本屋には置いてなかった
ツイッターで情報求めたらWavefront OBJファイルと回答頂きましたので解決しました
えーと、カスさん?自己紹介とレスありがとうございました
289:デフォルトの名無しさん
15/09/24 18:37:42.95 8LbVu94u.net
今Microsoftのホームページからダイレクトxの最新版ダウンロードしようとしたところページが飛ばされてWindows10のインストールページに飛ばされました ダイレクトxはどこからダウンロードすればいいのですか?
290:デフォルトの名無しさん
15/09/24 19:38:59.32 LVD16SnA.net
最新のDirectX12は、Windows10でしか使えないしWindows10であれば標準で搭載している
ドライバが対応していなければDirectX11以前の互換動作しかしないけどな
DirectX SDKはWindows10 SDKに含まれているので単独配布はない
291:デフォルトの名無しさん
15/09/24 22:08:54.58 8LbVu94u.net
>>286
ありがとうございます
元々directXはOpen Broadcaster Software(obs)をインストールしようと思って入れたかったのですが
結局Windows10ではobsをインストールする事は出来ないんですか?
292:デフォルトの名無しさん
15/09/25 04:37:20.14 YZQxqBDN.net
obsというのがどんなものかよく分からないがDX12必須なのか?
というより最近のWindowsならDXのランタイムは普通に標準で入ってるだろ
293:デフォルトの名無しさん
15/09/25 04:57:24.53 k+WHDr2C.net
とりあえず板違いなんだよな
なんで一般人がこの板に来てしまったのか
294:デフォルトの名無しさん
15/09/25 16:27:27.13 D41KBPRr.net
directxを習う前にwin32apiをマスターした方が良いですか?
295:デフォルトの名無しさん
15/09/25 16:42:02.17 ypPtv/2q.net
ゲーム作りたいならWin32APIは窓出すぐらいだから
そこまで詳しくならなくても大丈夫
296:デフォルトの名無しさん
15/09/25 18:48:36.79 BcpKoy3C.net
今からならWebGLだね
297:デフォルトの名無しさん
15/09/25 20:49:19.45 vR1NWbKu.net
WinGLですって?!
298:デフォルトの名無しさん
15/09/27 15:58:17.10 7bm0p/19.net
directX9.0cが最新かどうか確かめたいんですが教えて下さい
299:デフォルトの名無しさん
15/09/27 16:49:40.14 z6ae542I.net
DirectX診断ツールってググってみればいいんじゃね
300:デフォルトの名無しさん
15/10/04 03:15:46.79 wVepn4sU.net
URLリンク(blogs.microsoft.com)
DirectPhysicsってDirectX9の時にそんな話があったよね
NVIDIAに持ってかれちゃったけど
301:デフォルトの名無しさん
15/10/04 08:28:51.83 WmcitqoS.net
>>296
統合されてるほうがありがたいし、
今からでも遅くないからDirectPhysicsとやらを実現してほっすぃ。
302:デフォルトの名無しさん
15/10/09 20:33:21.01 uFI6sw1d.net
質問です。
D3DXCreateMesh()関数の引数で面数の制限が65534となっていますが、
65534を超える面のメッシュを作成するには、メッシュの関数を自作するしか無いのでしょうか?
303:デフォルトの名無しさん
15/10/09 22:46:54.36 Yz/Fh4nD.net
今更D3DXなんぞ試す気にもならんから検証せずに書くけど
D3DXMESH_32BIT指定すりゃいいんじゃねえの
304:デフォルトの名無しさん
15/10/10 14:04:04.43 TTfujcmY.net
>>299
解決出来ました!
ご回答有難うございます!
305:デフォルトの名無しさん
15/10/17 12:15:12.74 8crV4oii.net
URLリンク(gigazine.net)
306:デフォルトの名無しさん
15/10/17 18:35:11.48 jlghS53x.net
VS2010で、XAudio2BasicSoundのサンプルにあるDXUTを自分のプロジェクトにコピーしたんですが、
エラー 1 error C2664: 'mmioOpenA' : 1 番目の引数を 'LPWSTR' から 'LPSTR' に変換できません。
とかいう変換ヘラーが大量に大量に出てきます。
サンプルプロジェクトはビルドできるのに何がいけないんですか
307:デフォルトの名無しさん
15/10/17 19:21:23.18 5Tc8rVn8.net
>>302
コンパイラオプションでプリプロセッサマクロ_UNICODEとかが定義されてないからとか
サンプルのプロジェクトとそこに違い無いか調べてみそ
308:デフォルトの名無しさん
15/10/17 21:14:04.96 jlghS53x.net
>>303
ありがとうございます
プロパティ全部調べて同じになるようにしましたが今度は違うエラーが大量に・・・
エラー 1 error LNK2019: 未解決の外部シンボル __imp__mmioClose@8 が関数 "public: long __thiscall CWaveFile::Open(wchar_t *,struct tWAVE
309:FORMATEX *,unsigned long)" (?Open@CWaveFile@@QAEJPA_WPAUtWAVEFORMATEX@@K@Z) で参照されました。 の未解決の外部シンボルエラーが12個と エラー 13 error LNK1120: 外部参照 12 が未解決です。 のエラーが出ます。 全般>文字セット Unicode 文字セットを使用する VC++ ディレクトリ>インクルードファイル $(DXSDK_DIR)Include;$(IncludePath) VC++ ディレクトリ>ライブラリディレクトリ $(DXSDK_DIR)Lib\x86;$(LibraryPath) C/C++>全般>警告レベル Level4 C/C++>全般>追加のインクルードディレクトリ DXUT\Core;DXUT\Optional;%(AdditionalIncludeDirectories) C/C++>最適化>組み込み関数を使用する はい C/C++プリプロセッサ>プリプロセッサの定義 WIN32;_DEBUG;DEBUG;PROFILE;_CONSOLE;D3DXFX_LARGEADDRESS_HANDLE;%(PreprocessorDefinitions) プロジェクトはC++の空のプロジェクトにサンプルのコードとメディアファイルだけをコピーして来てます お願いします
310:デフォルトの名無しさん
15/10/17 21:27:03.27 dIGIrbNC.net
>>304
エラーを全部いちいち聞きに来るつもりかよ
おまえ、プログラミング向いてないよ
馬鹿には無理。諦めろ
311:デフォルトの名無しさん
15/10/17 21:36:06.05 gxWK5cyq.net
>>304
MMIOはDirectX関係ないのでは?
MMIOのライブラリをちゃんとリンクできるよう、
ライブラリフォルダおよびライブラリファイルを設定する必要がある。
312:デフォルトの名無しさん
15/10/17 22:47:57.91 5Tc8rVn8.net
>>304
linkはソースをコンパイルしたあと、出来たコードを全部くっつけて一つの実行ファイルにする。
未解決のシンボルがあるというエラーはくっつけたけど関数だったりグローバル変数だったりの実体が見つからない場合にでる
関数の実体を実装するのを忘れてたり、コンパイルするソースが足りなかったり、もし外部のライブラリーを使ってるならそれをリンクする指定出来てなかったりする場合に発生する。
だから未解決になったシンボルが実装されてるのは何処なのか調べてリンクの設定をするかソースをビルドに追加しするか自分が実装忘れてるだけならそれを実装する
外部ライブラリの中ならライブラリのreadmeとかにライブラリの使い方書いてるだろうからそれを読め
広く使われてるライブラリであれば未解決になったシンボル名ググったら出ることもある
313:デフォルトの名無しさん
15/10/18 00:41:51.56 tk6ffzik.net
Windows7 / 8.1 の時に VS2012 / 2013 で作ったDirectX11のプログラムがWindows 10 + Visual Studio 2015にしたら
_CrtlsValidHeapPointer(block)という例外をはいて動かなくなってしまったんだけどこれはDirectX12になったからでしょうか
一応過去のDirectXのSDKは入ってるはずです
314:デフォルトの名無しさん
15/10/18 11:01:40.57 iWDqeM+Q.net
おまえのプログラムのバグだろ
今までたまたま動いてるように見えただけ
315:デフォルトの名無しさん
15/10/18 13:03:39.42 Q87slw7q.net
あるある
316:デフォルトの名無しさん
15/10/18 14:50:48.47 sPJe7rRi.net
>>304-307
リンクエラーとは、関数を呼んだ際、
その関数の実体が、同一ファイル内に無くて、
外部のファイルから探そうとしたが、見つからなかった
(外部シンボル)
その関数が定義されているファイルを見つけて、
プロジェクトから参照できるように、
プロジェクトの参照設定に設定する
317:デフォルトの名無しさん
15/10/18 18:07:10.48 xYAXHHA+.net
>>304です
リンカー>入力>追加の依存ファイル winmm.lib;dxerr.lib;%(AdditionalDependencies)
でビルドできました。
サンプルの組み合わせでどこまで出来るかわかりませんががんばります!
ありがとうございました。
318:308
15/10/18 18:25:51.95 tk6ffzik.net
色々調べた結果DirectXTKをリンクすると発生する例外だったようです
最新のビルドに更新してはいるのですが自分の力では解決しそうもありませんでした
たぶんC++/CLIから使ってるのが悪いんじゃないかと思ってます
319:デフォルトの名無しさん
15/10/19 17:15:54.62 lzfL7faG.net
このスレではDxLibは扱ってますか?
320:デフォルトの名無しさん
15/10/19 17:17:57.12 81bgrC1J.net
こっちの方がいいんじゃね?
スレリンク(gamedev板)
321:デフォルトの名無しさん
15/10/19 17:20:31.63 lzfL7faG.net
>>315 ありがとうございます。
322:デフォルトの名無しさん
15/10/19 17:58:56.96 0FeynMog.net
ここにもまだいるかな
スレリンク(tech板)
323:デフォルトの名無しさん
15/10/21 00:30:16.73 izmItVAO.net
DXUTをC#から使うためにC++/CLIをプロジェクト追加したんですが、
.h
public ref class CWrapper
{
internal:
CSoundManager* pCSM;
};
.cpp
CWrapper::CWrapper(void)
{
this->pCSM = new CSoundManager(); ここがエラーになる
}
未解決のトークンが関数で参照されましたとかいう意味不明なエラーがでます。
どういうことですか?
324:デフォルトの名無しさん
15/10/21 01:53:08.42 7QYzBZcw.net
>>318
別に意味不明じゃないだろ
おまえがアホなんだよ
ggrks
325:デフォルトの名無しさん
15/10/21 14:45:50.52 +jx8x2Ca.net
そんな面倒な事しないで素直にSharpDX辺り
利用した方が早そうだけど
326:デフォルトの名無しさん
15/10/21 17:58:49.82 izmItVAO.net
あとちょっとなんです!!!!
.h
#include "SDKsound.h"
public ref class CWrapper
{
internal:
IntPtr^ ptr_;
};
.cpp
CWrapper::CWrapper(void)
{
this->ptr_ = gcnew IntPtr(new __thiscall CSoundManager());
}
SharpDX調べてみます・・・
ですが、ここを意地でもコンパイルしたい気分です!
おねがいします。
327:デフォルトの名無しさん
15/10/22 10:21:19.62 Tt+agvLL.net
C++オンリーのプロジェクトなら助言できそうなんだが、
C#は分からん・・・。
328:デフォルトの名無しさん
15/10/22 15:29:54.39 W/jpBTB7.net
>>322
馬鹿は黙ってた方がいいぞ
329:デフォルトの名無しさん
15/10/22 15:45:21.27 522gqyPw.net
同意します
330:デフォルトの名無しさん
15/10/22 16:02:22.34 7tOQiRDG.net
ちゅーかコンパイル通すためだけにネイティブポインタをnewに謎の__thiscall修飾子付けて
IntPtrに突っ込みつつ値型を参照ハンドルで保持するとかコントみてえなコードだな
まあスレ違いな話だしエラーの原因は知らんし調べる気もないんだが
マネージclassのメンバとしてネイティブポインタは普通に持てた記憶があるぞ
331:デフォルトの名無しさん
15/10/23 18:27:57.67 H0884K5+.net
C#のメディアプレイヤーが同時に鳴らない
XAudio2をC#プロジェクトに組み込もう>C++/CLIのラッパがコンパイルできない
そもそもXAudio2がDXUT使ってるならDXUTだけでならせばいいじゃん>C++/CLIのラッパがコンパイルできない
SharpDXで鳴らそう>構造を理解するのにDirectXを一から勉強するぐらい敷居が高い
やっぱりDXUTにファイル名渡してPLAYするだけなんだからC++/CLIの中間関数だけじゃんがんばろう!>_Tの為にマルチバイトとUNICODE設定を切り替えてたらエラーが100以上になって戻らなくなった
休憩しないで15時間座ってたらエコノミックになって呂律が回らなくなった>ギリ耐えたみたい。ふくらはぎは第二の心臓だと知り、歩きまくった
音はもう鳴らなくてもいいや>C#で作ってたAIから離れすぎて覚えてない。コメントの必要性に気付く。
やっぱゲームは作るよりプレイだな!>前よりゲームがすごい物に見えてさらになんか楽しい。 PS:イチゴの苗植えた
332:楽しみ←今ここ エラーは未解決のシンボル__thiscall 関数が__clrcall 関数から呼ばれました。 です。よろしくお願いします!!!
333:デフォルトの名無しさん
15/10/23 18:40:19.10 1qqrTAc5.net
SharpDXで鳴らそう>構造を理解するのにDirectXを一から勉強するぐらい敷居が高い
そんなことないのでSharpDXを使うか、既存のラッパーライブラリを使ってください。
334:デフォルトの名無しさん
15/10/23 19:13:43.41 uHnpljgA.net
>>326
またおまえか
もうくんな、カス
335:デフォルトの名無しさん
15/10/24 10:30:06.98 67o6alAT.net
C++/CLIってオワコンだよな
336:デフォルトの名無しさん
15/10/24 21:04:24.01 M/7YivB4.net
ここで残念なお知らせがあります。
SharpDXのXAudio2でたった10行のコピペで音を鳴らすことができました。
短い間でしたがありがとうございました。
337:デフォルトの名無しさん
15/11/01 20:41:32.94 k2nqdda8.net
動作環境に依存し難いプログラム作るために参考になる書籍とか資料とか知ってたら教えて欲しい。
DirectXやOpenGL使ってゲーム制作用のライブラリ作ろうとしては
一部の環境で期待した動作しなかったりして原因も特定出来ず禿げそうになる
338:デフォルトの名無しさん
15/11/02 11:31:04.91 u1Xcwdjg.net
python/pygame
339:デフォルトの名無しさん
15/11/05 12:44:24.29 Fe6RuUcZ.net
DirectX9のスプライトが表示されたりされなかったりで困っています
(関数内の配列の大きさを変えると表示されたりする)
自作のコードでダメだったのでネットのサンプルを試しましたが表示されません
URLリンク(princess-tiara.biz)
こちらのサンプルですpragma comentが間違ってたりstdio.h以前は邪魔だったりは直しています
RenderDirect3Dの変数をstaticにすると描画されます。
Drawの座標関係の引数をNULLにしても描画されます
BeginSceneからEndSceneまでの戻り値は全て正常です
何が間違ってるんでしょうか?
340:デフォルトの名無しさん
15/11/05 13:45:04.39 k1mCzttB.net
サイズが2のN乗
341:デフォルトの名無しさん
15/11/05 14:29:11.50 Fe6RuUcZ.net
>>334
256*256にしてみましたがダメでした
あとg_pSprite->Drawだけ別関数にして引数をローカルで宣言したら表示されました
別関数を2つ作りローカルで宣言したもの、RenderDirect3D内で宣言したものをポインタ渡し、元の描画
の3種類の描画を行うようにしましたが、別関数内のローカルで宣言した描画のみ表示されました
どうやらRenderDirect3Dの
RECT rc;
D3DXVECTOR3 center , position;
が使用できないようです。Present後にこれらの変数の内容を表示してみましたが問題はありませんでした
342:デフォルトの名無しさん
15/11/05 14:37:14.43 nBhPXObe.net
OSと再現ソース貼ってみ
343:デフォルトの名無しさん
15/11/05 14:55:50.09 sevP1ch/.net
スプライトってどっかのバージョンでかなりの仕様変更があったんじゃなかったっけ?
344:デフォルトの名無しさん
15/11/05 15:18:43.45 Fe6RuUcZ.net
URLリンク(www1.axfc.net)
OSはXP、dx_sdk(june 2010)、vs2008です
345:デフォルトの名無しさん
15/11/05 15:51:07.19 Fe6RuUcZ.net
ソース内のコメントアウトされた関数のDrawは表示されないっていうのは間違いでした
座標が上書きされたあとに表示してました
ハードの問題かと思いwin7のノートで実行してみましたが同様の結果でした
346:デフォルトの名無しさん
15/11/05 17:47:38.23 w1ErlqZK.net
分ったけど教えてあげるかどうか悩むわ、アホくさい
D3DXVECTOR3は三要素、xyzあるのに、xyしか初期化してないでしょ
当然zにはゴミが入っているから、何が起こるかわからない