- getting input data format from shader - storing data (in shader format) - structure of arrays apporach - binding data to shader