private static void CreateBase(VoxelSpriteChunk c, int height) { int center = (SPRITE_SIZE/2); int heightcenter = (height/2)+1; for (int z = center - 3; z <= center + 2; z++) for (int y = center - (heightcenter-2); y <= center + heightcenter; y++) for (int x = 0; x < c.X_SIZE; x++) { if (z == center - 3 && (x == 0 || x == c.X_SIZE - 1 || y == center - (heightcenter-2) || y == center + heightcenter)) continue; c.SetVoxel(x, y, z, true, new Color(0.5f, 0.5f, 0.5f)); } }
private static void CreateText(VoxelSpriteChunk c, int height, string text, Dictionary<string,bool[,]> letters) { int center = (SPRITE_SIZE/2); int heightcenter = (height/2); int textstart = center - (((text.Length*6) - 1)/2); int vx = textstart; for (int i = 0; i < text.Length; i++) { if (text[i] == ' ') { vx += 6; continue; } for(int x=0;x<5;x++) for(int y=0;y<5;y++) c.SetVoxel(vx+x,(center+3) - y, center - 4, letters[text[i].ToString()][y,x], new Color(1f,1f,1f)); vx += 6; } }
private static void CreateScrews(VoxelSpriteChunk c, int height) { int center = (SPRITE_SIZE/2); int heightcenter = (height/2)+1; // TL c.SetVoxel(2, (center + heightcenter) - 2, center - 4, true, new Color(0.8f, 0.8f, 0.8f)); c.SetVoxel(3, (center + heightcenter) - 2, center - 4, true, new Color(0.8f, 0.8f, 0.8f)); c.SetVoxel(2, (center + heightcenter) - 3, center - 4, true, new Color(0.8f, 0.8f, 0.8f)); c.SetVoxel(3, (center + heightcenter) - 3, center - 4, true, new Color(0.4f, 0.4f, 0.4f)); // TR c.SetVoxel(c.X_SIZE - 4, (center + heightcenter) - 2, center - 4, true, new Color(0.8f, 0.8f, 0.8f)); c.SetVoxel(c.X_SIZE - 3, (center + heightcenter) - 2, center - 4, true, new Color(0.8f, 0.8f, 0.8f)); c.SetVoxel(c.X_SIZE - 4, (center + heightcenter) - 3, center - 4, true, new Color(0.8f, 0.8f, 0.8f)); c.SetVoxel(c.X_SIZE - 3, (center + heightcenter) - 3, center - 4, true, new Color(0.4f, 0.4f, 0.4f)); // BL c.SetVoxel(2, (center - (heightcenter - 2)) + 3, center - 4, true, new Color(0.8f, 0.8f, 0.8f)); c.SetVoxel(3, (center - (heightcenter - 2)) + 3, center - 4, true, new Color(0.8f, 0.8f, 0.8f)); c.SetVoxel(2, (center - (heightcenter - 2)) + 2, center - 4, true, new Color(0.8f, 0.8f, 0.8f)); c.SetVoxel(3, (center - (heightcenter - 2)) + 2, center - 4, true, new Color(0.4f, 0.4f, 0.4f)); // BR c.SetVoxel(c.X_SIZE - 4, (center - (heightcenter - 2)) + 3, center - 4, true, new Color(0.8f, 0.8f, 0.8f)); c.SetVoxel(c.X_SIZE - 3, (center - (heightcenter - 2)) + 3, center - 4, true, new Color(0.8f, 0.8f, 0.8f)); c.SetVoxel(c.X_SIZE - 4, (center - (heightcenter - 2)) + 2, center - 4, true, new Color(0.8f, 0.8f, 0.8f)); c.SetVoxel(c.X_SIZE - 3, (center - (heightcenter - 2)) + 2, center - 4, true, new Color(0.4f, 0.4f, 0.4f)); }