Skip to content

Commit 8de86d1

Browse files
committed
nft sprite extension
1 parent ab2c796 commit 8de86d1

File tree

4 files changed

+74
-28
lines changed

4 files changed

+74
-28
lines changed

Assets/Thirdweb/Examples/Scenes/Scene_Playground.unity

Lines changed: 27 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -1710,7 +1710,7 @@ RectTransform:
17101710
m_AnchorMin: {x: 0.5, y: 1}
17111711
m_AnchorMax: {x: 0.5, y: 1}
17121712
m_AnchoredPosition: {x: 0, y: -275}
1713-
m_SizeDelta: {x: 1300, y: 100}
1713+
m_SizeDelta: {x: 1300, y: 120}
17141714
m_Pivot: {x: 0.5, y: 1}
17151715
--- !u!114 &198666613
17161716
MonoBehaviour:
@@ -1763,7 +1763,7 @@ MonoBehaviour:
17631763
m_fontSizeBase: 36
17641764
m_fontWeight: 400
17651765
m_enableAutoSizing: 1
1766-
m_fontSizeMin: 10
1766+
m_fontSizeMin: 18
17671767
m_fontSizeMax: 26
17681768
m_fontStyle: 2
17691769
m_HorizontalAlignment: 2
@@ -1775,7 +1775,7 @@ MonoBehaviour:
17751775
m_lineSpacingMax: 0
17761776
m_paragraphSpacing: 0
17771777
m_charWidthMaxAdj: 0
1778-
m_enableWordWrapping: 0
1778+
m_enableWordWrapping: 1
17791779
m_wordWrappingRatios: 0.4
17801780
m_overflowMode: 0
17811781
m_linkedTextComponent: {fileID: 0}
@@ -4784,7 +4784,7 @@ RectTransform:
47844784
m_AnchorMin: {x: 0.5, y: 1}
47854785
m_AnchorMax: {x: 0.5, y: 1}
47864786
m_AnchoredPosition: {x: 0, y: -275}
4787-
m_SizeDelta: {x: 1300, y: 100}
4787+
m_SizeDelta: {x: 1300, y: 120}
47884788
m_Pivot: {x: 0.5, y: 1}
47894789
--- !u!114 &601487570
47904790
MonoBehaviour:
@@ -4837,7 +4837,7 @@ MonoBehaviour:
48374837
m_fontSizeBase: 36
48384838
m_fontWeight: 400
48394839
m_enableAutoSizing: 1
4840-
m_fontSizeMin: 10
4840+
m_fontSizeMin: 18
48414841
m_fontSizeMax: 26
48424842
m_fontStyle: 2
48434843
m_HorizontalAlignment: 2
@@ -4849,7 +4849,7 @@ MonoBehaviour:
48494849
m_lineSpacingMax: 0
48504850
m_paragraphSpacing: 0
48514851
m_charWidthMaxAdj: 0
4852-
m_enableWordWrapping: 0
4852+
m_enableWordWrapping: 1
48534853
m_wordWrappingRatios: 0.4
48544854
m_overflowMode: 0
48554855
m_linkedTextComponent: {fileID: 0}
@@ -4918,7 +4918,7 @@ RectTransform:
49184918
m_AnchorMin: {x: 0.5, y: 1}
49194919
m_AnchorMax: {x: 0.5, y: 1}
49204920
m_AnchoredPosition: {x: 0, y: -275}
4921-
m_SizeDelta: {x: 1300, y: 100}
4921+
m_SizeDelta: {x: 1300, y: 120}
49224922
m_Pivot: {x: 0.5, y: 1}
49234923
--- !u!114 &603874974
49244924
MonoBehaviour:
@@ -4971,7 +4971,7 @@ MonoBehaviour:
49714971
m_fontSizeBase: 36
49724972
m_fontWeight: 400
49734973
m_enableAutoSizing: 1
4974-
m_fontSizeMin: 10
4974+
m_fontSizeMin: 18
49754975
m_fontSizeMax: 26
49764976
m_fontStyle: 2
49774977
m_HorizontalAlignment: 2
@@ -4983,7 +4983,7 @@ MonoBehaviour:
49834983
m_lineSpacingMax: 0
49844984
m_paragraphSpacing: 0
49854985
m_charWidthMaxAdj: 0
4986-
m_enableWordWrapping: 0
4986+
m_enableWordWrapping: 1
49874987
m_wordWrappingRatios: 0.4
49884988
m_overflowMode: 0
49894989
m_linkedTextComponent: {fileID: 0}
@@ -7419,7 +7419,7 @@ RectTransform:
74197419
m_AnchorMin: {x: 0.5, y: 1}
74207420
m_AnchorMax: {x: 0.5, y: 1}
74217421
m_AnchoredPosition: {x: 0, y: -275}
7422-
m_SizeDelta: {x: 1300, y: 100}
7422+
m_SizeDelta: {x: 1300, y: 120}
74237423
m_Pivot: {x: 0.5, y: 1}
74247424
--- !u!114 &944447571
74257425
MonoBehaviour:
@@ -7472,7 +7472,7 @@ MonoBehaviour:
74727472
m_fontSizeBase: 36
74737473
m_fontWeight: 400
74747474
m_enableAutoSizing: 1
7475-
m_fontSizeMin: 10
7475+
m_fontSizeMin: 18
74767476
m_fontSizeMax: 26
74777477
m_fontStyle: 2
74787478
m_HorizontalAlignment: 2
@@ -7484,7 +7484,7 @@ MonoBehaviour:
74847484
m_lineSpacingMax: 0
74857485
m_paragraphSpacing: 0
74867486
m_charWidthMaxAdj: 0
7487-
m_enableWordWrapping: 0
7487+
m_enableWordWrapping: 1
74887488
m_wordWrappingRatios: 0.4
74897489
m_overflowMode: 0
74907490
m_linkedTextComponent: {fileID: 0}
@@ -8409,7 +8409,7 @@ RectTransform:
84098409
m_AnchorMin: {x: 0.5, y: 1}
84108410
m_AnchorMax: {x: 0.5, y: 1}
84118411
m_AnchoredPosition: {x: 0, y: -275}
8412-
m_SizeDelta: {x: 1300, y: 100}
8412+
m_SizeDelta: {x: 1300, y: 120}
84138413
m_Pivot: {x: 0.5, y: 1}
84148414
--- !u!114 &1032793237
84158415
MonoBehaviour:
@@ -8462,7 +8462,7 @@ MonoBehaviour:
84628462
m_fontSizeBase: 36
84638463
m_fontWeight: 400
84648464
m_enableAutoSizing: 1
8465-
m_fontSizeMin: 10
8465+
m_fontSizeMin: 18
84668466
m_fontSizeMax: 26
84678467
m_fontStyle: 2
84688468
m_HorizontalAlignment: 2
@@ -8474,7 +8474,7 @@ MonoBehaviour:
84748474
m_lineSpacingMax: 0
84758475
m_paragraphSpacing: 0
84768476
m_charWidthMaxAdj: 0
8477-
m_enableWordWrapping: 0
8477+
m_enableWordWrapping: 1
84788478
m_wordWrappingRatios: 0.4
84798479
m_overflowMode: 0
84808480
m_linkedTextComponent: {fileID: 0}
@@ -9531,7 +9531,7 @@ RectTransform:
95319531
m_AnchorMin: {x: 0.5, y: 1}
95329532
m_AnchorMax: {x: 0.5, y: 1}
95339533
m_AnchoredPosition: {x: 0, y: -275}
9534-
m_SizeDelta: {x: 1300, y: 100}
9534+
m_SizeDelta: {x: 1300, y: 120}
95359535
m_Pivot: {x: 0.5, y: 1}
95369536
--- !u!114 &1122116940
95379537
MonoBehaviour:
@@ -9584,7 +9584,7 @@ MonoBehaviour:
95849584
m_fontSizeBase: 36
95859585
m_fontWeight: 400
95869586
m_enableAutoSizing: 1
9587-
m_fontSizeMin: 10
9587+
m_fontSizeMin: 18
95889588
m_fontSizeMax: 26
95899589
m_fontStyle: 2
95909590
m_HorizontalAlignment: 2
@@ -9596,7 +9596,7 @@ MonoBehaviour:
95969596
m_lineSpacingMax: 0
95979597
m_paragraphSpacing: 0
95989598
m_charWidthMaxAdj: 0
9599-
m_enableWordWrapping: 0
9599+
m_enableWordWrapping: 1
96009600
m_wordWrappingRatios: 0.4
96019601
m_overflowMode: 0
96029602
m_linkedTextComponent: {fileID: 0}
@@ -15468,7 +15468,7 @@ RectTransform:
1546815468
m_AnchorMin: {x: 0.5, y: 1}
1546915469
m_AnchorMax: {x: 0.5, y: 1}
1547015470
m_AnchoredPosition: {x: 0, y: -275}
15471-
m_SizeDelta: {x: 1300, y: 100}
15471+
m_SizeDelta: {x: 1300, y: 120}
1547215472
m_Pivot: {x: 0.5, y: 1}
1547315473
--- !u!114 &1854854119
1547415474
MonoBehaviour:
@@ -15521,7 +15521,7 @@ MonoBehaviour:
1552115521
m_fontSizeBase: 36
1552215522
m_fontWeight: 400
1552315523
m_enableAutoSizing: 1
15524-
m_fontSizeMin: 10
15524+
m_fontSizeMin: 18
1552515525
m_fontSizeMax: 26
1552615526
m_fontStyle: 2
1552715527
m_HorizontalAlignment: 2
@@ -15533,7 +15533,7 @@ MonoBehaviour:
1553315533
m_lineSpacingMax: 0
1553415534
m_paragraphSpacing: 0
1553515535
m_charWidthMaxAdj: 0
15536-
m_enableWordWrapping: 0
15536+
m_enableWordWrapping: 1
1553715537
m_wordWrappingRatios: 0.4
1553815538
m_overflowMode: 0
1553915539
m_linkedTextComponent: {fileID: 0}
@@ -16005,7 +16005,7 @@ RectTransform:
1600516005
m_AnchorMin: {x: 0.5, y: 1}
1600616006
m_AnchorMax: {x: 0.5, y: 1}
1600716007
m_AnchoredPosition: {x: 0, y: -275}
16008-
m_SizeDelta: {x: 1300, y: 100}
16008+
m_SizeDelta: {x: 1300, y: 120}
1600916009
m_Pivot: {x: 0.5, y: 1}
1601016010
--- !u!114 &1918711627
1601116011
MonoBehaviour:
@@ -16058,7 +16058,7 @@ MonoBehaviour:
1605816058
m_fontSizeBase: 36
1605916059
m_fontWeight: 400
1606016060
m_enableAutoSizing: 1
16061-
m_fontSizeMin: 10
16061+
m_fontSizeMin: 18
1606216062
m_fontSizeMax: 26
1606316063
m_fontStyle: 2
1606416064
m_HorizontalAlignment: 2
@@ -16070,7 +16070,7 @@ MonoBehaviour:
1607016070
m_lineSpacingMax: 0
1607116071
m_paragraphSpacing: 0
1607216072
m_charWidthMaxAdj: 0
16073-
m_enableWordWrapping: 0
16073+
m_enableWordWrapping: 1
1607416074
m_wordWrappingRatios: 0.4
1607516075
m_overflowMode: 0
1607616076
m_linkedTextComponent: {fileID: 0}
@@ -16985,7 +16985,7 @@ RectTransform:
1698516985
m_AnchorMin: {x: 0.5, y: 1}
1698616986
m_AnchorMax: {x: 0.5, y: 1}
1698716987
m_AnchoredPosition: {x: 0, y: -275}
16988-
m_SizeDelta: {x: 1300, y: 100}
16988+
m_SizeDelta: {x: 1300, y: 120}
1698916989
m_Pivot: {x: 0.5, y: 1}
1699016990
--- !u!114 &2031826890
1699116991
MonoBehaviour:
@@ -17038,7 +17038,7 @@ MonoBehaviour:
1703817038
m_fontSizeBase: 36
1703917039
m_fontWeight: 400
1704017040
m_enableAutoSizing: 1
17041-
m_fontSizeMin: 10
17041+
m_fontSizeMin: 18
1704217042
m_fontSizeMax: 26
1704317043
m_fontStyle: 2
1704417044
m_HorizontalAlignment: 2
@@ -17050,7 +17050,7 @@ MonoBehaviour:
1705017050
m_lineSpacingMax: 0
1705117051
m_paragraphSpacing: 0
1705217052
m_charWidthMaxAdj: 0
17053-
m_enableWordWrapping: 0
17053+
m_enableWordWrapping: 1
1705417054
m_wordWrappingRatios: 0.4
1705517055
m_overflowMode: 0
1705617056
m_linkedTextComponent: {fileID: 0}

