AI-assets genereren voor PlayDrop-games
Genereer afbeeldingen, muziek, geluidseffecten, spraak, video en 3D in PlayDrop: in de browser met akkoord van de speler, of op een gameserver op kosten van de maker.
PlayDrop kan afbeeldingen, muziek, geluidseffecten, spraak, video en 3D-modellen genereren. Gebruik het tijdens het maken van een game, of in een game zodat spelers gegenereerde inhoud krijgen.
Tijdens het maken van de game
Ingelogde makers genereren assets via Maken op de PlayDrop-website (afbeelding, muziek, geluid, spraak, video en 3D) of vragen het aan PlayDrop Cloud terwijl ze een game bouwen. Elke generatie kost credits, die je ziet voordat ze begint, en het resultaat wordt een asset van jou. Gebruik het zoals elke andere asset: download het in je pakket of verwijs ernaar in uses (game-assets).
In een game: vanuit de browser
sdk.ai.<kind>.createTask(request) vraagt PlayDrop media te genereren voor de huidige speler. PlayDrop toont de speler een bevestiging met de creditkosten, de speler betaalt en het resultaat is alleen voor die speler.
try {
const task = await sdk.ai.image.createTask({ input: "A friendly robot pet, flat colors", aspectRatio: "1:1" });
const done = await waitForTask(task.id);
const blob = await sdk.ai.tasks.downloadFile(done.id);
showPet(URL.createObjectURL(blob));
} catch (error) {
if (error.message === "ai_generation_cancelled") return;
throw error;
}
async function waitForTask(id) {
for (;;) {
const task = await sdk.ai.tasks.get(id);
if (task.status === "DONE") return task;
if (["FAILED", "CANCELLED", "EXPIRED"].includes(task.status)) throw new Error(task.status);
await new Promise((resolve) => setTimeout(resolve, 2000));
}
}- Soorten:
image,music,sfx,speech,videoenmodel3d.sdk.ai.inputs.upload(blob)stuurt een referentieafbeelding. - Er kan maar één bevestiging tegelijk open zijn; een tweede aanroep wordt geweigerd met
ai_generation_in_progress. - Tekst en JSON genereren vanuit de browser is niet beschikbaar voor gehoste games en geeft
app_ai_generation_disabled. Gebruik een server. - Roep het aan vanuit een actie van de speler, tijdens
play, en handel annuleren af.
In een game: vanaf een server
Op een gameserver genereert playdrop.ai uit @playdrop/server tekst, JSON, afbeeldingen, muziek, geluidseffecten, spraak, video en 3D. De maker betaalt en is standaard eigenaar van de resultaten; geef { owner: client.auth } mee om een geschikt resultaat aan die speler te geven.
import { playdrop } from "@playdrop/server";
const task = await playdrop.ai.speech.createTask({ input: "Welcome back, captain." }, { owner: client.auth });
// Later, once the task is DONE:
const file = await playdrop.ai.tasks.downloadFile(task.id, { role: "primary" });
client.send("speech", { bytes: new Uint8Array(await file.arrayBuffer()), contentType: file.type });- Een gegenereerd bestand is privé: download het op de server en stuur de bytes alleen naar de beoogde speler.
- Spraakverzoeken accepteren maximaal 40 woorden.
- Generaties van testspelers blijven eigendom van de maker en draaien in testmodus.
- Deze aanroepen werken bij geüploade games, niet in lokale ontwikkeling.
Genereren kost credits, dus beperk hoe vaak spelers het kunnen starten, en bewijs eerst dat één volledig verzoek werkt, van taak tot de speler die het resultaat echt ziet of hoort, voordat je er een game omheen bouwt.