나는 2 개의 Qt 프로젝트를 만들었습니다. 하나는 라이브러리를 만들고 다른 하나는 그 라이브러리를 사용하는 GUI를 만듭니다. 라이브러리가있는 프로젝트에는 내가 만든 쉐이더가 포함되어 있습니다. 내 GUI 내에서 이러한 쉐이더 경로를 참조하고 싶습니다. 내 접근 방식은 내 라이브러리에 getLibraryPath()
이라는 정적 함수를 사용하여 라이브러리에 대한 내 파일 시스템의 경로를 참조하는 QString
을 반환하는 것입니다.외부 라이브러리에서 파일 경로 가져 오기
QDir::currentPath()
및 QApplication::applicationFilePath()
및 경로를 반환하는 다른 유사한 함수를 사용해 보았지만 경로를 가져 오는 함수가 라이브러리 내에있는 경우에도 라이브러리의 경로가 아니라 내 GUI의 경로를 참조하는 경로를 모두 반환합니다. 내 GUI 내에서
나는 수행하여 셰이더를 참조하려고 : Shader->addShaderFromSourceFile(QGLShader::Vertex, MyExternalLib::getLibraryPath() + "/shaders/MyVertexShader.vs");