Use of Flash For In-Game GUI
by Myk Sanders · in Game Design and Creative Issues · 08/06/2002 (2:22 pm) · 20 replies
Question:
What is the feasibility of using flash for in-game user interface? I dont know if flash can be made to work inside another exe.
-I guess what would need to be figured out is how to make a flash movie shake hands with the code of TGE that handles the GUI triggers and events?
The flip side to this question is would anyone even find this helpful in any application?
~myk
What is the feasibility of using flash for in-game user interface? I dont know if flash can be made to work inside another exe.
-I guess what would need to be figured out is how to make a flash movie shake hands with the code of TGE that handles the GUI triggers and events?
The flip side to this question is would anyone even find this helpful in any application?
~myk
#2
I'm not sure what it would take to make this work, or if it would even be needed since TGE has its own GUI system. One thing I can think of that would probably be easier with Flash would be really animated GUIs.
08/06/2002 (3:29 pm)
I've heard of quite a few games using Flash for their interfaces, and before that some used Director.I'm not sure what it would take to make this work, or if it would even be needed since TGE has its own GUI system. One thing I can think of that would probably be easier with Flash would be really animated GUIs.
#3
I think using flash for GUI as another option, its files can be designed to look better than "ugly" and some might argue that the file sizes could be more easily managed than the raster counter-parts.
I havent even looked into the GUI parts of TGE yet..Just researching the options that are available. Anyone else have an opinion on this?
**edit**
Does TGE support animated GUI?
~myk
08/06/2002 (3:35 pm)
True, Flash is not neccessary for an Interface, thats why I asked if anyone would find it helpful. Its more of a "hey has anyone thought about this already?" -question.I think using flash for GUI as another option, its files can be designed to look better than "ugly" and some might argue that the file sizes could be more easily managed than the raster counter-parts.
I havent even looked into the GUI parts of TGE yet..Just researching the options that are available. Anyone else have an opinion on this?
**edit**
Does TGE support animated GUI?
~myk
#4
If you want to integrate it, go ahead, but you'll have to do it yourself, I don't think anyone is interested. We rather write some new GUI classes to have some scpecific animations done (like button fades etc), then adding flash support.
08/06/2002 (3:44 pm)
I see no point in adding flash support. I have mouseover effects now, nice splash screens... I don't see where Flash would come in. Flash is really a myth... it became very popular, but most proffesionals are leaving it for what it is these days. One of the main reasons is that its VERY slow when it comes down to interacting with its enviroment (databases, files, commands to external scripts,..). If you want to integrate it, go ahead, but you'll have to do it yourself, I don't think anyone is interested. We rather write some new GUI classes to have some scpecific animations done (like button fades etc), then adding flash support.
#5
I'm not suggesting that Flash support be added, I more or less asking what people thought about the GUI, and its prospects. I am not a programmer at all, so I dont know about these things. So flash is slow to interface with its environment...cool. Good info.
I guess Ill leave it at that. Thanks for the info Ward.
~myk
08/06/2002 (3:57 pm)
Thats more like what I'm asking this question for. I'm not suggesting that Flash support be added, I more or less asking what people thought about the GUI, and its prospects. I am not a programmer at all, so I dont know about these things. So flash is slow to interface with its environment...cool. Good info.
I guess Ill leave it at that. Thanks for the info Ward.
~myk
#6
I quite like the idea of a vector based interface, and its been used effectively in a few games (including consoles).
But its not really an option for us.
Phil.
08/06/2002 (3:58 pm)
You could get the source to the flash player from macromedia and do it, but its probably not going to be licensable for torque.I quite like the idea of a vector based interface, and its been used effectively in a few games (including consoles).
But its not really an option for us.
Phil.
#7
I think that if (IF!) you need more dynamic interface, flash support is a good thing. We are all used to quite static interfaces but for projects it could benefit from that.
I'm not quite sure, maybe there has to be some deal with Macromedia made before attempting to use technology.
12/13/2002 (8:28 am)
There is a company SecretLab or Secretlevel (.com) which does this sort of thing. Lucas Arts were working with them a while ago.I think that if (IF!) you need more dynamic interface, flash support is a good thing. We are all used to quite static interfaces but for projects it could benefit from that.
I'm not quite sure, maybe there has to be some deal with Macromedia made before attempting to use technology.
#8
J.Donavan Stanley is working on some pretty neat UI tools @ TEP. He recently posted his guiShadowButtonCtrl as a resource here.
-Eric
edit: Fixed name misspelling. Sorry J. DonAvan! :-)
12/13/2002 (9:07 am)
I never even knew flash could be used as a UI until I tested out GMAX--it looks pretty cool.:)J.Donavan Stanley is working on some pretty neat UI tools @ TEP. He recently posted his guiShadowButtonCtrl as a resource here.
-Eric
edit: Fixed name misspelling. Sorry J. DonAvan! :-)
#9
12/13/2002 (9:40 am)
Unfortunatly I've been so deep into the TerrainManager project I've not had any time to work on my UI code. *sigh* I need a coffee main-line or something, there's just not enough hours in the day.
#10
As far as flash as being a myth, get your facts straight. I've been making web pages for years, people ask me to add flash more then any other "add-on"
Flash is a wonderful eye-candy that attracts attention for advertising, not data-bases and stuff like that.
Have you ever been to SFDT.com flash is really ALIVE there!
12/13/2002 (11:18 am)
The only thing I can think of that makes flash GUI really cool is the 3D gui you could make. I've made some pretty fancy 3D animiation in Flash before.As far as flash as being a myth, get your facts straight. I've been making web pages for years, people ask me to add flash more then any other "add-on"
Flash is a wonderful eye-candy that attracts attention for advertising, not data-bases and stuff like that.
Have you ever been to SFDT.com flash is really ALIVE there!
#11
What part of flash is most particularly appealing for use as a game UI, though? Vector graphics? Smooth animation? Or is it familiarity with the editing environment? I'd think the last one, if anything.
12/13/2002 (12:03 pm)
Flash is also very very annoying when you're trying to find information or get somewhere on your own time. As in "yeah, it's neat that when I click on this button it shoots me into orbit and my info's streaming out of a satellite, but can you just show me the info and spare me the eye candy? I don't pay for this cable modem for nothing." It's a neat little plugin, but it's not a viable replacement for hypertext. I think that's the point Ward was trying to make.What part of flash is most particularly appealing for use as a game UI, though? Vector graphics? Smooth animation? Or is it familiarity with the editing environment? I'd think the last one, if anything.
#12
Maybe one of the appealing aspects is already having a set of established creation tools to work with?
I don't care either way... just curious. :)
--Eric
12/13/2002 (1:19 pm)
Actually, the GMAX flash UI was pretty simplistic, with very few bells-n-whistles added. Perhaps animated buttons, IIRC. Maybe one of the appealing aspects is already having a set of established creation tools to work with?
I don't care either way... just curious. :)
--Eric
#13
Go take a look a the Rock Star Games site. That uses flash... I think it's an excellent demonstration (For the most part) of how Flash can make a UI sweeter without detracting from it.
The single effect they use most, that Torque currently lacks, are simple sliding effects. For instance, click on the arrows on the arcade machine. Notice how they have the new image for the display slide up? It adds a lot of character to the site. But wait, doesn't that slow you down? Not really, because the slide is only a few frames long. It makes what would be a jarring transition a bit smoother.
Same deal for the 3 links to their different games on the top. They have a few milliseconds of extra animation that make it a lot more appealing.
So what is Flash bringing to this site that they couldn't have done with HTML? (And by extension, what should we consider adding to Torque to make it just as good?)
1. The editing and rendering environment. Flash has a really nice editing environment; making that RockStarGames site in plain ol' HTML would take a lot more effort, especially to get everything to line up just right, on every browser, while still being readily updatable (changing the news, for them, is matter of popping open Flash and editing a text field). The rendering environment is good because it's a constant.
We already have a constant rendering environment - Torque! An excellent rendering environment. And we have an editing environment... But it's not so great. It's usable, sure, but it's not nearly as nice as Flash's editing interface (or even VB's editing interface). So... we need to improve the editing environment.
2. Integrated animation capability. The interface of a game is a way for the game to express itself. If you have a cowboy game, and the interface is entirely digital, and it bleeps and bloops when you click on it, you're sending mixed messages to the player. Obviously, they shouldn't have to rope a heifer to load their game, but some modicum of westernity ought to make its way into the layout.
Torque right now, especially with the loss of the Shell GUI components, is pretty limited in being able to have such interfaces. One of the advantages of flash is that you can easily add little background animations that greatly enhance the feel of a site. Little whirring gears, or a bit of sagebrush blowing by are trivial to add in Flash, but they can have a huge impact.
3. Smooth transitions and consistent power. Flash also has an ability to do smooth transitions. As the Rockstar Games site demonstrates, these do not have a negative impact on usability if properly used, and they make the interface appear much more alive. How cool would it be if your game's HUD would smoothly change from one configuration to another, or if the menu system rotated and slid into new configurations (this all taking place rapidly so that it didn't annoy the user)?
And if we do add Flash-like capabilities to Torque, they must be consistent. Just like the current GUI, they should be usable both in-game and in-menu without a problem.
We should consider adding to Torque: A better GUI editing environment. The ability to easily have complex animations. The ability to smoothly transition from interface state to interface state. The ability to use these new GUI tools both in-game and out.
12/14/2002 (2:54 pm)
www.rockstargames.com/Go take a look a the Rock Star Games site. That uses flash... I think it's an excellent demonstration (For the most part) of how Flash can make a UI sweeter without detracting from it.
The single effect they use most, that Torque currently lacks, are simple sliding effects. For instance, click on the arrows on the arcade machine. Notice how they have the new image for the display slide up? It adds a lot of character to the site. But wait, doesn't that slow you down? Not really, because the slide is only a few frames long. It makes what would be a jarring transition a bit smoother.
Same deal for the 3 links to their different games on the top. They have a few milliseconds of extra animation that make it a lot more appealing.
So what is Flash bringing to this site that they couldn't have done with HTML? (And by extension, what should we consider adding to Torque to make it just as good?)
1. The editing and rendering environment. Flash has a really nice editing environment; making that RockStarGames site in plain ol' HTML would take a lot more effort, especially to get everything to line up just right, on every browser, while still being readily updatable (changing the news, for them, is matter of popping open Flash and editing a text field). The rendering environment is good because it's a constant.
We already have a constant rendering environment - Torque! An excellent rendering environment. And we have an editing environment... But it's not so great. It's usable, sure, but it's not nearly as nice as Flash's editing interface (or even VB's editing interface). So... we need to improve the editing environment.
2. Integrated animation capability. The interface of a game is a way for the game to express itself. If you have a cowboy game, and the interface is entirely digital, and it bleeps and bloops when you click on it, you're sending mixed messages to the player. Obviously, they shouldn't have to rope a heifer to load their game, but some modicum of westernity ought to make its way into the layout.
Torque right now, especially with the loss of the Shell GUI components, is pretty limited in being able to have such interfaces. One of the advantages of flash is that you can easily add little background animations that greatly enhance the feel of a site. Little whirring gears, or a bit of sagebrush blowing by are trivial to add in Flash, but they can have a huge impact.
3. Smooth transitions and consistent power. Flash also has an ability to do smooth transitions. As the Rockstar Games site demonstrates, these do not have a negative impact on usability if properly used, and they make the interface appear much more alive. How cool would it be if your game's HUD would smoothly change from one configuration to another, or if the menu system rotated and slid into new configurations (this all taking place rapidly so that it didn't annoy the user)?
And if we do add Flash-like capabilities to Torque, they must be consistent. Just like the current GUI, they should be usable both in-game and in-menu without a problem.
We should consider adding to Torque: A better GUI editing environment. The ability to easily have complex animations. The ability to smoothly transition from interface state to interface state. The ability to use these new GUI tools both in-game and out.
#14
There seems to be a number of people interested in this feature particularly, though--someone on my team asked it as well. Would there be any legal issues if someone wrote a flash interpreter or embedded it somehow? Perhaps it could tie right in to the standard browser plugin interface?
12/14/2002 (6:27 pm)
I agree with most--if not everything--you said, Ben. That site's an example of a decent use of flash to make a richer website. Strictly speaking, I think just about all of that could be done using DHTML. However, as you said, it'd be a lot more work than opening up Flash's environment and putting it together. So I'm thinking the biggest part is it's an interface thing. I'm perfectly cool with that. Getting content into the engine should be as straightforward and familiar as possible.There seems to be a number of people interested in this feature particularly, though--someone on my team asked it as well. Would there be any legal issues if someone wrote a flash interpreter or embedded it somehow? Perhaps it could tie right in to the standard browser plugin interface?
#15
To get Flash to work properly with Torque, you'd need to have an OpenGL rendering backend, which means that using a browser-style plugin would be out. So you'd probably have to implement most or all of the spec on your own (especially since you couldn't embed GPL-ed code in Torque).
In addition, it would probably only be worthwhile to get Torque to understand a subset of Flash, especially initially. For instance, gradients would probably require (to render efficiently) you to build some textures and map them to geometry in clever ways. Curves could be hard to get to render quickly. Really, most of the effort would be to properly capture all the intricacies of the spec. Doing the fonts might be a pain, but display lists could help.
You would have to add hooks for the actionscript to call in order to communicate with the engine, and vice versa.
You probably wouldn't need to bother with streaming sound (in the context of Flash, this only means that the sound is interleaved with the rest of the file to faciliate playback while downloading). You could simply things by only supporting MP3 (or OGG) audio, or just ADPCM.
You also wouldn't need to do any of the fancy schmancy scripting stuff like the XML capabilities and communications functionality. Just give the ability for the flash to talk to TorqueScript, and you'd be fine.
Also wouldn't need to add movie support (especially since Sorenson probably wouldn't like you using their format without paying ;).
Then all you'd have to do to display the flash in-engine would be to scale the movie to fit the screen (or else make it a GUI component and let people figure it out for themselves). I'd suggest adding transparency support, both so that you can have a background or somesuch behind it easily, and so that you can render Flash over the game. (Having a Flash GUI would be so much cooler than having to use the existing GUI stuff.)
Anyways... Having done all that, and if you then made your artists not use features of Flash that weren't supported, you'd have a very nice, viable GUI feature. I don't think that it'll replace the GUI stuff that's there (since Flash isn't all that hot for making windowing GUIs), but for freeform GUI stuff, like HUDs or loading screens, it'd be great.
12/14/2002 (7:04 pm)
Writing a Flash player can be done (see www.swift-tools.com/Flash/ for a GPL player that supports Flash 3, and then there's also a Flash 6 spec online at [url]http://www.macromedia.com/[url]).To get Flash to work properly with Torque, you'd need to have an OpenGL rendering backend, which means that using a browser-style plugin would be out. So you'd probably have to implement most or all of the spec on your own (especially since you couldn't embed GPL-ed code in Torque).
In addition, it would probably only be worthwhile to get Torque to understand a subset of Flash, especially initially. For instance, gradients would probably require (to render efficiently) you to build some textures and map them to geometry in clever ways. Curves could be hard to get to render quickly. Really, most of the effort would be to properly capture all the intricacies of the spec. Doing the fonts might be a pain, but display lists could help.
You would have to add hooks for the actionscript to call in order to communicate with the engine, and vice versa.
You probably wouldn't need to bother with streaming sound (in the context of Flash, this only means that the sound is interleaved with the rest of the file to faciliate playback while downloading). You could simply things by only supporting MP3 (or OGG) audio, or just ADPCM.
You also wouldn't need to do any of the fancy schmancy scripting stuff like the XML capabilities and communications functionality. Just give the ability for the flash to talk to TorqueScript, and you'd be fine.
Also wouldn't need to add movie support (especially since Sorenson probably wouldn't like you using their format without paying ;).
Then all you'd have to do to display the flash in-engine would be to scale the movie to fit the screen (or else make it a GUI component and let people figure it out for themselves). I'd suggest adding transparency support, both so that you can have a background or somesuch behind it easily, and so that you can render Flash over the game. (Having a Flash GUI would be so much cooler than having to use the existing GUI stuff.)
Anyways... Having done all that, and if you then made your artists not use features of Flash that weren't supported, you'd have a very nice, viable GUI feature. I don't think that it'll replace the GUI stuff that's there (since Flash isn't all that hot for making windowing GUIs), but for freeform GUI stuff, like HUDs or loading screens, it'd be great.
#16
Flash's current forte is doing interfaces with small to medium amounts of content. Which is exactly what a game is.
It has gotten a bad rep because of misuse, the technology itself is very sound. As for experts NOT using flash... many do. It's crossplatform (Especially now that Flash linux support was released) and it displays the same in every browser (HTML implementations vary WIDELY from browser to browser).
Really, Flash or another multimedia format is eventually going to phase out HTML (However, it will probably be an ASCII based, XML derived format). The W3C has been working on this for quite a while.
But some people try to be cool and bash Flash, and don't know what they are talking about. *sigh*
12/14/2002 (7:41 pm)
I think Flash would be an excellent tool to use for game interfaces.Flash's current forte is doing interfaces with small to medium amounts of content. Which is exactly what a game is.
It has gotten a bad rep because of misuse, the technology itself is very sound. As for experts NOT using flash... many do. It's crossplatform (Especially now that Flash linux support was released) and it displays the same in every browser (HTML implementations vary WIDELY from browser to browser).
Really, Flash or another multimedia format is eventually going to phase out HTML (However, it will probably be an ASCII based, XML derived format). The W3C has been working on this for quite a while.
But some people try to be cool and bash Flash, and don't know what they are talking about. *sigh*
#17
This doesn't mean that the experts can't do amazing things with it, though.
www.joshuadavis.com/
If I could get this man to do my game interface, I'd be ecstatic :)
12/14/2002 (8:32 pm)
Much like VB, Flash is a realm of beginners. Which means there are _lots_ of people who "do flash" but don't understand an iota of what they're actually about.This doesn't mean that the experts can't do amazing things with it, though.
www.joshuadavis.com/
If I could get this man to do my game interface, I'd be ecstatic :)
#18
I've just started messing around with the Torque GUI interface. Can anyone tell me how to change the look of the buttons? I'm a bit tired of the grey rectangles. I tried making the buttons invisible, thinking that they'd still be clickable, but no dice.
03/05/2008 (11:47 am)
Wow this is an old thread. ;]I've just started messing around with the Torque GUI interface. Can anyone tell me how to change the look of the buttons? I'm a bit tired of the grey rectangles. I tried making the buttons invisible, thinking that they'd still be clickable, but no dice.
#19
to ask a question that has nothing really to do with the thread itself?
I do.
03/05/2008 (12:22 pm)
Lol, Alexander don't you think its kinda insane to open a super old thread. ( > 5 yrs!)to ask a question that has nothing really to do with the thread itself?
I do.
Torque Owner Philip Plante