implemented ProjectSaver (weird GPU stuff again)