/********************************************************************************
		RCP_HmsGrassPiece
														[ Nob 16, 1995 ]
 ********************************************************************************/

#define		GRASS_ONE_SIDE_HALF		10

/********************************************************************************/
/*	Vertex data.																*/
/********************************************************************************/
static Vtx vtx_grass[] = {
	{ -GRASS_ONE_SIDE_HALF, -GRASS_ONE_SIDE_HALF, 0,  0,   0<<5, 15<<5,		255, 255, 255, 255 },
	{  GRASS_ONE_SIDE_HALF,	-GRASS_ONE_SIDE_HALF, 0,  0,  15<<5, 15<<5,		255, 255, 255, 255 },
	{  GRASS_ONE_SIDE_HALF,  GRASS_ONE_SIDE_HALF, 0,  0,  15<<5,  0<<5,		255, 255, 255, 255 },
	{ -GRASS_ONE_SIDE_HALF,  GRASS_ONE_SIDE_HALF, 0,  0,   0<<5,  0<<5,		255, 255, 255, 255 },
};

/********************************************************************************/
/*	Texture data.																*/
/********************************************************************************/
static unsigned short grass_piece_txt[] = {
    0x0b42,  0x0b42,  0x0b42,  0x0b42,  0x0b42,  0x0b42,  0x0b42,  0x0b42,  0x0b42,  0x0b42,  0x0b42,  0x0b42,  0x0b42,  0x0b42,  0x0b42,  0x0b42,  
    0x0b42,  0x0b42,  0x0b42,  0x0b42,  0x0b42,  0x0b42,  0x0b42,  0x0483,  0x0483,  0x0b42,  0x0b42,  0x0b42,  0x0b42,  0x0b42,  0x0b42,  0x0b42,  
    0x0b42,  0x0b42,  0x0b42,  0x0b42,  0x0b42,  0x0b42,  0x0483,  0x03c1,  0x0401,  0x0483,  0x0b42,  0x0b42,  0x0b42,  0x0b42,  0x0b42,  0x0b42,  
    0x0b42,  0x0b42,  0x0b42,  0x0b42,  0x0b42,  0x0c85,  0x03c1,  0x0403,  0x0441,  0x0403,  0x0cc3,  0x0b42,  0x0b42,  0x0b42,  0x0b42,  0x0b42,  
    0x0b42,  0x0b42,  0x0b42,  0x0b42,  0x0c85,  0x0383,  0x0403,  0x0443,  0x0483,  0x0443,  0x0c03,  0x1d09,  0x0b42,  0x0b42,  0x0b42,  0x0b42,  
    0x0b42,  0x0b42,  0x0b42,  0x0b42,  0x0381,  0x0c03,  0x0443,  0x0443,  0x0483,  0x0503,  0x0443,  0x0c85,  0x0b42,  0x0b42,  0x0b42,  0x0b42,  
    0x0b42,  0x0b42,  0x0b42,  0x0c85,  0x03c3,  0x0483,  0x04c3,  0x0483,  0x0483,  0x0543,  0x0503,  0x0483,  0x0c85,  0x0b42,  0x0b42,  0x0b42,  
    0x0b42,  0x0b42,  0x0b42,  0x0b43,  0x0483,  0x0543,  0x0583,  0x04c3,  0x0483,  0x0543,  0x0583,  0x0543,  0x0403,  0x0b42,  0x0b42,  0x0b42,  
    0x0b42,  0x0b42,  0x0b42,  0x0383,  0x0503,  0x05c3,  0x05c5,  0x04c3,  0x0483,  0x0503,  0x0583,  0x0583,  0x0443,  0x0b42,  0x0b42,  0x0b42,  
    0x0b42,  0x0b42,  0x0b42,  0x0bc3,  0x0583,  0x05c5,  0x05c3,  0x0483,  0x0403,  0x0503,  0x0543,  0x0583,  0x0483,  0x0b42,  0x0b42,  0x0b42,  
    0x0b42,  0x0b42,  0x0b42,  0x0bc5,  0x0503,  0x05c5,  0x0543,  0x04c3,  0x03c3,  0x04c3,  0x0543,  0x0543,  0x0c85,  0x0b42,  0x0b42,  0x0b42,  
    0x0b42,  0x0b42,  0x0b42,  0x0b43,  0x0403,  0x0503,  0x04c3,  0x0403,  0x0383,  0x0483,  0x04c3,  0x0c43,  0x1407,  0x0b42,  0x0b42,  0x0b42,  
    0x0b42,  0x0b42,  0x0b42,  0x0b42,  0x0341,  0x0381,  0x03c1,  0x03c3,  0x0383,  0x0401,  0x03c1,  0x0b85,  0x0b42,  0x0b42,  0x0b42,  0x0b42,  
    0x0b42,  0x0b42,  0x0b42,  0x0b42,  0x0b42,  0x0281,  0x02c1,  0x0301,  0x0343,  0x02c1,  0x0ac3,  0x0b42,  0x0b42,  0x0b42,  0x0b42,  0x0b42,  
    0x0b42,  0x0b42,  0x0b42,  0x0b42,  0x0b42,  0x0b42,  0x02c1,  0x02c1,  0x02c1,  0x02c1,  0x0b42,  0x0b42,  0x0b42,  0x0b42,  0x0b42,  0x0b42,  
    0x0b42,  0x0b42,  0x0b42,  0x0b42,  0x0b42,  0x0b42,  0x0b42,  0x0b42,  0x0b42,  0x0b42,  0x0b42,  0x0b42,  0x0b42,  0x0b42,  0x0b42,  0x0b42,  
};

/********************************************************************************/
/*	Graphic display list.														*/
/********************************************************************************/

Gfx RCP_grass_piece[] = {
	gsDPPipeSync(),
	gsSPClearGeometryMode(G_LIGHTING | G_CULL_BACK),
    gsDPSetCombineMode(G_CC_DECALRGBA, G_CC_DECALRGBA),
    gsSPTexture(0xffff, 0xffff, 0, G_TX_RENDERTILE, G_ON),

    gsDPLoadTextureBlock(grass_piece_txt, G_IM_FMT_RGBA, G_IM_SIZ_16b, 16, 16, 0,
						 	G_TX_CLAMP|G_TX_NOMIRROR, G_TX_CLAMP|G_TX_NOMIRROR,
						 	4, 4, G_TX_NOLOD, G_TX_NOLOD),

	gsSPVertex(&vtx_grass[0], 4, 0),
	gsSP1Triangle(0, 1, 2, 0),
	gsSP1Triangle(0, 2, 3, 0),

    gsSPTexture(0xffff, 0xffff, 0, G_TX_RENDERTILE, G_OFF),
	gsSPSetGeometryMode(G_LIGHTING | G_CULL_BACK),
    gsDPSetCombineMode(G_CC_SHADE, G_CC_SHADE),
	gsSPEndDisplayList()
};
