GUI development

Everything related to the code /
Tout ce qui touche au code
Post Reply
User avatar
Balthazar
Moderator
Posts: 2055
Joined: Wed Nov 01, 2006 4:31 pm
Location: Russian Federation
Contact:

GUI development

Post by Balthazar » Fri Jan 19, 2007 8:27 am

Our art-developer Vohvelieläin getting ready to draw some nice GUI thingies :) He`s asking about TA3D GUI policy. Here`s his questions:

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Was wondering what the GUI should (or could?) look like...
1. Can it be transparent? And if, should this be done via alpha values on bitmaps or would it be coded?
2. Can it have animated graphics?
3. Can panels slide in and out of screen depending what one is doing?
Also still wondering the visual appearance in general.
In TA GUI mostly is reddish rusty metal and some shiny grey metal in buttons and whatever stuff there is.
Another noteworthy thing about TA style in general is that nanolathes are green.
So...
Should it be some rusty metal and glowing green holo things?
Or...
Should it be something different? Some shiny metal/plastic/ceramite and dark blue panels?
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

That`s his point. Well, reading this I just wondering about few things...
1. Maybe we can make Nanolathing color similar to Player color?
2. Add support for different types of GUI panels - sliding, or fading or just as it is now.

Anyway, Zuzuf, Cire++, what do you think about all this? What kind of GUI do we need and our art-developer should draw?
Last edited by Balthazar on Thu Oct 18, 2007 6:03 pm, edited 1 time in total.

User avatar
zuzuf
Administrateur - Site Admin
Posts: 3281
Joined: Mon Oct 30, 2006 8:49 pm
Location: Toulouse, France
Contact:

Post by zuzuf » Fri Jan 19, 2007 12:10 pm

well, GUI is going to be moddable as much as possible:
_ transparency (using alpha channel), with bitmap background or simple color
_ animated gfx (still don't know which format to use, but something that support alpha channel like mng)
_ since everything is going to be coded as a window, you will be able to set windows properties that fit your needs: locked window, panel that can slide, and have a varying color depending on their state (hidden, small, ...), background, size, drawing title and borders or not, ...

when it will be finished, each window will be loaded from a file and the GUI will use a theme. All the data will be stored in a TDF like structure (only extension changes, inside it's a TDF).

We should start with a GUI for each side (arm & core) that might automatically adjust to player color (using a system of masks).

That's the idea, I will post more technical information about the data type we will use tonight when i will start designing the whole thing on paper. (until now I just improved slightly a old gui module that needs to have a few parts rewritten)
=>;-D Penguin Powered

User avatar
Balthazar
Moderator
Posts: 2055
Joined: Wed Nov 01, 2006 4:31 pm
Location: Russian Federation
Contact:

Post by Balthazar » Fri Jan 19, 2007 2:07 pm

Yes, we need a strong GUI-develop plan, at least on paper. Because if our Art-developer begin to draw - his work must not be useless...
So we need to specify GUI pictures and animation formats, sizes (for number of resolutions - example: 640x480 and 800x600 - .... this size, and for 1024x768 and 1280x1024 - ... this size).

Also think about GUI color system... We can start from something simple, but must be ready for animated, transparency, shiny GUI !

P.S. Zuzuf, read my last post on tauniverse in "defence mode idea" thread.
Here`s link http://www.tauniverse.com/forum/showthread.php?t=36125
I think that later we can add "Crimsonland" support for Multiplayer :) (center screen on unit and mouse-fire)

User avatar
zuzuf
Administrateur - Site Admin
Posts: 3281
Joined: Mon Oct 30, 2006 8:49 pm
Location: Toulouse, France
Contact:

Post by zuzuf » Fri Jan 19, 2007 6:12 pm

you had a nice idea, really. But first we need to implement the GUI module in order to have something working properly with the setup game menu and be able to select game type. I am a bit tired now, I am going to watch a movie and then think to the GUI specifications, so we can have a GUI working with a great theme from our artist 8) !
=>;-D Penguin Powered

User avatar
Balthazar
Moderator
Posts: 2055
Joined: Wed Nov 01, 2006 4:31 pm
Location: Russian Federation
Contact:

Post by Balthazar » Fri Jan 19, 2007 7:09 pm

Well, I suppose something like this with more precise info.
Image

User avatar
Balthazar
Moderator
Posts: 2055
Joined: Wed Nov 01, 2006 4:31 pm
Location: Russian Federation
Contact:

Post by Balthazar » Sat Jan 20, 2007 8:23 pm

Zuzuf, how are your work with GUI specification going?

User avatar
zuzuf
Administrateur - Site Admin
Posts: 3281
Joined: Mon Oct 30, 2006 8:49 pm
Location: Toulouse, France
Contact:

Post by zuzuf » Sat Jan 20, 2007 8:31 pm

I am currently working on GUI, but I need to do some more work to see how the code will work. I am redesigning things to use std lib instead of array of char* so we get something more flexible with windows that can be loaded from a TDF.

GUI will be "resized" between resolutions so we don't get a small GUI at high res. The specs I gave on the above picture are for 640x480 but we can use more detailed textures to prevent losing detail while enlarging (so we don't enlarge but we reduce the GUI textures for low res).

In fact I am doing things i order to get something fully moddable - you can set buttons position and size, what's displayed on them, theme for windows, buttons, ... every GUI object. So the whole interface will be moddable (from main menu to game GUI).

So modders will be free to do what they want. But I don't know for now what format i will use for animated textures.
=>;-D Penguin Powered

User avatar
Balthazar
Moderator
Posts: 2055
Joined: Wed Nov 01, 2006 4:31 pm
Location: Russian Federation
Contact:

