Onestamente la vedo dura.
Nel senso, ok per i titoli XNA, va bene anche DirectX, ma con la CPU PowerPC based come faranno?
Non darei per scontato che per i titoli XNA (intendo quelli indie, c'è un XNA anche per gli sviluppatori su licenza ma è molto diverso) sia più semplice: la 360 ha comunque bisogno di ottimizzazioni particolari che su PC fanno più male che bene (e viceversa).
No. Ci sono le estensioni per sviluppatori "su licenza", non è molto diverso, si tratta sempre di codice managed che viene distribuito come binario IL. Le ottimizzazioni particolari fanno bene anche su PC, e si tratta di riutilizzare oggetti invece di fare affidamento su memoria "infinita", swap di pagine su disco e garbage collector sempre attivi.
Credo che la soluzione sia anche nell'hardware: un core i5 con 4 thread è ormai molto più efficiente di una 360 (in cui non si possono comunque usare tutti e sei i thread in un gioco), in termini di forza bruta. La cosa più probabile è che ci sia un middleware più che permetta di far girare l'XNA full su PC, senza virtual machine o cose simili. Se non addirittura un software che faccia transcoding (come il tool NGen o simili per XNA Indie).
Il CLR di Microsoft fa transcoding preventivo (cioè alla prima chiamata di un metodo), che io sappia, al contrario della JVM di Oracle che fa JIT in base a profiling.
Su XBox puoi usare 6 thread hardware, non puoi farlo usando XNA (ne hai solo 4, credo 2 vengano usati dal runtime ma di preciso non so come).
L'XNA full gira già su PC, il passo da fare per MS sarebbe riallineare le eventuali differenze che ci sono tra un bundle per 360 e uno per Windows.
Molti giochi XNA-based sono nati prima su PC, e portati su 360 con acquisto di licenza da "99 euro".
Il core i5 sarà anche più prestante, ma l'OS della 360 *dovrebbe* essere single-process (in realtà, ne sono 100% sicuro sul kernel della prima Xbox, ma lì mi ci ero spinto col reverse engineering...), Windows invece...
Inoltre, tradurre da due linguaggi macchina diversi in maniera efficiente è abbastanza difficile, ed è il motivo per i quali i compilatori multi-piattaforma degni di tal nome hanno una fase che passa attraverso un "intermediate language", sulla quale fanno le varie ottimizzazioni ad alto livello, e poi da lì traducono in linguaggio macchina.
Oddio, c'è da dire che MS conoscerà bene la sua macchina. Spero...