[GeoWeb3DContest] GML + SSR

Information and updates on Web3D's Rotterdam city data competition geoweb3dcontest at web3d.org
Wed Mar 18 02:29:56 PDT 2015


Doug,

Our current renderer wroks at interactive frame rates, but without textures.
It uses java applet and JOGL and a custom format for streaming geometry
data from a servlet parsing the CGML.

http://iscope.graphitech-projects.com/indexTest.html
To load Rotterdam press ctrl+0->testing->LoadCustom Pilot->Rotterdam and
navigate to the area.

Also there are other datasets:
http://iscope.graphitech-projects.com

We do support some sort of texturing but it is very specific to this
project and it consist in applying an orthophoto on top of buildings roofs.

Also, btw, how do we actually apply to the contest? Do we have to prepare a
presentation document?

*Federico Devigili*

*Analyst and Developer*



*Fondazione Graphitech*

Via Alla Cascata, 56/C - 38123 Trento - Italy

Office: +39 0461 283397

Fax: +39 0461 283398

Skype: fededeviwork

Email: federico.devigili at graphitech.it

Website: http://www.graphitech.it

On Tue, Mar 17, 2015 at 7:54 PM, Information and updates on Web3D's
Rotterdam city data competition <geoweb3dcontest at web3d.org> wrote:

