Virtual product generation