Monday, April 9, 2007

Fourms are down!

It seems our forums hosted by ChatBear are down. I understand they recently started merging backends of two sites together, so that might be the cause. Thanks to Freyja supporters for emailing the site admin and me about it.

I wasn't planning on doing an update yet, but I guess I might as well now I have this blog post going. I have just finished the first stage of the event system rewrite for the Freyja modeler. I was planning on holding off on this, but to be honest it was crippling other efforts with other systems. I've checked in parts of the newer libs and modeler into svn, and notice I said parts don't check out now. I would stress again now is not the time to check out. The current binaries are from an older development snapshot, so continue to use them. The code in the development branch continues to make progress to a new stable release. I should have FK fixed with the new event system and partial math lib update by the end of this week. If it looks stable it'll get a binary snapshot for Windows and Linux x86_64 / i386. I know it's been a while since FK was fully working in a public snapshot, so I may toss in additional format support as a gift. No, it's not going to be the native maya plugin either. ;)

Sunday, March 25, 2007

Boring but important?

Screenshot of some Mat44 algorithm timings, because it's 0300 and I've only been working on the math library.

libhel 0.1.0
That 'boring but important' math library libhel has been getting a little love lately. I'm currently polishing up a unit test and profiling suite for it now. Not a whole lot has been reimplemented / refactored, yet much of the new design for optimization and correctness is already in place. I'll likely be pruning out more and more classes and functions before I commit to svn. This library just collected junk from my other projects and it's easily the most buggy code in the project. The best way to fix this is to reinstate the unit / regression test on build policy. Oh I know... "boo hoo my builds will take to long". You don't rebuild the math library that often, and incorrect math just leads to a snowball effect. I've already found and fixed several issues this far along. I may keep various similar algorithms in place for performance tweaking at higher levels.

Some items of note:
  • API / ABI will break big time
  • Proper 'hel' namespace and C exports
  • Cleaner math type system
  • Optimization!
  • Physics system update
  • Multiple choices for some algorithms
libfreyja/freyja
Libfreyja is designed for threading, so major speed improvements and new features will be coming along with the new backend. The CPU skinning/deforming/list ops/physics used in libfreyja is easy to parallelize so far. The problem of user thread tuning for certain machines will come up I expect -- tools and config options will be there. I have planned out several stages for bringing existing and new physics support from libhel to freyja, but I don't have any new details I care to share right now. I'm mostly focused on libhel at the moment. Then it's time to get FK more usable and IK animation released. Freyja itself needs an event overhaul, but nothing is scheduled for the next release as of now. At this point I think it'll be better to hold off. I have a network report/update and some other 'low hanging fruit' on the table as well. You could think of these as development 'mini-games' I could add in an hour or so with testing. Once these are out of the way it's back to a plugin and a new physics development focus. Phasing in physics support will start with the end of the libhel refactor/rewrite.

MSTL
MSTL is also getting some minor updates along with libhel, which are mainly for threading and higher precision stopwatches and timers. This only works on Linux and UNIX builds right now. I currently plan to use Windows native threads, however all other platforms use pthreads and there is a WIN32 pthreads port. If it ends up saving more time and effort and there isn't a huge performace difference that will change.

libmgtk
The library libmgtk is going to stay stable for a while so no changes for now. I looked into doing a C# port again, however OpenGL support crossplatform is still a failing point. All I really want is a Gtk# or Forms widget with an OpenGL context that works at least as well as my current one used in C++. Sadly it's still orders easier to implement a portable Gtk+ framework and use that for widgets and GL context. Also I don't think projects like Tao even support OS X last I checked.

OS X builds you say? Yes, I recovered my OS X Tiger VM, but I can't really do any development on it due to various issues. If you're thinking of throwing away our old mac mini or the like -- give it to me instead, so I can have a stable OS X platform and release some binaries.

Sunday, March 18, 2007

Update: Oblivion in Wine


I thought I should post an update about how well Oblivion is running in Wine as of 0.9.32. Currently the only things not working are HDR, music, and a certian portion of sound effects play with static. That means all the old bugs like the sneak cursor and mini map are fixed.

Saturday, February 10, 2007

New Windows bulid up

Fix for last build is up as 0.9.5.2. The problem was the last upload took so long it uploaded a changed file. =/

Enjoy the fix. =)

Tuesday, January 30, 2007

Freyja 0.9.5.1 Python

Freyja 0.9.5.1 with Python build for Win32 users support is up. Right now you don't get a full Python modules system like Linux users, because I had to bundle Python in kind 0f peicemeal. You can just copy all the *.py* files from a Python install into your Freyja directory if you need more than the provided modules.

I'll look into supporting separately bundled Python or come up with a 'modules' pack. I really don't want to have to start bundling Python for Windows. =)

Monday, January 29, 2007

Nod support


When you see screenshots like this you should think. Wow, fixing the legacy plugins is a good idea AND it might not hurt to allow material color shading for grouping. You can see that the 'two skeletons' now agree, and that's good. The bad news? I have to fix all the other plugins before I can remove this debug rendering. I might have to make it an option like the ray trace debug, and disable it by default. =)

Thursday, January 25, 2007

Oblivion under WINE


Took a little break yesterday, and got Oblivion running under WINE with AIGLX.
Wine 0.9.29, Oblivion 1.1.5xx, Nvidia 9746, Installed and patched from inside WINE so the WINE Window's registry is correct.

regedit keys:
OffscreenRenderingMode fbo
VideoMemorySize 256
UseGLSL enabled
etc

Oblivion.ini ( various tweaks )
bForce1XShaders=0
bSaveOnInteriorExteriorSwitch=0
etc