Russian Qt Forum
Ноябрь 23, 2024, 00:54
Добро пожаловать,
Гость
. Пожалуйста,
войдите
или
зарегистрируйтесь
.
Вам не пришло
письмо с кодом активации?
1 час
1 день
1 неделя
1 месяц
Навсегда
Войти
Начало
Форум
WIKI (Вики)
FAQ
Помощь
Поиск
Войти
Регистрация
Russian Qt Forum
>
Forum
>
Qt
>
2D и 3D графика
>
Выбор OpenGl
Страниц:
1
[
2
]
Вниз
« предыдущая тема
следующая тема »
Печать
Автор
Тема: Выбор OpenGl (Прочитано 15042 раз)
deMax
Хакер
Offline
Сообщений: 600
Re: Выбор OpenGl
«
Ответ #15 :
Август 12, 2014, 11:26 »
Цитата: Old от Август 11, 2014, 11:10
Придумайте свой формат и напишите экспортер из редактора. Большинство редакторов (если не все) позволяют это делать довольно легко.
Так я так и хочу, нужно во что то экспортировать, чтоб потом в свой формат собрать. И чтоб там было все необходимое (иерархия объектов, полигоны, нормали и текстуры)
Цитата: navrocky от Август 11, 2014, 19:31
Есть COLLADA
https://ru.wikipedia.org/wiki/COLLADA
.
Спасибо, похоже на то что нужно. Только Deep Exploration при экспорте в этот формат модель в кашу превратил.
Записан
navrocky
Гипер активный житель
Offline
Сообщений: 817
Погроммист
Re: Выбор OpenGl
«
Ответ #16 :
Август 12, 2014, 11:42 »
Цитата: deMax от Август 12, 2014, 11:26
Только Deep Exploration при экспорте в этот формат модель в кашу превратил.
Blender неплохо умеет в этот формат. Также есть либа Assimp, которая умеет его читать.
Записан
Гугль в помощь
Igors
Джедай : наставник для всех
Offline
Сообщений: 11445
Re: Выбор OpenGl
«
Ответ #17 :
Август 12, 2014, 12:04 »
Цитата: navrocky от Август 11, 2014, 19:31
Есть COLLADA
https://ru.wikipedia.org/wiki/COLLADA
.
А дата последнего апдейта не смущает?
Записан
navrocky
Гипер активный житель
Offline
Сообщений: 817
Погроммист
Re: Выбор OpenGl
«
Ответ #18 :
Август 12, 2014, 14:48 »
Цитата: Igors от Август 12, 2014, 12:04
Цитата: navrocky от Август 11, 2014, 19:31
Есть COLLADA
https://ru.wikipedia.org/wiki/COLLADA
.
А дата последнего апдейта не смущает?
Это же версия стандарта. Бывают более протухшие популярные стандарты
Я когда два года назад разбирался с загрузкой модели из blender в свою прогу, много чего перебрал, с COLLADA получалось наиболее адекватно, с текстурами, нормалями и правильной расстановкой деталей, поэтому и советую. Ну и это открытый стандарт, и во многих пакетах поддерживается экспорт/импорт в него.
Записан
Гугль в помощь
deMax
Хакер
Offline
Сообщений: 600
Re: Выбор OpenGl
«
Ответ #19 :
Август 12, 2014, 15:52 »
Цитата: navrocky от Август 12, 2014, 14:48
Я когда два года назад разбирался с загрузкой модели из blender в свою прогу, много чего перебрал, с COLLADA получалось наиболее адекватно, с текстурами, нормалями и правильной расстановкой деталей, поэтому и советую. Ну и это открытый стандарт, и во многих пакетах поддерживается экспорт/импорт в него.
Спасибо, значит наверно на нем и остановлюсь - вроде все устраивает. (жалко что нет иерархии и смещения частей в obj формате, меня бы в принципе устроил).
Записан
deMax
Хакер
Offline
Сообщений: 600
Re: Выбор OpenGl
«
Ответ #20 :
Август 14, 2014, 11:21 »
Цитата: navrocky от Август 12, 2014, 14:48
Я когда два года назад разбирался с загрузкой модели из blender в свою прогу, много чего перебрал, с COLLADA получалось наиболее адекватно, с текстурами, нормалями и правильной расстановкой деталей, поэтому и советую. Ну и это открытый стандарт, и во многих пакетах поддерживается экспорт/импорт в него.
Наверно на этом и остановлюсь. Вы сами xml парсили или библиотекой воспользовались? Может есть примеры?
p.s. Как человеку в юные годы долго игравшимся с lightwave, интерфейс blender доводит до слов нехороших... еще и форматы не все корректно переводяться. Надеюсь связка blender->COLLADA->opengl без косяков.
Записан
navrocky
Гипер активный житель
Offline
Сообщений: 817
Погроммист
Re: Выбор OpenGl
«
Ответ #21 :
Август 14, 2014, 11:59 »
Цитата: deMax от Август 14, 2014, 11:21
Цитата: navrocky от Август 12, 2014, 14:48
Я когда два года назад разбирался с загрузкой модели из blender в свою прогу, много чего перебрал, с COLLADA получалось наиболее адекватно, с текстурами, нормалями и правильной расстановкой деталей, поэтому и советую. Ну и это открытый стандарт, и во многих пакетах поддерживается экспорт/импорт в него.
Наверно на этом и остановлюсь. Вы сами xml парсили или библиотекой воспользовались? Может есть примеры?
Нет конечно, я пользовал assimp, пример ее использования есть в qt3d.
Записан
Гугль в помощь
deMax
Хакер
Offline
Сообщений: 600
Re: Выбор OpenGl
«
Ответ #22 :
Август 14, 2014, 14:46 »
Цитата: navrocky от Август 14, 2014, 11:59
Нет конечно, я пользовал assimp, пример ее использования есть в qt3d.
Спасибо.
А как модель экспортировали? Blender экспортирует в collada(.dae), но deepexploration не отображает текстуры(неправильный путь к текстуре материала+на все объекты наложен материал по умолчанию)
Записан
navrocky
Гипер активный житель
Offline
Сообщений: 817
Погроммист
Re: Выбор OpenGl
«
Ответ #23 :
Август 18, 2014, 16:41 »
К сожалению, я уже припомнить не могу что да как, но без танцев с бубном, конечно, не обошлось
Записан
Гугль в помощь
deMax
Хакер
Offline
Сообщений: 600
Re: Выбор OpenGl
«
Ответ #24 :
Сентябрь 01, 2014, 07:49 »
Хочу в OpenGl сделать реализацию слоев, у меня объекты находятся в разном масштабе и по факту все объекты первого слоя находятся дальше любого объекта второго слоя(а в opengl они будут пересекаться, т.к. единица масштаба у каждого слоя своя). Правильно ли я думаю, что перед началом рисования следующего слоя нужно сбросить буфер глубины?
Какие движки поддерживают возможность очистки буфера глубины в процессе рисования сцены? Openscenegraph?
p.s. Эта задача актуальна для космоса, макро объектов на фоне нашего мира...
Записан
Igors
Джедай : наставник для всех
Offline
Сообщений: 11445
Re: Выбор OpenGl
«
Ответ #25 :
Сентябрь 02, 2014, 08:24 »
Цитата: deMax от Сентябрь 01, 2014, 07:49
Хочу в OpenGl сделать реализацию слоев, у меня объекты находятся в разном масштабе и по факту все объекты первого слоя находятся дальше любого объекта второго слоя(а в opengl они будут пересекаться, т.к. единица масштаба у каждого слоя своя). Правильно ли я думаю, что перед началом рисования следующего слоя нужно сбросить буфер глубины?
Какие движки поддерживают возможность очистки буфера глубины в процессе рисования сцены? Openscenegraph?
p.s. Эта задача актуальна для космоса, макро объектов на фоне нашего мира...
Сбрасывая depth буфер Вы просто говорите OpenGL "рисовать поверх старого (т.е. уже отрисованного)". Кто мешает просто выводить звезды "от дальних к ближним"? Используя какое-то условное расстояние, хоть тот же номер слоя = Z, Все равно это будут точки заданной "толщины"
Записан
deMax
Хакер
Offline
Сообщений: 600
Re: Выбор OpenGl
«
Ответ #26 :
Сентябрь 02, 2014, 10:24 »
Например: я рисую космический корабль - единицы измерения метры, рисую солнечную систему - тысяча метров, звезды - а.е/парсеки... и ничего не пересечется. Работаем в нормальной системе измерения и не надо проверять что вдруг солнце перед космическим кораблем окажется. В space engine автор писал что реализовал рисование космоса через слои, вот я и пытаюсь понять как это можно реализовать.
Записан
Igors
Джедай : наставник для всех
Offline
Сообщений: 11445
Re: Выбор OpenGl
«
Ответ #27 :
Сентябрь 02, 2014, 11:39 »
Цитата: deMax от Сентябрь 02, 2014, 10:24
Например: я рисую космический корабль - единицы измерения метры, рисую солнечную систему - тысяча метров, звезды - а.е/парсеки... и ничего не пересечется. Работаем в нормальной системе измерения и не надо проверять что вдруг солнце перед космическим кораблем окажется.
OpenGL рендерит во "фрустуме" (усеченная пирамида), напр в gluPerspective задаются передняя и задняя глубины (hither/yon). И эти параметры совсем не безобидны, поэтому вряд ли дело дойдет даже до солнечной системы, не говоря уже о парсеках.
Цитата: deMax от Сентябрь 02, 2014, 10:24
В space engine автор писал что реализовал рисование космоса через слои, вот я и пытаюсь понять как это можно реализовать.
Если бы все было "в реальных размерах" (как Вы упорно хотите) - никакие слои не нужны. Не понимаю в чем сложности? Напр расстояние от Земли до солнца 150 * 1.0e+6 км - ну и положите его равным 150. Точно так же все размеры планет поделите на 1.0e+6 км. Визуально ничего не изменится (вспомните подобие треугольников). Для звезд это не проходит - с ними работайте по углу, об этом уже говорили.
Конечно месяца так через 3 Вы можете опять задать тот же вопрос - но такой подход непродуктивен
Записан
deMax
Хакер
Offline
Сообщений: 600
Re: Выбор OpenGl
«
Ответ #28 :
Сентябрь 02, 2014, 15:59 »
Цитата: Igors от Сентябрь 02, 2014, 11:39
OpenGL рендерит во "фрустуме" (усеченная пирамида), напр в gluPerspective задаются передняя и задняя глубины (hither/yon). И эти параметры совсем не безобидны, поэтому вряд ли дело дойдет даже до солнечной системы, не говоря уже о парсеках.
Это я знаю. Поэтому звезды буду в парсеках рендерить, и если буфер не обнулять то они перед кораблем окажуться.
Цитата: deMax от Сентябрь 02, 2014, 10:24
Если бы все было "в реальных размерах" (как Вы упорно хотите) - никакие слои не нужны. Не понимаю в чем сложности? Напр расстояние от Земли до солнца 150 * 1.0e+6 км - ну и положите его равным 150. Точно так же все размеры планет поделите на 1.0e+6 км. Визуально ничего не изменится (вспомните подобие треугольников). Для звезд это не проходит - с ними работайте по углу, об этом уже говорили.
Я отдалюсь от корабля на 150 метров и корабль "влетит" в солнце. А земля?
p.s. space engine лучшее из того что я видел в плане космоса, а по графике и подавно. Там используют слои, вот я и думаю какие способы реализации слоев в opengl еще есть.
Записан
Страниц:
1
[
2
]
Вверх
Печать
« предыдущая тема
следующая тема »
Перейти в:
Пожалуйста, выберите назначение:
-----------------------------
Qt
-----------------------------
=> Вопросы новичков
=> Уроки и статьи
=> Установка, сборка, отладка, тестирование
=> Общие вопросы
=> Пользовательский интерфейс (GUI)
=> Qt Quick
=> Model-View (MV)
=> Базы данных
=> Работа с сетью
=> Многопоточное программирование, процессы
=> Мультимедиа
=> 2D и 3D графика
=> OpenGL
=> Печать
=> Интернационализация, локализация
=> QSS
=> XML
=> Qt Script, QtWebKit
=> ActiveX
=> Qt Embedded
=> Дополнительные компоненты
=> Кладовая готовых решений
=> Вклад сообщества в Qt
=> Qt-инструментарий
-----------------------------
Программирование
-----------------------------
=> Общий
=> С/C++
=> Python
=> Алгоритмы
=> Базы данных
=> Разработка игр
-----------------------------
Компиляторы и платформы
-----------------------------
=> Linux
=> Windows
=> Mac OS X
=> Компиляторы
===> Visual C++
-----------------------------
Разное
-----------------------------
=> Новости
===> Новости Qt сообщества
===> Новости IT сферы
=> Говорилка
=> Юмор
=> Объявления
Загружается...