При разработке небольшой моделирующей системы возникла необходимость
трехмерной визуализации. В нее может входить отображение различных
геометрических тел (сферы, параллелепипеды, точки и линии, может быть
более сложные объекты, например, заданные набором точек).
В следствии этого возникла небольшая дилемма:
какое средство удобнее и проще применить:
какой нибудь свободно распространяемый движок или стандартные средства DirectX.
Система разрабатывается на с#.
Кроме этого хотелось бы сделать акцент на VRML, удобно ли применять
эту технологию в данном случае?
И вообще насколько она соответствует современным стандартам в области графики?
Какова ниша этой технологии?
Изменилась ли область применения этой технологии по сравнению с прошлыми годами (отображение сцен в браузере)?
Хотелось бы послушать разные мнения в сравнении с VRML.
Здравствуйте, Аноним, Вы писали: А>Хотелось бы послушать разные мнения в сравнении с VRML.
VRML довольно удобная штука,но не совсем шустрая.Для использования в программе оптимально использовать cortona vrml dll-ки,но соответственно неудобство будет проявляться в виде инсталляции cortona vrml на машине пользователя и проблеме совместимости версий.
Можно перегнать модели в .X -формат и использовать для просмотра DX-средства,но лично я не очень уважаю D3D за надёжность.
Я бы перегнал модели в DXF и просматривал средствами OpenGL:практически никаких проблем с минимальными требованиями,совместимостью и скоростью.Стандарт DXF открытый,просматривать просто.
На интересной работе и сны интересные видишь
Re[2]: Применение VRML
От:
Аноним
Дата:
13.06.06 05:28
Оценка:
Здравствуйте, NSP, Вы писали:
NSP>Здравствуйте, Аноним, Вы писали: А>>Хотелось бы послушать разные мнения в сравнении с VRML.
NSP>VRML довольно удобная штука,но не совсем шустрая.Для использования в программе оптимально использовать cortona vrml dll-ки,но соответственно неудобство будет проявляться в виде инсталляции cortona vrml на машине пользователя и проблеме совместимости версий. NSP>Можно перегнать модели в .X -формат и использовать для просмотра DX-средства,но лично я не очень уважаю D3D за надёжность. NSP>Я бы перегнал модели в DXF и просматривал средствами OpenGL:практически никаких проблем с минимальными требованиями,совместимостью и скоростью.Стандарт DXF открытый,просматривать просто.
Вы говорите об отображении уже готовых трехмерных сцен?
А как насчет создания в real-time разных объектов, изменения их свойств
и т.д. ?
Проблема будет только в скорости?
И еще, я читал, что там удобная обработка событий,
т.е. можно навесить свой хендлер, например, на выбор мышкой объекта, и
в результате понять на что кликнул.
Насколько это соответствует реальности (удобство подобных вещей)?
...
А>А как насчет создания в real-time разных объектов, изменения их свойств А>и т.д. ?
А>Проблема будет только в скорости?
А>И еще, я читал, что там удобная обработка событий, А>т.е. можно навесить свой хендлер, например, на выбор мышкой объекта, и А>в результате понять на что кликнул. А>Насколько это соответствует реальности (удобство подобных вещей)?
Создание в real-time объектов и обработка событий реализованы во всех мало-мальски приличных VRML-браузерах.
Создание новых объеков делается через скриптовой объект Browser (createVrmlFromString или createVrmlFromURL).
Динамически изменяться может любой exposedField объекта, а это целиком appearance и geometry. Обычно для "подсвечивания" какой-нибудь геометрии хватает diffuseColor или emissiveColor, ну и transparency.
С обработкой мышки всё прозрачно: вставляется TouchSensor и можно ловить javascript-ом события isActive, isOver, touchTime, hitPoint_changed, hitNormal_changed и hitTexCoord_changed
Проблемы могут возникнуть, если понадобится управлять VRML-сценой из внешнего приложения. От EAI из спецификации VRML97 толка будет мало. Придётся использовать "фирменные" средства, т.е. писать сцену под конкретный браузер и платить за SDK деньги.
Re[4]: Применение VRML
От:
Аноним
Дата:
14.06.06 08:59
Оценка:
Здравствуйте, Uh, Вы писали:
Uh>...
А>>А как насчет создания в real-time разных объектов, изменения их свойств А>>и т.д. ?
А>>Проблема будет только в скорости?
А>>И еще, я читал, что там удобная обработка событий, А>>т.е. можно навесить свой хендлер, например, на выбор мышкой объекта, и А>>в результате понять на что кликнул. А>>Насколько это соответствует реальности (удобство подобных вещей)?
Uh>Создание в real-time объектов и обработка событий реализованы во всех мало-мальски приличных VRML-браузерах. Uh>Создание новых объеков делается через скриптовой объект Browser (createVrmlFromString или createVrmlFromURL). Uh>Динамически изменяться может любой exposedField объекта, а это целиком appearance и geometry. Обычно для "подсвечивания" какой-нибудь геометрии хватает diffuseColor или emissiveColor, ну и transparency. Uh>С обработкой мышки всё прозрачно: вставляется TouchSensor и можно ловить javascript-ом события isActive, isOver, touchTime, hitPoint_changed, hitNormal_changed и hitTexCoord_changed
Uh>Проблемы могут возникнуть, если понадобится управлять VRML-сценой из внешнего приложения. От EAI из спецификации VRML97 толка будет мало. Придётся использовать "фирменные" средства, т.е. писать сцену под конкретный браузер и платить за SDK деньги.
Можно еще раз акцентировать внимание на двух вопросах.
1. Имеет ли смысл использовать VRML в десктопном приложении (используя Cortona SDK) как основу визуализации некоторого вычислительного эксперимента? Удобно ли это? Или 100 разноцветных кубиков
затормозят всю систему?
2. Какова в данный момент ниша использования данной технологии? Иначе, где
используется VRML и каковы перспективы его развития?
... А>1. Имеет ли смысл использовать VRML в десктопном приложении (используя Cortona SDK) как основу визуализации некоторого вычислительного эксперимента? Удобно ли это? Или 100 разноцветных кубиков А>затормозят всю систему?
По всей видимости, имеет смысл. На VRML сцену можно сделать ещё и компактной, хотя для локального приложения в этом нет необходимости. На 1000 кубиках быстродействие будет определяться не геометрией, а тем, насколько часто и глубоко будет перестраиваться сцена. Если все кубики будут создаваться заново из строки на каждом кадре, то fps может просесть и на 100.
А>2. Какова в данный момент ниша использования данной технологии? Иначе, где А>используется VRML и каковы перспективы его развития?
VRML активно используется для визуализации различных технологических процессов. Причём под технологическим процессом подразумевается не только проектирование и изготовление, но и обучение персонала, эксплуатация и ремонт, т.е. полный жизненный цикл изделия. http://www.parallelgraphics.com/virtual-manuals/demo/ http://octaga.com/references.html http://www.bitmanagement.com/demos/demos.en.html
Перспективы VRML туманны. Консорциум Web3D "отрёкся" от VRML97 в пользу X3D, Intel продвигает свой U3D. Поживём — увидим.
Re[6]: Применение VRML
От:
Аноним
Дата:
15.06.06 05:06
Оценка:
Здравствуйте, Uh, Вы писали:
Uh>... А>>1. Имеет ли смысл использовать VRML в десктопном приложении (используя Cortona SDK) как основу визуализации некоторого вычислительного эксперимента? Удобно ли это? Или 100 разноцветных кубиков А>>затормозят всю систему? Uh>По всей видимости, имеет смысл. На VRML сцену можно сделать ещё и компактной, хотя для локального приложения в этом нет необходимости. На 1000 кубиках быстродействие будет определяться не геометрией, а тем, насколько часто и глубоко будет перестраиваться сцена. Если все кубики будут создаваться заново из строки на каждом кадре, то fps может просесть и на 100.
А>>2. Какова в данный момент ниша использования данной технологии? Иначе, где А>>используется VRML и каковы перспективы его развития? Uh>VRML активно используется для визуализации различных технологических процессов. Причём под технологическим процессом подразумевается не только проектирование и изготовление, но и обучение персонала, эксплуатация и ремонт, т.е. полный жизненный цикл изделия. Uh>http://www.parallelgraphics.com/virtual-manuals/demo/ Uh>http://octaga.com/references.html Uh>http://www.bitmanagement.com/demos/demos.en.html Uh>Перспективы VRML туманны. Консорциум Web3D "отрёкся" от VRML97 в пользу X3D, Intel продвигает свой U3D. Поживём — увидим.