示例#1
0
EXPORT(sqInt) primitiveRenderVertexBuffer(void) {
    sqInt primType;
    sqInt texHandle;
    sqInt result;
    sqInt idxCount;
    sqInt flags;
    sqInt handle;
    sqInt vtxCount;
    int * idxArray;
    float * vtxArray;

	if (!((interpreterProxy->methodArgumentCount()) == 8)) {
		return interpreterProxy->primitiveFail();
	}
	idxCount = interpreterProxy->stackIntegerValue(0);
	vtxCount = interpreterProxy->stackIntegerValue(2);
	texHandle = interpreterProxy->stackIntegerValue(4);
	flags = interpreterProxy->stackIntegerValue(5);
	primType = interpreterProxy->stackIntegerValue(6);
	handle = interpreterProxy->stackIntegerValue(7);
	if (interpreterProxy->failed()) {
		return null;
	}
	vtxArray = stackPrimitiveVertexArrayofSize(3, vtxCount);
	idxArray = stackPrimitiveIndexArrayofSizevalidateforVertexSize(1, idxCount, 1, vtxCount);
	if ((vtxArray == null) || ((idxArray == null) || ((primType < 1) || ((primType > 6) || (interpreterProxy->failed()))))) {
		return interpreterProxy->primitiveFail();
	}
	result = b3dxRenderVertexBuffer(handle, primType, flags, texHandle, vtxArray, vtxCount, idxArray, idxCount);
	if (!(result)) {
		return interpreterProxy->primitiveFail();
	}
	return interpreterProxy->pop(8);
}
primitiveRenderVertexBuffer(void)
{
	// B3DAcceleratorPlugin>>#primitiveRenderVertexBuffer
    sqInt flags;
    sqInt handle;
    int *idxArray;
    sqInt idxCount;
    sqInt primType;
    sqInt result;
    sqInt texHandle;
    float *vtxArray;
    sqInt vtxCount;

	if (!((methodArgumentCount()) == 8)) {
		return primitiveFail();
	}
	idxCount = stackIntegerValue(0);
	vtxCount = stackIntegerValue(2);
	texHandle = stackIntegerValue(4);
	flags = stackIntegerValue(5);
	primType = stackIntegerValue(6);
	handle = stackIntegerValue(7);
	if (failed()) {
		return null;
	}
	vtxArray = stackPrimitiveVertexArrayofSize(3, vtxCount);
	idxArray = stackPrimitiveIndexArrayofSizevalidateforVertexSize(1, idxCount, 1, vtxCount);
	if ((vtxArray == null)
	 || ((idxArray == null)
	 || ((primType < 1)
	 || ((primType > 6)
	 || (failed()))))) {
		return primitiveFail();
	}
	result = b3dxRenderVertexBuffer(handle, primType, flags, texHandle, vtxArray, vtxCount, idxArray, idxCount);
	if (!result) {
return primitiveFail();
	}
	return pop(8);
}