added sphere primitive