Assets/Thirdweb/Examples/Scripts/PlaygroundManager.cs

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -341,9 +341,15 @@ private void InitializeContractsPanel()
341341
try
342342
{
343343
LoadingLog(panel.LogText);
344-
var dropErc1155Contract = await ThirdwebManager.Instance.GetContract(address: "0x6A7a26c9a595E6893C255C9dF0b593e77518e0c3", chainId: ActiveChainId);
344+
var dropErc1155Contract = await ThirdwebManager.Instance.GetContract(address: "0x94894F65d93eb124839C667Fc04F97723e5C4544", chainId: ActiveChainId);
345345
var nft = await dropErc1155Contract.ERC1155_GetNFT(tokenId: 1);
346346
Log(panel.LogText, $"NFT: {JsonConvert.SerializeObject(nft.Metadata)}");
347+
var sprite = await nft.GetNFTSprite(client: ThirdwebManager.Instance.Client);
348+
// spawn image for 3s
349+
var image = new GameObject("NFT Image", typeof(RectTransform), typeof(CanvasRenderer), typeof(Image));
350+
image.transform.SetParent(panel.Panel.transform, false);
351+
image.GetComponent<Image>().sprite = sprite;
352+
Destroy(image, 3f);
347353
}
348354
catch (System.Exception e)
349355
{
Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
using System.Numerics;
2+
using System.Threading.Tasks;
3+
using UnityEngine;
4+
5+
namespace Thirdweb.Unity
6+
{
7+
public static class ThirdwebUnityExtensions
8+
{
9+
public static async Task<Sprite> GetNFTSprite(this NFT nft, ThirdwebClient client)
10+
{
11+
var bytes = await nft.GetNFTImageBytes(client);
12+
Texture2D texture = new(2, 2);
13+
14+
bool isLoaded = texture.LoadImage(bytes);
15+
if (!isLoaded)
16+
{
17+
Debug.LogError("Failed to load image from bytes.");
18+
return null;
19+
}
20+
21+
return Sprite.Create(texture, new Rect(0, 0, texture.width, texture.height), new UnityEngine.Vector2(0.5f, 0.5f));
22+
}
23+
24+
public static async Task<SmartWallet> UpgradeToSmartWallet(this IThirdwebWallet personalWallet, BigInteger chainId, SmartWalletOptions smartWalletOptions)
25+
{
26+
return await ThirdwebManager.Instance.UpgradeToSmartWallet(personalWallet, chainId, smartWalletOptions);
27+
}
28+
}
29+
}

Assets/Thirdweb/Runtime/Unity/ThirdwebUnityExtensions.cs.meta

Lines changed: 11 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)