ogreSwf/vektrix
-
- Gnoblar
- Posts: 22
- Joined: Thu Jan 04, 2007 9:39 pm
- stoneCold
- OGRE Expert User
- Posts: 867
- Joined: Fri Oct 01, 2004 9:13 pm
- Location: Carinthia, Austria
- x 1
Sorry was a typo while instant posting LGPL I meant, but now that I read the licenses (the 100th time ), I think you're right.Fenris wrote:Eh? I see LGPL listed in the OgreSWF source files... If you intend to change to GPL licensing would that not mean that all source code that uses ogreSWF code, including apps we write, have to be distributed as source as well? Not pretty if so, sadly a game breaker for a lot of us I bet.Hmm, isn't that GPLed?
Yes they are, but as far as I know the GPL this should be no problem as far as ogreSwf stays GPL too.
I always thought that LGPL code can be used by making your own code LGPL/GPL (that's right) but I thought it works the other way around too (that's not right as I read the license!?!?).
If I'd just have an email address of an author of SwfTools.
I'm quite sure this might be no problem with the agreement of him/them.
- independentCreations
- Greenskin
- Posts: 121
- Joined: Sat Jan 07, 2006 7:30 am
- Location: Gold Coast - Australia
ay mate i have tried a couple of different things and i cant get your demo to run or to integrate it into my own project. I have tried debugging throught it.
i am trying to get a full screen hud swf up and running. I have tried via texture->cegui and i have tried via the hud. the hud crashes on. display image. the texture crashes on insertion into the swf manager.
in the demo the movies load correctly. (i placed logs through out it) but it crashes before it gets a chance to render. So im stumped, the video was impressive and i am hoping i can use something similiar. Any help?
thanks
i am trying to get a full screen hud swf up and running. I have tried via texture->cegui and i have tried via the hud. the hud crashes on. display image. the texture crashes on insertion into the swf manager.
in the demo the movies load correctly. (i placed logs through out it) but it crashes before it gets a chance to render. So im stumped, the video was impressive and i am hoping i can use something similiar. Any help?
thanks
Final Creations - Tech Leader For 'The Broken'
v2i - Tech Leader For Architectual Sim.
Ogre Enthusiast
v2i - Tech Leader For Architectual Sim.
Ogre Enthusiast
- independentCreations
- Greenskin
- Posts: 121
- Joined: Sat Jan 07, 2006 7:30 am
- Location: Gold Coast - Australia
k so it now progresses a bit further. i am using a texture for cegui. if i didnt mention that before. anywya i can get the texture to play and everything and reapply to cegui_texture and everything except for one call.
Inside
this call
and i am now out of my knowledge ring. aka ogre
I have tried both my own and your sample clips.
Any ideas stone cold or anyone else?? thanks
Inside
Code: Select all
SwfTexture::renderToTexture(Real timeSinceLastFrame)
Code: Select all
mMovieInterface->display();
I have tried both my own and your sample clips.
Any ideas stone cold or anyone else?? thanks
Final Creations - Tech Leader For 'The Broken'
v2i - Tech Leader For Architectual Sim.
Ogre Enthusiast
v2i - Tech Leader For Architectual Sim.
Ogre Enthusiast
- independentCreations
- Greenskin
- Posts: 121
- Joined: Sat Jan 07, 2006 7:30 am
- Location: Gold Coast - Australia
- independentCreations
- Greenskin
- Posts: 121
- Joined: Sat Jan 07, 2006 7:30 am
- Location: Gold Coast - Australia
- independentCreations
- Greenskin
- Posts: 121
- Joined: Sat Jan 07, 2006 7:30 am
- Location: Gold Coast - Australia
i get these errors when i try and use the demo exactly like it is supposed to
then later
Code: Select all
11:14:32: Parsing script camera.material
11:14:32: An exception has been thrown!
-----------------------------------
Details:
-----------------------------------
Error #: -2147467263
Function: D3D9HLSLProgram::loadFromSource
Description: Cannot assemble D3D9 high-level shader directX_ps_color Errors:
error X3539: ps_1_x is not supported in this version of the compiler
.
File: ..\src\OgreD3D9HLSLProgram.cpp
Line: 63
Stack unwinding: <<beginning of stack>>
11:14:32: High-level program directX_ps_color encountered an error during loading and is thus not supported.
11:14:32: An exception has been thrown!
-----------------------------------
Details:
-----------------------------------
Error #: -2147467263
Function: D3D9HLSLProgram::loadFromSource
Description: Cannot assemble D3D9 high-level shader directX_ps_image Errors:
error X3539: ps_1_x is not supported in this version of the compiler
.
File: ..\src\OgreD3D9HLSLProgram.cpp
Line: 63
Stack unwinding: <<beginning of stack>>
11:14:32: High-level program directX_ps_image encountered an error during loading and is thus not supported.
Code: Select all
11:14:32: Warning: material swf_hud1_ImageMat_0 has no supportable Techniques on this hardware, it will be rendered blank.
Final Creations - Tech Leader For 'The Broken'
v2i - Tech Leader For Architectual Sim.
Ogre Enthusiast
v2i - Tech Leader For Architectual Sim.
Ogre Enthusiast
- independentCreations
- Greenskin
- Posts: 121
- Joined: Sat Jan 07, 2006 7:30 am
- Location: Gold Coast - Australia
i dont get the material script errors in open gl. but i still get my display crash. when the swfmanager calls the textures renderToTexture function.
i have a Nvidia Geforce 8880 GTS, but i know it isnt that. drivers up to date aswell.
i have a Nvidia Geforce 8880 GTS, but i know it isnt that. drivers up to date aswell.
Final Creations - Tech Leader For 'The Broken'
v2i - Tech Leader For Architectual Sim.
Ogre Enthusiast
v2i - Tech Leader For Architectual Sim.
Ogre Enthusiast
- independentCreations
- Greenskin
- Posts: 121
- Joined: Sat Jan 07, 2006 7:30 am
- Location: Gold Coast - Australia
- independentCreations
- Greenskin
- Posts: 121
- Joined: Sat Jan 07, 2006 7:30 am
- Location: Gold Coast - Australia
these forums act as a good self bounce message board. i solved the problem with my project. i did'nt have th materials and the shader files in my resource directories. Still, dosn't work in dx so i am gunna try and get round that.
@stonecold - nice wrapper. is there anywhere i can go to have a look at what gameswf supports in the way of developing the flash files. thanks
@stonecold - nice wrapper. is there anywhere i can go to have a look at what gameswf supports in the way of developing the flash files. thanks
Final Creations - Tech Leader For 'The Broken'
v2i - Tech Leader For Architectual Sim.
Ogre Enthusiast
v2i - Tech Leader For Architectual Sim.
Ogre Enthusiast
-
- Halfling
- Posts: 50
- Joined: Wed Oct 19, 2005 1:53 pm
stoneCold about the thread in the link below, did you find what do I have to do to bring up vector graphics elements over pictures elements in ogreSWF?
http://www.ogre3d.org/phpBB2/viewtopic. ... ht=ogreswf
Thanks very much for your help.
http://www.ogre3d.org/phpBB2/viewtopic. ... ht=ogreswf
Thanks very much for your help.
- stoneCold
- OGRE Expert User
- Posts: 867
- Joined: Fri Oct 01, 2004 9:13 pm
- Location: Carinthia, Austria
- x 1
I just retried it, and when I create the vector graphics + text myself it just works without problems.
Here your .FLA changed by myself:
http://www.savefile.com/files/462120
greetings
Here your .FLA changed by myself:
http://www.savefile.com/files/462120
greetings
- independentCreations
- Greenskin
- Posts: 121
- Joined: Sat Jan 07, 2006 7:30 am
- Location: Gold Coast - Australia
- stoneCold
- OGRE Expert User
- Posts: 867
- Joined: Fri Oct 01, 2004 9:13 pm
- Location: Carinthia, Austria
- x 1
Actually I can't tell you more than google can. GameSwf is very/completely undocumented, a bit buggy and developed without a master plan. Therefore I'm currently writing my own alternative (renderer/script interpreter) to get rid of gameSwf. The idea is to make ogreSwf independent from gameSwf, because gameSwf is the reason for 90% of the problems that occur during my development.independentCreations wrote:...is there anywhere i can go to have a look at what gameswf supports in the way of developing the flash files...
That's already much more than I actually wanted to tell publicly .
You'll read more about it soon.
-
- Halfling
- Posts: 50
- Joined: Wed Oct 19, 2005 1:53 pm
Hi stoneCold, I get the panel_REmodified and get the latest cvs ogreSWF and compiled against ogre 1.2.5, and I am still habing that problem.
Below I putted a screenshot of panel_REmodified running in a commom swf viewer in windows, and another one with the same swf file running inside ogreSWF.
In windows:
In ogreSWF:
Again the vector graphics didn't appear.
For less than one second I could see vector graphic in ogreSWF, it seens to be in the first render frame, but they disapear after.
Below I putted a screenshot of panel_REmodified running in a commom swf viewer in windows, and another one with the same swf file running inside ogreSWF.
In windows:
In ogreSWF:
Again the vector graphics didn't appear.
For less than one second I could see vector graphic in ogreSWF, it seens to be in the first render frame, but they disapear after.
-
- Gnoblar
- Posts: 8
- Joined: Wed Feb 21, 2007 12:23 pm
Very nice plug-in and good work.
Though I have some problems building and linking it.
Im using VC7.1 and there was only a 8.0 solution included, so I just changed the .vcproj version parameter to 7.1 and added it to a new solution. This seems to work so far.
I tried using ogre release libs and building ogreswf as a multi-threaded DLL in release. And I also tried building it as multi-threaded debug dll in debug. And i built ogre and my project using the settings I used in ogreswf.
I had problems with Ogre::MemoryManager and calloc which I fixed by adding <OgreNoMemoryMacros.h> everywhere ogre.h was.
But now I get these linker errors. I thought it was due to different types of libraries but I have checked and doubled checked and they are all the same i.e. multi-threaded DLL.
I haven't implented any code so far, I added #include "ogreswf.h" and input ogreswf.lib
Though I have some problems building and linking it.
Im using VC7.1 and there was only a 8.0 solution included, so I just changed the .vcproj version parameter to 7.1 and added it to a new solution. This seems to work so far.
I tried using ogre release libs and building ogreswf as a multi-threaded DLL in release. And I also tried building it as multi-threaded debug dll in debug. And i built ogre and my project using the settings I used in ogreswf.
I had problems with Ogre::MemoryManager and calloc which I fixed by adding <OgreNoMemoryMacros.h> everywhere ogre.h was.
But now I get these linker errors. I thought it was due to different types of libraries but I have checked and doubled checked and they are all the same i.e. multi-threaded DLL.
I haven't implented any code so far, I added #include "ogreswf.h" and input ogreswf.lib
Code: Select all
EventCallbackManager.obj : error LNK2005: "void __cdecl xP_GetPrivateProfileString(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > &,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >)" (?xP_GetPrivateProfileString@@YAXV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@00AAV12@0@Z) already defined in Application.obj
EventCallbackManager.obj : error LNK2005: "class Ogre::RaySceneQuery * raySceneQuery" (?raySceneQuery@@3PAVRaySceneQuery@Ogre@@A) already defined in Application.obj
EventCallbackManager.obj : error LNK2005: "class SwfTexture * mCubeTexture" (?mCubeTexture@@3PAVSwfTexture@@A) already defined in Application.obj
EventCallbackManager.obj : error LNK2005: "class SwfTexture * mPanelTexture" (?mPanelTexture@@3PAVSwfTexture@@A) already defined in Application.obj
EventCallbackManager.obj : error LNK2005: "class SwfPanel * mPanel" (?mPanel@@3PAVSwfPanel@@A) already defined in Application.obj
EventCallbackManager.obj : error LNK2005: "class SwfHUD * mClock" (?mClock@@3PAVSwfHUD@@A) already defined in Application.obj
EventCallbackManager.obj : error LNK2005: "float x" (?x@@3MA) already defined in Application.obj
EventCallbackManager.obj : error LNK2005: "float y" (?y@@3MA) already defined in Application.obj
EventCallbackManager.obj : error LNK2005: "class Ogre::Vector3 cameraDirection" (?cameraDirection@@3VVector3@Ogre@@A) already defined in Application.obj
main.obj : error LNK2005: "void __cdecl xP_GetPrivateProfileString(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > &,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >)" (?xP_GetPrivateProfileString@@YAXV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@00AAV12@0@Z) already defined in Application.obj
main.obj : error LNK2005: "class Ogre::RaySceneQuery * raySceneQuery" (?raySceneQuery@@3PAVRaySceneQuery@Ogre@@A) already defined in Application.obj
main.obj : error LNK2005: "class SwfTexture * mCubeTexture" (?mCubeTexture@@3PAVSwfTexture@@A) already defined in Application.obj
...
- stoneCold
- OGRE Expert User
- Posts: 867
- Joined: Fri Oct 01, 2004 9:13 pm
- Location: Carinthia, Austria
- x 1
@ TiraX:
You should not #include "ogreswf.h" in your application but #include "SwfManager.h" instead.
Sorry that the answer to your question was delayed, but it took some minutes to write all this down
--------------------------------------------------------------------------------------------------------------------------------------------
I'll take the chance and announce my decision to completely drop gameSwf as basis for ogreSwf.
As I already stated some times in this thread I never was satisfied with the quality of gameSwf (bugged code, no support/community, no real lead developer(s), missing basic!! ActionScript things like "_width" or "_height", bugs like the above ---> depth ordering issues, etc., etc.).
Therefore I decided some time ago to completely drop gameSwf as already stated. Currently I'm working on the new ogreSwf version, which is nothing else than a complete restart of the project (started with ogreSwf_main.h/.cpp some days ago ).
I make use the great SwfTools (http://swftools.org) to write a converter to my own file format called ".ogreswf" which then can be loaded by ogreSwf. This file format is not targeted at a low file size (like SWF is), but to be easily readable and to be performant and to be read directly to memory.
The current state:
*) the converter:
A converter has been written called "swf2ogreswf", it's task is to convert any .swf you give it to ogreSwf's own file format (currently already supports to include image files and sounds, script parsing will follow after I finished the resource stuff....storing fonts and vector data is still missing, but I already have experimental code which is waiting to be slapped in)
*) the debugger:
While writing the converter I wrote a test application to extract data from the .ogreswf format again. Somehow the idea popped to my mind that it could be useful to be able to debug the .ogreswf file generated by the above converter, therefore I'm thinking of releasing this test application as well (will be modified to be a user friendly debugging tool)
*) the plugin:
My latest sweetheart
As told I was frustrated by gameSwf, because of it's at some edges poor quality. Therefore my target, after deciding to drop gameSwf, was to write all rendering/script parsing code myself, because then I(/ogreSwf) won't rely on any 3rd party code any longer (which could make me bump my head at the keyboard again )
As told the converter currently supports to convert images and sounds from .swf to .ogreswf. The last days I actually started to write the ogreSwf plugin itself from scratch. Within just a few hours of coding I got the plugin to load Ogre::Textures (wrapped by ogreSwf::TextureResource) and my own ogreSwf::SoundResource class out of an .ogreswf file.
Plus, I created a simple class called ogreSwf::SoundInstance which could/should be inherited by the user to bind ogreSwf to his sound engine of choice. Currently I'm using FMOD to test it and it works fabolous with VERY little effort (making me grin every time I run the demo application )
Binding FMOD to ogreSwf is as simple as shown below...(plus setting a callback)
*) It all leads to...
I'm really excited of developing ogreSwf again.
The frustration by fighting with/against gameSwf has now been replaced by pure passion and creativity. I really love working on it again and will keep you all updated here if you are interested
[edit]: if you have wishes regarding the API, feature requests, ... feel free to post them here, it's easier to plan features at an early state, so I'm interested in your needs...
greetings
You should not #include "ogreswf.h" in your application but #include "SwfManager.h" instead.
Sorry that the answer to your question was delayed, but it took some minutes to write all this down
--------------------------------------------------------------------------------------------------------------------------------------------
I'll take the chance and announce my decision to completely drop gameSwf as basis for ogreSwf.
As I already stated some times in this thread I never was satisfied with the quality of gameSwf (bugged code, no support/community, no real lead developer(s), missing basic!! ActionScript things like "_width" or "_height", bugs like the above ---> depth ordering issues, etc., etc.).
Therefore I decided some time ago to completely drop gameSwf as already stated. Currently I'm working on the new ogreSwf version, which is nothing else than a complete restart of the project (started with ogreSwf_main.h/.cpp some days ago ).
I make use the great SwfTools (http://swftools.org) to write a converter to my own file format called ".ogreswf" which then can be loaded by ogreSwf. This file format is not targeted at a low file size (like SWF is), but to be easily readable and to be performant and to be read directly to memory.
The current state:
*) the converter:
A converter has been written called "swf2ogreswf", it's task is to convert any .swf you give it to ogreSwf's own file format (currently already supports to include image files and sounds, script parsing will follow after I finished the resource stuff....storing fonts and vector data is still missing, but I already have experimental code which is waiting to be slapped in)
*) the debugger:
While writing the converter I wrote a test application to extract data from the .ogreswf format again. Somehow the idea popped to my mind that it could be useful to be able to debug the .ogreswf file generated by the above converter, therefore I'm thinking of releasing this test application as well (will be modified to be a user friendly debugging tool)
*) the plugin:
My latest sweetheart
As told I was frustrated by gameSwf, because of it's at some edges poor quality. Therefore my target, after deciding to drop gameSwf, was to write all rendering/script parsing code myself, because then I(/ogreSwf) won't rely on any 3rd party code any longer (which could make me bump my head at the keyboard again )
As told the converter currently supports to convert images and sounds from .swf to .ogreswf. The last days I actually started to write the ogreSwf plugin itself from scratch. Within just a few hours of coding I got the plugin to load Ogre::Textures (wrapped by ogreSwf::TextureResource) and my own ogreSwf::SoundResource class out of an .ogreswf file.
Plus, I created a simple class called ogreSwf::SoundInstance which could/should be inherited by the user to bind ogreSwf to his sound engine of choice. Currently I'm using FMOD to test it and it works fabolous with VERY little effort (making me grin every time I run the demo application )
Binding FMOD to ogreSwf is as simple as shown below...(plus setting a callback)
Code: Select all
class mySwfSound : public ogreSwf::SoundInstance
{
public:
mySwfSound(char* buf, size_t size) : SoundInstance()
{
FMOD_CREATESOUNDEXINFO create_params = { sizeof(FMOD_CREATESOUNDEXINFO) };
create_params.length = size;
mSystem->createStream(buf, FMOD_HARDWARE | FMOD_OPENMEMORY, &create_params, &mSound);
mSound->setMode(FMOD_LOOP_NORMAL);
}
virtual ~mySwfSound(void)
{
mSound->release();
}
void mySwfSound::play(void)
{
mSystem->playSound(FMOD_CHANNEL_FREE, mSound, false, &mChannel);
}
void mySwfSound::stop(void)
{
mChannel->stop();
}
protected:
FMOD::Sound* mSound;
FMOD::Channel* mChannel;
};
I'm really excited of developing ogreSwf again.
The frustration by fighting with/against gameSwf has now been replaced by pure passion and creativity. I really love working on it again and will keep you all updated here if you are interested
[edit]: if you have wishes regarding the API, feature requests, ... feel free to post them here, it's easier to plan features at an early state, so I'm interested in your needs...
greetings
Last edited by stoneCold on Wed Feb 28, 2007 7:07 pm, edited 1 time in total.
-
- Ogre Magi
- Posts: 1266
- Joined: Tue Aug 12, 2003 1:53 am
- Location: Melbourne, Australia
- x 1
- Contact:
excellent news! I assume there's a good reason why it can't use .swf directly so I'll trust you on that I know using 3rd party libs can be annoying but BetaJen has been wrapping the Cairo vector/bitmap lib which is looking really nice. Apparantly FireFox 3 is going to use it so it sounds pretty solid. Might save alot of hassle doing antialiased stuff (unlike gameswf) and supports svg
http://www.ogre3d.org/phpBB2/viewtopic. ... =betacario
http://www.ogre3d.org/phpBB2/viewtopic. ... =betacario
- stoneCold
- OGRE Expert User
- Posts: 867
- Joined: Fri Oct 01, 2004 9:13 pm
- Location: Carinthia, Austria
- x 1
As stated above I use SwfTools code to parse the SWF content (because it really would take me months/years to get anything as far as they got, if I wrote it all by myself), and because SwfTools are covered by the GPL there was no way for me to use them, except writing a converter to my own file formatVectrex wrote:... I assume there's a good reason why it can't use .swf directly so I'll trust you on that ...
(I want to keep ogreSwf LGPL as all of you might understand GPL would be dead end for using ogreSwf in any closed source project).
Though I already thought about creating an own file format before, because SWF is a format which is optimized for websites (small, compact, tiny) and is thus compressed and not very friendly to read into memory fast. So the benefit of an own file format is that I can design it as I wish and loading an Ogre::Texture (or anything else) out of an .ogreswf file is like eating cookies
[edit]: PLUS it should free you from quite any restriction/licensing issue with adobe, you might have when using/redestributing SWF files with your game.
I hope this clarifies it a bit
greetings
-
- Gnome
- Posts: 351
- Joined: Thu Oct 21, 2004 1:34 pm
- Location: Diepenbeek, Belgium
- x 3
- Contact:
Good job! I'm really looking forward to the first release of the new system. I'm now busy concluding a PocketPC project, but in a couple of weeks I'll be able to work with Ogre full-time again. Using flash to design our in-game user interfaces is one of the first things on the menu.
Good luck!
Greetz,
JeDi
Good luck!
Greetz,
JeDi