Move drawing logic to CharacterRenderer