Ich habe folgendes Problem: Wenn ich mein Programm starte verbraucht es immer mehr arbeitspeicher bis es irgendwann abstürzt. Dabei mach ich eigendlich nichts besonderes:
Code:
        While device.Run
            With device.VideoDriver
                .BeginScene(True, True, Color.Blue)
                .Draw2DImage(TestTexture, New Position2D(0, 0), True)
                Draw(TestTexture, device.CursorControl.Position, SpriteMaterial.Alpha)
                device.GUIEnvironment.BuiltInFont.Draw(.FPS, New Position2D(10, 20), Color.White, False, False)
                .EndScene()
            End With
        End While
Hier der code der Draw() funktion:
Code:
    Private _driver As VideoDriver
    Sub Draw(ByVal tex As Texture, ByVal pos As Position2D, Optional ByVal mat As SpriteMaterial = SpriteMaterial.Alpha)
        Dim Mat2D As New Material
        With Mat2D
            .Lighting = False
            .BackfaceCulling = False
            .BilinearFilter = False
            .Texture1 = tex
            .MaterialType = mat
        End With
        _driver.SetMaterial(Mat2D)
        Dim _m As New Matrix4
        _m.MakeIdentity()
        _m.Translation = New Vector3D(pos.X, pos.Y, 0)
        _driver.SetTransform(TransformationState.World, _m)
        Dim vertices(0 To 3) As Vertex3D
        vertices(0) = New Vertex3D(New Vector3D(0, 0, 0), New Vector3D, Color.White, New Vector2D(0, 0))
        vertices(1) = New Vertex3D(New Vector3D(tex.OriginalSize.Width, 0, 0), New Vector3D, Color.White, New Vector2D(1, 0))
        vertices(2) = New Vertex3D(New Vector3D(tex.OriginalSize.Width, tex.OriginalSize.Height, 0), New Vector3D, Color.White, New Vector2D(1, 1))
        vertices(3) = New Vertex3D(New Vector3D(0, tex.OriginalSize.Height, 0), New Vector3D, Color.White, New Vector2D(0, 1))
        Dim indices() As UShort = {0, 1, 3, 1, 2, 3}
        device.VideoDriver.DrawIndexedTriangleList(vertices, 4, indices, 2)
    End Sub