Beauty Salon α-BET (alphabet)

space001
Blender3d Collada dae modeling Use Papervision3d on Progression3 and 4 http://a-bet.secret.jp/#/access
more whaison works.
whaison space
space002
http://whaison.jugem.jp/ https://jp.pinterest.com/whaison/ https://www.instagram.com/whaison/ https://whaison.amebaownd.com/
https://suzuri.jp/whaison
http://whaison.blogspot.com/
http://whaison.tumblr.com/ http://qiita.com/users/whaison http://www.behance.net/whaison https://github.com/whaison/ https://bitbucket.org/whaison http://serato.com/user/whaison http://whaison.hatenablog.jp/

typo memo
http://d.hatena.ne.jp/whaison/


dayNote
http://www.myspace.com/whaison http://ameblo.jp/whaison/ http://blog.crooz.jp/whaison/ http://blog.crooz.jp/whaisoncafe/ http://nenpyo.org/whaison

fulldisk
http://full.shin-gen.jp/
http://whaison.client.jp/
http://www.dclog.jp/whaison/
featured forums.
space004
forum.unity3d.com/

forums.unrealengine.com.

Progression Forum.

FlashDevelop Forum.

Papervision3D Forum.

FlexUserGroup Forum.

SparkProjectForum.





Twitter







Mobile
qrcode
Calendar
SunMonTueWedThuFriSat
    123
45678910
11121314151617
18192021222324
252627282930 
<< June 2017 >>
New Entries
Archives
Categories
Recent comment
  • FlashDevelopでフォント埋め込み
    感謝!! (12/24)
  • cocos2d-x-3.0rc0 ,c++ ,cpp でTexturePacker で 吐き出した、plist と png でパラパラアニメーションのコード例
    whaison (04/17)
  • Blender2.67にbvh(web上に2500個以上ころがってる)入れてそのBoneオブジェクトをUnity4.0のmecanimで使う
    whaison (08/19)
  • Apple Dev Center 「Certificates, Identifiers & Profiles」で Adhoc をつくってXCode4.6.1でArchiveしてipaを書き出し
    whaison (04/30)
  • Flash CS6でプロパティーパネルで物理演算のジャンプの高さを設定できるCitrus Engine
    whaison (03/01)
  • 「Flash以外、例えばKinectとか」ON TOKYO (会場:高田馬場4-11-8 Floor 6階 ) 短縮URL http://bit.ly/dI0Bfx
    uka (03/02)
  • App Store Review Guidelines アップル社のアプリ審査基準ガイドライン和訳 Apple が 開発者を悩ませ ユーザーをハッピーにしたいガイドライン。w
    whaison (01/25)
  • Unity3d では ADOBE JAPAN OSAKIで行われたFITC 2010 TOKYOでは、 「iOS用にパブリッシュするためには、フリー版ではなくて、有料版を買ってください。さらに追加のパッケージである、"iOS Package (for Development)"を買ってください」とのことだった。
    whaison (01/25)
  • enjoy Adidas-Futsal-Park
    whaison (01/16)
  • MacBookAir にFlashPlayer入れたらなった。Mac Flash Player 10.1/10.2でUstream などでカメラが認識されないバグそんなときはUstreamProducer!でもなくiPhoneだと直ぐにライブ配信できた
    whaison (01/14)
simple sintax high lighter2.0
space003
SyntaxHighlighter2.0用 の貼り付けコード作成する!
Profile
Links
Recommend
Admin
無料ブログ作成サービス JUGEM
Seach this site
            
2017.04.12 Wednesday
Shader Debugger [ Unity ] と[ Visual Studio ] で [ DirectX 11 ] [Microsoft HLSL Shader Debugger ] [シェーダーのデバッガー] を使ってみる。00200

 

 

 

[ Unity ] と[  Visual Studio ] で

[ DirectX 11 ] [Microsoft HLSL Shader Debugger ]

[シェーダーのデバッガー] を使ってみる。

 

Shader の世界ではRGB が111のとき XYZ が  111 として デバッグするのがふつうのようですが。。

 

 

実はデバッガは存在しています。

 

https://docs.unity3d.com/550/Documentation/Manual/SL-DebuggingD3D11ShadersWithVS.html

Debugging DirectX 11 shaders with Visual Studio

の日本語翻訳 です。日本語版も ありますが あえて 信じません。

 

 

またMicrosoftのHLSL Shader Debugger  「シェーダーのデバッガー」ページも参考にします

https://msdn.microsoft.com/library/hh873197.aspx

のページも参考にしています。

 

Unity と Visual Studio で DirectX 11 シェーダーのデバッガー を使ってみる。

Microsoft が

Visual Studio 2012 に導入している

 

Graphics Debugger グラフィックスデバッガは、

Unity エディター

Windows スタンドアロン

Windows Store Apps

のような

プラットフォームからの

フレーム(フレームバッファのことかな?)

キャプチャするために

使用できます。

 

最近、グラフィックスデバッガにいくつかの修正が行われたので、

Visual Studio 2013 を使用することをお勧めします。

 

 

注意:

Unity エディターは、内部にデフォルトで複数の子ウィンドウが含まれています。

 

 

これは、グラフィックスデバッガが誤ったウィンドウのフレームをキャプチャすることがあるためです。

