EDIT: I just fixed a crash & some bugs and re-uploaded the file below. You may want to download it again if you grabbed the previous version.
—————————————-
Here’s a quick Konoko Payne update. This thing has no end and I may have bitten off more than I can chew. But I’m still chewing.
Notable fixes for this release, for what it’s worth:
- lasers can now break glass windows (previously they couldn’t)
- the character controller has been optimized (a lot)
- I switched to a new version of FMOD
- there was a very painful lag on some machines, that should have been removed. In any case the mouse motion should feel smoother now.
- a whole bunch of minor fixes…
Other than that, I worked a bit on a state machine editor. There’s a first version available, you can access it this way:
- enter the developer mode (type “developer” in the console)
- press one of the function keys (say F5) to free the mouse and access the menu
- select “Scene->Character Editor”
You can then select a character, edit its “motion cells”, and the “transitions” between them. There are a lot of parameters, and each character has hundreds of motions and thousands of transitions. I was previously editing this manually in the compiler’s IDE… It worked up to a point, but it became increasingly painful over the years. So I finally decided to bite the bullet, and then started a small editor for this. To be honest I’m not sure I will actually use it. So far it looks like directly editing a text file is just as fast. I’m not sure how people deal with that in “real” companies. I’ve seen some of them using text / XML files, either edited by animators or by gameplay programmers (I think it’s an animator’s job rather than a gameplay programmer’s job, but some animators are very reluctant when it comes to defining those transitions). I also saw a couple of other companies using home-made editors, visual or not. I’m not sure what the usual packages like Granny provide here. It seems a bit difficult to use a middleware to define those transitions and blending parameters, since a lot of things not directly related to character animation, like sound and visual effects, should also be linked to specific animation or transition frames - and hence, ideally edited in the same tool as the motion’s blends. A generic trigger mechanism (user callbacks) might help, but then the middleware’s editor can only edit those generic, blind triggers - without giving a proper pre-visualization of the result, since it doesn’t know anything about the engine’s special effects those triggers are linked to.
Anyway, my next immediate problem is the throw system, which uses the same animation & transitions as normal moves, but also requires extra parameters - currently not supported by the editor. So the state machine exported by the editor currently lacks this information.
Better, later…