librocket GUI support

Return to Panda Features in Development

librocket GUI support

Postby Gogg » Sat Sep 25, 2010 7:24 pm

librocket is a Game GUI engine that used to be commercial. Recently it has been open sourced as MIT. It uses a subset of html and css for all the rendering. The GUI input elements are html form elements. Since I like this much better than CEGUI I've integrated it for C++ by implementing a native librocket renderer interface. Initialization is simply like this (as per drwr's idea):

Code: Select all
PT(RocketNode) rocket_node = new RocketNode("rocket");
window->get_pixel_2d().attach_new_node(rocket_node);


Then you can get the librocket context from rocket_node->get_context() and use that to interact with librocket.

This is the librocket hello world window in Panda:

Image

I'll commit this shortly to the Panda 2.0 branch (C++ only), I'm creating this thread for questions in case anybody is interested in publishing it to python (treeform?) which is really easy at this point (just write a bunch of wrappers), but I don't use python so I cba.
User avatar
Gogg
 
Posts: 475
Joined: Thu Sep 24, 2009 1:06 pm

Postby Anon » Sun Sep 26, 2010 4:32 am

I dont think its right to include with the newer version without python wrappers. The engine is meant to have complete python integration. And isnt the next version 1.8?
Anon
 
Posts: 1559
Joined: Thu Oct 29, 2009 3:07 am

Postby powerpup118 » Sun Sep 26, 2010 4:37 am

Anon wrote:I dont think its right to include with the newer version without python wrappers. The engine is meant to have complete python integration. And isnt the next version 1.8?


I think Gogg means that panda 2.0 is C++ only at the moment.. 1.8 would be the next version officially by Disney, I think there was a fork by rdb/Gogg I suppose to rewrite the engine from scratch (from what I heard) and I suppose they will add python to panda 2.0 later.. dunno how all of that will work out tbh.

I may be wrong though, just my thoughts.

~powerpup118
User avatar
powerpup118
 
Posts: 325
Joined: Sat Apr 17, 2010 11:59 pm

Postby Gogg » Sun Sep 26, 2010 4:44 am

P2.0 is an unstable branch, nobody is including anything in any version. Things are easier to integrate in C++, cause they operate in C++ under the hood anyway, so everything starts in C++, then it's published in python. You may be used to things being announced only when they work in Python because Disney uses python, it just so happen that I don't, so I can stop at C++, but don't worry, somebody will get this working in Python. The 2.0 branch is years away from being released anyway, and nobody is gonna release a Panda version without python support, I don't know where you got that idea. We are talking of development branches here.

And nobody is forking anything, it's just that the unstable and new stuff is added to this branch, like many things rdb and others are working on
Last edited by Gogg on Sun Sep 26, 2010 5:18 am, edited 1 time in total.
User avatar
Gogg
 
Posts: 475
Joined: Thu Sep 24, 2009 1:06 pm

Postby powerpup118 » Sun Sep 26, 2010 4:46 am

ah; thank you tons for clearing all that up! :D
User avatar
powerpup118
 
Posts: 325
Joined: Sat Apr 17, 2010 11:59 pm

Postby esak » Mon Sep 27, 2010 1:33 am

Really nice initiative Gogg :-)
I was though hoping this to be included already in version 1.8 ;-)
esak
 
Posts: 31
Joined: Wed Aug 25, 2010 3:33 am
Location: Sweden

Postby amogorkon » Thu Nov 11, 2010 4:05 pm

I'd like to use HTML GUI in the current or coming panda version. Having failed to find your commits in the CVS, I wonder where I can find your code and possibly offer help in making librocket generally available and usable.

Are you still actively developing on this particular piece?

Has anyone else already made experience with building/using it?

edit: I should add I'm working with Python.
amogorkon
 
Posts: 4
Joined: Thu Nov 11, 2010 3:48 pm

Postby GrizzLyCRO » Wed Nov 17, 2010 12:22 pm

I am also very interested in this?
Any chance to get it in "current" panda? If that could be done i would try to get python wrappers done.
I know c/c++ but not using it actively for quite some time now (except when i am forced at uni).
User avatar
GrizzLyCRO
 
Posts: 301
Joined: Tue Dec 16, 2008 4:03 pm
Location: Croatia

Postby tshannon » Thu Mar 10, 2011 6:08 pm

