Я создаю текстуру рендеринга 2048x2048 и визуализирую поверх нее спрайт размером 2048x2048, покрывающий всю текстуру рендеринга. Как рассчитываются параметры glOrtho(..)? glOrtho((float)-1.0f , (float)1.0f , (float)-1.0f , (float)1.0f, -1, 1) работает для спрайтов размером 1024x768, а также 512x512. Каково ограничение на максимальное разрешение цели рендеринга?
параметры для glOrtho для квадрата размера экрана в cocos2dx
Ответы (1)
В случае со спрайтом вы имеете в виду четырехугольник или что-то в этом роде:
Вызов glOrtho(-1.0, 1.0, -1.0, 1.0, -1.0, 1.0)
не будет работать ни со спрайтом 2048x2048, ни со спрайтом 1024x768, ни со спрайтом 512x512. Или лучше сработает, но я уверен, что это не даст ожидаемых результатов. Координаты спрайта и аргументы glOrtho
находятся в одном и том же пространстве (которое не обязательно должно быть пикселями).
Либо используйте спрайт размером 2x2 с glOrtho(-1.0, 1.0, -1.0, 1.0, -1.0, 1.0)
, либо спрайт размером 1x1 с glOrtho(0.0, 1.0, 0.0, 1.0, -1.0, 1.0)
, либо спрайт размером 2048x2048 с glOrtho(0.0, 2048.0, 0.0, 2048.0, -1.0, 1.0)
, или что угодно с координатами спрайта, соответствующими аргументам glOrtho
, это не имеет большого значения.