Game Development Community

dev|Pro Game Development Curriculum

TGE-TGEA embedded Web Browser part 2

by Javier Canon · 12/13/2008 (5:28 pm) · 4 comments

I am still studing the form of make an ingame web browser for my games.
I liked the multiplayer or MMOG games :D.

So, in this investigations, i found some options to choose the path for a windows developer:

DIRECT RENDER


UBROWSER + MOZILLA:


PROS:
- native rendering
- render any webpage, keyboard and mouse support

CONS:
- game engine conflicts, need of the disable for ex. the memory manager....
- bugs-conflict with keyboard and mouse
- sometimes cpu goes to 100% when rendering

sites.google.com/a/games-network.org/blogs-comunidad/_/rsrc/1229213728698/programacion-1/game-applications-overlay/ibrowser.jpgsites.google.com/a/games-network.org/blogs-comunidad/_/rsrc/1229213735843/programacion-1/game-applications-overlay/tgb_pro_guibrowserctrl.jpg?height=327&width=420

Links:
www.ubrowser.com/
code.google.com/p/navi/
code.google.com/p/nmozlib/


RENDER A SNAPSHOT OF A WEBPAGE:


The idea is take a snapshot of any webpage and then render it to a texture.
This can be make in the client or in the server side.

PROS:
- Easy to implement
- Stable

CONS:
- No keyboard or mouse

sites.google.com/a/games-network.org/blogs-comunidad/_/rsrc/1229214642015/programacion-1/game-applications-overlay/activexhtm2pic.jpg

Links:
www.codeproject.com/KB/IP/htmlimagecapture.aspx?msg=783507
www.codeproject.com/KB/graphics/IECapture.aspx?df=100&forumid=192174&select=1640...
www.codeproject.com/KB/aspnet/website-snapshot.aspx
www.chat11.com/Internet_Explorer


activex-dlls:
www.htm2pic.com/download/htm2pic-activex/
www.webpagesnapshot.com/products/wssh/index.html
www.guangmingsoft.net/htmlsnapshot/help.htm


OVERLAY


So, the main idea is inject code in the stream

PROS:
- Can render any application window.
- keyboard and mouse.

CONS:
- Dont work in some specific machines configurations.
- Another software (external, more to support).
- Dont support windows Vista yet.
- Licences? or hard to develop...

sites.google.com/a/games-network.org/blogs-comunidad/_/rsrc/1229215614799/programacion-1/game-applications-overlay/screen_voip.jpgsites.google.com/a/games-network.org/blogs-comunidad/_/rsrc/1229215609051/programacion-1/game-applications-overlay/screen_stats.jpgsites.google.com/a/games-network.org/blogs-comunidad/_/rsrc/1229215581157/programacion-1/game-applications-overlay/playxpert1.jpeg

Links:
www.gamedev.net/community/forums/topic.asp?topic_id=445141
www.gamedev.net/community/forums/topic.asp?topic_id=359794
msdn.microsoft.com/en-us/library/ms867211.aspx
www.codeplex.com/DirectDrawOverlayLib

products:
www.playxpert.com
www.gameoverlay.com/

Please giveme suggestions...

#1
12/13/2008 (5:56 pm)
sounds like a awesome answer to Instant Action, can we get this as a resource when you cleaned it up. :)
#2
12/14/2008 (5:54 am)
Awesome! Simply awesome!
#3
12/14/2008 (6:12 am)
I just had a thought. You could also have an external app render the actual webpage contents, but provide a handler for a windows message (or whatever communication method you want to use between the apps) and render it into a provided draw context.

Then in the game, you would simply ask the external app to draw the webpage (you could do this within a mozilla renderer like ubrowser for instance) into the context you provide. You could also pass it gui-relative mouse coordinates to allow it to handle the mouse input properly. The advantage over method
1 you proposed, is that if the browser window gets overloaded or bound up, you simply have less responsive UI component and not a completely bound game (the render to texture of the mozilla stuff is basically in a different process, which means its got its own threads etc).

I wonder if this method isnt completley and utterly overkill though.
#4
10/07/2009 (5:14 am)
Hello.

I'm trying to integrate web browser into TGEA, without results by the moment. Also I thought Torque3D would have it implemented.

I've tried with nmozlib, and also with awesomium. If anyone has made advances in it, please make me know.

Greetings.