• Microsoft UK Faculty Connection

    Inspiring the next generation of programmers - developer tools from Microsoft

    • 5 Comments

    At Microsoft we have an amazing set of tools to inspire future developers

    Here a list of developer tools to help inspire tomorrow developers (Figures in bracket are guidelines for ages that it is appropriate) For FREE additional curricula materials see http://www.microsoft.com/faculty

    ·         Kodu (5-11)

    Kodu is a new visual programming language made specifically for creating games. It is designed to be accessible for children and enjoyable for anyone. The programming environment runs on the Xbox, allowing rapid design iteration using only a game controller for input. The core of the Kodu project is the programming user interface. The language is simple and entirely icon-based. Programs are composed of pages, which are broken down into rules, which are further divided into conditions and actions. Conditions are evaluated simultaneously. The Kodu language is designed specifically for game development and provides specialized primitives derived from gaming scenarios. Programs are expressed in physical terms, using concepts like vision, hearing, and time to control character behaviour. While not as general-purpose as classical programming languages, Kodu can express advanced game design concepts in a simple, direct, and intuitive manner. See http://www.kodugamelab.com/about

    ·         The Kodu Cup (7-14)

    The Kodu Kup is a game creation competition for UK school-children aged between 7 and 14. The Kodu Kup is open to any child enrolled as attending a UK school and who is aged between seven to fourteen years of age at the date of entry. Children are entered by their appropriate school teacher as a team of three. For more information the flyer can be downloaded from here: http://bit.ly/KoduKupFlyer

    ·         Small Basic (5-11)

    Small Basic is a project that is focused at making programming accessible and easy for beginners. The Language draws its inspiration from an early variant of BASIC but is based on the modern .Net Framework Platform. The Environment is simple but rich in features, offering beginners several of the benefits that professional programmers have come to expect of a worthy IDE. A rich set of Libraries help beginners learn by writing compelling and interesting programs. Small Basic is intended for beginners that want to learn programming. In our internal trials we've had success with kids between the ages of 10 and 16. However, it's not limited to just kids; even adults that had an inclination to programming have found Small Basic very helpful in taking that first step. See http://www.smallbasic.com

    ·        .NET Gadgeteer (6-24)

    Are you ready to create something awesome? Microsoft .NET Gadgeteer is an open-source toolkit for building small electronic devices using the .NET Micro Framework and Visual Studio/Visual C# Express. Build all manner of electronic gadgets quickly and easily with .NET Gadgeteer! LEARN HOW TO GET STARTED

    ·         TouchDevlop (8-24)

    TouchDevelop makes learning programming exciting! You can write code directly on any device and you can directly use sensors and media via high-level APIs. It's easy to create games and apps, publish them or tweak those published by others. You write code in our touch-friendly editor where you compose programs by tapping on your screen, yet concepts you learn transfer to traditional languages such as Java or C#. TouchDevelop embraces the "Bring Your Own Device" revolution by providing a unified programming environment everywhere. http://www.touchdevelop.com

    ·         Project Spark (8-24)

    Project Spark is a digital canvas which can be used to make games, movies and other experiences. A player can download other user-generated content, remix that content or create content of their own. A player can use the Xbox controller, keyboard and mouse, touch-devices and Kinect to build experiences. Kinect can be used to animate models and record audio. The created environments can contain mountains, rivers, and towns. http://www.projectspark.com

    ·         Web Application Template (11+)

    The Web Application Template is an Open Source Visual Studio 2013 template that lets developers create Windows 8.1 apps based on existing web content. Used in the right way, Web Application Template can facilitate the creation of compelling extensions to your web content for Windows users.

    ·         Windows Phone AppStudio (8-24)

    Windows Phone App Studio lets you swiftly build apps for immediate publishing, testing, and sharing with clients, co-workers, and focus groups. Windows Phone App Studio generates your source code - a feature no other app-builder tool provides so you can learn the basic and make enhancements with Visual Studio. http://apps.windowsstore.com/

    ·         Project Siena (8-24)

    Microsoft Project Siena (code name) is the beta release of a new technology for those interested in building an app without any programming experience, you can create powerful apps for the device-first and cloud-connected world, with the potential to transform today’s business processes.

    Here are some examples of what people have already been building:

    • Apps to explore media-rich product catalogs and create ensembles that together serve a customer’s needs
    • Apps used on the spot to resolve customer service bottlenecks and logistics exceptions, with the custom intelligence to help the user make local tradeoffs

    Apps for auditing and inspecting a manufacturing facility through photos, videos, and pen and voice notes, all tied to an asset database see http://www.microsoft.com/en-us/projectsiena/default.aspx

    ·         DreamSpark (6+)

    DreamSpark is a Microsoft Program that supports technical education by providing access to Microsoft software for learning, teaching and research purposes.

    DreamSpark is simple: it's all about giving students Microsoft professional-level developer and designer tools at no cost so that students can chase their dreams and create the next big breakthrough in technology - or just get a head start on their career.

    DreamSpark helps educators teach the latest technologies and experiment in research. Microsoft knows that to make learning more motivating, relevant, and engaging for today's students requires a diverse set of resources. DreamSpark gives educators the resources to ensure their classrooms always have the latest technologies to challenges, motivate, and keep students engaged in new ways.

    DreamSpark is also a subscription for Academic Institutions: it provides a cost-effective way to put Microsoft developer tools, platforms and servers in labs and classrooms, and on their students’ and faculty’s computers for learning and research purposes. It reduces lab costs and teaching budgets.

    How do I get DreamSpark Software?

    As a Student: simply create an account, verify your student status and download software through this website at no cost. If your school/university has a subscription, you can also get access to more software titles.

    Learn more clip_image002

    As an Educator: you can get access through your institution’s subscription. Talk to your school administration to get a DreamSpark subscription and order today!

    Learn more clip_image004

    As an Academic Institution: order the subscription type that is right for you. DreamSpark Standard is for all types of institutions from primary to tertiary educations. DreamSpark Premium has a wider software catalog of over 500 products and is for qualifying technical departments only.

    Learn more clip_image004[1]

    ·         DreamSpark FREE Store Developer Account for Windows 8 and Windows Phone (16+)

    Develop applications for Microsoft software that showcase your talent, your skill and your development creativity. If you can imagine it, you can create it, and you may even just change the world with it. https://www.dreamspark.com/Student/App-Development.aspx

    ·         Xbox For Education (6+)

    The Xbox for Education offer includes a 3-Year DreamSpark Standard subscription for the institution. To take advantage of this offer from Monday 27th January, schools and colleges should visit: www.Xboxforeducation.co.uk

    Xbox for Education and the associated resources available at DreamSpark http://www.dreamspark.com and Microsoft Faculty Connection Resources http://www.microsoft.com/faculty provides teachers with resources from first principles to advanced techniques.

    These resources will shows you how to use the C# language to solve problems and how C# is used within the Microsoft XNA Framework to create games. The games that you write using the resources available can run on a Microsoft Windows, an Xbox 360, or a Windows Phone.

    Or simply use packages such as Kinect Sports and Adventures, Mind Craft, Kodu and Project Spark in the classroom.

    ·         The Imagine Cup (16+)

    There are lots of ways to participate in Imagine Cup. Find the competition that's right for you and your team. Fans of gaming? Check out the Games Competition. Want to change the world? Take a look at the World Citizenship Competition. Click on any competition's name to learn more about it, read up on the rules, and learn how to sign your team up. http://www.imaginecup.com

  • Microsoft UK Faculty Connection

    Get up to speed on Windows 8 in 6 weeks

    • 3 Comments

     

         win8_screenSurfaceDreamSpark

    So its now the summer holidays, well its the perfect time to get skilled up for Windows 8, to do this you will need to be fully prepared. To confirm RTM of Windows 8 has been confirmed for August and General Release for Oct 2012.

     

    So to help you get prepared we have created a 6 week plan for you.The plan is based on a minimum of 10 hours study time per week. The better prepared you are the better you will do with implementing Windows 8 within your curricula or even simply having the discussion with students using Windows 8 next term.

    From a Microsoft perspective we have a massive amount of materials to help you prepare and create a very comprehensive application and we provide you with the suite of Tools and Documentation to help you create their very first Metro 8 App.

    Additionally we have also made available a large array of Samples, Examples and Templates as well as Video tutorials and blogs. If you follow these you will find the path to releasing your first game or application for Windows 8.

    Apps can be written in C#, C++, HTML or even using a new bespoke tool aimed at Designers. The most import thing is to start right now, read and work your way through the plan, install Windows 8 and the Metro SDK and start developing.

    So here is the six week plan for Windows 8 development.

    Week One

    1. Introduction

    a. What is a Windows 8 Metro App, click Here

    b. A great intro Blog for you, click Here

    c. Understand the UX Guidelines click Here

    2. Getting started with Metro style apps, click Here

    a. Installing Windows 8

    b. Download and install SDK & Dev Tools

    3. Get the Developer Licence, Click Here

    a. Install the" Windows 8 camp in a box", click Here

    b. Quickly get an overview of all the presentations

    4. Choose your preferred Development environment/Language

    a. JavaScript and HTML (recommended for Designers & Artists)

    b. Download relevant documentation, click Here

    c. C#, Visual Basic and XAML (recommended for Designers & Artists)

    d Download relevant documentation, click Here

    e. C++ and DirectX (recommended for Programmers or teams with Programmers in)

    f. Download relevant documentation, click Here

    5. Understanding What makes a great Metro app, click Here

    6. Planning your first App, click Here

    a. Planning for Monetisation, click Here

    b. Planning for Quality and Certification, click Here

    c. Planning for different devices, click Here

    d. Plan for a Global Market, click Here

    e. Plan for Usability, click Here and Here

    Week Two

    1. Review available Templates and sample Apps, click Here and Here

    2. Take a look at the Samples and Examples in the Windows 8 Camp in a box

    a. Work through these Examples

    3. Take a look at the Windows 8 Faculty game examples, click Here

    a. Consider how you could use these examples to create your own game

    4. Download Designer PSD’s, click Here

    5. Play, with your chosen development

    a. Set up Visual Studios

    b. Work through a simple “Hello World”, style tutorial

    c. C++, click Here

    d. HTML5/Javascript, click Here

    e. Visual Basic, click Here

    f. C#, click Here

    f. Get your development processed organised and ready to go

    6. Plan and design your first simple app,

    7. Create it

    Week 3

    1. Re-review progress so far, and create second more complicated app

    2. Further reading on what makes a great Metro App, click Here

    3. Looking at ways to speed up your development, click Here

    4. Using Blend, click Here and Here

    5. Continue with your chosen Development training

    a. C++, click Here

    b. HTML5/Javascript, click Here

    c. Visual Basic, click Here

    d. C#, click Here

    Week 4

    1. Continue with your detailed studies and tutorials

    2. Watch as many YouTube Tutorials and App sample videos as you can

    3. Advanced considerations, click Here

    a. Selling apps

    b. Concepts and architecture

    c. API reference

    d. End-to-end apps.

    Week 5

    1. Continue with your detailed studies and tutorials

    2. Planning for the Assessments or Developing Games

    a. Some Great Game building Links, click Here

    b. How to Design a great Metro 8 Game, click Here

    c. More Game / Entertainment considerations, click Here

    Week 6

    1. Continue with your detailed studies and tutorials

    2. Finally, understand about Metro 8 App Publishing, click Here

    a. Market Opportunity

    b. Designed for discovery

    c. Flexible business models

    d. Uber-transparency

    e. Best economics

    Some Great Links

    Microsoft's official Metro 8 App site

    Microsoft's UK Student and Faculty resources 

    A complete list of resources for METRO Windows 8 Developers

    Microsoft's App Publishing – Declaring capabilities

    · Manifest Designer

    · How to specify capabilities in a package manifest.

    Intro to Window 8 & the App store

    One on One style tutorial Webcasts on Metro 8 development

    BUILD Conference Resources  

    Designing for Windows

    UX GuideLines

    Windows User Experience Training

    Windows Camp Resources

    Additional Videos

     

    Windows 8–Developer Resources

    Developer downloads

    Content

    URL

    Details

    Windows 8 Consumer Preview Download

    http://bitly.com/WIN8cp

    Windows 8 Consumer Preview download (web installer or ISO’s), videos, and FAQ’s.

    Developer downloads for Metro style apps

    http://bitly.com/metroDwnld

    Visual Studio 11 Express and the Windows 8 SDK + all the extra tools and SDK’s for Metro style app development.

    Design assets for Metro style apps

    http://bitly.com/MetroUX

    100+ Photoshop files with common controls, shell components, tiles, icons, animation clips, color wheel references, and more.


    Metro style app developer content

    Content

    URL

    Details

    Windows Dev Center home

    http://bitly.com/DevCtr

    Links to Metro style app, Desktop app, Hardware, and IE development.

    Metro style app development home

    http://bitly.com/MetroCtr

    Links to key resources for designing, developing, and selling Metro style apps.

    Product guide for developers

    http://bitly.com/PGwin8

    Windows 8 Consumer Preview Product Guide for Developers.

    Official documentation

    http://bitly.com/MetroDocs

    Comprehensive docs, articles, quickstarts, roadmaps, tutorials, checklists, developer agreements, and whitepapers covering all aspects of app design, development, and selling:

    · Getting started

    · Planning apps

    · Designing UX for apps

    · Developing apps

    · Packaging apps

    · Debugging and testing apps

    · Selling apps

    · API reference

    · Concepts and architecture

    · Language reference

    · End-to-end apps

    Design resources

    http://bitly.com/DesignUX

    Design principles, UX design patterns, detailed UX guidelines, downloadable design assets, assessing usability.

    Selling apps in the Windows Store

    http://bitly.com/W8Store

    Windows Store markets, developer agreements, and checklists to prepare.

    Developer downloads for Metro style apps

    http://bitly.com/DwnldsMetro

    Visual Studio Express and the Windows 8 SDK + extra tools and SDK’s for Metro style app development.

    Metro style app samples

    http://bitly.com/MetroSmpls

    Over 200 official samples from Microsoft are available in multiple programming languages. You can copy code inline, upload new code, rate, and leave comments.

    Developer forums

    http://bitly.com/MetroForums

    Developer forums for Metro style apps covering designing, developing, and selling apps.

    Blogs for developers

    Blog Name

    URL

    Details

    Building Windows 8 blog (B8)

    http://blogs.msdn.com/b/b8/

    An inside look at how, what, and why different features of Windows 8 are being built. This blog is written by Windows President Steven Sinofsky together with members of the Windows engineering team.

    Windows Store blog for developers

    http://blogs.msdn.com/b/windowsstore

    All about doing business in the Windows Store. Members of the engineering team who’ve built the Windows Store write posts along with Antoine Leblond, Vice President of Windows Web Services.

    Windows 8 app developer blog (D8)

    http://blogs.msdn.com/b/windowsappdev

    Explores best practices for coding and designing Metro style apps. It is written by the team of developers who are building Windows 8.

    IE blog

    http://blogs.msdn.com/b/ie/

    Windows Internet Explorer Engineering Team Blog.

    Inside Windows Live blog

    http://windowsteamblog.com/
    windows_live/b/windowslive/

    The engineering being Hotmail, Messenger, SkyDrive, and Windows Live.

    Visual Studio Blog

    http://blogs.msdn.com/b/visualstudio/

    The official source of product insight from the Visual Studio Engineering Team.

    The Windows Blog

    http://windowsteamblog.com/

    Consumer and general interest topics.

  • Microsoft UK Faculty Connection

    Getting started building Windows Phone Games with Unity

    • 2 Comments

    With the release of Unity 4.2, you can now take your Unity games and quickly port them to Windows Phone 8 and extend your reach to Windows users.

    Getting started building a Windows Phone 8 game with Unity

    To develop, compile and submit a Unity game to the Windows Phone store, you will need:

    Unity 4.2 . Either the Unity free version or Unity Pro will work. The add-ons to publish to Windows and Windows Store are free, even for Unity Pro users.

    Windows Phone SDK 8.0 The WP8 SDK includes a stand-alone version of Visual Studio Express 2012 - if you already have Visual Studio Premium or Ultimate, the SDK will work as an addin and you can continue to use your version-.

    Windows 8.0 or later. If you do not own a Windows 8 license, you can get a 90-day evaluation version. If you are running Mac OS X or will install on Apple hardware, check different options for installing using Boot Camp, VMWare , or Parallels.

    Windows Phone developer account. This is needed to “unlock” your phone so you can side load your game for developing and testing. It will also be needed to submit your game to the Windows Phone store.

    Windows Phone 8 device. In Unity 4.2, deploying and debugging to the Windows Phone emulator is not supported, so you will need a phone. Once you have a phone and your developer account, follow these instructions to register your phone for development.

    Porting your game

    Targeting a new platform always requires a few tweaks, such as using a few platform specific APIs (e.g. in-app purchase or application life cycle) and tailoring the game to the device’s hardware capabilities (e.g. a back button).

    Design-time differences

    To create your game, you will still be using the Unity IDE. This will feel very familiar and keep your productivity high. That said, there is a significant difference that you should keep in mind: When running the game within Unity, it will run using the Mono run-time; however, once you build for Windows Phone platform and deploy to the phone, you will be running in the .NET for Windows Phone run-time.

    Here are a few tips for dealing with this “dual run-time” environment:

    1. If including script files that will run in Unity, use the #if UNITY_WP8 pre-processor directive to refer to code that should not run inside Unity.

    2. For plugins, include Unity plugins to be used in the Unity editor in the Assets/Plugins directory and include the run-time plugins for Windows Phone in the Assets/Plugins/WP8 folder.

    3. Make sure you test your game thoroughly on a device. If you are referencing a Mono API that is not on Windows Phone, it will work fine in the Unity player, and throw an exception on the phone.

    4. Unity uses the Mono compiler to generate phone assemblies, as such you may find that once in a while you will call a Mono API that is not in phone and even the compiler (when you build for phone) will not catch it. These errors will lead to exceptions when running on the phone. A good tool to validate an assembly’s portability to Windows Phone is http://scan.xamarin.com. You should extend this practice of validating your assemblies to compiled plugins. If you purchase a plugin that ships as a binary, validate it to make sure it uses only Windows Phone APIs.

    If you find errors or missing Mono APIs that you are using in your game, you should look at the .NET API for Windows Phone reference site to find alternates.

    User interface

    Windows Phone renders their UI using XAML. This infrastructure can be useful if you want to have UI that is not in your Unity game (such as a splash screen or ads). XAML UI and Unity UI can compose seamlessly. The way this composition works is via the DrawingSurfaceBackgroundGrid control. This control uses Direct3D to render what is effectively the background to the whole screen. Unity renders your game against this surface using hardware accelerated Direct3D. For more details on XAML + Direct3D composition, refer to the XAML and Direct3D apps for Windows Phone 8 write-up on MSDN.

    The graphics composition with via the Unity engine will all be transparent to you. It is where you mix and match that you will need to remember these four details:

    1. Within your app, you can include XAML UI controls and widgets (such as an ad control, buttons, etc.) that compose visually with your game.

    2. If you add XAML UI, this will be in front of your game since your game is rendered as the background of the scene.

    3. To maximize compatibility across screen sizes, XAML content is scaled. XAML content is 480 wide, and then scaled. [So on devices with 1280x768 resolution, Unity will see this resolution and XAML content will be 480x800, scaled 1.6 times. If you are trying to align a pixel-perfect composite of a scene that uses XAML and Unity content, you will need to scale down your Unity content. You can get the scale from the Appication.Current.Host.Content.ScaleFactor property.

    4. XAML UI runs on a different thread than Unity, so you will need to dispatch messages to the right thread in order to access the respective UI components for each technology:

    To tweak XAML UI from a Unity callback, use this:

       1: Dispatcher.BeginInvoke(() => 
       2: { 
       3: //access XAML UI elements here..
       4: });

    To call from within XAML UI thread onto the Unity thread, use:

       1: UnityApp.BeginInvoke(() => 
       2: { 
       3: //access Unity objets here..
       4: });

    Capabilities

    Windows Phone games must declare some of the resources or APIs they will consume.

    This is done via declarations in the application manifest (WMAppManifest.xml). If you are making network requests, accessing sensors, using push notifications, etc. you will need to declare these, else your app with get exceptions or failures with access denied.

    Everything you need to know about capabilities is in the capabilities documentation page. Review that page and double click on the WMAppManifest.xml document in your Visual Studio project to declare the resources you will need; there is no coding required for any of these.

    Process Lifecycle Management

    The Windows Phone application model has one foreground app (the one that is visible) that has access to most of the OS resources (memory, CPU, networking); to enable fast app switching, the OS does keep recently used apps that the user has not explicitly closed in memory. All of this app model is explained to great detail in the “App activation and deactivation for Windows Phone documentation.

    For games where you are saving state as early as possible, the default mappings to Unity events should work well. If you want to optimize further, all these events are in App.xaml.cs and the default Unity generated code is subscribing to them, you can add extra logic in the event handlers on the C# side, and use a plugin to communicate with your game code.

    Hardware details

    Windows Phone 8 has a detailed minimum hardware spec that all devices must meet; you should expect high-degree of consistency across the devices.

    Hardware acceleration with programmable GPU. Windows phone uses Direct3D with feature level set to 9_3. MSDN has a great table of the supported features by level. The two biggest take-aways to notice are shader model level 2 and max texture size of 4096.

    Windows phone 8 devices come in three resolutions: 480x800(WVGA), 768x1280 (WXGA) and 720x1280(720p). To find the resolution of your device, you can query the Screen.width and Screen.height properties within your Unity scripts; you can then scale appropriately within the game. For static assets outside the game (tiles, splash image, etc.) supplying assets for the WXGA resolution often suffices, Windows Phone will scale these.

    Memory comes in multiple configurations: 512 MB of RAM for the WVGA devices, and minimum of 1GB RAM for the 720p devices. The newest phones such as Nokia 1020 are up to 2GB.

    The OS limits how much memory a single application can consume; for lower memory phones this is around 150MB for a single app, and it goes up to around 380MB for higher memory phones. There are capabilities you can declare in your manifest to opt into specific memory behaviours and to opt out of running on low-end devices.

    The default Unity projects opt into the ID_FUNC_EXTENDED_MEM capability, which says your game will run in a lower memory device, getting up to 180 MB. You can opt out of lower memory devices by using the ID_REQ_MEMORY_300 capability; learn more about the limits and the capabilities from the App Memory Limits documentation.

    Accelerometer is available on all phones and directly accessible from Unity APIs.

    Magnetometer and gyroscope are optional on the hardware on the phone. Compass APIs are not implemented in 4.2, but they are in the upcoming 4.3 release.

    Hardware Back button. All Windows Phones have a dedicated back button and there are specific guidelines on what an app should do when the back button is pressed:

    • If you have implemented navigation within your app, pressing the back button should go back to the previous step in your navigation.

    • If you are inside a modal dialog (e.g. settings or achievements, etc.) pressing back button should dismiss the dialog.

    • If you are not in a dialog and you are at the root of the navigation game (or you do not have navigation in your game), pressing the back button should exit the game.

    To handle the back button, use the same mechanism as android: listen for the Escape key.

    Note that proper handling of the back button is a certification requirement. If you do not handle it, you will fail certification. The default code exported from Unity does not handle it, they do the work to suppress it, and expect you to handle Escape key. If you do not want to waste cycles on every update listening for the Escape key you have a game with a single screen and no modal dialogs where the back button would always exit the game, you can comment out the e.Cancel assignment from the

       1: BackKeyPress event handler in MainPage.xaml.cs
       2: private void PhoneApplicationPage_BackKeyPress(object sender,CancelEventArgs e) 
       3: { 
       4: //e.Cancel = UnityApp.BackButtonPressed();
       5: }

    Performance

    As any mobile platform, performance is important and you should test for it. Most of the standard Unity guidance on optimizations for mobile devices applies. Most games should not need platform specific optimizations (outside of tweaking visual features to the GPU capabilities on phone). For those looking to get every drop of performance, interop cost on Windows is a bit higher than on Mono. You need to be smart about crossing the boundaries from your script (C# or UnityScript) to the unity engine (which is written in native code).

    A few APIs are still in progress

    Unity support for Windows Phone is still growing so not all APIs have been ported, there is only a few missing,

    • Compass support is not in Unity 4.2

    • Location services is not in Unity 4.2

    • Webcam support is not in Unity 4.2

    •  Microphone support is not in Unity 4.2.

    • WWW is implemented but multiplayer networking APIs are missing. You can used .NET APIs or third party libraries (e.g. photon) as an alternative.

    • GPU profiling is not available yet.

    • Application.OpenURL is not implemented. You can use the Windows Phone WebBrowserTask for this.

    Adding Windows Phone 8 Features

    Enhancing your game with some of the Windows Phone platform features

    Tiles & push notifications

    The Windows Phone Start screen is a signature and highly praised feature in Windows phone. Tiles are the ‘first impression’ your users will get about your app; when used effectively, tiles can be a differentiator that drives continuous engagement to your game.

    Anyone shipping a game for Windows phone should read the introduction to tiles for Windows Phone and the tile design guidelines for Windows Phone.

    At a minimum, your game should have beautiful tile that meets the design guidelines on all possible sizes – tiles come in 3 sizes: 159x159 (small), 336x336(medium) and 691x336(wide).

    To configure and include the tiles for your app, you must use Visual Studio’s manifest editor and include the images in your VS project.

    Once you have a beautiful static tile, consider how to “invite” your users to come and play often. If you have a turn-based game, you can use the tile to notify the user of their turn; if you have a game that can start at any level, let the user create a secondary tile that lets’ them pin their favorite level and start there every time. If you have any server-side features (high scores from peers, special offers, etc.) use Windows phone push notifications to let the user know about your offers or any other relevant data that invites your user to play a game. You can also do local notifications, and scheduled tiles. There is a lot of different options to keep your start screen alive.

    Unity does not include APIs for tiles and since Unity uses the Mono compiler, you can’t just include a script in your project to access tiles (the compiler won’t be able to resolve this), you must do a plugin and compile it using Visual Studio. For details on the tile APIs for Windows Phone, refer to the ShellTile class.

    Splash Screen Image

    A few seconds will pass between a user tapping to launch your game, and the Unity engine rendering it to the screen. Windows Phone allows you to configure an image that the OS will show between the time the user launches your app and when XAML UI is rendered to the screen. This image is a JPG and you can configure different sizes for the different phone resolutions:

    Resolution

    Image size in pixels

    Filename (you must use)

    WVGA

    480x800

    SplashScreenImage.screen-WVGA.jpg

    WXGA

    768x1280

    SplashScreenImage.screen-WXGA.jpg

    720p

    720x1280

    SplashScreenImage.screen-720p.jpg

    You can also just include a single image called SphashscreenImage.jpg, this is what the default Unity builds do; if you are shipping a single image, make it the WXGA size, the OS will scale appropriately.

    The Unity 4.2 Player Settings dialog does not allow you to override the Splash Image with your own, so you must configure it in Visual Studio. Instructions on where to copy the images to and what resolutions to use are in this How to create a Splash Screen walk-through.

    Having a splash screen is a must-do, but it is usually not enough. Windows Phone only shows the splash image while the app is getting started and once it is ready to show XAML UI, it transitions into this XAML UI. For some games, there are still a couple seconds between that and your Unity UI. To get around this, you can just edit your XAML to display your splash image (or any other UI you want to display) until Unity is ready. For details on how to accomplish this, look at the “Extending your splash image” in the common tasks section below.

    Monetization APIs

    Windows Phone offers different options for monetizing your game.

    Beyond the one-time purchase of your game, Windows Phone offers trials (that you would need to convert to a full purchase), in-app purchase for durables and consumables and advertising.

    To access the in-app purchase APIs you will need to write a Unity plugin. MSDN has a great overview of the in-app purchase APIs, most concepts will feel ‘familiar’ for those who have implemented in-app purchase in other platforms. The only ‘quirk’ you will encounter is that Windows Phone does not have a staging environment to test in app purchase. There is a Mock API library that you can use for your development; if you feel that testing the in-app purchase APIs (not just the mock library) is absolutely required before submitting to the store, then do a beta for your game. This would allow you to test inapp purchase using the real APIs before you submit to production.

    If you prefer to purchase a plugin instead of writing one, here are vendors that have plugins. RobotoWP for Windows Phone , BitRave and Prime31 have Microsoft Store plugin and lots of other useful Windows Phone and Windows store plugins such as Microsoft ads plugin, and an essential plugins that includes a lot of sharing tasks

    Submitting to the store

    To submit to the store, you will need your Windows Phone developer account and a licensed version of Unity. The trial version of Unity, will produce a water mark in the build that says “development build” on the bottom right of your game, and this will not pass certification. The Unity addins for Windows Phone are free for Unity basic and even Unity Pro users, so just contact Unity to get your free license.

    When you are ready to submit to the store, follow these steps.

    1. Check out the App certification requirements for Windows Phone 2. Become familiar with Windows Phone app product submission process.

    3. Run your app through the Windows Phone Store Test Kit. The Windows Phone Store test kit is a suite of automated tests and manual tests for your game. The kit will identify and help you fix issues that Microsoft testers will find during certification; by finding them early, you will save a lot of time. The store kit can be executed from within visual studio (under the project tab), this walkthrough gives you step-by step- instructions and details on running the kit.

    You will be tempted to just run the automated tests and ignore the manual ones; this is a bad idea; you can learn a lot about the platform and about making your game better from looking at what the Microsoft certification folks are testing for; give the manual tests a try and see how your game fares.

    4. We recommend you go through a beta submission. More details at the “Beta testing your app” page , on MSDN

    5. Submit your master configuration. Unity will create a debug, release, and master configuration for your visual Studio project. Make sure you submit the master, not the release one.

    Other useful references

    • Unity’s Windows Phone 8: Getting Started guide is a must read.

    • The getting started with Windows Phone will walk you through downloading the tools, registering your phone for development (aka unlocking the phone) and writing a basic app that walks you through Visual studio project structure.

    • The Windows Phone SDK samples collection has hundreds of coding samples to accomplish specific tasks.

    Debugging a Windows Phone game

    Unity has instructions on debugging with visual studio.

    Profiling in Visual Studio

    Unity has instructions on profiling Windows phone apps

  • Microsoft UK Faculty Connection

    UNITY, Windows 8, Windows Phone 8 and Windows Azure

    • 25 Comments

    Win8_logo Unity_logi
    WinAzure_rgb

    Over the past few weeks with the Public Beta of Unity for Windows 8 and Windows Phone 8 have had a number of questions about the opportunity of Windows 8, Windows Phone 8 and UNITY3D.

    Unity is popular cross-platform game engine with a built-in IDE developed by Unity Technologies. It is used to develop video games for web plugins, desktop platforms, consoles and mobile devices, and is utilized by over one million developers.

    Unity in education is primarily used to create mobile and web games, but can also deploy games to consoles or the PC.

    The Unity game engine was developed in C/C++, and is able to support code written in C#, JavaScript or Boo. It grew from an OS X supported game development tool in 2005 to the multi-platform game engine that it is today which now supports Windows 8 and Windows Phone 8.

    Unity Plugins for Windows 8 and Azure Mobile Services

    A number of 3rd Party Unity assets are presently being developed to provide full support for Windows 8 and Windows Azure.

    One of these plug-ins is developed by Bit Rave. Bit Rave have extensive experience working with the Windows 8 platform capabilities, and as part of that we decided to build a library for Unity to make Windows 8 integration easier for everyone.

    Bit Rave are  currently looking for people interested in joining a closed beta.  Send an email to contact@bitrave.com if you want to participate.

    Win8_logo

    So what important about Windows 8 features?

    Live Tiles

    Live Tiles are what makes your Windows experiences come to life.  Bit Rave Live Tiles allows you to update and manage Live Tiles from within Unity.

    LiveTiles

    For more information on Live Tiles check out Guidelines and checklist for tiles and badges on MSDN.

    Square and Wide Tile Support

    With both square and wide tile, Bit Rave makes it trivial to support both.

       1: LiveTiles.Update(newSquareLiveTile);   
       2: LiveTiles.Update(newWideLiveTile); 
    Text and Images

    With support for text tiles and image tiles, there are lots of options.

       1: LiveTiles.Update(newTextLiveTile); 
       2: LiveTiles.Update(newImageLiveTile); 

    And for Unity Pro users, you how about a screenshot on your live tile!

       1: LiveTiles.Update(newLiveTile);
    Rotating Tile Updates

    You can also manage rotating tile updates with just a few lines of code.

       1: LiveTiles.Update(newTextLiveTile); 
       2: LiveTiles.Queue(newImageLiveTile); 
       3: LiveTiles.Queue(newTextAndImageTile); 

    Snap View

    Windows 8 comes with a variety of devices, all with varying different screen layout capabilities.  Bitrave's Snap View library helps you implement responsive applications for all changes in UI without having to leave Unity.

    SnapView

    To learn more about the view states, check out Guidelines for Snapped and Fill Views on MSDN.

    View Changes

    Register for snap, filled, and full screen views with the following line of code.

       1: SnapView.RegisterForViewChange(OnViewChanged);
    Orientation Changes

    Register for orientation changes with the following line of code:

       1: SnapView.RegisterForOrientationChange(OnOrientationChanged);

    Charms

    Charms covers both the settings charm, and the share charm for sharing content from within your app.  For integration with the Search charm, it has it's own component appropriately named Search.

    Charms

    Settings Charm

    Setting is how your users find your help, your privacy policies, and find out further information about yoru application.  You can trigger the settings charm manually with a single line of code.

       1: SettingsCharm.Current.ShowSettingsUI();
    Share Charm

    Sharing is one of the key components of Windows 8 applications.  Sharing allows your application to interact with other applications who can consume the content.  You can allows your application to share with your favourite social media client, or maybe share an image with a photo manipulation app.

    Bit Rave for Live Apps allows you to share seamlessly.  To register content for sharing, it can be all done in a single line of code!

       1: ShareCharm.Current.RegisterTextShare("Title",   
       2: "Description",    
       3:  "Hello World!");

    Or maybe you want to share an image from within game:

       1: ShareCharm.Current.RegisterTextShare("Title",   
       2: "Description",    
       3:  imageTexture2D);

    And for Unity Pro users, how about sharing a screenshot from a camera!

       1: ShareCharm.Current.RegisterTextShare("Title",   
       2: "Description",    
       3:  cameraObject);

    And you can even trigger the UI manually from within game:

       1: ShareCharm.ShowShareUI();

    Settings

    With your Microsoft ID following you between machines, you can now take advantage of Roaming Settings.  Use roaming settings to synchronise high scores and game files across machines.  Bitrave Settings let you do all this simply and easily without having to leave Unity, and also supports Local Settings for non-roaming preferences and data.

    Register for updates to settings data with the following line of code.

    Roaming Settings

    Roaming settings go with you, and all it takes is just a line of code to set them.

       1: RoamingSettings.SetValue("high-score", hiScoreValue);

    And just one line of code to retrieve.

       1: var highScore = RoamingSettings.GetValue("high-score");
    Local Settings

    Local settings act just like roaming settings, but stay on a single machine when you don't want them to roam.  You set and retrieve them in the same way.

       1: LocalSettings.SetValue("high-score", hiScoreValue);

    And just one line of code to retrieve.

       1: var highScore = LocalSettings.GetValue("high-score");

    WinAzure_rgb

    Azure Mobile Services - https://www.windowsazure.com/en-us/develop/mobile/ iOS, Android, Windows 8 and Windows Phone

    Azure Mobile Services allow you to take your application to the cloud quickly and easily.

    And now you can access Azure Mobile Services directly from your Unity code.

    Initialise

    Initialisation is just as simple as you'd expect.

       1: var service = AzureMobileServices("url", "token");
    Insert

    Insert an item into your Azure database in a single line of code from Unity.

       1: service.Insert<ToDoItem>(myItem);
    Update

    Update items in the Azure databsae with just one line of code from Unity.

    service.Update<ToDoItem>(myItem);

    Delete

    Remove items from the Azure database in 1 line of code from Unity.

       1: service.Delete<ToDoItem>(myItem);
    Query

    Query items in your Azure Mobile Services from Unity.

       1: service.Where<ToDoItem>(p => p.Category == "Exercise", MyCallback);   
       2: public void MyCallback(List<ToDoItem> items)    
       3: {    
       4: ...    
       5: }

    NOTE: await / async will be available when supported by Unity.  Until then we are using callbacks.

    Lookup

    Lookup items in your Azure Mobile Services from Unity.

       1: service.Lookup<ToDoItem>(myItem, MyCallback);   
       2: public void 
       3: MyCallback(ToDoItem item)    
       4: {    
       5: ...    
       6: }

    NOTE: await / async will be available when supported by Unity.  Until then we are using callbacks.

    ,Win8_logo Unity_logi

    Microsoft recently ran an full day of events to highlight the opportunity of Windows and Unity.

    You can watch the content below and get access to all the materials at http://channel9.msdn.com/Events/Windows-Camp/Building-Windows-Games-with-Unity?d=1

    Introduction to the Windows 8 platform and the Windows Store

  • Microsoft UK Faculty Connection

    Windows Phone 8 SDK requirements

    • 3 Comments

    920-responsive3-png

    What are the system requirements for the SDK?

    Here are the system requirements for the Windows Phone 8 SDK

    • Supported operating systems: Windows 8, Windows 8 Pro, Windows 8 64-bit (x64) client versions
    • Hardware: 4 GB of free hard disk space, 4 GB RAM, 64-bit (x64) CPU
    • Windows Phone 8 Emulator: Windows 8 Pro edition or greater, a processor that supports Second Level Address Translation (SLAT)

    If you have already been developing for Windows Phone 7 note the new requirements

    1. You need to be running a 64 bit Windows 8 OS to install the Windows Phone 8 SDK.

    2. If you don’t meet the requirements for the Windows Phone 8 Emulator, the Windows Phone SDK 8.0 will install and run but the Windows Phone 8 Emulator will not function and you will not be able to deploy or test apps on the Emulator. see http://blogs.msdn.com/b/uk_faculty_connection/archive/2012/10/24/hyper-v-list-of-slat-capable-cpus-for-hosts.aspx for details on SLAT

    The emulator uses Hyper-V under SLAT so if you try to run a project in the emulator and Hyper-V is not enabled, you will be prompted to turn on Hyper-V. Turning on Hyper-V will require you to restart your computer.

    What new APIs and features can I leverage?

    If you visit the Windows Phone Dev Center you’ll find all documentation and samples for the Windows Phone 8 SDK.

    Here are a couple of new features here just to whet your appetite

    If your teaching or building app/games with the Windows Phone 7 SDK do I have to restart it?

    No. Apps built for Windows Phone 7.5 still run on Windows Phone 8, so finish and publish the apps using your free developer account from http://create.msdn.com via http://www.DreamSpark.com

    If you want to leverage some of the new Windows 8 features, you can do that in your next release.

    Additional Resources

    Check out the following videos from Build 2012 on Windows Phone 8 Development

  • Microsoft UK Faculty Connection

    A run down of the Build 2014 keynote announcements

    • 0 Comments

    clip_image001[1]

    Microsoft’s Build conference began yesterday with a series of fast-paced announcements and presentations by several key personnel demonstrating the company’s shift to open Windows to the entire platform.


    What follows is a summary of major announcements made on Day 1 and Day2. 

    Day 1 Keynote
    Joe Belfiore, CVP Operating Systems Group, started the keynote by talking about Windows Phone 8.1.  This update brings several usability enhancements to the phone’s OS, including more personalization and customization for the lock and start screens.  The biggest addition is the arrival of Cortana, Microsoft’s answer to a device personal assistant.

    Brief overview of the new features of Windows Phone 8.1:
    • Action center  (pull down from the top)
    • Battery life
    • Can use dual SIM cards
    • Quick settings – wifi / Bluetooth / airplane mode / etc
    • Internet Sharing

    Personalize lock & Start screens
    •New APIs to customize lock screen
    •Customize number /size amount of icons
    •Customize wallpaper that the tiles display on

    Cortana
    •Presence as a Live tile
    •Cortana can be extended with 3rd party apps
    •Supports creating speech enabled 3rd party apps
    •Cortana’s stores user personalization information in the notebook, which allows users to customize what items Cortana knows about.

    Wi-Fi Sense
    •Simplify connecting to Wi-fi networks ◦Allows auto-accepting Terms of Use when required
    ◦Can provided name/email/ phone number when required, also can be edited
    •Can automatically share Wi-fi passwords with approved contacts ( Outlook.com / Skype contacts / Facebook friends).  Shared transparently between machines, but the user never actually sees the password.

    Enhancements for the enterprise
    The enhancements to Windows Phone 8.1 are not limited to the end user.  Nick Hedderman, Senior Product Manager demonstrated several new phone management features for corporate phone administrators:

    Windows Phone 8.1 for Business
    •Enroll device into a corporate role (even if the one previously was setup for personal-use only)
    •Support Enterprise VPN
    •S/MIME◦Signed and encrypt emails
    •Can disable local downloading of files.
    •Can deny apps from running on a phone, even existing installed apps already on the phone
    •When a user leaves the corporation or switches devices, the corporate management is completely removed.  App permissions are restored, VPN removed, etc

    Windows 8.1 Updates
    Moving beyond the updates for Windows Phone 8.1, the keynote then moved to the forthcoming Update for Windows 8.1.  This Update will be made available for free to all Windows 8.X users on April 8. 

    Windows 8.1 Update 1
    •Cortana on the phone and Bing on desktop share user details (when you are logged in to Bing).
    •Windows Task bar can have apps pinned to it
    •This includes displaying their live tiles on the Start menu
    •Switch between apps whether they are Modern of Win32 desktop apps
    •Doesn’t affect the changes / operation for touch based operations
    •New PC Settings Tile◦Provides natural/familiar home for PC settings
    •Power button and search button display on Start screen by default
    •Right-click context menu to resize / pin to taskbar
    •Control click to select multiple tiles and move them around en masse
    •Improving Windows Store update to mouse & keyboard friendly
    •New apps are highlighted in the All Apps list when they are added so they are not as easy to overlook when added

    Moving into OpenSource
    WinJS is now open source (under the Apache license) and going cross-platform.  Joining this announcement is the availability of Windows 8.1 Update on MSDN and DreamSpark.  VS2013 Update 2 RC is publicly available for all versions (paid and express) of Visual Studio.  Windows Phone 8.1 will be available for developers later this month.

    Nokia and devices
    Stephen Elop, EVP of Nokia presented several new phone types, including the new flagship device, the Nokia Lumia 930.  This will be made available in June.  The Lumia 630 and Lumia 635 will target the lower end of the market, but still include a 1.2GHz quadcore SnapDragon processor.  The 630 will be available in a dual-SIM card model.  Prices range from $159 to approximately $189.

    What's did the new CEO say
    New Microsoft CEO Satya Nadella concluded the keynote by addressing some prerecorded user questions.  The main theme of his comments was that he wants Microsoft to operate as a challenger to the current market. 

    The day 2 keynote opened with Microsoft’s Scott Guthre

    Azure adoption
    •Currently Azure is hosting 250K active websites and over a million SQL databases.

    What impact is the cloud having - Cloud Gaming a new era
    •Titanfall used a pool of 100,000 virtual machines on day 1. In order to ensure a consistent experience they are literally allocating a VM from the pool for each game. Project Azure Thunderhead

    Virtual Machines
    •Visual Studio Integration: you can now create, destroy, and manage VMs from within Visual Studio. You can even enable remote debugging in a virtual machine directly from the IDE.
    •VM images can now capture storage devices, reducing the amount of effort needed to setup a cloned instanced.

    Remote Server Management
    •Management tool Puppet now is deeply integrated into Azure.
    •Growing and shrinking services on demand
    •Auto-scaling virtual machines has also reached general availability.
    •Auto-scaling works with Azure Websites as well, allowing web servers to be dynamically added or removed as the load changes.

    Azure Website Service
    •Build with the skills you have Azure now supports NET, PHP, Python, Node.js and Java support for the Azure Website Service.

    Security of Azure Web Sites
    •Every Azure Website instance will now include a free SSL certificate.

    Managing queues and workloads
    •WebJobs can be run in the context of the Azure Website. In the past background tasks had to be run on a separate VM, which can significantly increase costs if the tasks are usually idle.

    A new opportunity DevOps
    •PowerShell for Visual Studio and Azure
    •When new ASP.NET projects are created you can provision Azure VMs at the same time. If you do so, PowerShell based deployment scripts are created at the same time.
    •PowerShell editing is now supported by Visual Studio.

    New Azure Portal
    •A new portal for Azure has been created. The primary selling point is easier to understand billing metrics. Directly from the home page you can see how much Azure is costing you on a service by service basis.
    •AppInsights is being integrated into the Azure portal. This product is used to collect data about how an application is being used in terms of features, duration, etc. It also includes performance and error metrics.

    Web developers
    •Live Editing HTML and CSS using Browser Link
    •Most browsers allow you to edit CSS and HTML directly in the browser.

    Visual Studio 2013 enhancement
    •Ability to hook your browser (IE, Chrome, etc.) to the IDE using Browser Link.
    •Make HTML or CSS in the browser and have those changes automatically reflected in the source code. Essentially the browser becomes your code editor.
    •Static Analysis for JavaScript
    •JSHint is now integrated into Visual Studio.

    Azure for Mobile
    •Azure’s Mobile Services now support Active Directory using OAuth tokens.
    •These tokens can then be used to access Office 365 APIs in addition to the application’s custom backend. So Azure Mobile Services now supports the enterprise.

    Cross Platform support
    •Xamarin and Visual Studio  illustrate iOS and Android support using .net and C# for building cross platform

    Databases - Azure SQL
    •Azure Databases can now grow to 500GB with a 99.95% a SLA. This is enterprise support!

    Backup and Restore
    •The ability of now having self-service backups are available for up to 31 days on all accounts. Administrators can choose to rollback to any point in time within that window.
    •Active Geo Replication keeps replicated servers hot so that you can fail over in the event of an outage.

    BigData- Data Scientist the NEW ROCK & ROLL
    •HDInsight
    •YARN and Hive Query are now supported in HDInsight.

    OpenSource Commitment
    •Roslyn – The .NET Compile Platform
    •The new language services will be available in the next version of Visual Studio.
    •The entire Roslyn project is being open sourced, including the VB and C# compilers.

    Development languages
    •C# 6.0 - Static using statements are supported so you no longer have to prefix static functions such as Max with the class name. This is feature already seen in Visual Basic and Java.
    •Xamarin -Xamarin has started supporting Roslyn with the option to choose alternate compilers in their IDE. Currently Roslyn is only active during compilation but they intend to add syntax highlighting and other features.
    •.NET Foundation -The .NET Foundation is a new organization for governing the various open source offerings for .NET from Microsoft, Xamarin, and others.
    •Visual studio online - Visual Studio Online has reached general availability.

    Source code and team working
    •Team Foundation Server enhancements for source control including 3rd IDE and source control including GIT.

    Migrating VB 6 and .NET Applications Forward to modern apps
    Announcement of WebMap2. This product takes legacy WinForms applications and converts it into an HTML based application. It does this by splitting the .NET code into views and controllers. It then converts the views into HTML while the bulk of the code lives in server-side controllers.
    •Mobilize.NET also has a product for converting legacy VB 6 applications into WinForms application. This can be used as-is or as a stepping stone into web-based technologies.

    Internet of things
    •.NET Micro Framework -The .NET Micro Framework is now being updated to support generics and modern versions of Visual Studio.

    App building tools
    •AppStudio: Concert Websites into Mobile Applications
    •The new AppStudio tool can convert websites into mobile applications. By default this is just a wrapper around the website using the Web Application Template. Wat.codeplex.com but you can enable caching for off-line use by modifying a configuration file. This is available for “both windows and non-windows” devices including Android.

    Universal Apps and Xamarin
    •Windows Universal app recompiled with Xamarin which supports Android and iOS.

    Conclusion

    Overall a really exciting keynote which firmly places Microsoft as a supporter of developers now matter what your platform of choice.

    You can watch the keynotes a conference sessions at http://channel9.msdn.com/Events/Build/2014

  • Microsoft UK Faculty Connection

    Windows 8.1 and Visual Studio 2013 via DreamSpark.com

    • 7 Comments

    Visual Studio 2013, .NET 4.5.1, and Team Foundation Server 2013 are now available for download

    DreamSpark subscribers can download Visual Studio FREE of Charge from either their Institutional DreamSpark ELMS store or direct from DreamSpark.com.

    Visual Studio 2013 is the best tool for developers and teams to build and deliver modern, connected applications on all of Microsoft’s platforms. From Windows Azure and SQL Server to Windows 8.1 and Windows Phone 8, Visual Studio 2013 supports the breadth of Microsoft’s developer platforms.

    As part of the Cloud OS vision, Visual Studio 2013 enables developers to build modern business applications that take advantage of the cloud and target a variety of devices and end-user experiences, all delivered within today’s rapid and dynamic application lifecycles.

    Accessing Visual Studio 2013 via DreamSpark.com

    When student download and install Visual Studio 2013 from DreamSpark.com, they will receive a static key to complete the installation. The key simply means the students do not have register or reregister the product every 90 days are per the RTM version..

    For administrators and IT technicians the DreamSpark institutional ELMS Store contains a copy of Visual Studio 2013 with a Pre-Keyed serial number this version can be used to install on institution teaching and learning lab machines either manually or via a managed desktop image.

    Visual Studio and Cloud services

    When the student/institutions have installed Visual Studio 2013 on premise, they will get prompted to go an connect online to use online features of Visual Studio a Windows Live ID or Microsoft Account is required. If a student signs in with their WLID this will save there solutions to the cloud.

    What are the new features

    There are great new features and capabilities in Visual Studio 2013 for every developer, including innovative editor enhancements such as Peek and CodeLens, diagnostics tools for UI responsiveness and energy consumption, major updates for ASP.NET web development, expanded ALM capabilities with Git support and agile portfolio management, and much, much more.  Check out what’s new with Visual Studio 2013 for details.

    Want to know more about Visual Studio 2013

    Visual Studio 2013 launch on November 13th.  at the launch event the Visual Studio team will  be highlighting the array of new features and capabilities in the Visual Studio 2013 release.

    Windows 8.1

    Visual Studio 2013 supports development of great Windows Store applications for Windows 8.1, which is also available for download today  FREE of charge for all  DreamSpark Premium subscribers.

  • Microsoft UK Faculty Connection

    Installing XNA on Windows 8 with Visual Studio 2012

    • 4 Comments

    Guest blog by Simon Grey Lecturer in Games Development Studies at the University of Hull

    xna_logo

    XNA is a great framework for creating games, and we use it as a tool to motivate students to learn how to program whilst creating great games at extra-curricular events such as the three thing game. For us, a tools like XNA is an invaluable intrinsic motivator – inspiring students to want to learn to code, as opposed to being motivated because we said so, or because they will get better grades.

    According to the official documentation XNA requires Visual Studio 2010. Now, clearly it’s possible to install both Visual Studio 2010 and Visual Studio 2012 on the same machine, but that would have a big impact on the size of the image.

    To get around the limitation of our managed desktop Hard Drive capacity we would d rather not install both if we don’t have to, but if you try to install XNA on a machine that doesn’t include Visual Studio 2010 the installation will fail.

    However after some monitoring of the install process here is a nice walkthrough produced by the University of Hull of how to install XNA onto a machine with Visual Studio 2012. The University of Hull we are keen to provide students with as seamless an experience as possible when moving from working at home to working in university, with this in mind I Simon has developed the following blog post, so that students can use XNA at home with Visual Studio 2012 to allow them an easy transition to and from the machines at the University

    You’ll need to download this zip file which contains the entire XNA setup and the folders that you’ll need to copy yourself.

    1. Download the zip file and unzip it somewhere. You should see an executable called XNAGS40_setup.exe and a folder called XNA Game Studio 4.0
    2. Open a command line and navigate to the folder that contains XNAGS40_setup.exe – then run XNAGS40_setup.exe /x . You’ll be asked to enter a folder. It’s probably easiest if you create a new empty folder. This folder is temporary and can be deleted after you are done.
    3. Go to the temporary folder and run redists.msi
    4. Run the MSI at %ProgramFiles%\Microsoft XNA\XNA Game Studio\v4.0\Setup\XLiveRedist.msi
    5. Run the MSI at %ProgramFiles%\Microsoft XNA\XNA Game Studio\v4.0\Redist\XNA FX Redist\xnafx40_redist.msi
    6. Run the MSI at %ProgramFiles%\Microsoft XNA\XNA Game Studio\v4.0\Setup\xnaliveproxy.msi
    7. Run the MSI at %ProgramFiles%\Microsoft XNA\XNA Game Studio\v4.0\Setup\xnags_platform_tools.msi
    8. Run the MSI at %ProgramFiles%\Microsoft XNA\XNA Game Studio\v4.0\Setup\xnags_shared.msi
    9. Copy folder XNA Game Studio 4.0 provided in the zip file you downloaded at the start to C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\IDE\Extensions\Microsoft
    10. Go to the temporary folder you extracted to in step 2 and run the MSI named arpentry.msi
    11. Open a cmd window and run “C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\IDE\devenv.exe” /setup
    12. Delete the temporary folder you created, as well as the zip file and the folder you extracted that to. You don’t need those any more.
    13. Create some awesome games using XNA!

    Additional resources

    Visual Studio Professional 2013 https://www.dreamspark.com/Product/Product.aspx?productid=72

    Visual Studio Professional 2012 https://www.dreamspark.com/Product/Product.aspx?productid=44

    Visual Studio Professional 2010 https://www.dreamspark.com/Product/Product.aspx?productid=4

    MonoGame for taking existing XNA Games and Apps to Windows 8 – http://www.monogame.net

    XNA Game Studio - https://www.dreamspark.com/Product/Product.aspx?productid=3

    Getting Started creating Xbox Indie XNA Games - http://www.slideshare.net/lee_stott/xbox-indie-account-via-xna-creators-club-for-all-students

  • Microsoft UK Faculty Connection

    Installing Windows Phone 7.1 SDK via .ISO using .MSI and Group Policy

    • 0 Comments

    Win7PhoneNew

    Normally, if were installing the Windows Phone SDK 7.1 onto a single machine you do it through the web installer located here:

    https://www.dreamspark.com/Product/Product.aspx?productid=26

    or via Microsoft Download centre at http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=27570

    However, if you need to install it on a disconnected machine (VM image) or deploy the SDK to a number of machines within a lab or cluster  it’s helpful to have an .iso of the installation media to install from.

    Microsoft also provides a download for the .iso as well. You can get it from here http://go.microsoft.com/fwlink/?LinkID=226694

    Installing the Windows Phone SDK via ISO

    Phone SDK consists of many packages/products and all these are installed on User’s machine as part of Phone SDK installation. Some of these packages are Emulator, XNA, Blend, Visual Studio Add-in for VS Ultimate, etc. Each individual package has got it’s own MSI.

    When you extract the ISO (let’s say in dvd folder), you will find Setup.exe at the base level (dvd folder). This is a chainer and invokes all the MSIs one-after-another, the same way you mentioned below. Anyone who wants to install through ISO, should double-click Setup.exe and installation will start. It also gives you the option of Silent install same as MSI (option /q) and thus can be used through automation scripts as well.

    WCU\WindowsPhone

    This is an important folder which contains most of the package MSIs but they should not be invoked separately. The complete installation is dependent on the sequence in which these MSIs are installed.

    Uninstall:

    After Uninstall, only Expression Blend entries are left back and this is known. Blend is a separately installed product and many Universities may  therefore have this previously installed, as such we decided not to uninstall Blend in case a licensed version is present on the machine and our uninstall causes any problems with previously installed products.

    Summary:

    In short, consider Setup.exe as your master MSI and use it in your scripts, everything should work.

    Creating an bundled MSI file (This may be requirement for some institutional desktop images)

    The creation of MSI is primary used for legacy applications that were written prior to msi technology, and may be unreliable as the "snapshot" technique does not take into account existing software dependencies.

    Windows does not natively contain the necessary tools for you to create your own MSI files. Instead, you will have to rely on a third party MSI creation tool. There are several good tools available for free. Two of the more popular choices are MAKEMSI (http://dennisbareis.com/makemsi.htm) and WinInstall LE 2003 (http://www.ondemandsoftware.com/freele.asp).

    The reason why .MSI files are the preferred installer package for Windows is because of the file format’s capabilities. When you install or uninstall an MSI file on a machine running Windows 7, Windows creates a system restore point. Furthermore, MSI files allow the application to be “self healing”. I’ll talk more about this later on, but basically this means that if part of the application is damaged or removed, then Windows has enough information to replace the damaged or missing parts. Finally, MSI files allow the system to automatically perform a rollback to its previous state if an installation should fail.

    With MSI files having so many capabilities, it should come as no surprise that MSI files tend to be a bit complex. MSI files are actually database files with information pertaining to every file and setting that the application installs or modifies. Because of this complexity, most of the MSI file creation utilities require you to do at least some scripting when you create an MSI file.

    WinInstall LE requires you to have a machine with a clean Windows installation and network connectivity. The software then takes a snapshot of this machine and saves the configuration image. You would then install the application that you want to create the MSI file for and take another snap shot. WinInstall would then compare the snapshots and use the differences between the two images to create an MSI file and the corresponding installation package.

    This method is a little time consuming, but is far less tedious than writing scripts. Another advantage to using this method is that it is possible to install multiple applications on to the clean machine prior to taking the second snap shot. This means that you can create a single MSI file and installation package that deploys multiple applications.

    Publishing and Assigning Applications

    Now that you know how to create an MSI file, there is one last concept that I need to talk about before I show you how to deploy an application thorough the Active Directory.

    As you may already know, in an Active Directory environment, group policies are the main component of network security. Group policy objects can be applied either to users or to computers. Deploying applications through the Active Directory is also done through the use of group policies, and therefore applications are deployed either on a per user basis or on a per computer basis.

    There are two different ways that you can deploy an application through the Active Directory. You can either publish the application or you can assign the application. You can only publish applications to users, but you can assign applications to either users or to computers. The application is deployed in a different manner depending on which of these methods you use.

    Publishing an application doesn’t actually install the application, but rather makes it available to users. For example, suppose that you were to publish the Windows Phone SDK tools. Publishing is a group policy setting, so it would not take effect until the next time that the user logs in. When the user does log in though, they will not initially notice anything different. However, if the user were to open the Control Panel and click on the Add / Remove Programs option, they will find that Microsoft Windows SDK is now on the list. A user can then choose to install Microsoft Windows SDK on their machine.

    Assigning an application to a user works differently than publishing an application. Again, assigning an application is a group policy action, so the assignment won’t take effect until the next time that the user logs in. When the user does log in, they will see that the new application has been added to the Start menu and / or to the desktop.

    Although a menu option or an icon for the application exists, the software hasn’t actually been installed though. To avoid overwhelming the server containing the installation package, the software is not actually installed until the user attempts to use it for the first time.

    This is also where the self healing feature comes in. When ever a user attempts to use the application, Windows always does a quick check to make sure that the application hasn’t been damaged. If files or registry settings are missing, they are automatically replaced.

    Assigning an application to a computer works similarly to assigning an application to a user. The main difference is that the assignment is linked to the computer rather than to the user, so it takes effect the next time that the computer is rebooted. Assigning an application to a computer also differs from user assignments in that the deployment process actually installs the application rather than just the application’s icon.

    Deploying Applications

    Setting up the actual deployment is simple. The biggest thing that you must remember is that the MSI file and the corresponding package must exist within a network share, and everyone must have read permissions for that share.

    To perform the deployment, open the Group Policy Editor. To publish or assign an application to a user, navigate through the group policy console to User Configuration | Software Settings | Software Installation. Now, right click on the Software Installation container and select the New | Package commands from the shortcut menu. Select the appropriate MSI file and click Open. You are now asked whether you want to publish or assign the application. Make your selection and click OK.

    The process for assigning an application to a computer is almost identical. The only real difference is that you would use the Software Settings | Software Installation container beneath the Computer Configuration container rather than beneath the User Configuration container.

  • Microsoft UK Faculty Connection

    Cross Platform Mobile Development with Visual Studio

    • 2 Comments

    One of the key goals for today’s developers is how to build an app or game and get it on as many platforms in the short most cost effective way.

    However building rich applications targeting multiple mobile platforms and a variety of devices up to now hasn't been an easy task but with In case you haven’t heard yet, the final release of Visual Studio 2013 Update 2 is also now available.

    This update brings many new features, including tools for Windows Phone 8.1 and universal Windows apps.

    We now make it easier for developers to undertake a multi-device development in a mobile-first world with the technology of their choice – whether .NET, C++ or JavaScript.

    Visual Studio+ Xamarin

    Microsoft’s partnership with Xamarin has enabled C# and Visual Studio developers to target additional mobile devices including iOS and Android. Developers using Xamarin and Visual Studio can create native apps taking advantage of the underlying device, with great productivity of C#, and sharing code and libraries between their iOS, Android and Windows applications.

    Visual Studio + Apache Cordova

    Apache Cordova is a popular open source platform. It is a set of device APIs that allow a mobile app developer to access native device function such as the camera or accelerometer from JavaScript. Combined with a UI framework such as jQuery Mobile or Dojo Mobile or Sencha Touch, this allows a smartphone app to be developed with just HTML, CSS, and JavaScript.

    image

    The Visual Studio team has recently announced its tooling support for Apache Cordova. What possibilities does it give? Now developers can use Visual Studio to easily build hybrid apps that run on iOS, Android, Windows and Windows Phone using a single project based on HTML and JavaScript. Click here for more information.

    Why use Apache Cordova and Visual Studio

    1.Developers can use their existing skills in HTML and JavaScript to create hybrid packaged apps for multiple devices while taking advantage of each device’s capabilities.

    2. These tools support end-to-end development of cross-platform mobile applications targeting Android, iOS, Windows and Windows Phone using Visual Studio.

    3. Project templates are available for both JavaScript and TypeScript, and provide a standard blank Cordova starter project. Developers can pick their HTML/JavaScript framework of choice, whether Backbone and jQuery UI, or Angular.js and Bootstrap, or WinJS.

    4. Projects can be built, deployed, and debugged against a variety of devices, device emulators and web-based mobile simulators. By default, you can use the Apache Ripple Simulator to test your app on a number of emulators.     

    image

    5. By installing and configuring the vsmda—remote npm package on a Mac, you can even build for iOS, deploy to a device via iTunes, or start your app in the iOS Simulator on a Mac right from Visual Studio.

    See here how to get started for free

    If you would like to get started with Cordova for Windows devices, you can refer to the Cordova documentation, or see here what you will need if you are working on a Mac, if you want to develop for Windows Phone 8, or for Windows 8.

    Microsoft and Open Source

    You can read about Microsoft Open Technologies contributions to the project. Here

Page 2 of 95 (941 items) 12345»