Exemplo n.º 1
0
void Renderer6::Render() const
{
    glClearColor(0.5f, 0.5f, 0.5f, 1.0f);
    glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
    
    DrawBones();
    DrawSkin();
}
Exemplo n.º 2
0
	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));
	}
Exemplo n.º 3
0
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 );
	}
}