Yes, the 'private branch' looms over the current 0.9.5 public tree. Ready to pounce upon it's prey and take it's place as the new development branch. Will it happen before 2008? Stay tuned, kids. I've got pretty far with the new libfreyja 0.10 design, and I'm even working on the new C ABI for some of the new classes. Basically, the new design is very much grounded in by the book software engineering opposed to the crufty maintenance chaos in the 0.9.x branch.
What's changed? New Scenegraph, focus on parallelism, new rendering pipeline buffers, reduced interfaces to make writing plugins in C/C++ easier, and a general focus on using proper data structures everywhere. That's just the backend. I don't have any interface features to show for 0.10 yet, so just know I'm trying to make the magic happen before the end of the year. Expect the private branch to hit public svn with in the week.
Sunday, December 16, 2007
Saturday, December 8, 2007
freyja 0.9.5.17 final
They be patrolling, and they be hate'n. They trying to catch me covert'n dirty. Well, now that the Singstar hip hop intro is over... I got in a work around for a bug in Gtk+, so the release is going to go out with some minimal time/range slider UI elements. This is a development release after all, so you can't complain. Look for Windows and Linux binaries tomorrow.
I hope you like it, since for .18 you'll be getting a lot more use out of it with the new freyja animation system. I think I'll start testing UV animation next in the private branch, and maybe get a path animation demo up later.
Update:
Ubuntu Gutsy amd64 packages and the Windows zip are up. I'm having to upgrade a chroot I use for i386 package building, so that package architecture might be released a day later with the ppc packages. The amd64 ubuntu packages were pulled and reuploaded a few times today due to a last minute bug fix and network errors. If you had problems you might want pull down new packages, since the bugfix was for user data setup. Pretty important to run the application given how much scripting and plugins are used.
Again if anyone wishes to donate an OS X box for native builds I'll humbly except. I would love to support native Gtk+ instead of X11 on OS X. If you have OS X build problems report them, since I'm unable to test changes myself. :3
I hope you like it, since for .18 you'll be getting a lot more use out of it with the new freyja animation system. I think I'll start testing UV animation next in the private branch, and maybe get a path animation demo up later.
Update:
Ubuntu Gutsy amd64 packages and the Windows zip are up. I'm having to upgrade a chroot I use for i386 package building, so that package architecture might be released a day later with the ppc packages. The amd64 ubuntu packages were pulled and reuploaded a few times today due to a last minute bug fix and network errors. If you had problems you might want pull down new packages, since the bugfix was for user data setup. Pretty important to run the application given how much scripting and plugins are used.
Again if anyone wishes to donate an OS X box for native builds I'll humbly except. I would love to support native Gtk+ instead of X11 on OS X. If you have OS X build problems report them, since I'm unable to test changes myself. :3
Friday, December 7, 2007
Bitches don't know about my animation scrubber.
Aw yeah. They don't understand my custom animation scrubber I wrote a couple hours ago. Not everything is 100% hooked up for high level events like marker control, etc -- but it's already scrubbing your worries away. No more horrible Gtk+ standard issue for this modeler. Also in tonight's svn commit are a crash fix for image buffer conversion ( stop using obsolete code ), Cmake fixes, and lots of little fixes here and there.
The 'final' 0.9.5.17 build should be done this weekend. I want to move on to the new scene/scenegraph backend for 0.9.5.18, so after I clean up the new scrubber prototype and a few more fixes that'll be it. If you want something not on the list of two items you'll have to beg and whine like dtm. I'm still not sure if cmake fixed their OS X linker bugs, but if not email me for a workaround.
Covert ops mission completed, so I'm getting a bit of sleep before the dawn. I was going to use this Bratz model someone sent me in the screenshot, but it's all creepy because it has no clothes. Time to catch some nightmares. If someone has some kick ass models that are animated send them in... I get tired of looking at that dwarf, elf, and pony one you know.
The 'final' 0.9.5.17 build should be done this weekend. I want to move on to the new scene/scenegraph backend for 0.9.5.18, so after I clean up the new scrubber prototype and a few more fixes that'll be it. If you want something not on the list of two items you'll have to beg and whine like dtm. I'm still not sure if cmake fixed their OS X linker bugs, but if not email me for a workaround.
Covert ops mission completed, so I'm getting a bit of sleep before the dawn. I was going to use this Bratz model someone sent me in the screenshot, but it's all creepy because it has no clothes. Time to catch some nightmares. If someone has some kick ass models that are animated send them in... I get tired of looking at that dwarf, elf, and pony one you know.
Tuesday, December 4, 2007
freyja 0.9.5.17 final coming
Well, freyja continues to move along at its own pace. I've redesigned the UI some more since the Lua rollover and fixed several bugs in the new Lua based client. As I move to a more 'professional' look and feel and 'unhide' functionality by providing better tool layout and grouping -- it's as if it's a new project altogether. Now that the Lua rollover is done I can focus on important usability and tool features. I should have all the skeletal -> morph tools back in the UI shortly. I just don't have time to make icons for all of them. Expect many bug fixes with the 0.9.5.17 final release this month. ^^
I'm still removing legacy systems while replacing them with more robust and easier to maintain code. Expect tons of backend and frontend changes for 0.9.5.18. The new animation control system will likely be the most important feature change. Finally you won't need to hassle with obtuse scrubber events, since I'm making a custom widget to replace the Gtk+ scrubber. I hope to work in a new path animation tool before the end of the year, which might bump the A/V sync tool. If you want to 'vote' for a feature drop by irc or email me to state your case.
I'm still removing legacy systems while replacing them with more robust and easier to maintain code. Expect tons of backend and frontend changes for 0.9.5.18. The new animation control system will likely be the most important feature change. Finally you won't need to hassle with obtuse scrubber events, since I'm making a custom widget to replace the Gtk+ scrubber. I hope to work in a new path animation tool before the end of the year, which might bump the A/V sync tool. If you want to 'vote' for a feature drop by irc or email me to state your case.
Tuesday, November 20, 2007
Freyja Lua done!
Freyja 0.9.5.17-lua-rc1 is finished. Expect binaries released tomorrow, since everything seems to be working fine now with the RC1. I'm sure you guys can find bugs. :3
Do the constructor dance! I'm going to sync up the pictured QuakeWars animation to the BoA song 抱きしめる with a new feature coming soon to public builds. Hey, it's not a dancing Lineage II elf for once. ^^
Update:
Ubuntu packages for amd64 released.
Windows i386 RC2 released.
Do the constructor dance! I'm going to sync up the pictured QuakeWars animation to the BoA song 抱きしめる with a new feature coming soon to public builds. Hey, it's not a dancing Lineage II elf for once. ^^
Update:
Ubuntu packages for amd64 released.
Windows i386 RC2 released.
Monday, November 19, 2007
freyja moves to lua cont.
The Lua based client has progressed a lot today. As you can see the previous feature set is nearly complete along with some other UI enhancements. All widgets should be done now aside from some minor issues here and there. A few minor widget alignment and fill issues remain as you can see. I also don't have the mouse events completely done yet for mgtk_lua opengl_canvas either. I'm likely going to do a rewrite on the custom canvas widget soon anyway to finish off the new feature list. The new scenegraph tree widget hasn't been shown on the blog until now as well.
I hope to finish up the UI script tomorrow, but until then you can set LUA_UI 0 in the freyja/src/config.h to build the old mlisp based client. As of right now mlisp is still used for events and symbol binding at the core to retain compatibility with both scripting systems. If I can get at least back to the support level the last test build had -- don't look at me like that -- I'll do some binary releases. One of the reasons Lua rollover was bumped is to focus on being more user friendly quicker. I'm also going to start moving some glue / event code into Lua scripts once the next build is done. The next test bulid 0.9.5.17-Lua will mostly be to get the kinks out of the new UI scripting / event system before plowing into other things.
I hope to finish up the UI script tomorrow, but until then you can set LUA_UI 0 in the freyja/src/config.h to build the old mlisp based client. As of right now mlisp is still used for events and symbol binding at the core to retain compatibility with both scripting systems. If I can get at least back to the support level the last test build had -- don't look at me like that -- I'll do some binary releases. One of the reasons Lua rollover was bumped is to focus on being more user friendly quicker. I'm also going to start moving some glue / event code into Lua scripts once the next build is done. The next test bulid 0.9.5.17-Lua will mostly be to get the kinks out of the new UI scripting / event system before plowing into other things.
Sunday, November 18, 2007
freyja 0.9.5.17-lua
Wow, it's been a month since the last update. If you don't hang out on the irc channel I have some big news. Freyja has almost migrated fully from mlisp to Lua for UI scripting and event processing.
This current prototype UI (pictured) is generated in Lua with my updated Lua/GTK+ binding. Events can now bind to Lua /C / C++ / mlisp function handlers and even canned lua scripts. No glue code in C/C++ or mlisp is needed now. The 'tracer' Lua client is running off the same backend as mlisp client shown -- at the same time. Yeah, it's insanity.
I haven't translated the entire UI from mlisp to Lua yet, which is why its sidebar is mostly bare in the Lua based client. Most of this was done this week during down time, and this is what I bumped the other features for mentioned at the irc meetings. I'm reworking the renderer as well, but that likely won't be public until it's more stable.
On the gaming tip:
I'm now ranked #25 in QuakeWars by knife skills for those keeping score. You should also check out Uncharted on the Playstation 3 -- sure the game is awesome -- even better the animation system is so well thought out you'll be in awe. ^^
This current prototype UI (pictured) is generated in Lua with my updated Lua/GTK+ binding. Events can now bind to Lua /C / C++ / mlisp function handlers and even canned lua scripts. No glue code in C/C++ or mlisp is needed now. The 'tracer' Lua client is running off the same backend as mlisp client shown -- at the same time. Yeah, it's insanity.
I haven't translated the entire UI from mlisp to Lua yet, which is why its sidebar is mostly bare in the Lua based client. Most of this was done this week during down time, and this is what I bumped the other features for mentioned at the irc meetings. I'm reworking the renderer as well, but that likely won't be public until it's more stable.
On the gaming tip:
I'm now ranked #25 in QuakeWars by knife skills for those keeping score. You should also check out Uncharted on the Playstation 3 -- sure the game is awesome -- even better the animation system is so well thought out you'll be in awe. ^^
Monday, October 1, 2007
freyja dev cont
I have returned! I've just finished cooking a nice Japanese homestyle fried Spanish mackerel dinner. I just caught the fish only yesterday! No, that picture is one of the red drum I caught -- not said mackerel which are nearly the size of the bait I used to catch the drum. I caught a few drum on light bass tackle, but I broke about 4-5 leaders in the process. It's a good thing I don't live on the coast, or I'd fish and bake all day I fear. Baking and fishing are so manly! ^^
Now that I'm back to my workstation, development on freyja can continue. I need to find a salary job just to avoid going all over the place. I'm going to be implementing a new thread pool, vertex array, and finishing up the animator for non-skeletal animation this week. I might also add in a sky generator to prototype for kuzu. Big Mongoose's Fishing Tourney and Pizza Bake Off 2008! Oh hell no, but with a name like that EA would love to publish it I'm sure. ^^
Now that I'm back to my workstation, development on freyja can continue. I need to find a salary job just to avoid going all over the place. I'm going to be implementing a new thread pool, vertex array, and finishing up the animator for non-skeletal animation this week. I might also add in a sky generator to prototype for kuzu. Big Mongoose's Fishing Tourney and Pizza Bake Off 2008! Oh hell no, but with a name like that EA would love to publish it I'm sure. ^^
Monday, September 17, 2007
freyja 0.9.5.16
I wasn't able to work on my CELL project Sunday, so I tossed that time into doing some extra features and bugfixes for freyja. In fact by the time I was done I cleared out every bug in the 'on deck' queue except for the Lineage II import from pak bug. Well kids, it is first in first out. This also means it's now at the top of the list.
There will be Windows and Linux i386 packages tomorrow, and I'll likely make new Linux PPC64 and AMD64 packages as well. The screenshot to the right shows users now have a way to reset all editor colors with a single button now, so I don't want to see anymore black screens in the forums. Little things like that can be a big deal to some, since it was the #1 'bugfix' request in the entire project. ^^
Most of the features enhance the user experience in some form or another, however they're quiet subtle. The obsolete flat file formats for freyja model and material got new filedialog and recent files usage for example. The more important issue was the roadmap has been updated. Read the ChangeLog and TODO for details.
The march to 'modular freyja' continues as more subsystems are refactored and new designs are implemented. One of my favorites is the freyja UI will be completely replaced by a new set of libraries and scripts by the freyja 0.9.6 release. Coming up for the 0.9.5.17 release:
There will be Windows and Linux i386 packages tomorrow, and I'll likely make new Linux PPC64 and AMD64 packages as well. The screenshot to the right shows users now have a way to reset all editor colors with a single button now, so I don't want to see anymore black screens in the forums. Little things like that can be a big deal to some, since it was the #1 'bugfix' request in the entire project. ^^
Most of the features enhance the user experience in some form or another, however they're quiet subtle. The obsolete flat file formats for freyja model and material got new filedialog and recent files usage for example. The more important issue was the roadmap has been updated. Read the ChangeLog and TODO for details.
The march to 'modular freyja' continues as more subsystems are refactored and new designs are implemented. One of my favorites is the freyja UI will be completely replaced by a new set of libraries and scripts by the freyja 0.9.6 release. Coming up for the 0.9.5.17 release:
- All new native freyja file format, which is zipped XML a la COLLADA.
- New camera system.
- Optimizations to Mesh for improved memory usage.
- True edge based editing. ( No more marking vertex pairs. )
- The new Metadata design gets additional major functionality.
Saturday, September 15, 2007
Freyja 0.9.5.16 binary release tonight.
I have to attend another dinner this weekend, however I cranked out full metadata support before I leave! I think I fixed enough bugs and tossed in enough features for the .16 release now. I'll go back and rework the public TODO as well, since it's become some wishlist dumping ground again. I wrote most of this from 0100 - 0300 this morning. Report any bugs! ;)
This means that editing is about to get a lot easier with far less modes to worry about. Also it means you can import metadata objects which carry XML / plain text with them. You can also use mesh snippets as 'icons'. I don't material support or lighting done for the icons yet, but I did add a cheap outline for them really quick. Right now it has a basic text editing of the XML payload, but later I'll use the new QueryDialog support to dynamically generate widgets for the XML tags optionally. Cameras and Lights will become metadata based soon, which will bring more depth via a property dialog. Also you can edit all metadata objects from the same major mode. Enjoy a some sushi with a yatai on the beach. I could add animation for the icons at a later date. The general ideas are icons are editable meshes, instanced, and are mostly for things like level editing model/waypoint placement.
There will be a binary releases for: Linux PPC, AMD64, and i386; Windows. I'm going to start working on a new SPU accelerated mesa for PS3Linux Sunday as well. I hope to improve speed well enough to release a small game engine to the community -- along with freyja to make/edit content. Basically, I'm making a PS3Linux game SDK. This SDK / engine is known as project kuzu. One of the goals is to make 720p OpenGL games a possibility on the platform. I'll see if I can post some screens of the game engine running on the PS3 later in the week. Well, I have to go. At least it's free food, but hopefully it won't be food from the Outback. ^^
Update: ( 0322 )
Dinner was canceled, so I ended up doing some 'yard work'. I cut down some trees that were in danger of falling over from the recent storms. Needless to say I did not get free food. I *am rather lucid considering what time it is I suppose. Look at all those grammar errors above. This is what Saturdays are for, right?. Cutting a new Open Source project release is serious party time. ;)
PPC64 Ubuntu packages are uploading right now, and I'll toss the other builds up tomorrow. The PS3 I was using for building the packages needed a lot of package updates to say the least. I hope to get the new CELL SDK 3.0 'early release' on it soon, but I hit a few snags today.
This means that editing is about to get a lot easier with far less modes to worry about. Also it means you can import metadata objects which carry XML / plain text with them. You can also use mesh snippets as 'icons'. I don't material support or lighting done for the icons yet, but I did add a cheap outline for them really quick. Right now it has a basic text editing of the XML payload, but later I'll use the new QueryDialog support to dynamically generate widgets for the XML tags optionally. Cameras and Lights will become metadata based soon, which will bring more depth via a property dialog. Also you can edit all metadata objects from the same major mode. Enjoy a some sushi with a yatai on the beach. I could add animation for the icons at a later date. The general ideas are icons are editable meshes, instanced, and are mostly for things like level editing model/waypoint placement.
There will be a binary releases for: Linux PPC, AMD64, and i386; Windows. I'm going to start working on a new SPU accelerated mesa for PS3Linux Sunday as well. I hope to improve speed well enough to release a small game engine to the community -- along with freyja to make/edit content. Basically, I'm making a PS3Linux game SDK. This SDK / engine is known as project kuzu. One of the goals is to make 720p OpenGL games a possibility on the platform. I'll see if I can post some screens of the game engine running on the PS3 later in the week. Well, I have to go. At least it's free food, but hopefully it won't be food from the Outback. ^^
Update: ( 0322 )
Dinner was canceled, so I ended up doing some 'yard work'. I cut down some trees that were in danger of falling over from the recent storms. Needless to say I did not get free food. I *am rather lucid considering what time it is I suppose. Look at all those grammar errors above. This is what Saturdays are for, right?. Cutting a new Open Source project release is serious party time. ;)
PPC64 Ubuntu packages are uploading right now, and I'll toss the other builds up tomorrow. The PS3 I was using for building the packages needed a lot of package updates to say the least. I hope to get the new CELL SDK 3.0 'early release' on it soon, but I hit a few snags today.
Tuesday, September 11, 2007
Friday, September 7, 2007
freyja freyja everywhere...
Where are the binary releases!?
Well, it's this simple I found some huge bugs and didn't release any. To make up for making elves cry I'll toss you guys a bone. This Monday ET: QuakeWars demo will be released. To celebrate I'm uploading a new plugin to import / export these models, but know that they haven't been tested very well much like the old Md5 support.
Speaking of tests... regression testing is coming to the cmake build system to stamp its foot on the chests of bugs. The current tests aren't very formalized, but I guess that's ok given the current state of development.
This does mean now every new module will need at least a *working* and *active* unit test to be committed now. No more using "cmake sucks" as an excuse. I'll see about scripting some cmake / ctest / svn commit scripts for extra safety. Also the new 'IK friendly' terrain system is up in midgard now as well. Now I just need to make it pretty and toss in some more features here and there for a public release. I'm still trying to get a fulltime job, since contract work isn't paying off for me. This means if I'm doing a lot of interviews and such time for this project will continue to suffer.
Sunday, September 2, 2007
Hardware woes...
You guys won't believe this. I've been having to do less work on my main workstation for the last couple of weeks. I had odd heat and hardware issues which caused locks and freezes. This didn't help get much work on this project done in my spare time. Admittedly, I haven't been able to sit down in front of it much during that period either due to jobs. Today I had the chance to break down the system and pull all the boards, heatpipes, and various other parts not soldered into the motherboard. The problems?
Problem one: I found a spot on one board where dust was wrapped around a jumper pretty tight, which may have lead to it's 'acting flaky' during boot. If anyone reading this can find a study on the conductivity of dust I'd enjoy seeing it. I'm almost certain this is why that card was randomly failing to init at boot time, since it no longer exhibits that behavior so far. It was seated well, etc when I pulled it.
Problem two: the GPU had a tiny, tiny dust bunny in the inner heat sink -- under the pretty logo shield and cover. This tiny bunny was causing a 25C-30C rise recorded at the core -- aka Massive Damage. I'm betting the localized heat was much higher. Given the same temperatures in the room for today and yesterday the core readings are 25C cooler by the time the UI loads, and 30C cooler at idle some time after that.
Back to the localized heating on the GPU. The localized heating was likely much higher than the core reading, and it was affecting a small area of the GPU. This must have caused the errors when doing 'heavy' rendering. In turn leading to freezes and lock ups. Also my ambient case temps are down somewhat as well. The moral of this story is that when you clean out your PC -- you need to break it down and clean it out really well. Take off the shields, tunnels over the heat pipes, etc and remove that dust. At least I didn't see any 'whiskers' anywhere -- unless that dust on the jumper was over one. ^^
Hopefully, now that is done I can work on the game engine and freyja for most of the holiday weekend. I'll also bake some pizzas on the stone, and work on the new bokken I'm making. I'm mostly going to focus on finishing up the new plugin systems in freyja, and working on the Lua side of the game engine. The new walkmesh, texture splat, and geomipmapping are getting some love too.
Problem one: I found a spot on one board where dust was wrapped around a jumper pretty tight, which may have lead to it's 'acting flaky' during boot. If anyone reading this can find a study on the conductivity of dust I'd enjoy seeing it. I'm almost certain this is why that card was randomly failing to init at boot time, since it no longer exhibits that behavior so far. It was seated well, etc when I pulled it.
Problem two: the GPU had a tiny, tiny dust bunny in the inner heat sink -- under the pretty logo shield and cover. This tiny bunny was causing a 25C-30C rise recorded at the core -- aka Massive Damage. I'm betting the localized heat was much higher. Given the same temperatures in the room for today and yesterday the core readings are 25C cooler by the time the UI loads, and 30C cooler at idle some time after that.
Back to the localized heating on the GPU. The localized heating was likely much higher than the core reading, and it was affecting a small area of the GPU. This must have caused the errors when doing 'heavy' rendering. In turn leading to freezes and lock ups. Also my ambient case temps are down somewhat as well. The moral of this story is that when you clean out your PC -- you need to break it down and clean it out really well. Take off the shields, tunnels over the heat pipes, etc and remove that dust. At least I didn't see any 'whiskers' anywhere -- unless that dust on the jumper was over one. ^^
Hopefully, now that is done I can work on the game engine and freyja for most of the holiday weekend. I'll also bake some pizzas on the stone, and work on the new bokken I'm making. I'm mostly going to focus on finishing up the new plugin systems in freyja, and working on the Lua side of the game engine. The new walkmesh, texture splat, and geomipmapping are getting some love too.
Tuesday, August 21, 2007
Damn the torpedoes
Instead of doing a source release, I just went ahead a jumped over the release schedule. Lua scripting for gtk+, OpenGL, and more are about finished now. Also UI plugins can now draw inside the freyja modeler scene, and aren't just limited to widget elements. I might be releasing two 'big' plugins in regards to midgard. An Octree 'cooker' with support for walkmesh, physics materials, etc. And a very simple IK solver / IK animation test plugin. I told you I'd do a weeks worth of code in a day. The bad news is I have to rewrite a lot of scripts in lua before I can check it in! You were wondering what the catch was! ;)
Like I said the roadmap was going to get turned on its head. I'm now considering breaking up the horrible control / view into plugins sooner now. The main focus has shifted to getting the 'map' editing up and running. I'm going to try and squeeze in metadata entities too.
This update has no affect on kuzu aside from pretty IK based animation coming sooner.
Like I said the roadmap was going to get turned on its head. I'm now considering breaking up the horrible control / view into plugins sooner now. The main focus has shifted to getting the 'map' editing up and running. I'm going to try and squeeze in metadata entities too.
This update has no affect on kuzu aside from pretty IK based animation coming sooner.
Saturday, August 18, 2007
What the hell is going on?
This has been a busy week, and I barely got to touch Freyja or Kuzu again. This week should see the lua wrapper for mgtk checked into svn, and I've already ticketed another build system rewrite. WTF?! Yeah, you see Cmake 2.6 will finally support proper cross compile builds. This means I can remove the 'parallel track' build system. Instead of maintaining 2 build systems and 4+ rulesets for the project -- I would be able to reduce to one build system and 3 rule sets. I've updated the roadmap accordingly. I have no idea when they'll have this out either, so it's just ticketed for now. This also means I didn't have time to work on any Lineage II tools. I'll likely take a stab with those and Oblivion tools Sunday. I don't like to see Elves cry.
Speaking of Cmake... The current Cmake build on OS X doesn't work w/o the libtool injection hack I've discussed with dtm. If you want more information bug dtm, since he's the official OS X punching bag now. Yes, you still have to build Cmake from source until fink adds recent builds. I may have forgot to mention that before on the blog, but I'm sure if you managed to get all the dependency packages built you figured that out too. As far as I know it's a limit of Cmake, but if it's not instead of bitching on internet forums email me or dtm to fix it. I don't even have OS X anymore, so I was just reading documentation and guessing when I wrote the OS X build patches. It's amazing to me they even work. Perhaps more amazing the documentation was correct. ^^
I'm going to try and write a weeks worth of code for Freyja today, so wish me luck. I'm trying pretty hard not to get hit by the metaphorical bus again. If I get the new Lua based UI done today I'll post a pretty screenshot perhaps even with a pony. I know how you guys love ponies.
Speaking of Cmake... The current Cmake build on OS X doesn't work w/o the libtool injection hack I've discussed with dtm. If you want more information bug dtm, since he's the official OS X punching bag now. Yes, you still have to build Cmake from source until fink adds recent builds. I may have forgot to mention that before on the blog, but I'm sure if you managed to get all the dependency packages built you figured that out too. As far as I know it's a limit of Cmake, but if it's not instead of bitching on internet forums email me or dtm to fix it. I don't even have OS X anymore, so I was just reading documentation and guessing when I wrote the OS X build patches. It's amazing to me they even work. Perhaps more amazing the documentation was correct. ^^
I'm going to try and write a weeks worth of code for Freyja today, so wish me luck. I'm trying pretty hard not to get hit by the metaphorical bus again. If I get the new Lua based UI done today I'll post a pretty screenshot perhaps even with a pony. I know how you guys love ponies.
Sunday, August 5, 2007
PS3Linux 'port' is done.
I finally got around to committing the big endian and powerpc patches to 0.9.5 svn. I haven't tested this, so be warned! I did take a pretty pick of a model I imported really quick. You guys are killing me with arch support. Hopefully I can go back to features soon. The bug was some obsolete code for big endian and a bad trap instruction in PPC. No big deal aside from waiting forever to download, build and setup the kernel, VNC, sshd, etc. Enjoy this screenshot of my VNC session of freyja on PS3Linux. ^^
Sunday, July 29, 2007
I'm back!
The Playstation 3 build of freyja is now forked off. I'll release updated binaries for Win32 users Sunday night as discussed. Due to all that's happened the roadmap will be reworked. Yes, it sucks but life happens. Expect another bug fix build, which mainly focuses on fixes for Win32. I'm likely going to shift the Lua based UI to the top of the TODO given it could help regain time with increased productivity.
Unoptimized Playstation 3 Linux packages *may come out next week. The long forgotten big endian code in the system facade needs major fixes to bring it up to speed it seems. Those of you that remember the first modeler I wrote may recall it used a joystick as an input device -- that's all I'm saying for now. It was always great for presentations anyway. No screens as of yet.
My Secret Game Engine Project ( SGEP ) hasn't been touched for a while now. I'm going to dust that off and see if I can rip out half the codebase to toss into freyja's svn. Stripping it down and porting it would be worthwhile given the feedback I've seen so far. I have no timeline for that.
Update:
Win32 binaries of the 0.9.5.15-2 build, which includes the requested tools, is uploading right now. This build is a debug build with symbols, so get to testing. All you need is cygwin setup with gdb or ddd if you like UIs for debugging.
freyja_0.9.5.15-win32-lua-debug.zip
Unoptimized Playstation 3 Linux packages *may come out next week. The long forgotten big endian code in the system facade needs major fixes to bring it up to speed it seems. Those of you that remember the first modeler I wrote may recall it used a joystick as an input device -- that's all I'm saying for now. It was always great for presentations anyway. No screens as of yet.
My Secret Game Engine Project ( SGEP ) hasn't been touched for a while now. I'm going to dust that off and see if I can rip out half the codebase to toss into freyja's svn. Stripping it down and porting it would be worthwhile given the feedback I've seen so far. I have no timeline for that.
Update:
Win32 binaries of the 0.9.5.15-2 build, which includes the requested tools, is uploading right now. This build is a debug build with symbols, so get to testing. All you need is cygwin setup with gdb or ddd if you like UIs for debugging.
freyja_0.9.5.15-win32-lua-debug.zip
Saturday, July 7, 2007
freyja on OS X
Thursday, July 5, 2007
freyja 0.9.5.14 notes
I forgot to mention all the new features from the .13 release wishlist got into .14. If you click on your Help menu in freyja you'll notice that it now links to various websites for this project for reporting bugs, etc across platforms. In Windows it will load your preferred browser, and currently in Linux it attempts to guess your preferred browser. I may add gconf support later, since this project favors GNOME users to use your set preference for that DE.
In the future auto network updates much like firefox in Windows will be integrated. This way you only need to download what's changed, and the system becomes more flexible. Now that the supporting libraries are about locked down it might be possible to do this as soon as the zip/gz support library is ready. I'm holding off checking in the network code done last week until then. This is mainly due to the fact that I might want to add new hooks for compression on the fly or maybe even binary deltas. That is however unlikely for an initial test release.
If you have the Lua plugin crash in Windows please report it. I'm going to go ahead and schedule time to look at it this weekend, but more test data is always nice. I'm going to some job interviews out of town this week, as I'm seeking to relocate to the Atlanta metro area. The next freyja release will likely be mostly bug fixes as well due to the time constraints.
In the future auto network updates much like firefox in Windows will be integrated. This way you only need to download what's changed, and the system becomes more flexible. Now that the supporting libraries are about locked down it might be possible to do this as soon as the zip/gz support library is ready. I'm holding off checking in the network code done last week until then. This is mainly due to the fact that I might want to add new hooks for compression on the fly or maybe even binary deltas. That is however unlikely for an initial test release.
If you have the Lua plugin crash in Windows please report it. I'm going to go ahead and schedule time to look at it this weekend, but more test data is always nice. I'm going to some job interviews out of town this week, as I'm seeking to relocate to the Atlanta metro area. The next freyja release will likely be mostly bug fixes as well due to the time constraints.
Monday, July 2, 2007
freyja 0.9.5.14
The binaries should be out by tonight for win32 and Ubuntu Linux amd64. I didn't get time to finish the new keyframing, or the camera system. We had some power outages and I had to clear some limbs from around my dog's play area. Oh well. =)
I'll update this post with the feature update once it goes live. Hopefully, after I get back tonight I can get cameras in the UI in some form really quick. I have the new keyframing partially merged, but I refuse to commit the rollover without any testing.
Update:
Here's a pic editing a tombraider level... ah, yes a tombraider level. Why? It shows off the new skeleton of the camera system.
My laptop isn't really suited for OpenGL development. I had network access during the power outage, but I couldn't really do much work on freyja. Since I wasn't able to code much this week most of the improvements are reorganizing the project goals and fixes. I cleaned up mstl a little more, pushed back LegacyABI use, and got the backend ready to rework the entire animation system. Right now the camera is KISS with a simple pos and target interface. The other feature in this release is Lua now supports QueryABI, so you can prompt a user for simple data input from Lua macros. Tomraider map import is enabled once more and it's using the 0.9.5 ABI as you can see. The binaries should be up as soon as they finish building and uploading.
I'm going to be off site for a bit this week, so I'll likely only have 1-2 nights to work on freyja. In that time I'm going to work on a design for Lua mgtk+ widgets and finishing up the features missed due to downtime. The new Keyframe and Track API behind the ABI may go in next week even if I don't get time to test -- you guys will have to test it. =) Camera editing and editing in camera view are planned as well. It will be cool to have the camera animation in by next release using the new keyframe system. I know this project is mostly used for fan art and animation, so this is a way you guys can do more with the tools I provide.
Update #2:
I had to make an lua5.1 dll for win32 users at the last minute! Amd64 bins will be delayed until tomorrow, because you guys can just build from source anyway. I'll fix the cmake crap to autobuild with dpkg this week too -- like the old Makefiles I wrote before then. ;)
Update #3:
I gone ahead and rewrote the cmake + debian bulid systems, so it's easy as pie again to make debs. Just download the source and do a 'make deb' in the top level. Cmake is now used for the debian packages and it even auto generates a debian/changelog for you. AMD64 debian packages are uploaded, and i386 packages should be up tomorrow if I get time. i386 debian packages are uploaded. These packages are actually based on Ubuntu Feisty amd64/i386.
Enjoy the July Forth Holiday!
I'll update this post with the feature update once it goes live. Hopefully, after I get back tonight I can get cameras in the UI in some form really quick. I have the new keyframing partially merged, but I refuse to commit the rollover without any testing.
Update:
Here's a pic editing a tombraider level... ah, yes a tombraider level. Why? It shows off the new skeleton of the camera system.
My laptop isn't really suited for OpenGL development. I had network access during the power outage, but I couldn't really do much work on freyja. Since I wasn't able to code much this week most of the improvements are reorganizing the project goals and fixes. I cleaned up mstl a little more, pushed back LegacyABI use, and got the backend ready to rework the entire animation system. Right now the camera is KISS with a simple pos and target interface. The other feature in this release is Lua now supports QueryABI, so you can prompt a user for simple data input from Lua macros. Tomraider map import is enabled once more and it's using the 0.9.5 ABI as you can see. The binaries should be up as soon as they finish building and uploading.
I'm going to be off site for a bit this week, so I'll likely only have 1-2 nights to work on freyja. In that time I'm going to work on a design for Lua mgtk+ widgets and finishing up the features missed due to downtime. The new Keyframe and Track API behind the ABI may go in next week even if I don't get time to test -- you guys will have to test it. =) Camera editing and editing in camera view are planned as well. It will be cool to have the camera animation in by next release using the new keyframe system. I know this project is mostly used for fan art and animation, so this is a way you guys can do more with the tools I provide.
Update #2:
I had to make an lua5.1 dll for win32 users at the last minute! Amd64 bins will be delayed until tomorrow, because you guys can just build from source anyway. I'll fix the cmake crap to autobuild with dpkg this week too -- like the old Makefiles I wrote before then. ;)
Update #3:
I gone ahead and rewrote the cmake + debian bulid systems, so it's easy as pie again to make debs. Just download the source and do a 'make deb' in the top level. Cmake is now used for the debian packages and it even auto generates a debian/changelog for you. AMD64 debian packages are uploaded, and i386 packages should be up tomorrow if I get time. i386 debian packages are uploaded. These packages are actually based on Ubuntu Feisty amd64/i386.
Enjoy the July Forth Holiday!
Tuesday, June 26, 2007
Delay
In case you missed the IRC dicussion, the .13 release won't have a binary release this week. There were some crash bugs found, and they have now been fixed. However during that time the 'new stuff' like subdivision ( non-smoothing ) and usability 'fixes' started going it too. If you want this release you'll have to build it out of svn yourself, or wait for the next release.
Here's a pic of a snake I made with the new subdiv and the dmap brush. I guess my modeling is getting better. I'm thinking about making the dmap paint tool a lot more usable eg. for moral beings to use.
You may have heard the 0.9.6 logo is in concept. It looks like it'll be a Miko like 'mascot' to fit with the release name kagura, and everyone likes animating dancers anyway. I think it's time to show off what you can do with freyja, and a logo character is a good first step. Also being a Miko it gives a chance to have a range of nik-naks like a yumi and o-fuda or maybe even a katana. I did say concept. The WIP will become the alpha tutorial now, and the shishi o-doshi tutorial will be able to be pushed out sooner.
On the slate for next Release:
Here's a pic of a snake I made with the new subdiv and the dmap brush. I guess my modeling is getting better. I'm thinking about making the dmap paint tool a lot more usable eg. for moral beings to use.
You may have heard the 0.9.6 logo is in concept. It looks like it'll be a Miko like 'mascot' to fit with the release name kagura, and everyone likes animating dancers anyway. I think it's time to show off what you can do with freyja, and a logo character is a good first step. Also being a Miko it gives a chance to have a range of nik-naks like a yumi and o-fuda or maybe even a katana. I did say concept. The WIP will become the alpha tutorial now, and the shishi o-doshi tutorial will be able to be pushed out sooner.
On the slate for next Release:
- Finish up new keyframing.
- More modeling and animation features. TBA
- More usability fixes.
- Edge editing comeback? (bonus)
- Loop knife subdiv? (bonus)
- Lua macros hooked up to new QueryABI.
- LegacyABI dependency removal in UI.
- More refactoring.
Thursday, June 21, 2007
freyja 0.9.5.13
Ok, claim down kids. I'm checking in the heightmap editor, lua binding, and slight UI improvement for this release soon. I'm holding back on the animation changes to avoid various issues. I didn't have but a couple of days this week to work on freyja, so today I wrote the Lua binding and that'll be a good bone. Mostly boring fixes for UI, bulid system, and minor features you'll likely not notice as features. Oh I guess you'd notice the paint tool has facet based heightmap and dmap painting. Most people would notice that anyway. It's not Perpixel since that would take more than a day. Notice the pretty new file shelf with Lua and Python script buttons/drop downs also. Yes, cameras will be brought back on line ASAP given heightmap editing is in -- tombraider level editing to comeback? You'll really have to beg me to dig that code back out for a rewrite. Onward to alpha release! ;)
Saturday, June 16, 2007
freyja 0.9.5.12
New release coming this weekend. Finally back on track after the hell of reworking the cross compiler environment and porting a few libraries to Windows last release. This release has a lot of nice new stuff. As you can see I finally fixed the rig and animated that whacky model I got for free. I decided not to post a screenshot of the track with the winged spear attack, since it's too cheesy. I'm going to try and get Md5Anim support in this release too, but I'm baking up a storm in the kitchen later today -- no promises.
I'll tick off the best parts of the 0.9.5.12 ChangeLog for you:
Update:
Win32 binary doesn't have plugins, so you must download the -plugins zip file to go with it. Python support was removed from this build, but if you miss it email me. I'm likely going to not release anymore python enabled win32 binaries again, since Lua plugin/macro support is coming soon. I might post a HOWTO if you want to know how to build support yourself.
I'll tick off the best parts of the 0.9.5.12 ChangeLog for you:
- Skeleton transform back, binds to Model.
- Md5Model plugin updated to 0.9.5 ABI.
- Paint tool prototype for (un)weighting, (un)selecting, and material reassignment.
- MSTL and mgtk minor updates.
- Ja format export disabled, and will be removed next release.
- Minor rendering updates should improve your framerate and cpu usage.
- 'XML pieces' prototype renamed snippets with tons of new stuff added.
- 3d 'icons' are now mostly shaded, so report if you love/hate it.
Update:
Win32 binary doesn't have plugins, so you must download the -plugins zip file to go with it. Python support was removed from this build, but if you miss it email me. I'm likely going to not release anymore python enabled win32 binaries again, since Lua plugin/macro support is coming soon. I might post a HOWTO if you want to know how to build support yourself.
Monday, June 11, 2007
freyja 0.9.5.11 test release
I got a chance to load up the win32 build in vmware, and it looked 'ok'. The win32 build system and environment were completely rewritten/changed in a couple of hours this morning. (0100-0300)
Expect bugs, and before you ask the plugins are from 0.9.5.9 and that's why you see two copys of mgtk and freyja libraries in the directory. I had to work on gtkglext 1.2.0 to get it working with the 2.10 build system, so report any issues there too. I'm considering making this the last debug+symbols test release, so that means the next release will be optimized to a degree. I'm considering tossing in SSE build options in the math lib too. It's in good enough shape now to start optimizing select subsystems. The march to 0.9.6 alpha continues. The next release will focus on UI refinement.
This release was mostly getting the new cross build system fixed, since most users are still on Windows. There were a lot of major fixes and a couple features as mentioned in the last post. The Ja model format is being deprecated this release, and Freyja will remain as a state dump format. I'm looking at compressed XML as the default down the road. Report bugs. ;)
Expect bugs, and before you ask the plugins are from 0.9.5.9 and that's why you see two copys of mgtk and freyja libraries in the directory. I had to work on gtkglext 1.2.0 to get it working with the 2.10 build system, so report any issues there too. I'm considering making this the last debug+symbols test release, so that means the next release will be optimized to a degree. I'm considering tossing in SSE build options in the math lib too. It's in good enough shape now to start optimizing select subsystems. The march to 0.9.6 alpha continues. The next release will focus on UI refinement.
This release was mostly getting the new cross build system fixed, since most users are still on Windows. There were a lot of major fixes and a couple features as mentioned in the last post. The Ja model format is being deprecated this release, and Freyja will remain as a state dump format. I'm looking at compressed XML as the default down the road. Report bugs. ;)
Saturday, June 9, 2007
0.9.5.11?
It looks like there will finally be a new release this week. Huge fixes for FK animation, UV editor, etc. This just proves how much 'testers' use maya in tandem with this project, since bugs that horrible should have been noticed. I'll let you guess what they were. =)
Good news for Vampire fans. I'm slowly checking in partial XML serializers into the codebase this weekend. This means you can mix and match skeletons, meshes, weight maps, etc -- or backup your work while on the bumpy alpha road.
I've been looking at skinning some Bloodlines models to Redemption skeletons as an excuse to play with them in my demo engine and test the plugins. XML Metadata for keyframes should be in the next release also. This also means a nad 'cooker' might be coming out like the lineageII tool. Export XML and cook it into a nad... but I never know what I'll have time for when it comes to hobby work. Here's some pics you might enjoy. Yes, I'm finally going to fix the ugly arm 'icons' soon. No, I haven't skinned the Pisha mesh for the skeleton I'm animating there as you can see she's in rest. I'm sure you love her missing texture hair... those question marks are sexy! Once I have her horribly animatied corpse done I may share a video. Everyone can laugh at the programmer animating vampires so poorly -- people ask if they're zombies. I'm going to get some sleep. おやすみ ;)
Good news for Vampire fans. I'm slowly checking in partial XML serializers into the codebase this weekend. This means you can mix and match skeletons, meshes, weight maps, etc -- or backup your work while on the bumpy alpha road.
I've been looking at skinning some Bloodlines models to Redemption skeletons as an excuse to play with them in my demo engine and test the plugins. XML Metadata for keyframes should be in the next release also. This also means a nad 'cooker' might be coming out like the lineageII tool. Export XML and cook it into a nad... but I never know what I'll have time for when it comes to hobby work. Here's some pics you might enjoy. Yes, I'm finally going to fix the ugly arm 'icons' soon. No, I haven't skinned the Pisha mesh for the skeleton I'm animating there as you can see she's in rest. I'm sure you love her missing texture hair... those question marks are sexy! Once I have her horribly animatied corpse done I may share a video. Everyone can laugh at the programmer animating vampires so poorly -- people ask if they're zombies. I'm going to get some sleep. おやすみ ;)
Tuesday, June 5, 2007
Demos?
"Where have you been?" I took off for a week in May, which many of you know. After that started on a demo for my resume last week. It may not look impressive with my programmer art, and lack of visual features. It does do XML+Lua with full macros and some more 'hardcore' aka boring things you don't care about which are nice skills to show off for under the hood. It does however stream a version of Wagner's Faust Overture I made to loop nicely while streaming from a vorbis file.
"What the hell does this have to do with freya?!" I'll tell you, dear guests. I was so impressed with how well Lua + XML worked out in my demo that I'll soon be using a system like it in my freyja non-public branch. If it goes as well as I expect -- it'll be in the next release at the end of the week. Considering python and C# API generators took a day I can't see Lua taking long either. The real issue will be replacing the mlisp/mgtk layer, which could take a couple of days. Hopefully, I'll get some free time to knock those out while working on this demo.
If I can't get the time to finally rig that mesh properly I might just use a model from Bloodlines or Redemption as a kind of gag. I already have a pisha mesh laying around... anyway I'll add a projected textures for canopy shadows and/or light beams and shadow volumes later so you guys won't cry. Maybe a cool GLSL refraction shader... yeah, like I have time. If I don't watch out I might make a full, albeit tiny game engine again. Any comments on how to improve my programmer art would be fun. At least I didn't hand draw the fonts. ;)
"What the hell does this have to do with freya?!" I'll tell you, dear guests. I was so impressed with how well Lua + XML worked out in my demo that I'll soon be using a system like it in my freyja non-public branch. If it goes as well as I expect -- it'll be in the next release at the end of the week. Considering python and C# API generators took a day I can't see Lua taking long either. The real issue will be replacing the mlisp/mgtk layer, which could take a couple of days. Hopefully, I'll get some free time to knock those out while working on this demo.
If I can't get the time to finally rig that mesh properly I might just use a model from Bloodlines or Redemption as a kind of gag. I already have a pisha mesh laying around... anyway I'll add a projected textures for canopy shadows and/or light beams and shadow volumes later so you guys won't cry. Maybe a cool GLSL refraction shader... yeah, like I have time. If I don't watch out I might make a full, albeit tiny game engine again. Any comments on how to improve my programmer art would be fun. At least I didn't hand draw the fonts. ;)
Saturday, May 12, 2007
freyja 0.9.5.9
As you can see the UI VFS plugin is playing nice with the recently updated UTPackage plugin. If you read the latest forum post it has detailed instructions on how to load your Lineage II SkeletalMesh right out of the UKX more or less. I'm going to be merging the VFS plugin into Freyja, so things like this can be a two step process for you guys. Open the pak and browse to the SkeletalMesh and double click. Oh, I guess that's three steps. Many other minor fixes and features are in as well. Expect your packages this Sunday as usual with the new regular release schedule. ;)
Wednesday, May 9, 2007
Animator news
As the animator moves along it's time to start adding pretty, pretty UI elements. I wrote some weak bisymmetry to the skeletal system today. This helps me crank out better looking stick men as you can see. Not bad for an animator that is still prealpha. Finally, the idea of pulling out all the features and reimplementing them is paying off big time. IK is still on hold pending the bug found in 0.9.5.8. The 0.9.5.9 release should have a ton of bug fixes and other features you'll enjoy.
I'm still hitting a lot of annoying bugs in the UI controls, so by the time alpha is out you can go back to having a trusty file I/O and lots of pretty autogenerated plugin preferences. Yes, I did cheat and reuse a mesh. I'll toss up some pics of the skeleton, skinning, etc so you can tell me if my programmer art is getting better. ;)
No need to ask... the Lineage II UI plugin will have pak support for 0.9.5.9 release. The skeleton you see above may be included with this plugin. It's possible to dynamically skin PC models, but I think it would be better to spend that time on RE. Depending on time I may peek at L2/UE2 skeletal serialized dumps. If it looks like a 'mini feature' you will get it, since this is the #1 requested feature of this project as of now. Several plugins will likely continue being updated from the legacy API this week too. You'll notice in the screenshot I got around to updating the SMD support for skinning today.
Please remember this project isn't meant to unseat blender or anything of that nature. It's an old hobby project I dusted off to remake into something more akin to milkshape. ;)
Monday, May 7, 2007
freyja 0.9.5.8
Many, many bug fixes and minor features in this release. FK is fully working again aside from usability issues. It's about time to start writing some user documentation, but that will wait for alpha's stable underpinnings. IK did not get released, and may be put on hold for a while. I found some very annoying bugs in the interface / event system caused, which I fixed -- yet more remain. Mostly it's due to buggy gtk+ file dialogs, so I'm going to be reworking those for 0.9.5.9.
This mostly means when you save it'll do annoying things like save twice depending on how you trigger the file dialog action. I'm tempted to write my own file dialog widgets again after this... Here's an ugly screen displaying some wonderus programmer art of me throwing a character 'model' out the building. Yeah, when I do scratch tests some real 'art' is made in the 10mins it takes to make a new skeleton / mesh / skin / animate. =/
Windows and Linux binaries will be out either tonight or tomorrow as the file server allows. If you're scratching your head over all the new texture generators... you might care to know I'm going to restore the auto UV mapping to it's former glory for the next release too. If you find any bugs as always please file them. Your bug reports save the lives of countless stick men!
Friday, May 4, 2007
Lineage II UI plugin
No, 0.9.5.8 isn't out yet. I did however release an UI plugin to load UE2 'RAW' SkeletalMeshes from Lineage II and other games. As of right now it's just the reverse engineering util, which guesses the serialized format on a per chunk data basis. This means only meshes working with -a option will work for now. This is basically a 5min feature for a fourm 'gift' -- but it does autogenerate pretty normals, etc for you. I'm planning to release improved utpak browsing support + RAW with the 0.9.5.8 release. Most likely all contained in the plugin. I'll also toss you a screenshot for being so nice. Try to guess what the model is from.
I should add that the reason for the delay was the network dropped for a while, so I had to wait for that and until I was finished watching the new Naruto Shippuuden. Go Team Maito Gai!
Wednesday, May 2, 2007
1% fixed
Well, now the FK issues are 'fixed' it's time to enforce the API changes all over the codebase and in plugins. As you can see I got time to fix the 1% and fix the SMD plugin's API use. Now to work on usability and UI fixes. Refactoring the UI, which still has leftovers from when this project was a software renderer, is going to be a major part of the move to 0.9.6 beta. I'll post another update if I get IK in svn, or if the legacy 'bones' are removed.
He's saying キタ!
He's saying キタ!
Tuesday, May 1, 2007
Bug fixes coming this week.
Hey hey kids. I think it's kind of crazy that I'm coding at 0300-0430 tonight, but the results are pretty nice. I got a ton of fixes and API updates in just after a few hours from last release.
- FK and skinning are about 99% done
- New dialog button icons
- PSK plugin update ( it using legacy API )
- Tons more skeletal visualization options
- A little optimization here and there
- Fixed a bug in bone pick ray from 0.9.5.7
Monday, April 30, 2007
Freyja 0.9.5.7
The file server cooperated! Freyja 0.9.5.7 for Windows was uploaded, however it looks like the i386 Ubuntu packages aren't uploaded yet. The Ubuntu packages haven't been tested as yet. If you find bugs or have comments about this release email me, or sumbit a bug to the bug database posted in the fourms. I'm skipping a x86_64 release again. It's already ~0400, so I'm not going to stay up much later. For your enjoyment I took a lame debugging screenshot. ;)
Sunday, April 29, 2007
Ch-Ch-Changes...
Version numbering will change with a new release tonight. A four point version number Major.Minor.Micro.Revision will be used from now on in the project. This is basically to help tell all the prealpha snapshots apart better, and testers/users don't have to remember the build ids. Also it'll be easier to track development and communicate timelines better. I finally got started on FK fixes today, and it'll be a while until we hit 0.9.6 alpha yet. If you have wishlist items not in the TODO file ( blueprint ) then you better be making your case now. I know Lineage II and NAD are very important to you guys. I haven't forgot, but I'm mostly adding features and not reverse engineering formats for this phase. I will fix any bugs you find in said support that already exists. ;)
Freyja 0.9.5.7 binary snapshots should be released tonight assuming the file server plays nice.
Freyja 0.9.5.7 binary snapshots should be released tonight assuming the file server plays nice.
Friday, April 27, 2007
Freyja 0.9.5 20070426
New development packages for Linux i386 (Debian/Ubuntu) are up. These include the updated query dialog and mlisp assert systems. These updates make it easy to warn the user about bad mlisp syntax/symbols and group user queries into a single *blocking* dialog.
I was hoping to get to work on animation this week, but stopping to do this first so debugging is now a breeze. Now all the libraries and the mlisp domain language hook into the libfreyja assert system, which can do the neat msgbox asserts via the freyja ui callback passed to libfreyja. Oh it's so freaking nice that you can use it for much more than breakpoint insertion / kill with info on why you hit said assert. Mlisp asserts add context about errors along with filename and line number. This beats the old debugging outside of the modeler by far. This also means you can continue on non-fatal errors/asserts now as well. I also updated some mesh generators, did a few icons, and fixed a crash in the Wavefront OBJ plugin. I'll release a Win32 bin snapshot as soon as I fix my i386 Wine to test it. I should have some x86_64 Linux bins up later as well, but I tend to do them last b/c being the native branch I don't want to leak unfinished or held back code/bins. =)
Update:
Win32 version did in fact upload around 0300 or so this morning, so title updated. I'm holding off on a x86_64 binary snapshot for now. I trust the 64bit users building right from svn anyway. ;)
Also I don't think I announced on the blog there is now bug tracking for the project at:
https://bugs.launchpad.net/freyja3d/
A great way to help the project is by filing bugs. It would be nice if someone copied all the old BUGS file bugs to the new database before I have to do it. ;)
As you can see in the TODO offical packages for Ubuntu are planned for 0.9.6. This will likely mean moving back to an automake build system, but if it looks like the autotools treadmill will be a problem I'll come up with something else instead. You should also note the new i386 packages are LTS based, and the amd64 are now Feisty based. They should work fine on LTS - Feisty, but the package dependencies might be slightly different.
I was hoping to get to work on animation this week, but stopping to do this first so debugging is now a breeze. Now all the libraries and the mlisp domain language hook into the libfreyja assert system, which can do the neat msgbox asserts via the freyja ui callback passed to libfreyja. Oh it's so freaking nice that you can use it for much more than breakpoint insertion / kill with info on why you hit said assert. Mlisp asserts add context about errors along with filename and line number. This beats the old debugging outside of the modeler by far. This also means you can continue on non-fatal errors/asserts now as well. I also updated some mesh generators, did a few icons, and fixed a crash in the Wavefront OBJ plugin. I'll release a Win32 bin snapshot as soon as I fix my i386 Wine to test it. I should have some x86_64 Linux bins up later as well, but I tend to do them last b/c being the native branch I don't want to leak unfinished or held back code/bins. =)
Update:
Win32 version did in fact upload around 0300 or so this morning, so title updated. I'm holding off on a x86_64 binary snapshot for now. I trust the 64bit users building right from svn anyway. ;)
Also I don't think I announced on the blog there is now bug tracking for the project at:
https://bugs.launchpad.net/freyja3d/
A great way to help the project is by filing bugs. It would be nice if someone copied all the old BUGS file bugs to the new database before I have to do it. ;)
As you can see in the TODO offical packages for Ubuntu are planned for 0.9.6. This will likely mean moving back to an automake build system, but if it looks like the autotools treadmill will be a problem I'll come up with something else instead. You should also note the new i386 packages are LTS based, and the amd64 are now Feisty based. They should work fine on LTS - Feisty, but the package dependencies might be slightly different.
Tuesday, April 17, 2007
Freyja 0.9.5 20070415
The builds are up on the file server finally. Linux x86_64/amd64 debs, Linux i386 debs, and Windows binaries with plugins have made it on the server. I held it back a bit to add the assert message boxes, so I can get some better bug reports. This build is important in that it has support for various libraries/features that were only in the Linux svn builds. I may have Linux x86_64/amd64 and i386 tarballs and up sometime tomorrow along with plugins.
What's left to do in 0.9.5?
Mostly a lot of 'housekeeping' and refactoring to remove some code so old it was from when this project had a software renderer. Some things are quiet 'boring' such as rewriting parts of the stl, and things only developers see. Some are very visible and annoying bugs caused by the much needed rewrites of the underpinnings. Please note I'm still doing most of the development from 0000 - 0400 in the morning, so excuse entries that don't make any sense. ^^
From the TODO:
What's left to do in 0.9.5?
Mostly a lot of 'housekeeping' and refactoring to remove some code so old it was from when this project had a software renderer. Some things are quiet 'boring' such as rewriting parts of the stl, and things only developers see. Some are very visible and annoying bugs caused by the much needed rewrites of the underpinnings. Please note I'm still doing most of the development from 0000 - 0400 in the morning, so excuse entries that don't make any sense. ^^
From the TODO:
- Do another pass on this file to be sure items aren't already completed.
- Finish OpenGLPrinter, 2d/3d billboard text using libfreetype.
- Verify math library, enforce automated testing at build.
- Fix mouse cursor control. eg: reverse bug, rotation not WYSIWYG, etc
- Basic geometry previews using blend vertices buffer - avoid data mutators.
- Skeletal animation refactor
- Fix remaining FK issues
- Various joint types: hinge, ball&socket, etc
- IK solver and interface
- New Timer for animation playback and keyframe timing
- Bones and bone transforms in same units!
- Finalize delta vs abs bone / keyframe transforms
- Rework weight system to support zeroed weights and grouping
- Merge the two bone rendering systems once debugging is done
- Fix bone bind, bindtoworld setup in libfreyja
- Channels support
- Ordering support
- Type of transform support
- Constraints support
- Texture buffer array per material for: diffuse/normal/gloss/data/dudv/etc
- Replace MaterialEv Load/Save material with libfreyja format+metadata.
- Finish breakup of GUI control into modules.
Sunday, April 15, 2007
Freyja 0.9.5 refactor redux
Got Builds?
Win32 builds of the new development branch RC are working again. I updated the all public plugins as well as far as I know. Win32 pthreads support is in svn too. There is a lot of new code in this build, and a lot of old code removed or rewritten. There should be noticeable performance improvements and new features. What's changed? The math lib, event system, several controllers, mstl, and generally small parts of everything. The view layout has also been slightly altered. I said I'd do a release this weekend, so I'm going to post binaries later today -- assuming no more server/power issues. ;)
FK still broken
Please note that FK didn't get fixed as of this writing. The new math library is hooked up, and for the most part finalized. It turns out the entire bone transform code path has to be verified again, since it seems it relied on mixed types before the rewrite.
Metadata
Metadata support is creeping into about every libfreyja class. I'll be using XML for the metadata, which for now means you'll have to *type in the metadata in an editor window. The XML will be stored with the native freyja format, and translated for plugin formats. Later I'll consider having a GUI facade for XML tags with the option to edit directly. Clearly allowing direct editing now allows more advanced and complex use, and it's easier to debug.
Bone metadata editing will be released soon, and I'll likely update the fan favorite NAD plugin to use it. If you have existing NAD files this means you can open the editor and see the XML translation of the skeletal metadata per bone/skeleton/object. Saving would translate it back to corresponding format data.
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. ;)
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:
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.
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 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
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. =)
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. =)
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
Tuesday, January 23, 2007
It's your birthday - go party
Just letting you know tomarrow is my birthday. I might not be on the fourms as much as I have been this week. I guess now is a good time to announce a new Windows build of freyja should be posted tonight. It might end up being just a patch, since I haven't decided what all is going in the package yet. I don't think enough plugins have changed to warrant an all new dump.
The lineageIIraw2obj alpha 5 is up, and support for Oblivion and LineageII in VFS+plugins should be wrapped up fairly soon. I don't think I'm going to have time to add ZIP to VFS, so I'm punting that feature again. I will however take a look at Milkshape/NOD/NAD support, and tune up the animation system with a focus on getting those working well. I've seen a few reports about the 'double skeletons'. That is what we in the industry would call the debugging of two parallel systems at the same time. I'm sorry it gave you nightmares, but I'll see what I can do to resolve the skeletal system(s). Several plugins use the 'old way', and now I'm trying to also push in 'the new way'. It's just visual debugging junk.
The lineageIIraw2obj alpha 5 is up, and support for Oblivion and LineageII in VFS+plugins should be wrapped up fairly soon. I don't think I'm going to have time to add ZIP to VFS, so I'm punting that feature again. I will however take a look at Milkshape/NOD/NAD support, and tune up the animation system with a focus on getting those working well. I've seen a few reports about the 'double skeletons'. That is what we in the industry would call the debugging of two parallel systems at the same time. I'm sorry it gave you nightmares, but I'll see what I can do to resolve the skeletal system(s). Several plugins use the 'old way', and now I'm trying to also push in 'the new way'. It's just visual debugging junk.
Saturday, January 20, 2007
LineageII alpha debugging
If you want to help with the alpha test for the updated LineageII/UT mesh extraction tool and plugins in Freyja then come on over to the fourms:
http://www.chatbear.com/?P1025898
There are a few screenshots up including the most complex model I've seen so far lilith. Come help debug one of the most popular plugins / tools for Freyja.
Update:
I just dropped alpha 3 of the cli test utility.
Wednesday, January 17, 2007
Ok then...
This is becoming a blog of screenshots... one last time. Here is the fairy in all her glory for those that must have textures and shaders. I will NOT write a distortion shader or particle snow, so get over it. ;)
I always loved the art direction in LineageII. It's the best looking MMO still, however they still use GameGuard so there is no playing it in Linux anymore.
Tuesday, January 16, 2007
...and fairies
Behold, my ponies and elves!
Ok, ok... so for you doubting tomas... here's a C5 model from the latest in svn. Also here is the report footer in plain text:
#####################################################
# Model and report generated by lineageIIraw2obj
# by Terry Hendrix mongooseichiban@gmail.com
#
# Filename sailren_m00.raw
# Vertices @ 740038 x 1945
# Wedges @ 763384 x 2789
# Faces @ 791280 x 3740
#
# Possible count corrections:
# maxVertexIndex = 1944
# maxWedgeIndex = 2788
#
# First face with error: -1, No errors
# Disabled faces: 0 of 3740
#
# Extra wedges found: 0 preceding, 0 trailing.
#
# Index WedgeCount @ 763382, 2 bytes; *Agrees
# Old method VertexGuess @ 740038
#
# Index FaceCount @ 94, 2 bytes
# Face index set = { 58, *3740, 3, 17 }
# Old method WedgeGuess @ 763384
#####################################################
Sunday, January 14, 2007
New lineageII extractor
I've made an updated extractor with improved state machines for mesh pattern matching and optional interactive control. The problem is it won't always get it 100% right, since it only uses the few generic patterns I could add for now. This isn't so bad, since it also embeddeds candidates of the various mesh patterns it didn't use into it's output. You guessed it! If it doesn't extract a valid mesh you can pass in the output as input to improve pattern matching. I was going to release a brute force system that would always work, however it's very resource intensive. I might actually implement such a system with threads later just to beat up on my dual core system.
I've tested this on the male elf and several boss creatures like sailren, so it should be a good general solution albeit a pain in the ass for now. I'll post a screenshot once I make a binary for general release. There is source in svn, but doesn't have some the features I just added today.
Update:
Bad news, I found a bug for out of order wedges ( new supported feature ). I won't be posting a binary until this is fixed. The good news once I fix this you might see 100% extractions much more commonly. I'll see if I can post some screenshots of a boss later, but I want to have it spit one out perfect without my fiddling even once. ;)
The screenshot above is of an ice fairy to visualize the bug. I overlayed the text signature of the generated OBJ as well in the screenshot. If you ever played with the RE plugin in freyja you'll notice this is a common pattern caused by file stream offset displacement. It's kind of easy to fix even if you don't know what you're doing. You could just keep advancing your offset until it 'looks right'. Once I fix this bug hopefully you won't have to do that very much if at all.
Tuesday, January 9, 2007
Freyja 0.9.5rc3_5 patch out
New patch for Windows users up, and a new build of the 'batch tool' freyjautil. My network has been lagging out a lot lately, since I'm on wireless in the middle of all this rain yay! Anyway this patch will fix all your path relative plugin loading. From now on all Windows builds only use path relative plugins. For example if you want a binary C/C++ plugin to load it has to be in ./plugins/model or ./plugins/image from where you run the freyja.exe. No more having to move plugins from your Documents and Settings or such. The Python loader doesn't care about this at all.
No new Linux bins, but all this and more is in svn as always. Now that freyja has debian packaging in svn I'll likely be doing less binaries than ever before. If you have Ubuntu or Debian you can just get svn and run dpkg-buildpackage for each lib and then the freyja UI/client. Instant deb packages.
I hope everyone had a happy holiday, and keep those bug reports coming. I didn't get time to fix the editor bugs from the end of December yet, which is due to bumping the Windows plugin fixes ahead in the queue. I'm also going to get all the old CLI tools building and working agian as well as the 0.9.3 release or better.
No new Linux bins, but all this and more is in svn as always. Now that freyja has debian packaging in svn I'll likely be doing less binaries than ever before. If you have Ubuntu or Debian you can just get svn and run dpkg-buildpackage for each lib and then the freyja UI/client. Instant deb packages.
I hope everyone had a happy holiday, and keep those bug reports coming. I didn't get time to fix the editor bugs from the end of December yet, which is due to bumping the Windows plugin fixes ahead in the queue. I'm also going to get all the old CLI tools building and working agian as well as the 0.9.3 release or better.
Subscribe to:
Posts (Atom)