Working on script to reduce bones

This commit is contained in:
Vladislav Khorev 2026-06-14 14:11:44 +03:00
parent db456bde09
commit 5d427af9f7
71 changed files with 3937607 additions and 60 deletions

View File

@ -3,8 +3,8 @@
{
"id": "npc_01_woman",
"name": "Бермет",
"animationIdlePath": "resources/w/girlfriend/girlfriend_idle003.anim",
"animationWalkPath": "resources/w/girlfriend/girlfriend_walk003.anim",
"animationIdlePath": "resources/w/girlfriend/girlfriend_idle003_small.anim",
"animationWalkPath": "resources/w/girlfriend/girlfriend_walk003_small.anim",
"meshTextures": {
"Girl_Low": "resources/w/girlfriend/Girl_Base_color.png"
},
@ -23,8 +23,8 @@
{
"id": "npc_02_woman",
"name": "Алтынай",
"animationIdlePath": "resources/w/girl/girl_idle001.anim",
"animationWalkPath": "resources/w/girl/girl_walk010.anim",
"animationIdlePath": "resources/w/girl/girl_idle001_small.anim",
"animationWalkPath": "resources/w/girl/girl_walk010_small.anim",
"meshTextures": {
"polySurface1": "resources/w/girl/Chat_02_diff_1r006.png"
},
@ -43,8 +43,8 @@
{
"id": "npc_alik",
"name": "Алик",
"animationIdlePath": "resources/w/boy/boy_stand001.anim",
"animationWalkPath": "resources/w/boy/boy_walk001.anim",
"animationIdlePath": "resources/w/boy/boy_stand001_small.anim",
"animationWalkPath": "resources/w/boy/boy_walk001_small.anim",
"meshTextures": {
"Char01": "resources/w/boy/texture_pbr_20250901_1.png"
},

View File

@ -3,8 +3,8 @@
{
"id": "npc_teacher01",
"name": "Аида Дженибекова",
"animationIdlePath": "resources/w/new_anims/teacher_stand_idle001.anim",
"animationWalkPath": "resources/w/new_anims/woman_walk4_001.anim",
"animationIdlePath": "resources/w/new_anims/teacher_stand_idle001_small.anim",
"animationWalkPath": "resources/w/new_anims/teacher_walk001_small.anim",
"meshTextures": {
"Teacher_lowpoly": "resources/w/new_anims/UniV_Grid_2K.001_Base_color.png"
},
@ -23,8 +23,8 @@
{
"id": "npc_02_woman",
"name": "Айпери",
"animationIdlePath": "resources/w/girlfriend/girlfriend_idle003.anim",
"animationWalkPath": "resources/w/girlfriend/girlfriend_walk003.anim",
"animationIdlePath": "resources/w/girlfriend/girlfriend_idle003_small.anim",
"animationWalkPath": "resources/w/girlfriend/girlfriend_walk003_small.anim",
"meshTextures": {
"Girl_Low": "resources/w/girlfriend/Girl_Base_color.png"
},
@ -44,14 +44,8 @@
{
"id": "npc_04_ghost",
"name": "Призрак",
"animationIdlePath": "resources/w/ghost/ghost_idle001.anim",
"animationWalkPath": "resources/w/ghost/ghost_idle001.anim",
"animationActionIdlePath": "resources/w/ghost/ghost_idle001.anim",
"animationActionAttackPath": "resources/w/ghost/ghost_attack001.anim",
"animationStandToActionPath": "resources/w/ghost/ghost_idle001.anim",
"animationActionToStandPath": "resources/w/ghost/ghost_idle001.anim",
"animationActionToDeathPath": "resources/w/ghost/ghost_die001.anim",
"animationDeathIdlePath": "resources/w/ghost/ghost_dead001.anim",
"animationIdlePath": "resources/w/ghost/ghost_idle004_small.anim",
"animationWalkPath": "resources/w/ghost/ghost_idle004_small.anim",
"meshTextures": {
"Ghost": "resources/w/ghost/Ghost_BaseColor.png"
},

View File

@ -10,7 +10,7 @@ varying float fogDistance;
uniform mat4 ProjectionModelViewMatrix;
uniform mat4 ModelViewMatrix;
uniform mat4 uBoneMatrices[64];
uniform mat4 uBoneMatrices[58];
uniform vec3 uPlayerEyePos;
void main()

View File

@ -6,8 +6,6 @@ varying vec2 texCoord;
void main()
{
vec4 color = texture2D(Texture,texCoord).rgba;
//gl_FragColor = vec4(color.rgb*0.1 + vec3(0.9, 0.9, 0.9), 1.0);
gl_FragColor = vec4(color.rgb, color.a * uAlpha);
}

View File

@ -10,7 +10,7 @@ varying float fogDistance;
uniform mat4 ProjectionModelViewMatrix;
uniform mat4 ModelViewMatrix;
uniform mat4 uBoneMatrices[64];
uniform mat4 uBoneMatrices[58];
uniform vec3 uPlayerEyePos;
void main()

View File

@ -14,7 +14,7 @@ varying float fogDistance;
uniform mat4 ProjectionModelViewMatrix;
uniform mat4 ModelViewMatrix;
uniform mat4 uLightFromCamera;
uniform mat4 uBoneMatrices[64];
uniform mat4 uBoneMatrices[58];
uniform vec3 uPlayerEyePos;
void main()

View File

@ -13,7 +13,7 @@ varying vec3 fragNormal;
uniform mat4 ProjectionModelViewMatrix;
uniform mat4 ModelViewMatrix;
uniform mat4 uBoneMatrices[64];
uniform mat4 uBoneMatrices[58];
uniform vec3 uPlayerEyePos;
void main()

View File

@ -15,7 +15,7 @@ varying vec3 fragViewPos;
uniform mat4 ProjectionModelViewMatrix;
uniform mat4 ModelViewMatrix;
uniform mat4 uLightFromCamera;
uniform mat4 uBoneMatrices[64];
uniform mat4 uBoneMatrices[58];
uniform vec3 uPlayerEyePos;
void main()

View File

@ -6,7 +6,7 @@ attribute vec4 aBoneWeights0;
attribute vec2 aBoneWeights1;
uniform mat4 ProjectionModelViewMatrix;
uniform mat4 uBoneMatrices[64];
uniform mat4 uBoneMatrices[58];
void main()
{

View File

@ -8,7 +8,7 @@ attribute vec2 aBoneWeights1;
varying vec2 texCoord;
uniform mat4 ProjectionModelViewMatrix;
uniform mat4 uBoneMatrices[64];
uniform mat4 uBoneMatrices[58];
void main()
{

View File

@ -13,7 +13,7 @@ varying vec3 fragNormal;
uniform mat4 ProjectionModelViewMatrix;
uniform mat4 ModelViewMatrix;
uniform mat4 uLightFromCamera;
uniform mat4 uBoneMatrices[64];
uniform mat4 uBoneMatrices[58];
void main()
{

File diff suppressed because it is too large Load Diff

BIN
resources/w/boy/boy_stand001_small.anim (Stored with Git LFS) Normal file

Binary file not shown.

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

BIN
resources/w/boy/boy_walk001_small.anim (Stored with Git LFS) Normal file

Binary file not shown.

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

BIN
resources/w/gg/new2/gg_action_chop001_small.anim (Stored with Git LFS) Normal file

Binary file not shown.

File diff suppressed because it is too large Load Diff

BIN
resources/w/gg/new2/gg_action_idle002_small.anim (Stored with Git LFS) Normal file

Binary file not shown.

File diff suppressed because it is too large Load Diff

BIN
resources/w/gg/new2/gg_action_stab001_small.anim (Stored with Git LFS) Normal file

Binary file not shown.

File diff suppressed because it is too large Load Diff

BIN
resources/w/gg/new2/gg_action_to_stand001_small.anim (Stored with Git LFS) Normal file

Binary file not shown.

File diff suppressed because it is too large Load Diff

BIN
resources/w/gg/new2/gg_die001_small.anim (Stored with Git LFS) Normal file

Binary file not shown.

File diff suppressed because it is too large Load Diff

BIN
resources/w/gg/new2/gg_die_idle001_small.anim (Stored with Git LFS) Normal file

Binary file not shown.

File diff suppressed because it is too large Load Diff

BIN
resources/w/gg/new2/gg_stand_idle001_small.anim (Stored with Git LFS) Normal file

Binary file not shown.

File diff suppressed because it is too large Load Diff

BIN
resources/w/gg/new2/gg_stand_to_action001_small.anim (Stored with Git LFS) Normal file

Binary file not shown.

File diff suppressed because it is too large Load Diff

BIN
resources/w/gg/new2/gg_walk001_small.anim (Stored with Git LFS) Normal file

Binary file not shown.

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

BIN
resources/w/ghost/ghost_idle004_small.anim (Stored with Git LFS) Normal file

Binary file not shown.

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

BIN
resources/w/girl/girl_idle001_small.anim (Stored with Git LFS) Normal file

Binary file not shown.

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

BIN
resources/w/girl/girl_walk010_small.anim (Stored with Git LFS) Normal file

Binary file not shown.

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

BIN
resources/w/girlfriend/girlfriend_idle003_small.anim (Stored with Git LFS) Normal file

Binary file not shown.

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

BIN
resources/w/girlfriend/girlfriend_walk003_small.anim (Stored with Git LFS) Normal file

Binary file not shown.

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

BIN
resources/w/new_anims/teacher_stand_idle001_small.anim (Stored with Git LFS) Normal file

Binary file not shown.

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

BIN
resources/w/new_anims/teacher_walk001_small.anim (Stored with Git LFS) Normal file

Binary file not shown.

File diff suppressed because it is too large Load Diff

View File

@ -49,13 +49,18 @@ namespace ZL
Game* Game::s_instance = nullptr;
void Game::onResourcesZipLoaded(unsigned /*handle*/, void* /*userData*/, const char* /*filename*/) {
std::cout << "Resources.zip loaded successfully" << std::endl;
std::cout << "Resources.zip loaded successfully--0" << std::endl;
if (s_instance) {
s_instance->resourcesDownloadProgress = 1.0f;
s_instance->mainThreadHandler.EnqueueMainThreadTask([&]() {
/*s_instance->mainThreadHandler.EnqueueMainThreadTask([&]() {
s_instance->setupPart2();
});
});*/
std::cout << "s_instance setup part 2" << std::endl;
s_instance->setupPart2();
}
std::cout << "s_instance end setup" << std::endl;
}
void Game::onResourcesZipError(unsigned /*handle*/, void* /*userData*/, int /*httpStatus*/) {
@ -130,7 +135,7 @@ namespace ZL
// Asynchronously download resources.zip; setupPart2() is called on completion.
// The loading screen stays visible until the download finishes.
s_instance = this;
std::cout << "Load resurces step 1" << std::endl;
std::cout << "Load resurces step 1-" << std::endl;
emscripten_async_wget2("resources.zip", "resources.zip", "GET", nullptr, nullptr,
onResourcesZipLoaded, onResourcesZipError, onResourcesZipProgress);
#else
@ -145,36 +150,59 @@ namespace ZL
void Game::setupPart2()
{
std::cout << "Load resurces step 12x1" << std::endl;
#ifdef EMSCRIPTEN
renderer.shaderManager.AddShaderFromFiles("env_sky", "resources/shaders/env_sky.vertex", "resources/shaders/env_sky_web.fragment", CONST_ZIP_FILE);
std::cout << "Load resurces step 12x2" << std::endl;
renderer.shaderManager.AddShaderFromFiles("defaultAtmosphere", "resources/shaders/defaultAtmosphere.vertex", "resources/shaders/defaultAtmosphere_web.fragment", CONST_ZIP_FILE);
renderer.shaderManager.AddShaderFromFiles("planetBake", "resources/shaders/planet_bake.vertex", "resources/shaders/planet_bake_web.fragment", CONST_ZIP_FILE);
renderer.shaderManager.AddShaderFromFiles("planetStone", "resources/shaders/planet_stone.vertex", "resources/shaders/planet_stone_web.fragment", CONST_ZIP_FILE);
renderer.shaderManager.AddShaderFromFiles("planetLand", "resources/shaders/planet_land.vertex", "resources/shaders/planet_land_web.fragment", CONST_ZIP_FILE);
renderer.shaderManager.AddShaderFromFiles("spark", "resources/shaders/spark.vertex", "resources/shaders/spark_web.fragment", CONST_ZIP_FILE);
renderer.shaderManager.AddShaderFromFiles("skinning", "resources/shaders/skinning.vertex", "resources/shaders/default_web.fragment", CONST_ZIP_FILE);
renderer.shaderManager.AddShaderFromFiles("fog", "resources/shaders/fog.vertex", "resources/shaders/fog_web.fragment", CONST_ZIP_FILE);
renderer.shaderManager.AddShaderFromFiles("fog_skinning", "resources/shaders/fog_skinning.vertex", "resources/shaders/fog_web.fragment", CONST_ZIP_FILE);
renderer.shaderManager.AddShaderFromFiles("darklands_fog", "resources/shaders/darklands_fog.vertex", "resources/shaders/darklands_fog_web.fragment", CONST_ZIP_FILE);
renderer.shaderManager.AddShaderFromFiles("darklands_fog_skinning", "resources/shaders/darklands_fog_skinning.vertex", "resources/shaders/darklands_fog_web.fragment", CONST_ZIP_FILE);
renderer.shaderManager.AddShaderFromFiles("darklands_flash", "resources/shaders/default.vertex", "resources/shaders/darklands_flash_web.fragment", CONST_ZIP_FILE);
renderer.shaderManager.AddShaderFromFiles("cutsceneFade", "resources/shaders/default.vertex", "resources/shaders/cutscene_fade_web.fragment", CONST_ZIP_FILE);
renderer.shaderManager.AddShaderFromFiles("cutsceneBlack", "resources/shaders/default.vertex", "resources/shaders/cutscene_black_web.fragment", CONST_ZIP_FILE);
renderer.shaderManager.AddShaderFromFiles("shadow_depth", "resources/shaders/shadow_depth.vertex", "resources/shaders/shadow_depth_web.fragment", CONST_ZIP_FILE);
std::cout << "Load resurces step 12x1" << std::endl;
renderer.shaderManager.AddShaderFromFiles("shadow_depth_skinning", "resources/shaders/shadow_depth_skinning.vertex", "resources/shaders/shadow_depth_web.fragment", CONST_ZIP_FILE);
renderer.shaderManager.AddShaderFromFiles("default_shadow", "resources/shaders/default_shadow.vertex", "resources/shaders/default_shadow_web.fragment", CONST_ZIP_FILE);
std::cout << "Load resurces step 12x3" << std::endl;
renderer.shaderManager.AddShaderFromFiles("skinning_shadow", "resources/shaders/skinning_shadow.vertex", "resources/shaders/default_shadow_web.fragment", CONST_ZIP_FILE);
renderer.shaderManager.AddShaderFromFiles("planetBake", "resources/shaders/planet_bake.vertex", "resources/shaders/planet_bake_web.fragment", CONST_ZIP_FILE);
std::cout << "Load resurces step 12x4" << std::endl;
renderer.shaderManager.AddShaderFromFiles("fog_shadow", "resources/shaders/fog_shadow.vertex", "resources/shaders/fog_shadow_web.fragment", CONST_ZIP_FILE);
renderer.shaderManager.AddShaderFromFiles("planetStone", "resources/shaders/planet_stone.vertex", "resources/shaders/planet_stone_web.fragment", CONST_ZIP_FILE);
std::cout << "Load resurces step 12x5" << std::endl;
renderer.shaderManager.AddShaderFromFiles("planetLand", "resources/shaders/planet_land.vertex", "resources/shaders/planet_land_web.fragment", CONST_ZIP_FILE);
std::cout << "Load resurces step 12x6" << std::endl;
renderer.shaderManager.AddShaderFromFiles("spark", "resources/shaders/spark.vertex", "resources/shaders/spark_web.fragment", CONST_ZIP_FILE);
std::cout << "Load resurces step 12x7" << std::endl;
renderer.shaderManager.AddShaderFromFiles("skinning", "resources/shaders/skinning.vertex", "resources/shaders/default_web.fragment", CONST_ZIP_FILE);
std::cout << "Load resurces step 12x8" << std::endl;
renderer.shaderManager.AddShaderFromFiles("fog", "resources/shaders/fog.vertex", "resources/shaders/fog_web.fragment", CONST_ZIP_FILE);
std::cout << "Load resurces step 12x9" << std::endl;
renderer.shaderManager.AddShaderFromFiles("fog_skinning", "resources/shaders/fog_skinning.vertex", "resources/shaders/fog_web.fragment", CONST_ZIP_FILE);
std::cout << "Load resurces step 12x10" << std::endl;
renderer.shaderManager.AddShaderFromFiles("darklands_fog", "resources/shaders/darklands_fog.vertex", "resources/shaders/darklands_fog_web.fragment", CONST_ZIP_FILE);
std::cout << "Load resurces step 12x11" << std::endl;
renderer.shaderManager.AddShaderFromFiles("darklands_fog_skinning", "resources/shaders/darklands_fog_skinning.vertex", "resources/shaders/darklands_fog_web.fragment", CONST_ZIP_FILE);
std::cout << "Load resurces step 12x12" << std::endl;
renderer.shaderManager.AddShaderFromFiles("darklands_flash", "resources/shaders/default.vertex", "resources/shaders/darklands_flash_web.fragment", CONST_ZIP_FILE);
std::cout << "Load resurces step 12x13" << std::endl;
renderer.shaderManager.AddShaderFromFiles("cutsceneFade", "resources/shaders/default.vertex", "resources/shaders/cutscene_fade_web.fragment", CONST_ZIP_FILE);
std::cout << "Load resurces step 12x14" << std::endl;
renderer.shaderManager.AddShaderFromFiles("cutsceneBlack", "resources/shaders/default.vertex", "resources/shaders/cutscene_black_web.fragment", CONST_ZIP_FILE);
std::cout << "Load resurces step 12x15" << std::endl;
renderer.shaderManager.AddShaderFromFiles("shadow_depth", "resources/shaders/shadow_depth.vertex", "resources/shaders/shadow_depth_web.fragment", CONST_ZIP_FILE);
std::cout << "Load resurces step 12x16" << std::endl;
renderer.shaderManager.AddShaderFromFiles("shadow_depth_skinning", "resources/shaders/shadow_depth_skinning.vertex", "resources/shaders/shadow_depth_web.fragment", CONST_ZIP_FILE);
std::cout << "Load resurces step 12x17" << std::endl;
renderer.shaderManager.AddShaderFromFiles("default_shadow", "resources/shaders/default_shadow.vertex", "resources/shaders/default_shadow_web.fragment", CONST_ZIP_FILE);
std::cout << "Load resurces step 12x18" << std::endl;
renderer.shaderManager.AddShaderFromFiles("skinning_shadow", "resources/shaders/skinning_shadow.vertex", "resources/shaders/default_shadow_web.fragment", CONST_ZIP_FILE);
std::cout << "Load resurces step 12x19" << std::endl;
renderer.shaderManager.AddShaderFromFiles("fog_shadow", "resources/shaders/fog_shadow.vertex", "resources/shaders/fog_shadow_web.fragment", CONST_ZIP_FILE);
std::cout << "Load resurces step 12x20" << std::endl;
renderer.shaderManager.AddShaderFromFiles("fog_skinning_shadow", "resources/shaders/fog_skinning_shadow.vertex", "resources/shaders/fog_shadow_web.fragment", CONST_ZIP_FILE);
std::cout << "Load resurces step 12x21" << std::endl;
renderer.shaderManager.AddShaderFromFiles("night_fog", "resources/shaders/night_fog.vertex", "resources/shaders/night_fog_web.fragment", CONST_ZIP_FILE);
std::cout << "Load resurces step 12x22" << std::endl;
renderer.shaderManager.AddShaderFromFiles("night_fog_skinning", "resources/shaders/night_fog_skinning.vertex", "resources/shaders/night_fog_web.fragment", CONST_ZIP_FILE);
std::cout << "Load resurces step 12x23" << std::endl;
renderer.shaderManager.AddShaderFromFiles("night_fog_shadow", "resources/shaders/night_fog_shadow.vertex", "resources/shaders/night_fog_shadow_web.fragment", CONST_ZIP_FILE);
std::cout << "Load resurces step 12x24" << std::endl;
renderer.shaderManager.AddShaderFromFiles("night_fog_skinning_shadow", "resources/shaders/night_fog_skinning_shadow.vertex", "resources/shaders/night_fog_shadow_web.fragment", CONST_ZIP_FILE);
std::cout << "Load resurces step 12x25" << std::endl;
#else
renderer.shaderManager.AddShaderFromFiles("env_sky", "resources/shaders/env_sky.vertex", "resources/shaders/env_sky_desktop.fragment", CONST_ZIP_FILE);

View File

@ -64,16 +64,18 @@ namespace ZL
player = std::make_unique<Character>();
player->loadBinaryAnimation(AnimationState::STAND, "resources/w/gg/new/gg_stand_idle001.anim", CONST_ZIP_FILE);
player->loadBinaryAnimation(AnimationState::WALK, "resources/w/gg/new/gg_walk001.anim", CONST_ZIP_FILE);
player->loadBinaryAnimation(AnimationState::STAND_TO_ACTION, "resources/w/gg/new/gg_stand_to_action001.anim", CONST_ZIP_FILE);
player->loadBinaryAnimation(AnimationState::ACTION_ATTACK, "resources/w/gg/gg_action_chop001.anim", CONST_ZIP_FILE);
player->loadBinaryAnimation(AnimationState::ACTION_ATTACK_2, "resources/w/gg/gg_action_stab001.anim", CONST_ZIP_FILE);
player->loadBinaryAnimation(AnimationState::ACTION_IDLE, "resources/w/gg/gg_action_idle002.anim", CONST_ZIP_FILE);
player->loadBinaryAnimation(AnimationState::ACTION_TO_STAND, "resources/w/gg/new/gg_action_to_stand001.anim", CONST_ZIP_FILE);
player->loadBinaryAnimation(AnimationState::ACTION_TO_DEATH, "resources/w/gg/new/gg_die001.anim", CONST_ZIP_FILE);
player->loadBinaryAnimation(AnimationState::DEATH_IDLE, "resources/w/gg/new/gg_die_idle001.anim", CONST_ZIP_FILE);
player->loadBinaryAnimation(AnimationState::STAND, "resources/w/gg/new2/gg_stand_idle001_small.anim", CONST_ZIP_FILE);
player->loadBinaryAnimation(AnimationState::WALK, "resources/w/gg/new2/gg_walk001_small.anim", CONST_ZIP_FILE);
player->loadBinaryAnimation(AnimationState::STAND_TO_ACTION, "resources/w/gg/new2/gg_stand_to_action001_small.anim", CONST_ZIP_FILE);
player->loadBinaryAnimation(AnimationState::ACTION_ATTACK, "resources/w/gg/new2/gg_action_chop001_small.anim", CONST_ZIP_FILE);
player->loadBinaryAnimation(AnimationState::ACTION_ATTACK_2, "resources/w/gg/new2/gg_action_stab001_small.anim", CONST_ZIP_FILE);
player->loadBinaryAnimation(AnimationState::ACTION_IDLE, "resources/w/gg/new2/gg_action_idle002_small.anim", CONST_ZIP_FILE);
player->loadBinaryAnimation(AnimationState::ACTION_TO_STAND, "resources/w/gg/new2/gg_action_to_stand001_small.anim", CONST_ZIP_FILE);
player->loadBinaryAnimation(AnimationState::ACTION_TO_DEATH, "resources/w/gg/new2/gg_die001_small.anim", CONST_ZIP_FILE);
player->loadBinaryAnimation(AnimationState::DEATH_IDLE, "resources/w/gg/new2/gg_die_idle001_small.anim", CONST_ZIP_FILE);
player->weaponTexture = renderer.textureManager.LoadFromPng("resources/w/gg/Props.png", CONST_ZIP_FILE);
player->weaponMesh.data = LoadFromTextFile02("resources/w/gg/knife002.txt", CONST_ZIP_FILE);

View File

@ -10,6 +10,8 @@ namespace ZL {
ShaderResource::ShaderResource(const std::string &vertexCode, const std::string &fragmentCode) {
std::cout << "Started creating shader resource" << std::endl;
const int CONST_INFOLOG_LENGTH = 256;
char infoLog[CONST_INFOLOG_LENGTH];
@ -43,6 +45,8 @@ namespace ZL {
glGetShaderiv(fragmentShader, GL_COMPILE_STATUS, &fragmentShaderCompiled);
glGetShaderInfoLog(fragmentShader, CONST_INFOLOG_LENGTH, &infoLogLength2, infoLog2);
std::cout << "Creating shader resource step 1" << std::endl;
if (!vertexShaderCompiled) {
#ifdef __ANDROID__
@ -53,6 +57,9 @@ namespace ZL {
throw std::runtime_error("Failed to compile vertex shader code!");
}
std::cout << "Creating shader resource step 2" << std::endl;
if (!fragmentShaderCompiled) {
#ifdef __ANDROID__
__android_log_print(ANDROID_LOG_ERROR, "ShaderManager",
@ -63,6 +70,9 @@ namespace ZL {
throw std::runtime_error("Failed to compile fragment shader code!");
}
std::cout << "Creating shader resource step 4" << std::endl;
shaderProgram = glCreateProgram();
glAttachShader(shaderProgram, vertexShader);
@ -76,15 +86,21 @@ namespace ZL {
glGetProgramiv(shaderProgram, GL_LINK_STATUS, &programLinked);
glGetProgramInfoLog(shaderProgram, CONST_INFOLOG_LENGTH, &infoLogLength, infoLog);
std::cout << "Creating shader resource step 4" << std::endl;
if (!programLinked) {
shaderProgram = 0;
#ifdef __ANDROID__
__android_log_print(ANDROID_LOG_ERROR, "ShaderManager",
"Failed to link shader program: %s", infoLog);
#endif
std::cout << "Failed to link shader program: " << infoLog << std::endl;
throw std::runtime_error("Failed to link shader program!");
}
std::cout << "Creating shader resource step 5" << std::endl;
//================= Parsing all uniforms ================
int dummySize; //Dummy
@ -105,6 +121,9 @@ namespace ZL {
uniformList[uniformName] = glGetUniformLocation(shaderProgram, uniformName);
}
std::cout << "Creating shader resource step 6" << std::endl;
//================= Parsing all attributes ================
int activeAttribs;
@ -119,6 +138,9 @@ namespace ZL {
attribList[attribName] = glGetAttribLocation(shaderProgram, attribName);
}
std::cout << "Creating shader resource step 7" << std::endl;
#ifdef __ANDROID__
__android_log_print(ANDROID_LOG_INFO, "ShaderManager",
"Shader created successfully, program ID: %u", shaderProgram);