This looks very promising. It also looks like libRocket has built-in python support (http://librocket.com/wiki/frontend/features), so I'm curious what's missing in this panda implementation?
Tim
tshannon
 
Posts: 61
Joined: Sat May 01, 2010 2:15 pm

Postby OvermindDL1 » Tue Jun 28, 2011 7:07 pm

Is there any update as to the status of bringing this in to, say, 1.8, with the Python bindings that it already includes?
OvermindDL1
 
Posts: 3
Joined: Tue Jun 28, 2011 7:00 pm
Location: NM, USA

Postby macromate » Sun Jul 24, 2011 12:04 pm

OvermindDL1 wrote:Is there any update as to the status of bringing this in to, say, 1.8, with the Python bindings that it already includes?


Hm, i would be interested in librocket bindings for python too. Is there any news on this topic?
macromate
 
Posts: 8
Joined: Sun Jul 24, 2011 12:01 pm

Postby morgul » Wed Aug 31, 2011 9:04 am

Admittedly, I haven't started playing with libRocket yet, so I don't know how well their built in python bindings work, but I have plans to do almost the exact same thing I did with the PandaCEGUI python module for this. (I'll post back with a forum post link as soon as I get somewhere.)

However, I strongly argue this being moved into the 1.8 branch. I'm more than willing to devote some time from myself and my little team towards getting panda python bindings written as well.

--Chris
Christopher S. Case
Skewed Aspect
http://dev.skewedaspect.com/projects/precursors
Image
User avatar
morgul
 
Posts: 38
Joined: Sun Dec 28, 2008 1:49 pm
Location: Lubbock, TX

Postby drwr » Wed Aug 31, 2011 9:12 am

Hey, if you and your team are able to polish this up for 1.8 and provide a good set of bindings, it would be so very awesome!

David
drwr
 
Posts: 11425
Joined: Fri Feb 13, 2004 12:42 pm
Location: Glendale, CA

Postby powerpup118 » Wed Aug 31, 2011 11:57 am

I too would enjoy this being in the 1.8 branch, perhaps someone could ask Gogg for any reference code he has? that would probably be a decent start

That's only one idea though, more power to you guys!

~powerpup118
User avatar
powerpup118
 
Posts: 325
Joined: Sat Apr 17, 2010 11:59 pm

Postby rdb » Wed Aug 31, 2011 2:08 pm

The librocket integration is on the panda3d_2_0_branch, if you make a separate checkout, you can easily extract the relevant code.
rdb
 
Posts: 9850
Joined: Mon Dec 04, 2006 5:58 am
Location: Netherlands

Postby powerpup118 » Wed Aug 31, 2011 4:35 pm

rdb wrote:The librocket integration is on the panda3d_2_0_branch, if you make a separate checkout, you can easily extract the relevant code.


thank you! I was very much so unaware of this!
User avatar
powerpup118
 
Posts: 325
Joined: Sat Apr 17, 2010 11:59 pm

Postby powerpup118 » Wed Sep 14, 2011 11:57 pm

rdb wrote:The librocket integration is on the panda3d_2_0_branch, if you make a separate checkout, you can easily extract the relevant code.


Hi again,

I'm no particular CVS guru, just curious if this is right:

my CVS client is running this command to get the panda3d_2_0_branch CVS branch

Code: Select all
:pserver:anonymous@panda3d.cvs.sourceforge.net:2401/cvsroot/panda3d checkout -r panda3d_2_0_branch -P panda3d


I did a quick search using the gnome search utility, and there are no traces of 'rocket' inside any of the files that it downloaded..

perhaps you could inform how to use CVS better? orr where exactly the relevant folder for librocket is?

I would appreciate it a lot!

Thank you,
~powerpup118
User avatar
powerpup118
 
Posts: 325
Joined: Sat Apr 17, 2010 11:59 pm

Postby rdb » Thu Sep 15, 2011 4:31 am

Huh... sorry, I thought that Gogg had committed his code. It would seem that he didn't.
rdb
 
Posts: 9850
Joined: Mon Dec 04, 2006 5:58 am
Location: Netherlands

Postby powerpup118 » Thu Sep 15, 2011 11:04 am

rdb wrote:Huh... sorry, I thought that Gogg had committed his code. It would seem that he didn't.


Oh okay, thank you for the response! :D

~powerpup118
User avatar
powerpup118
 
Posts: 325
Joined: Sat Apr 17, 2010 11:59 pm

Postby GrizzLyCRO » Tue Oct 11, 2011 5:54 pm

Any news on this topic?
User avatar
GrizzLyCRO
 
Posts: 301
Joined: Tue Dec 16, 2008 4:03 pm
Location: Croatia

Postby DangerOnTheRanger » Tue Oct 11, 2011 7:37 pm

I too would like librocket support - DirectGUI isn't powerful enough for my purposes.
Free + open-source game development kit: http://openblox.sourceforge.net

My blog: http://dangerontheranger.blogspot.com
User avatar
DangerOnTheRanger
 
Posts: 240
Joined: Fri Aug 27, 2010 4:59 pm

Postby powerpup118 » Tue Oct 11, 2011 10:06 pm

I contacted Gogg through the forums private messaging feature a few weeks ago, no response yet, I was hoping to be able to get hands on his current code for it, and then develop it further.

It seems like there could be a possibility that he is gone, or otherwise taking a break from hanging around here.


I would like to see anyone who knows C++ impliment a panda renderer for Rocket, I however, have no where near enough talent yet to do that.

I think someone needs to make a new public effort towards this project, and this could probably be one of the largest benefits IMO for panda

Hope this helps,
~powerpup118
User avatar
powerpup118
 
Posts: 325
Joined: Sat Apr 17, 2010 11:59 pm

Postby GrizzLyCRO » Tue Oct 18, 2011 5:08 pm

Librocket popped in IRC discussion again, could someone (rdb,drwr) move it to 1.8 branch from p2?

Some people are interested in helping with python wrappers (DangerOnTheRangr and myself, and probably some others too).
User avatar
GrizzLyCRO
 
Posts: 301
Joined: Tue Dec 16, 2008 4:03 pm
Location: Croatia

Postby rdb » Wed Oct 19, 2011 2:08 pm

It's not in there either. I tried e-mailing Gogg, but no reply. Someone will probably have to make it from scratch.
rdb
 
Posts: 9850
Joined: Mon Dec 04, 2006 5:58 am
Location: Netherlands

Postby whitelynx » Thu Jan 05, 2012 3:10 am

Morgul and I started playing with a basic wrapper in Cython earlier today, and between some code from librocket's pyinvaders sample, a bit of code from GrizzLyCRO's p3d_rocket project, and Morgul's pure Python CEGUI bindings (see the Snippets forum) we managed to get this far in one day:

Image

The display works with the full animated panda scene in the background, and it stays correctly sized when resizing the window.

Our code can be found at: https://bitbucket.org/skewedaspect/pyrokit

Right now, librocket seems to have some issues loading the fonts, but other than that the display is mostly functional. However, there is no keyboard or mouse input yet - that will most likely be coming in the next few days, along with a lot of code cleanup.
David H. Bronke
Vice President of Project Development
G33X Nexus Entertainment
Skewed Aspect
User avatar
whitelynx
 
Posts: 54
Joined: Wed Dec 31, 2008 2:56 pm
Location: Lubbock, TX

Postby rdb » Thu Jan 05, 2012 4:45 am

I already made a native implementation a while ago, in C++. I'm polishing off the code and resolving any final issues before I check it in.
rdb
 
Posts: 9850
Joined: Mon Dec 04, 2006 5:58 am
Location: Netherlands

Postby morgul » Thu Jan 05, 2012 12:08 pm

rdb wrote:I already made a native implementation a while ago, in C++. I'm polishing off the code and resolving any final issues before I check it in.


Great! Is there a chance you could point us at some code so we can test/lend a hand? We started writing this because we planned to start working with librocket in our panda app shortly... we don't mind dealing with anything bleeding-edge, or broken, since we planned to put the time in already. It'd be really appreciated.
Christopher S. Case
Skewed Aspect
http://dev.skewedaspect.com/projects/precursors
Image
User avatar
morgul
 
Posts: 38
Joined: Sun Dec 28, 2008 1:49 pm
Location: Lubbock, TX

Postby rdb » Thu Jan 05, 2012 12:38 pm

I'll put more focus on it then. I'll be checking it in within the next couple of days.
rdb
 
Posts: 9850
Joined: Mon Dec 04, 2006 5:58 am
Location: Netherlands

Postby morgul » Thu Jan 05, 2012 1:27 pm

rdb wrote:I'll put more focus on it then. I'll be checking it in within the next couple of days.


Wonderful, thanks a lot!

Will this be in 1.8 CVS?
Christopher S. Case
Skewed Aspect
http://dev.skewedaspect.com/projects/precursors
Image
User avatar
morgul
 
Posts: 38
Joined: Sun Dec 28, 2008 1:49 pm
Location: Lubbock, TX

Postby rdb » Thu Jan 05, 2012 1:38 pm

It'll be, when I check it in, yeah.
rdb
 
Posts: 9850
Joined: Mon Dec 04, 2006 5:58 am
Location: Netherlands

Next

Return to Panda Features in Development

Who is online

Users browsing this forum: No registered users and 0 guests