Теперь, когда описанный выше пользовательский эффект реализован, его шейдеры могут быть изменены методами, описанными @AdaRaider, для получения любого желаемого эффекта.
я есть следующий 3D-объект:
Материал моего трехмерного объекта кодируется так с помощью Qt3D:
void MyClass::addMaterial(Qt3DCore::QEntity *entity)
{
Qt3DExtras::QPhongMaterial * material = new Qt3DExtras::QPhongMaterial();
material->setAmbient(QColor(245-30, 245-15, 245));
material->setDiffuse(QColor(125-30, 125-15, 125));
material->setSpecular(QColor(215-30, 255-15, 255));
entity->addComponent(material);
}
Приведенный выше код дает те же цвета для объекта 3D-объектаравномерно, Как я могу дать разные цвета различным разделам моей сущности? Я хочу выделить какой-то раздел на моем 3D-объекте, есть ли способ сделать это с помощью Qt3D?
Если это невозможно с Qt3D, как лучше всего это делать сOpenGL?
Я нашелобсуждение что я чувствую, что это было бы очень полезно.
После проведения некоторых исследований наилучшим подходом может стать использование языка затенения OpenGL илиGLSL, Я не уверен.