本文整理汇总了C++中CKBehaviorPrototype::SetBehaviorFlags方法的典型用法代码示例。如果您正苦于以下问题:C++ CKBehaviorPrototype::SetBehaviorFlags方法的具体用法?C++ CKBehaviorPrototype::SetBehaviorFlags怎么用?C++ CKBehaviorPrototype::SetBehaviorFlags使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CKBehaviorPrototype
的用法示例。
在下文中一共展示了CKBehaviorPrototype::SetBehaviorFlags方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: CreateMidiEventBehaviorProto
CKERROR CreateMidiEventBehaviorProto(CKBehaviorPrototype **pproto)
{
CKBehaviorPrototype *proto = CreateCKBehaviorPrototype("Midi Event");
if(!proto) return CKERR_OUTOFMEMORY;
proto->DeclareInput("On");
proto->DeclareInput("Off");
proto->DeclareOutput("Activated");
proto->DeclareOutput("Deactivated");
proto->DeclareInParameter("Channel", CKPGUID_INT, "0");
proto->DeclareInParameter("Note 1", CKPGUID_INT, "0");
proto->DeclareLocalParameter(NULL, CKPGUID_BOOL, "FALSE"); // Combination was ok
proto->SetFlags(CK_BEHAVIORPROTOTYPE_NORMAL);
proto->SetFunction(MidiEvent);
proto->SetBehaviorFlags((CK_BEHAVIOR_FLAGS)(CKBEHAVIOR_VARIABLEPARAMETERINPUTS));
proto->SetBehaviorCallbackFct( MidiEventCallBack );
*pproto = proto;
return CK_OK;
}
示例2: CreateJD6SetParametersProto
//************************************
// Method: CreateJD6SetParametersProto
// FullName: CreateJD6SetParametersProto
// Access: public
// Returns: CKERROR
// Qualifier:
// Parameter: CKBehaviorPrototype **pproto
//************************************
CKERROR CreateJD6SetParametersProto(CKBehaviorPrototype **pproto)
{
CKBehaviorPrototype *proto = CreateCKBehaviorPrototype("PJD6SetParameters");
if(!proto) return CKERR_OUTOFMEMORY;
proto->DeclareInput("In0");
proto->DeclareOutput("Out0");
proto->SetBehaviorCallbackFct( JD6SetParametersCB );
proto->DeclareInParameter("Body B",CKPGUID_3DENTITY,"ball2");
proto->DeclareInParameter("Drive Linear Velocity",CKPGUID_VECTOR);
proto->DeclareInParameter("Drive Angular Velocity",CKPGUID_VECTOR);
proto->DeclareInParameter("Drive Position",CKPGUID_VECTOR);
proto->DeclareInParameter("Drive Orientation",CKPGUID_QUATERNION);
proto->DeclareInParameter("Ratio",CKPGUID_FLOAT,"0");
proto->SetFlags(CK_BEHAVIORPROTOTYPE_NORMAL);
proto->SetBehaviorFlags(CKBEHAVIOR_TARGETABLE);
proto->SetFunction(JD6SetParameters);
*pproto = proto;
return CK_OK;
}
示例3: CreatePClothAttachVertexToPositionProto
//************************************
// Method: CreatePClothAttachVertexToPositionProto
// FullName: CreatePClothAttachVertexToPositionProto
// Access: public
// Returns: CKERROR
// Qualifier:
// Parameter: CKBehaviorPrototype **pproto
//************************************
CKERROR CreatePClothAttachVertexToPositionProto(CKBehaviorPrototype **pproto)
{
CKBehaviorPrototype *proto = CreateCKBehaviorPrototype("PClothAttachVertexToPosition");
if(!proto) return CKERR_OUTOFMEMORY;
proto->DeclareInput("In");
proto->DeclareOutput("Out");
/*! \page PClothAttachVertexToPosition
PClothAttachVertexToPosition is categorized in \ref Clothes
<h3>Description</h3>
Apply to a <A HREF="Documentation.chm::/beobjects/1_ck3dentity.html">3DEntity</A><br>
Attaches a cloth vertex to a position in world space.<br>
@see pCloth::attachVertexToGlobalPosition()
<h3>Technical Information</h3>
\image html PClothAttachVertexToPosition.png
<SPAN CLASS="in">In: </SPAN>triggers the process
<BR>
<SPAN CLASS="out">Out: </SPAN>is activated when the process is completed.
<BR>
<BR>
<SPAN CLASS="pin">Target: </SPAN>Target cloth reference.
<BR>
<BR>
<BR>
<BR>
<SPAN CLASS="pin">Vertex Index: </SPAN>Index of the vertex to attach.
<BR>
<BR>
<SPAN CLASS="pin">Global Position: </SPAN>TThe position in world space.
<BR>
<BR>
*/
proto->SetBehaviorCallbackFct( PClothAttachVertexToPositionCB );
proto->DeclareInParameter("Vertex Index",CKPGUID_INT);
proto->DeclareInParameter("Global Position",CKPGUID_VECTOR);
proto->SetFlags(CK_BEHAVIORPROTOTYPE_NORMAL);
proto->SetBehaviorFlags(CKBEHAVIOR_TARGETABLE);
proto->SetFunction(PClothAttachVertexToPosition);
*pproto = proto;
return CK_OK;
}
示例4: CreateRetrieveCIProto
CKERROR CreateRetrieveCIProto(CKBehaviorPrototype **pproto)
{
CKBehaviorPrototype *proto = CreateCKBehaviorPrototype(GBL_CI_API_ENTRY("RetrieveCI"));
if(!proto) return CKERR_OUTOFMEMORY;
proto->DeclareInput("Start");
proto->DeclareOutput("Success");
proto->DeclareOutput("Error");
proto->DeclareInParameter("Configurable Information ID", CKPGUID_INT);
proto->DeclareOutParameter("Configurable Information Value", CKPGUID_STRING);
proto->DeclareOutParameter("GetErrorCode", GUID_TGBLERROR);
proto->DeclareSetting("Get value as string",CKPGUID_BOOL,"FALSE");
proto->DeclareSetting("Output custom values",CKPGUID_BOOL,"FALSE");
proto->SetBehaviorFlags((CK_BEHAVIOR_FLAGS)( CKBEHAVIOR_VARIABLEPARAMETEROUTPUTS ));
proto->SetFlags(CK_BEHAVIORPROTOTYPE_NORMAL);
proto->SetBehaviorCallbackFct(RetrieveCICB);
proto->SetFunction(RetrieveCI);
*pproto = proto;
return CK_OK;
}
示例5: CreateGetCIValueProto
/*
*******************************************************************
* Function: CKERROR CreateGetCIValueProto( CKBehaviorPrototype** behaviorPrototypePtr )
*
* Description : The prototype creation function will be called the first time
* a behavior must be created to create the CKBehaviorPrototype
* that contains the description of the behavior.
*
* Parameters :
* behaviorPrototypePtr w Pointer to a CKBehaviorPrototype object that
* describes the behavior's internal structure
* and relationships with other objects.
*
* Returns : CKERROR
*
*******************************************************************
*/
CKERROR CreateGetCIValueProto(CKBehaviorPrototype **pproto)
{
CKBehaviorPrototype *proto = CreateCKBehaviorPrototype(GBL_CI_API_ENTRY("GetCI"));
if(!proto) return CKERR_OUTOFMEMORY;
proto->DeclareInput("Start");
proto->DeclareOutput("Success");
proto->DeclareInParameter("Configurable Information", CIPARAMETERGUID);
proto->DeclareOutParameter("Configurable Information Value", CKPGUID_STRING);
proto->DeclareSetting("Get CI by unique name",CKPGUID_BOOL,"FALSE");
proto->DeclareSetting("Get value as string",CKPGUID_BOOL,"FALSE");
proto->DeclareSetting("Output custom values",CKPGUID_BOOL,"FALSE");
proto->DeclareSetting("Output on change",CKPGUID_BOOL,"FALSE");
proto->SetBehaviorFlags((CK_BEHAVIOR_FLAGS)( CKBEHAVIOR_VARIABLEPARAMETEROUTPUTS ));
proto->SetFlags(CK_BEHAVIORPROTOTYPE_NORMAL);
proto->SetBehaviorCallbackFct(GetCIValueCB);
proto->SetFunction(GetCIValue);
*pproto = proto;
return CK_OK;
}
示例6: CreateLogEntryProto
CKERROR CreateLogEntryProto(CKBehaviorPrototype **pproto)
{
CKBehaviorPrototype *proto = CreateCKBehaviorPrototype("pLogEvent");
if(!proto) return CKERR_OUTOFMEMORY;
proto->DeclareInput("In");
proto->DeclareInput("Off");
proto->DeclareOutput("Message");
proto->DeclareOutput("Error");
proto->DeclareOutput("Warning");
proto->DeclareOutput("Info");
proto->DeclareOutput("Trace");
proto->DeclareOutput("Debug");
proto->DeclareOutParameter("Entry",CKPGUID_STRING);
proto->DeclareOutParameter("Type",CKPGUID_INT);
proto->DeclareOutParameter("Component",CKPGUID_STRING);
proto->SetFlags(CK_BEHAVIORPROTOTYPE_NORMAL);
proto->SetBehaviorFlags((CK_BEHAVIOR_FLAGS)( CKBEHAVIOR_VARIABLEPARAMETERINPUTS ));
proto->SetFunction(LogEntry);
proto->SetBehaviorCallbackFct(LogEntryCB);
*pproto = proto;
return CK_OK;
}
示例7: CreatePMaterialIteratorProto
//************************************
// Method: CreatePMaterialIteratorProto
// FullName: CreatePMaterialIteratorProto
// Access: public
// Returns: CKERROR
// Qualifier:
// Parameter: CKBehaviorPrototype **pproto
//************************************
CKERROR CreatePMaterialIteratorProto(CKBehaviorPrototype **pproto)
{
CKBehaviorPrototype *proto = CreateCKBehaviorPrototype("PMaterialIterator");
if(!proto) return CKERR_OUTOFMEMORY;
proto->DeclareInput("In");
proto->DeclareInput("Next");
proto->DeclareOutput("Finish");
proto->DeclareOutput("Loop");
proto->DeclareLocalParameter("current result", CKPGUID_POINTER, "0");
proto->DeclareOutParameter("Index",CKPGUID_INT);
proto->DeclareOutParameter("XML Link",VTE_XML_MATERIAL_TYPE);
proto->DeclareOutParameter("Name",CKPGUID_STRING);
proto->DeclareOutParameter("Dynamic Friction",CKPGUID_FLOAT);
proto->DeclareOutParameter("Static Friction",CKPGUID_FLOAT);
proto->DeclareOutParameter("Restitution",CKPGUID_FLOAT);
proto->DeclareOutParameter("Dynamic Friction V",CKPGUID_FLOAT);
proto->DeclareOutParameter("Static Friction V",CKPGUID_FLOAT);
proto->DeclareOutParameter("Direction of Anisotropy ",CKPGUID_VECTOR);
proto->DeclareOutParameter("Friction Combine Mode",VTE_MATERIAL_COMBINE_MODE);
proto->DeclareOutParameter("Restitution Combine Mode",VTE_MATERIAL_COMBINE_MODE);
proto->DeclareOutParameter("Flags",VTF_MATERIAL_FLAGS);
proto->DeclareOutParameter("Result",VTS_MATERIAL);
proto->SetBehaviorCallbackFct( PMaterialIteratorCB );
proto->SetFlags(CK_BEHAVIORPROTOTYPE_NORMAL);
proto->SetBehaviorFlags(CKBEHAVIOR_TARGETABLE);
proto->SetFunction(PMaterialIterator);
*pproto = proto;
return CK_OK;
}
示例8: CreatePClothDetachFromShapeProto
//************************************
// Method: CreatePClothDetachFromShapeProto
// FullName: CreatePClothDetachFromShapeProto
// Access: public
// Returns: CKERROR
// Qualifier:
// Parameter: CKBehaviorPrototype **pproto
//************************************
CKERROR CreatePClothDetachFromShapeProto(CKBehaviorPrototype **pproto)
{
CKBehaviorPrototype *proto = CreateCKBehaviorPrototype("PClothDetachFromShape");
if(!proto) return CKERR_OUTOFMEMORY;
proto->DeclareInput("In");
proto->DeclareOutput("Out");
/*! \page PClothDetachFromShape
PClothDetachFromShape is categorized in \ref Clothes
<h3>Description</h3>
Apply to a <A HREF="Documentation.chm::/beobjects/1_ck3dentity.html">3DEntity</A><br>
Detaches the cloth from a shape it has been attached to before<br>
@see pCloth::detachFromShape()
<h3>Technical Information</h3>
\image html PClothDetachFromShape.png
<SPAN CLASS="in">In: </SPAN>triggers the process
<BR>
<SPAN CLASS="out">Out: </SPAN>is activated when the process is completed.
<BR>
<BR>
<SPAN CLASS="pin">Target: </SPAN>Target cloth reference.
<BR>
<BR>
<SPAN CLASS="pin">Shape Reference: </SPAN>Shape to which the cloth should be attached to.
<BR>
<BR>
<SPAN CLASS="pin">Attachment Flags: </SPAN>One or two way interaction, tearable or non-tearable
*/
proto->SetBehaviorCallbackFct( PClothDetachFromShapeCB );
proto->DeclareInParameter("Shape Reference",CKPGUID_3DENTITY);
proto->SetFlags(CK_BEHAVIORPROTOTYPE_NORMAL);
proto->SetBehaviorFlags(CKBEHAVIOR_TARGETABLE);
proto->SetFunction(PClothDetachFromShape);
*pproto = proto;
return CK_OK;
}
示例9: CreateJDestroyProto
//************************************
// Method: CreateJDestroyProto
// FullName: CreateJDestroyProto
// Access: public
// Returns: CKERROR
// Qualifier:
// Parameter: CKBehaviorPrototype **pproto
//************************************
CKERROR CreateJDestroyProto(CKBehaviorPrototype **pproto)
{
CKBehaviorPrototype *proto = CreateCKBehaviorPrototype("PJDestroy");
if(!proto) return CKERR_OUTOFMEMORY;
/*! \page PJDestroy
<br>
PJDestroy is categorized in \ref Joints
<br>
<br>See <A HREF="PJDestroy.cmo">PJDestroy.cmo</A>.
<h3>Description</h3>
Apply to a <A HREF="Documentation.chm::/beobjects/1_ck3dentity.html">3DEntity</A><br>
Deletes a joint, given by references and type.
<br>
<h3>Technical Information</h3>
\image html PJDestroy.png
<SPAN CLASS="in">In: </SPAN> triggers the process
<BR>
<SPAN CLASS="out">Out: </SPAN> is activated when the process is completed.
<BR>
<SPAN CLASS="pin">Body B: </SPAN> The second body. Leave blank to create a joint constraint with the world.
<BR>
<SPAN CLASS="pin">Joint Type:</SPAN> The joint type. This helps the building block to identify a joint constraint. As usual there can be only one joint of the type x between two bodies.
<BR>
<b>Sleeping:</b> This call wakes the actor(s) if they are sleeping.
Is utilizing #pRigidBody #pWorld #PhysicManager #pWorld::deleteJoint().<br>
*/
proto->DeclareInput("In");
proto->DeclareOutput("Out");
proto->SetBehaviorCallbackFct( JDestroyCB );
proto->DeclareInParameter("Body B",CKPGUID_3DENTITY,"ball2");
proto->DeclareInParameter("Type",VTE_JOINT_TYPE,"");
proto->SetFlags(CK_BEHAVIORPROTOTYPE_NORMAL);
proto->SetBehaviorFlags(CKBEHAVIOR_TARGETABLE);
proto->SetFunction(JDestroy);
*pproto = proto;
return CK_OK;
}
示例10: CreateProto
/*
*******************************************************************
* Function: CKERROR CreatePrototype( CKBehaviorPrototype** behaviorPrototypePtr )
*
* Description : The prototype creation function will be called the first time
* a behavior must be created to create the CKBehaviorPrototype
* that contains the description of the behavior.
*
* Parameters :
* behaviorPrototypePtr w Pointer to a CKBehaviorPrototype object that
* describes the behavior's internal structure
* and relationships with other objects.
*
* Returns : CKERROR
*
*******************************************************************
*/
CKERROR CGBLDecodeAndDistribute::CreateProto(CKBehaviorPrototype** pproto)
{
CKBehaviorPrototype *proto = CreateCKBehaviorPrototype("GBLFCDecodeAndDistribute");
if (!proto)
{
return CKERR_OUTOFMEMORY;
}
//--- Inputs declaration
/**
* Start decoding the received string containing the target GBLWaitForCommand
* block ID and command parameters and send it locally to the target
* GBLWaitForCommand BB.
*/
proto->DeclareInput("Decode");
//--- Outputs declaration
/**
* The operation was successful, the command has been sent correctly.
*/
proto->DeclareOutput("OperationSuccessful");
/**
* Activates when an error occurred during the execution of the BB (the type of
* error is given by the GetError parameter output).
*/
proto->DeclareOutput("Error");
//--- Input Parameters declaration
/**
* Defines the string in which the command is encoded.
*/
proto->DeclareInParameter("CommandString", CKPGUID_STRING);
//--- Output Parameters declaration
/**
* Parameter output that returns the description for an error that occurred.
*/
proto->DeclareOutParameter("Error", GUID_TGBLERROR);
//---- Local Parameters Declaration
//---- Settings Declaration
proto->SetBehaviorFlags((CK_BEHAVIOR_FLAGS)(CKBEHAVIOR_MESSAGESENDER));
proto->SetBehaviorCallbackFct(CGBLDecodeAndDistribute::CallBack, NULL, NULL);
proto->SetFunction(CGBLDecodeAndDistribute::BehaviourFunction);
*pproto = proto;
return CK_OK;
}
示例11: CreatePClothDestroyProto
//************************************
// Method: CreatePClothDestroyProto
// FullName: CreatePClothDestroyProto
// Access: public
// Returns: CKERROR
// Qualifier:
// Parameter: CKBehaviorPrototype **pproto
//************************************
CKERROR CreatePClothDestroyProto(CKBehaviorPrototype **pproto)
{
CKBehaviorPrototype *proto = CreateCKBehaviorPrototype("PClothDestroy");
if(!proto) return CKERR_OUTOFMEMORY;
proto->DeclareInput("In");
proto->DeclareOutput("Out");
/*! \page PClothDestroy
PClothDestroy is categorized in \ref Clothes
<h3>Description</h3>
Apply to a <A HREF="Documentation.chm::/beobjects/1_ck3dentity.html">3DEntity</A><br>
Destroys a physical cloth.<br>
@see pWorld::destroyCloth()
<h3>Technical Information</h3>
\image html PClothDestroy.png
<SPAN CLASS="in">In: </SPAN>triggers the process
<BR>
<SPAN CLASS="out">Out: </SPAN>is activated when the process is completed.
<BR>
<BR>
<SPAN CLASS="pin">Target: </SPAN>Target cloth reference.
<BR>
<BR>
*/
proto->SetBehaviorCallbackFct( PClothDestroyCB );
proto->SetFlags(CK_BEHAVIORPROTOTYPE_NORMAL);
proto->SetBehaviorFlags(CKBEHAVIOR_TARGETABLE);
proto->SetFunction(PClothDestroy);
*pproto = proto;
return CK_OK;
}
示例12: CreateSetZoomProto
CKERROR CreateSetZoomProto(CKBehaviorPrototype **pproto)
{
CKBehaviorPrototype *proto = CreateCKBehaviorPrototype("Set Zoom");
if(!proto) return CKERR_OUTOFMEMORY;
proto->DeclareInput("In");
proto->DeclareOutput("Out");
proto->DeclareInParameter("Focal Length (mm)", CKPGUID_FLOAT, "50");
proto->SetFlags(CK_BEHAVIORPROTOTYPE_NORMAL);
proto->SetFunction(SetZoom);
proto->SetBehaviorFlags(CKBEHAVIOR_TARGETABLE);
*pproto = proto;
return CK_OK;
}
示例13: CreatePrototype
/*
*******************************************************************
* Function: CKERROR CreatePrototype( CKBehaviorPrototype** behaviorPrototypePtr )
*
* Description : The prototype creation function will be called the first time
* a behavior must be created to create the CKBehaviorPrototype
* that contains the description of the behavior.
*
* Parameters :
* behaviorPrototypePtr Pointer to a CKBehaviorPrototype object that
* describes the behavior's internal structure
* and relationships with other objects.
*
* Returns : CKERROR
*
*******************************************************************
*/
CKERROR GBLCOBGWrapper::CreatePrototype( CKBehaviorPrototype** behaviorPrototypePtr )
{
#if GBL_RUNTIME
// Not editable from Virtools Dev
CKBehaviorPrototype *behaviorPrototype = CreateCKBehaviorPrototypeRunTime( "GBLCOBGWrapper" );
#elif GBL_GAMEDEVELOPER
// Edition depend on the BB.
CKBehaviorPrototype *behaviorPrototype = CreateCKBehaviorPrototype( "GBLCOBGWrapper" );
#else
// Editable from Virtools Dev
CKBehaviorPrototype *behaviorPrototype = CreateCKBehaviorPrototype( "GBLCOBGWrapper" );
#endif
if ( !behaviorPrototype )
return CKERR_OUTOFMEMORY;
//---- Local Parameters Declaration
behaviorPrototype->DeclareLocalParameter("BG Script", CKPGUID_BEHAVIOR );
//---- Settings Declaration
behaviorPrototype->DeclareSetting("BG filename", CKPGUID_STRING ,"path undefined.(BGWrapper Settings)");
behaviorPrototype->SetFlags(CK_BEHAVIORPROTOTYPE_NORMAL);
behaviorPrototype->SetBehaviorFlags((CK_BEHAVIOR_FLAGS)(CKBEHAVIOR_INTERNALLYCREATEDINPUTS |
CKBEHAVIOR_INTERNALLYCREATEDINPUTPARAMS |
CKBEHAVIOR_INTERNALLYCREATEDOUTPUTS |
CKBEHAVIOR_INTERNALLYCREATEDOUTPUTPARAMS));
behaviorPrototype->SetBehaviorCallbackFct(BGWrapperCB,
CKCB_BEHAVIORLOAD |
CKCB_BEHAVIORRESET |
CKCB_BEHAVIORSETTINGSEDITED |
CKCB_BEHAVIORDETACH |
CKCB_BEHAVIORDEACTIVATESCRIPT
, NULL);
behaviorPrototype->SetFunction( GBLCOBGWrapper::BehaviourFunction );
*behaviorPrototypePtr = behaviorPrototype;
return CK_OK;
}
示例14: CreatePVGetProto
//************************************
// Method: CreatePVGetProto
// FullName: CreatePVGetProto
// Access: public
// Returns: CKERROR
// Qualifier:
// Parameter: CKBehaviorPrototype **pproto
//************************************
CKERROR CreatePVGetProto(CKBehaviorPrototype **pproto)
{
CKBehaviorPrototype *proto = CreateCKBehaviorPrototype("PVGet");
if(!proto) return CKERR_OUTOFMEMORY;
proto->DeclareInput("In");
proto->DeclareOutput("Out");
proto->SetBehaviorCallbackFct( PVGetCB );
BB_EVALUATE_SETTINGS(gOPMap);
proto->SetFlags(CK_BEHAVIORPROTOTYPE_NORMAL);
proto->SetBehaviorFlags(CKBEHAVIOR_TARGETABLE);
proto->SetFunction(PVGet);
*pproto = proto;
return CK_OK;
}
示例15: CreatePCIgnorePairProto
//************************************
// Method: CreatePCIgnorePairProto
// FullName: CreatePCIgnorePairProto
// Access: public
// Returns: CKERROR
// Qualifier:
// Parameter: CKBehaviorPrototype **pproto
//************************************
CKERROR CreatePCIgnorePairProto(CKBehaviorPrototype **pproto)
{
CKBehaviorPrototype *proto = CreateCKBehaviorPrototype("PCIgnorePair");
if(!proto) return CKERR_OUTOFMEMORY;
proto->DeclareInput("In0");
proto->DeclareOutput("Out0");
proto->SetBehaviorCallbackFct( PCIgnorePairCB );
proto->DeclareInParameter("Object A",CKPGUID_3DENTITY);
proto->DeclareInParameter("Object B",CKPGUID_3DENTITY);
proto->DeclareInParameter("Ignore",CKPGUID_BOOL,"0");
proto->SetFlags(CK_BEHAVIORPROTOTYPE_NORMAL);
proto->SetBehaviorFlags(CKBEHAVIOR_TARGETABLE);
proto->SetFunction(PCIgnorePair);
*pproto = proto;
return CK_OK;
}