Rumah >Peranti teknologi >industri IT >Revolusi Retro: Membina Klon Pong dalam Perpaduan

Revolusi Retro: Membina Klon Pong dalam Perpaduan

Joseph Gordon-Levitt
Joseph Gordon-Levittasal
2025-02-19 09:01:10403semak imbas

tutorial klon pong perpaduan: Membina permainan klasik langkah demi langkah

Sebelum anda memulakan, anda boleh melihat permainan di gatal.io

Retro Revolution: Building a Pong Clone in Unity

mata teras

    Membina klon pong dalam perpaduan termasuk beberapa langkah utama, termasuk menubuhkan persekitaran permainan, menambah input pemain, menguruskan bola dan perlanggaran sempadan, melaksanakan musuh AI, menjana bola, dan menambah arahan teks asas.
  • Tetapan persekitaran permainan termasuk membuat projek 2D baru dalam Perpaduan, menetapkan nisbah aspek skrin permainan hingga 4: 3, dan membuat folder untuk skrip, sprite, prefabs, dan bahan. Anda perlu memuat turun sprite dan menambahkannya ke folder Sprite dan menyesuaikan unit setiap piksel untuk memastikan penampilan yang jelas dan bersih.
  • Input pemain ditambah melalui skrip C# yang dipanggil "PlayerController", yang menetapkan kelajuan pemain dan pelbagai pergerakan pemain. Tambah Box Collider 2D ke pemain GameObject untuk mengendalikan perlanggaran.
  • Bola dan perlanggaran sempadan diuruskan dengan membuat bahan Physics2D yang dipanggil "Bounce", dengan keanjalan ditetapkan kepada 1 dan geseran ditetapkan kepada 0. Tambah Circle Collider 2D dan Rigidbody 2D ke objek permainan bola untuk menguruskan interaksi dengan persekitaran.
  • Enemy AI dilaksanakan melalui skrip C# yang dipanggil "Enemycontroller", yang menetapkan kelajuan musuh dan menguruskan pergerakan sebagai tindak balas kepada kedudukan bola. Skop musuh juga ditetapkan dalam skrip ini.
  • Generasi bola dilakukan dengan membuat objek permainan "Ballspawner" dan skrip C# yang dipanggil "BallspawnerController". Skrip ini memeriksa kehadiran bola dan, jika tidak, mencipta bola baru.

analisis permainan pong

Pong adalah salah satu permainan video terawal dan permainan komersil yang pertama berjaya. Apabila Pong pertama kali dicipta, kemungkinan besar pemaju mempunyai masa yang sukar dengan logik kod, tetapi pada masa kini, anda boleh membuat permainan Pong dua pemain yang mudah dengan panggilan kaedah, collider, dan sprite. Sebaik sahaja anda membuat keputusan untuk membuat permainan pemain pong tunggal, kesukaran membuat Pong akan meningkat. Dalam tutorial ini, kami akan membuat permainan asas Pong dan memecahkan alternatif AI yang sangat mudah yang masih menambah nilai permainan.

kita mesti bertanya, apakah elemen teras permainan pong? Berikut adalah senarai jawapan kepada soalan ini:

  1. Input Pemain - Kami mahu pemain dapat menggerakkan raket mereka ke atas dan ke bawah untuk membuat hit.
  2. perlanggaran bola - Apabila bola memukul raket atau sempadan, ia tidak dibenarkan kehilangan kelajuan.
  3. Perlanggaran Sempadan - Bola mesti dapat melantun dari bahagian atas dan bawah skrin supaya ia tidak meninggalkan kawasan permainan.
  4. Enemy AI - Jika musuh duduk di hujung skrin dan tidak bergerak, kebolehlaksanaan permainan hampir sifar.
  5. Menjana bola - Apabila bola memukul salah satu sempadan di belakang raket, kita memerlukannya untuk diperbaharui supaya kita dapat meneruskan permainan.
  6. Pengesanan Kawasan Perlanggaran Ball-to-Racquet-Ini membolehkan bola untuk melantun raket pada sudut yang unik supaya kita dapat lebih menuju bola ketika memukul raket dengannya.

Dengan senarai ini, kita boleh mula menulis program permainan.

Sila ambil perhatian bahawa mana -mana nombor yang berkaitan dengan kedudukan, putaran, zum, dan lain -lain objek permainan adalah relatif dan mungkin perlu diubah mengikut tetapan khusus anda.

Tetapkan permainan

Sekarang kita telah menganalisis prinsip asas Pong, kita boleh mula menubuhkan permainan. Buka perpaduan dan buat projek 2D baru. Setelah editor dibuka, tetapkan nisbah aspek skrin permainan ke 4: 3. Kami menggunakan 4: 3 kerana ini adalah salah satu nisbah skrin yang paling biasa dan merupakan salah satu yang paling dekat dengan nisbah standard. Dalam panel Sumber, buat empat folder yang dipanggil skrip, sprite, prefabs, dan bahan. Folder ini akan digunakan untuk menyelamatkan semua sumber permainan kami.

