GithubHelp home page GithubHelp logo

classicvalues / xbox-live-unity-plugin Goto Github PK

View Code? Open in Web Editor NEW

This project forked from microsoft/xbox-live-unity-plugin

1.0 1.0 0.0 4 MB

The Xbox Live Unity Plugin provides a way for developers in the Xbox Live Creators Program to quickly and easily integrate Xbox Live functionality into their Unity based game. For ID@Xbox developers, this Xbox Live Unity Plugin does not yet support all the features you will need. Instead, contact your Microsoft representative.

License: MIT License

C# 69.68% PowerShell 4.33% Batchfile 0.47% C++ 18.45% C 7.06%

xbox-live-unity-plugin's Introduction

2021 Update: More Accessible: Creators Program No Longer Requires Xbox Live

One vector of accessibility in game development is reducing the friction and technical complexity required to build and publish games to a store.

In February 2021 we removed the requirement for UWP games to integrate with Xbox Live to publish to Xbox and are phasing out software needed to support Xbox Live on UWP. The Store policy has been updated at UWP Store Policies

We'd also like to mention that the GDK is now available to all developers free of charge, to help developers learn how to build games for the Xbox App on Windows and Game Pass; no license required for learning: https://aka.ms/gdk

The Microsoft Game Development Kit (GDK) contains the common tools, libraries, and documentation needed to build games for the Xbox App on Windows 10, Xbox Game Pass for PC, Xbox consoles (Xbox Series X|S, Xbox One), and Xbox Game Pass cloud gaming.

Welcome!

The Xbox Live Unity Plugin provides a way for developers in the Xbox Live Creators Program to quickly and easily integrate Xbox Live functionality into their Unity based game. For more information about the Xbox Live Creators Program go to http://aka.ms/xblcp.

For ID@Xbox developers, this Xbox Live Unity Plugin does not yet support all the features you will need. Instead, read the document Get Stated with Xbox Live for ID and Managed Partners for guidance.

Overview

The Unity Plugin is broken into the following parts

  • Assets contains the Unity project content.

    • Xbox Live contains the actual plugin assets that are included in the published .unitypackage.
      • Editor contains scripts that provide the basic Unity configuration UI and processes the projects during build.

      • Examples contains a set of simple scene files that show how to use the various prefabs and connect them together.

      • Images is a small set of images that are used by the prefabs.

      • Libs is where the Xbox Live libraries will be stored. This will only contain .meta files when you initially clone the repository. You must build the SDK to pull those files in.

      • Prefabs contains various Unity prefab objects that implement Xbox Live functionality. See the prefabs documentation for more information.

      • Scripts contains all of the code files that actually call the Xbox Live APIs from the prefabs. This is a great place to look for examples about how to properly call the Xbox Live APIs. See the scripts documentation for more detail.

        Inside this folder, you'll also find a folder called GameSave where you'll see the Game Save (Connected Storage) plugin and its scripts.

      • Tools/AssociationWizard contains the Xbox Live Association Wizard, used to pull down application configuration from DevCenter for use within Unity.

  • Build contains scripts to generate the .unitypackage and handle other project setup tasks.

  • CSharpSource contains source for the Xbox Live API that is used by the plugin

  • ProjectSettings contains standard Unity project settings files.

Prerequisites

Building

  1. Open up a powershell window.

  2. Clone the project, and be sure to include and sync all the required submodules.

    git clone https://github.com/Microsoft/xbox-live-unity-plugin --recursive
    cd xbox-live-unity-plugin
  3. Run the Setup powershell script to get all of the pre-requisites built and configured.

    .\Build\Setup.ps1

Note: Ensure Unity was installed with Windows Store .NET Scripting Backend, and you have the Microsoft Visual Studio Tools for Unity installed.

  1. If you want to make any modifications to the scripts or prefabs in the package, open up the project (the xbox-live-unity-plugin folder) in Unity and make your changes.

  2. Generate the XboxLive.unitypackage that you can import into any other project:

    .\Build\BuildPackage.ps1
    

Using the Xbox Live Unity Asset

See the docs at https://docs.microsoft.com/en-us/gaming/xbox-live/get-started/setup-ide/creators/unity-win10/cr-unity-win10_nav

Using the Game Save Plugin

When the .\Build\BuildPackage.ps1 script is run, the XboxLive.unitypackage is generated. When that unity package is imported into a unity project, the GameSave folder within the Xbox Live\Assets\Scripts\ folder will contain the GameSave.unitypackage which contains scripts for integrating with Connected Storage.

For an example of how to use Connected Storage, you'll need to first add Sign In to your game. Afterwards, drag the GameSaveUI.cs script and drop it on any object in your scene. That will kick-off a simple UI to test your integration to Connected Storage.

Please make sure to check out the best practice and documentation of how to use Connected Storage at: Connected Storage Documenation.

Contribute Back!

Is there a feature missing that you'd like to see, or found a bug that you have a fix for? Or do you have an idea or just interest in helping out in building the plugin? Let us know and we'd love to work with you. For a good starting point on where we are headed and feature ideas, take a look at our requested features and bugs. See the contribution guidelines for details.

Big or small we'd like to take your contributions back to help improve the Xbox Live Unity plugin for everyone.

Having Trouble?

We'd love to get your review score, whether good or bad, but even more than that, we want to fix your problem. If you submit your issue as a Review, we won't be able to respond to your problem and ask any follow-up questions that may be necessary. The most efficient way to do that is to open a an issue in our issue tracker.

Any questions you might have can be answered on the MSDN Forums. You can also ask programming related questions to Stack Overflow using the "xbox-live" tag. The Xbox Live team will be engaged with the community and be continually improving our APIs, tools, and documentation based on the feedback received there.

For developers in the Xbox Live Creators Program, you can submit a new idea or vote on existing idea at our Xbox Live Creators Program User Voice

Xbox Live GitHub projects

This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact [email protected] with any additional questions or comments.

xbox-live-unity-plugin's People

Contributors

msft-heba avatar jasonsandlin avatar jplafonta avatar adityatms avatar veleek avatar rakhad avatar aablackm avatar msft-garrettw avatar konh avatar zsoi avatar tautvydaszilys avatar v-dekennedy avatar

Stargazers

Classic Values avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.