void Renderer6::Render() const { glClearColor(0.5f, 0.5f, 0.5f, 1.0f); glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); DrawBones(); DrawSkin(); }
void CSkeleton::Draw( Util::TextureInfo* p_pTexture, const double p_cdX, const double p_cdY) const { DEBUG(3, __FUNCTION__, "Drawing skeleton"); DrawBones(p_pTexture, 0.1, 0.08, m_mpJoints.at(EJoints::eRightArmUpper)); DrawBones(p_pTexture, -0.05, -0.15, m_mpJoints.at(EJoints::eLeftLegUpper)); DrawBones(p_pTexture, 0.05, -0.15, m_mpJoints.at(EJoints::eRightLegUpper)); DrawBones(p_pTexture, 0.0, 0.0, m_mpJoints.at(EJoints::eTorso)); DrawBones(p_pTexture, -0.07, 0.08, m_mpJoints.at(EJoints::eLeftArmUpper)); DrawBones(p_pTexture, 0.0, 0.2, m_mpJoints.at(EJoints::eHead1)); }
void RagdollSimulationData_t::Record() { Assert( m_pEntity->m_pRagdoll ); // Allocate a frame RagdollSimulationFrame_t* pNewFrame = RagdollSimulationFrame_t::Alloc( m_nNumBones ); if ( !pNewFrame ) return; // Set the current tick pNewFrame->nTick = GetServerTickCount(); // Add new frame to list of frames m_lstFrames.AddToTail( pNewFrame ); // Compute parent transform matrix3x4_t parentTransform; Vector vRootPosition = m_pEntity->GetRenderOrigin(); QAngle angRootAngles = m_pEntity->GetRenderAngles(); AngleMatrix( angRootAngles, vRootPosition, parentTransform ); // debugoverlay->AddCoordFrameOverlay( parentTransform, 100 ); // Cache off root position/orientation pNewFrame->vRootPosition = vRootPosition; pNewFrame->angRootAngles = angRootAngles; // Compute actual ragdoll bones matrix3x4_t* pBones = gs_BoneCache; _ComputeRagdollBones( m_pEntity->m_pRagdoll->GetRagdoll(), parentTransform, pBones, pNewFrame->pPositions, pNewFrame->pAngles ); // Draw bones if ( replay_ragdoll_dbg.GetBool() ) { DrawBones( pBones, m_pEntity->m_pRagdoll->RagdollBoneCount(), m_pEntity->m_pRagdoll->GetRagdoll(), 255, 0, 0, m_pEntity ); } }