PlayDrop logoPlayDrop Studio
BuatTukar mainHasilkanBelajarKonektorAsetKomunitasBantuan
PlayDrop logoPlayDrop Studio
BuatTukar mainHasilkanBelajarKonektorAsetKomunitasBantuan
Masuk
Layar penuh dan area aman
Dokumentasi

Mulai di sini

RingkasanGame pertamamuGame PlayDropFAQ

Buat dengan Cloud

Pembuatan CloudPaket & generasi

Hubungkan aplikasi AI Anda

Semua konektorClaudeChatGPTClaude CodeCodexCursorGeminiAntigravityGrok BuildGrok BotGrok ChatLovableReplit

Terbitkan dan bagikan

Terbitkan dari aplikasi AI AndaGame HTML sederhanaPengemasan dan .playTerbitkan dan imporBerkas gameVisibilitas dan jangkauanGambar dan video listinganGenre dan tagLokalisasiGame Instan

Pengalaman bermain

Pemuatan, jeda, dan audioLayar penuh dan area amanSimpanan cloudGrup lokal dan pengontrol

Bermain bersama

Berbagi, teman, dan undanganPapan peringkatPencapaianGrup online dan suaraServer game realtime

Penghasilan

MonetisasiKredit & hadiah

Aset

Aset gamePembuatan aset AIFormat kustom dan kreasi pemain

Referensi

SDK klienSDK servercatalogue.jsonKesalahan dan pemulihanPemecahan masalah
DokumentasiLayar penuh dan area aman
Pengalaman bermain

Layar penuh, area aman, dan sudut HUD untuk game PlayDrop

Buat game PlayDrop memenuhi layar, jaga HUD di dalam area aman CSS dan jauh dari kontrol host dengan memakai reservedCorners yang diukur SDK.

PlayDrop memberi game Anda seluruh layar: halaman game di situs web memiliki kontrol layar penuh sendiri, dan aplikasi memainkan game dalam layar penuh. Di ponsel, PlayDrop menempatkan kontrol Jeda dan Audio kecil (serta kontrol suara saat ada grup) di sudut atas game. SDK memberi tahu Anda letak persisnya, sehingga HUD bisa tetap menjauh darinya tanpa membuang ruang.

Penuhi viewport

Tampilkan game dari tepi ke tepi dan cegah halaman bergulir, diperbesar, atau teksnya terpilih:

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>

Tentukan ukuran canvas dari ukuran tampilannya dikali devicePixelRatio, dan gambar ulang saat resize; ukuran jendela berubah di desktop, tablet, perangkat lipat, dan saat ponsel diputar. Gambar latar dan area permainan boleh mengisi seluruh layar, termasuk di bawah notch dan kontrol host. Hanya elemen HUD yang interaktif dan perlu dibaca yang harus menghindarinya. Anda tidak memerlukan tombol layar penuh sendiri.

Jaga HUD tetap bebas

Ada dua hal yang bisa menutupi tepi layar:

  • Area aman perangkat keras, seperti notch atau indikator beranda, dari CSS env(safe-area-inset-top|right|bottom|left).
  • Kontrol host, dari sdk.host.reservedCorners: { topLeft: { width, height }, topRight: { width, height } }, dalam piksel CSS yang diukur dari sudut kiri atas dan kanan atas viewport game.

Hindari gabungan keduanya, jangan pernah jumlah keduanya. Elemen HUD di kiri atas bisa berada di bawah persegi panjang sudut atau di sampingnya; apa pun pilihannya, gunakan jarak bebas yang lebih besar dari masing-masing:

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)); }
  • Lebar dan tinggi nol berarti tidak ada yang menutupi sudut itu, misalnya di situs web desktop, tempat kontrol berada di luar game.
  • null berarti host lama yang tidak melaporkan sudut: pertahankan tata letak Anda yang sudah ada dengan area aman.
  • Nilainya berasal dari kontrol yang benar-benar ada di layar, seperti target sentuh minimal 44 poin di ponsel, dan berubah saat layar diputar, diubah ukurannya, dan saat ada grup. Bacalah nilainya; jangan pernah menetapkan ukuran secara tetap atau menyisihkan pita atas selebar layar.

Berhenti berlangganan dengan fungsi yang dikembalikan saat Anda menghentikan game.

Orientasi dan permukaan

Deklarasikan di mana game berfungsi di catalogue.json: surfaceTargets mencantumkan desktop, mobileLandscape, dan mobilePortrait, dan primarySurface menyebutkan permukaan yang menjadi rancangan game. Aktifkan hanya yang sudah Anda uji. Game potret yang ditampilkan di layar lebar tetap harus memenuhinya dengan latar yang serasi alih-alih bilah hitam, dan game Instan harus mengutamakan potret.

Input di layar sentuh

Buat kontrol nyaman untuk ibu jari: minimal 44 piksel CSS, jauh dari sudut yang disisihkan dan dari tepi layar tempat gestur sistem dimulai. Gunakan pointer event, panggil preventDefault() pada sentuhan game, dan dukung keyboard serta mouse di desktop. Pengontrol dibahas di grup lokal dan pengontrol.

Panduan terkait

  • Pemuatan, jeda, dan audioInisialisasi SDK PlayDrop, beri sinyal siap di frame pertama, jeda dan lanjutkan dengan rapi, ikuti kebijakan audio host, dan pramuat berkas untuk main offline.
  • Grup lokal dan pengontrolBaca gamepad fisik dan pengontrol ponsel PlayDrop lewat sdk.device, ikuti slot pemain lokal, serta deklarasikan dukungan pengontrol dan ukuran grup lokal.
  • SDK klienReferensi SDK browser: init, siklus hidup host, identitas, simpanan, perangkat, sosial, multiplayer, toko, iklan, papan peringkat, pencapaian, aset, dan AI.
SebelumnyaSiklus hidup game di PlayDrop: pemuatan, siap, jeda, dan audioBerikutnyaSimpanan cloud untuk game PlayDrop
Lihat Markdown
EnglishFrançaisDeutsch日本語한국어EspañolPortuguês (Brasil)Bahasa Indonesia繁體中文简体中文ItalianoPolskiNederlandsSvenskaNorsk bokmålSuomiTürkçeไทยTiếng Việtالعربية

Di halaman ini

Penuhi viewportJaga HUD tetap bebasOrientasi dan permukaanInput di layar sentuh
Lihat Markdown