怎么用C#开发dvd游戏

老爹突然考验我让我写个游戏放在dvd里运行,求大神指点啊,C或者jiava的思路... 老爹突然考验我让我写个游戏放在dvd里运行,求大神指点啊,C或者jiava的思路 展开
 我来答
二区伊利丹联盟
2014-01-20 · TA获得超过997个赞
知道小有建树答主
回答量:99
采纳率:0%
帮助的人:78.2万
展开全部
DVD游戏?如果你说所谓的DVD游戏,就是以光盘为载体游戏机上运行的游戏的话,那确实有这么一说,运行平台是微软的XBOX游戏机,开发XBOX游戏以及所有xbox live支持的平台,比如说wp、windows游戏,都可以使用微软的xna框架。而如果是单纯的windows电脑游戏,C#也可以基于directX开发2d或3d游戏,不过没有引擎单靠directx提供的接口,你只能开发个简单的小游戏,复杂的不是说不可以,而是累死人,因为dx只是图形接口,不是游戏引擎,而绝大部分的游戏引擎则都是各类脚本+C/C++调用实现的,C#目前作为托管语言,唯一靠谱方便使用的可以称之为引擎的游戏框架,就是XNA。
而如果你所谓的DVD游戏是那种DVD机放个光盘然后玩的游戏,我确实也见过,比如说我小时候家里的新科DVD就能玩这种游戏,对于这种游戏C#、java这类托管语言你就别指望了,那些游戏和早先的红白机游戏以及后来的电视游戏一样,是基于厂家平台的,不同厂家,比如说任天堂、世嘉、索尼等等基于的环境都不一样,编写那样的游戏不是你习惯了vs、eclipse然后会个C#java拖个控件就完事儿了的。
话说你爹让你这么整要么是一个要求很高的程序员父亲,要么就是个不懂软件开发的人
追问
其实要求更高,是vcd可以运行的游戏,做的至少是2d的,查看了一些资料,光碟里完全都是解压自安装的游戏,求思路
追答
我家早先有一台新科VCD,是可以玩游戏的,游戏都是那种世嘉16位游戏,如果你说的游戏是这种形式,这些游戏不是你说的什么解压自安装,而是根本就不用安装,相当于是一个典型的针对特定平台的可直接运行的程序,16位世嘉游戏那顾名思义就是16位平台,至于为何能在vcd上运行这样的程序,我个人猜测是复制了相应的硬件或使用了特定平台的模拟器软件执行它们,比如说vcd里集成了跟世嘉16位机+卡带一样效果的硬件平台,那就可以直接运行相应的16位世嘉游戏,至于卡带和光盘的区别只是多了相应的寄存器,二者本身都是游戏程序的载体,所以完全可以把这部分寄存器用vcd上的替代,数据内容也就是游戏程序本身则刻录到光盘上,而之前说的模拟器本身也是个程序,当硬件平台不一致时执行在vcd上的相应硬件平台上,就像家用电脑本身是X86也就是32位平台上安装了一个模拟器程序就能玩魂斗罗1之类的8位fc游戏一样,游戏程序还是那个游戏程序,你不用管它是vcd游戏还是fc之类的卡带游戏,只需要根据你家的VCD支持的游戏类型选择不同的平台,比如说我家的那台VCD,很明显都是16位世嘉游戏,那编写这样的游戏就是参考世嘉的规范然后使用汇编来编写了,至于怎么让它运行在vcd上,那就要看你的VCD是怎么处理光盘数据的,我虽然没有深入研究过vcd上执行这些的方式,但从原理上看无非就是常见的引导方式,也就是说vcd在读取光盘后先读取一段用于引导的配置内容,至于这个配置内容怎么编写修改,那就是厂商说了算了,他们可以使用公共的引导规则,也可以自己制定规则,比如说在光盘上特定的区域要写入特定的配置,就像传统的dvd游戏安装盘其实就是相应的安装包程序写入光盘后加一个能让光驱识别的引导文件,有引导文件时机器就按照引导文件的定义使用指定的模块来执行内容本身,没引导文件时那它就是个只读不写的U盘,就像autorun.inf,只是在这里它叫什么或者里边的内容遵循怎样的解析标准那都是厂家说了算的,毕竟那游戏光盘也就它自己的VCD设备能用,不过就国产硬件厂商的尿性和技术水平而言,他们一般都会用国际上早已约定俗成的方式,毕竟省事省力省心还好使。
匿名用户
2014-01-19
展开全部
DVD游戏?那个可以吗?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式