public void renderSprite(int xp, int yp, Sprite sprite, boolean fixed) {  // gonna render a sprite	
		if (fixed) {
			xp -= xOffset;	// fixed means fixed to the level (to some coordinates in the level), not fixed to the screen
			yp -= yOffset;
		}
		for (int y = 0; y < sprite.getHeight(); y++) {
			int ya = y + yp;
			for (int x = 0; x < sprite.getWidth(); x++) {
				int xa = x + xp;
				if (xa < 0 || xa >= width || ya < 0 || ya >= height) continue;			// CRASHED after some performance when XA was EQUAL to WIDTH
				int col = sprite.pixels[x + y * sprite.getWidth()];
				if (col != 0xffff00ff && col != 0xff7f007f) pixels[xa + ya * width] = col;
			}
		}
	}