Con la Proprietàdi creazione delle risorse in-experience, puoi consentire ai tuoi utenti di salvare le creazioni che hanno fatto nella tua esperienza nei loro inventari. I tuoi utenti possono utilizzare queste creazioni in-experience come qualsiasi altra risorsa. Inoltre, queste creazioni attribuiscono alla tua esperienza quando visualizzate sulla PiattaformaRoblox, in modo che qualsiasi utente possa usare il link di attribuzione per entrare nella tua esperienza e creare la Proprio.
Ad esempio, puoi consentire agli utenti di creare creature personalizzate come animali domestici nella tua esperienza, e consentire loro di salvare i loro animali domestici preferiti nei loro inventari. Hai il controllo completo per specificare quali oggetti gli utenti possono modificare e salvare nella tua esperienza. Gli utenti in turno possono visualizzare le loro creazioni nei loro profili con l'attribuzione alla tua esperienza, aumentando la visibilità della tua esperienza.
Tipi e limiti di risorse supportati
Come tutte le risorse sulla Piattaforma, le creazioni in-experience sono soggette a moderazione delle risorse. Attualmente, puoi consentire solo agli utenti di creare pacchetti dalla tua esperienza. Questi pacchetti non possono contenere nessuno script o risorse private, come audio/suono, video e pacchetti annidati. Se il sistema rileva gli script o le risorse private in un pacchetto che può essere salvato
Quando esegui o test la tua esperienza e aggiungi script o risorse private come parte di una Creazioniin-experience, non riesce a salvare e richiede messaggi di errore alla finestra di uscita di Studio oppure alla console di sviluppatore .
Abilitare la creazione di risorse in-experience
Per abilitare la creazione di risorse in-experience per i tuoi utenti, usa il metodo AssetService:PromptCreateAssetAsync() API in uno script lato server, insieme a altre logiche di creazione.Specifica le istanze nella tua esperienza che vuoi abilitare questa funzionalità, imposta un trigger personalizzato (ad esempio un'IconaUI) per l'invocazione del metodo e ascolta gli eventi remoti del client per il salvataggio delle risorse.
AssetService:PromptCreateAssetAsync() preleva i seguenti parametri:
- Un oggetto Player che rappresenta l'utente che invia una Creazionidi risorse.
- Un oggetto Instance che rappresenta la risorsa per la Creazioni.
- Il Enum.AssetType , che è attualmente limitato a Enum.AssetType.Model .
Quando il server invoca AssetService:PromptCreateAssetAsync() , richiede una finestra di dialogo Submit Package sul client, in modo che l'utente che attiva l'azione di salvataggio possa inserire un nome e una descrizione per il pacchetto. Roblox fornisce l'interfaccia utente di dialogo, poiché il flusso di lavoro di salvataggio è una funzione di livello della piattaforma.
Il seguente script lato server richiede agli utenti di salvare un'auto che dipingono in un'esperienza:
Script per la creazione di risorse in-experience
-- Difini la variabile AssetService
local AssetService = game:GetService("AssetService")
-- Configura PromptCreateAssetAsync() per richiedere la finestra di dialogo di invio
local function CreateAsset(player, instance)
local complete, result, assetId = pcall(function()
return AssetService:PromptCreateAssetAsync(player, instance, Enum.AssetType.Model)
end)
if complete then
if result == Enum.PromptCreateAssetResult.Success then
print("successfully uploaded, AssetId:", assetId)
else
print("Received result", result)
end
else
print("error")
print(result)
end
end
-- Logica di pittura auto omessa
-- Aggiungi un gestore di eventi
local function onUserPublish(player, promptObject)
-- L'utente salva l'istanza dell'auto con il colore predefinito dell'esperienza
if promptObject.Name == "car" then
CreateAsset(player, car)
elseif promptObject.Name == "CarPaintYellow" or promptObject.Name == "CarPaintBlue" or promptObject.Name == "CarPaintBlack" or promptObject.Name == "CarPaintRed" then
PaintCarColor(promptObject.Name)
end
end
PublishEvent.OnServerEvent:Connect(onUserPublish)
In-Experience Creation Demo Arena mostra un esempio su come puoi usare questa Proprietà. Puoi unirti alla demo per camminare attraverso il flusso di lavoro in-experience come utente e accedere al file del luogo utilizzando l'opzione Modifica in Studio per fare riferimento al design.
Post-creazione e Attribuzione
Dopo che gli utenti creano e salvano una risorsa dalla tua esperienza, possono trovarla nei seguenti luoghi:
- La loro pagina Il mio inventario.
- La Creazioni scheda della loro pagina Profilo.
- La Sviluppo oggetti scheda sotto la loro pagina Creazioni.
- La scheda Inventario della loro Toolbox in Studio.
Quando gli utenti vedono le creazioni in-experience nella profilazione o nell'inventario di un amico, vedono l'attribuzione all'esperienza originale in cui la risorsa è stata creata. Gli utenti possono fare clic sul link di attribuzione per essere reindirizzati alla pagina dell'esperienza, in modo da poter unirsi all'esperienza e creare la Proprio.