Skip to content

Commit 8beb15a

Browse files
authored
DX-2223: Readme instructions for getting started (#2)
* DX-2223: Readme instructions for getting started * Updated logout image * DX-2223: Added Changelog * DX-2223: Added Immutable logo * Removed * PR Feedback * reorder of sections in readme * PR Feedback
1 parent dc39324 commit 8beb15a

File tree

4 files changed

+149
-6
lines changed

4 files changed

+149
-6
lines changed

CHANGELOG.md

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
# Changelog
2+
3+
All notable changes to this project will be documented in this file.
4+
5+
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6+
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7+
8+
## [0.1.0] - 2023-08-23
9+
10+
### Added
11+
12+
- Initial release of the Immutable Unreal SDK Plugin.

PassportLoginFlow.jpg

143 KB
Loading

PassportLogoutFlow.jpg

149 KB
Loading

README.md

Lines changed: 137 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,29 @@
1-
# Immutable SDK for Unreal
1+
<div align="center">
2+
<p align="center">
3+
<a href="https://docs.x.immutable.com/docs">
4+
<img src="https://cdn.dribbble.com/users/1299339/screenshots/7133657/media/837237d447d36581ebd59ec36d30daea.gif" width="280"/>
5+
</a>
6+
</p>
7+
</div>
8+
9+
---
10+
11+
# Immutable SDK for Unreal Engine
212

313
## User Guide
414

15+
### Supported Platforms
16+
17+
- Windows 10 (64-bit)
18+
- MacOS
19+
20+
### Supported Unreal Engine Versions
21+
22+
- Unreal Engine 5.0 and above
23+
24+
> [!NOTE]
25+
> Support for Unreal Engine 4.27 work is currently underway.
26+
527
### Installation
628

729
To install the plugin download it into your project's `Plugins` folder, e.g.: `MyGame/Plugins/unreal-immutable-sdk`.
@@ -16,22 +38,63 @@ See the included sample widgets in `All`->`Plugins`->`Immutable Content` in the
1638

1739
See `ImmutablePassport.h` for the C++ Passport API. Follow the same sequence of steps as the Blueprint widget example to initialise and connect Passport and retrieve account data.
1840

41+
### Quick Start
42+
43+
#### Passport Login Flow
44+
45+
See this Blueprint showing how to login to passport ![Passport Login Blueprint](PassportLoginFlow.jpg)
46+
47+
Here are the steps to login to passport:
48+
49+
1. `Initialise Passport` to initialise passport instance.
50+
2. Check if there are stored credentials from previous login.
51+
3. If stored credentials found, `ConnectSilent` uses the saved credentials to login to Passport.
52+
4. When no stored credentials found or step 3 fails, attempt to make a new Connection to login to Passport using `Connect`. This will open the gamer's default browser and take them through the auth flow.
53+
54+
Once the gamer is connected to Passport, the SDK will store your credentials (access, ID, and refresh tokens).
55+
56+
> [!NOTE]
57+
> We use the [Device Code Authorisation](https://auth0.com/docs/get-started/authentication-and-authorization-flow/device-authorization-flow#:~:text=Your%20Auth0%20Authorization%20Server%20redirects,authorized%20to%20access%20the%20API.) flow to authenticate and authorise gamers.
58+
59+
#### Log out of Passport
60+
61+
See this Blueprint showing how to logout from passport ![Passport Logout Blueprint](PassportLogoutFlow.jpg)
62+
63+
## Supported Functionality
64+
65+
66+
| Method | Description |
67+
|--- |:---|
68+
| GetAddress | Gets Wallet Address |
69+
| GetEmail | Get Email Address associated with the Wallet Address |
70+
| CheckStoredCredentials | Checks if there are stored credits from previous login |
71+
| Connect | New login connection |
72+
| ConnectSilent | Attempts to login using stored credentials |
73+
74+
75+
See the [ImmutablePassport.h](https://github.com/immutable/unreal-immutable-sdk/blob/dc39324db204f2ba30e9c9f0ca25c070987785cb/Source/Immutable/Public/Immutable/ImmutablePassport.h#L115C8-L115C8) header for the full API.
76+
77+
## Examples
78+
79+
- **Sample Blueprints** - see the [sample blueprints](https://github.com/immutable/unreal-immutable-sdk/tree/main/Content/BlueprintSampleContent) for examples of how to use the Immutable Unity SDK.
80+
81+
- **Sample Game** - see the [sample game](https://github.com/immutable/sample-unreal-game) for example of how to use the Immutable Unity SDK.
1982

2083
## Plugin Maintainers' Guide
2184

2285
### Prerequisites
2386

24-
- Windows 10 or 11
2587
- git
2688
- Epic Games Launcher
2789
- Unreal Engine installed from the Epic Games Launcher; you will need every version that the plugin supports (currently 4.27, 5.0, 5.1, 5.2)
2890
- Visual Studio 2022 with C++ support
91+
- Jetbrains Rider IDE (recommended for working with Unreal Engine C++ code)
2992

30-
The Jetbrains Rider IDE is recommended for working with Unreal Engine C++ code. If not Rider, Visual Studio is fine and even better with the Resharper plugin.
93+
If not Rider, Visual Studio is fine and even better with the Resharper plugin.
3194

3295
### Getting Started
3396

34-
See user docs to install the plugin, with one caveat: If you want to open the project and plugin in an IDE you'll need to create your Unreal project as a C++ project. If you've already accidentally created your Unreal project as BluePrint-only you can convert it to a BluePrint-and-C++ project by adding any C++ class from the `Add New C++ Class` option in the Unreal Editor's `File` menu.
97+
See [user guide](#user-guide) to install the plugin, with one caveat: If you want to open the project and plugin in an IDE you'll need to create your Unreal project as a C++ project. If you've already accidentally created your Unreal project as BluePrint-only you can convert it to a BluePrint-and-C++ project by adding any C++ class from the `Add New C++ Class` option in the Unreal Editor's `File` menu.
3598

3699
### Debugging the Embedded Browser
37100

@@ -49,7 +112,75 @@ To set up Chromium remote debugging, edit project build/launch configurations in
49112

50113
Next, launch the game and then open a separate Chrome/Chromium browser and navigate to `chrome://inspect` where your app should be listed, sometimes intermittently or after a delay, under the `Remote Target #localhost` section. Click `inspect` to launch the remote debugging session.
51114

52-
#### Displaying the Browser
115+
## Changelog Management
116+
117+
The following headings should be used as appropriate.
118+
119+
- Added
120+
- Changed
121+
- Deprecated
122+
- Removed
123+
- Fixed
124+
125+
What follows is an example with all the change headings, for real world use only use headings when appropriate.
126+
This goes at the top of the CHANGELOG.md above the most recent release.
127+
128+
```markdown
129+
...
130+
131+
## [Unreleased]
132+
133+
### Added
134+
135+
for new features.
136+
137+
### Changed
138+
139+
for changes in existing functionality.
140+
141+
### Deprecated
142+
143+
for soon-to-be removed features.
144+
145+
### Removed
146+
147+
for now removed features.
148+
149+
### Fixed
150+
151+
for any bug fixes.
152+
153+
...
154+
```
155+
156+
## Contributing
157+
158+
If you would like to contribute, please read the following:
159+
160+
- We use the [Conventional Commits specification](https://www.conventionalcommits.org/en/v1.0.0/#specification) when writing our commit messages. Why use Conventional Commits? Read [here](https://www.conventionalcommits.org/en/v1.0.0/#why-use-conventional-commits).
161+
162+
## Getting Help
163+
164+
Immutable X is open to all to build on, with no approvals required. If you want to talk to us to learn more, or apply for developer grants, click below:
165+
166+
[Contact us](https://www.immutable.com/contact)
167+
168+
### Project Support
169+
170+
To get help from other developers, discuss ideas, and stay up-to-date on what's happening, become a part of our community on Discord.
171+
172+
[Join us on Discord](https://discord.gg/TkVumkJ9D6)
173+
174+
You can also join the conversation, connect with other projects, and ask questions in our Immutable X Discourse forum.
175+
176+
[Visit the forum](https://forum.immutable.com/)
177+
178+
#### Still need help?
179+
180+
You can also apply for marketing support for your project. Or, if you need help with an issue related to what you're building with Immutable X, click below to submit an issue. Select _I have a question_ or _issue related to building on Immutable X_ as your issue type.
181+
182+
[Contact support](https://support.immutable.com/hc/en-us/requests/new)
53183

54-
**TODO**
184+
## License
55185

186+
Immutable Unity SDK repository is distributed under the terms of the [Apache License (Version 2.0)](LICENSE).

0 commit comments

Comments
 (0)