diff --git a/src/app/unreal/assets/unreal-level.png b/src/app/unreal/assets/unreal-level.png new file mode 100644 index 00000000..7d01b22c Binary files /dev/null and b/src/app/unreal/assets/unreal-level.png differ diff --git a/src/app/unreal/assets/unreal-settings.png b/src/app/unreal/assets/unreal-settings.png new file mode 100644 index 00000000..9caacff4 Binary files /dev/null and b/src/app/unreal/assets/unreal-settings.png differ diff --git a/src/app/unreal/getting-started/page.mdx b/src/app/unreal/getting-started/page.mdx new file mode 100644 index 00000000..4c3e9ce4 --- /dev/null +++ b/src/app/unreal/getting-started/page.mdx @@ -0,0 +1,65 @@ +import { + Callout, + Steps, + Step, + DocImage, + createMetadata, +} from "@doc"; +import unrealSettings from "../assets/unreal-settings.png"; +import unrealLevel from "../assets/unreal-level.png"; + +export const metadata = createMetadata({ + title: "Plugin Getting Started | thirdweb Unreal SDK", + description: + "Learn how to integrate thirdweb's Unreal SDK into your Engine.", +}); + +# Getting Started + + + +To get started with the Unreal SDK, you will need to have a [thirdweb API Key](https://thirdweb.com/create-api-key) created. Make sure you allowlist a bundle ID to use within Unreal native applications. + + + +## Integration Steps + + + + + +Download and install the Thirdweb Unreal Plugin from the [Unreal Marketplace](https://www.unrealengine.com/marketplace/en-US/product/f21200c2610146f3888172994448e50d). + + + + + +Once you import the plugin into your project, you will need to set up the plugin settings with your Client ID and Bundle ID. + +You can do so by navigating to `Edit > Project Settings > Engine > Thirdweb` and filling in the required fields. + + + +Alternatively, you can head to your root `Config` folder and open the `DefaultEngine.ini` file to set up the plugin settings. + +```ini +[/Script/Thirdweb.ThirdwebRuntimeSettings] +ClientID= +BundleID= +SecretKey= +StorageDirectoryPath= +``` + +Note that a Secret Key should not be used in client applications, as it is a sensitive piece of information. The Storage Directory Path is also optional and can be left empty. + + + + + +Try out our prebuilt example `Level_Thirdweb` to create and login to wallets seamlessly, using all kinds of authentication, and explore advanced Account Abstraction use cases. + + + + + + diff --git a/src/app/unreal/page.mdx b/src/app/unreal/page.mdx index 5a3c6956..dfb970f7 100644 --- a/src/app/unreal/page.mdx +++ b/src/app/unreal/page.mdx @@ -1,13 +1,13 @@ -import { OpenSourceCard, ArticleIconCard, ArticleCard, Grid } from "@doc"; +import { OpenSourceCard, ArticleIconCard } from "@doc"; import { GraduationCap } from "lucide-react"; -# Unreal Plugin +# Unreal SDK -A plugin for Unreal Engine that enables developers to create thirdweb Private Key Wallets, In-App Wallets and Smart Wallets for their games and applications. The plugin provides a simple API integrating blueprints to interact with wallets, login with email or socials as well as create Smart Wallet session keys. +A Code Plugin for Unreal Engine that enables developers to create thirdweb Private Key Wallets, In-App Wallets and Smart Wallets for their games and applications. The plugin provides a simple API and blueprints to interact with wallets, login with email or socials as well as create Smart Wallet session keys. -With this plugin, you can keep the onboarding of your users in-client and grant a session key to your thirdweb Engine powered backend to interact with the blockchain, no signature in sight. +With this plugin, you can keep the onboarding of your users in-client and grant a session key to your [thirdweb Engine](https://portal.thirdweb.com/engine) powered backend to interact with the blockchain, no signature in sight. -The plugin is still a work in progress and will be updated with more features and improvements. +The Thirdweb Unreal Plugin is distributed as an [Unreal Marketplace Code Plugin](https://www.unrealengine.com/marketplace/en-US/product/f21200c2610146f3888172994448e50d). -## Installation - -The Unreal SDK is distributed as an [Unreal Marketplace Plugin](https://www.unrealengine.com/marketplace/). - -The plugin's core logic is built from Rust, making it lightning-fast and minimizing the clutter in your Unreal project. - -It currently is built to support Win64 platforms and was tested in UE 5.4. +## Features +- **Generate or Create Private Key Wallets** - ephemereal guest wallets. +- **Create and Login to In-App Wallets** - unlocking email and social authentication to create persistent, cross-platform, cross-device and cross-sdk signless embedded wallets. +- **Unlock the power of Account Abstraction** - unlock the ability to sponsor gas and interact on behalf of users by upgrading any wallet to a Smart Wallet, and using Session Keys to grant scoped access to your backend - fully compatible with [thirdweb Engine](https://portal.thirdweb.com/engine) or other SDKs. +- **Rust Core** - the plugin's core logic is built from Rust, making it lightning-fast and minimizing the clutter in your Unreal project. +- **Compatible with Unreal Engine 5.4** - the plugin is compatible with the latest version of Unreal Engine, allowing you to leverage the latest features and improvements. -## Get Started - -`BP_Thirdweb_OAuth` showcases social login with socials, defaulting to Google for the example. You may test it in `Level_Thirdweb_OAuth`. - -`Level_Thirdweb` that will trigger Email Login, make sure `BP_Thirdweb` has the Email set. +## Installation -`BP_Thirdweb` is the main blueprint that will handle wallet initialization, you may also set your thirdweb API key settings in its Class Defaults. +Download and install the Thirdweb Unreal Plugin from the [Unreal Marketplace](https://www.unrealengine.com/marketplace/en-US/product/f21200c2610146f3888172994448e50d). -`BP_Thirdweb` showcases general wallet creation, interaction and email login as well as session resuming. +Our Plugin is programmed as a subsystem, allowing you to interact with it very easily. -`BP_Thirdweb_VerificationWidget` has a graph that showcases the flow to verify an OTP and subsequently create a wallet. It also updates some basic UI. \ No newline at end of file + diff --git a/src/app/unreal/sidebar.tsx b/src/app/unreal/sidebar.tsx index f8e072c1..34640596 100644 --- a/src/app/unreal/sidebar.tsx +++ b/src/app/unreal/sidebar.tsx @@ -1,12 +1,18 @@ import { SideBar } from "@/components/Layouts/DocLayout"; +import { ZapIcon } from "lucide-react"; export const sidebar: SideBar = { name: "Unreal SDK", links: [ { separator: true }, { - name: "Plugin Overview", + name: "Overview", href: "/unreal", }, + { + name: "Getting Started", + href: "/unreal/getting-started", + icon: , + } ], };