public void removeVoxelAt(int x, int y, int z)
        {
            Vector3 chunkAABBOrigin = this.getGlobalAABBCoordinates(x, y, z);
            Vector3 chunkAABBOffset = this.getLocalAABBCoordinates(x, y, z);

            //estrazione del chunk corrispondente alla posizione
            //cui si desidera aggiungere un voxel.
            if (this._chunkBasket.hasChunkAt(chunkAABBOrigin))
            {
                VoxelWorldChunk chunk = this._chunkBasket.getChunkAt(chunkAABBOrigin);
                chunk.removeVoxelAt((int)chunkAABBOffset.x, (int)chunkAABBOffset.y, (int)chunkAABBOffset.z);

                //se il chunk non contiene più blocchi allora lo rimuoviamo
                //altrimenti lo ridisegnamo
                if (chunk.count == 0)
                {
                    chunk.transform.parent = null;
                    this._chunkBasket.removeChunkAt(chunkAABBOrigin);
                }
                else
                {
                    chunk.update();
                }
            }
        }