Apakah "Proyek XBox 360" XNA juga berfungsi di Windows?

12

Saya mengerti bahwa proyek XNA untuk XBox 360 akan menggunakan versi khusus dari .NET Compact Framework. Tapi katakanlah saya ingin merilis untuk XBox 360 dan Windows.

Apakah versi XBox (menggunakan kerangka kerja kompak) masih berfungsi jika didistribusikan untuk Windows, atau apakah saya perlu membangun kembali terhadap kerangka kerja biasa (atau CF non-Xbox) untuk didistribusikan?

CodexArcanum
sumber

Jawaban:

15

Ya, platform yang berbeda menjalankan runtime .net yang berbeda.

Cara ini bekerja di xna 3 / 3.1 / 4 adalah Anda membuat proyek game Anda untuk satu platform (katakanlah, buat proyek game Windows Xna baru di visual studio). Dalam 'penjelajah solusi' studio visual, klik kanan proyek dan kemudian pilih 'buat salinan proyek untuk X', di mana x adalah platform yang Anda inginkan untuk ditargetkan oleh proyek baru. Cukup banyak yang ada di sana. buat salinan proyek

Kedua proyek ini tetap selaras, apa pun yang Anda tambahkan ke satu akan muncul di yang lain. Gunakan #jika WINDOWS atau #jika XBOX atau #jika WINDOWS_PHONE memblokir untuk menambahkan kode yang spesifik untuk satu platform.

Cubed2D
sumber
Ahh, itu sebabnya proyek sampel memiliki "Copy X" di dalamnya. Saya berasumsi mereka hanya salinan manual, saya tidak menyadari XNA + VS otomatis itu. Sangat berguna! Dan gambar menunjukkan di mana opsi sangat baik. Kedengarannya akan lebih baik untuk memulai dengan proyek XBox lalu dan melakukan salinan Windows jika saya berencana untuk merilis keduanya dari awal.
CodexArcanum
Personaly id selalu dimulai dari proyek windows, lebih mudah untuk debug di windows dan Anda mendapatkan alat seperti perf hud dan pix. Tidak masalah ke arah mana Anda melakukannya, tetapi melakukan hal semacam itu memperkuat gagasan tentang platform pengembang utama, tetapi uji awal dan sering pada 360.
Cubed2D
3

Anda perlu membangun kembali untuk Windows. Ada alat untuk mengotomatiskan proses konversi proyek studio visual. Karena Anda mulai pada 360 dan kerangka kerja kompak Anda sebagian besar harus baik-baik saja. Dengan cara lain Anda bisa mengalami masalah di mana Anda menggunakan .Net framework fitur yang tidak didukung oleh framework kompak.

Dokumen berisi bagian tentang perbedaan di antara keduanya (misalnya, Anda tidak dapat mengatur afinitas prosesor pada Windows). Jika Anda benar-benar merilis game di PC, Anda mungkin mengalami masalah kompatibilitas. Misalnya, format buffer render Anda mungkin tidak didukung, atau shader Anda mungkin tidak dapat dikompilasi. Ini adalah kutukan dari pengembangan PC dan tidak spesifik untuk XNA.

Chris Howe
sumber
Senang mengetahui bahwa saya mungkin mengalami masalah shader atau buffer pada PC juga. Saya berasumsi bahwa XNA menyembunyikan sebagian besar detail kecil itu tapi saya kira beberapa masih lolos.
CodexArcanum
Ya, perangkat keras PC sangat bervariasi. Tetapi saya telah menemukan bahwa xbox lebih sulit untuk diperhitungkan daripada fitur-fitur perangkat keras grafis arus utama modern. Itu standar yang longgar, saya tahu :)
Seth Battin