[vtk-developers] VES-Kiwi

Cameron Lowell Palmer cameron.palmer at ntnu.no
Sat Oct 25 05:26:21 EDT 2014

I really appreciate the history and roadmap. Sheds some light on the direction of the project.

Thoughts on the roadmap…

As has been brought up before, debugging is the central issue with today's VES codebase. Since getting the code to compile for iOS seems to be broken and in my case not our target platform, I’m left trying to get to a usable development environment for Android. Does the roadmap for the future VTK integration address not just compilation, but the creation of a usable environment for debugging. Cmake seems to create a non-native project for both Android and iOS that while capable of compiling, loses a lot of the power of each environment.

Let me illustrate. https://www.youtube.com/watch?v=kjsC-lKUgM8 is a video from Intel demonstrating debugging the NDK with Eclipse. This is a great resource for getting started with this problem, but it is unworkable because cmake creates a build directory with a project that is effectively just a binary with no source. I think it is important to address in the roadmap leveraging the Best Practices for the supported targets.

At least that is my current thinking.

From: Ken Martin <ken.martin at kitware.com<mailto:ken.martin at kitware.com>>
Date: fredag 24. oktober 2014 17.14
To: Cameron Lowell Palmer <cameron.palmer at ntnu.no<mailto:cameron.palmer at ntnu.no>>, Aashish Chaudhary <aashish.chaudhary at kitware.com<mailto:aashish.chaudhary at kitware.com>>
Cc: "vtk-developers at vtk.org<mailto:vtk-developers at vtk.org>" <vtk-developers at vtk.org<mailto:vtk-developers at vtk.org>>
Subject: RE: [vtk-developers] VES-Kiwi

Some history is useful here. Back when VES started VTK rendering was based on the old fixed pipeline which does not work with OpenGL ES. To render on Android/iOS they needed to implement a rendering engine built on OpenGL ES. Due to cost and time constraints they felt they did not have time to put that codebase into VTK proper. Now we have the time and funding to work on that. It is a work in progress and still at an early stage but VTK master includes alpha support for compiling and rendering on Android and iOS. More specifically:

-          VTK now includes toolchain files and a number of fixes so that it can build on android and iOS

-          There are now Android and iOS example programs in the Examples Directory in VTK, for the brave that is the place to start and there are readme files

-          Very basic multitouch support has been added for android, iOS, and Windows systems (OpenGL2 backend)

-          A rework of the rendering system to fit with OpenGl 2.1 which gets us close to OpenGL ES 2.0 along with some nice performance improvements.

-          An implementation of a shader based volume renderer we think could work with OpenGL ES 3.0

-          More fixes needed to deal with OpenGL ES 2.0.

-          A testing dashboard to make sure it builds on iOS

There is a ***lot*** still to be done including

-          migrating some of the useful bits of code from VES to somewhere in VTK

-          setting up android dashboards

-          setting up dashboard tests to verify the built code runs and renders

-          converting some additional old OpenGL code to 2.1/ES standards

-          Creating more examples for both platforms

-          lots more testing

-          better build support for iOS, it is a bit clunky/limited

-          bunch of stuff I’m forgetting

So right now we are in the awkward time where we are moving to having most the VES functionality in VTK, but it is not really ready for prime time yet.  I believe maintenance of VES/Kiwi is limited but happening.

Hope that helps some!


Ken Martin PhD
Chairman & CFO
Kitware Inc.
28 Corporate Drive
Clifton Park NY 12065
ken.martin at kitware.com<mailto:ken.martin at kitware.com>
518 881-4901 (w)
518 371-4573 (f)

This communication, including all attachments, contains confidential and legally privileged information, and it is intended only for the use of the addressee.  Access to this email by anyone else is unauthorized. If you are not the intended recipient, any disclosure, copying, distribution or any action taken in reliance on it is prohibited and may be unlawful. If you received this communication in error please notify us immediately and destroy the original message.  Thank you.

From: vtk-developers [mailto:vtk-developers-bounces at vtk.org<mailto:vtk-developers-bounces at vtk.org>] On Behalf Of Cameron Lowell Palmer
Sent: Friday, October 24, 2014 2:35 AM
To: Aashish Chaudhary
Cc: vtk-developers at vtk.org<mailto:vtk-developers at vtk.org>
Subject: Re: [vtk-developers] VES-Kiwi

I understand the pain that is documentation, but even the links to the mailing list are broken. For example http://www.vtk.org/Wiki/VES the link at the bottom doesn’t take you where it says it will.

Impressive improvements in the article you shared. Those speed-ups are truly awesome.

Now let’s talk about me. Our university has built up a non-trivial amount of code around VES-Kiwi. What I’m trying to do is get to a place where I can debug and ultimately extend the codebase. Basically the work is increasingly Android-only, but I would prefer a first-class C++ debugging environment something the current Android tools don’t really have yet. That was why I was trying to get plain ol’ VES to compile in iOS. Should I take this to mean that the VES codebase has been deprecated in favor of future development within VTK?



On 23. okt. 2014, at 22.19, Aashish Chaudhary <aashish.chaudhary at kitware.com<mailto:aashish.chaudhary at kitware.com>> wrote:

Hi Cameron,

The reason we didn't update those documentation because we are working towards getting VES and some Kiwi functionality in proper VTK in one way or another. Probably others will provide more information on this matter, but here is a to follow up on the recent development in that direction:


We will also have an upcoming article on Volume Rendering that should  work on mobile devices as well (not tested).

As far as the build goes, there are newer ways to build an Android project but I personally have not tested that with CMake. There is a project inside VTK master with OpenGL2 backend that you can try now.

Please don't consider this as an official reply on this matter but I hope that this provides some useful information.

- Aashish

On Thu, Oct 23, 2014 at 4:02 PM, Cameron Lowell Palmer <cameron.palmer at ntnu.no<mailto:cameron.palmer at ntnu.no>> wrote:
Hi, I’m interested in building VTK-VES-Kiwi stack on just about any platform although I prefer Mac, or Windows. It seems that the instructions provided absolutely don’t work or are not consistently documented.

So is Linux-Eclipse-Android really the only viable option? What is the state of development on the project?
Powered by www.kitware.com<http://www.kitware.com/>

Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html

Follow this link to subscribe/unsubscribe:

| Aashish Chaudhary
| Technical Leader
| Kitware Inc.
| http://www.kitware.com/company/team/chaudhary.html

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://public.kitware.com/pipermail/vtk-developers/attachments/20141025/70705eb8/attachment-0001.html>

More information about the vtk-developers mailing list