update model to set LOADED

This commit is contained in:
ayachi3 2022-12-13 09:43:43 +08:00
parent 7f7d99caa8
commit 0cc3672c33
4 changed files with 19 additions and 4 deletions

View File

@ -13,7 +13,7 @@
<PropertyGroup Label="Globals"> <PropertyGroup Label="Globals">
<ProjectGuid>{BB1EFCBB-6CD7-4283-8C3F-69AE88470EED}</ProjectGuid> <ProjectGuid>{BB1EFCBB-6CD7-4283-8C3F-69AE88470EED}</ProjectGuid>
<Keyword>QtVS_v304</Keyword> <Keyword>QtVS_v304</Keyword>
<WindowsTargetPlatformVersion Condition="'$(Configuration)|$(Platform)' == 'Debug|x64'">10.0.22621.0</WindowsTargetPlatformVersion> <WindowsTargetPlatformVersion Condition="'$(Configuration)|$(Platform)' == 'Debug|x64'">10.0</WindowsTargetPlatformVersion>
<WindowsTargetPlatformVersion Condition="'$(Configuration)|$(Platform)' == 'Release|x64'">10.0.22621.0</WindowsTargetPlatformVersion> <WindowsTargetPlatformVersion Condition="'$(Configuration)|$(Platform)' == 'Release|x64'">10.0.22621.0</WindowsTargetPlatformVersion>
<QtMsBuild Condition="'$(QtMsBuild)'=='' OR !Exists('$(QtMsBuild)\qt.targets')">$(MSBuildProjectDirectory)\QtMsBuild</QtMsBuild> <QtMsBuild Condition="'$(QtMsBuild)'=='' OR !Exists('$(QtMsBuild)\qt.targets')">$(MSBuildProjectDirectory)\QtMsBuild</QtMsBuild>
</PropertyGroup> </PropertyGroup>

View File

@ -13,6 +13,7 @@ Model::~Model() {
// TODO: Maybe delete all meshes? // TODO: Maybe delete all meshes?
} }
// file path is ...\\...\\.obj, and processnode & processmesh have been called here
void Model::loadModel(std::string path) { void Model::loadModel(std::string path) {
Assimp::Importer importer; Assimp::Importer importer;
const aiScene* scene = importer.ReadFile( const aiScene* scene = importer.ReadFile(
@ -26,6 +27,7 @@ void Model::loadModel(std::string path) {
_directory = path.substr(0, path.find_last_of('/')); _directory = path.substr(0, path.find_last_of('/'));
processNode(scene->mRootNode, scene); processNode(scene->mRootNode, scene);
_status = LOADED;
} }
void Model::processNode(aiNode* node, const aiScene* scene) { void Model::processNode(aiNode* node, const aiScene* scene) {

View File

@ -7,6 +7,7 @@
#include "vao.h" #include "vao.h"
#include "shader.h" #include "shader.h"
#include "logger.h" #include "logger.h"
#include "model.h"
using std::vector; using std::vector;
@ -39,6 +40,7 @@ void SceneViewer::resizeGL(int w, int h) {
void SceneViewer::paintGL() { void SceneViewer::paintGL() {
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
/*
vector<Vertex> vertices = { vector<Vertex> vertices = {
{ { -0.5f, -0.5f, 0.0f } }, { { -0.5f, -0.5f, 0.0f } },
{ { 0.5f, -0.5f, 0.0f } }, { { 0.5f, -0.5f, 0.0f } },
@ -47,11 +49,19 @@ void SceneViewer::paintGL() {
VertexBufferObject vbo(vertices); VertexBufferObject vbo(vertices);
VertexArrayObject vao(vbo); VertexArrayObject vao(vbo);
vao.setVertexAttributePointer(0, 3, GL_FLOAT, GL_FALSE, sizeof(Vertex), 0); vao.setVertexAttributePointer(0, 3, GL_FLOAT, GL_FALSE, sizeof(Vertex), 0);
vao.enableVertexAttribute(0); vao.enableVertexAttribute(0);
VertexShader vertexShader("E:\\Repositories\\CollegeProjects\\CGAssignments\\FinalProject\\FinalProject\\vertexshader.vs"); */
FragmentShader fragmentShader("E:\\Repositories\\CollegeProjects\\CGAssignments\\FinalProject\\FinalProject\\fragmentshader.fs");
VertexShader vertexShader("D:\\code\\ComputerGraphic\\SceneEditor\\FinalProject\\vertexshader.vs");
FragmentShader fragmentShader("D:\\code\\ComputerGraphic\\SceneEditor\\FinalProject\\fragmentshader.fs");
ShaderProgram shaderProgram(vertexShader, fragmentShader); ShaderProgram shaderProgram(vertexShader, fragmentShader);
shaderProgram.setActive(); shaderProgram.setActive();
vao.bind();
Model test_model("D:\\code\\ComputerGraphic\\SceneEditor\\obj\\nanosuit/nanosuit.obj");
test_model.render(shaderProgram);
//vao.bind();
glDrawArrays(GL_TRIANGLES, 0, 3); glDrawArrays(GL_TRIANGLES, 0, 3);
} }

3
git命令.txt Normal file
View File

@ -0,0 +1,3 @@
D: & cd D:\code\ComputerGraphic\SceneEditor & git clone https://github.com/Linloir/SceneEditor.git
D: & cd D:\code\ComputerGraphic\SceneEditor & git clone https://github.com/Linloir/SceneEditor.git