Announcement

Collapse
No announcement yet.

Replacing the GUI controller

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    Replacing the GUI controller

    I made my own GUI interface, and while it works perfectly under normal circumstances (making a game info load it)
    if I try to replace the normal UT GUIController with it, the game crashes
    This is the error log:
    Code:
    Log: Log file open, 10/12/05 16:22:45
    Init: Name subsystem initialized
    Init: Detected: Microsoft Windows XP 5.1 (Build: 2600)
    Init: Version: 3355 (128.29)
    Init: Compiled: Feb 15 2005 17:04:22
    Init: Command line: -ini=Test.ini -userini=testuser.ini -windowed -log
    Init: Character set: Unicode
    Init: Base directory: F:\UT2004\System\
    Init: Ini:Test.ini   UserIni:testuser.ini
    Init: Build label: UT2004 Build UT2004_Build_[2005-02-15_17.02]
    Init: Object subsystem initialized
    Log: 	nv4_disp.dll/NVIDIA GeForce4 Ti 4600
    Log: Game class is 'GameInfo'
    Log: Bringing Level Entry.myLevel up for play (0) appSeconds: 3.022000...
    ScriptLog: GameInfo::InitGame : bEnableStatLogging False
    Log: Browse: NoIntro.ut2?Name=Hsoolien?Class=Engine.Pawn?Character=Gaargod?team=255?Sex=M
    Log: Collecting garbage
    Log: Purging garbage
    Log: Garbage: objects: 27607->27607; refs: 280265
    Log: Game class is 'CinematicGame'
    Log: Bringing Level NoIntro.myLevel up for play (0) appSeconds: 5.710000...
    ScriptLog: GameInfo::InitGame : bEnableStatLogging False
    Log: ALAudio: Using DirectSound to record audio.
    ScriptLog: New Player Hsoolien id=6ff3bf6abc7d48f06d502e5905359e2a
    Log: Opened viewport
    Log: Enter SetRes: 640x484 Fullscreen 0
    Log: Using back-buffer format 22(32-bit)
    Log: Using depth-buffer format 77(32-bit)
    Log: Creating device
    Log: xD3DHelper::Init (QuadEmulation)
    Log: OS doesn't support IME.
    Critical: UGameEngine::Init
    Critical: InitEngine
    Critical: FMallocWindows::Free
    Critical: FMallocWindows::Free
    Exit: Executing UObject::StaticShutdownAfterError
    Exit: Executing UWindowsClient::ShutdownAfterError
    Log: Waiting for file streaming thread to finish...
    Exit: OpenAL Audio subsystem shut down.
    Localization: No localization: Window.IDDIALOG_CrashBox.IDC_CrashBox (int)
    Exit: Exiting.
    Log: FileManager: Reading 0 GByte 39 MByte 378 KByte 44 Bytes from HD took 0.471000 seconds (0.335999 reading, 0.135000 seeking).
    Log: FileManager: 0.163000 seconds spent with misc. duties
    Uninitialized: Name subsystem shut down
    Uninitialized: Log file closed, 10/12/05 16:22:54

    Now my GUI subclasses interaction instead of BaseGUIController, cause I don't want all the default UT2004 GUI stuff, mine works and it's efficient (about one fps loss for every 10 windows/menus/icons on screen), do I need to subclass it off of BAseGUIController, is there someo other way??

    #2
    You need to subclass BaseGUIController

    Comment


      #3
      Drat


      I was hoping I would not have to since it does a whole whack of things I would rather it did not...

      Comment


        #4
        Here's a general rule, if you replace actor X that subclasses from a native actor Y you often must subclass at least from Y.

        Comment


          #5
          I understand that for the most part, I was just hoping that perhaps it would accept a little less then the GUIBase class... (there are other instances where higher on the tree can be used)

          Comment


            #6
            If you override and disable all that stuff that you don't want BaseGUIController to do, you might end up with a class that has the best of both worlds.

            Comment


              #7
              Most of what the BAseGUIController does is native.

              Comment

              Working...
              X