Cytoscape 3D Renderer Beta

235 views
Skip to first unread message

Yue Dong

unread,
Jan 24, 2012, 4:53:33 PM1/24/12
to cytoscape-discuss, Gary Bader, Jason Montojo
Hi,

My name is Yue Dong and I've been working in Gary Bader's lab since
around May 2011 to develop a 3D renderer plugin for Cytoscape 3. The
plugin uses OpenGL and accesses it through the JOGL wrapper library
(http://en.wikipedia.org/wiki/Java_OpenGL) which allows access to
OpenGL from Java.

The prepackaged version can be found at: http://wiki.cytoscape.org/Cytoscape_3/3D_Renderer

During runtime, the plugin effectively replaces Ding as Cytoscape's
network renderer. Integration with VizMapper is not yet complete. Node
label rendering is not yet finalized as the current implementation
uses a JOGL component to perform texture-mapped font rendering but
this component does not have a complete API.

Feedback would be welcome, especially from anyone interested in the
direction of the user interface.

Thanks!
Yue

piet molenaar

unread,
Jan 27, 2012, 8:10:50 AM1/27/12
to cytoscap...@googlegroups.com
Hi Yue,
This sounds great, I tried the prepackaged version but loading the standard galfiltered.sif did not produce a network; what jars are included? Do I have to install JOGL seperately? I'm running Win7.
Cheers,
Piet

Yue

--
You received this message because you are subscribed to the Google Groups "cytoscape-discuss" group.
To post to this group, send email to cytoscap...@googlegroups.com.
To unsubscribe from this group, send email to cytoscape-disc...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/cytoscape-discuss?hl=en.




--
Piet Molenaar
piet...@gmail.com
Department of Oncogenomics, M1-131
Academic Medical Center
University of Amsterdam
Meibergdreef 9
1105 AZ Amsterdam
the Netherlands

tel (+31) 20-5666592
fax (+31) 20-6918626

Yue Dong

unread,
Jan 27, 2012, 3:24:08 PM1/27/12
to cytoscap...@googlegroups.com
Hi Piet,

The distribution should include the needed JOGL libraries so you shouldn't need to install it separately. JOGL is included as repackaged jar files that should contain most of the relevant library, found in /framework/system/cytoscape-temp/jogl and jogl-natives. I'll test it on my Win7 machine once I get home. In the meantime, does it properly load an empty network (in the Cytoscape menu, File > New > Network > Empty Network)? If so, does anything show up if you mouseover the empty network and press N which creates nodes?

Thanks,
Yue

Yue Dong

unread,
Jan 31, 2012, 5:58:51 PM1/31/12
to cytoscap...@googlegroups.com
I've tested it on my Windows 7 machine that doesn't have pre-installed JOGL and it seemed to run without errors. Please let me know if you further continue to encounter any problems.

Thanks,
Yue

Keiichiro Ono

unread,
Feb 1, 2012, 2:40:32 PM2/1/12
to cytoscap...@googlegroups.com
Good work!

I've tried on Mac and it works. However, the rendering speed is a bit
slower than I thought. I've implemented experimental 3D renderer
before, and it was a bit snappier (pan/rotate/etc.)

http://chianti.ucsd.edu/~kono/data/processingRendererTest1.avi

(this is real-time rendering, running on MacBook)

Is this because you implemented interactions (selection/pick)? Also,
It creates some "noise" (unnecessary edges?) when I render relatively
large graph. Is this known issue?

http://twitpic.com/8cdu02/full

Thanks,
Kei


2012/1/31 Yue Dong <ory...@gmail.com>:

> --
> You received this message because you are subscribed to the Google Groups
> "cytoscape-discuss" group.
> To post to this group, send email to cytoscap...@googlegroups.com.
> To unsubscribe from this group, send email to
> cytoscape-disc...@googlegroups.com.
> For more options, visit this group at
> http://groups.google.com/group/cytoscape-discuss?hl=en.

--
Keiichiro Ono    http://www.keiono.net/

Yue Dong

unread,
Feb 2, 2012, 4:45:50 PM2/2/12
to cytoscap...@googlegroups.com
Hi Keiichiro,

The JOGL library was used after doing some testing with Ardor3D and the jMonkeyEngine, and it was found that plain JOGL could achieve slightly faster speeds. The LWJGL library was also tested but it seemed like JOGL had more users. It is also provides direct access to OpenGL functions which is hidden in some of the higher level libraries such as Ardor3D and jME. Also, Ardor3D and jME likely provided game engine optimizations that may not be appropriate for rendering networks, as I suspected they were made to render low numbers of of high-polygon meshes rather than high numbers of low-polygon meshes. JOGL was partly chosen because it gave greater control on exactly how the rendering was being done, to allow further room for optimizations.

I am looking to improve the framerate via further profiling. Currently the renderer uses display lists which is a reasonably fast way to render many copies of similar objects. Selection and picking does affect the framerate by a mild amount as it requires the network to be redrawn an extra time on a hidden buffer to perform picking (via GL_SELECTION mode). The bird's eye view also requires the network to be rendered an extra time, but adjustments could be made to draw polygons in slightly less detail when viewed from afar.

Currently, I suspect that the text rendering is having an impact on the framerate. I will be looking for ways to lessen the impact.

The extra edges is a known issue, I think it is caused by some calculation errors when calculating coordinates for the curved edges.

Thanks very much,
Yue
Reply all
Reply to author
Forward
0 new messages