Squish World 3D — a Unity prototype for iOS/iPadOS. This is a new, separate
project from the squish-world Godot 4 repo, not a fork or port of it. See
SQUISH_WORLD_3D_UNITY_PLAN.md for the full
feasibility writeup and phased plan; the short version is that this project
exists to prove out the iOS build/signing/TestFlight pipeline cheaply, before
sinking real time into the hard part — 3D character modeling and rigging for
Squish and Lilyan (plan §5).
- Unity 6 LTS, installed via Unity Hub, with the iOS Build Support module added.
- Git LFS (
git lfs installonce per machine). - Xcode, current version, with a signed-in Apple Developer account for on-device builds and TestFlight distribution.
git clonethis repo, thengit lfs pullif it doesn't run automatically.- In Unity Hub, Add the cloned folder as a project and open it with Unity 6 LTS.
File > Build Settings, switch platform to iOS.Player Settings: set the bundle identifier under your Apple Developer team, minimum iOS version, and orientation (locked to one orientation — see Player Settings for the current value).- Build — this generates an Xcode project (not committed; see
.gitignore). - Open the generated
.xcodeprojin Xcode, select your signing team, and run on a connected device.
For now, distribution is kept simple on purpose: each device (currently two iPhones) gets installed by plugging it into the Mac and running from Xcode directly, rather than through TestFlight. Revisit TestFlight if the device list outgrows "plug it in."
Assets/Scenes/SampleScene.unity is the Week 0 proof-of-pipeline scene: a
ground plane, a capsule for Lilyan (NavMeshAgent + tap-to-move) and a
smaller capsule for Squish (fixed-offset follow), a baked NavMesh with one
obstacle, and a Cinemachine follow camera. It was built via
Squish World > Build Placeholder Scene in the Unity menu bar
(Assets/Editor/SceneBuilder.cs) rather than assembled by hand — re-run that
menu item against a fresh copy of SampleScene.unity if it ever needs to be
rebuilt from scratch.
Everything lives under flat top-level folders in Assets/, rather than a
single Assets/_Project sandbox folder — simpler for a project this small:
Assets/Scenes— Unity scenesAssets/Scripts— C# scriptsAssets/Characters— character models, rigs, animationsAssets/Environment— environment art and level geometryAssets/Materials— materials and shadersAssets/Prefabs— prefabs
Binary asset types (.fbx, .png, .wav, .mp4) are tracked via Git LFS
from the start (see .gitattributes).