engine created from scratch with SMFL