Another week, another post for you, dear readers. This summary includes the most significant changes by our veteran developers, but there are some folks doing important work that is not credited here. So thank you to all our contributors.
Last week, I wrote about the shaders used in terrain rendering. This week scrawl, using shaders, reduced the amount of code for terrain implementation by 75%. THREE CHEERS FOR EFFICIENCY!!!
OpenMW employs shaders for our skybox, water, and soft shadows. Scrawl has worked on refining the first two, resulting in marked visual improvements over the original Morrowind. The process of refining shaders will continue, so expect many perty pictures and videos. Great work Scrawl!
Speaking of great work, Chris pushed a large number of code revisions (50!) towards integrating .nif animations into Ogre3d’s animation system. Once complete, this will prove to be a more efficient method for animations and boost OpenMW’s frames per second. It works… to some extent. Currently, animations are lacking integration with the physics system, some meshes (for unknown reasons) are not animated, and other meshes occasionally ( and seemingly randomly) are not animated. However, clothes (including robes) are working, as well as the majority of creatures. We cannot give you an exact date when it will be finished, but what needs to be done to get physics integration working is mostly understood. The other issues are cryptic and it is difficult to tease out their causes.
Meanwhile Zini, our fearless leader, finished the magical effects drain and fortify. Also, the bug in the auto-equip logic was fixed, as well as a few other bugs in various areas. Zini also refactored the code for dynamic statistics and merged a lot of branches into the main development branch.
Reverse engineering formulas is going well. The ingredient eating formula appears close to completion (some things still need to checked and verified) thanks to Lazaroth. The acrobatics task is also progressing nicely, BrotherBrick is using his powerful server to calculate data points and Epsilon is a very dedicated worker, designing formulas to test. It may be finished as early as next week.
As you probably noticed, the site was down. This was due to a sudden and sharp increase in page views that occurred when OpenMW made the news aggregating website slashdot.org. A veritable horde of readers clicked on the story, passed to our site, and soon all I could do as an admin was log into the server and watch with shock and awe as the heart of apache processes was torn out. Normally we get 10,000 page views a month, and because of slashdot we had 25,000 in one day.
However, we benefited as many new developers and contributors have discovered us and are now joining. So we’d like to say, Thank You Slashdot! And despite the setback of the site being down, the development team continued their work as usual.
Zini was working on the refactoring task when he found many unnecessary “includes” in the source code. Don’t worry readers about what includes are, all you need to know is that many were unnecessary and that translated to slow downs in compile times. Many users complain that it takes forever to compile and build OpenMW and while users could perhaps view compiling OpenMW as exercise in patience, they won’t have to as removing these “includes” improved build times by nearly half.
He also worked on proper skill development implementation. As of now, the only skill that can be seen in game is Alchemy (and even it’s not finished), but that will soon change.
Scrawl has been tinkering with shaders. Interestingly, he found that using GLSL shaders caused build time improvements twenty-one times. Since the number and complexity of shaders OpenMW uses can be described as “modest”, the impact on the total compile time is negligible, but it’s still intriguing.
jhooks1 is still working with animations.
Figuring out Morrowind’s formulas has finally gained momentum. Myckel is bravely working on alchemy, and he has a couple new colleagues on the forums which include Epsilon. Epsilon is developing scripts to speed up the testing phase exponentially. It’s great work and we welcome them to the team.