IRC Log Viewer » #firebreath » 2011-03-11

IRC Nick Time (GMT-7) Message
taxilian 00:03 here
Demetrius: how are things?
Demetrius 00:03 good how about you?
taxilian 00:03 not too bad
a little tired =] it's midnight here
where are you?
Demetrius 00:03 Should have asked for you're IRC name in my post
west coast (las vegas)
so 11 here
taxilian 00:03 ahh. not too far from where I am, then
I'm just in Utah County
so about 6 hour drive from there
Demetrius 00:03 yeah I know have a good number of friends that live in Utah
taxilian 00:03 hey, me too! ;-)
Demetrius 00:03 since its getting late want to do this tomorrow (or even better on Sat)or you up for it now?
taxilian 00:03 we can chat for a few minutes now
Demetrius 00:03 Cool
taxilian 00:03 I'll be working all day tomorrow, and that makes it harder to have a real discussion
Demetrius 00:03 agreed...what do you do?
taxilian 00:03 plugin development =] what else?
Demetrius 00:03 ROFL...go point
<- video game technical director for Petroglyph Games
www.endofnations.com
taxilian 00:03 cool., haven't heard of the company, but then I'm not much of a gamer
Demetrius 00:03 www.riseofimmortals.com
taxilian 00:03 looks pretty cool; so you're looking to do some games in the browser?
Demetrius 00:03 Maybe in the near future
taxilian 00:03 I won't lie; games in the browser can be a beast
Demetrius 00:03 The whole industry is moving to browser based / small device
I've done a few I know .... but it can be done and we have little choice as that's where the money is moving
taxilian 00:03 mainly because most game developers (in my experience) don't bother wtih things like avoiding global variables, clean shutdown, etc; these things are critical in the browser
fair enough
Demetrius 00:03 well this one does
taxilian 00:03 glad to hear it =]
Demetrius 00:03 was a enterprise architect before I went into the game industry 11 years ago
taxilian 00:03 I'm also going to start out with the assumption that you know OpenGL at the very least much better than I do
Demetrius 00:03 and have been building nothing but MMOs (massively multiplayer games) for the last 6 years
Know Open gl very well
helped NVIDIA debug thier linux drives on serveral occations
so anyway here's my thoughts on the open gl abstraction for firebeath
taxilian 00:03 sounds like a handy person to have around; I may be interested in somewhat of an exchange of services if you are interested
but let's talk about your abstraction ideas first =]
Demetrius 00:03 It should abstact the glcontext creation, page flipping, and potientially adding something glew to handle the wonderful world of extentions
oh and enumerating and picking pixel formats
taxilian 00:03 that sounds reasonable; are you familiar with doing OpenGL with CoreAnimation on mac?
Demetrius 00:03 Is Core animation a piece of software?
I've done plenty of animation both GPU and CPU...
taxilian 00:03 answers that question =] CoreAnimation is a graphics framework
Mac only
it's an Apple thing
Demetrius 00:03 Nope dunno that particular piece of software
taxilian 00:03 CoreAnimation has some interesting characteristics on the Mac; one of the big ones (as I understand it; I'm repeating things I've been told, so I may be wrong about some things) is that it creates the OGL context for you
and it seems that at least in most cases (still looking into this) you don't get to decide when to draw, the browser does
though you can ask it to draw which should result in a callback telling you to
Demetrius 00:03 at least in games we'll put the rendering on a separate theard
otherwise we risk too much latency in user response
taxilian 00:03 that is nearly always the best way, IMO; however, you don't always get to control that
there are other cases (particularly CoreGraphics on mac) where the only way to draw with OpenGL is to set up the context to render off-screen and then blit it to the screen when the browser tells you to draw
Demetrius 00:03 *puke*
taxilian 00:03 similarly if you want to support windowless plugins on windows you ahve to do the same thing (though your particular use case you probably wouldn't care)
yeah, I know
however, CoreGraphics is the only model supported by all browsers on mac
in both 32 and 64 bit modes
Demetrius 00:03 I worked on a game called earth and beyond and we did the same thing on windows and IE 6
taxilian 00:03 which sure makes it appealing
drawing offscreen, then blitting with GDI?
Demetrius 00:03 yeap
b/c ie 6 only drew to front buffer
so we blit to back buffer and remapped mouse clicks
suxed
off topic sorry
taxilian 00:03 hmm; strange; I've used DirectX in IE6 without doing anything special
but then I don't know for sure what kind of double buffering we were using
if any
Demetrius 00:03 otherway around
used the browser to render "help" screens etc in game
taxilian 00:03 ahh
Demetrius 00:03 so we blit the 2d browser into the 3d sceen
taxilian 00:03 so you needed windowless mode
Demetrius 00:03 oh yes
taxilian 00:03 oh
huh
interesting
incidently, how are you with DirectX?
Demetrius 00:03 better than I am with open gl
well to be clear better with directx 9c..not so much 10 or 11
taxilian 00:03 excelent; you and I need to stay in contact, my friend; I think I can help you with plugins quite a bit, and I need some definite help with rendering on windows
but anyway, back on topic =]
Demetrius 00:03 np
So CoreGraphics is a browser thing?
taxilian 00:03 not at all
CoreGraphics is kinda like GDI
Demetrius 00:03 ah
taxilian 00:03 and CoreAnimation somewhat (not really, but close metaphore) like DirectX
Demetrius 00:03 got it
taxilian 00:03 most importantly, CoreAnimation allows you to use OpenGL in the browser
whereas CoreGraphics does not
Demetrius 00:03 really
can just use coregraphics
taxilian 00:03 since this isn't nearly confusing enough, there is a deprecated drawing mode called QuickDraw
Demetrius 00:03 err can't
now I remember quickdraw
taxilian 00:03 which doesn't allow any accelerated drawing, but if you can use it you can create an OGL context and just kinda float it in the right place and make it work
it's a little tricky, but not bad
so if you absolutely need fast drawing performance on Mac, you have to use QuickDraw on firefox 3.6 and lower and CoreAnimation everywhere else
Demetrius 00:03 I would have thought on the mac you'd just use it like an x server
so what I know about mac
so = shows
taxilian 00:03 yeah, I'm afraid not
anyway, so the only thing that works everywhere is CoreGraphics; 64 bit browsers don't support QuickDraw (and it's deprecated anyway) and Firefox 3.6 and earlier don't support CoreAnimation
but the only way to do OpenGL with CoreGraphics is offscreen and blit
Demetrius 00:03 that's sad
taxilian 00:03 yeah
but you start to see the things that really need to be abstracted if we're going to do a good job of this?
Demetrius 00:03 well still seems do able, perhaps we just add some utility functions on the Mac version of the opengl context class
taxilian 00:03 so it seems to me that ideally we would "automatically" support these things; FireBreath asks your plugin what it wants to draw wtih and you tell it "OpenGL"
if it can, it sets up CoreAnimation and gives you callbacks
if it can't, it tries QuickDraw
and sets up a thread to draw on
and gives you callbacks
on windows, it sets it up on the HWND if your'e windowed and starts a thread for drawing
and gives you callbacks
etc
then windowed plugins on windows could also do the "offscreen + blit" mode (hacky, I know, but the best you can do with windowless)
Demetrius 00:03 nearly the same but prefer delegates to call backs
taxilian 00:03 so that it's pretty close to the same everywhere
clarify?
Demetrius 00:03 delegates are typeless to the caller
i.e. the caller does not need to strongly type of callback but its still typed checked
taxilian 00:03 ahh. yes, of course
we use boost::bind for that
Demetrius 00:03 google "fastdelegate"
taxilian 00:03 that's what I meant by callbacks, actually
Demetrius 00:03 we are on same page
on windows no need to offscreen+blit
taxilian 00:03 well, we could also use FireBreath's event system, but I'm open to both possibilities; this is kinda turning the current PluginWindow system on its ear anyway
you do if you're windowless; you don't if you're windowed
or so amackera has found
I haven't tried it myself; you're welcome to
Demetrius 00:03 hrm
wonder if windowless could be windowed with no boarder
supported since XP SP2
havne't tried it ...good expiement
taxilian 00:03 do you know how windowless plugins work?
Demetrius 00:03 perhaps not
are they just using browser HWND?
taxilian 00:03 more or less; more specifically they are given an HDC to draw in by the browser
and obliged to draw only when called upon
you may notice that all mac plugins are actually windowless
but the advantage is that you can layer other html elements over the top of a windowless plugin
a windowed plugin will "float" over everything else on the page no matter what you do
Demetrius 00:03 got it
taxilian 00:03 that's why you had to do it taht way on your IE6 control; so that the HTML you layered over your game would show up
otherwise you could have just drawn normally
Demetrius 00:03 I thought we did it because ie6 would only draw to front buffer and we were doubled buffered
so on page flip we'd lose the image
taxilian 00:03 if you're windowed, doesn't matter what IE6 does
because you aren't drawing to IE6
you're drawing to an HWND that is hosted inside the IE6 HWND
Demetrius 00:03 k
taxilian 00:03 in your own context
and you do whatever you want
Demetrius 00:03 where are you thinking to hanging the open gl abstraction creation off of?
firebreath's window class?
taxilian 00:03 that's really the question
I'm not quite sure
it could be a different type of PluginWindow
one that is much "smarter"
Demetrius 00:03 I like that
taxilian 00:03 or it could be something that is instantiated from inside your plugin class and you give it the PluginWindow, which it then knows what to do with
the first is much cleaner from a user standpoint; much more integrated
the second more backwards compatible
you can actually provide factory functions for creating the PluginWindow classes; it might make sense for now to create alternate versions of the PluginWindow classes that support our new abstraction
Demetrius 00:03 Could do it like a factory, hand our factory you window and your intent for open gl and you get back our open gl context class
taxilian 00:03 then you'd just have to add some lines to your Factory class and you'd get the OpenGL version
Demetrius 00:03 lol
basically same idea
taxilian 00:03 heh. the difference is whether the initial PluginWindow is created as the opengl capable version or if it's something you provide with a PluginWindow and it knows what to do
the latter is probably more in keeping with the current design of FireBreath
Demetrius 00:03 agreed
taxilian 00:03 however, if a design isn't fulfilling its purpose it should be changed; I'm open to the idea, as long as the old way is still an option
Demetrius 00:03 seems like we could hook the same place PG::PluginWindow is created to take an abstract version of the open gl params
taxilian 00:03 so PluginWindow is created by calling a method on the Factory that you override; if you have made a plugin with fbgen, that's Factory.cpp
Demetrius 00:03 FB::PluginWindowWin is derived from FB::PluginWindow....we could make FB::OpenGlWindow derived from PB::PluginWindow
taxilian 00:03 most people don't override those methods, so it goes to the FactoryBase base class
right; of course, then we'd need to make a FB::OpenGLWindowWin, WinWindowless, MacCG, MacQD, MacCA...
Demetrius 00:03 agreed
taxilian 00:03 the advantage to waiting until the plugin gets it (AttachedEvent) would be that you could provide more configuration at startup time and reuse more code
because you could base it off of PluginWindowWin, PluginWindowMacCA, ....
rather than replacing them
we could also use virtual multiple inheritance, of course, but that's… messy...
Demetrius 00:03 agreed ...so put a creation function on the winodow (i.e. FB::PluginWindowMacCoca) to create the open gl context from it?
!multiple inheritance
agreed too messy
taxilian 00:03 well, that begs the question of whether we really want to have OpenGL be a required dependency
in fact, the more I think about that, the more I think that may drive this decision
Demetrius 00:03 true....could just make it a fb code generation time decision though
i.e. ifdef it
taxilian 00:03 what I would propose is that it become a "FireBreath Library"; that's just a fancy name for a project that lives in src/libs/ and can be easily included in your project by doing "add_firebreath_library(fb_opengl)"
Demetrius 00:03 nice
taxilian 00:03 then you'd use something like FB::OGL::MakeOpenGL(win) as a factory method
the fb_opengl library knows about the pluginwindows and how to use them
how to set them up to do whatever we want them to do
Demetrius 00:03 I like that, we leverage existing FB without messing around in its bowls
taxilian 00:03 right
which also makes it more reusable with other systems, potentially
and definitely decreases the risk of adding bugs with the change
Demetrius 00:03 like it
taxilian 00:03 also, avoids having lots of #ifdefs, which I dislike
Demetrius 00:03 I like traiting over #ifdefs but get to the same place
either way your approach avoids it
taxilian 00:03 we may (probably will) still end up changing some of the underlying logic in the long run to make it smoother, but that's fine
Demetrius 00:03 so how do you want to proceed
I like passing header files back and forth to get a rough idea of interfaces
taxilian 00:03 how do you suggest? I have time to answer questions, make suggestions, and help you find your way around in the code… particularly if you are willing to answer some occasionally questions for me. I dont' have any time to do any actual coding on this
that sounds fine; how familiar are you with git?
Demetrius 00:03 decently so
use it at home
for all home prjs
taxilian 00:03 http://progit.org/book is a great resource, if you haven't seen it
but anyway
what I would recommend is that you fork FireBreath on github
and then you can commit your changes for me to look at
you could even give me access to the repository so I could make changes and commit them back
gives us a history of what we consider and makes it easy to pull into the main repo when we're done
Demetrius 00:03 host it at github?
the fork
taxilian 00:03 that's where FireBreath is hosted
so yeah
you just create an account, click the "fork" button, and 60 seconds later you have your own fork
Demetrius 00:03 haven't sign up for a github account but can't be hard
taxilian 00:03 nah
Demetrius 00:03 nice
I'll do that
taxilian 00:03 are you familiar with the concept of public key authentication?
Demetrius 00:03 oh yes
taxilian 00:03 i.e. ssh authorized_keys?
Demetrius 00:03 yeap
taxilian 00:03 that's how github auth works
Demetrius 00:03 got it
taxilian 00:03 I could host it on my git server at firebreath.org, but we're not planning for this to be closed, so I see no reason
Demetrius 00:03 cool
agreed
Alright I'll set up the fork and go a first pass at interfaces, then if you could provide feedback that would be great and we'll see how much progress we make
taxilian 00:03 do you have a IM account that you're on during the day? might be easier than trying to keep up with the IRC room (though you'd be surprised how useful the guys around here can be)
absolutely
Demetrius 00:03 this is something I'm doing on the side because I know this is where the game industry is going....but still have to do my day job
taxilian 00:03 I understand
Demetrius 00:03 yeap...cmdcode on yahoo, duthws jabber
taxilian 00:03 jabber is gtalk? or other?
Demetrius 00:03 gtalk
taxilian 00:03 [email protected]
I'm pretty easy to find just about anywhere; I'm almost always taxilian
'xept it was taken on twitter, so I'm nailixat there
Demetrius 01:03 just sent you invite
taxilian 01:03 tried to add you
not sure if it works
gtalk is odd sometimes
well, I'm off to bed. thanks for stopping in, and good night everyone!
Demetrius 01:03 night
Ed__ 07:03 Been building my plugin against firebreath-FireBreath-f25c582 for a while, and just moved to 1.4: firebreath-FireBreath-e8dd4cd
Now, I am getting a LGHT0001 error evrytime I try to build
even if I create a vanilla project.
Using VS 2008 Std and Wix 3.5 seem up to date too
Ed__ 08:03 Also tried the full 1.4.1 release, and I still get the same error..
taxilian 08:03 morning all
Ed__: have you made any modifications to your .wxs file/
neilg_ 08:03 Hey Richard, if you get a chance today it would be fantastic to find out what's needed to get OpenGL working inside Core Animation. At least today I'm dedicated to the problem - but it's very odd!
Ed__ 08:03 Hi Taxilian.
I tried making a vanilla project too. same error..
taxilian 08:03 neilg_: have you tried setting it async?
Ed__: really? that's really odd. what version of WiX?
Ed__ 08:03 Yeh, I am confused. 3.5
neilg_ 08:03 Yup. Async or not, telling it to setNeedsDisplay... no callbacks to draw are called. :(
taxilian 08:03 I'll see what I can dig up; it'll be a bit later today, though, when Eric gets into the office
also after I get into the office, since I'm still at home
neilg_ 08:03 That's fine, I only wanted to remind you. No pressure. :)
Hopefully I'll get it figured out anyway!
taxilian 08:03 Ed__: can you send me the build log? pastebin?
Ed__ 08:03 yeh cool. gimme a bit to produce something..
Ah. Wix 3.0
taxilian 08:03 that should still work
Ed__ 08:03 If I go back to firebreath-FireBreath-f25c582, it builds fine.
taxilian 08:03 Ed__: can you send me the build log? pastebin?
Ed__ 08:03 yep. log is coming..
taxilian 08:03 =]
taxilian 08:03 Ed__: I gotta go get ready and go to work. I'll be online in an hour or less
it may be that we've inadvertantly broken WiX 3.0 support, though I thought it was working
you could try 3.5, or if you send me the log I might be able to figure out what is going on
bbl
Ed__ 08:03 Hi Taxilian, I have put a vanilla project build log up on paste bin: http://pastebin.com/Gnqhhv5r
expires (24hrs)
nitrogenycs 08:03 taxilian_away: sorry, my inet is flaky
nomuna 09:03 Hello everyone.
I have a question regarding the install.js in the project directory. What is it for? How can I use it?
Ed__ 09:03 Hi nomuna. Not used it myself so far, but it think it is a handy set of JS functions you can use across browsers
just add a link in your page..
nomuna 09:03 I thought it was used to register the plugin on browsers. Chrome was not showing the name and version of my plugin. And I asked around. The developer of OOCaller (on github) told me he had to write a manifest.js to make chrome show the plugin info. I thought it was something like that.
Ed__ 09:03 Seems to be some wrapper routines to check whether plugin is installed
nomuna 09:03 I see.. AciveX detection for IE and stuff. Should have looked closely myseld. Duh. :D
Thanks anyway.
Ed__ 09:03 S'cool. seems to be a work in progress..
Taxilian: If you see this; I have installed Wix 3.5, and I can now build the vanilla plugin. I am now going to go and check mine.
Hoping this is all the issue was. Wierd though..
veosotano 09:03 hi there
is anyone around?
nomuna 09:03 Hi
veosotano 09:03 how's it going? :D
Ed__ 09:03 Taxilian: Confirmed - the issue was just due to WiX 3.0. Now happily running 1.4.1. Thanks for your time..
nomuna 09:03 ok
veosotano 09:03 hi all: I'm starting with the development of a cross-browser library used as a browser plug-in, and I think FireBreath could be a very good fit
nomuna 09:03 Can recommend it. So far good experience.
IE, Chrome, Firefox.
veosotano 09:03 I'm currently at the prototyping phase
nomuna 09:03 Linux & Windows
veosotano 09:03 so I guess it is a future option for me
but I thought maybe anyone of you could help me figure something out
I don't know in what language to do it
nomuna 09:03 It is in C++
veosotano 09:03 yea
nomuna 09:03 Follow the video tutorials. They'll get you started.
veosotano 09:03 but do you think I should just jump ahead and try to do it in C++?
nomuna 09:03 You have any experience with C++?
veosotano 09:03 not that much
I've coded Objective-C
but my main area of expertise is PHP
:S
nomuna 09:03 I think you'll be fine.
veosotano 09:03 I've looked at scripting languages
python
javascript (on top of node.js)
even php
nomuna 09:03 good for ya.
veosotano 09:03 but I really can't figure out what would be best...
nomuna 09:03 C++
veosotano 09:03 for prototyping also?
nomuna 09:03 You get a prototype in C++ after generating a plugin with the framework. Adjust it to your needs and use it.
veosotano 09:03 oh, I think I didn't explain what I mean with prototype
nomuna 09:03 js prototype?
veosotano 09:03 you see, I've written a specification for a language
and now I'm starting with all the stuff
I'm writing a parser
then using a graphics library, maybe Cairo
so I need to create some sort of proof-of-concept
do you still think I should do that in C++?
still there?
well, thanks anyway ;)
nomuna 09:03 Sorry I was off for a while. So we are talking about GUI for the plugin or what?
veosotano 09:03 np
so the project is about creating a new standard for writing web sites
nomuna 09:03 I have seen that if you say that you want gui for the plugin (i am on linux) they search for gtk libraries.
veosotano 09:03 sort of what html + css is
no gui
i just need to draw inside a frame
and register mouse and other user interfaces (mice, etc)
nomuna 09:03 Nope. It is a framework for building browser plugins.
Sounds like GUI to me.
veosotano 09:03 yea
but I mean no windows, buttons, alert boxes etc
nomuna 09:03 frame == gui for me. You wanna draw inside it too... You in Windows or Linux or Mac?
veosotano 09:03 I'm on a Mac currently
and that's where I'll be developing
but the plug-in should be cross-platform
nomuna 09:03 I can't help you with Mac. Have no development experience with this kind of stuff. I have seen that the person under the nick taxian is a Mac developer... May be you could ask him...
veosotano 09:03 do you know when he will be online?
nomuna 09:03 I don't think that there is such a thing.
veosotano 09:03 huh?
what thing?
nomuna 09:03 Cross platform plugin.
veosotano 09:03 ...
a browser plug-in for windows, mac and linux?
isn't the very FireBreath about that?
nomuna 09:03 Firebreath gives you stubs for different platforms. You compile/build it for the specific platform.
veosotano 09:03 yea that's ok for me :)
nomuna 09:03 NPAPI is API for Chrome and Firefox. The generated plugin uses the API and can be used by those browsers whether the browser is in Linux, Mac or Windows.
veosotano 09:03 right
but could the plug-in be written in python for example?
nomuna 09:03 For linux you get npYourpluginName.so, 4 windows npYourPlugin.dll for Mac I don't know.
jshanab_wcw 09:03 I would like to try directX for my video in the plugin. Is there a macro alread for including it
nomuna 09:03 DirectX and Mac?
:S
veosotano 09:03 that was another guy :P
jshanab_wcw 09:03 directX on windblows
nomuna 09:03 Sorry.
veosotano 09:03 hehe
jshanab_wcw 09:03 That would be against someones religon
veosotano 09:03 hahah
by the way, are you interested in knowing more about the project?
nomuna 09:03 Python can use C modules AFAIK. May be you can use the generated, compiled stuff from firebreath and extend it with you Python code... But I am speculating here... Ask the project people. I am a user just like you.
But if you know Objective-C I think you will be just fine. I know a bit C myself. A beginner level knowledge of C++. I had no problem so far.
veosotano 09:03 my worries with using Objective-C is that how do you get that to compile on windows or linux
if it wasn't for that I'd go ObjC straight ahead
nomuna 09:03 You get stubs written in C++ for linux and windows.
veosotano 09:03 could you explain stubs?
nomuna 09:03 I use make under linux or sometimes codeblocks. Under windows I used Visual Studio Express.
veosotano 09:03 but does VSE compile ObjC?
nomuna 09:03 Like Plugin version of "hello world". You extend it so that it becomes your Cool Game With Busty Babes running around...
veosotano 10:03 in linux I guess I could use cgg just fine
i mean gcc
nomuna 10:03 You use Visual Studio Xpress in Windows. For Mac I think they generate XCode project. As I said try it out yourself...
veosotano 10:03 :D
nomuna 10:03 Cmake is there and it detects your Compilers .
CMake generates the stubs looking at your platform ...
It is easy try it out man. Watch the Video tutorials... Not hard. Really.
veosotano 10:03 with C++ right?
nomuna 10:03 yeah.
veosotano 10:03 right
I'll try that
thanks :D
nomuna 10:03 You are welcome.
taxilian 10:03 I am back (ish)
neilg_: you have to draw in that funciton It old you about
neilg_ 10:03 In what function?
taxilian 10:03 drawInCGLContext
if Async=no then you call setNeedsDraw and it will call drawInCGLContext
if async=yes it will call something like CanDraw or some such
neilg_ 10:03 Right, I know that - my problem is that isn't getting called by Cocoa
I tell it setNeedsDisplay so it _should_ be called... but isn't
taxilian 10:03 have you tried using async?
neilg_ 10:03 I have this working when it's the only layer and attached to a view. But I attached it to the CALayer created by FB using addSubLayer and now drawinCGLContext isn't called
Yep, I've tried everything I can possibly think of. :)
I've got a very simple example (taken from the WebKit source) of a Core Animation NPAPI plugin and I can replicate it not working there too. Calling addSubLayer alone just doesn't work. I'm not sure what the trick is...
I don't know whether that's because I need to give the sublayer the frame - but if that's true then I'm kind of screwed because the browser owns that
I'm wondering whether I just can't use sublayers from the plugin. That would complicate things for me but it wouldn't be impossible to deal with...
taxilian 10:03 which browser are you using?
neilg_: ^^
neilg_ 10:03 Chrome/Chromium/Safari. Trying it in those 3 because they're the only ones that support Core Animation I believe
I've had OpenGL working but not as a sublayer. :)
taxilian 10:03 can you send us sample code?
neilg_ 10:03 Wait, maybe I just solved it
I think I was right before about needing the frame
I just had it rendering from the sample plugin as a sublayer
taxilian 10:03 okay; if you still cna't get it working, send me a zip of the sample project, we can maybe take a quick look at it
neilg_ 10:03 That would be great - but I have it working in the sample now. Which is kind of cool because I can adopt this now to produce a sample FB plugin that does OpenGL across all platforms
Because we need that. :)
taxilian 10:03 yes, yes we do
kalev 10:03 I'm properly porting my plugin to firebreath 1.4
so far the diffstat is:
14 files changed, 45 insertions(+), 412 deletions(-)
very awesome :)
taxilian 11:03 lol. wow; you've been able to remove that much code?
kalev: what all have you been removing?
kalev 11:03 Yeah, well, most of that is because of the proper multi MIME type support in Firebreath
taxilian 11:03 ahh
yes
we really should document that
stuartmorgan 11:03 neilg_: in addition to setting the frame you'll want to set the autoresizingMask
(unless you want to resize it manually when SetWindow is called)
neilg_ 11:03 Hmm. Thanks for the tip!
tony_ 11:03 'res' was not declared in this scope I am getting this error when I compile the project on another mac machine ... any clue..?
something related to boost..
BOOST_ASSERT(!res);
taxilian 11:03 tony_: without a file or line number that's not real helpful
tony_ 11:03 condition_variable.hpp line 54
taxilian 11:03 platform?
tony_ 11:03 mac
xcode
taxilian 11:03 when you compile?
that's weird
are you using firebreath boost?
tony_ 11:03 yes..actaullay firebreath uses boost , I think.. I dont touch the boost code..
let me delete the build folder and rebuild using prepmac.sh
taxilian 11:03 yes, FireBreath does use boost
tony_ 11:03 I will let u know the result
taxilian 11:03 you could also try removing src/3rdParty/boost and runnign prepmac.sh again
you could have gotten an incomplete boost dir somehow
tony_ 11:03 ok where can I remove on my cmake file .?
taxilian 11:03 I don't understand the question
tony_ 11:03 sorry for the bad english ! , I am trying what you said :)
tony_ 11:03 And it worked :)
taxilian 12:03 excelent
taxilian 12:03 neilg_: you around?
neilg_ 12:03 Yup!
taxilian 12:03 you're the resident batch file expert, right?
neilg_ 12:03 Um... Expert is a bit strong but... experienced. ;)
taxilian 12:03 =] I'm trying to figure out why it keeps splitting my parameters on =
I do for /f "tokens=%_SHIFTTOK%*" %%a in ('echo.%*') do set CMAKE_PARAMS=%%b to get the parameters past the first or second (depending on what they give me)
and it ends up looking like -DVERBOSE 1 instead of -DVERBOSE=1
it is starting to make me quite cross
neilg_ 12:03 Sure
Hmm
taxilian 12:03 you know, it doesn't have to be right now, but do you think you could try to fix the windows prep commands to work properly?
they keep coming back and biting me
neilg_ 12:03 I can definitely take a look
I _think_ this should work: for /f "tokens=%_SHIFTTOK%*" delims= %%a in ('echo.%*') do set CMAKE_PARAMS=%%
I haven't tried it but that should set space to be the only delimiter
Though I'm kind of surprised it's splitting on the '=' - it's not meant to!
veosotano 13:03 bye all
FB_GitHubBot 14:03 FireBreath: master Richard Bateman * c10426f (1 files in 1 dirs): Updated relwithdebinfo settings to correctly use the release CRT lib - http://bit.ly/fVyc5O
EL45 16:03 Hello, I am fairly new to c++ and extremely new to Firebreath. I am looking for a way to make a blocking call in the background to wait for some data. It's my understanding that only a single thread is supported. I can;t seem to wrap my head around how I can accomplish this without a thread. Can someone try an point me in the right direction?
taxilian 16:03 EL45: you create a new thread
and do it there
then fire an event to javascript when you're done
EL45: http://colonelpanic.net/2010/12/firebreath-tips-asynchronous-javascript-calls/