Retro Revolution: Building a Pong Clone in Unity

Muat turun imej yang diperlukan permainan dan tambahkannya ke folder "Sprite" (boleh dilakukan dengan seret dan drop). Imej yang kami tambahkan akan menjadi sprite (objek permainan interaktif) yang digunakan dalam permainan.

Retro Revolution: Building a Pong Clone in Unity Retro Revolution: Building a Pong Clone in Unity Retro Revolution: Building a Pong Clone in Unity

kita perlu menukar unit per-pixel sprite supaya mereka memenuhi piawaian. Saya biasanya menggunakan 64 piksel setiap unit piksel, kerana ini akan menjadikan kebanyakan sprite kelihatan jelas dan bersih dan menyimpan saiz relatif mereka. Anda boleh memikirkan unit per-pixel sebagai kepadatan piksel yang diperuntukkan dalam ruang 1 × 1 dalam editor Perpaduan.

mari kita tetapkan unit persegi setiap piksel hingga 64 dan unit bulatan per piksel hingga 128. Kita boleh terus menambah tiga imej ini ke panel hierarki.

Sekarang kita perlu menamakan setiap sumber dan menetapkan sifat dan label awal mereka. Anda boleh menamakan blok biru "pemain" dan menetapkan kedudukan X pemain kepada 6 dan nisbah X-scalingnya kepada 0.2.

kita perlu membuat tag untuk memisahkan objek permainan raket dari objek permainan yang lain. Secara umum, anda boleh memikirkan tag sebagai kategori objek permainan. Klik Untagged (di bawah nama pemain) dan pilih Tambah Tag. Buat tag baru yang dipanggil "Paddle", pilih Objek Permainan Pemain dan tetapkan tagnya ke Paddle.

Namakan blok merah "musuh". Tetapkan kedudukan X musuh ke -6 dan nisbah X -skalingnya kepada 0.2. Buat label Objek Permainan musuh.

Namakan lingkaran kelabu "bola" dan buat label baru yang dipanggil "Ball". Pastikan untuk menetapkan label objek bola ke bola.

(Langkah -langkah berikut hanya disediakan dengan gambaran keseluruhan langkah -langkah dan coretan kod utama kerana batasan ruang. Sila rujuk teks asal atau tambahnya secara terperinci)

Tambah Input Pemain

Buat skrip C# yang dipanggil "PlayerController" dan tambahkan kod berikut (mengawal pergerakan raket pemain):

<code class="language-csharp">public float speed = 10;
public float topBound = 4.5F;
public float bottomBound = -4.5F;

void FixedUpdate () {
    float movementSpeedY = speed * Input.GetAxis("Vertical") * Time.deltaTime;
    transform.Translate(0, movementSpeedY, 0);
    // ... (边界限制代码)
}</code>

perlanggaran bola

Buat bahan Physics2D yang dipanggil "Bounce", tetapkan keanjalannya kepada 1 dan geseran kepada 0. Tambah Circle Collider 2D dan Rigidbody 2D ke objek permainan bola dan tetapkan bahan itu kepada "Bounce".

Perlanggaran sempadan

Buat empat objek permainan kosong sebagai sempadan (leftbound, kanan, topbound, bottombound), tambah kotak collider 2D dan tetapkan sifatnya. Buat skrip yang dipanggil "BoundController" yang mengesan bola berlanggar dengan sempadan dan memusnahkan bola.

musuh ai

Buat skrip yang dipanggil "Enemycontroller" yang mengawal pergerakan raket musuh supaya ia mengikuti bola.

<code class="language-csharp">public float speed = 1.75F;
Transform ball;
Rigidbody2D ballRig2D;

void FixedUpdate () {
    ball = GameObject.FindGameObjectWithTag("Ball").transform;
    ballRig2D = ball.GetComponent<rigidbody2d>();
    // ... (根据球的位置移动敌人的代码)
}</rigidbody2d></code>

Menjana bola

Buat objek permainan kosong "Ballspawner" dan buat skrip yang dipanggil "BallspawnerController" untuk menjana semula bola apabila ia hilang.

Tambah teks asas

Buat objek teks UI untuk memaparkan keterangan permainan.

Kesimpulan

Anda kini telah berjaya mencipta klon pong pemain tunggal di Unity2D. Untuk amalan lebih lanjut, cuba memikirkan cara untuk memperbaiki permainan -contohnya, menambah pecutan ke bola (semakin mencecah bola, semakin cepat bola itu), menambah inersia ke raket, menambah tahap kesukaran dengan meningkatkan kelajuan Musuh, dan sebagainya.

(bahagian Soalan Lazim ditinggalkan di sini kerana panjang artikel. Teks asal telah memasukkan jawapan FAQ terperinci)

Atas ialah kandungan terperinci Revolusi Retro: Membina Klon Pong dalam Perpaduan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn