Skip to content

Commit 43ac9e8

Browse files
Add support for Mac & Linux + InternalWebBrowser (#4)
* Updated readme with more descriptive information * Moved from the self-hosted http flow to an internal WebBrowser flow * Added additional blueprint utility functions * custom WebBrowser widget and userwidget * Additional binaries added for next platform support stage --------- Co-authored-by: 0xFirekeeper <0xFirekeeper@gmail.com>
1 parent 500e0fe commit 43ac9e8

28 files changed

+618
-206
lines changed

.gitattributes

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,4 @@
11
# Auto detect text files and perform LF normalization
22
* text=auto
3+
*.a filter=lfs diff=lfs merge=lfs -text
4+
*.lib filter=lfs diff=lfs merge=lfs -text

.gitignore

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,10 @@ Config/
3131
*.a
3232
*.lib
3333

34+
# Don't ignore Thirdparty libs
35+
!Source/ThirdParty/**/*.a
36+
!Source/ThirdParty/**/*.lib
37+
3438
# Executables
3539
*.exe
3640
*.out
@@ -58,10 +62,10 @@ Plugins/*/Binaries/*
5862
# Builds
5963
Build/*
6064

61-
# Whitelist PakBlacklist-<BuildConfiguration>.txt files
65+
# Allowlist PakDenylist-<BuildConfiguration>.txt files
6266
!Build/*/
6367
Build/*/**
64-
!Build/*/PakBlacklist*.txt
68+
!Build/*/PakDenylist*.txt
6569

6670
# Don't ignore icon files in Build
6771
!Build/**/*.ico
@@ -79,5 +83,5 @@ Plugins/*/Intermediate/*
7983
# Cache files for the editor to use
8084
DerivedDataCache/*
8185

82-
# Include specific thirdweb Rust library file
83-
!Plugins/Thirdweb/lib/thirdweb.lib
86+
# ignore ue4cli dist folder
87+
dist/
-2.55 KB
Binary file not shown.

README.md

Lines changed: 55 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,24 +1,72 @@
1-
![unreal-featuregraphic](https://github.com/user-attachments/assets/a3d3a83f-fbbe-4ad1-9c68-b115f8992087)
1+
![unreal-hero](https://github.com/user-attachments/assets/a3d3a83f-fbbe-4ad1-9c68-b115f8992087)
22

3-
[<img alt="Unreal Documentation" src="https://img.shields.io/badge/Unreal SDK-Documentation-red?logo=unreal&style=for-the-badge" height="30">](https://portal.thirdweb.com/unreal)
3+
[![Static Badge](https://img.shields.io/badge/Unreal%20SDK-Documentation-red?style=for-the-badge)][documentation-url]
4+
[![Static Badge](https://img.shields.io/badge/Unreal%20SDK-Marketplace-purple?style=for-the-badge)][marketplace-url]
45

56
# Thirdweb Unreal Engine SDK Plugin
67

7-
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.
8+
A Code Plugin for Unreal Engine that enables developers to create thirdweb Private Key Wallets, In-App Wallets and
9+
Smart Wallets for their games and applications. The plugin provides a simple API and blueprints to interact with
10+
wallets, login with email or socials as well as create Smart Wallet session keys.
811

9-
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.
12+
With this plugin, you can keep the onboarding of your users in-client and grant a session key to your
13+
[thirdweb Engine](https://portal.thirdweb.com/engine) powered backend to interact with the blockchain,
14+
no signature in sight.
1015

11-
The Thirdweb Unreal Plugin is distributed as an [Unreal Marketplace Code Plugin](https://www.unrealengine.com/marketplace/en-US/product/f21200c2610146f3888172994448e50d).
16+
## Supported Unreal Engine Versions
17+
18+
Thirdweb adheres to Unreal Engine's Marketplace Guidelines in supporting the 3 most recent versions[^1].
19+
We aim to release an updated plugin version as expediently as possible once a minor version change has released.
20+
If you or your company require compatibility with an older version, please reach out to [support][support-url].
1221

1322
## Installation
1423

15-
The Unreal SDK is distributed as an [Unreal Marketplace Plugin](https://www.unrealengine.com/marketplace/).
24+
In addition to the source code provided, the plugin is available on the [Unreal Marketplace][marketplace-url].
1625

1726
The plugin's core logic is built from Rust, making it lightning-fast and minimizing the clutter in your Unreal project.
1827

19-
It currently is built to support Win64 platforms and was tested in UE 5.4.
28+
## Packaging
29+
30+
Windows, Linux, and Android all package natively and can be used in blueprint-only projects
31+
32+
### Mac
33+
34+
The plugin currently makes use of the [Web Browser][web-browser-doc] runtime module which bundles [CEF3][cef-forum].
35+
Changes to the engine are currently required for modern xcode targets as Unreal Engine does not properly link
36+
the framework during packaging. This requires either an engine patch or moving the framework post-build and
37+
then codesigning your build again.
38+
39+
In the [CEF3.build.cs][cef3-build-cs] you need to bypass the `if` check for modern xcode. This can be accomplished by
40+
adding `|| true` to the end of the if check on line 102.
41+
42+
Additionally, you need to add `bCompileCEF3 = true;` to your build target
43+
44+
## Supported Platforms & Architectures
45+
46+
| Platform | x64 | arm64 |
47+
|----------|:---:|:-----:|
48+
| Windows |||
49+
| Linux |||
50+
| Mac |||
51+
| IOS |||
52+
| TVOS |||
53+
| VisionOS |||
54+
| Android |||
55+
56+
Legend: ✅ Supported | ❌ Unsupported | ➖ Not applicable
57+
58+
2059

2160

2261
## Documentation
2362

2463
Documentation is available at https://portal.thirdweb.com/unreal
64+
65+
[^1]: Unreal Engine's Marketplace Guidelines - Section 3.1.b https://www.unrealengine.com/en-US/marketplace-guidelines#31b
66+
67+
[support-url]: https://thirdweb.com/support
68+
[documentation-url]: https://portal.thirdweb.com/unreal
69+
[marketplace-url]: https://www.unrealengine.com/marketplace/en-US/product/f21200c2610146f3888172994448e50d
70+
[web-browser-doc]: https://dev.epicgames.com/documentation/en-us/unreal-engine/API/Runtime/WebBrowser
71+
[cef-forum]: https://www.magpcss.org/ceforum/index.php
72+
[cef3-build-cs]: https://github.com/EpicGames/UnrealEngine/blob/release/Engine/Source/ThirdParty/CEF3/CEF3.build.cs#L102
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
version https://git-lfs.github.com/spec/v1
2+
oid sha256:0497f9310ecdf59636d219d0454ea3b6edfc6ef99f9a537b671b571c82a071f3
3+
size 91730924
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
version https://git-lfs.github.com/spec/v1
2+
oid sha256:267d4e9d9c3c559959277bd53061bfe7cf6bb11ca24985b36070423c9113c306
3+
size 53999704
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
version https://git-lfs.github.com/spec/v1
2+
oid sha256:2bd3c60a7fad54c390306e552601845bcf25f541a07ca996bbd7f4c57d64b350
3+
size 83323240
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
version https://git-lfs.github.com/spec/v1
2+
oid sha256:4d44b650677c961ca45d085e51a18b3ac3a18c9cb78c25523c4d767fd1ded663
3+
size 84215666
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
version https://git-lfs.github.com/spec/v1
2+
oid sha256:24756e06d725aad5d3086a79159e32a0fed32ce4dea837d352c59e75adc7072a
3+
size 109161568
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
version https://git-lfs.github.com/spec/v1
2+
oid sha256:efd88be2a3c8b991cdec8a3e22562818cbe05f90f550b4ad914cafa049997a29
3+
size 80235508

0 commit comments

Comments
 (0)