Я знаю, что для игр XNA не существует типа проекта VB.Net, но в качестве простого теста я создал VB-решение, которое ссылается на Microsoft.XNA.*
. В нем есть класс, который реализует Microsoft.XNA.Framework.Game
. Затем в C# Game1.cs
я просто удалил весь код и изменил его так, чтобы он наследовался от моего класса VB...
namespace MyGame {
public class Game1 : GameEngine.Engine {
}
}
Который наследуется...
Public Class Engine
Inherits Microsoft.Xna.Framework.Game
Protected Overrides Sub Update(GameTime As Microsoft.Xna.Framework.GameTime)
If GamePad.GetState(PlayerIndex.One).Buttons.Back = ButtonState.Pressed Then
Me.Exit()
End If
For Each Element In Elements
Element.Update(GameTime)
Next
MyBase.Update(GameTime)
End Sub
...
Кажется, это работает, и я смог загрузить контент, отрисовать модель, принять ввод геймпада и т.д....
Поэтому я спрашиваю... Действительно ли существует ограничение из-за некоторых продвинутых функций, не поддерживаемых в VB.Net, или это просто отсутствие шаблонов проектов/поддержки?
Есть ли какая-то оптимизация производительности при компиляции в MSIL, которую компилятор VB упускает?