c#与C++在游戏开发领域谁将成为新的霸主

owlbomber 2004-07-28 04:10:32
1.结合DRIECT
2.结合OPENGL
...全文
575 43 打赏 收藏 转发到动态 举报
写回复
用AI写文章
43 条回复
切换为时间正序
请发表友善的回复…
发表回复
mgphuang 2004-08-05
  • 打赏
  • 举报
回复 1
python是一门很美丽的语言,我接触不久。主要用来写测试脚本。我看到他的例子里有一个游戏的例子,很不错,尽管只是向征意义上的游戏,但能做到那样已经很不很容易了。最值得称道的是他的代码码量是那么少。
熊主任 2004-08-05
  • 打赏
  • 举报
回复
刚才楼上说到python的问题,在游戏开发中python主要用来做AI脚本语言,在游戏运行时AI的计算并不是特别大的开销,虽然和直接用C语言写代码比有2到10倍的速度差距,但这不是致命的。对于PS2和GC这类主机来说,3D才是开销的大头。关系到指令优化,内存管理等,这些方面正是C/C++语言所擅长的。即使硬件以后发展了,但是开发人员的需求会发展的更快,所以效率还是一个致命的问题。
二毛豆打OI 2004-08-04
  • 打赏
  • 举报
回复
讨论以后谁是霸主没必要,因为变数太多,

但现在很多热门游戏都是C/C++写的
xiangding 2004-08-04
  • 打赏
  • 举报
回复
up,关注
EndDuke 2004-08-03
  • 打赏
  • 举报
回复
to mgphuang(tony):
任何语言都是一把双刃刀,在效率和强度上找到不同的平衡点,据目前的情况看,没有哪个语言可以即比其他语言高效率,强度又可以超过其他语言的。C#的确好用,但依然有多领域C#无法涉及,不橡是C++一样。好的移植性,代表着远离硬件,不是么?C#/Java应该放到差不多的地方,他们还是比较相近的。C++和C#做的工作差别还是很大的。另外游戏而言,我还是喜欢C++的,我没有觉得做游戏来说C++会麻烦。但是如果写一个Win的程序,或者网页,我当然首先考虑C#或者VB。
mgphuang 2004-08-03
  • 打赏
  • 举报
回复
不过看到这一帖我还是比较兴奋的,至少还没哪个兄弟来一句:又来讨论语言的区别,真是无聊。
不知道从何时起,讨论语言的差别已经成了一种可笑的事情。只要在CSDN上混了两天的人,都敢对这种讨论嗤之以鼻,尽管他还未必知道这两门语言的选择分支如何写。尽管大多数时候,这种讨论往往会偏向于自己使用的那一种语言,那是因为你对他的了解比其它的要多一些。而绝不是一个对语言没有任何了解的人能列举得出来的。
mgphuang 2004-08-03
  • 打赏
  • 举报
回复
EndDuke(游戏狂徒)兄:
你偏解了我的意思.
这是我的第一贴.
//霸主这个词就不对,从来没有哪个语言可以称为霸主的.
//只是从目前的看来,C++在游戏开发上的优势还是不可动摇的.
//到至于C#能不能成为主流的游戏开发语言还不能确定,要看微软商业动作了.毕究.net平台是
//他们一手打造的.也许C#还没成为游戏开发的主流时,又有一个什么C$出来了.那个时候大
//家是不是又要争论C$和C#哪个会成为主流.

我之所以说上面的话是因为有些兄弟指鹿为马.偏袒任何一门语言都像丁春秋一样是可笑的。
但以某一语言不能进行某一操作为理由来诟病一个语言,不管他所列举的事实存在不存在,这样的做法显然都是不科学的。
mgphuang 2004-08-02
  • 打赏
  • 举报
回复
不是C#没有提供,而是你还没有掌握.从文件里读出结构在C#里只是以对象序例化的型式体现了.比强制指针的办法要优美得多.
对于内存的复制,在业界对他诟病已久,他本不应该是任何一门语言的一部分.他的操作完全可以用变量或结构的赋值取代.这样的做法会安全得多.在任意的结构方法中,内存拷贝操作是找不到归类的.
wu_chung_tang 2004-08-02
  • 打赏
  • 举报
回复
为什么非要直接转换数据呢? 你試試看握讀寫模型文件的話,讀取struct類型是最常見的,無法如此讀的話相當麻煩。.NET只能讀取為byte[],又不讓轉換成自定義的struct指針。
为什么一定要memcpy内存呢? 這個在圖形圖象編程用得就更多了,無須具體解釋了。剛才講的問題若讓用memcpy()複製內存的話問題也就解決了。

不是專家水平比我低,未能支援基於指針的內存複製等功能,而是.NET本身的managed機制限定的,所以他就定位在不適合做圖形圖像以及binary文件讀寫方面。
liefeng123 2004-08-01
  • 打赏
  • 举报
回复
同意楼上
mgphuang 2004-08-01
  • 打赏
  • 举报
回复
to EndDuke(游戏狂徒):
"C++无法超越C#的简洁。C#无法超越C++的强大。"
这句话我不太同意哦,现在就对C#进行一个定性的分析还为时太早,C#的每一个版本都会有很大的变更,这个语言现在还在成长期,不可定论.当初Java刚出来时也好称简单,可现在谁敢说Java简单,连Sun的专家都说复杂是一门语言成熟的标志.
to wu_chung_tang(雲遊僧)
"我想你們沒有用C#讀寫binary文件過,在.NET中無法將FileStream數據直接轉到任意結構的指針,又不提供memcpy()複製內存,偶不知道底層編程(不牽涉GUI的話)有何用C#/Java的必要。"
为什么非要直接转换数据呢?为什么一定要memcpy内存呢?我们自己草草写的这些操作,应该不会比那么多专家和学者为我定义好的安全稳定和高效吧.当然了,你不可能强求C#去写什么驱动(至少目前是这样),但这也不能成为C#不如汇编的理由.关于内存占用量之类的问题已经不是所有程序员都应该考虑的问题,作为在高层开发的程序员,更多的精力应该放在逻辑的组织上,而不应该纠缠于这些细节的问题.无论是精力还是水平都不会允许的.
wu_chung_tang 2004-08-01
  • 打赏
  • 举报
回复
我想你們沒有用C#讀寫binary文件過,在.NET中無法將FileStream數據直接轉到任意結構的指針,又不提供memcpy()複製內存,偶不知道底層編程(不牽涉GUI的話)有何用C#/Java的必要。這個不是追不追潮流的問題,是看哪一個實用,況且速度內存佔有量也是考量的因素。
owlbomber 2004-08-01
  • 打赏
  • 举报
回复
up
EndDuke 2004-07-31
  • 打赏
  • 举报
回复
其实我觉得国内的眼光应该投向不同的地方,在中国我们常常说自己的算法有多好,但是我们依然是市场的底层。除去管理这方面不说,我觉得国内常常是一头跑的现象很严重。要么全C++,要么全Java,要么全C#.其实这样并不好,我们不该讨论谁是霸主,谁不是。

我依然喜欢Basic,喜欢C。虽然我用C++编程,偶尔也看看C#的书。有空研究一下Python.
我记得我的老师曾经和我说过:“你学习的是程序的本质,但是不要忘记语言的潮流是什么。”

每种语言有每种语言的特点。C++无法超越C#的简洁。C#无法超越C++的强大。同样Python依然是是最方便,最快捷的。C#也不能比。

同僚们:我真诚地希望,大家能够各有所长。而不是在一个所谓“霸主”的地方相互争斗,就算是软件开发——这个世界也是很大的。当一个语言推崇的人多了,大家都会了,这个语言是霸主啦,你依然不是霸主。可能软件的“霸主”的人使用的是一个别人都不熟悉,却优点很鲜明的语言上。

中国的软件喜欢同一种语言,这不是团结。
EndDuke 2004-07-31
  • 打赏
  • 举报
回复
C$?呵呵~~~有意思阿
EndDuke 2004-07-31
  • 打赏
  • 举报
回复
各抒己见,不错不错。这样才有意思嘛
mgphuang 2004-07-31
  • 打赏
  • 举报
回复
霸主这个词就不对,从来没有哪个语言可以称为霸主的.
只是从目前的看来,C++在游戏开发上的优势还是不可动摇的.
到至于C#能不能成为主流的游戏开发语言还不能确定,要看微软商业动作了.毕究.net平台是他们一手打造的.也许C#还没成为游戏开发的主流时,又有一个什么C$出来了.那个时候大家是不是又要争论C$和C#哪个会成为主流.
allsword 2004-07-31
  • 打赏
  • 举报
回复
最关键的是,谁到底在将来能一统linux下的游戏编程,谁就是老大。
结果是不用说大家都晓得的。
owlbomber 2004-07-30
  • 打赏
  • 举报
回复
lyzcom说的很好,大家在一起谈谈,说说各自的看法,也是互相学习的一种方法。

能够对一些“不是问题的问题”有一个比较深的认识。

这样不好吗?
owlbomber 2004-07-30
  • 打赏
  • 举报
回复
up
加载更多回复(23)

8,304

社区成员

发帖
与我相关
我的任务
社区描述
游戏开发相关内容讨论专区
社区管理员
  • 游戏开发
  • 呆呆敲代码的小Y
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