PlayDrop logoPlayDrop Studio
ErstellenSpieltauschVerdienenLernenConnectorsAssetsCommunityHilfe
PlayDrop logoPlayDrop Studio
ErstellenSpieltauschVerdienenLernenConnectorsAssetsCommunityHilfe
Anmelden
Vollbild und sichere Bereiche
Dokumentation

Hier starten

ÜbersichtDein erstes SpielPlayDrop-SpieleFAQ

Mit Cloud erstellen

Cloud-ErstellungTarife & Generierungen

KI-App verbinden

Alle ConnectorsClaudeChatGPTClaude CodeCodexCursorGeminiAntigravityGrok BuildGrok BotGrok ChatLovableReplit

Veröffentlichen und teilen

Aus deiner KI-App veröffentlichenEinfache HTML-SpielePakete und .playVeröffentlichen und importierenSpieldateienSichtbarkeit und ReichweiteBilder und Videos für den SpieleintragGenres und TagsLokalisierungSofortspiele

Spielerlebnis

Laden, Pause und AudioVollbild und sichere BereicheCloud-SpielständeLokale Partys und Controller

Zusammen spielen

Teilen, Freunde und EinladungenBestenlistenErfolgeOnline-Partys und SprachchatEchtzeit-Spielserver

Verdienen

MonetarisierungCredits & Belohnungen

Assets

Spiel-AssetsKI-Asset-GenerierungEigene Formate und Spielerkreationen

Referenz

Client-SDKServer-SDKcatalogue.jsonFehler und WiederherstellungFehlerbehebung
DokumentationVollbild und sichere Bereiche
Spielerlebnis

Vollbild, sichere Bereiche und HUD-Ecken für PlayDrop-Spiele

PlayDrop-Spiel bildschirmfüllend machen, HUD in sicheren Bereichen und mit den gemessenen reservedCorners des SDK frei von Host-Bedienelementen halten.

PlayDrop gibt deinem Spiel den ganzen Bildschirm: Die Spielseite auf der Website hat eine eigene Vollbild-Schaltfläche, und die Apps zeigen Spiele im Vollbild. Auf Handys legt PlayDrop kleine Bedienelemente für Pause und Audio (und während einer Party eines für den Sprachchat) über die oberen Ecken des Spiels. Das SDK sagt dir genau, wo sie sind, damit das HUD ihnen ausweichen kann, ohne Platz zu verschenken.

Den Anzeigebereich füllen

Zeichne von Rand zu Rand und verhindere, dass die Seite scrollt, zoomt oder Text markiert:

