𝗥𝗲𝗻𝗱𝗲𝗿𝗶𝗻𝗴 𝗩𝗥𝗠 𝗔𝘃𝗮𝘁𝗮𝗿𝘀 𝗶𝗻 𝗦𝘄𝗶𝗳𝘁𝗨𝗜
Scowld uses a real-time VRM model with lip sync and expressions.
I did not rebuild a 3D pipeline from scratch. Instead, I use a different approach.
The app renders three.js and three-vrm inside a WKWebView. It communicates with Swift using WKScriptMessageHandler.
This separation of duties works well:
- The native side manages AI, voice, and speech to text.
- The web side manages 3D rendering and lip sync.
Users have full control. They swap avatars, names, voices, and personalities.
This method saves time and keeps the 3D logic stable.
Check the code here: https://github.com/apoorvdarshan/scowld
Full post: https://dev.to/apoorvdarshan/rendering-a-customizable-vrm-avatar-in-a-swiftui-app-3ken