Вопрос

Можно ли загружать 3D-объекты в приложение Silverlight 3 или Silverlight 4?(объекты 3DS Max или другие форматы).Помимо загрузки объекта, мне также нужно базовое взаимодействие — простые вращения, увеличение/уменьшение масштаба.

Это было полезно?

Решение

Я думаю, что управляемый 3D-движок Бальдер может быть правильным выбором для вас.Он неплохо работает в Silverlight, и я использовал его с Silverlight 3 и 4b.На данный момент Бальдер поддерживает формат ASE, но Эйнар и его коллеги усердно работают над движком и хотят поддерживать больше форматов ячеек в будущем.

Другие советы

Не совсем.

Возможно, существуют библиотеки, которые могут привнести некоторые ограничения в 3D-эффекты в SL (действительно, SL 3 сам по себе имеет немного этого).Однако у SL не очень хорошая поддержка 3D.

Есть старый Кит3D проект, но не знаю, где он сейчас, за последний год он не обновлялся.

Конечно, это возможно.Сколько кода вы хотите написать?Насколько хорошо это должно выглядеть?

Идея 3D в Silverlight такая же, как и 3D во Flash.Вы можете это сделать, если знаете тригонометрию и основы алгебры.Это довольно легко, если только вы не заржавели.

Во-первых, вам нужно будет экспортировать вершины в формат, который можно будет прочитать, или встроить непосредственно в ваш проект.Далее вам нужно будет создать несколько треугольников и поместить их дескрипторы в массив.

Вы не можете эффективно реализовать вершинное освещение, поэтому вы, вероятно, застряли в плоской штриховке.Перед каждым кадром необходимо:

  • Пересеките свою геометрию
  • Примените повороты и преобразования (положение, масштабирование)
  • Отрегулируйте один треугольник в вашем массиве для каждого треугольника в вашей геометрии (с применением матриц)
  • Отсортируйте треугольники задом наперед.
  • Отрегулируйте цвет каждого треугольника (лучше всего один раз)
  • И т. д.

Вам будет сложно превысить 1000 треугольников / 3000 вершин.Вы можете это сделать, но не в том случае, если хотите одновременно заниматься другими делами.

Так да.Это вполне возможно, но это не что-то готовое и не интегрированное в Silverlight.А пока нам приходится прибегать к способу создания 3D-графики, как в старые добрые времена...рукой.

Практически невозможно загрузить объект 3Ds Max в Silverlight 3/4.

Гугл о3Д вероятно, это ваш путь.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top