All projects
Games
LasMeta Case Study
Technical case study, May 2025. Code sample.
- Engine: Unity, C#
- Networking: Photon Fusion 2 (Shared Mode)
- Scope: Solo technical case study
A small multiplayer poker scene where players ask a dealer to deal cards. The goal was a "deal cards" interaction that stays correct and in sync across clients.
Networking
- Player joins and spawning handled through NetworkEvents.
- Only the player whose turn it is can deal: turns are enforced with
RequestStateAuthorityandReleaseStateAuthority. - Dealer animation, card sound and effects are broadcast with RPCs, so every client sees the same thing.
- Shared game state kept in Networked Properties.
Gameplay and UI
- Round-based dealing, one card at a time, with animated 3D cards (DoTween).
- Card objects are pooled and reused to cut allocations and GC spikes.
- Custom UI designed in Figma, with an animated game-state panel.
- Third-person camera with orbit and zoom, plus a first-person roaming mode.
Performance
- Static light baking, with real-time lights limited by layer masks to the objects that need them.
What I'd change next
The IPlayerJoined callback did not fire as expected, so I fell back to NetworkEvents, and some state authority delays needed careful event ordering. For a production version I would move from Shared Mode to Fusion Server Mode for stronger authority.
Demo
Two clients side by side, staying in sync: