added pass() callback to create render passes