Kokua and Imprudence

I don’t keep up with Kokua and Imprudence as much as I might and certainly not as much as I used to. Imprudence Viewer was for some time my favorite viewer for both SL and OpenSim. Soon it slipped to being my choice just for OpenSim. Then it fell so far behind I stopped using it. I still have it installed… I’m not sure why.

There is a small effort to update Imprudence. But, I think it is so far behind it is no longer usable.

Kokua was to be the primary OpenSim viewer. I had hoped to see Aurora and Kokua offer some competition to Second Life™ by providing combined viewer and server features creators could use. I got the impression there was a goal to develop viewer and server dependent features more quickly and lower the wall between the viewer and server.

But, Aurora-Sim is not something I hear much about. The Aurora-Sim site is here. Links from there lead to the github repository, which is active. Last time I looked at Aurora was in June 2011 and it was version 0.3.0. As of Nov. 8, 2012 the version is 0.5.0.1. The latest example of Aurora-Sim I could find is from April 2011. Shown above.

OpenSim was to be another beneficiary of the Kokua viewer. I still have hopes for it and OpenSim, but may be that is not to be. The Kokua viewer is now up to Beta 3.4.1/24900 (Nov 6, 2012). In mid October NickyP explained why the viewer was staying in Beta. See: Kokua is still beta — why? for the full story. Basically, release of a production viewer carries so many additional managements tasks required by Linden Lab that developers find it easier to skip production releases.

At a recent meeting for the Kokua Team the problem of moving the Kokua Viewer forward was being discussed. See: ImpDev Meetups/2012-11-21. Boroondas Gupte asked, “Existential question time. What do you think: Should we continue making a viewer of our own, or would the users be served better if Kokua devs spread out to other viewers and help them improve their OpenSimulator compatibility, like Armin did?

I think the conversation denotes a problem in the viewer development area. For some time I have thought that third parties developing SL compatible viewers were going to have a hard time keeping up with the Lab. Henri B, Cool VL Viewer, convinced me earlier this year it was not that hard to keep up. I still thought it would be work, but my impression of how much work changed to ‘easier’. But, it may be as much work as I previously thought, ‘fatiguing’.

What is happening is the fast pace of development by the Lab is continuing. It is hard to understand how fast the Lab is or isn’t moving. If you are trying to keep up with the changes, it is moving pretty fast. If you are waiting on a specific fix, it seems like it may seem like it is taking for forever.

The server is developing quickly too. The directions of development on the virtual worlds’ server side seem to be diverging. OpenSim is moving toward the Bullet Physics Engine, adopting Hypergrid technology, extending the scripting language, and a type ‘sharding’ from Intel that allows a high number of avatars in a single region. (Reference) On the Lab’s side the process for baking avatars is changing, the HTTP/UDP data flow is changing, Pathfinding was added, the dependence on the proprietary Havok Physics Engine is growing, a materials system is coming…

As best I can tell the Lab sees little or no incentive to remain compatible with other virtual worlds. That places the load on OpenSim, Aurora, and other grid hosting systems to handle compatibility issues.

Nor do I see the Lab as having incentive to keep the viewer compatible with other grids. The Havok Licensing for Pathfinding has created a divide in the viewer world. Any viewer that uses the Havok License and Linden Lab’s distributed code can only be used on the SL Grid. Any viewer developer that wants to do otherwise has to license Havok Physics directly from Havok. While I think there are cheap ways to do that I don’t see third party viewers posting news or acquiring Havok licenses of their own, so there is some problem.

Now consider the size of the SL Viewer. The code takes up 290mb on my hard disk, 17,756 files in 484 folders… actual code I can find to edit takes up 82mb, 7,924 files in 218 folders. I estimate there is something like 10 million lines of code. There are 110 ‘cmake’ files, the files that tell the compiler program how to put the viewer together.

Imagine trying to put new changes from the Lab into your copy of the program. There is actually software that allows the computer to help with that task. Still you might spend an inordinate amount of time just trying to keep up with the Lab and figure what they may have done wrong or what you have done that conflicts with the Lab’s code.

So… will the Kokua Team continue building their viewer? They haven’t decided. But, I think we will start to see some consolidation among third party development teams. These projects are getting so large it takes significant time just to keep up with the Lab. When one of the Lab’s updates requires that one redo some significant portion of a project a developer has been working on, it can get discouraging.

The Lab is trying to coordinate their efforts and third party developers. The Lab is also picky about what they put in the SL Viewer and what features they allow to connect to the grid. So, it can take time for things to find their way into the SL Viewer. It has now taken over a year for the Mesh Deformer and it is not yet in the viewer.

So, we may see the Kokua Team start helping other developers make their viewers compatible with OpenSim, Aurora, and other grids. Only time will tell.

5 thoughts on “Kokua and Imprudence

  1. And I sooooo hope they continue their great job as the Kokua viewer is the only one to give my sound and voice simultanously on a 64-bit Linux system. So I’m really thankful for their work 🙂

  2. Kokua is a really promising viewer. As the only TPV I know of that’s also fully open source, it’s also very valuable to OpenSimulator. The problem is that there hasn’t been a great deal of development support for it. Nicky Perian has been doing almost all of the coding, and is now on hiatus for a while. Nicky’s interests also didn’t tend to be with changes that users readily could see and recognize either, but rather with more internal things like stability fixes, the GStreamer replacement for FMOD, or OpenSim specific tweaks. The UI is largely the vanilla LL one. Adding features like an AO and radar is something more than a few users would like to see addressed.

    Unless other developers take an interest in, and become active with Kokua, it isn’t looking all the good at the moment. I would absolutely be thrilled to see it get more love from other devs.

  3. Personally, I think the Kokua team should stop worrying about making a viewer for SL and work on Kokua as though it was always meant to be THE Opensim viewer of choice. The current Kokua viewer gives them a place to start from but, eventually, as the technologies take a different path from SL, they should strip out all the unnecessary code that was for SL, and simply make the best viewer for Opensim. In time, it will prove the wiser choice.

Leave a Reply

Your email address will not be published. Required fields are marked *