Beispiel #1
0
void SContext::getTVerts(int chan) 
{
	if (chan==0&&(node->GetMtl()->Requirements(mtlNum)&MTLREQ_FACEMAP)) {
		MakeFaceUV(&mesh->faces[faceNum],tv[0]);
	}
	else {
		Mesh* m = mesh;
		if(chan==0) {
			UVVert* tverts;
			TVFace* tvf;
			tverts = m->tVerts;
			tvf = m->tvFace;
			if (tverts==0||tvf==0) 
				return;
			tvf = &tvf[faceNum];
			tv[0][0] = tverts[tvf->t[0]];
			tv[0][1] = tverts[tvf->t[1]];
			tv[0][2] = tverts[tvf->t[2]];
		}
		else {
	  		VertColor *vc;
	  		TVFace* tvf;
	  		vc = m->vertCol;
	  		tvf = m->vcFace;
	  		if (vc==0||tvf==0) 
	  			return;
	  		tvf = &tvf[faceNum];
	  		tv[1][0] = vc[tvf->t[0]];
	  		tv[1][1] = vc[tvf->t[1]];
	  		tv[1][2] = vc[tvf->t[2]];
	  	}
	}
}
Beispiel #2
0
void SContext::getTVerts(int chan)
{
	if (chan!=0&&(matreq&MTLREQ_FACEMAP)) {
		MakeFaceUV(&pInst->mesh->faces[faceNum],tv[0]);
		}
	else {
		Mesh* m = pInst->mesh;
		if (!m->mapSupport(chan))
			return;

		UVVert* tverts = m->mapVerts(chan);
		TVFace* tvf = &m->mapFaces(chan)[faceNum];

		tv[chan][0] = tverts[tvf->t[0]];
		tv[chan][1] = tverts[tvf->t[1]];
		tv[chan][2] = tverts[tvf->t[2]];
		}
	}