>
>
> FD,
>
> Thanks for your comments.
> Likewise my impression of Rotterdam data: texture heavy.
> When I look today in more detail at the Rotterdam AFRIKUUNDERWUK
> /appearances images, it looks like they may be already mipmapped. Most VRML
> viewers do their own mipmapping of textures at runtime, so these would end
> up double-mipmapped.
>
> Perhaps whoever created the data could have converted textures into
> equivalent vector data, perhaps at a loss of some detail at some LODs, and
> gain at some others.
>
> If you have a client that's performing well on a high performance
> computer, one idea is to convert it into an SSR (server-side renderer),
> like I did with freewrl (a vrml client). Let me know - I can give you some
> hints/tips.
>
> -Doug
> more..
>
> Here's my vrml server-side renderer URL, I can't tell if it works from
> inside my firewall, and I will shut it down in a few hours.
> http://ssrserver.ddns.net:8080/SSRClient.html
> But the idea is to have all the GPU and CPU power on a server. Then mobile
> gets something very light.
> x there's no click/picking implemented yet, just a walk navigation
> - but it would take a small additional effort to get a picking click
> The client and server-glue code is checked into the develop branch of
> freewrl
> http://sourceforge.net/p/freewrl/git/ci/develop/tree/freex3d/src/SSR/
> and it uses libmicrohttp - a C web server.
>
>
>
> >
> > Our biggest problem in the development of a client capable of rendering
> > the whole city comes from the textures.
> > Rendering the whole city at LOD 2 in an average PC is doable (mobile?
> > not so much), and once you load the 3D model inside the GPU memory it
> > renders fast (we get 30+fps with mid range gpu rendering the whole
> > city). The trick here is to render big chunks of geometry at once thus
> > lowering the number of draw calls, it still needs considerable amount
> > of GPU memory.
> > Making it fully interactive requires some tricks, you either need to
> > hold the whole geometry hierarchy CPU side to do ray-casting/picking or
> > to use color picking on the GPU on feature level, the whole geometry is
> > rendered on an additional surface buffer where each surface have an
> > unique color with which you can get the feature id and access the GML
> > data (client or server side).
> >
> > The problems are the textures, first having a huge number of texture is
> > extremely inefficient for the gpu, but even if you merge everything in
> > big texture atlases you still have just too much data. The solution
> > here is to implement something like id Software
> > megatexture http://en.wikipedia.org/wiki/MegaTexture, and some sort of
> > aggresive LOD technique. So you will only load the texture in the GPU
> > that are actually used in the rendering of the image AND you do not
> > load the full resolution texture but only a scaled down optimized
> > version of it. When a geometry is close to the camera the full
> > resolution texture is loaded and swapped with the old one.
> >
> > FD
> >
> > Federico Devigili
> >
> > Analyst and Developer
> >
> >
> >
> > Fondazione Graphitech
> >
> > Via Alla Cascata, 56/C - 38123 Trento - Italy
> >
> > Office: +39 0461 283397
> >
> > Fax: +39 0461 283398
> >
> > Skype: fededeviwork
> >
> > Email: federico.devigili at graphitech.it<mailto:
> federico.devigili at graphitech.it>
> >
> > Website: http://www.graphitech.it<http://www.graphitech.it/>
> >
> > On Mon, Mar 16, 2015 at 9:32 PM, Information and updates on Web3D's
> > Rotterdam city data competition
> > <geoweb3dcontest at web3d.org<mailto:geoweb3dcontest at web3d.org>> wrote:
> > One idea for GML is to use it as a format for transmitting data that
> > might normally be in a GIS database - the so called attribute tables.
> > Once transmitted, it would be put back into geometry files and database
> > attribute tables.
> >
> > If trying to use Web3d -vrml or x3d- to render, one idea is to put ID
> > into the metadata for the web3d node. Then when searching for
> > relationships, the ID for a picked item would be used to search
> > GIS-like database attribute tables. This might allow skipping some or
> > all of the cityGML-specific format -instead using X3D+database to
> > implement/realize the goemetry and relationships.
> >
> > Another options is a 2 or 3 or 4 layer system: database, GML server,
> > Web3d server, and client with a chain of communications between the
> > layers.
> > -Doug
> >
> >>
> >> The thing to work out, and make public, would be the web-service
> > 'dialog' between client and server, such as how to ask for an overview
> > LOD0 map of the area to get started, then how to tell the server the
> > client's new viewpoint pose: 3 rotations and 3 translations, and ask
> > for a screenshot rendering. Or pose + xy click point, and ask for
> > information on the item clicked.
> >> - then any compatible client could work with any compatible server
> >> -Doug
> >> more..
> >> I worked out an SSR for virtual reality recently, for freewrl, and
> > the client and C web server glue code are checked into freewrl as 'MIT
> > or equivalent' license, meaning 'have fun'.
> >>
> >> I was able to display a bit of rotterdam in vrml, using libcitygml's
> > citygml2vrml.exe converter, followed by Chisel's CONDENSE> Create
> > DEF/USE (otherwise vivaty/freewrl run out of memory re-mallocing
> > textures), then wrapping the result in a Transform with -ve UTM / 3TM
> > coordinates of an Point, so as to get the view frustum within near/far
> > range of the geometry (vs being at the earths equator with the default
> > viewpoint, and not being able to see the neatherlands).
> >>
> >> Then freewrl renders slow - 1.2 FPS. And that's just for one
> > subdivision of Rotterdam, mostly due to what I would call 'heavy
> > textures' 1024x1024x4 textures. But I do see 3D buildings.
> >>
> >> I got Aristoteles to run a bit, but it showed no textures, rendered
> > 'zingers' -lines from each piece of geometry to a few arbirary points -
> > and was hard to navigate and 'enjoy'.
> >>
> >> I tried building an SVN copy of Aristoteles but it doesn't build
> > right out of the gate. Many of these GML software projects were
> > abandoned about 5 years ago. I suspect GML was pushed by geography
> > professors and a few cities trying to break ESRI stranglehold. That's
> > hard, because most cities don't mind ESRI, have healthy budgets for
> > ESRI licenses, and have no interest in anything unconventional/free.
> > The general public doesn't need/want detailed GIS relationships. So who
> > needs GML is the remaining question.
> >> Esri black box server-side rendering of rotterdam:
> >> http://www.esri.com/software/cityengine/industries/rotterdam
> >>
> >> When I look at google maps, and remember back to MS virtual earth,
> > they used server-side rendering. What's changed: with webgl now readily
> > available, it should be possible to adjust viewpoint pose more freely
> > in 3D, including horizontal street views.
> >>
> >> In freewrl's web3d SSR, I do a 2-step dialog with the server: first I
> > send where the client navigated to. Then the server does collision and
> > gravity adjustments to that pose, and sends it back. Then when the
> > client gets the adjusted pose, it asks for a snapshot in the second
> > step. The server renders the snapshot and sends it back, and the client
> > pastes it over the navigation grid.
> >>
> >>
> >>
> >>
> >>
> >>>
> >>> One idea is to use server-side rendering (SSR) in the following way:
> >>> - render GML LOD0, or 1 on the client side in real time, during
> navigation
> >>> - one the viewpoint is pointed where you want it, lift the
> > mousebutton/touch. The client then sends the viewpoint pose to the
> > server. The server renders that viewpoint using LOD3 or 4, and sends
> > back an overlay image.
> >>> - you can then click on the overlay image, The client sends
> > viewpoint, and point of clicking, back to the server
> >>> - the server constructs a pickray and picks the LOD3,4 geometry,
> > gets the IDs, looks up info in a database and sends back to the client.
> >>>
> >>> Benefit: client stays 'light', and server does all the heavy work.
> >>> - client needs a bit of webgl for rendering LOD0 and/or 1, and for
> > navigating
> >>>
> >>> -Doug
> >
> >
> > _______________________________________________
> > GeoWeb3DContest mailing list
> > GeoWeb3DContest at web3d.org<mailto:GeoWeb3DContest at web3d.org>
> > http://web3d.org/mailman/listinfo/geoweb3dcontest_web3d.org
> >
> >
> > _______________________________________________ GeoWeb3DContest mailing
> > list GeoWeb3DContest at web3d.org
> > http://web3d.org/mailman/listinfo/geoweb3dcontest_web3d.org
>
> _______________________________________________
> GeoWeb3DContest mailing list
> GeoWeb3DContest at web3d.org
> http://web3d.org/mailman/listinfo/geoweb3dcontest_web3d.org
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://web3d.org/pipermail/geoweb3dcontest_web3d.org/attachments/20150318/b5ee7b79/attachment.html>


More information about the GeoWeb3DContest mailing list