code not quite working

Irrlicht.Net is no longer developed or supported, Irrlicht.Net Cross Platform is a much more complete wrapper. Please ask your C# related questions on their forums first.
Locked
Foobar

code not quite working

Post by Foobar »

it loads the textures, but nothing ever draws on the screen, I just see the command prompt...

Code: Select all

'Irrlicht Imports
Imports Irrlicht
Imports Irrlicht.GUI
Imports Irrlicht.Core
Imports Irrlicht.Video
Imports Irrlicht.Scene

'System Imports
Imports System.io
Imports System.Math

Module ModMain

    'local scope variables
    Dim dimension As New Dimension2D(1024, 768)
    Dim driverType As New driverType
    Dim node As ICameraSceneNode

    'public scope variables
    Public driver As IVideoDriver
    Public device As IrrlichtDevice = New IrrlichtDevice(driverType, dimension, 32, True, False, False, True, Nothing)

    Sub Main()
        Dim logFile As File
        Dim logWrite As StreamWriter

        'set the path for the pk3 files to the app path
        Dim irrlichtpath As String = Environment.CurrentDirectory.ToString

        'set type to dx9
        driverType = Video.DriverType.DIRECTX9

        Dim sw As StreamWriter = New StreamWriter("motoXlog.txt")

        sw.WriteLine(DateTime.Now.ToString)
        sw.WriteLine("Initializing Driver: " & driverType.ToString)

        'TODO: add more options for screen size and resolution in gui

        sw.WriteLine("Initializing Resolution: " & dimension.Width.ToString & _
            "," & dimension.Height.ToString)

        sw.Close()

        'set up the driver
        driver = device.VideoDriver()

        'device.EventReceiver = New MyEventReceiver

        node = device.SceneManager.AddCameraSceneNodeFPS(Nothing, 100.0!, 1200.0!, -1)
        node.Position = New Vector3D(3800.0!, 510.0!, 7400.0!)
        node.Target = New Vector3D(4794.0!, 686.0!, 5400.0!)
        node.FarValue = 12000.0!

        'load and add quake pak file
        device.FileSystem.AddZipFileArchive(irrlichtpath + "\map-20kdm2.pk3")

        Dim terrain As ITerrainSceneNode = device.SceneManager.AddTerrainSceneNode _
           ("media/terrain-heightmap.bmp", Nothing, 1010, New Vector3D(0, 0, 0), New Vector3D(40, 4.4F, 40), _
           New Color(0, 255, 255, 255))

        terrain.SetMaterialType(MaterialType.DETAIL_MAP)
        terrain.SetMaterialFlag(Irrlicht.Video.MaterialFlag.LIGHTING, False)
        terrain.SetMaterialTexture(0, device.VideoDriver.GetTexture("media\terrain-texture.jpg"))
        terrain.SetMaterialTexture(1, device.VideoDriver.GetTexture("media\detailmap3.jpg"))
        terrain.ScaleTexture(1.0!, 20.0!)

        device.SceneManager.AddSkyBoxSceneNode(device.VideoDriver.GetTexture _
            ("media/irrlicht2_up.jpg"), device.VideoDriver.GetTexture("media/irrlicht2_dn.jpg"), _
            device.VideoDriver.GetTexture("media/irrlicht2_lf.jpg"), device.VideoDriver.GetTexture _
            ("media/irrlicht2_rt.jpg"), device.VideoDriver.GetTexture("media/irrlicht2_ft.jpg"), _
            device.VideoDriver.GetTexture("media/irrlicht2_bk.jpg"), Nothing, -1)

        ' device control should be visible
        device.CursorControl.Visible = False

        Do While device.Run
            If Not device.WindowActive Then
                Exit Sub
            End If
            device.VideoDriver.BeginScene(True, True, New Color(255, 0, 0, 50))
            device.SceneManager.DrawAll()
            device.GUIEnvironment.DrawAll()
            device.VideoDriver.EndScene()
        Loop
    End Sub

End Module
Guest

Post by Guest »

got it, took a second, but I had a boolean value for antialiasing set to true when intitializing the device. set that to false, and it is fine....
Locked