I'm working on the last issues because I'll relaunch it as "VamAutomata", which is a more appropriate name, and I want "VamAutomata" to start in a fresh blank page.
Like I mentioned before in this thread, right now we have a markov chain as the basic engine, with a lot of interesting stuff added on top (indirect transitions, syncs, messages, avoids) that makes it less "memory-less" and more "context-full". Right now you can already create a layer without controllers to use as a counter or a timer. But the state engine can probably be recast into a turing complete machine. For example, float and string storage in a state is very easily feasible, with not much ui fuss. I'll probably keep getting ideas about how to add very powerful capability with the least amount of explicit interface (which is what I have been doing for a while), because I don't want to include something like a tab for boolean logic scripting. Actually since boolean logic is based on on and off gates, it seems that much if not all of boolean logic can already be modeled by presence/absence of transitions or by controllerless layers with "true/false" states. The AND operation, for example, can be modeled by two layers, each with two states, that puts avoids on two middle states in a chain from a third layer. So the path in the third layer is only unblocked ("1" or "true") when both of these states are in the "true" state. In practice, things tend to get more semantic if you are talking about a specific application.
I understand how it works as a timer or boolean gates, what I dont understand is how it is working as counter right now. Doesnt seem like there are something that I can trigger +1 in poser.
When I discover this markov chain concept, I soon find out how scalable it is. If it is one or two level boolean check, VUML gets job done pretty well. If there are 3 or more it starts getting hard to maintain.
Same for string contentation: a string with 3 parameters I need 5 strings, string1+2=3, string3+4=5... Now if there is a string of 5 parameters, I need to remember "string6 is supposed to be 4th parameter", or re-assign the string order, which both of them are very unfriendly for expand.
With the chain I can contentate strings easily, just send values to state 4 and rest is takem care by the controllerless anim. Also because there is some latency in changing parameters, a time-based approach is really good to make sure I am sending correct updated values for triggers or storing values.
OK, lets stop for those concept talk right now. Acutally I am here asking questions for indirectly transition lol
I suppose indirect transition is triggerless right?
Now I have state 1 that connects to ONLY 0-prob transitions:
1<>2<>3<>4<>5
and
1<>6<>7<>8<>9
And two extra indirect transitions 5<>1<>9
So basically it is supposed to jump from 5 to 1 to 9, back and forth.
Here are my questions:
After the animation state 1 the animation stopped, didnt jump to 5 or 9.
If I manually switch 1-5 back and forth it looks fine, 1-9 also fine. But 5-1-9 or 9-1-5, it always stopped at 1.
I had a remedy solution by collapsing states 234 and 678 into keyframes, but this feel like last resort, since if this wont allow me to have a set of varying intermediate steps, making things like 1-2a-3c-4b-5.
Any ideas?
Extras:
I notice that sending message to switch transition-less states, they still went through transition time. I find that out when my character sometimes dont synchronize her foot steps with body movement (they have varying transition time, foot 0.5 and body 0.01).
A visual hint when path finding on non-playing tab, e.g. "path finding...DONT EDIT!" in red background and "You can edit now." in green background. It is countless that I have to trace out which wrong states I have edited on, especially when there are a lot intermediates.
Last edited: