|
Right now, target driven behaviors like gaze assume the target exists
within the current process. If they don't find it, they don't yet have
the knowledge to attempt to query the WSP (world state protocol) for
possible remote alternatives. Part of the reason I haven't implemented this is because the network query requires a pause in the BML process. This is similar to the RemoteSpeech query, but we have never generalized this to work with other behaviors, let alone multiple behaviors in the same BML request. Ideally, the BML processor should note the pending query, but still start behaviors that don't depend that query. For example: <bml> <body id="B01" posture=".." /> <gaze id="B02" target="bob"/> <head id="B03" type="nod" start="b02:stroke_end"/> </bml> Here, the neither resources or timing of posture shift B01 depend on the "bob" target. But if bob is an unknown target, it will not only delay the gaze, but also the head nod with timing dependent on the gaze behavior. A smart BML processor will analyze the dependencies and change the posture immediately. Anm Marcus Thiebaux wrote: I'm just pondering the 60 second delay issue. Generally this is not a scalable strategy for core infrastructure. Is this something which could be better addressed with hand-shaking and readiness detection? Just taking note of a detail.-Marcus ---------- Forwarded message ---------- Date: Tue, 13 Jan 2009 02:32:57 +0000 From: [email protected] To: [email protected] Subject: [Smartbody-svn] SF.net SVN: smartbody:[222] trunk/core/smartbody/smartbody-lib/src/sbm Revision: 222 http://smartbody.svn.sourceforge.net/smartbody/?rev=222&view=rev Author: hartholt Date: 2009-01-13 02:32:57 +0000 (Tue, 13 Jan 2009) Log Message: ----------- (Andrew) Added World State Protocol functionality such that two separate SBM processes can inform each other on the coordinates of remote pawns. This allows two separate characters in separate SBM processes to look at each other. For now limited to world offset, making characters look at each other's pelvis rather than face. This will be fixed by exposing internally each joint to the WSP. Remote pawns can be created in the seq file with 'create_remote_pawn <char_name>'. This command should start late (say at 60), in order to allow both SBM processes to fully load before the WSP subscribes to data associated with these pawns. Both processes should start around the same time. Modified Paths: -------------- trunk/core/smartbody/smartbody-lib/src/sbm/mcontrol_util.cpp trunk/core/smartbody/smartbody-lib/src/sbm/sbm_pawn.cpp trunk/core/smartbody/smartbody-lib/src/sbm/sbm_pawn.hpp This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. ------------------------------------------------------------------------------ This SF.net email is sponsored by: SourcForge Community SourceForge wants to tell your story. http://p.sf.net/sfu/sf-spreadtheword _______________________________________________ Smartbody-svn mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/smartbody-svn |
------------------------------------------------------------------------------ This SF.net email is sponsored by: SourcForge Community SourceForge wants to tell your story. http://p.sf.net/sfu/sf-spreadtheword
_______________________________________________ Smartbody-developer mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/smartbody-developer
