VB.Net阻止人们想用它作为开发游戏的语言有哪些很大的局限性?
更高级语言的速度通常使他们脱离"严肃"的游戏开发,其中C和C++占据着至高无上的地位.然而,越来越多的游戏将游戏逻辑暴露给像Lua和Python这样的脚本语言.
我听说过在VB中开发的独立游戏,例如Zombie Smashers系列是由James Silva在VB中开发的,他最近在C#.net上玩过Dishwasher Dead Samurai游戏.
您可能想要了解微软推出的Xbox Live Arcade框架(XNA).您可以在VB或C#中使用它.
游戏程序员花了很长时间甚至接受C++而不是因为它"慢".我相信多核时代很快就会导致这种情况慢慢消退,因为并行运行比尽可能快地运行单个线程要重要得多.
还要记住,现在GPU上使用像素/顶点/几何着色器进行了大量处理.所以我们看到一些相当高级的游戏都是用可能被认为是"慢"的语言编写的.
最后,.NET并不慢.令游戏开发imo麻烦的是垃圾收集器的不可预测性(GC在巨大的boss战中踢出并导致滞后 - 不太好),以及在C#和本机代码之间发生的任何编组.
幸运的是,深入了解.NET的工作原理,包括GC和运行时 - 这些障碍都可以克服.
如果有的话,强烈建议用托管语言对游戏进行原型设计,无论是VB.NET,C#,python,ruby等......然后如果发现它太慢,你可以把它的一部分移植到C++.
.NET已经管理了C++,它使本机代码和托管代码之间的互操作相当无缝.这允许在必要时本地编写那些真正关键的部分.但我怀疑是这种情况.最重要的优化最初将来自数据结构,算法和整体架构.