示例#1
0
void DisplayRawAnimationData(C3DS* pObj)
{
	char buf[500];
	debug_op("\nANIMATION DATA\n");

	sprintf(buf, "Srt Frame Assmed 0:0 -  Number of KeyFrame: %d\n", pObj->m_iKeyFrames);			
	debug_op(buf);


	int i;
	for(i=0; i<pObj->m_iNumAnimObjects; i++)
	{
		stAnimation* pAnim = &(pObj->m_pAnimation[i]);
		// SHAPE NAME
		sprintf( buf, "Animated Object Name: %s\n", pAnim->szObjName );
		debug_op( buf );
	
		// POSITION KEYS
		sprintf(buf, "Num Position Key Frames: %d\n", pAnim->iPosKeys);			
		debug_op(buf);
		stPosition* pPos = pAnim->pPosition;
		int jj;
		for(jj=0; jj< pAnim->iPosKeys; jj++)
		{
			sprintf(buf, "\t KeyFrame Num: %d, \t x:%.2f \t y:%.2f \t z:%.2f\n",
								pPos[jj].iFrame, pPos[jj].x, pPos[jj].y, pPos[jj].z);
			debug_op(buf);
		}
		// ROTATION KEYS
		sprintf(buf, "Num Rotation Key Frames: %d\n", pAnim->iRotKeys);			
		debug_op(buf);
		stRotation* pRot = pAnim->pRotation;
		for(jj=0; jj< pAnim->iRotKeys; jj++)
		{
			sprintf(buf, "\t KeyFrame Num: %d, \t x:%.2f \t y:%.2f \t z:%.2f \t angle: %.2f\n",
				pRot[jj].iFrame, pRot[jj].axis_x, pRot[jj].axis_y, pRot[jj].axis_z, pRot[jj].rotation_rads);
			debug_op(buf);
		}

		// SCALE KEYS
		sprintf(buf, "Num Scale Key Frames: %d\n", pAnim->iScaleKeys);			
		debug_op(buf);
		stScale* pScale = pAnim->pScale;
		for(jj=0; jj< pAnim->iScaleKeys; jj++)
		{
			sprintf(buf, "\t KeyFrame Num: %d, \t x:%.2f \t y:%.2f \t z:%.2f\n",
				pScale[jj].iFrame, pScale[jj].x, pScale[jj].y, pScale[jj].z);
			debug_op(buf);
		}
	}
}
示例#2
0
文件: st.c 项目: cjacques42/corewar
void		st(t_processes *current)
{
	int				ocp;
	int				p[3];
	int				adv;

	adv = 0;
	ocp = 0;
	if (!current->op->ocp)
		ocp = get_vm_value(&adv, 1, current->pc);
	p[1] = check_ocp(ocp, 1, &adv, current);
	p[2] = check_ocp(ocp, 2, &adv, current);
	if (check_all_reg(ocp, p) && test_ocp(current->op, ocp))
		ex_st(current, 0, p, ocp);
	debug_op(current, adv);
}
示例#3
0
void	lfork(t_processes *current)
{
	int		addr;
	int		adv;
	int		paff;

	adv = 0;
	addr = (int)(short)char_to_nbr(&adv, 2, current->pc);
	addr += current->pc;
	paff = addr;
	addr %= MEM_SIZE;
	ft_lstadd(&g_data->processes,
	ft_lstnew(create_process(addr, current, NULL, 0),
	sizeof(t_processes)));
	if (g_data->arg & 4 && !g_data->ncurse)
		ft_printf("P%5d | lfork %d (%d)\n",
		current->id + 1, paff - current->pc, paff);
	debug_op(current, adv);
}
示例#4
0
void DisplayRawData(C3DS* pObj)
{
	char buf[500];
	int i;
	//----------------------------------------------------------------
	for(i=0; i<pObj->m_iNumMeshs; i++ )
	{
		C3DS::stMesh* pMesh = &(pObj->m_pMeshs[i]);

		sprintf(buf, "Shape: %s\n", pMesh->szMeshName);
		debug_op(buf);

		sprintf(buf, "iNumFaces: %d\n", pMesh->iNumFaces);
		debug_op(buf);
		for(int cc=0; cc<pMesh->iNumFaces; cc++)
		{
			sprintf(buf, "\t %d, \t %d \t %d\n", 
						pMesh->pFaces[cc].corner[0], pMesh->pFaces[cc].corner[1], pMesh->pFaces[cc].corner[2]);
			debug_op(buf);
		}
	}

	//----------------------------------------------------------------
	for(i=0; i<pObj->m_iNumMeshs; i++ )
	{
		C3DS::stMesh* pMesh = &(pObj->m_pMeshs[i]);


		sprintf(buf, "iNumVertices: %d\n", pMesh->iNumVerts);
		debug_op(buf);
		for(  int cc=0; cc<pMesh->iNumVerts; cc++)
		{
			sprintf(buf, "\t %.2f, \t %.2f \t %.2f\n", 
				pMesh->pVerts[cc].x,pMesh->pVerts[cc].y,pMesh->pVerts[cc].z);
			debug_op(buf);
		}
	}

	//----------------------------------------------------------------
	for(i=0; i<pObj->m_iNumMeshs; i++ )
	{
		C3DS::stMesh* pMesh = &(pObj->m_pMeshs[i]);
		if( pMesh->pTexs != NULL )
		{
			sprintf(buf, "iNumTex: %d\n", pMesh->iNumVerts);
			debug_op(buf);
			for( int  cc=0; cc<pMesh->iNumVerts; cc++)
			{
				sprintf(buf, "\t %.2f, \t %.2f\n", 
					pMesh->pTexs[cc].tu, pMesh->pTexs[cc].tv );
				debug_op(buf);
			}
		}
	}

	//----------------------------------------------------------------
	for(i=0; i<pObj->m_iNumMeshs; i++ )
	{
		C3DS::stMesh* pMesh = &(pObj->m_pMeshs[i]);

		if( pObj->m_iNumMaterials > 0 )
		{
			sprintf(buf, "Material vs Faces: %d\n", pMesh->iNumFaces);
			debug_op(buf);
			for( int cc=0; cc<pMesh->iNumFaces; cc++)
			{
				sprintf(buf, "\t MaterialID: %d", 
					pMesh->pFaces[cc].MaterialID );
				debug_op(buf);

				int ID = pMesh->pFaces[cc].MaterialID;
				sprintf(buf, "\t, Name: %s", pObj->m_pMaterials[ID].szName);
				debug_op(buf);
				
				if( pObj->m_pMaterials[ID].bTexFile )
				{
					sprintf(buf, "\tTex FileName: %s", pObj->m_pMaterials[ID].szTextureFile);
					debug_op(buf);
				}
				debug_op("\n");
			}
		}
	}
	//----------------------------------------------------------------
}