Game Development Community

Torque: GUI Updates

by Phillip O'Shea · 04/11/2008 (6:54 pm) · 27 comments

TGB was my first port of call when I joined the GG community. It was a great starting point for a game development hobby, but ultimately I would want to move onto bigger and better things.

Despite being derived from similar code the differences between TGEA and TGB made it difficult for me to get my head around things. If you take a look at each of the level editors in the Torque engines you will notice that they are quite unique, but dated.

I had the crazy idea that I would give the editors a bit of an update.

My idea was simple: Create a GUI system that is consistent between each Torque engine and is easily extendable.

Here is my first concept:

img297.imageshack.us/img297/1948/tgeaeditorconceptfj5.jpg
The entire toolbar is derived from an XML sheet and is processed through TS. Here is a small example of the toolbar:

<LevelEditorToolBar>
    <ToolBarPage>
        <Text>Mission</Text>
        <ToolBarStack>
            <Text>Project</Text>
            <LargeButton>
                <iconBitmap>newIcon</iconBitmap>
                <ToolTip>New Mission</ToolTip>
                <Command>EditorNewMission();</Command>
                <Shortcut>New</Shortcut>
            </LargeButton>
            <LargeButton>
                <iconBitmap>openIcon</iconBitmap>
                <ToolTip>Open Mission</ToolTip>
                <Command>EditorOpenMission();</Command>
                <Shortcut>Open</Shortcut>
            </LargeButton>
            <DropDownButton>
                <LargeButton>
                    <iconBitmap>saveIcon</iconBitmap>
                    <ToolTip>Save...</ToolTip>
                </LargeButton>
                <MenuButton>
                    <Text>Save</Text>
                    <Command>EditorSaveMissionMenu();</Command>
                    <Shortcut>Save</Shortcut>
                </MenuButton>
                <MenuButton>
                    <Text>Save As</Text>
                    <Command>EditorSaveMissionAs();</Command>
                    <Shortcut>SaveAs</Shortcut>
                </MenuButton>
            </DropDownButton>
        </ToolBarStack>
    </ToolBarPage>
</LevelEditorToolBar>

Because the toolbar is derived from XML it is easily extendible. The tag references a keyboard command like "Ctrl S" or "Shift-Ctrl S" and binds the button's command to the assigned shortcut.

The references a quasi-control that I have created. It is just like a regular pop up control, except it is a button and looks like a regular toolbar menu with shortcut labels as well. See below:

img410.imageshack.us/img410/1636/dropdownbutton1cu5.jpg
img396.imageshack.us/img396/5678/dropdownbutton2ni7.jpg
img395.imageshack.us/img395/672/dropdownbuttonnu9.jpg
Note: This drop down menu is a "Radio" type menu. The "Normal" button has been depressed and the other one is highlighted with the mouse (though the screenshot neglected it).

The toolbar pages are either permanent or conditional. Permanent pages are there, permanently and the conditional pages are only visible when criteria have been met (i.e. mission creator/inspector is active). This aspect hasn't been properly implemented yet, but it is the plan.

The next idea that I had is the idea of widgets: small scripts that you can add into the editor to make it work the way that you want it to. I want the user to be able to dictate the type of environment they want to work in and how they work in it.

img297.imageshack.us/img297/9014/inspectorimagesr5.jpg
Now, here is the bad news. My time with gaming and game development is becoming quite limited and I really need to select my projects carefully. I want to gauge community enthusiasm towards this project. If there is enough interest in this, then I will pursue the project and roll it out eventually, otherwise I will have to put it aside and give way to profitable projects (this project will be released for free to the community).

Just leave a post or give the blog a rating and let me know what you think.

About the author

Head of Violent Tulip, a small independent software development company working in Wollongong, Australia. Go to http://www.violent-tulip.com/ to see our latest offerings.

Page«First 1 2 Next»
#21
04/13/2008 (8:06 pm)
wow . . . thats hott...
#22
04/14/2008 (12:19 am)
Very very coool
#23
04/17/2008 (9:12 am)
I really like how all the basic commands are visibly present as it makes it look very friendly and less intimidating. If you cannot finish it, perhaps you can post as far as you get and let someone else finish it?
#24
04/17/2008 (4:25 pm)
@Phillip

Anymore development on this project? You've got an interested following here.
#25
04/17/2008 (4:35 pm)
The interest has definitely given me more motivation to get this underway again. I still have to find the time do it, however.
#26
07/09/2008 (12:26 am)
Hi Phillip. Weren't you also working on some GUI updates to TGB? Or was that someone else? I think my memory is failing as I get older! :)
#27
09/09/2008 (7:27 am)
Phillip OShea, this looks great!!! I am definately interested in seeing the completion of this. I know you've got projects to work on cause something has to bring in the money, but I can also see GG taking this to another level with your help. Shoot! I got TEA because I though this was an upgrade to it... Outside of the outstanding capabilites TGEA has over TGE, I was disappointed that "your custom gui" wasn't apart of TGEA 1.7.1 but I'm definately interested in it.

Keep up the hard work!!!
Page«First 1 2 Next»