История изменений
Исправление KivApple, (текущая версия) :
Во-первых, формат obj умеет хранить текстурные координаты, а Blender умеет их генерировать и редактировать. Просто открой в Blender шар в редакторе UV и сгенерируй развертку. А потом экспортируй снова, а в свою программу добавь парсинг директивы vt из obj, а не только v, vn и f.
Во-вторых, если хочется гладкий шарик, то вруби интерполяцию нормалей между вершинами. Не помню, кажется, сделать varying параметр передаваемый из вершинного во фрагментный шейдер. Тогда шар будет казаться гладким с меньшей детализацией. В самом Blender есть параметр smooth shading, чтобы посмотреть как оно работает, но в своей проге придётся самому реализовать. Ну и лучше использовать icosphere, а не просто sphere, оно по вершинам эффективнее.
Исходная версия KivApple, :
Во-первых, формат obj умеет хранить текстурные координаты, а Blender умеет их генерировать и редактировать. Просто открой в Blender шар в редакторе UV и сгенерируй развертку. А потом экспортируй снова, а в свою программу добавь парсинг директивы vt из obj, а не только v, vn и f.
Во-вторых, если хочется гладкий шарик, то вруби интерполяцию нормалей между вершинами. Не помню, кажется, сделать varying параметр передаваемый из вершинного во фрагментный шейдер. Тогда шар будет казаться гладким с меньшей детализацией. Ну и лучше использовать icosphere, а не просто sphere, оно по вершинам эффективнее.