2Dなら、キャラクター画像をいくつかパターン用意してランダム関数で一定間隔で画像を差し替えれば良いかと思います。(手が少しだけうごいたものとか、口が動いたものとか)
3Dなら、SceneKitを使用することになりますが、daeファイルから3Dキャラクターを生成し、取得できる座標をランダム関数で動かすのも手かと思います。
daeファイルは以下のようなサイトからサンプルを取得可能です。
無料 3D モデル
Bundle.main.url(forResource: 'fileName', withExtension: "dae")
guard let url = bundleURL, let scene = try? SCNScene(url: url, options: nil) else { return nil }
let node = SCNNode()
scene.rootNode.childNodes.map { node.addChildNode($0) }
と言うか感じで、nodeに取り出して表示できます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。