Могу ли я вызвать функции c в рамках XNA?


10

Я хотел бы сделать игру 360 и просто подумал, смогу ли я повторно использовать какой-то существующий у меня C-код или мне нужно переписать все на C #. Любая помощь приветствуется.

Ответы:


12

Да и нет.

Официально единственное, что вы можете использовать на 360 с XNA - это C #. Вы не можете поставлять неуправляемые библиотеки DLL с приложением на xbox live, и если вы хотите написать свою игру на C, вам нужен комплект разработчика и контракт с Redmond, который невозможно получить.

Тем не менее, все, что вы можете скомпилировать в CIL, который будет работать на компактной платформе, будет в порядке. Если вы можете убедить свой код компилировать как управляемый c ++, вы сможете заставить его работать.

Обновление 2016

Времена изменились. Возьмите VC ++, свой XBONE и начните сходить с ума.

Или, что еще лучше - если вы действительно застряли на C #, который является довольно хорошим языком, - используйте Unity или одноигровую игру. Первый представляет собой законченный, действительно потрясающий движок и экосистему, а второй - идеальный, если вы хотите использовать свой собственный.


1
Кроме того, вы можете делать все, что захотите, от игры Windows XNA. Требование отсутствия неуправляемого кода - только XBOX (и WP7).
Nate

@Nate да, абсолютно правильно.
3Dave

-5

лучше использовать C #. потому что использование C # не вызовет неизвестных проблем.

однако, да, он может вызывать C-функции.


3
-1 потому что ты не уточнил ни одного из своих пунктов. «неизвестные проблемы»: что это? "может звонить [sic]": как?
Тетрад
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.