html
<meta name="viewport" content="width=device-width, initial-scale=1, viewport-fit=cover, user-scalable=no">
<style>
  html, body { margin: 0; width: 100%; height: 100%; overflow: hidden; background: #000; }
  body { touch-action: none; user-select: none; -webkit-user-select: none; -webkit-touch-callout: none; }
  canvas { display: block; width: 100vw; height: 100dvh; }
</style>

Berechne die Größe des Canvas aus seiner angezeigten Größe mal devicePixelRatio und zeichne bei resize neu; Fenster ändern ihre Größe auf Computern, Tablets und Foldables und wenn das Handy gedreht wird. Hintergrundgrafik und Spielfeld reichen überallhin, auch unter Notches und die Bedienelemente des Hosts. Nur interaktive und lesbare HUD-Elemente müssen ihnen ausweichen. Eine eigene Vollbild-Schaltfläche brauchst du nicht.

Das HUD frei halten

Zwei Dinge können die Ränder verdecken:

  • Sichere Bereiche der Hardware, etwa eine Notch oder die Home-Leiste, aus CSS env(safe-area-inset-top|right|bottom|left).
  • Die Bedienelemente des Hosts, aus sdk.host.reservedCorners: { topLeft: { width, height }, topRight: { width, height } }, in CSS-Pixeln, gemessen von der oberen linken und oberen rechten Ecke des Anzeigebereichs des Spiels.

Weiche der Vereinigung beider Bereiche aus, nie ihrer Summe. Ein HUD-Element oben links kann unter dem Eckrechteck oder daneben sitzen; nimm in beiden Fällen jeweils den größeren Abstand:

js
const root = document.documentElement.style;
function layoutHud(corners) {
  const left = corners?.topLeft ?? { width: 0, height: 0 };
  const right = corners?.topRight ?? { width: 0, height: 0 };
  root.setProperty("--pd-tl-h", `${left.height}px`);
  root.setProperty("--pd-tr-h", `${right.height}px`);
}
layoutHud(sdk.host.reservedCorners);
const stop = sdk.host.onReservedCornersChange(layoutHud);
css
.score { position: absolute; left: max(12px, env(safe-area-inset-left));
  top: max(12px, env(safe-area-inset-top), var(--pd-tl-h, 0px)); }
.lives { position: absolute; right: max(12px, env(safe-area-inset-right));
  top: max(12px, env(safe-area-inset-top), var(--pd-tr-h, 0px)); }
  • Breite und Höhe null bedeuten, dass nichts diese Ecke verdeckt, zum Beispiel auf der Desktop-Website, wo die Bedienelemente außerhalb des Spiels liegen.
  • null bedeutet einen älteren Host, der keine Ecken meldet: Behalte dein bisheriges Layout mit sicheren Bereichen.
  • Die Werte stammen von den Bedienelementen, die tatsächlich auf dem Bildschirm sind, etwa Touch-Flächen von mindestens 44 Punkt auf Handys, und ändern sich beim Drehen, bei Größenänderungen und bei Partys. Lies sie aus; programmiere nie eine feste Größe ein und reserviere nie einen Streifen über die ganze Breite oben.

Melde dich mit der zurückgegebenen Funktion ab, wenn du das Spiel abbaust.

Ausrichtung und Bildschirmformate

Deklariere in der catalogue.json, wo das Spiel funktioniert: surfaceTargets listet desktop, mobileLandscape und mobilePortrait auf, und primarySurface nennt das Format, für das das Spiel gestaltet ist. Aktiviere nur, was du getestet hast. Ein Hochformat-Spiel auf einem breiten Bildschirm sollte ihn trotzdem mit einem stimmigen Hintergrund füllen statt mit schwarzen Balken, und ein Sofortspiel muss für das Hochformat gemacht sein.

Eingabe auf Touchscreens

Mach die Bedienelemente angenehm für Daumen: mindestens 44 CSS-Pixel groß, weg von den reservierten Ecken und von den Bildschirmrändern, an denen Systemgesten beginnen. Verwende Pointer-Events, rufe bei Spiel-Berührungen preventDefault() auf und unterstütze auf dem Computer Tastatur und Maus. Controller werden unter lokale Partys und Controller behandelt.

Verwandte Anleitungen

  • Laden, Pause und AudioPlayDrop-SDK initialisieren, beim ersten spielbaren Frame „bereit“ melden, sauber pausieren, der Audiorichtlinie folgen, Dateien für Apps und offline vorladen.
  • Lokale Partys und ControllerPhysische Gamepads und PlayDrop-Handy-Controller über sdk.device lesen, lokale Spielerplätze verfolgen, Controller-Unterstützung und Partygrößen deklarieren.
  • Client-SDKReferenz zum PlayDrop-Browser-SDK: init, Lebenszyklus, Spieler und Spielstände, Geräte, Soziales, Multiplayer, Shop, Werbung, Bestenlisten, Erfolge, Assets, KI.
ZurückSpiel-Lebenszyklus auf PlayDrop: Laden, Bereit, Pause und AudioWeiterCloud-Spielstände für PlayDrop-Spiele
Markdown anzeigen
EnglishFrançaisDeutsch日本語한국어EspañolPortuguês (Brasil)Bahasa Indonesia繁體中文简体中文ItalianoPolskiNederlandsSvenskaNorsk bokmålSuomiTürkçeไทยTiếng Việtالعربية

Auf dieser Seite

Den Anzeigebereich füllenDas HUD frei haltenAusrichtung und BildschirmformateEingabe auf Touchscreens
Markdown anzeigen