locked
Visual Studio and Deploying Configuration for DirectX and Windows Store?

    Question

  • Hello,

       Since a reintegrate my core into Windows 8.1 aperture, I got some problem with my Visual Studio Configuration. This core have an inside database and document system. It’s like a big Zip file where the compiled shaders and resources files was inside.


    Because the compiled shader (CSO file) was inside a database, I have attempted to modify visual studio to compile the shader inside the resources folder before the database builder process. Visual Studio seems screaming about the location of the output shader file.

     

    $(OutDir)%(Filename).cso was the only form I can use.

    I try to use $(SolutionDir)Resources\CoreX\Shader\%(Filename).cso.

     

    To fix that I remove shader from compliance and build manually inside the database build script.

     

    PackageNDistribute.bat

    @echo off

    REM %1 = Solution Dir

    REM %2 = Out Dir

    Set FXCPROG="C:\Program Files (x86)\Windows Kits\8.1\bin\x64\fxc.exe"

    REM Rebuild shader

    %FXCPROG%/Zi /E"main" /Od /Fo"%~1Resources\CoreX\Shaders\Pixel.cso" /T"ps_5_0" /nologo "%~1Shaders\Pixel.hlsl"

    %FXCPROG% /Zi /E"main" /Od /Fo"%~1Resources\CoreX\Shaders\Vertex.cso" /T"vs_5_0" /nologo "%~1Shaders\Vertex.hlsl"

     

    REM Rebuild Database

    md "%~2Appx"

    md "%~2Appx\Resources"

    "%~dp0ScragXDBBuilder" /c "%~1Resources\CoreX" "%~2Appx\Resources\CoreX.dat"

    "%~dp0ScragXDBBuilder" /c "%~1Resources\ScragX" "%~2Appx\Resources\ScragX.dat"

     

    I put this package inside POST-BUILD

    Command : "$(SolutionDir)Tool\PackNDistribute.bat" "$(SolutionDir)" "$(OutDir)" that put database file inside Release\Appx

     

    The problem it’s any build event (Pre to post) seem to not work well with Windows store, I must build twice with Visual Studio (because database file was delete) to make it work. 

    And I can’t test anymore on my surface pro by starting debug thru remote computer. 

     

    Q: What you recommend it this situation? Does we can rebuild shader by Visual Studio interface and can we program to inject extra files into windows store package.?

     

    Pro:

    • Any for the moment, because compliance was not totally automatic and database missing (flushed).

    Con:

    • Modify batch at each time you add shader file was boring.
    • Database seems to be flushed inside Appx Folder.
    • Project/Windows Store/Create package missing Database file (Certification too)
    • Execute to remote computer doesn’t work anymore (still DB missing problem)

     


    Wednesday, April 16, 2014 5:38 AM

Answers