none
3D Permission Policy Best Practice

    Question

  • In learning about Silverlight 3D's inconvenient security authorization process (as described here:http://blogs.msdn.com/b/eternalcoding/archive/2011/10/18/some-reasons-why-my-3d-is-not-working-with-silverlight-5.aspx), I'm curious whether anyone has implemented, seen, or dreamt up any good work arounds.  I've just ported a 2D XNA game (that does draw some vector graphics with the BasicEffect) to run in a browser, and would like to make this as easily accessible to players as possible.  I'm not very experienced with silverlight or web permissions, and don't know whether there are any alternatives to trying to help users navigate through the silverlight configuration tool.  Some thoughts about options that I'm not yet well informed enough to evaluate follow:

    • load the configurations dialog from silverlight, to make that part of the process easier
    • have silverlight app run with elevated trust and/or out of browser (unsure whether easier or harder for users)
    • fall back on a non-GPUEnabled rendering path (I don't believe this is possible, but am not sure?)
    I'm very interested in hearing what people think about these options, as well as any other options that I may not have thought of.  Again, my goal is to make it as easy as possible for people to play my game.
    Best, Gary.
    Tuesday, March 20, 2012 12:17 PM

Answers

All replies

  • load the configurations dialog from silverlight, to make that part of the process easier

    You can save configurations in Isolated storage.

    have silverlight app run with elevated trust and/or out of browser (unsure whether easier or harder for users)

    I think if you want to create a game,in browser is enough. save files in Isolated storage and then run the game.(it's just like flash)

    fall back on a non-GPUEnabled rendering path (I don't believe this is possible, but am not sure?)

    don't know what is the non-GPUEnabled rendering path.

    but one article:

    Silverlight Hardware Acceleration

    Thursday, March 22, 2012 2:36 AM
  • Thanks for the feedback LightSwitch.  If you are suggesting storing save-game information in isolated storage, then I believe that we are talking about different things.  I am instead talking about the silverlight program that must be run to allow silverlight 3d to use hardware acceleration.  That program is called "Microsoft Silverlight" (in the start menu), "Microsoft Silverlight Configuration" (title in running application's window), or "Silverlight.Configuration.exe" (the actual executable).  

    Thursday, March 22, 2012 8:38 AM
  • Please take a look at http://blogs.msdn.com/b/eternalcoding/archive/2011/12/10/silverlight-5-is-out.aspx, which explains why the 3D Security feature was done the way it is.

    The best practice is similar to what the Babylon sample does, and like you mention (Tell the user to enable this feature) for your site and why.  http://code.msdn.microsoft.com/Babylon-3D-engine-f0404ace

    If you can make your game work withough direct access to the GPU (like Shaders) that would be more convienent and safe for your end users.

     

    Friday, March 23, 2012 1:25 PM
  • Thanks Trevor.  I understand that there is a security concern, and am just trying to make the users' experience as simple as possible.  I guess I'll shoot for something similar to the Babylon sample, and hope that a future silverlight update may improve on this process to make it more similar to how plugin installation and webcam access is authorized (with a simple Yes or No dialog choice).

    Friday, March 23, 2012 9:23 PM