remove deadcode
This commit is contained in:
parent
f3a3466597
commit
87f8c49cff
30
mdl/cube.obj
30
mdl/cube.obj
@ -1,30 +0,0 @@
|
|||||||
# Blender v2.90.1 OBJ File: ''
|
|
||||||
# www.blender.org
|
|
||||||
o Cube
|
|
||||||
v -1.000000 -1.000000 1.000000
|
|
||||||
v -1.000000 1.000000 1.000000
|
|
||||||
v -1.000000 -1.000000 -1.000000
|
|
||||||
v -1.000000 1.000000 -1.000000
|
|
||||||
v 1.000000 -1.000000 1.000000
|
|
||||||
v 1.000000 1.000000 1.000000
|
|
||||||
v 1.000000 -1.000000 -1.000000
|
|
||||||
v 1.000000 1.000000 -1.000000
|
|
||||||
vn -1.0000 0.0000 0.0000
|
|
||||||
vn 0.0000 0.0000 -1.0000
|
|
||||||
vn 1.0000 0.0000 0.0000
|
|
||||||
vn 0.0000 0.0000 1.0000
|
|
||||||
vn 0.0000 -1.0000 0.0000
|
|
||||||
vn 0.0000 1.0000 0.0000
|
|
||||||
s off
|
|
||||||
f 2//1 3//1 1//1
|
|
||||||
f 4//2 7//2 3//2
|
|
||||||
f 8//3 5//3 7//3
|
|
||||||
f 6//4 1//4 5//4
|
|
||||||
f 7//5 1//5 3//5
|
|
||||||
f 4//6 6//6 8//6
|
|
||||||
f 2//1 4//1 3//1
|
|
||||||
f 4//2 8//2 7//2
|
|
||||||
f 8//3 6//3 5//3
|
|
||||||
f 6//4 2//4 1//4
|
|
||||||
f 7//5 5//5 1//5
|
|
||||||
f 4//6 2//6 6//6
|
|
@ -3,7 +3,6 @@
|
|||||||
<qresource>
|
<qresource>
|
||||||
<file>mdl/dji600.obj</file>
|
<file>mdl/dji600.obj</file>
|
||||||
<file>mdl/dji600.mtl</file>
|
<file>mdl/dji600.mtl</file>
|
||||||
<file>mdl/cube.obj</file>
|
|
||||||
|
|
||||||
<file>img/dji600.jpg</file>
|
<file>img/dji600.jpg</file>
|
||||||
<file>img/ground.jpg</file>
|
<file>img/ground.jpg</file>
|
||||||
|
@ -26,8 +26,6 @@ Drone::Drone() {
|
|||||||
if (!mesh_initialized) {
|
if (!mesh_initialized) {
|
||||||
QVector<GLfloat> verts = load_obj(":/mdl/dji600.obj", LOAD_OBJ_NORMALS | LOAD_OBJ_UVS);
|
QVector<GLfloat> verts = load_obj(":/mdl/dji600.obj", LOAD_OBJ_NORMALS | LOAD_OBJ_UVS);
|
||||||
QOpenGLTexture *texture = new QOpenGLTexture(QImage(":/img/dji600.jpg").mirrored());
|
QOpenGLTexture *texture = new QOpenGLTexture(QImage(":/img/dji600.jpg").mirrored());
|
||||||
// texture->setMinificationFilter(QOpenGLTexture::LinearMipMapLinear);
|
|
||||||
// texture->setMagnificationFilter(QOpenGLTexture::Linear);
|
|
||||||
mesh = new OpenGLMesh(verts, texture);
|
mesh = new OpenGLMesh(verts, texture);
|
||||||
mesh_initialized = true;
|
mesh_initialized = true;
|
||||||
}
|
}
|
||||||
@ -92,13 +90,16 @@ DroneController::DroneController(const QJsonObject &json)
|
|||||||
|
|
||||||
OpenGLWidget::instance->makeCurrent();
|
OpenGLWidget::instance->makeCurrent();
|
||||||
QOpenGLTexture *ground_tex = new QOpenGLTexture(QImage(":/img/ground.jpg").mirrored());
|
QOpenGLTexture *ground_tex = new QOpenGLTexture(QImage(":/img/ground.jpg").mirrored());
|
||||||
|
ground_tex->setMagnificationFilter(QOpenGLTexture::LinearMipMapLinear);
|
||||||
|
ground_tex->setMinificationFilter(QOpenGLTexture::LinearMipMapLinear);
|
||||||
|
ground_tex->setWrapMode(QOpenGLTexture::MirroredRepeat);
|
||||||
OpenGLMesh *ground = new OpenGLMesh({
|
OpenGLMesh *ground = new OpenGLMesh({
|
||||||
-100, 0, -100, 0, 1, 0, 0, 0,
|
-1000, 0, -1000, 0, 1000, 0, 0, 0,
|
||||||
100, 0, -100, 0, 1, 0, 1, 0,
|
1000, 0, -1000, 0, 1000, 0, 1000, 0,
|
||||||
-100, 0, 100, 0, 1, 0, 0, 1,
|
-1000, 0, 1000, 0, 1000, 0, 0, 1000,
|
||||||
100, 0, -100, 0, 1, 0, 1, 0,
|
1000, 0, -1000, 0, 1000, 0, 1000, 0,
|
||||||
-100, 0, 100, 0, 1, 0, 0, 1,
|
-1000, 0, 1000, 0, 1000, 0, 0, 1000,
|
||||||
100, 0, 100, 0, 1, 0, 1, 1,
|
1000, 0, 1000, 0, 1000, 0, 1000, 1000,
|
||||||
}, ground_tex);
|
}, ground_tex);
|
||||||
OpenGLWidget::instance->meshes.append(*ground);
|
OpenGLWidget::instance->meshes.append(*ground);
|
||||||
OpenGLWidget::instance->doneCurrent();
|
OpenGLWidget::instance->doneCurrent();
|
||||||
|
@ -34,6 +34,7 @@ OpenGLWidget::~OpenGLWidget() {
|
|||||||
|
|
||||||
|
|
||||||
void OpenGLWidget::loadSkybox() {
|
void OpenGLWidget::loadSkybox() {
|
||||||
|
// Shader program
|
||||||
if (!skybox_program.addShaderFromSourceFile(QOpenGLShader::Vertex, ":/shaders/skybox.vert")) {
|
if (!skybox_program.addShaderFromSourceFile(QOpenGLShader::Vertex, ":/shaders/skybox.vert")) {
|
||||||
qFatal("Error compiling skybox.vert: %s", skybox_program.log().toLocal8Bit().constData());
|
qFatal("Error compiling skybox.vert: %s", skybox_program.log().toLocal8Bit().constData());
|
||||||
}
|
}
|
||||||
@ -46,17 +47,17 @@ void OpenGLWidget::loadSkybox() {
|
|||||||
skybox_program.bind();
|
skybox_program.bind();
|
||||||
skybox_program.setUniformValue("skybox", 0);
|
skybox_program.setUniformValue("skybox", 0);
|
||||||
|
|
||||||
// GLfloat skybox_verts[] = {
|
QVector<GLfloat> skybox_verts {
|
||||||
// -1.0, 1.0, -1.0, -1.0, -1.0, -1.0, 1.0, -1.0, -1.0, 1.0, -1.0, -1.0, 1.0, 1.0, -1.0, -1.0, 1.0, -1.0,
|
-1.0, 1.0, -1.0, -1.0, -1.0, -1.0, 1.0, -1.0, -1.0, 1.0, -1.0, -1.0, 1.0, 1.0, -1.0, -1.0, 1.0, -1.0,
|
||||||
// -1.0, -1.0, 1.0, -1.0, -1.0, -1.0, -1.0, 1.0, -1.0, -1.0, 1.0, -1.0, -1.0, 1.0, 1.0, -1.0, -1.0, 1.0,
|
-1.0, -1.0, 1.0, -1.0, -1.0, -1.0, -1.0, 1.0, -1.0, -1.0, 1.0, -1.0, -1.0, 1.0, 1.0, -1.0, -1.0, 1.0,
|
||||||
// 1.0, -1.0, -1.0, 1.0, -1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, -1.0, 1.0, -1.0, -1.0,
|
1.0, -1.0, -1.0, 1.0, -1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, -1.0, 1.0, -1.0, -1.0,
|
||||||
// -1.0, -1.0, 1.0, -1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, -1.0, 1.0, -1.0, -1.0, 1.0,
|
-1.0, -1.0, 1.0, -1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, -1.0, 1.0, -1.0, -1.0, 1.0,
|
||||||
// -1.0, 1.0, -1.0, 1.0, 1.0, -1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, -1.0, 1.0, 1.0, -1.0, 1.0, -1.0,
|
-1.0, 1.0, -1.0, 1.0, 1.0, -1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, -1.0, 1.0, 1.0, -1.0, 1.0, -1.0,
|
||||||
// -1.0, -1.0, -1.0, -1.0, -1.0, 1.0, 1.0, -1.0, -1.0, 1.0, -1.0, -1.0, -1.0, -1.0, 1.0, 1.0, -1.0, 1.0
|
-1.0, -1.0, -1.0, -1.0, -1.0, 1.0, 1.0, -1.0, -1.0, 1.0, -1.0, -1.0, -1.0, -1.0, 1.0, 1.0, -1.0, 1.0
|
||||||
// };
|
};
|
||||||
QVector<GLfloat> skybox_verts = load_obj(":/mdl/cube.obj", 0);
|
// QVector<GLfloat> skybox_verts = load_obj(":/mdl/cube.obj", 0);
|
||||||
|
|
||||||
// OpenGL native VAO version
|
// VAO
|
||||||
glGenVertexArrays(1, &skybox_vao);
|
glGenVertexArrays(1, &skybox_vao);
|
||||||
glBindVertexArray(skybox_vao);
|
glBindVertexArray(skybox_vao);
|
||||||
glGenBuffers(1, &skybox_vbo);
|
glGenBuffers(1, &skybox_vbo);
|
||||||
@ -66,15 +67,6 @@ void OpenGLWidget::loadSkybox() {
|
|||||||
glEnableVertexAttribArray(0);
|
glEnableVertexAttribArray(0);
|
||||||
glBindVertexArray(0);
|
glBindVertexArray(0);
|
||||||
|
|
||||||
// // QOpenGLVertexArrayObject version
|
|
||||||
// skybox_vao.create();
|
|
||||||
// skybox_vao.bind();
|
|
||||||
// QOpenGLBuffer skybox_vbo(QOpenGLBuffer::VertexBuffer);
|
|
||||||
// skybox_vbo.setUsagePattern(QOpenGLBuffer::StaticDraw);
|
|
||||||
// skybox_vbo.allocate((void *) skybox_verts.data(), skybox_verts.size() * sizeof (GLfloat));
|
|
||||||
// skybox_program.setAttributeBuffer(0, GL_FLOAT, 0, 3, 0);
|
|
||||||
// skybox_program.enableAttributeArray(0);
|
|
||||||
|
|
||||||
// Skybox texture images
|
// Skybox texture images
|
||||||
QVector<QImage> skybox_img {
|
QVector<QImage> skybox_img {
|
||||||
QImage(":/img/clouds1_west.jpg").convertToFormat(QImage::Format_RGB888),
|
QImage(":/img/clouds1_west.jpg").convertToFormat(QImage::Format_RGB888),
|
||||||
@ -86,8 +78,6 @@ void OpenGLWidget::loadSkybox() {
|
|||||||
};
|
};
|
||||||
size_t width = skybox_img[0].width();
|
size_t width = skybox_img[0].width();
|
||||||
size_t height = skybox_img[0].height();
|
size_t height = skybox_img[0].height();
|
||||||
|
|
||||||
// OpenGL native texture version
|
|
||||||
glGenTextures(1, &skybox_tex);
|
glGenTextures(1, &skybox_tex);
|
||||||
glBindTexture(GL_TEXTURE_CUBE_MAP, skybox_tex);
|
glBindTexture(GL_TEXTURE_CUBE_MAP, skybox_tex);
|
||||||
for (int i = 0; i < 6; i++) {
|
for (int i = 0; i < 6; i++) {
|
||||||
@ -101,21 +91,6 @@ void OpenGLWidget::loadSkybox() {
|
|||||||
glTexParameteri(GL_TEXTURE_CUBE_MAP, GL_TEXTURE_WRAP_R, GL_CLAMP_TO_EDGE);
|
glTexParameteri(GL_TEXTURE_CUBE_MAP, GL_TEXTURE_WRAP_R, GL_CLAMP_TO_EDGE);
|
||||||
glBindTexture(GL_TEXTURE_CUBE_MAP, 0);
|
glBindTexture(GL_TEXTURE_CUBE_MAP, 0);
|
||||||
|
|
||||||
// // QOpenGLTexture skybox texture version
|
|
||||||
// skybox_tex = new QOpenGLTexture(QOpenGLTexture::TargetCubeMap);
|
|
||||||
// skybox_tex->create();
|
|
||||||
// skybox_tex->setSize(width, skybox_img[0].height(), height);
|
|
||||||
// skybox_tex->setFormat(QOpenGLTexture::RGBA8_UNorm);
|
|
||||||
// skybox_tex->allocateStorage();
|
|
||||||
// for (int i = 0; i < 6; i++) {
|
|
||||||
// skybox_tex->setData(0, 0, (QOpenGLTexture::CubeMapFace) (QOpenGLTexture::CubeMapPositiveX + i),
|
|
||||||
// QOpenGLTexture::RGBA, QOpenGLTexture::UInt8,
|
|
||||||
// (const void*) skybox_img[i].constBits(), 0);
|
|
||||||
// }
|
|
||||||
// skybox_tex->setWrapMode(QOpenGLTexture::ClampToEdge);
|
|
||||||
// skybox_tex->setMinificationFilter(QOpenGLTexture::LinearMipMapLinear);
|
|
||||||
// skybox_tex->setMagnificationFilter(QOpenGLTexture::LinearMipMapLinear);
|
|
||||||
|
|
||||||
skybox_program.release();
|
skybox_program.release();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -165,28 +140,16 @@ void OpenGLWidget::paintGL() {
|
|||||||
trans.translate(0, 0, -cam_dist);
|
trans.translate(0, 0, -cam_dist);
|
||||||
QMatrix4x4 view = trans * rot;
|
QMatrix4x4 view = trans * rot;
|
||||||
|
|
||||||
// skybox_vao.bind();
|
|
||||||
// glActiveTexture(GL_TEXTURE0);
|
|
||||||
// glBindTexture(GL_TEXTURE_CUBE_MAP, skybox_tex);
|
|
||||||
// // skybox_tex->bind();
|
|
||||||
// glDrawArrays(GL_TRIANGLES, 0, 36);
|
|
||||||
// // skybox_tex->release();
|
|
||||||
// skybox_vao.release();
|
|
||||||
|
|
||||||
glDepthMask(GL_FALSE);
|
glDepthMask(GL_FALSE);
|
||||||
glDepthFunc(GL_LEQUAL);
|
glDepthFunc(GL_LEQUAL);
|
||||||
skybox_program.bind();
|
skybox_program.bind();
|
||||||
skybox_program.setUniformValue("proj", proj);
|
skybox_program.setUniformValue("proj", proj);
|
||||||
skybox_program.setUniformValue("view", view);
|
skybox_program.setUniformValue("view", view);
|
||||||
// skybox_program.setUniformValue("model", QMatrix4x4());
|
|
||||||
glBindVertexArray(skybox_vao);
|
glBindVertexArray(skybox_vao);
|
||||||
glActiveTexture(GL_TEXTURE0);
|
glActiveTexture(GL_TEXTURE0);
|
||||||
glBindTexture(GL_TEXTURE_CUBE_MAP, skybox_tex);
|
glBindTexture(GL_TEXTURE_CUBE_MAP, skybox_tex);
|
||||||
// skybox_tex->bind();
|
|
||||||
// skybox_vao.bind();
|
|
||||||
glDrawArrays(GL_TRIANGLES, 0, 36);
|
glDrawArrays(GL_TRIANGLES, 0, 36);
|
||||||
glBindTexture(GL_TEXTURE_CUBE_MAP, 0);
|
glBindTexture(GL_TEXTURE_CUBE_MAP, 0);
|
||||||
// skybox_tex->release();
|
|
||||||
skybox_program.release();
|
skybox_program.release();
|
||||||
glDepthMask(GL_TRUE);
|
glDepthMask(GL_TRUE);
|
||||||
glDepthFunc(GL_LESS);
|
glDepthFunc(GL_LESS);
|
||||||
@ -196,14 +159,6 @@ void OpenGLWidget::paintGL() {
|
|||||||
main_program.setUniformValue("view", view);
|
main_program.setUniformValue("view", view);
|
||||||
glActiveTexture(GL_TEXTURE0);
|
glActiveTexture(GL_TEXTURE0);
|
||||||
|
|
||||||
// main_program.setUniformValue("model", QMatrix4x4());
|
|
||||||
// skybox_vao.bind();
|
|
||||||
// glDrawArrays(GL_TRIANGLES, 0, 36);
|
|
||||||
|
|
||||||
// skybox_program.bind();
|
|
||||||
// skybox_program.setUniformValue("proj", proj);
|
|
||||||
// skybox_program.setUniformValue("view", view);
|
|
||||||
|
|
||||||
for (const OpenGLMesh &mesh : meshes) {
|
for (const OpenGLMesh &mesh : meshes) {
|
||||||
main_program.setUniformValue("model", mesh.mat);
|
main_program.setUniformValue("model", mesh.mat);
|
||||||
glBindVertexArray(mesh.vao);
|
glBindVertexArray(mesh.vao);
|
||||||
|
@ -22,10 +22,7 @@ class OpenGLWidget : public QOpenGLWidget, public QOpenGLFunctions_4_4_Core {
|
|||||||
|
|
||||||
QOpenGLShaderProgram main_program;
|
QOpenGLShaderProgram main_program;
|
||||||
QOpenGLShaderProgram skybox_program;
|
QOpenGLShaderProgram skybox_program;
|
||||||
// QOpenGLTexture *skybox_tex;
|
|
||||||
GLuint skybox_tex;
|
GLuint skybox_tex;
|
||||||
// QOpenGLVertexArrayObject skybox_vao;
|
|
||||||
// QOpenGLBuffer skybox_vbo;
|
|
||||||
GLuint skybox_vao;
|
GLuint skybox_vao;
|
||||||
GLuint skybox_vbo;
|
GLuint skybox_vbo;
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user