This commit is contained in:
Альберт Гадиев 2025-03-01 11:44:31 +06:00
parent 0fd42529c7
commit 8d8843cb11
8 changed files with 67 additions and 30 deletions

4
.gitignore vendored
View File

@ -385,4 +385,8 @@ FodyWeavers.xsd
# JetBrains Rider # JetBrains Rider
.idea/ .idea/
sdl_app
*.sln.iml *.sln.iml

View File

@ -1,7 +1,5 @@
// OBJ_Loader.h - A Single Header OBJ Model Loader // OBJ_Loader.h - A Single Header OBJ Model Loader
#pragma once
#include "ObjLoader.h" #include "ObjLoader.h"
// Iostream - STD I/O Library // Iostream - STD I/O Library

View File

@ -1,5 +1,5 @@
#include "ShaderManager.h" #include "ShaderManager.h"
#include <iostream>
namespace ZL { namespace ZL {
@ -127,6 +127,7 @@ namespace ZL {
std::string fragmentShader = readTextFile(fragmentShaderFileName); std::string fragmentShader = readTextFile(fragmentShaderFileName);
///std::cout << "Shader: "<< vertexShader << std::endl;
shaderResourceMap[shaderName] = std::make_shared<ShaderResource>(vertexShader, fragmentShader); shaderResourceMap[shaderName] = std::make_shared<ShaderResource>(vertexShader, fragmentShader);
} }

19
aaaa Normal file
View File

@ -0,0 +1,19 @@
//----------- Vertex shader
attribute vec3 vPosition;
attribute vec2 vTexCoord;
varying vec2 texCoord;
uniform mat4 ProjectionModelViewMatrix;
void main()
{
gl_Position = ProjectionModelViewMatrix * vec4(vPosition.xyz, 1.0);
texCoord = vTexCoord;
}
//------------- Fragment shader
In windows it is ok. In linux, error: Failed to compile fragment shader code!

View File

@ -1,4 +1,4 @@
precision mediump float; //precision mediump float;
uniform sampler2D Texture; uniform sampler2D Texture;
varying vec2 texCoord; varying vec2 texCoord;

View File

@ -1,4 +1,4 @@
precision mediump float; //precision mediump float;
varying vec3 color; varying vec3 color;
void main() void main()

View File

@ -186,6 +186,8 @@ namespace ZL
renderer.DrawVertexRenderStruct(GameObjects::testmd3mutable[1]); renderer.DrawVertexRenderStruct(GameObjects::testmd3mutable[1]);
*/ */
GameObjects::bxMutable.AssignFrom(GameObjects::bx.mesh); GameObjects::bxMutable.AssignFrom(GameObjects::bx.mesh);
GameObjects::bxMutable.RefreshVBO(); GameObjects::bxMutable.RefreshVBO();
renderer.DrawVertexRenderStruct(GameObjects::bxMutable); renderer.DrawVertexRenderStruct(GameObjects::bxMutable);
@ -282,7 +284,7 @@ namespace ZL
CheckGlError(); CheckGlError();
///GameObjects::testmd3 = testLoadModel(); //GameObjects::testmd3 = testLoadModel();
/* /*
GameObjects::testmd3mutable.resize(GameObjects::testmd3.size()); GameObjects::testmd3mutable.resize(GameObjects::testmd3.size());
@ -296,16 +298,22 @@ namespace ZL
}*/ }*/
//Load shaders: //Load shaders:
std::cout << "Hello test 1" << std::endl;
renderer.shaderManager.AddShaderFromFiles("default", "./default.vertex", "./default.fragment"); renderer.shaderManager.AddShaderFromFiles("default", "./default.vertex", "./default.fragment");
std::cout << "Hello test 2" << std::endl;
renderer.shaderManager.AddShaderFromFiles("defaultColor", "./defaultColor.vertex", "./defaultColor.fragment"); renderer.shaderManager.AddShaderFromFiles("defaultColor", "./defaultColor.vertex", "./defaultColor.fragment");
std::cout << "Hello test 2x" << std::endl;
//Load textures //Load textures
GameObjects::birdTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp32("./bird.bmp32")); GameObjects::birdTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp32("./bird.bmp32"));
std::cout << "Hello test 3x" << std::endl;
GameObjects::backgroundTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp24("./background.bmp")); GameObjects::backgroundTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp24("./background.bmp"));
GameObjects::pipeTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp32("./pipe.bmp32")); GameObjects::pipeTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp32("./pipe.bmp32"));
GameObjects::gameOverTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp32("./game_over.bmp32")); GameObjects::gameOverTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp32("./game_over.bmp32"));
//GameObjects::testObjTexturePtr = std::make_shared<Texture>(CreateTextureDataFromPng("./chair_01_Base_Color.png")); //GameObjects::testObjTexturePtr = std::make_shared<Texture>(CreateTextureDataFromPng("./chair_01_Base_Color.png"));
GameObjects::testObjTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp24("./chair_01_Base_Color.bmp")); //GameObjects::testObjTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp24("./chair_01_Base_Color.bmp"));
//GameObjects::md3TexturePtr = std::make_shared<Texture>(CreateTextureDataFromPng("./model/sarge/band.png")); //GameObjects::md3TexturePtr = std::make_shared<Texture>(CreateTextureDataFromPng("./model/sarge/band.png"));
@ -313,6 +321,8 @@ namespace ZL
//GameObjects::bx.LoadFromFile("C:\\Work\\GameJam2025-02\\mesh_armature_and_animation_data02.txt"); //GameObjects::bx.LoadFromFile("C:\\Work\\GameJam2025-02\\mesh_armature_and_animation_data02.txt");
std::cout << "Hello test 3" << std::endl;
CheckGlError(); CheckGlError();
//Create bird mesh //Create bird mesh
GameObjects::birdMesh.data = CreateRect2D({ 0.f, 0.f }, { GameConsts::birdScale * BIRD_WIDTH, GameConsts::birdScale * BIRD_HEIGHT }, 0); GameObjects::birdMesh.data = CreateRect2D({ 0.f, 0.f }, { GameConsts::birdScale * BIRD_WIDTH, GameConsts::birdScale * BIRD_HEIGHT }, 0);
@ -350,6 +360,8 @@ namespace ZL
GameObjects::testObjMeshMutable.data = GameObjects::testObjMesh; GameObjects::testObjMeshMutable.data = GameObjects::testObjMesh;
GameObjects::testObjMeshMutable.RefreshVBO(); GameObjects::testObjMeshMutable.RefreshVBO();
std::cout << "Hello test 4x" << std::endl;
//Set some game values //Set some game values
Env::birdStartPos = { Env::width * 0.2f, Env::getActualClientHeight() * 0.5f }; Env::birdStartPos = { Env::width * 0.2f, Env::getActualClientHeight() * 0.5f };
@ -362,6 +374,9 @@ namespace ZL
renderer.InitOpenGL(); renderer.InitOpenGL();
CheckGlError(); CheckGlError();
std::cout << "Hello test 5x" << std::endl;
} }
void render() { void render() {