|
|
|
OpenGL и пару "школьных" вопросов
|
|||
|---|---|---|---|
|
#18+
Добрый день форумчане! Пытаюсь изучать OpenGL На данный момент просто осваиваю координирование в пространстве матрицы и прочее. Пока на 2D построениях. Вопроса возникло пока 2. 1. Каким образом при изменение окна отображения (glViewport) соблюдать пропорции объектов. Считать самому через glScalef или есть какие то другие варианты? Код изменения положения и масштаба. Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. И второй вопрос. При изменении положения каждый раз требуется перерисовка всей сцены или можно просто менять положение и параметры "камеры". У меня не получилось без полной перерисовки. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2013, 10:35 |
|
||
|
OpenGL и пару "школьных" вопросов
|
|||
|---|---|---|---|
|
#18+
Григорий Поверенный, Попробуй почитать. Автор капитанет четь менее чем в половине случаев, но как стартовый обзорный толчок - хватит. http://www.elite-games.ru/art/program/jurlessindex.shtml ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2013, 12:05 |
|
||
|
OpenGL и пару "школьных" вопросов
|
|||
|---|---|---|---|
|
#18+
Григорий Поверенный, А вообще... 1) При 2d у тебя должна быть ортогональная камера, которая сама решает проблемы скаллинга. 2) Надо перерисовывать, так как вообще все могло измениться. Вообще надо перерисовывать почти всегда. Или у тебя статичная картинка? Если статика, то рендер в текстуру и ей елозить. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2013, 12:06 |
|
||
|
OpenGL и пару "школьных" вопросов
|
|||
|---|---|---|---|
|
#18+
WarstoneГригорий Поверенный, А вообще... 1) При 2d у тебя должна быть ортогональная камера, которая сама решает проблемы скаллинга. если размеры окна пропорциональны то всё нормально. Если нет, то всё растягивается. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2013, 12:15 |
|
||
|
OpenGL и пару "школьных" вопросов
|
|||
|---|---|---|---|
|
#18+
Григорий Поверенный, Значит надо менять камеру при изменении размеров. Я напрочь не помню как это делается, но это делается. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2013, 12:33 |
|
||
|
OpenGL и пару "школьных" вопросов
|
|||
|---|---|---|---|
|
#18+
Пока прихожу к выводу, что остаётся glScalef( Scale, Scale, 1) с коэффициентами разницы по осям. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2013, 18:46 |
|
||
|
OpenGL и пару "школьных" вопросов
|
|||
|---|---|---|---|
|
#18+
Код: pascal 1. 2. 3. 4. 5. 6. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.06.2013, 09:05 |
|
||
|
OpenGL и пару "школьных" вопросов
|
|||
|---|---|---|---|
|
#18+
QEOS, Да это решает проблему сохранения отношения сторон. Остаётся проблема сохранения масштаба. Короче стереометрию в руки... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.06.2013, 07:36 |
|
||
|
OpenGL и пару "школьных" вопросов
|
|||
|---|---|---|---|
|
#18+
Григорий Поверенный, Можно заменить на nRange := 100.0; if (w <= h) then glOrtho (-nRange, nRange, -nRange*h/w, nRange*h/w, -nRange, nRange) else glOrtho (-nRange*w/h, nRange*w/h, -nRange, nRange, -nRange, nRange); После зумироватся и перемещаться на нужную точку. Так как то понятней получается:-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.06.2013, 07:47 |
|
||
|
OpenGL и пару "школьных" вопросов
|
|||
|---|---|---|---|
|
#18+
Григорий ПоверенныйQEOS, Да это решает проблему сохранения отношения сторон. Остаётся проблема сохранения масштаба. Короче стереометрию в руки... масштаб? что за масштаб? glScale ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.06.2013, 09:23 |
|
||
|
OpenGL и пару "школьных" вопросов
|
|||
|---|---|---|---|
|
#18+
Кстати пользуясь случаем: Если ктото делал онлайн игры от первого/третьего лица или подобное -- то готов обсудить выкуп или участие в проекте ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.06.2013, 09:26 |
|
||
|
OpenGL и пару "школьных" вопросов
|
|||
|---|---|---|---|
|
#18+
Да проблема в корректном вычислении коэффициента масштаба что бы при изменении размеров окна, объекты сохраняли своё положение и размеры. Выкладываю примерчик. Грубовато не бейте сильно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.06.2013, 10:26 |
|
||
|
OpenGL и пару "школьных" вопросов
|
|||
|---|---|---|---|
|
#18+
dglOpenGL не влез. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.06.2013, 10:26 |
|
||
|
OpenGL и пару "школьных" вопросов
|
|||
|---|---|---|---|
|
#18+
В общем решил пока таким образом - Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.07.2013, 08:27 |
|
||
|
OpenGL и пару "школьных" вопросов
|
|||
|---|---|---|---|
|
#18+
В общем получилось что то более менее работающее. На отрисовку около 15 тыс полигонов различной сложности приходится не много времени, но скорость конечно зависит от видеокарты процессора и тд. Скажем так, не особо удовлетворительная. На старой машинке уже заметна пауза от рисовки. Да и постоянное рисование объектов, не корректная реализация. Вообще стоит ли использовать OpenGL для 2D в качестве ГИС? Есть ли у кого то опыт такой реализации? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.07.2013, 14:26 |
|
||
|
OpenGL и пару "школьных" вопросов
|
|||
|---|---|---|---|
|
#18+
Григорий, что-нибудь придумали? Куда-нибудь продвинулись? Тоже задумался об использовании OpenGL в картографии, но мне проще, я не собираюсь отрисовывать каждый объект отдельно. Сперва все в растр, потом растр - в текстуру. У меня другая проблема - энергосбережение. Хочу использовать устройства на аккумуляторах. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.04.2020, 16:16 |
|
||
|
|

start [/forum/topic.php?fid=58&fpage=46&tid=2038372]: |
0ms |
get settings: |
6ms |
get forum list: |
14ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
21ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
48ms |
get tp. blocked users: |
1ms |
| others: | 216ms |
| total: | 321ms |

| 0 / 0 |
