Optimization: pass only one matrix in draw() method