Saya telah mengembangkan mesin gim, dan telah menemukan dan membaca tentang teknologi gim seperti penyaringan anisotropik, oklusi ambien, anti-aliasing, dll.
Biasanya dalam gim, Anda dapat menghidupkan dan mematikan pengaturan ini. Namun, jika pengaturan ini hanya menambahkan apa-apa selain positif, apakah ada alasan untuk menambahkan nilai toggle untuk ini dalam mesin game untuk pengembang?
Saya mengerti bahwa kinerja adalah faktor utama, tetapi apakah ada alasan lain mengapa pengaturan ini selalu tersedia untuk berubah?
graphics-programming
scalability
Java Man Tea Man
sumber
sumber
Jawaban:
Kinerja umumnya merupakan alasan utama fitur-fitur ini dapat dinyalakan dan dimatikan oleh pengguna. Umumnya, mereka mahal, dan dengan memungkinkan pengguna untuk mematikan mereka dari pengembang memperluas set mesin yang secara efektif menjalankan permainan untuk memasukkan lebih banyak mesin kelas bawah. Ini diterjemahkan menjadi berpotensi lebih banyak pemain, dan karenanya berpotensi lebih banyak penjualan (dengan asumsi para pemain dapat hidup dengan penurunan kesetiaan visual).
Fitur-fitur canggih ini mungkin juga menimbulkan lebih banyak daya tahan baterai atau output kipas, seperti yang ditunjukkan oleh @ Artelius, dan karenanya pengguna mungkin ingin menonaktifkannya karena alasan itu.
Akhirnya, itu hanya untuk memberi pengguna pilihan tentang apa yang mereka sukai. Beberapa orang mungkin tidak suka bagaimana tampilan anti-aliasing, atau bagaimana menonaktifkan v-sync dapat menyebabkan layar sobek. Atau untuk contoh yang lebih praktis, pertimbangkan Pillars of Eternity, yang memiliki opsi untuk mengaktifkan atau menonaktifkan ligatur font. Ini mungkin tidak memerlukan biaya banyak dalam hal kinerja runtime, tetapi beberapa pengguna mungkin menemukan teks lebih sulit untuk dibaca bersama mereka. Atau (seperti yang ditunjukkan @SeanMiddleditch), orang mungkin ingin menonaktifkan fitur karena buggy pada mesin individual. Atau orang mungkin ingin menonaktifkan fitur untuk mendapatkan keunggulan kompetitif (seperti dengan menonaktifkan efek visual berisik yang mengalihkan perhatian dari mekanik).
sumber
Seperti yang sudah ditunjukkan Josh Petrie, perhatian paling penting adalah kinerja. Anda tidak hanya tidak dapat mengetahui seberapa kuat perangkat keras pengguna akhir, ketika Anda membuat mesin, Anda bahkan tidak tahu bagaimana orang akan menggunakannya. Mungkin para pengembang game ingin membuat game yang menempatkan begitu banyak poligon di layar sehingga perangkat keras terbaik sekalipun tidak dapat mengubahnya secara real-time tanpa mematikan efeknya? Tetapi menangani itu secara otomatis mungkin juga bukan ide yang baik: Mungkin para pengembang ingin memutuskan efek mana yang harus dinonaktifkan pada objek mana.
Tapi selain kinerja, itu juga bisa menjadi perhatian estetika.
Misalnya, beralih dari pemfilteran anisotropik ke interpolasi tetangga terdekat dan menggunakan tekstur resolusi rendah atau sprite yang ditingkatkan mengarah ke tampilan pixel-art nostalgia. Contoh populer gim yang melakukan ini adalah Minecraft. Dan tentu saja banyak gim yang meniru estetika. Bukan karena mereka tidak tahu bagaimana melakukan yang lebih baik, tetapi karena mereka tidak mau.
sumber
Tentu saja kinerjanya. Beberapa efek seperti Crepuscular Rays, Depth of Field dan Bloom sangat membebani fps, khususnya di GPU yang lebih tua. Juga cara yang baik untuk mendapatkan beberapa fps tambahan adalah dengan mengurangi atau menonaktifkan pantulan dan bayangan. Juga - untuk mengulangi poin Artelius - efek visual juga akan mencapai usia baterai.
Selain itu:
Modded Minecraft benar-benar taman bermain yang bagus untuk ini. Minecraft menghasilkan bongkahan utuh, sehingga jumlah poligonnya lebih besar dari yang terlihat. Selain itu, komplikasi membuang potongan pada sampah yang dikumpulkan dan tanpa bahasa penunjuk seperti Java [1], dan Anda mungkin mengharapkan beberapa masalah kinerja - khususnya, di perangkat keras yang lama, seperti biasa. Beberapa orang menuntut grafis yang lebih baik, sementara yang lain menginginkan kinerja yang lebih baik. Maka, mod seperti GLSL Shaders Mod dan Optifine muncul, keduanya menambahkan opsi grafik tambahan - meskipun untuk tujuan yang berbeda - mereka kompatibel [2], jika Anda memiliki kesempatan untuk menggunakannya, Anda dapat mencoba efek kinerja dari efek visual.
[1]: Microsoft telah membuat porta C ++ Minecraft untuk Windows 10 - berdasarkan edisi saku - kinerjanya jauh lebih baik daripada versi Java yang lebih lama. Itu tidak berarti Java tidak dapat melakukan, ini bukan hanya gejala menjadi C ++ tetapi juga menjadi Microsoft.
[2]: Faktanya, mod-mod tersebut digabung untuk Minecraft 1.8.9 - Modif yang diserap GLSL Shaders Mod .
Dan Anda mengatakan sedang mengembangkan mesin gim , sehingga Anda berharap kode Anda memiliki peluang untuk digunakan kembali untuk banyak gim yang berbeda. Merupakan ide bagus untuk mengizinkan pengembang game untuk memutuskan apakah mereka ingin menggunakan efek ini, dan apakah mereka ingin memberikan opsi untuk menonaktifkannya atau tidak. Tidak semua efek masuk akal untuk semua game, dan beberapa game mungkin tergantung pada beberapa efek.
Pertimbangkan bahwa beberapa permainan akan menggunakan efek ini untuk mengatur suasana hati, untuk menyampaikan informasi kepada pemain, atau hanya untuk lisensi artistik.
Secara khusus ada tred menggunakan efek visual untuk mencoba membuat tampilan seolah-olah dilihat oleh kamera, bukan mata manusia. Ini dicoba dengan menggunakan efek seperti Aberasi Chromatic, Lens Flare, Film grain dan efek "Cinematic" lainnya. Ini tidak cocok untuk setiap game, jadi mereka tidak boleh dipaksakan oleh mesin game.
Bisa dibilang sebagian besar ini - jika tidak semua - dilakukan di shader, biarkan mesin game Anda memungkinkan pengembang untuk mengunggah shader mereka.
Catatan tentang Opsi Aksesibilitas: Banyak video game yang mengabaikan orang tuli. Memberikan informasi hanya dengan cara pendengaran mungkin tidak cukup baik. Menambahkan efek visual untuk merefleksikan hal-hal seperti arah tembakan yang masuk atau kehadiran musuh terdekat (yang Anda "bisa dengar") adalah ide yang bagus [3]. Dan tentu saja, tutup keterangan. Perlu diketahui juga bahwa ada orang buta warna ... barang-barang yang hanya dibedakan berdasarkan warna ... ya, dianggap desain ulang.
[3]: Anda tidak tahu betapa menyakitkannya creepers di Minecraft, ketika Anda tidak dapat mendengar bahkan desisan. Mereka menjadi instadeath acak.
Semakin banyak yang Anda tahu ★
sumber
Sesuatu yang belum disebutkan oleh orang lain:
Menonaktifkan fitur grafik mungkin merupakan solusi yang valid untuk masalah dengan pengaturan tertentu , tidak terkait dengan kinerja.
Hanya satu contoh, beberapa opsi grafik tidak bekerja dengan benar dengan mesin rendering yang diberikan ketika menjalankan permainan Windows pada Wine (lapisan kompatibilitas Windows untuk Linux).
Untuk gim tertentu (yang tidak disebutkan namanya), saya perlu mengatur penyaringan ke trilinear, dan menonaktifkan pantulan. Bukan karena rig saya tidak sesuai dengan itu (tentu saja), tetapi karena memberikan gangguan dan crash jika saya tidak melakukannya.
Di gim lain, Anda harus menonaktifkan efek "kabut" untuk rig yang menjalankan kartu nVidia (bahkan pada Windows asli), karena mereka selalu membuat kabut 100% buram.
Sesuatu yang sudah disebutkan dalam jawaban lainnya / komentar, tapi sebenarnya alasan tidak untuk membuat pengaturan tertentu (seperti kepadatan dedaunan, GRAS) opsional:
Visibilitas lawan dalam permainan kompetitif.
Jika pemain bisa mendapatkan keunggulan kompetitif dengan mengatur "tampilan" permainan Anda menjadi "sangat buruk", Anda menyakiti pengalaman permainan dengan dua cara:
Hindari itu jika memungkinkan. Buat gras dan dedaunan terlihat kikuk untuk rig berkinerja rendah, tetapi pastikan pengaturan yang lebih rendah tidak memberikan keuntungan gameplay.
sumber
Kejelasan tampilan dalam game kompetitif
Pemain dalam permainan online yang kompetitif mungkin lebih suka tampilan yang lebih sederhana atau lebih jelas daripada tampilan yang lebih indah bahkan jika kinerjanya tidak menjadi perhatian - banyak opsi visual menambahkan realisme visual tetapi mengaburkan hal-hal yang ingin dilihat oleh pemain.
Mungkin dengan mudah bahwa dalam gim Anda lebih mudah untuk memperhatikan atau menargetkan musuh jika Anda mengonfigurasi gim klien untuk menonaktifkan semua jenis rumput atau dedaunan tambahan, efek khusus, asap / kabut / api, dll. Ini menempatkan pemain yang mengaktifkan efek pada posisi yang kurang menguntungkan.
sumber
Jawaban lainnya baik, tetapi saya pikir mereka tidak memiliki contoh efek aktual yang baik yang mungkin ingin Anda matikan.
Bagi saya, "blur" yang benar-benar murah dan mengerikan yang dimiliki GTA3, misalnya, membuat permainan semakin buruk. Untungnya saya bisa mematikannya.
Belum memainkannya, tetapi apa yang saya lihat dari GTA5 adalah solusi lain yang cukup aneh yang akan saya nonaktifkan jika saya pernah mencoba GTA5. (lihat https://www.youtube.com/watch?v=VjIhl8hbO18 )
sumber