zip file browser

This commit is contained in:
NurgazievichR 2025-04-08 16:48:55 +06:00
parent 60b71317ce
commit dd0381a007
7 changed files with 55 additions and 57 deletions

View File

@ -39,13 +39,13 @@ void Game::setup() {
// Initialize renderer // Initialize renderer
#ifdef EMSCRIPTEN #ifdef EMSCRIPTEN
renderer.shaderManager.AddShaderFromFiles("default", "./default.vertex", "./default_web.fragment"); renderer.shaderManager.AddShaderFromFiles("default", "./default.vertex", "./default_web.fragment", "data.zip");
renderer.shaderManager.AddShaderFromFiles("defaultColor", "./defaultColor.vertex", "./defaultColor_web.fragment"); renderer.shaderManager.AddShaderFromFiles("defaultColor", "./defaultColor.vertex", "./defaultColor_web.fragment", "data.zip");
renderer.shaderManager.AddShaderFromFiles("defaultHideCam", "./defaultHideCam.vertex", "./defaultHideCam_web.fragment"); renderer.shaderManager.AddShaderFromFiles("defaultHideCam", "./defaultHideCam.vertex", "./defaultHideCam_web.fragment", "data.zip");
#else #else
renderer.shaderManager.AddShaderFromFiles("default", "./default.vertex", "./default_desktop.fragment"); renderer.shaderManager.AddShaderFromFiles("default", "./default.vertex", "./default_desktop.fragment", "data.zip");
renderer.shaderManager.AddShaderFromFiles("defaultColor", "./defaultColor.vertex", "./defaultColor_desktop.fragment"); renderer.shaderManager.AddShaderFromFiles("defaultColor", "./defaultColor.vertex", "./defaultColor_desktop.fragment", "data.zip");
renderer.shaderManager.AddShaderFromFiles("defaultHideCam", "./defaultHideCam.vertex", "./defaultHideCam_desktop.fragment"); renderer.shaderManager.AddShaderFromFiles("defaultHideCam", "./defaultHideCam.vertex", "./defaultHideCam_desktop.fragment", "data.zip");
#endif #endif

View File

@ -17,7 +17,7 @@ const float GameObjectManager::SELECTED_CUBE_MARGIN = 50.0f;
void GameObjectManager::initializeLoadingScreen() void GameObjectManager::initializeLoadingScreen()
{ {
loadingScreenTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp24("./loading.bmp")); loadingScreenTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp24("./loading.bmp", "data.zip"));
loadingScreenMesh = CreateRect2D( loadingScreenMesh = CreateRect2D(
{ Environment::width / 2.f, Environment::height / 2.f }, { Environment::width / 2.f, Environment::height / 2.f },
@ -56,24 +56,24 @@ void GameObjectManager::initialize() {
loadingThread = std::thread([this]() { loadingThread = std::thread([this]() {
preloadedRoomMeshArr.resize(3); preloadedRoomMeshArr.resize(3);
preloadedRoomMeshArr[0] = ZL::LoadFromTextFile("./oneroom001.txt"); preloadedRoomMeshArr[0] = ZL::LoadFromTextFile("./oneroom001.txt", "data.zip");
preloadedRoomMeshArr[0].Scale(10); preloadedRoomMeshArr[0].Scale(10);
preloadedRoomMeshArr[0].Move(Vector3f{ 0, 93, 0 }); preloadedRoomMeshArr[0].Move(Vector3f{ 0, 93, 0 });
preloadedRoomMeshArr[1] = ZL::LoadFromTextFile("./secondroom001.txt"); preloadedRoomMeshArr[1] = ZL::LoadFromTextFile("./secondroom001.txt", "data.zip");
preloadedRoomMeshArr[1].Scale(10); preloadedRoomMeshArr[1].Scale(10);
preloadedRoomMeshArr[1].Move(Vector3f{ 0, 93, 0 }); preloadedRoomMeshArr[1].Move(Vector3f{ 0, 93, 0 });
preloadedRoomMeshArr[2] = ZL::LoadFromTextFile("./thirdroom1.txt"); preloadedRoomMeshArr[2] = ZL::LoadFromTextFile("./thirdroom1.txt", "data.zip");
preloadedRoomMeshArr[2].Scale(10); preloadedRoomMeshArr[2].Scale(10);
preloadedRoomMeshArr[2].Move(Vector3f{ 0, 93, 0 }); preloadedRoomMeshArr[2].Move(Vector3f{ 0, 93, 0 });
violaIdleModel.LoadFromFile("./idleviola_uv010.txt"); violaIdleModel.LoadFromFile("./idleviola_uv010.txt", "data.zip");
violaWalkModel.LoadFromFile("./walkviola_uv010.txt"); violaWalkModel.LoadFromFile("./walkviola_uv010.txt", "data.zip");
sideThreadLoadingCompleted = true; sideThreadLoadingCompleted = true;
}); });
@ -88,40 +88,40 @@ void GameObjectManager::initialize() {
// Create active object // Create active object
ActiveObject cubeForFirstRoomT; ActiveObject cubeForFirstRoomT;
cubeForFirstRoomT.name = "cube_T"; cubeForFirstRoomT.name = "cube_T";
cubeForFirstRoomT.activeObjectMesh = ZL::LoadFromTextFile("./cube001.txt"); cubeForFirstRoomT.activeObjectMesh = ZL::LoadFromTextFile("./cube001.txt", "data.zip");
cubeForFirstRoomT.activeObjectMesh.RotateByMatrix(QuatToMatrix(QuatFromRotateAroundZ(M_PI * 0.5))); cubeForFirstRoomT.activeObjectMesh.RotateByMatrix(QuatToMatrix(QuatFromRotateAroundZ(M_PI * 0.5)));
cubeForFirstRoomT.activeObjectMesh.Scale(10); cubeForFirstRoomT.activeObjectMesh.Scale(10);
cubeForFirstRoomT.activeObjectMeshMutable.AssignFrom(cubeForFirstRoomT.activeObjectMesh); cubeForFirstRoomT.activeObjectMeshMutable.AssignFrom(cubeForFirstRoomT.activeObjectMesh);
cubeForFirstRoomT.activeObjectMeshMutable.RefreshVBO(); cubeForFirstRoomT.activeObjectMeshMutable.RefreshVBO();
cubeForFirstRoomT.objectPos = Vector3f{ -190, 90 , 280 }; cubeForFirstRoomT.objectPos = Vector3f{ -190, 90 , 280 };
cubeForFirstRoomT.activeObjectTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp24("./Material_Base_color_1001-_2_.bmp")); cubeForFirstRoomT.activeObjectTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp24("./Material_Base_color_1001-_2_.bmp", "data.zip"));
cubeForFirstRoomT.activeObjectScreenTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp32("./hand.bmp32")); cubeForFirstRoomT.activeObjectScreenTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp32("./hand.bmp32", "data.zip"));
cubeForFirstRoomT.activeObjectScreenMesh = CreateRect2D({ 0.f, 0.f }, { 64.f, 64.f }, 0.5); cubeForFirstRoomT.activeObjectScreenMesh = CreateRect2D({ 0.f, 0.f }, { 64.f, 64.f }, 0.5);
cubeForFirstRoomT.activeObjectScreenMeshMutable.AssignFrom(cubeForFirstRoomT.activeObjectScreenMesh); cubeForFirstRoomT.activeObjectScreenMeshMutable.AssignFrom(cubeForFirstRoomT.activeObjectScreenMesh);
cubeForFirstRoomT.activeObjectScreenMeshMutable.RefreshVBO(); cubeForFirstRoomT.activeObjectScreenMeshMutable.RefreshVBO();
cubeForFirstRoomT.inventoryIconTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp32("./textures/inventory_objects/cubic_T_icon.bmp32")); cubeForFirstRoomT.inventoryIconTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp32("./textures/inventory_objects/cubic_T_icon.bmp32", "data.zip"));
ActiveObject cubeForFirstRoomO; ActiveObject cubeForFirstRoomO;
cubeForFirstRoomO.name = "cube_O"; cubeForFirstRoomO.name = "cube_O";
cubeForFirstRoomO.activeObjectMesh = ZL::LoadFromTextFile("./cube001.txt"); cubeForFirstRoomO.activeObjectMesh = ZL::LoadFromTextFile("./cube001.txt", "data.zip");
cubeForFirstRoomO.activeObjectMesh.RotateByMatrix(QuatToMatrix(QuatFromRotateAroundZ(M_PI * 0.5))); cubeForFirstRoomO.activeObjectMesh.RotateByMatrix(QuatToMatrix(QuatFromRotateAroundZ(M_PI * 0.5)));
cubeForFirstRoomO.activeObjectMesh.RotateByMatrix(QuatToMatrix(QuatFromRotateAroundX(M_PI * 1.5))); cubeForFirstRoomO.activeObjectMesh.RotateByMatrix(QuatToMatrix(QuatFromRotateAroundX(M_PI * 1.5)));
cubeForFirstRoomO.activeObjectMesh.Scale(10); cubeForFirstRoomO.activeObjectMesh.Scale(10);
cubeForFirstRoomO.activeObjectMeshMutable.AssignFrom(cubeForFirstRoomO.activeObjectMesh); cubeForFirstRoomO.activeObjectMeshMutable.AssignFrom(cubeForFirstRoomO.activeObjectMesh);
cubeForFirstRoomO.activeObjectMeshMutable.RefreshVBO(); cubeForFirstRoomO.activeObjectMeshMutable.RefreshVBO();
cubeForFirstRoomO.objectPos = Vector3f{ 185, 90 , -365 }; cubeForFirstRoomO.objectPos = Vector3f{ 185, 90 , -365 };
cubeForFirstRoomO.activeObjectTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp24("./Material_Base_color_1001-_3.bmp")); cubeForFirstRoomO.activeObjectTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp24("./Material_Base_color_1001-_3.bmp", "data.zip"));
cubeForFirstRoomO.activeObjectScreenTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp32("./hand.bmp32")); cubeForFirstRoomO.activeObjectScreenTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp32("./hand.bmp32", "data.zip"));
cubeForFirstRoomO.activeObjectScreenMesh = CreateRect2D({ 0.f, 0.f }, { 64.f, 64.f }, 0.5); cubeForFirstRoomO.activeObjectScreenMesh = CreateRect2D({ 0.f, 0.f }, { 64.f, 64.f }, 0.5);
cubeForFirstRoomO.activeObjectScreenMeshMutable.AssignFrom(cubeForFirstRoomO.activeObjectScreenMesh); cubeForFirstRoomO.activeObjectScreenMeshMutable.AssignFrom(cubeForFirstRoomO.activeObjectScreenMesh);
cubeForFirstRoomO.activeObjectScreenMeshMutable.RefreshVBO(); cubeForFirstRoomO.activeObjectScreenMeshMutable.RefreshVBO();
cubeForFirstRoomO.inventoryIconTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp32("./textures/inventory_objects/cubic_O_icon.bmp32")); cubeForFirstRoomO.inventoryIconTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp32("./textures/inventory_objects/cubic_O_icon.bmp32", "data.zip"));
ActiveObject cubeForFirstRoomM; ActiveObject cubeForFirstRoomM;
cubeForFirstRoomM.name = "cube_M"; cubeForFirstRoomM.name = "cube_M";
cubeForFirstRoomM.activeObjectMesh = ZL::LoadFromTextFile("./cube001.txt"); cubeForFirstRoomM.activeObjectMesh = ZL::LoadFromTextFile("./cube001.txt", "data.zip");
cubeForFirstRoomO.activeObjectMesh.RotateByMatrix(QuatToMatrix(QuatFromRotateAroundZ(M_PI * 0.5))); cubeForFirstRoomO.activeObjectMesh.RotateByMatrix(QuatToMatrix(QuatFromRotateAroundZ(M_PI * 0.5)));
cubeForFirstRoomO.activeObjectMesh.RotateByMatrix(QuatToMatrix(QuatFromRotateAroundX(M_PI))); cubeForFirstRoomO.activeObjectMesh.RotateByMatrix(QuatToMatrix(QuatFromRotateAroundX(M_PI)));
@ -129,81 +129,81 @@ void GameObjectManager::initialize() {
cubeForFirstRoomM.activeObjectMeshMutable.AssignFrom(cubeForFirstRoomO.activeObjectMesh); cubeForFirstRoomM.activeObjectMeshMutable.AssignFrom(cubeForFirstRoomO.activeObjectMesh);
cubeForFirstRoomM.activeObjectMeshMutable.RefreshVBO(); cubeForFirstRoomM.activeObjectMeshMutable.RefreshVBO();
cubeForFirstRoomM.objectPos = Vector3f{ 200, 95 , 230 }; cubeForFirstRoomM.objectPos = Vector3f{ 200, 95 , 230 };
cubeForFirstRoomM.activeObjectTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp24("./Material_Base_color_1001_4.bmp")); cubeForFirstRoomM.activeObjectTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp24("./Material_Base_color_1001_4.bmp", "data.zip"));
cubeForFirstRoomM.activeObjectScreenTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp32("./hand.bmp32")); cubeForFirstRoomM.activeObjectScreenTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp32("./hand.bmp32", "data.zip"));
cubeForFirstRoomM.activeObjectScreenMesh = CreateRect2D({ 0.f, 0.f }, { 64.f, 64.f }, 0.5); cubeForFirstRoomM.activeObjectScreenMesh = CreateRect2D({ 0.f, 0.f }, { 64.f, 64.f }, 0.5);
cubeForFirstRoomM.activeObjectScreenMeshMutable.AssignFrom(cubeForFirstRoomO.activeObjectScreenMesh); cubeForFirstRoomM.activeObjectScreenMeshMutable.AssignFrom(cubeForFirstRoomO.activeObjectScreenMesh);
cubeForFirstRoomM.activeObjectScreenMeshMutable.RefreshVBO(); cubeForFirstRoomM.activeObjectScreenMeshMutable.RefreshVBO();
cubeForFirstRoomM.inventoryIconTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp32("./textures/inventory_objects/cubic_M_icon.bmp32")); cubeForFirstRoomM.inventoryIconTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp32("./textures/inventory_objects/cubic_M_icon.bmp32", "data.zip"));
ActiveObject lampe; ActiveObject lampe;
lampe.name = "lampe"; lampe.name = "lampe";
lampe.activeObjectMesh = ZL::LoadFromTextFile("./lighter.txt"); // Add ZL:: namespace lampe.activeObjectMesh = ZL::LoadFromTextFile("./lighter.txt", "data.zip"); // Add ZL:: namespace
lampe.activeObjectMesh.Scale(7); lampe.activeObjectMesh.Scale(7);
lampe.activeObjectMeshMutable.AssignFrom(lampe.activeObjectMesh); lampe.activeObjectMeshMutable.AssignFrom(lampe.activeObjectMesh);
lampe.activeObjectMeshMutable.RefreshVBO(); lampe.activeObjectMeshMutable.RefreshVBO();
lampe.objectPos = Vector3f{ 85, 30, 43 }; lampe.objectPos = Vector3f{ 85, 30, 43 };
lampe.activeObjectTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp24("./temno.bmp")); lampe.activeObjectTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp24("./temno.bmp", "data.zip"));
lampe.activeObjectScreenTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp32("./hand.bmp32")); lampe.activeObjectScreenTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp32("./hand.bmp32", "data.zip"));
lampe.activeObjectScreenMesh = CreateRect2D({ 0.f, 0.f }, { 64.f, 64.f }, 0.5); lampe.activeObjectScreenMesh = CreateRect2D({ 0.f, 0.f }, { 64.f, 64.f }, 0.5);
lampe.activeObjectScreenMeshMutable.AssignFrom(lampe.activeObjectScreenMesh); lampe.activeObjectScreenMeshMutable.AssignFrom(lampe.activeObjectScreenMesh);
lampe.activeObjectScreenMeshMutable.RefreshVBO(); lampe.activeObjectScreenMeshMutable.RefreshVBO();
lampe.inventoryIconTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp32("./textures/inventory_objects/cubic_T_icon.bmp32")); lampe.inventoryIconTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp32("./textures/inventory_objects/cubic_T_icon.bmp32", "data.zip"));
ActiveObject carToy; ActiveObject carToy;
carToy.name = "carToy"; carToy.name = "carToy";
carToy.activeObjectMesh = ZL::LoadFromTextFile("./car.txt"); // Add ZL:: namespace carToy.activeObjectMesh = ZL::LoadFromTextFile("./car.txt", "data.zip"); // Add ZL:: namespace
carToy.activeObjectMesh.Scale(12); carToy.activeObjectMesh.Scale(12);
carToy.activeObjectMeshMutable.AssignFrom(carToy.activeObjectMesh); carToy.activeObjectMeshMutable.AssignFrom(carToy.activeObjectMesh);
carToy.activeObjectMeshMutable.RefreshVBO(); carToy.activeObjectMeshMutable.RefreshVBO();
carToy.objectPos = Vector3f{ 300, 0, 315 }; carToy.objectPos = Vector3f{ 300, 0, 315 };
carToy.activeObjectTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp24("./Material.001_Base_color_1001_5.bmp")); carToy.activeObjectTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp24("./Material.001_Base_color_1001_5.bmp", "data.zip"));
carToy.activeObjectScreenTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp32("./hand.bmp32")); carToy.activeObjectScreenTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp32("./hand.bmp32", "data.zip"));
carToy.activeObjectScreenMesh = CreateRect2D({ 0.f, 0.f }, { 64.f, 64.f }, 0.5); carToy.activeObjectScreenMesh = CreateRect2D({ 0.f, 0.f }, { 64.f, 64.f }, 0.5);
carToy.activeObjectScreenMeshMutable.AssignFrom(carToy.activeObjectScreenMesh); carToy.activeObjectScreenMeshMutable.AssignFrom(carToy.activeObjectScreenMesh);
carToy.activeObjectScreenMeshMutable.RefreshVBO(); carToy.activeObjectScreenMeshMutable.RefreshVBO();
carToy.inventoryIconTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp32("./textures/inventory_objects/battery.bmp32")); carToy.inventoryIconTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp32("./textures/inventory_objects/battery.bmp32", "data.zip"));
ActiveObject lock; ActiveObject lock;
lock.name = "lockFriend"; lock.name = "lockFriend";
lock.activeObjectMesh = ZL::LoadFromTextFile("./lock.txt"); // Add ZL:: namespace lock.activeObjectMesh = ZL::LoadFromTextFile("./lock.txt", "data.zip"); // Add ZL:: namespace
lock.activeObjectMesh.Scale(2); lock.activeObjectMesh.Scale(2);
lock.activeObjectMeshMutable.AssignFrom(lock.activeObjectMesh); lock.activeObjectMeshMutable.AssignFrom(lock.activeObjectMesh);
lock.activeObjectMeshMutable.RefreshVBO(); lock.activeObjectMeshMutable.RefreshVBO();
lock.objectPos = Vector3f{ 101, 100, 255 }; lock.objectPos = Vector3f{ 101, 100, 255 };
lock.activeObjectTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp24("./temno.bmp")); lock.activeObjectTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp24("./temno.bmp", "data.zip"));
lock.activeObjectScreenTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp32("./hand.bmp32")); lock.activeObjectScreenTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp32("./hand.bmp32", "data.zip"));
lock.activeObjectScreenMesh = CreateRect2D({ 0.f, 0.f }, { 64.f, 64.f }, 0.5); lock.activeObjectScreenMesh = CreateRect2D({ 0.f, 0.f }, { 64.f, 64.f }, 0.5);
lock.activeObjectScreenMeshMutable.AssignFrom(lock.activeObjectScreenMesh); lock.activeObjectScreenMeshMutable.AssignFrom(lock.activeObjectScreenMesh);
lock.activeObjectScreenMeshMutable.RefreshVBO(); lock.activeObjectScreenMeshMutable.RefreshVBO();
lock.inventoryIconTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp32("./textures/inventory_objects/battery.bmp32")); lock.inventoryIconTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp32("./textures/inventory_objects/battery.bmp32", "data.zip"));
ActiveObject door; ActiveObject door;
door.name = "doorGlory"; door.name = "doorGlory";
door.activeObjectMesh = ZL::LoadFromTextFile("./door.txt"); // Add ZL:: namespace door.activeObjectMesh = ZL::LoadFromTextFile("./door.txt", "data.zip"); // Add ZL:: namespace
door.activeObjectMesh.Scale(60); door.activeObjectMesh.Scale(60);
door.activeObjectMesh.RotateByMatrix(QuatToMatrix(QuatFromRotateAroundY(-M_PI * 0.5))); door.activeObjectMesh.RotateByMatrix(QuatToMatrix(QuatFromRotateAroundY(-M_PI * 0.5)));
door.activeObjectMeshMutable.AssignFrom(door.activeObjectMesh); door.activeObjectMeshMutable.AssignFrom(door.activeObjectMesh);
door.activeObjectMeshMutable.RefreshVBO(); door.activeObjectMeshMutable.RefreshVBO();
door.objectPos = Vector3f{ -350, -40, -60 }; door.objectPos = Vector3f{ -350, -40, -60 };
door.activeObjectTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp24("./door.bmp")); door.activeObjectTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp24("./door.bmp", "data.zip"));
door.activeObjectScreenTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp32("./hand.bmp32")); door.activeObjectScreenTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp32("./hand.bmp32", "data.zip"));
door.activeObjectScreenMesh = CreateRect2D({ 0.f, 0.f }, { 64.f, 64.f }, 0.5); door.activeObjectScreenMesh = CreateRect2D({ 0.f, 0.f }, { 64.f, 64.f }, 0.5);
door.activeObjectScreenMeshMutable.AssignFrom(door.activeObjectScreenMesh); door.activeObjectScreenMeshMutable.AssignFrom(door.activeObjectScreenMesh);
door.activeObjectScreenMeshMutable.RefreshVBO(); door.activeObjectScreenMeshMutable.RefreshVBO();
door.inventoryIconTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp32("./textures/inventory_objects/battery.bmp32")); door.inventoryIconTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp32("./textures/inventory_objects/battery.bmp32", "data.zip"));
Room room_1; Room room_1;
room_1.roomTexture = std::make_shared<Texture>(CreateTextureDataFromBmp24("./Material_Base_color_1001.bmp")); room_1.roomTexture = std::make_shared<Texture>(CreateTextureDataFromBmp24("./Material_Base_color_1001.bmp", "data.zip"));
room_1.objects.push_back(cubeForFirstRoomT); room_1.objects.push_back(cubeForFirstRoomT);
room_1.objects.push_back(cubeForFirstRoomO); room_1.objects.push_back(cubeForFirstRoomO);
room_1.objects.push_back(cubeForFirstRoomM); room_1.objects.push_back(cubeForFirstRoomM);
@ -224,7 +224,7 @@ void GameObjectManager::initialize() {
//aoMgr.addActiveObject(ao1); //aoMgr.addActiveObject(ao1);
Room room_2; Room room_2;
room_2.roomTexture = std::make_shared<Texture>(CreateTextureDataFromBmp24("./seconroom.bmp")); room_2.roomTexture = std::make_shared<Texture>(CreateTextureDataFromBmp24("./seconroom.bmp", "data.zip"));
room_2.objects.push_back(lampe); room_2.objects.push_back(lampe);
room_2.objects.push_back(carToy); room_2.objects.push_back(carToy);
room_2.sound_name = "unholy-choir-1-279337--online-audio-convert.com.ogg"; room_2.sound_name = "unholy-choir-1-279337--online-audio-convert.com.ogg";
@ -244,7 +244,7 @@ void GameObjectManager::initialize() {
Room room_3; Room room_3;
room_3.roomTexture = std::make_shared<Texture>(CreateTextureDataFromBmp24("./DefaultMaterial_Base_color_1001.bmp")); room_3.roomTexture = std::make_shared<Texture>(CreateTextureDataFromBmp24("./DefaultMaterial_Base_color_1001.bmp", "data.zip"));
room_3.sound_name = "unseen-danger-fss-no-copyright-music-252588--online-audio-convert.com.ogg"; room_3.sound_name = "unseen-danger-fss-no-copyright-music-252588--online-audio-convert.com.ogg";
room_3.objects.push_back(lock); room_3.objects.push_back(lock);
room_3.objects.push_back(door); room_3.objects.push_back(door);
@ -278,8 +278,8 @@ void GameObjectManager::initialize() {
//roomTexturePtr = rooms[current_room_index].roomTexture; //roomTexturePtr = rooms[current_room_index].roomTexture;
monsterTexturePtr1 = std::make_shared<Texture>(CreateTextureDataFromBmp32("./monster001.bmp32")); monsterTexturePtr1 = std::make_shared<Texture>(CreateTextureDataFromBmp32("./monster001.bmp32", "data.zip"));
monsterTexturePtr2 = std::make_shared<Texture>(CreateTextureDataFromBmp32("./monster002.bmp32")); monsterTexturePtr2 = std::make_shared<Texture>(CreateTextureDataFromBmp32("./monster002.bmp32", "data.zip"));
monsterScreenMesh = CreateRect2D({ 0.f, 0.f }, { 300.f, 300.f }, 0.5); monsterScreenMesh = CreateRect2D({ 0.f, 0.f }, { 300.f, 300.f }, 0.5);
@ -287,19 +287,19 @@ void GameObjectManager::initialize() {
monsterScreenMeshMutable.RefreshVBO(); monsterScreenMeshMutable.RefreshVBO();
violaTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp24("./viola.bmp")); violaTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp24("./viola.bmp", "data.zip"));
if (!dialogTextures.empty()) { // Проверяем, есть ли диалоги if (!dialogTextures.empty()) { // Проверяем, есть ли диалоги
dialogTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp24(dialogTextures[dialogIndex])); dialogTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp24(dialogTextures[dialogIndex], "data.zip"));
isDialogActive = true; isDialogActive = true;
} }
batteryDialogTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp24("./battery_dialog.bmp")); batteryDialogTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp24("./battery_dialog.bmp", "data.zip"));
finalGoodTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp24("./final_good.bmp")); finalGoodTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp24("./final_good.bmp", "data.zip"));
finalBadTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp24("./final_bad.bmp")); finalBadTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp24("./final_bad.bmp", "data.zip"));
//SDL_ShowCursor(SDL_DISABLE); //SDL_ShowCursor(SDL_DISABLE);
@ -356,7 +356,7 @@ void GameObjectManager::handleEvent(const SDL_Event& event) {
if (isDialogActive) { if (isDialogActive) {
dialogIndex++; dialogIndex++;
if (dialogIndex < dialogTextures.size()) { if (dialogIndex < dialogTextures.size()) {
dialogTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp24(dialogTextures[dialogIndex])); dialogTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp24(dialogTextures[dialogIndex], "data.zip"));
} }
else { else {
isDialogActive = false; isDialogActive = false;
@ -410,7 +410,7 @@ void GameObjectManager::handleEvent(const SDL_Event& event) {
// Create a new lamp object with updated texture // Create a new lamp object with updated texture
ActiveObject updatedLamp = *ao; ActiveObject updatedLamp = *ao;
// Change from dark to lit texture // Change from dark to lit texture
updatedLamp.activeObjectTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp24("./base_Base_color_1001.bmp")); updatedLamp.activeObjectTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp24("./base_Base_color_1001.bmp", "data.zip"));
// Replace the old lamp with updated one // Replace the old lamp with updated one
rooms[current_room_index].removeByPtr(ao); rooms[current_room_index].removeByPtr(ao);

View File

@ -61,8 +61,7 @@ emcmake cmake ..
emcc main.cpp Game.cpp Environment.cpp GameObjectManager.cpp BoneAnimatedModel.cpp GameWorld.cpp InputManager.cpp Inventory.cpp ObjLoader.cpp QuestScripts.cpp RenderSystem.cpp Math.cpp Physics.cpp Renderer.cpp TextModel.cpp ShaderManager.cpp TextureManager.cpp Utils.cpp OpenGlExtensions.cpp -O2 -std=c++14 -IC:\Users\ASUS\Desktop\fishrungame2\ZeptoLabTest1\thirdparty\libzip-1.11.3\build-emcmake\install\include -LC:\Users\ASUS\Desktop\fishrungame2\ZeptoLabTest1\thirdparty\libzip-1.11.3\build-emcmake\install\lib -lzip -sTOTAL_MEMORY=33554432 -sUSE_SDL_IMAGE=2 -sSDL2_IMAGE_FORMATS="[""png""]" -sUSE_SDL=2 --preload-file background.bmp --preload-file bird.bmp32 --preload-file default.fragment --preload-file default.vertex --preload-file game_over.bmp32 --preload-file pipe.bmp32 -o jumpingbird.html emcc main.cpp Game.cpp Environment.cpp GameObjectManager.cpp BoneAnimatedModel.cpp GameWorld.cpp InputManager.cpp Inventory.cpp ObjLoader.cpp QuestScripts.cpp RenderSystem.cpp Math.cpp Physics.cpp Renderer.cpp TextModel.cpp ShaderManager.cpp TextureManager.cpp Utils.cpp OpenGlExtensions.cpp -O2 -std=c++14 -IC:\Users\ASUS\Desktop\fishrungame2\ZeptoLabTest1\thirdparty\libzip-1.11.3\build-emcmake\install\include -LC:\Users\ASUS\Desktop\fishrungame2\ZeptoLabTest1\thirdparty\libzip-1.11.3\build-emcmake\install\lib -lzip -sTOTAL_MEMORY=33554432 -sUSE_SDL_IMAGE=2 -sSDL2_IMAGE_FORMATS="[""png""]" -sUSE_SDL=2 --preload-file background.bmp --preload-file bird.bmp32 --preload-file default.fragment --preload-file default.vertex --preload-file game_over.bmp32 --preload-file pipe.bmp32 -o jumpingbird.html
emcc main.cpp Game.cpp Environment.cpp GameObjectManager.cpp BoneAnimatedModel.cpp GameWorld.cpp InputManager.cpp Inventory.cpp ObjLoader.cpp QuestScripts.cpp RenderSystem.cpp Math.cpp Physics.cpp Renderer.cpp TextModel.cpp ShaderManager.cpp TextureManager.cpp Utils.cpp OpenGlExtensions.cpp -O2 -std=c++14 -pthread -sUSE_PTHREADS=1 -sPTHREAD_POOL_SIZE=4 -sTOTAL_MEMORY=4294967296 -sINITIAL_MEMORY=3221225472 -sMAXIMUM_MEMORY=4294967296 -sALLOW_MEMORY_GROWTH=1 -I./thirdparty/libzip-1.11.3/build-emcmake/install/include -I./thirdparty/zlib-1.3.1/install/include -L./thirdparty/libzip-1.11.3/build-emcmake/install/lib -L./thirdparty/zlib-1.3.1/install/lib -lzip -lz -sUSE_SDL_IMAGE=2 -sSDL2_IMAGE_FORMATS='["png"]' -sUSE_SDL=2 --preload-file data.zip -o jumpingbird.html
emcc main.cpp Game.cpp Environment.cpp GameObjectManager.cpp BoneAnimatedModel.cpp GameWorld.cpp InputManager.cpp Inventory.cpp ObjLoader.cpp QuestScripts.cpp RenderSystem.cpp Math.cpp Physics.cpp Renderer.cpp TextModel.cpp ShaderManager.cpp TextureManager.cpp Utils.cpp OpenGlExtensions.cpp -O2 -std=c++14 -pthread -sUSE_PTHREADS=1 -sPTHREAD_POOL_SIZE=4 -sTOTAL_MEMORY=4294967296 -sINITIAL_MEMORY=3221225472 -sMAXIMUM_MEMORY=4294967296 -sALLOW_MEMORY_GROWTH=1 -I./thirdparty/libzip-1.11.3/build-emcmake/install/include -I./thirdparty/zlib-1.3.1/install/include -L./thirdparty/libzip-1.11.3/build-emcmake/install/lib -L./thirdparty/zlib-1.3.1/install/lib -lzip -lz -sUSE_SDL_IMAGE=2 -sSDL2_IMAGE_FORMATS='["png"]' -sUSE_SDL=2 --preload-file background.bmp --preload-file bird.bmp32 --preload-file default.vertex --preload-file default_web.fragment --preload-file defaultColor.vertex --preload-file defaultColor_web.fragment --preload-file defaultHideCam.vertex --preload-file defaultHideCam_web.fragment --preload-file game_over.bmp32 --preload-file pipe.bmp32 --preload-file loading.bmp --preload-file cube001.txt --preload-file door.txt --preload-file idleviola_uv010.txt --preload-file lighter.txt --preload-file lock.txt --preload-file oneroom001.txt --preload-file secondroom001.txt --preload-file seconroom.bmp --preload-file thirdroom1.txt --preload-file walkviola_uv010.txt --preload-file car.txt --preload-file battery_dialog.bmp --preload-file final_bad.bmp --preload-file final_dialog.bmp --preload-file viola.bmp --preload-file final_good.bmp --preload-file monster001.bmp32 --preload-file monster002.bmp32 --preload-file hand.bmp32 --preload-file temno.bmp --preload-file DefaultMaterial_Base_color_1001.bmp --preload-file Material.001_Base_color_1001_5.bmp --preload-file Material_Base_color_1001-_2_.bmp --preload-file Material_Base_color_1001-_3.bmp --preload-file Material_Base_color_1001_4.bmp --preload-file Material_Base_color_1001.bmp --preload-file base_Base_color_1001.bmp --preload-file next_dialog.bmp --preload-file door.bmp --preload-file textures/inventory_objects/cubic_T_icon.bmp32 --preload-file textures/inventory_objects/cubic_M_icon.bmp32 --preload-file textures/inventory_objects/cubic_O_icon.bmp32 --preload-file textures/inventory_objects/battery.bmp32 --preload-file textures/mesh_1.txt --preload-file textures/mesh_first_room.txt --preload-file textures/mesh-of-first-room-with-roof.txt --preload-file textures/mesh-of-first-room-without-roof.txt --preload-file photo.bmp -o jumpingbird.html
emrun --no_browser --port 8080 . emrun --no_browser --port 8080 .
``` ```

View File

@ -32,9 +32,8 @@ namespace ZL
file.seekg(0, std::ios::beg); file.seekg(0, std::ios::beg);
std::vector<char> vec; std::vector<char> vec;
std::cout << "started reserving" + filename << std::endl;
vec.reserve(fileSize); vec.reserve(fileSize);
std::cout << "ended reserving" << std::endl;
vec.insert(vec.begin(), vec.insert(vec.begin(),
std::istream_iterator<char>(file), std::istream_iterator<char>(file),
std::istream_iterator<char>()); std::istream_iterator<char>());

BIN
data.zip Normal file

Binary file not shown.

File diff suppressed because one or more lines are too long

Binary file not shown.