Exemplo n.º 1
0
void d3d_draw_background(int back, gs_scalar x, gs_scalar y, gs_scalar z)
{
	get_background(bck2d,back);

	const gs_scalar tbx=bck2d->texturex,tby=bck2d->texturey,
                  tbw=bck2d->texturew,tbh=bck2d->textureh;
	draw_primitive_begin_texture(pr_trianglestrip, bck2d->texture);
	d3d_vertex_texture(x,y,z,tbx,tby);
	d3d_vertex_texture(x+bck2d->width,y,z,tbx+tbw,tby);
	d3d_vertex_texture(x,y+bck2d->height,z, tbx,tby+tbh);
	d3d_vertex_texture(x+bck2d->width,y+bck2d->height,z, tbx+tbw,tby+tbh);
	draw_primitive_end();
}
Exemplo n.º 2
0
void d3d_draw_sprite(int spr,int subimg, gs_scalar x, gs_scalar y, gs_scalar z)
{
    get_spritev(spr2d,spr);
    const int usi = subimg >= 0 ? (subimg % spr2d->subcount) : int(((enigma::object_graphics*)enigma::instance_event_iterator->inst)->image_index) % spr2d->subcount;

	const float tbx = spr2d->texbordxarray[usi], tby = spr2d->texbordyarray[usi],
			xvert1 = x-spr2d->xoffset, xvert2 = xvert1 + spr2d->width,
			yvert1 = y-spr2d->yoffset, yvert2 = yvert1 + spr2d->height;

	draw_primitive_begin_texture(pr_trianglestrip, spr2d->texturearray[usi]);
	d3d_vertex_texture(xvert1,yvert1,z,0,0);
	d3d_vertex_texture(xvert2,yvert1,z,tbx,0);
	d3d_vertex_texture(xvert1,yvert2,z,0,tby);
	d3d_vertex_texture(xvert2,yvert2,z,tbx,tby);
	draw_primitive_end();
}