Post by Balthazar » Sat Jan 20, 2007 9:06 pm

Well, mostly you are right, but I suggest to focus at first on TA-like GUI with ability to add flexibility later.
Our goal for near future is to release nice looking version with TA-like GUI (and ability to add flexibility later). So I ask not to dig too deep into this, just preserve flexibility for future development.
The main point is that most of gamers attached to dear-old TA GUI, so for the begginning we should save the main TA interface ideas.

So what we need now -
1. main GUI field sizes (I suggest for 1024x768 resolution as default one).
2. transparency (using alpha channel), with bitmap background or simple color? Witch it will be?
3. Can it have animated graphics, how will it be coded (or what formats will be supported?)?

User avatar
zuzuf
Administrateur - Site Admin
Posts: 3281
Joined: Mon Oct 30, 2006 8:49 pm
Location: Toulouse, France
Contact:

Post by zuzuf » Sat Jan 20, 2007 9:32 pm

you 're right, but the only feature that has not been coded now is support for animated textures (which I will do when I will have finished the rest of the GUI module) and for theme/window loading (which I am going to do right now). I've just finished rewriting some code to use std lib instead of char*, so that it will be faster to make a moddable GUI.
=>;-D Penguin Powered

User avatar
Balthazar
Moderator
Posts: 2055
Joined: Wed Nov 01, 2006 4:31 pm
Location: Russian Federation
Contact:

Post by Balthazar » Mon Jan 22, 2007 6:45 pm

Anyway, Zuff, I need something to say to GUI-developer, so he can begin his work!!! We should start from something!

User avatar
zuzuf
Administrateur - Site Admin
Posts: 3281
Joined: Mon Oct 30, 2006 8:49 pm
Location: Toulouse, France
Contact:

Post by zuzuf » Mon Jan 22, 2007 8:22 pm

well what he needs to know is:
_buttons will use 2 textures, one for normal aspect and the other for clicked aspect
_windows will use 1 texture for title, and 8 for borders, but it can be replaced with only one texture set as background
_text will use TA's font, you can specify it's size, and color (32bits number, hexa allowed)
_basic primitives cannot be modded (a line is a line, ...)
_when windows have a background image, alpha blending is activated
_windows are described by a tdf file
_the game GUI will stay as it is for now, but the background will be moddable using alpha blending of course. For now it's not scaled, but soon it will.
_progress bars will use 2 textures : one describing the background of the bar and one the bar that shows the progression (may be used for music player).

if he wants to start making animated GUI, he can do multiple TGAs, we will see later how to make something cleaner.
=>;-D Penguin Powered

User avatar
zuzuf
Administrateur - Site Admin
Posts: 3281
Joined: Mon Oct 30, 2006 8:49 pm
Location: Toulouse, France
Contact:

Post by zuzuf » Wed Feb 14, 2007 1:13 pm

ok, I have made a GUI skin for reference, I packed everything related to GUI into an archive, just follow this link:
http://membres.lycos.fr/zuzuf86/ta3d/ta3d_skin.tar.bz2

it's still not finished ( no gfx animation and no game panel modification allowed - not even background ) but it gives a good idea of what the GUI module can do.
=>;-D Penguin Powered

User avatar
Balthazar
Moderator
Posts: 2055
Joined: Wed Nov 01, 2006 4:31 pm
Location: Russian Federation
Contact:

Post by Balthazar » Wed Feb 14, 2007 5:21 pm

Cool, a screenshot of how it looks like would be nice also :)

User avatar
zuzuf
Administrateur - Site Admin
Posts: 3281
Joined: Mon Oct 30, 2006 8:49 pm
Location: Toulouse, France
Contact:

Post by zuzuf » Wed Feb 14, 2007 6:01 pm

here is a screenshot:
Image

but it's only a reference skin, only to show how to create one, so it will be replaced when we have a nice one.
=>;-D Penguin Powered

User avatar
Balthazar
Moderator
Posts: 2055
Joined: Wed Nov 01, 2006 4:31 pm
Location: Russian Federation
Contact:

Post by Balthazar » Tue Sep 18, 2007 1:13 pm

So, what about 3D cursor? What format should I use? How it will be animated?

User avatar
zuzuf
Administrateur - Site Admin
Posts: 3281
Joined: Mon Oct 30, 2006 8:49 pm
Location: Toulouse, France
Contact:

Post by zuzuf » Tue Sep 18, 2007 4:12 pm

hmm, 3D cursor, why not ?

If you want to make 3D cursors, then use 3DM, it will allow you to animate the cursors using the default animation system.

Currently, I am working on in game GUI to load the TA interface, it's working, but with a few bugs left, that should be fixed soon. But it's working, you get the build/orders menus but some buttons still have no action linked to them (like on/off) but that should be fixed soon too.
=>;-D Penguin Powered

User avatar
Balthazar
Moderator
Posts: 2055
Joined: Wed Nov 01, 2006 4:31 pm
Location: Russian Federation
Contact:

Post by Balthazar » Tue Sep 18, 2007 4:40 pm

Well, some parts of GUI can be not fully functional yet - such as visibility, behaviour and so on...

User avatar
Balthazar
Moderator
Posts: 2055
Joined: Wed Nov 01, 2006 4:31 pm
Location: Russian Federation
Contact:

Post by Balthazar » Thu Oct 18, 2007 6:02 pm

Currently GUI is done, there is no need for this topic to be sticky.

Only a little anti-blur tweak maybe needed, while modders will re-draw own GUI.

Post Reply

Who is online

Users browsing this forum: No registered users and 45 guests