正しいウィンドウをキャプチャすることを確実にするために、‘Maximize on Play’ タブをチェックして、キャプチャする前に Play ボタンをクリックしましょう。ですが、これでも正しいウィンドウがキャプチャされるという保証はありません。これがフレームのキャプチャで Unity エディターの使用を推奨していない理由です。

注意: Unity が DirectX 11 で実行されている場合、フレームは、キャプチャのみすることができます。Player Settings (PC、Mac、LinuxStandalone) -> Other Settings から DirectX 11 を選択することができます。

Unity エディターや Windows スタンドアロンからフレームをキャプチャするステップ。

  • Visual Studio 2013 を起動します。
  • File -> New-> Project -> Visual C++- >Empty Project を選択します。
  • Project -> Properties -> Configuration Properties -> Debugging を選択します。
  • Command フィールドには、Unity Editor や Windows スタンドアロンの PATH を設定し、$(TargetPath) には、C:¥MyApp¥MyApp.exe のように置き換えます。
  • (オプション) Command Arguments の1つ「 -force-d3d11 」は、Windows スタンドアロンまたは Unity エディター で DirectX 11 の実行を強制します。
  •   グラフィックスデバッガを実行する準備が整いました。
  • Debug -> Graphics -> Start Diagnostics を選択します。
  • すべてが正しく設定されている場合、
  • アプリケーションの左上隅に
  • “Use ‘Print Screen’ key to capture a frame”
  • (フレームをキャプチャするために’Print Screen’キーを使用します)
  • のメッセージが表示されます。以下のスクリーンショットを参照してください。

DirectX 11のシェーダーをデバッグするステップ。

  • シェーダーをデバッグするには、デバッグシンボル付きでコンパイルする必要があり、
  • これを行うには、
  • #pragma enable_d3d11_debug_symbols を挿入します。
  • 基本的な例を作成してみましょう。
  • 新規の Unity プロジェクトを作成します。
  • アセットウィンドウに新しいシェーダーを作成します。
  • #pragma enable_d3d11_debug_symbols を挿入します。
  • 新しいマテリアルを作成し、カスタムシェーダーを選択します。
  • いくつかのオブジェクトにマテリアルを割り当てます。例えば、cube 。
  • Windows スタンドアロンアプリケーションをビルドします。
  • 上記の手順でフレームをキャプチャします。

シェーダーは次のようになります。

■■■■  −−−−−−−−−−−−−−−−−−−−−−−−−−−−PNG START■■■■  −

 

 

 

■■■■  −−−−−−−−−−−−−−−−−−−−−−−−−−−−PNG END■■■■  −

 

■■■HTML COLOR TEXT START------------------//////////////------/////////////////START■■■

 

BLUE = HLSLとcg.include で定義済みの関数など 固定のもの

RED = 赤引数とその引数から作られた重要な変数オブジェクト。

BRONZE ="String"

PURPLE = " cg.inc か シェーダ内 で定義された プロパティ "

PINK = 定義された struct 構造体

YELLOW =  プログラマブルシェーダでかきますよ宣言 CGPROGRAM ENDCG

--------------------------------- S H A D E R - C O D E _ E x a m p l e   ----------- S T A R T ////--////---////-


Shader "Custom/NewShader" {
Properties {
_MainTex ("Base (RGB)", 2D) = "white" {}
}
SubShader {
Tags { "RenderType"="Opaque" }
LOD 200
CGPROGRAM
#pragma surface surf Lambert
#pragma enable_d3d11_debug_symbols
sampler2D _MainTex;
 struct Input {
float2 uv_MainTex;
};
void surf (Input IN, inout SurfaceOutput o) {
half4 c = tex2D (_MainTex, IN.uv_MainTex);
o.Albedo = c.rgb;
o.Alpha = c.a;
}
ENDCG
} 
FallBack "Diffuse"
}

--------------------------------- S H A D E R - C O D E _ E x a m p l e   ----------- E N D ////--////---////-

 

■■■HTML COLOR TEXT START------------------//////////////---------////////////////END■■■

 

すべてが正しく行われていれば、次のキャプチャされたフレームが表示され、

右クリックして Pixel History を選択し、

割り当てられたカスタムシェーダーを持つオブジェクトのピクセルを選択します。

Captured frame

Vertex Shader の次の play ボタン(上のスクリーンショットで赤丸部分)をクリックすると、

vertex シェーダーをデバッグすることができるはずです。

デバッグ中の vertex shader

Windows Store Apps

Windows Store Apps のために、ダミーの Visual Studio プロジェクトを作成する必要はなく

Unity がすでにプロジェクトを作成していますので、少しは簡単です。

フレームのキャプチャシェーダーをデバッグするための手順は

Unity Editor Windows スタンドアロンと同じようなものです。

その他のシェーダーテクニック

Unity エディターでは、RenderDoc を使用してシェーダーをデバッグすることもできます。

エディター内部からシーンをキャプチャして、スタンドアロンツールでデバッグを行います。

テクスチャ配列
シェーダーに固定関数 TexGen を実装する
| whaison | ShaderDebugger | 11:49 | comments(0) | - | pookmark |
Comment




whaisonStudyNoteBook をFaceBookで いいね!





Share |