Apakah “salah” membangun game Unity sepenuhnya dengan elemen UI VS sprite?

8

Saya menemukan diri saya ikut proyek Unity dengan tim pemrograman yang di-outsourcing-kan. Game seluler kami memiliki sejumlah minigame dan mereka telah membuatnya seluruhnya dari elemen UI, atau gambar mentah hanya pada satu atau dua elemen kanvas. Sekarang, saya tahu istilah "salah" terbuka untuk ditafsirkan karena permainannya cukup sederhana dan berjalan dengan baik pada perangkat modern yang telah kami uji.

Namun sikap saya yang agak perfeksionis sering membuat saya khawatir tentang cara "melakukan praktek yang benar / terbaik" dan saya mengalami kesulitan melepaskan gagasan bahwa ini bukan cara terbaik untuk mengembangkan permainan. Saya melihat praktik terbaik Unity karena tidak memiliki terlalu banyak elemen dalam kanvas karena menggambar ulang kapan saja sesuatu berubah, sprite renderers dioptimalkan pemangkasan poligon sebagai lawan dari maks rect untuk terus overdraw, dll. Dan respon yang saya dapatkan dari tim pemrograman adalah, "kemampuan rasio layar elemen kanvas memudahkan untuk menangani rasio aspek yang berbeda, jadi itulah cara kami membangun game".

Saya tidak ingin ini menjadi pertanyaan "pribadi" yang tidak disukai, jadi apakah ada alasan yang lebih menarik untuk tidak membuat game seluler sederhana dengan cara ini? Atau apakah ini berfungsi pada perangkat yang ditargetkan dan tidak menyebabkan masalah mengapa tidak? Terima kasih sebelumnya atas balasan, Jaysin

Jaysin
sumber
2
Pertanyaan ini terlihat berdasarkan pendapat saya, tetapi saya akan menunggu & melihat bagaimana pengguna lain & mod memilih. Satu hal yang akan saya sebutkan adalah efisiensi sumber daya bukan hanya tentang kecepatan pemrosesan dan penggunaan memori. Seringkali sumber daya yang paling terbatas untuk sebuah game adalah waktu pengembang. Jadi jika menggunakan teknologi ini memungkinkan mitra Anda untuk beralih dengan cepat dan memberikan kualitas target tepat waktu di banyak perangkat target, itu saja mungkin cukup untuk membenarkan beberapa peningkatan overhead runtime.
DMGregory
Terima kasih atas umpan balik Anda, saya mencoba yang terbaik untuk mengatakannya dengan cara yang akan meminta praktik terbaik dunia nyata dan konsekuensi potensial yang tidak terduga menggunakan satu metode di atas yang lain. Jika tidak ada alasan teknis yang jelas untuk tidak melakukannya, maka itu membantu menunjukkan jawaban bahwa seseorang dapat menggunakan metode itu jika itu sesuai dengan kebutuhan mereka. Saya bertanya di sini, karena setelah berhari-hari mencari saya tidak dapat menemukan jawaban saat ini tentang masalah ini.
Jaysin

Jawaban:

4

Solusi perlu disesuaikan dengan kebutuhan Anda. Jika kebutuhan game (kinerja IE, responsif, kemudahan pengembangan, dll.) Dipenuhi dengan hanya menggunakan elemen UI, maka tidak ada masalah.

Satu hal yang harus dipertimbangkan adalah bahwa sistem ini berarti bahwa tim pengembangan Anda mungkin tidak tahu cara menggunakan kemampuan penuh Unity. Jika di masa depan UI tidak mencukupi, mungkin akan sulit untuk mengarahkan mereka ke aliran Persatuan yang lebih standar.

nihohit
sumber
Saya berpikir bahwa @Jaysin sedang mencari informasi tentang solusi mana yang merupakan "aliran Persatuan yang lebih standar".
Luke
3

Saya setuju dengan nihohit tentang ini. Sangat penting untuk mempertimbangkan ruang lingkup proyek. Mungkin lebih mudah / lebih cepat untuk menyelesaikan proyek dengan cara ini. Jika itu hanya jenis kecil permainan atau aplikasi, pergi dengan cara yang tidak dioptimalkan sering menghemat banyak waktu, yang kemudian menghemat uang. Jika tidak mungkin suatu proyek perlu dipertahankan selama bertahun-tahun atau perlu diperluas, mungkin masuk akal untuk mengikuti apa yang dulu dilakukan para pengembang, bahkan jika itu dianggap kurang sebagai praktik yang baik.

Ini tidak berarti bahwa pola pikir Anda harus diubah, karena, jika Anda memulai proyek dari awal, Anda harus benar-benar berpikir tentang cara Anda menerapkan sesuatu dan bagaimana membuatnya menjadi yang paling bersih. Tetapi, jika Anda dalam produksi dan terutama jika Anda bekerja dengan kode outsourcing, mungkin lebih baik menggunakan peretasan, yang tidak bersih, tetapi membutuhkan satu jam untuk mengimplementasikan daripada refactoring seluruh bagian kode untuk membuatnya bersih, yang mungkin memakan waktu seminggu dan biaya ribuan dolar.

iQew
sumber
1

Tidak ada yang salah dengan hanya menggunakan elemen kanvas

Tapi mungkin ada praktik buruk di sini (tapi bukan itu).

Draco tidak lagi percaya pada SE
sumber
1

Saya pikir satu-satunya pertanyaan yang harus Anda tanyakan dalam kasus ini adalah: "Apakah UI menyediakan semua fungsi yang saya butuhkan?"

Saya sudah menghadapi masalah yang sangat mirip, kecuali saya bekerja dengan UE4. Saya ingin membuat permainan puzzle di mana Anda memindahkan kunci-t dan mencoba untuk mengatur pin di posisi yang tepat. Awalnya saya pikir akan lebih mudah dan lebih cepat untuk menggunakan UI - tetapi ternyata sprite sudah memiliki banyak fitur yang harus saya implementasikan sendiri. Dalam kasus saya, jawaban itu adalah "Tidak, UI TIDAK menyediakan semua fitur yang saya butuhkan".

Sepertinya bagimu bukan itu masalahnya. Tetapi di masa depan, mungkin coba sprite hanya untuk melihat apakah itu lebih mudah bagi Anda dalam jangka panjang?

lilKriT
sumber