MCPcopy Create free account
hub / github.com/WolfireGames/overgrowth / CDrawHead

Function CDrawHead

Source/Objects/movementobject.cpp:2960–2983  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

2958}
2959
2960static void CDrawHead(MovementObject* mo, const BoneTransform& chest_transform, const BoneTransform& head_transform, int num_frames) {
2961 PROFILER_ZONE(g_profiler_ctx, "C++ Draw Head")
2962 MovementObject& this_mo = *mo;
2963 RiggedObject& rigged_object = *this_mo.rigged_object();
2964 Skeleton& skeleton = rigged_object.skeleton();
2965
2966 PROFILER_ENTER(g_profiler_ctx, "Get AS pointers");
2967 ASContext* as_context = this_mo.as_context.get();
2968 float& breath_amount = *(float*)as_context->module.GetVarPtrCache("breath_amount");
2969
2970 CScriptArrayWrapper<BoneTransform> key_transforms((CScriptArray*)as_context->module.GetVarPtrCache("key_transforms"));
2971 CScriptArrayWrapper<BoneTransform> inv_skeleton_bind_transforms((CScriptArray*)as_context->module.GetVarPtrCache("inv_skeleton_bind_transforms"));
2972 CScriptArrayWrapper<int> ik_chain_start_index((CScriptArray*)as_context->module.GetVarPtrCache("ik_chain_start_index"));
2973 CScriptArrayWrapper<int> ik_chain_elements((CScriptArray*)as_context->module.GetVarPtrCache("ik_chain_elements"));
2974 CScriptArrayWrapper<int> bone_children((CScriptArray*)as_context->module.GetVarPtrCache("bone_children"));
2975 CScriptArrayWrapper<int> bone_children_index((CScriptArray*)as_context->module.GetVarPtrCache("bone_children_index"));
2976 PROFILER_LEAVE(g_profiler_ctx);
2977
2978 CDrawHeadImpl(
2979 rigged_object, skeleton,
2980 breath_amount,
2981 key_transforms, inv_skeleton_bind_transforms, ik_chain_start_index, ik_chain_elements, bone_children, bone_children_index,
2982 chest_transform, head_transform);
2983}
2984
2985static void CDrawBodyImpl(
2986 RiggedObject& rigged_object,

Callers

nothing calls this directly

Calls 5

CDrawHeadImplFunction · 0.85
rigged_objectMethod · 0.80
skeletonMethod · 0.80
GetVarPtrCacheMethod · 0.80
getMethod · 0.45

Tested by

no test coverage detected