New version

This commit is contained in:
Vladislav Khorev 2025-11-30 22:46:42 +03:00
parent fb4e2e2491
commit b45d9300bd
153 changed files with 15089 additions and 335769 deletions

2
.gitignore vendored
View File

@ -399,4 +399,4 @@ script.py
jumpingbird.*
jumpingbird.data
build
build-emcmake
build-emcmake

83
.vscode/settings.json vendored
View File

@ -1,83 +0,0 @@
{
"files.associations": {
"array": "cpp",
"atomic": "cpp",
"bit": "cpp",
"*.tcc": "cpp",
"bitset": "cpp",
"cctype": "cpp",
"charconv": "cpp",
"chrono": "cpp",
"clocale": "cpp",
"cmath": "cpp",
"compare": "cpp",
"concepts": "cpp",
"condition_variable": "cpp",
"cstdarg": "cpp",
"cstddef": "cpp",
"cstdint": "cpp",
"cstdio": "cpp",
"cstdlib": "cpp",
"cstring": "cpp",
"ctime": "cpp",
"cwchar": "cpp",
"cwctype": "cpp",
"forward_list": "cpp",
"list": "cpp",
"string": "cpp",
"unordered_map": "cpp",
"vector": "cpp",
"deque": "cpp",
"exception": "cpp",
"algorithm": "cpp",
"functional": "cpp",
"iterator": "cpp",
"memory": "cpp",
"memory_resource": "cpp",
"optional": "cpp",
"random": "cpp",
"ratio": "cpp",
"string_view": "cpp",
"system_error": "cpp",
"tuple": "cpp",
"type_traits": "cpp",
"utility": "cpp",
"format": "cpp",
"initializer_list": "cpp",
"iomanip": "cpp",
"iosfwd": "cpp",
"istream": "cpp",
"limits": "cpp",
"mutex": "cpp",
"new": "cpp",
"ostream": "cpp",
"print": "cpp",
"span": "cpp",
"sstream": "cpp",
"stdexcept": "cpp",
"streambuf": "cpp",
"text_encoding": "cpp",
"thread": "cpp",
"cinttypes": "cpp",
"typeinfo": "cpp",
"variant": "cpp",
"__bit_reference": "cpp",
"__locale": "cpp",
"__split_buffer": "cpp",
"__verbose_abort": "cpp",
"execution": "cpp",
"ios": "cpp",
"locale": "cpp",
"queue": "cpp",
"stack": "cpp",
"codecvt": "cpp",
"map": "cpp",
"numeric": "cpp",
"regex": "cpp",
"fstream": "cpp",
"iostream": "cpp",
"numbers": "cpp",
"semaphore": "cpp",
"stop_token": "cpp"
}
}

View File

@ -1,24 +0,0 @@
#pragma once
#include "TextureManager.h"
#include "Math.h"
#include <unordered_map>
#include <memory>
namespace ZL {
struct ActiveObject {
std::string name;
std::shared_ptr<ZL::Texture> activeObjectTexturePtr;
ZL::VertexDataStruct activeObjectMesh;
ZL::VertexRenderStruct activeObjectMeshMutable;
std::shared_ptr<ZL::Texture> activeObjectScreenTexturePtr;
ZL::VertexDataStruct activeObjectScreenMesh;
ZL::VertexRenderStruct activeObjectScreenMeshMutable;
std::shared_ptr<ZL::Texture> inventoryIconTexturePtr;
ZL::Vector3f objectPos;
bool highlighted = false;
};
}

View File

@ -1,110 +0,0 @@
#pragma once
#include "Math.h"
#include <vector>
#include <memory>
namespace ZL {
// Базовый класс для всех коллизий
class Collidable {
public:
virtual bool checkCollision(const Vector3f& position) const = 0;
virtual ~Collidable() = default;
};
// Прямоугольная граница комнаты
class BoundaryBox {
public:
BoundaryBox()
{
}
BoundaryBox(float width, float height)
: halfWidth(width/2)
, halfHeight(height/2) {}
bool isInside(const Vector3f& position) const {
return (position.v[0] >= -halfWidth && position.v[0] <= halfWidth &&
position.v[2] >= -halfHeight && position.v[2] <= halfHeight);
}
private:
float halfWidth = 0;
float halfHeight = 0;
};
// Круглая коллизия для объектов
class CircleCollider : public Collidable {
public:
CircleCollider(const Vector3f& center, float radius)
: center(center)
, radius(radius) {}
bool checkCollision(const Vector3f& position) const override {
float dx = position.v[0] - center.v[0];
float dz = position.v[2] - center.v[2];
return (dx * dx + dz * dz) <= (radius * radius);
}
void setPosition(const Vector3f& newPos) { center = newPos; }
void setRadius(float newRadius) { radius = newRadius; }
private:
Vector3f center;
float radius;
};
// Прямоугольная коллизия для объектов
class RectangleCollider : public Collidable {
public:
RectangleCollider(const Vector3f& min, const Vector3f& max)
: minPoint(min)
, maxPoint(max) {}
bool checkCollision(const Vector3f& position) const override {
return (position.v[0] >= minPoint.v[0] && position.v[0] <= maxPoint.v[0] &&
position.v[2] >= minPoint.v[2] && position.v[2] <= maxPoint.v[2]);
}
private:
Vector3f minPoint;
Vector3f maxPoint;
};
// Менеджер коллизий
class CollisionManager {
public:
CollisionManager()
{
}
void setRoomBoundary(float width, float height) {
roomBoundary = BoundaryBox(width, height);
}
void addCollider(std::shared_ptr<Collidable> collider) {
colliders.push_back(collider);
}
bool checkCollision(const Vector3f& position) const {
// Проверяем границы комнаты
if (!roomBoundary.isInside(position)) {
return true;
}
// Проверяем коллизии с объектами
for (const auto& collider : colliders) {
if (collider->checkCollision(position)) {
return true;
}
}
return false;
}
private:
BoundaryBox roomBoundary;
std::vector<std::shared_ptr<Collidable>> colliders;
};
} // namespace ZL

View File

@ -1,83 +0,0 @@
cmake_minimum_required(VERSION 3.10)
project(SDLApp VERSION 1.0 LANGUAGES CXX)
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED True)
set(THREADS_PREFER_PTHREAD_FLAG ON)
find_package(Threads REQUIRED)
find_package(PkgConfig REQUIRED)
pkg_check_modules(SDL2 REQUIRED sdl2)
pkg_check_modules(GL REQUIRED gl)
pkg_check_modules(LIBZIP REQUIRED libzip)
option(AUDIO "Audio support" OFF)
if(AUDIO)
set(AUDIO ON)
else()
set(AUDIO OFF)
endif()
if(AUDIO)
pkg_check_modules(VORBIS REQUIRED vorbis vorbisfile ogg)
pkg_check_modules(OPENAL REQUIRED openal)
add_definitions(-DAUDIO)
endif()
add_executable(sdl_app
Game.cpp
main.cpp
Math.cpp
OpenGlExtensions.cpp
Physics.cpp
Renderer.cpp
ShaderManager.cpp
TextureManager.cpp
Utils.cpp
BoneAnimatedModel.cpp
ObjLoader.cpp
TextModel.cpp
Inventory.cpp
Environment.cpp
GameObjectManager.cpp
RenderSystem.cpp
QuestScripts.cpp
)
if(AUDIO)
target_sources(sdl_app PRIVATE
cmakeaudioplayer/src/AudioPlayer.cpp
AudioPlayerAsync.cpp
)
endif()
target_include_directories(sdl_app PRIVATE
${SDL2_INCLUDE_DIRS}
${GL_INCLUDE_DIRS}
${LIBZIP_INCLUDE_DIRS}
)
if(AUDIO)
target_include_directories(sdl_app PRIVATE
${VORBIS_INCLUDE_DIRS}
${OPENAL_INCLUDE_DIRS}
cmakeaudioplayer/include
)
endif()
target_link_libraries(sdl_app
${SDL2_LIBRARIES}
${GL_LIBRARIES}
Threads::Threads
${LIBZIP_LIBRARIES}
)
if(AUDIO)
target_link_libraries(sdl_app
${VORBIS_LIBRARIES}
${OPENAL_LIBRARIES}
)
endif()

Binary file not shown.

Before

Width:  |  Height:  |  Size: 48 MiB

View File

@ -1,8 +1,6 @@
#include "Environment.h"
#include "RenderSystem.h"
#include "Utils.h"
#include "Inventory.h"
#include <GL/gl.h>
namespace ZL {
@ -10,7 +8,7 @@ namespace ZL {
int Environment::windowHeaderHeight = 0;
int Environment::width = 0;
int Environment::height = 0;
float Environment::zoom = 3.f;
float Environment::zoom = 20.f;
bool Environment::leftPressed = false;
bool Environment::rightPressed = false;
@ -23,34 +21,14 @@ Vector3f Environment::characterPos = {0, 0, 0};
float Environment::cameraPhi = 0.f;
float Environment::cameraAlpha = 0.3*M_PI / 2.0;
float Environment::violaCurrentIdleFrame = 0.f;
int Environment::violaLastIdleFrame = -1;
float Environment::violaCurrentWalkFrame = 0.f;
int Environment::violaLastWalkFrame = 0;
int Environment::violaCurrentAnimation = 0;
float Environment::violaAngleAroundY = 0.f;
bool Environment::settings_inverseVertical = false;
SDL_Window* Environment::window = nullptr;
float Environment::cameraDefaultVerticalShift = -150.f;
float Environment::itemDefaultVerticalShift = -80.f;
bool Environment::showMouse = false;
bool Environment::exitGameLoop = false;
bool Environment::gameIsLoading = true;
float Environment::monsterTimer = 0.0;
int Environment::monsterState = 1;
bool Environment::finalIsGood = false;
bool Environment::finalIsBad = false;
bool Environment::goToLevel3 = false;
float Environment::goTolevel3Timer = 0;
} // namespace ZL

View File

@ -24,38 +24,15 @@ public:
static float cameraPhi;
static float cameraAlpha;
//Viola
static float violaCurrentIdleFrame;
static float violaCurrentWalkFrame;
static int violaLastIdleFrame;
static int violaLastWalkFrame;
static int violaCurrentAnimation;
static float violaAngleAroundY;
static bool settings_inverseVertical;
static SDL_Window* window;
static float cameraDefaultVerticalShift;
static float itemDefaultVerticalShift;
static bool showMouse;
static bool exitGameLoop;
static bool gameIsLoading;
static float monsterTimer;
static int monsterState;
static bool finalIsGood;
static bool finalIsBad;
static bool goToLevel3;
static float goTolevel3Timer;
};

127
Game.cpp
View File

@ -2,20 +2,20 @@
#include "AnimatedModel.h"
#include "BoneAnimatedModel.h"
#include "Utils.h"
#include "Inventory.h" // Add this include
#include "OpenGlExtensions.h"
#include <iostream>
#include "TextureManager.h"
#include "TextModel.h"
namespace ZL
{
extern const char* CONST_ZIP_FILE;
const char* CONST_ZIP_FILE = "";
Game::Game()
: window(nullptr)
, glContext(nullptr)
, newTickCount(0)
, lastTickCount(0)
, renderer(renderSystem.getRenderer()) // Инициализация ссылки на renderer
{
}
@ -35,65 +35,71 @@ void Game::setup() {
ZL::BindOpenGlFunctions();
ZL::CheckGlError();
std::cout << "Hello 1" << std::endl;
// Initialize renderer
#ifdef EMSCRIPTEN
renderer.shaderManager.AddShaderFromFiles("default", "./default.vertex", "./default_web.fragment", CONST_ZIP_FILE);
renderer.shaderManager.AddShaderFromFiles("defaultColor", "./defaultColor.vertex", "./defaultColor_web.fragment", CONST_ZIP_FILE);
renderer.shaderManager.AddShaderFromFiles("defaultHideCam", "./defaultHideCam.vertex", "./defaultHideCam_web.fragment", CONST_ZIP_FILE);
renderer.shaderManager.AddShaderFromFiles("default", "./shaders/default.vertex", "./shaders/default_web.fragment", CONST_ZIP_FILE);
renderer.shaderManager.AddShaderFromFiles("defaultColor", "./shaders/defaultColor.vertex", "./shaders/defaultColor_web.fragment", CONST_ZIP_FILE);
#else
renderer.shaderManager.AddShaderFromFiles("default", "./default.vertex", "./default_desktop.fragment", CONST_ZIP_FILE);
renderer.shaderManager.AddShaderFromFiles("defaultColor", "./defaultColor.vertex", "./defaultColor_desktop.fragment", CONST_ZIP_FILE);
renderer.shaderManager.AddShaderFromFiles("defaultHideCam", "./defaultHideCam.vertex", "./defaultHideCam_desktop.fragment", CONST_ZIP_FILE);
renderer.shaderManager.AddShaderFromFiles("default", "./shaders/default.vertex", "./shaders/default_desktop.fragment", CONST_ZIP_FILE);
renderer.shaderManager.AddShaderFromFiles("defaultColor", "./shaders/defaultColor.vertex", "./shaders/defaultColor_desktop.fragment", CONST_ZIP_FILE);
#endif
//Load texture
spaceshipTexture = std::make_unique<Texture>(CreateTextureDataFromPng("./resources/sship001x.png"));
spaceshipBase = LoadFromTextFile02("./resources/spaceship004.txt");
spaceshipBase.RotateByMatrix(QuatToMatrix(QuatFromRotateAroundY(M_PI / 2.0)));
spaceship.AssignFrom(spaceshipBase);
spaceship.RefreshVBO();
// Initialize game objects
std::cout << "Hello 2" << std::endl;
gameObjects.initialize();
std::cout << "Hello 3" << std::endl;
renderer.InitOpenGL();
}
void Game::drawScene() {
// Вместо прямого рисования используем RenderSystem
renderSystem.drawScene(gameObjects);
static const std::string defaultShaderName = "default";
static const std::string vPositionName = "vPosition";
static const std::string vTexCoordName = "vTexCoord";
static const std::string textureUniformName = "Texture";
glClearColor(0.0f, 0.5f, 1.0f, 1.0f);
glClear(GL_DEPTH_BUFFER_BIT | GL_COLOR_BUFFER_BIT);
glViewport(0, 0, Environment::width, Environment::height);
CheckGlError();
renderer.shaderManager.PushShader(defaultShaderName);
renderer.RenderUniform1i(textureUniformName, 0);
renderer.EnableVertexAttribArray(vPositionName);
renderer.EnableVertexAttribArray(vTexCoordName);
renderer.PushPerspectiveProjectionMatrix(1.0 / 1.5,
static_cast<float>(Environment::width) / static_cast<float>(Environment::height),
1, 1000);
renderer.PushMatrix();
renderer.LoadIdentity();
renderer.TranslateMatrix({ 0,0, -1.0f*Environment::zoom });
renderer.RotateMatrix(QuatFromRotateAroundX(M_PI/6.0));
//renderer.RotateMatrix(QuatFromRotateAroundX(Environment::cameraAlpha));
glBindTexture(GL_TEXTURE_2D, spaceshipTexture->getTexID());
renderer.DrawVertexRenderStruct(spaceship);
renderer.PopMatrix();
renderer.PopProjectionMatrix();
renderer.DisableVertexAttribArray(vPositionName);
renderer.DisableVertexAttribArray(vTexCoordName);
renderer.shaderManager.PopShader();
CheckGlError();
}
void Game::processTickCount() {
if (Environment::finalIsGood)
{
return;
}
if (Environment::finalIsBad)
{
return;
}
if (Environment::gameIsLoading)
{
if (gameObjects.loadingFunctions.size() != 0)
{
bool result = gameObjects.loadingFunctions.begin()->operator()();
if (result)
{
gameObjects.loadingFunctions.erase(gameObjects.loadingFunctions.begin());
}
}
else
{
Environment::gameIsLoading = false;
}
return;
}
if (lastTickCount == 0) {
lastTickCount = SDL_GetTicks64();
return;
@ -104,7 +110,9 @@ void Game::processTickCount() {
size_t delta = (newTickCount - lastTickCount > CONST_MAX_TIME_INTERVAL) ?
CONST_MAX_TIME_INTERVAL : newTickCount - lastTickCount;
gameObjects.updateScene(delta);
//gameObjects.updateScene(delta);
Environment::cameraAlpha = Environment::cameraAlpha + delta * M_PI / 10000.f;
lastTickCount = newTickCount;
}
@ -127,22 +135,29 @@ void Game::update() {
SDL_Event event;
while (SDL_PollEvent(&event)) {
if (event.type == SDL_QUIT) {
if (gameObjects.loadingThread.joinable())
{
gameObjects.loadingThread.join();
}
#ifdef AUDIO
gameObjects.audioPlayerAsync.exit();
#endif
Environment::exitGameLoop = true;
}
else if (event.type == SDL_MOUSEWHEEL) {
static const float zoomstep = 2.0f;
if (event.wheel.y > 0) {
Environment::zoom -= zoomstep;
}
else if (event.wheel.y < 0) {
Environment::zoom += zoomstep;
}
if (Environment::zoom < zoomstep) {
Environment::zoom = zoomstep;
}
/*if (Environment::zoom > 4) {
Environment::zoom = 4;
}*/
if (!Environment::gameIsLoading)
{
gameObjects.handleEvent(event);
//this->modelMeshRender.data.Scale(0.5);
//this->modelMeshRender.RefreshVBO();
}
}
render();
}

13
Game.h
View File

@ -1,9 +1,9 @@
#pragma once
#include "OpenGlExtensions.h"
#include "GameObjectManager.h"
#include "RenderSystem.h"
#include "Renderer.h"
#include "Environment.h"
#include "TextureManager.h"
namespace ZL {
@ -13,7 +13,6 @@ public:
~Game();
void setup();
void run();
void update();
void render();
@ -25,15 +24,17 @@ private:
SDL_Window* window;
SDL_GLContext glContext;
RenderSystem renderSystem;
GameObjectManager gameObjects;
Renderer& renderer; // Ссылка на renderer из RenderSystem
Renderer renderer;
size_t newTickCount;
size_t lastTickCount;
static const size_t CONST_TIMER_INTERVAL = 10;
static const size_t CONST_MAX_TIME_INTERVAL = 1000;
std::shared_ptr<Texture> spaceshipTexture;
VertexDataStruct spaceshipBase;
VertexRenderStruct spaceship;
};
} // namespace ZL

View File

@ -1,928 +0,0 @@
#include "GameObjectManager.h"
#include "Environment.h"
#include "ObjLoader.h"
#include "Inventory.h"
#include "QuestScripts.h"
#include "TextModel.h" // Add this include for LoadFromTextFile
#include <iostream>
namespace ZL {
const float GameObjectManager::INVENTORY_ICON_SIZE = 44.0f;
const float GameObjectManager::INVENTORY_MARGIN = 44.0f;
const float GameObjectManager::SELECTED_CUBE_ICON_SIZE = 244.0f;
const float GameObjectManager::SELECTED_CUBE_MARGIN = 50.0f;
const char* CONST_ZIP_FILE = ""; //CONST_ZIP_FILE
void GameObjectManager::initializeLoadingScreen()
{
loadingScreenTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp24("./loading.bmp", CONST_ZIP_FILE));
loadingScreenMesh = CreateRect2D(
{ Environment::width / 2.f, Environment::height / 2.f },
{ Environment::width / 2.f, Environment::height / 2.f },
0.5f
);
loadingScreenMeshMutable.AssignFrom(loadingScreenMesh);
loadingScreenMeshMutable.RefreshVBO();
}
void GameObjectManager::initialize() {
initializeLoadingScreen();
std::function<bool()> loadingFunction1 = [this]()
{
current_room_index = 0;
objects_in_inventory = 0;
bearName = "";
current_room_index = 0;
objects_in_inventory = 0;
//coneTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp24("./conus.bmp"));
// Load models
/*
colorCubeMesh = CreateCube3D(5.0);
colorCubeMeshMutable.data = CreateCube3D(5.0);
colorCubeMeshMutable.RefreshVBO();
*/
return true;
};
loadingThread = std::thread([this]() {
/*
preloadedRoomMeshArr.resize(3);
preloadedRoomMeshArr[0] = ZL::LoadFromTextFile("./oneroom001.txt", CONST_ZIP_FILE);
preloadedRoomMeshArr[0].Scale(10);
preloadedRoomMeshArr[0].Move(Vector3f{ 0, 93, 0 });
preloadedRoomMeshArr[1] = ZL::LoadFromTextFile("./secondroom001.txt", CONST_ZIP_FILE);
preloadedRoomMeshArr[1].Scale(10);
preloadedRoomMeshArr[1].Move(Vector3f{ 0, 93, 0 });
preloadedRoomMeshArr[2] = ZL::LoadFromTextFile("./thirdroom1.txt", CONST_ZIP_FILE);
preloadedRoomMeshArr[2].Scale(10);
preloadedRoomMeshArr[2].Move(Vector3f{ 0, 93, 0 });
*/
violaIdleModel.LoadFromFile("./idleviola_uv010.txt", CONST_ZIP_FILE);
violaWalkModel.LoadFromFile("./walkviola_uv010.txt", CONST_ZIP_FILE);
sideThreadLoadingCompleted = true;
});
std::function<bool()> loadingFunction2 = [this]()
{
return sideThreadLoadingCompleted;
};
std::function<bool()> loadingFunction3 = [this]()
{
/*
// Create active object
ActiveObject cubeForFirstRoomT;
cubeForFirstRoomT.name = "cube_T";
cubeForFirstRoomT.activeObjectMesh = ZL::LoadFromTextFile("./cube001.txt", CONST_ZIP_FILE);
cubeForFirstRoomT.activeObjectMesh.RotateByMatrix(QuatToMatrix(QuatFromRotateAroundZ(M_PI * 0.5)));
cubeForFirstRoomT.activeObjectMesh.Scale(10);
cubeForFirstRoomT.activeObjectMeshMutable.AssignFrom(cubeForFirstRoomT.activeObjectMesh);
cubeForFirstRoomT.activeObjectMeshMutable.RefreshVBO();
cubeForFirstRoomT.objectPos = Vector3f{ -190, 90 , 280 };
cubeForFirstRoomT.activeObjectTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp24("./Material_Base_color_1001-_2_.bmp", CONST_ZIP_FILE));
cubeForFirstRoomT.activeObjectScreenTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp32("./hand.bmp32", CONST_ZIP_FILE));
cubeForFirstRoomT.activeObjectScreenMesh = CreateRect2D({ 0.f, 0.f }, { 64.f, 64.f }, 0.5);
cubeForFirstRoomT.activeObjectScreenMeshMutable.AssignFrom(cubeForFirstRoomT.activeObjectScreenMesh);
cubeForFirstRoomT.activeObjectScreenMeshMutable.RefreshVBO();
cubeForFirstRoomT.inventoryIconTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp32("./textures/inventory_objects/cubic_T_icon.bmp32", CONST_ZIP_FILE));
ActiveObject cubeForFirstRoomO;
cubeForFirstRoomO.name = "cube_O";
cubeForFirstRoomO.activeObjectMesh = ZL::LoadFromTextFile("./cube001.txt", CONST_ZIP_FILE);
cubeForFirstRoomO.activeObjectMesh.RotateByMatrix(QuatToMatrix(QuatFromRotateAroundZ(M_PI * 0.5)));
cubeForFirstRoomO.activeObjectMesh.RotateByMatrix(QuatToMatrix(QuatFromRotateAroundX(M_PI * 1.5)));
cubeForFirstRoomO.activeObjectMesh.Scale(10);
cubeForFirstRoomO.activeObjectMeshMutable.AssignFrom(cubeForFirstRoomO.activeObjectMesh);
cubeForFirstRoomO.activeObjectMeshMutable.RefreshVBO();
cubeForFirstRoomO.objectPos = Vector3f{ 185, 90 , -365 };
cubeForFirstRoomO.activeObjectTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp24("./Material_Base_color_1001-_3.bmp", CONST_ZIP_FILE));
cubeForFirstRoomO.activeObjectScreenTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp32("./hand.bmp32", CONST_ZIP_FILE));
cubeForFirstRoomO.activeObjectScreenMesh = CreateRect2D({ 0.f, 0.f }, { 64.f, 64.f }, 0.5);
cubeForFirstRoomO.activeObjectScreenMeshMutable.AssignFrom(cubeForFirstRoomO.activeObjectScreenMesh);
cubeForFirstRoomO.activeObjectScreenMeshMutable.RefreshVBO();
cubeForFirstRoomO.inventoryIconTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp32("./textures/inventory_objects/cubic_O_icon.bmp32", CONST_ZIP_FILE));
ActiveObject cubeForFirstRoomM;
cubeForFirstRoomM.name = "cube_M";
cubeForFirstRoomM.activeObjectMesh = ZL::LoadFromTextFile("./cube001.txt", CONST_ZIP_FILE);
cubeForFirstRoomO.activeObjectMesh.RotateByMatrix(QuatToMatrix(QuatFromRotateAroundZ(M_PI * 0.5)));
cubeForFirstRoomO.activeObjectMesh.RotateByMatrix(QuatToMatrix(QuatFromRotateAroundX(M_PI)));
cubeForFirstRoomM.activeObjectMesh.Scale(10);
cubeForFirstRoomM.activeObjectMeshMutable.AssignFrom(cubeForFirstRoomO.activeObjectMesh);
cubeForFirstRoomM.activeObjectMeshMutable.RefreshVBO();
cubeForFirstRoomM.objectPos = Vector3f{ 200, 95 , 230 };
cubeForFirstRoomM.activeObjectTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp24("./Material_Base_color_1001_4.bmp", CONST_ZIP_FILE));
cubeForFirstRoomM.activeObjectScreenTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp32("./hand.bmp32", CONST_ZIP_FILE));
cubeForFirstRoomM.activeObjectScreenMesh = CreateRect2D({ 0.f, 0.f }, { 64.f, 64.f }, 0.5);
cubeForFirstRoomM.activeObjectScreenMeshMutable.AssignFrom(cubeForFirstRoomO.activeObjectScreenMesh);
cubeForFirstRoomM.activeObjectScreenMeshMutable.RefreshVBO();
cubeForFirstRoomM.inventoryIconTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp32("./textures/inventory_objects/cubic_M_icon.bmp32", CONST_ZIP_FILE));
ActiveObject lampe;
lampe.name = "lampe";
lampe.activeObjectMesh = ZL::LoadFromTextFile("./lighter.txt", CONST_ZIP_FILE); // Add ZL:: namespace
lampe.activeObjectMesh.Scale(7);
lampe.activeObjectMeshMutable.AssignFrom(lampe.activeObjectMesh);
lampe.activeObjectMeshMutable.RefreshVBO();
lampe.objectPos = Vector3f{ 85, 30, 43 };
lampe.activeObjectTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp24("./temno.bmp", CONST_ZIP_FILE));
lampe.activeObjectScreenTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp32("./hand.bmp32", CONST_ZIP_FILE));
lampe.activeObjectScreenMesh = CreateRect2D({ 0.f, 0.f }, { 64.f, 64.f }, 0.5);
lampe.activeObjectScreenMeshMutable.AssignFrom(lampe.activeObjectScreenMesh);
lampe.activeObjectScreenMeshMutable.RefreshVBO();
lampe.inventoryIconTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp32("./textures/inventory_objects/cubic_T_icon.bmp32", CONST_ZIP_FILE));
ActiveObject carToy;
carToy.name = "carToy";
carToy.activeObjectMesh = ZL::LoadFromTextFile("./car.txt", CONST_ZIP_FILE); // Add ZL:: namespace
carToy.activeObjectMesh.Scale(12);
carToy.activeObjectMeshMutable.AssignFrom(carToy.activeObjectMesh);
carToy.activeObjectMeshMutable.RefreshVBO();
carToy.objectPos = Vector3f{ 300, 0, 315 };
carToy.activeObjectTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp24("./Material.001_Base_color_1001_5.bmp", CONST_ZIP_FILE));
carToy.activeObjectScreenTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp32("./hand.bmp32", CONST_ZIP_FILE));
carToy.activeObjectScreenMesh = CreateRect2D({ 0.f, 0.f }, { 64.f, 64.f }, 0.5);
carToy.activeObjectScreenMeshMutable.AssignFrom(carToy.activeObjectScreenMesh);
carToy.activeObjectScreenMeshMutable.RefreshVBO();
carToy.inventoryIconTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp32("./textures/inventory_objects/battery.bmp32", CONST_ZIP_FILE));
ActiveObject lock;
lock.name = "lockFriend";
lock.activeObjectMesh = ZL::LoadFromTextFile("./lock.txt", CONST_ZIP_FILE); // Add ZL:: namespace
lock.activeObjectMesh.Scale(2);
lock.activeObjectMeshMutable.AssignFrom(lock.activeObjectMesh);
lock.activeObjectMeshMutable.RefreshVBO();
lock.objectPos = Vector3f{ 101, 100, 255 };
lock.activeObjectTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp24("./temno.bmp", CONST_ZIP_FILE));
lock.activeObjectScreenTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp32("./hand.bmp32", CONST_ZIP_FILE));
lock.activeObjectScreenMesh = CreateRect2D({ 0.f, 0.f }, { 64.f, 64.f }, 0.5);
lock.activeObjectScreenMeshMutable.AssignFrom(lock.activeObjectScreenMesh);
lock.activeObjectScreenMeshMutable.RefreshVBO();
lock.inventoryIconTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp32("./textures/inventory_objects/battery.bmp32", CONST_ZIP_FILE));
ActiveObject door;
door.name = "doorGlory";
door.activeObjectMesh = ZL::LoadFromTextFile("./door.txt", CONST_ZIP_FILE); // Add ZL:: namespace
door.activeObjectMesh.Scale(60);
door.activeObjectMesh.RotateByMatrix(QuatToMatrix(QuatFromRotateAroundY(-M_PI * 0.5)));
door.activeObjectMeshMutable.AssignFrom(door.activeObjectMesh);
door.activeObjectMeshMutable.RefreshVBO();
door.objectPos = Vector3f{ -350, -40, -60 };
door.activeObjectTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp24("./door.bmp", CONST_ZIP_FILE));
door.activeObjectScreenTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp32("./hand.bmp32", CONST_ZIP_FILE));
door.activeObjectScreenMesh = CreateRect2D({ 0.f, 0.f }, { 64.f, 64.f }, 0.5);
door.activeObjectScreenMeshMutable.AssignFrom(door.activeObjectScreenMesh);
door.activeObjectScreenMeshMutable.RefreshVBO();
door.inventoryIconTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp32("./textures/inventory_objects/battery.bmp32", CONST_ZIP_FILE));
Room room_1;
room_1.roomTexture = std::make_shared<Texture>(CreateTextureDataFromBmp24("./Material_Base_color_1001.bmp", CONST_ZIP_FILE));
room_1.objects.push_back(cubeForFirstRoomT);
room_1.objects.push_back(cubeForFirstRoomO);
room_1.objects.push_back(cubeForFirstRoomM);
room_1.sound_name = "lullaby-music-vol20-186394--online-audio-convert.com.ogg";
room_1.roomLogic = createRoom1Logic();
room_1.textMesh = preloadedRoomMeshArr[0];
room_1.textMeshMutable.AssignFrom(room_1.textMesh);
room_1.collisionMgr.setRoomBoundary(790, 790);
room_1.collisionMgr.addCollider(std::make_shared<RectangleCollider>(Vector3f{ 80, 0, 200 }, Vector3f{ 400, 0, 400 }));
room_1.collisionMgr.addCollider(std::make_shared<RectangleCollider>(Vector3f{ -220, 0, 165 }, Vector3f{ -143, 0, 230 }));
room_1.collisionMgr.addCollider(std::make_shared<RectangleCollider>(Vector3f{ -400, 0, 125 }, Vector3f{ -121, 0, 400 }));
room_1.collisionMgr.addCollider(std::make_shared<RectangleCollider>(Vector3f{ -380, 0, -92 }, Vector3f{ -240, 0, 100 }));
room_1.collisionMgr.addCollider(std::make_shared<RectangleCollider>(Vector3f{ -399, 0, -390 }, Vector3f{ -236, 0, -100 }));
room_1.collisionMgr.addCollider(std::make_shared<RectangleCollider>(Vector3f{ -220, 0, -400 }, Vector3f{ -150, 0, -230 }));
room_1.collisionMgr.addCollider(std::make_shared<RectangleCollider>(Vector3f{ 156, 0, -400 }, Vector3f{ 380, 0, -360 }));
rooms.push_back(room_1);
//aoMgr.addActiveObject(ao1);
Room room_2;
room_2.roomTexture = std::make_shared<Texture>(CreateTextureDataFromBmp24("./seconroom.bmp", CONST_ZIP_FILE));
room_2.objects.push_back(lampe);
room_2.objects.push_back(carToy);
room_2.sound_name = "unholy-choir-1-279337--online-audio-convert.com.ogg";
room_2.roomLogic = createRoom2Logic();
room_2.textMesh = preloadedRoomMeshArr[1];
room_2.textMeshMutable.AssignFrom(room_2.textMesh);
room_2.collisionMgr.setRoomBoundary(790, 790);
room_2.collisionMgr.addCollider(std::make_shared<RectangleCollider>(Vector3f{ -227, 0, -166 }, Vector3f{ 398, 0, -154 }));
room_2.collisionMgr.addCollider(std::make_shared<RectangleCollider>(Vector3f{ -328, 0, 182 }, Vector3f{ -216, 0, 332 }));
room_2.collisionMgr.addCollider(std::make_shared<RectangleCollider>(Vector3f{ -227, 0, -400 }, Vector3f{ -208, 0, -165}));
room_2.collisionMgr.addCollider(std::make_shared<RectangleCollider>(Vector3f{ 263, 0, 295 }, Vector3f{ 303, 0, 335 }));
rooms.push_back(room_2);
activeObjects = rooms[current_room_index].objects;
Room room_3;
room_3.roomTexture = std::make_shared<Texture>(CreateTextureDataFromBmp24("./DefaultMaterial_Base_color_1001.bmp", CONST_ZIP_FILE));
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(door);
room_3.roomLogic = createRoom3Logic();
room_3.textMesh = preloadedRoomMeshArr[2];
room_3.textMeshMutable.AssignFrom(room_3.textMesh);
room_3.collisionMgr.setRoomBoundary(790, 790);
rooms.push_back(room_3);
activeObjects = rooms[current_room_index].objects;*/
// Initialize audio
/*
audioPlayer = std::make_unique<AudioPlayer>();
if (audioPlayer) {
audioPlayer->playMusic(rooms[current_room_index].sound_name);
}*/
#ifdef AUDIO
audioPlayerAsync.resetAsync();
audioPlayerAsync.playMusicAsync(rooms[current_room_index].sound_name);
#endif
// Initialize inventory
inventoryIconMesh = CreateRect2D(
{ 0.0f, 40.0f },
{ INVENTORY_ICON_SIZE / 2, INVENTORY_ICON_SIZE / 2 },
0.5f
);
inventoryIconMeshMutable.AssignFrom(inventoryIconMesh);
inventoryIconMeshMutable.RefreshVBO();
//roomTexturePtr = rooms[current_room_index].roomTexture;
/*
monsterTexturePtr1 = std::make_shared<Texture>(CreateTextureDataFromBmp32("./monster001.bmp32", CONST_ZIP_FILE));
monsterTexturePtr2 = std::make_shared<Texture>(CreateTextureDataFromBmp32("./monster002.bmp32", CONST_ZIP_FILE));
monsterScreenMesh = CreateRect2D({ 0.f, 0.f }, { 300.f, 300.f }, 0.5);
monsterScreenMeshMutable.AssignFrom(monsterScreenMesh);
monsterScreenMeshMutable.RefreshVBO();
*/
violaTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp24("./viola.bmp", CONST_ZIP_FILE));
/*
if (!dialogTextures.empty()) { // Проверяем, есть ли диалоги
dialogTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp24(dialogTextures[dialogIndex], CONST_ZIP_FILE));
isDialogActive = true;
}*/
//batteryDialogTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp24("./battery_dialog.bmp", CONST_ZIP_FILE));
//finalGoodTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp24("./final_good.bmp", CONST_ZIP_FILE));
//finalBadTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp24("./final_bad.bmp", CONST_ZIP_FILE));
landMesh = CreateRect2D({ -6000.f, -6000.f }, { 6000.f, 6000.f }, 0.0);
landMesh.RotateByMatrix(QuatToMatrix(QuatFromRotateAroundX(M_PI * 0.5)));
landMesh.Move({ 5000.f, 0.f, -5000.f});
landMeshRender.AssignFrom(landMesh);
landMeshRender.RefreshVBO();
landTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp24("./land.bmp", CONST_ZIP_FILE));
//modelMesh = ZL::LoadFromTextFile("./inai001.txt", CONST_ZIP_FILE);
//modelMesh.Scale(45);
//modelMesh.Move({ 0, 430, 600 });
modelMesh = ZL::LoadFromTextFile("./model001.txt", CONST_ZIP_FILE);
//modelMesh.RotateByMatrix(QuatToMatrix(QuatFromRotateAroundZ(M_PI * 0.5)));
modelMesh.Scale(40);
modelMeshRender.AssignFrom(modelMesh);
modelMeshRender.RefreshVBO();
//modelTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp24("./Cube.bmp", CONST_ZIP_FILE));
modelTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp24("./model001.bmp", CONST_ZIP_FILE));
//SDL_ShowCursor(SDL_DISABLE);
SDL_SetRelativeMouseMode(SDL_TRUE);
return true;
};
loadingFunctions.push_back(loadingFunction1);
loadingFunctions.push_back(loadingFunction2);
loadingFunctions.push_back(loadingFunction3);
}
void GameObjectManager::switch_room(int index){
current_room_index = index;
//roomTexturePtr = rooms[current_room_index].roomTexture;
//audioPlayer.reset(); // This deletes the current AudioPlayer
// Reinitialize it
/*audioPlayer = std::make_unique<AudioPlayer>();
if (audioPlayer) {
audioPlayer->playMusic(rooms[current_room_index].sound_name);
}*/
#ifdef AUDIO
audioPlayerAsync.stopAsync();
audioPlayerAsync.resetAsync();
audioPlayerAsync.playMusicAsync(rooms[current_room_index].sound_name);
#endif
activeObjects = rooms[current_room_index].objects;
std::cout << "Current music" << rooms[current_room_index].sound_name << std::endl;
Environment::cameraShift = Vector3f{};
Environment::characterPos = Vector3f{};
}
void GameObjectManager::handleEvent(const SDL_Event& event) {
// debug room switching
/*if (event.type == SDL_MOUSEBUTTONDOWN && event.button.button == SDL_BUTTON_RIGHT) {
}
else */if (event.type == SDL_MOUSEBUTTONDOWN) {
if (Environment::finalIsBad || Environment::finalIsGood)
{
return;
}
/*
if (isDialogActive) {
dialogIndex++;
if (dialogIndex < dialogTextures.size()) {
dialogTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp24(dialogTextures[dialogIndex], CONST_ZIP_FILE));
}
else {
isDialogActive = false;
}
}
else if (isBatteryDialogActive) {
isBatteryDialogActive = false;
}
else
{
const auto highlightedObjects = rooms[current_room_index].findByHighlighted(true);
if (InventoryItem* item = GetItemSelected(true)) {
std::cout << item->name << std::endl;
if (current_room_index == 0) {
if (bearName.length() <= 3) {
if (item->name == "cube_T") {
bearName += "T";
selectedCubes.push_back(*item);
gInventoryMap.erase(item->name);
objects_in_inventory--;
}
else if (item->name == "cube_O") {
bearName += "O";
selectedCubes.push_back(*item);
gInventoryMap.erase(item->name);
objects_in_inventory--;
}
else if (item->name == "cube_M") {
bearName += "M";
selectedCubes.push_back(*item);
gInventoryMap.erase(item->name);
objects_in_inventory--;
}
}
}
else if (current_room_index == 1) {
if (InventoryItem* item = GetItemSelected(true)) {
std::cout << item->name << std::endl;
if (item->name == "carToy") {
// Проверить, наведена ли мышь на лампу
const auto highlightedObjects = rooms[current_room_index].findByHighlighted(true);
std::cout << highlightedObjects.size() << std::endl;
for (auto* ao : highlightedObjects) {
if (ao && ao->name == "lampe") {
// Create a new lamp object with updated texture
ActiveObject updatedLamp = *ao;
// Change from dark to lit texture
updatedLamp.activeObjectTexturePtr = std::make_shared<Texture>(CreateTextureDataFromBmp24("./base_Base_color_1001.bmp", CONST_ZIP_FILE));
// Replace the old lamp with updated one
rooms[current_room_index].removeByPtr(ao);
rooms[current_room_index].objects.push_back(updatedLamp);
activeObjects = rooms[current_room_index].objects;
// Remove car from inventory
gInventoryMap.erase(item->name);
objects_in_inventory--;
// Play sound effect
// audioPlayerAsync.playSoundAsync("lamp_on.ogg");
//AddItemToInventory(ao->name, ao->inventoryIconTexturePtr, objects_in_inventory+1);
//objects_in_inventory++;
//switch_room(2);
Environment::goToLevel3 = true;
break;
}
}
}
}
}
else if (current_room_index == 2) {
if (InventoryItem* item = GetItemSelected(true)) {
if (item->name == "lockFriend") {}
}
}
}
else {
const auto highlightedObjects = rooms[current_room_index].findByHighlighted(true);
for (auto* ao : highlightedObjects) {
if (!ao) {
continue;
}
if (ao->name != "lampe" && ao->name != "doorGlory" && ao->name != "lockFriend") {
AddItemToInventory(ao->name, ao->inventoryIconTexturePtr, objects_in_inventory + 1);
objects_in_inventory++;
rooms[current_room_index].removeByPtr(ao);
activeObjects = rooms[current_room_index].objects;
}
else if (current_room_index == 1 && ao->name == "lampe")
{
if (isBatteryDialogActive == false)
{
isBatteryDialogActive = true;
}
}
else if (current_room_index == 2 && ao->name == "doorGlory") {
hasMadeChoise = true;
hasChoisedFriendship = false;
// debug switching
Environment::finalIsBad = true;
}
else if (current_room_index == 2 && ao->name == "lockFriend") {
hasMadeChoise = true;
hasChoisedFriendship = true;
// debug switching
Environment::finalIsGood = true;
}
//aoMgr.removeByName(ao->name);
}
// bx.Interpolate(animationCounter);
// animationCounter += 2;
}
}*/
}
else if (event.type == SDL_MOUSEWHEEL) {
static const float zoomstep = 2.0f;
if (event.wheel.y > 0) {
Environment::zoom -= zoomstep;
}
else if (event.wheel.y < 0) {
Environment::zoom += zoomstep;
}
if (Environment::zoom < zoomstep) {
Environment::zoom = zoomstep;
}
/*if (Environment::zoom > 4) {
Environment::zoom = 4;
}*/
//this->modelMeshRender.data.Scale(0.5);
//this->modelMeshRender.RefreshVBO();
}
else if (event.type == SDL_KEYDOWN) {
switch (event.key.keysym.sym) {
case SDLK_i:
Environment::settings_inverseVertical = !Environment::settings_inverseVertical;
break;
case SDLK_SPACE:
Environment::showMouse = !Environment::showMouse;
if (Environment::showMouse) {
SDL_SetRelativeMouseMode(SDL_FALSE);
}
else {
SDL_SetRelativeMouseMode(SDL_TRUE);
lastMouseX = 0;
lastMouseY = 0;
}
break;
case SDLK_ESCAPE:
case SDLK_q:
if (loadingThread.joinable())
{
loadingThread.join();
}
#ifdef AUDIO
audioPlayerAsync.exit();
#endif
Environment::exitGameLoop = true;
break;
case SDLK_LEFT:
case SDLK_a:
if (Environment::finalIsBad || Environment::finalIsGood)
{
return;
}
Environment::leftPressed = true;
#ifdef AUDIO
audioPlayerAsync.playSoundAsync("walk.ogg"); // Заменено
#endif
if (Environment::violaCurrentAnimation == 0) {
Environment::violaCurrentAnimation = 1;
Environment::violaLastWalkFrame = -1;
}
break;
case SDLK_RIGHT:
case SDLK_d:
if (Environment::finalIsBad || Environment::finalIsGood)
{
return;
}
Environment::rightPressed = true;
#ifdef AUDIO
audioPlayerAsync.playSoundAsync("walk.ogg"); // Заменено
#endif
if (Environment::violaCurrentAnimation == 0) {
Environment::violaCurrentAnimation = 1;
Environment::violaLastWalkFrame = -1;
}
break;
case SDLK_UP:
case SDLK_w:
if (Environment::finalIsBad || Environment::finalIsGood)
{
return;
}
Environment::upPressed = true;
#ifdef AUDIO
audioPlayerAsync.playSoundAsync("walk.ogg"); // Заменено
#endif
if (Environment::violaCurrentAnimation == 0) {
Environment::violaCurrentAnimation = 1;
Environment::violaLastWalkFrame = -1;
}
break;
case SDLK_DOWN:
case SDLK_s:
if (Environment::finalIsBad || Environment::finalIsGood)
{
return;
}
Environment::downPressed = true;
#ifdef AUDIO
audioPlayerAsync.playSoundAsync("walk.ogg"); // Заменено
#endif
if (Environment::violaCurrentAnimation == 0) {
Environment::violaCurrentAnimation = 1;
Environment::violaLastWalkFrame = -1;
}
break;
case SDLK_1:
case SDLK_2:
case SDLK_3:
case SDLK_4:
case SDLK_5:
case SDLK_6:
case SDLK_7:
case SDLK_8:
case SDLK_9:
{
if (Environment::finalIsBad || Environment::finalIsGood)
{
return;
}
UnselectAllItems();
if (InventoryItem* item = GetItemByHotkey(event.key.keysym.sym - SDLK_1 + 1)) {
item->isSelected = true;
}
}
break;
case SDLK_RSHIFT:
case SDLK_LSHIFT: {
// Switch to next room
/*int nextRoom = current_room_index + 1;
if (nextRoom < rooms.size()) {
switch_room(nextRoom);
}*/
break;
}
}
}
else if (event.type == SDL_KEYUP) {
switch (event.key.keysym.sym) {
case SDLK_LEFT:
case SDLK_a:
if (Environment::finalIsBad || Environment::finalIsGood)
{
return;
}
Environment::leftPressed = false;
if (!Environment::leftPressed && !Environment::rightPressed && !Environment::upPressed && !Environment::downPressed) {
if (Environment::violaCurrentAnimation == 1) {
Environment::violaCurrentAnimation = 0;
Environment::violaCurrentIdleFrame = -1;
}
}
break;
case SDLK_RIGHT:
case SDLK_d:
if (Environment::finalIsBad || Environment::finalIsGood)
{
return;
}
Environment::rightPressed = false;
if (!Environment::leftPressed && !Environment::rightPressed && !Environment::upPressed && !Environment::downPressed) {
if (Environment::violaCurrentAnimation == 1) {
Environment::violaCurrentAnimation = 0;
Environment::violaCurrentIdleFrame = -1;
}
}
break;
case SDLK_UP:
case SDLK_w:
if (Environment::finalIsBad || Environment::finalIsGood)
{
return;
}
Environment::upPressed = false;
if (!Environment::leftPressed && !Environment::rightPressed && !Environment::upPressed && !Environment::downPressed) {
if (Environment::violaCurrentAnimation == 1) {
Environment::violaCurrentAnimation = 0;
Environment::violaCurrentIdleFrame = -1;
}
}
break;
case SDLK_DOWN:
case SDLK_s:
if (Environment::finalIsBad || Environment::finalIsGood)
{
return;
}
Environment::downPressed = false;
if (!Environment::leftPressed && !Environment::rightPressed && !Environment::upPressed && !Environment::downPressed) {
if (Environment::violaCurrentAnimation == 1) {
Environment::violaCurrentAnimation = 0;
Environment::violaCurrentIdleFrame = -1;
}
}
//modelMesh.Move({ 0, 250, 100 });
//modelMeshRender.AssignFrom(modelMesh);
//modelMeshRender.RefreshVBO();
break;
}
}
if (event.type == SDL_MOUSEMOTION) {
if (!Environment::showMouse) {
int mouseX, mouseY;
SDL_GetRelativeMouseState(&mouseX, &mouseY);
float diffX = 0.01f * mouseX;
float diffY = 0.01f * mouseY;
Environment::cameraPhi += diffX;
if (Environment::settings_inverseVertical) {
Environment::cameraAlpha -= diffY;
}
else {
Environment::cameraAlpha += diffY;
}
if (Environment::cameraAlpha < 0.1 * M_PI / 2.0) {
Environment::cameraAlpha = 0.1 * M_PI / 2.0;
}
else if (Environment::cameraAlpha > 0.9 * M_PI / 2.0) {
Environment::cameraAlpha = 0.9 * M_PI / 2.0;
}
}
else {
lastMouseX = event.motion.x;
lastMouseY = event.motion.y;
}
}
}
void GameObjectManager::updateScene(size_t ms) {
const float SPEED = 0.1f;
Vector2f directionVector = { 0.f, SPEED }; // x and z
// Вычисляем новые координаты вектора
float x_new = directionVector.v[0] * cos(Environment::cameraPhi) - directionVector.v[1] * sin(Environment::cameraPhi);
float y_new = directionVector.v[0] * sin(Environment::cameraPhi) + directionVector.v[1] * cos(Environment::cameraPhi);
// Обновляем вектор
directionVector.v[0] = x_new;
directionVector.v[1] = y_new;
// Only forward is allowed
/*
if (Environment::leftPressed) {
Environment::cameraShift.v[0] += SPEED * ms;
}
if (Environment::rightPressed) {
Environment::cameraShift.v[0] -= SPEED * ms;
}
if (Environment::upPressed) {
Environment::cameraShift.v[2] += SPEED * ms;
}
if (Environment::downPressed) {
Environment::cameraShift.v[2] -= SPEED * ms;
}
*/
Vector3f newPosition = Environment::cameraShift;
if (Environment::upPressed) {
newPosition.v[0] += directionVector.v[0] * ms;
newPosition.v[2] += directionVector.v[1] * ms;
}
if (Environment::downPressed) {
newPosition.v[0] -= directionVector.v[0] * ms;
newPosition.v[2] -= directionVector.v[1] * ms;
}
if (Environment::rightPressed) {
newPosition.v[2] += directionVector.v[0] * ms;
newPosition.v[0] -= directionVector.v[1] * ms;
}
if (Environment::leftPressed) {
newPosition.v[2] -= directionVector.v[0] * ms;
newPosition.v[0] += directionVector.v[1] * ms;
}
Vector3f characterNewPos{-newPosition.v[0], -newPosition.v[1], -newPosition.v[2]};
std::cout << "Player position: x=" << characterNewPos.v[0]
<< ", y=" << characterNewPos.v[1]
<< ", z=" << characterNewPos.v[2] << "\r";
std::cout.flush();
Environment::cameraShift = newPosition;
Environment::characterPos = characterNewPos;
/*
// Заменяем проверку walkArea.isInside() на проверку через collisionMgr
if (rooms[current_room_index].collisionMgr.checkCollision(characterNewPos) == false) {
Environment::cameraShift = newPosition;
Environment::characterPos = characterNewPos;
}
for (auto& obj : rooms[current_room_index].objects)
{
float dist = sqrtf(
pow(Environment::characterPos.v[0] - obj.objectPos.v[0], 2) +
pow(Environment::characterPos.v[1] - obj.objectPos.v[1], 2) +
pow(Environment::characterPos.v[2] - obj.objectPos.v[2], 2)
);
obj.highlighted = (dist < 150.f);
}
if (rooms[current_room_index].roomLogic) {
rooms[current_room_index].roomLogic(*this, ms);
}
*/
if (Environment::violaCurrentAnimation == 0) {
Environment::violaCurrentIdleFrame += ms / 24.f;
//Environment::violaCurrentIdleFrame = 0;
while (Environment::violaCurrentIdleFrame >= 40) {
Environment::violaCurrentIdleFrame -= 40;
}
if (int(Environment::violaCurrentIdleFrame) != Environment::violaLastIdleFrame) {
violaIdleModel.Interpolate(int(Environment::violaCurrentIdleFrame));
Environment::violaLastIdleFrame = int(Environment::violaCurrentIdleFrame);
}
}
else if (Environment::violaCurrentAnimation == 1) {
Environment::violaCurrentWalkFrame += ms / 24.f;
while (Environment::violaCurrentWalkFrame >= 30) {
Environment::violaCurrentWalkFrame -= 30;
}
if (int(Environment::violaCurrentWalkFrame) != Environment::violaLastWalkFrame) {
violaWalkModel.Interpolate(int(Environment::violaCurrentWalkFrame));
Environment::violaLastWalkFrame = int(Environment::violaCurrentWalkFrame);
}
}
if (Environment::monsterState == 0)
{
Environment::monsterTimer += ms;
if (Environment::monsterTimer > 500)
{
Environment::monsterTimer = 0;
Environment::monsterState = 1;
}
}
else
{
Environment::monsterTimer += ms;
if (Environment::monsterTimer > 500)
{
Environment::monsterTimer = 0;
Environment::monsterState = 0;
}
}
if (Environment::goToLevel3)
{
Environment::goTolevel3Timer += ms;
if (Environment::goTolevel3Timer > 1500)
{
Environment::goToLevel3 = false;
switch_room(2);
}
}
//float Environment::monsterTimer = 0.0;
//int Environment::monsterState = 1;
}
bool GameObjectManager::isPointInObject(int screenX, int screenY, int objectScreenX, int objectScreenY) const {
// Простая проверка попадания точки в квадрат 64x64 вокруг центра объекта
const int objectSize = 32; // Половина размера области выделения
return (screenX >= objectScreenX - objectSize &&
screenX <= objectScreenX + objectSize &&
screenY >= objectScreenY - objectSize &&
screenY <= objectScreenY + objectSize);
}
void GameObjectManager::checkMouseIntersection(int mouseX, int mouseY, const Matrix4f& projectionModelView) {
for (auto& ao : activeObjects) {
int screenX, screenY;
worldToScreenCoordinates(ao.objectPos, projectionModelView,
Environment::width, Environment::height, screenX, screenY);
if (isPointInObject(mouseX, mouseY, screenX, screenY)) {
std::cout << "Mouse over object at screen coordinates: "
<< screenX << ", " << screenY
<< " (world pos: "
<< ao.objectPos.v[0] << ", "
<< ao.objectPos.v[1] << ", "
<< ao.objectPos.v[2] << ")"
<< std::endl;
}
}
}
void GameObjectManager::worldToScreenCoordinates(Vector3f objectPos,
Matrix4f projectionModelView,
int screenWidth, int screenHeight,
int& screenX, int& screenY) {
Vector4f inx = { objectPos.v[0], objectPos.v[1], objectPos.v[2], 1.0f };
Vector4f clipCoords = MultMatrixVector(projectionModelView, inx);
float ndcX = clipCoords.v[0] / clipCoords.v[3];
float ndcY = clipCoords.v[1] / clipCoords.v[3];
screenX = (int)((ndcX + 1.0f) * 0.5f * screenWidth);
screenY = (int)((1.0f + ndcY) * 0.5f * screenHeight);
}
} // namespace ZL

View File

@ -1,135 +0,0 @@
#pragma once
#include "TextureManager.h"
#include "BoneAnimatedModel.h"
#include "AudioPlayerAsync.h"
#include <memory>
#include <vector>
#include "ActiveObject.h"
#include "Room.h"
#include "RenderSystem.h"
#include "Inventory.h"
#ifdef __linux__
#include <SDL2/SDL.h>
#endif
#include "OpenGlExtensions.h"
#include <thread>
#include <list>
#include "BoundaryBox.h" // Добавляем новый include
namespace ZL {
class GameObjectManager {
public:
void initializeLoadingScreen();
void initialize();
void switch_room(int index);
void handleEvent(const SDL_Event& event);
void updateScene(size_t ms);
void checkMouseIntersection(int mouseX, int mouseY, const Matrix4f& projectionModelView); // Добавляем новый метод
std::shared_ptr<ZL::Texture> testObjTexturePtr;
//std::shared_ptr<ZL::Texture> roomTexturePtr;
//std::shared_ptr<ZL::Texture> coneTexturePtr;
//ZL::VertexDataStruct colorCubeMesh;
//ZL::VertexRenderStruct colorCubeMeshMutable;
//ZL::VertexDataStruct testObjMesh;
//ZL::VertexRenderStruct testObjMeshMutable;
ZL::BoneSystem violaIdleModel;
ZL::VertexRenderStruct violaIdleModelMutable;
ZL::BoneSystem violaWalkModel;
ZL::VertexRenderStruct violaWalkModelMutable;
std::shared_ptr<ZL::Texture> violaTexturePtr;
std::vector<ZL::VertexDataStruct> preloadedRoomMeshArr;
//ZL::VertexDataStruct coneMesh; // Раскомментировали
//ZL::VertexRenderStruct coneMeshMutable; // Раскомментировали
std::vector<ZL::ActiveObject> activeObjects;
std::vector<ZL::Room> rooms;
std::vector<InventoryItem> selectedCubes;
std::string bearName;
#ifdef AUDIO
AudioPlayerAsync audioPlayerAsync;
#endif
ZL::VertexDataStruct inventoryIconMesh;
ZL::VertexRenderStruct inventoryIconMeshMutable;
static const float INVENTORY_ICON_SIZE;
static const float INVENTORY_MARGIN;
static const float SELECTED_CUBE_ICON_SIZE;
static const float SELECTED_CUBE_MARGIN;
//ActiveObjectManager aoMgr;
int objects_in_inventory;
std::shared_ptr<ZL::Texture> loadingScreenTexturePtr;
ZL::VertexDataStruct loadingScreenMesh;
ZL::VertexRenderStruct loadingScreenMeshMutable;
std::list<std::function<bool()>> loadingFunctions;
std::thread loadingThread;
bool sideThreadLoadingCompleted = false;
int current_room_index;
std::shared_ptr<ZL::Texture> monsterTexturePtr1;
std::shared_ptr<ZL::Texture> monsterTexturePtr2;
ZL::VertexDataStruct monsterScreenMesh;
ZL::VertexRenderStruct monsterScreenMeshMutable;
std::vector<std::string> dialogTextures = { // Список диалогов
"./photo.bmp",
"./next_dialog.bmp",
"./final_dialog.bmp",
};
int dialogIndex = 0; // Текущий индекс диалога
std::shared_ptr<Texture> dialogTexturePtr; // Активная текстура диалога
bool isDialogActive = false; // Флаг активности диалога
std::shared_ptr<Texture> batteryDialogTexturePtr; // Активная текстура диалога
bool isBatteryDialogActive = false; // Флаг активности диалога
bool hasChoisedFriendship = false;
bool hasMadeChoise = false;
std::shared_ptr<Texture> finalGoodTexturePtr;
std::shared_ptr<Texture> finalBadTexturePtr;
ZL::VertexDataStruct modelMesh;
ZL::VertexRenderStruct modelMeshRender;
std::shared_ptr<Texture> modelTexturePtr;
ZL::VertexDataStruct landMesh;
ZL::VertexRenderStruct landMeshRender;
std::shared_ptr<Texture> landTexturePtr;
private:
//int animationCounter = 0;
int lastMouseX = 0; // Добавляем переменные для хранения позиции мыши
int lastMouseY = 0;
bool isPointInObject(int screenX, int screenY, int objectScreenX, int objectScreenY) const;
void worldToScreenCoordinates(Vector3f objectPos, // Добавляем метод
Matrix4f projectionModelView,
int screenWidth, int screenHeight,
int& screenX, int& screenY);
BoundaryBox walkArea{800.0f, 800.0f}; // Зона для ходьбы 800x800
};
} // namespace ZL

View File

@ -1,23 +0,0 @@
#include "GameWorld.h"
#include "InputManager.h"
namespace ZL {
GameWorld& GameWorld::getInstance() {
static GameWorld instance;
return instance;
}
void GameWorld::update(float deltaTime) {
auto& input = InputManager::getInstance();
// Update game state based on input
if (input.isKeyPressed(SDL_SCANCODE_W)) {
// Move forward
}
// ... handle other game logic ...
}
void GameWorld::addObject(const Vector3f& position) {
mGameObjects.push_back(position);
}
}

View File

@ -1,18 +0,0 @@
#pragma once
#include "Math.h"
#include <vector>
#include <memory>
namespace ZL {
class GameWorld {
public:
static GameWorld& getInstance();
void update(float deltaTime);
void addObject(const Vector3f& position);
// ...other game world related methods...
private:
GameWorld() = default;
std::vector<Vector3f> mGameObjects;
};
}

View File

@ -1,27 +0,0 @@
#include "InputManager.h"
namespace ZL {
InputManager& InputManager::getInstance() {
static InputManager instance;
return instance;
}
void InputManager::processInput() {
SDL_Event event;
while (SDL_PollEvent(&event)) {
if (event.type == SDL_QUIT) {
mShouldQuit = true;
}
else if (event.type == SDL_KEYDOWN) {
mKeys[event.key.keysym.scancode] = true;
}
else if (event.type == SDL_KEYUP) {
mKeys[event.key.keysym.scancode] = false;
}
}
}
bool InputManager::isKeyPressed(SDL_Scancode key) const {
return mKeys[key];
}
}

View File

@ -1,17 +0,0 @@
#pragma once
#include "OpenGlExtensions.h"
namespace ZL {
class InputManager {
public:
static InputManager& getInstance();
void processInput();
bool isKeyPressed(SDL_Scancode key) const;
bool shouldQuit() const { return mShouldQuit; }
private:
InputManager() = default;
bool mKeys[SDL_NUM_SCANCODES] = {false};
bool mShouldQuit = false;
};
}

View File

@ -1,90 +0,0 @@
#include "Inventory.h"
namespace ZL
{
std::unordered_map<std::string, InventoryItem> gInventoryMap;
void clear()
{
gInventoryMap.clear();
}
void AddItemToInventory(const std::string& name, std::shared_ptr<Texture> tex, int slot_index)
{
if (slot_index > MAX_INVENTORY_SLOTS || slot_index < 1) {
return;
}
InventoryItem item;
item.name = name;
item.texture = tex;
item.hot_key = slot_index;
item.scale = 1.0f;
gInventoryMap[name] = item;
std::cout << "Added item to slot " << slot_index << std::endl;
}
void RemoveItemFromInventory(const std::string& name)
{
// erase вернёт количество удалённых элементов, если нужно проверить
gInventoryMap.erase(name);
}
InventoryItem* GetItemByName(const std::string& name)
{
// Пытаемся найти элемент по ключу
auto it = gInventoryMap.find(name);
if (it != gInventoryMap.end())
{
// Возвращаем адрес найденного InventoryItem
return &it->second;
}
// Если не нашли nullptr
return nullptr;
}
InventoryItem* GetItemByHotkey(int hotkey)
{
for (auto& [_, item] : gInventoryMap) {
if (item.hot_key == hotkey) {
return &item;
}
}
return nullptr;
}
InventoryItem* GetItemSelected(bool selected)
{
for (auto& [_, item] : gInventoryMap) {
if (item.isSelected == selected) {
return &item;
}
}
return nullptr;
}
void PrintInventory()
{
std::cout << "Inventory contents:\n";
for (auto& [itemName, item] : gInventoryMap)
{
std::cout << " - " << itemName << "\n";
}
}
void UnselectAllItems()
{
for (auto& [_, item] : gInventoryMap) {
item.isSelected = false;
item.scale = 1.0f; // Reset scale when unselected
}
}
const std::unordered_map<std::string, InventoryItem>& ReturnInventory()
{
return gInventoryMap;
}
}

View File

@ -1,44 +0,0 @@
#pragma once
#include <string>
#include <memory>
#include <unordered_map>
#include <iostream>
#include "TextureManager.h"
namespace ZL
{
static const int MAX_INVENTORY_SLOTS = 9;
static const float SELECTED_ITEM_SCALE = 1.2f; // Scale factor for selected items
struct InventoryItem
{
std::string name;
std::shared_ptr<Texture> texture;
bool isSelected = false;
int hot_key;
float scale = 1.0f; // Add scale property
};
// Глобальное хранилище предметов
extern std::unordered_map<std::string, InventoryItem> gInventoryMap; // Changed key type from string to int
// Добавить предмет в инвентарь
void AddItemToInventory(const std::string& name, std::shared_ptr<Texture> tex, int slot_index);
// Удалить предмет из инвентаря
void RemoveItemFromInventory(int slot_index);
// Поиск предмета по индексу (возвращает указатель или nullptr)
InventoryItem* GetItemByHotkey(int hot_key);
InventoryItem* GetItemSelected(bool isSelected);
InventoryItem* GetItemByName(const std::string& name);
// Вывести весь инвентарь в консоль
void PrintInventory();
const std::unordered_map<std::string, InventoryItem>& ReturnInventory();
// Add these new functions
void UnselectAllItems();
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.0 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.0 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.0 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.0 MiB

File diff suppressed because it is too large Load Diff

View File

@ -1,5 +0,0 @@
#pragma once
#include "Renderer.h"
ZL::VertexDataStruct LoadFromObjFile(const std::string& fileName);

View File

@ -1,78 +0,0 @@
#include "Physics.h"
#include <cmath>
namespace ZL
{
bool TestIntersection(const LinePhysicsObject& line, const EllipsePhysicsObject& ellipse)
{
// x*x / (a*a) + y*y / (b*b) = 1
// x = x0 + (x1 - x0) * t = x0 + dx * t
// y = y0 + (y1 - y0) * t = y0 + dy * t
//^ solve above for t, and make sure 0 > t > 1
float x0 = line.start.v[0] - ellipse.center.v[0];
float y0 = line.start.v[1] - ellipse.center.v[1];
float dx = line.end.v[0] - line.start.v[0];
float dy = line.end.v[1] - line.start.v[1];
static const float EPS = 0.0001f; //Must very close to 0 to handle extreme situations
float a = dx * dx * ellipse.b * ellipse.b + dy * dy * ellipse.a * ellipse.a;
float b = 2.f * (x0 * dx * ellipse.b * ellipse.b + y0 * dy * ellipse.a * ellipse.a);
float c = ellipse.b * ellipse.b * x0 * x0 + ellipse.a * ellipse.a * y0 * y0 - ellipse.a * ellipse.a * ellipse.b * ellipse.b;
if (abs(a) < EPS) //Here consider a = 0 and equation becomes linear
{
float t = -c / b;
if ((t > 0) && (t < 1.f))
{
return true;
}
else
{
return false;
}
}
else
{
float D2 = b * b - 4 * a * c;
if (D2 < 0)
{
return false;
}
else
{
float D = sqrtf(D2);
float t1 = (-b - D) / (2 * a);
float t2 = (-b + D) / (2 * a);
if (((t1 > 0) && (t1 < 1.f)) || ((t2 > 0) && (t2 < 1.f)))
{
return true;
}
else
{
return false;
}
}
}
}
}

View File

@ -1,22 +0,0 @@
#pragma once
#include "Math.h"
namespace ZL
{
struct EllipsePhysicsObject
{
Vector2f center = {0.f, 0.f};
float a = 0.f;
float b = 0.f;
};
struct LinePhysicsObject
{
Vector2f start = { 0.f, 0.f };
Vector2f end = { 0.f, 0.f };
};
bool TestIntersection(const LinePhysicsObject& line, const EllipsePhysicsObject& ellipse);
}

View File

@ -1,57 +0,0 @@
#include "QuestScripts.h"
#include "GameObjectManager.h"
#include "Inventory.h"
#include <iostream>
#include <chrono>
#include <thread>
namespace ZL
{
std::function<void(GameObjectManager&, size_t)> createRoom1Logic()
{
return [elapsedTime = 0u](GameObjectManager& gom, size_t ms) mutable
{
if (gom.bearName.compare("TOM") == 0) {
elapsedTime += ms;
if (elapsedTime >= 2000) {
gInventoryMap.clear();
gom.switch_room(1);
}
} else if (gom.selectedCubes.size() >= 3 && gom.bearName.compare("TOM") != 0) {
std::cout << "Else" << std::endl;
elapsedTime += ms;
if (elapsedTime >= 2000) {
gom.bearName = "";
for (const auto& cube : gom.selectedCubes) {
gInventoryMap[cube.name] = cube;
}
gom.selectedCubes.clear();
elapsedTime = 0;
}
}
};
}
std::function<void(GameObjectManager&, size_t)> createRoom2Logic()
{
return [](GameObjectManager& gom, size_t ms)
// Simple test logic
{
};
}
std::function<void(GameObjectManager&, size_t)> createRoom3Logic()
{
return [](GameObjectManager& gom, size_t ms)
// Simple test logic
{
};
}
}

View File

@ -1,11 +0,0 @@
#pragma once
#include <functional>
namespace ZL {
class GameObjectManager;
std::function<void(GameObjectManager&, size_t)> createRoom1Logic();
std::function<void(GameObjectManager&, size_t)> createRoom2Logic();
std::function<void(GameObjectManager&, size_t)> createRoom3Logic();
}

View File

@ -1,46 +0,0 @@
# Script to run:
```
C:\Work\Projects\emsdk\emsdk.bat activate latest
C:\Work\Projects\emsdk\emsdk_env.bat
emcc main.cpp Game.cpp Math.cpp Physics.cpp Renderer.cpp ShaderManager.cpp TextureManager.cpp Utils.cpp OpenGlExtensions.cpp -O2 -std=c++14 -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
```
```
zlib-1.3.1:
mkdir build
cd build
cmake -DCMAKE_INSTALL_PREFIX=install ..
then run ALL_BUILD and INSTALL in Visual Studio
lpng1645:
mkdir build
cd build
cmake -DCMAKE_INSTALL_PREFIX=install -DZLIB_ROOT=C:\Work\Projects\zlib-1.3.1\build\install ..
then run ALL_BUILD and INSTALL in Visual Studio
```
https://github.com/Bly7/OBJ-Loader/blob/master/Source/OBJ_Loader.h
https://github.com/gametutorials/tutorials/blob/master/OpenGL/MD3%20Animation/Main.cpp
linux:
```
g++ Game.cpp main.cpp Math.cpp OpenGlExtensions.cpp Physics.cpp Renderer.cpp ShaderManager.cpp TextureManager.cpp Utils.cpp BoneAnimatedModel.cpp ObjLoader.cpp cmakeaudioplayer/src/AudioPlayer.cpp TextModel.cpp Inventory.cpp -o sdl_app -O2 -std=c++17 \
-I cmakeaudioplayer/include \
$(pkg-config --cflags --libs sdl2 gl) \
$(pkg-config --cflags --libs vorbis vorbisfile ogg) \
-lopenal
```

View File

@ -1,484 +0,0 @@
#include "RenderSystem.h"
#include "Environment.h"
#include "Utils.h"
#include "Inventory.h"
#include <GL/gl.h>
#include <iostream>
namespace ZL {
void RenderSystem::initialize() {
/*
renderer.shaderManager.AddShaderFromFiles("default", "./default.vertex", "./default.fragment");
renderer.shaderManager.AddShaderFromFiles("defaultHideCam", "./defaultHideCam.vertex", "./defaultHideCam.fragment");
renderer.shaderManager.AddShaderFromFiles("defaultColor", "./defaultColor.vertex", "./defaultColor.fragment");
renderer.InitOpenGL();*/
}
void RenderSystem::drawScene(GameObjectManager& gameObjects) {
static const std::string defaultShaderName = "default";
static const std::string vPositionName = "vPosition";
static const std::string vTexCoordName = "vTexCoord";
static const std::string textureUniformName = "Texture";
glClearColor(0.0f, 0.5f, 1.0f, 1.0f);
glClear(GL_DEPTH_BUFFER_BIT | GL_COLOR_BUFFER_BIT);
glViewport(0, 0, Environment::width, Environment::height);
if (Environment::gameIsLoading)
{
drawLoadingScreen(gameObjects);
}
else
if (Environment::finalIsBad || Environment::finalIsGood)
{
drawFinalScreen(gameObjects);
}
else
{
drawWorld(gameObjects);
glClear(GL_DEPTH_BUFFER_BIT);
//drawUI(gameObjects);
}
CheckGlError();
}
void RenderSystem::drawViola(GameObjectManager& gameObjects)
{
static const std::string defaultShaderName = "default";
static const std::string colorShaderName = "defaultColor";
static const std::string vPositionName = "vPosition";
static const std::string vTexCoordName = "vTexCoord";
static const std::string vColorName = "vColor";
static const std::string textureUniformName = "Texture";
renderer.shaderManager.PushShader(defaultShaderName);
renderer.RenderUniform1i(textureUniformName, 0);
renderer.EnableVertexAttribArray(vPositionName);
renderer.EnableVertexAttribArray(vTexCoordName);
renderer.PushPerspectiveProjectionMatrix(1.0 / 1.5,
static_cast<float>(Environment::width) / static_cast<float>(Environment::height),
50, 10000);
renderer.PushMatrix();
renderer.LoadIdentity();
renderer.TranslateMatrix({ 0,0, -100 * Environment::zoom });
renderer.RotateMatrix(QuatFromRotateAroundX(Environment::cameraAlpha));
//Go a little bit up to make camera at the position of Viola
renderer.TranslateMatrix({ 0, Environment::cameraDefaultVerticalShift, 0 });
//Viola stuff
renderer.ScaleMatrix(10);
renderer.RotateMatrix(QuatFromRotateAroundX(-M_PI / 2.0));
renderer.RotateMatrix(QuatFromRotateAroundZ(M_PI));
if (Environment::violaCurrentAnimation == 0)
{
gameObjects.violaIdleModelMutable.AssignFrom(gameObjects.violaIdleModel.mesh);
gameObjects.violaIdleModelMutable.RefreshVBO();
glBindTexture(GL_TEXTURE_2D, gameObjects.violaTexturePtr->getTexID());
renderer.DrawVertexRenderStruct(gameObjects.violaIdleModelMutable);
}
else
{
gameObjects.violaWalkModelMutable.AssignFrom(gameObjects.violaWalkModel.mesh);
gameObjects.violaWalkModelMutable.RefreshVBO();
glBindTexture(GL_TEXTURE_2D, gameObjects.violaTexturePtr->getTexID());
renderer.DrawVertexRenderStruct(gameObjects.violaWalkModelMutable);
}
renderer.PopMatrix();
renderer.PopProjectionMatrix();
renderer.DisableVertexAttribArray(vPositionName);
renderer.DisableVertexAttribArray(vTexCoordName);
renderer.shaderManager.PopShader();
}
void RenderSystem::drawWorld(GameObjectManager& gameObjects) {
static const std::string defaultShaderName = "default";
static const std::string colorShaderName = "defaultColor";
static const std::string hideCamShaderName = "defaultHideCam";
static const std::string vPositionName = "vPosition";
static const std::string vTexCoordName = "vTexCoord";
static const std::string vColorName = "vColor";
static const std::string textureUniformName = "Texture";
//static const std::string modelViewMatrixName = "modelView";
/*
renderer.shaderManager.PushShader(defaultShaderName);
renderer.RenderUniform1i(textureUniformName, 0);
renderer.EnableVertexAttribArray(vPositionName);
renderer.EnableVertexAttribArray(vTexCoordName);
*/
// Draw cone
//glBindTexture(GL_TEXTURE_2D, gameObjects.coneTexturePtr->getTexID());
//renderer.DrawVertexRenderStruct(gameObjects.coneMeshMutable);
//drawMonster(gameObjects);
//glClear(GL_DEPTH_BUFFER_BIT);
drawViola(gameObjects);
renderer.shaderManager.PushShader(defaultShaderName);
renderer.RenderUniform1i(textureUniformName, 0);
Vector3f totalCameraTargetPos = Environment::characterPos - Vector3f{ 0, Environment::cameraDefaultVerticalShift, 0 };
renderer.RenderUniform3fv("targetPos", &totalCameraTargetPos.v[0]);
Vector3f cameraPos = Vector3f{ 0,0, 100 * Environment::zoom };
cameraPos = MultVectorMatrix(cameraPos, QuatToMatrix(QuatFromRotateAroundX(Environment::cameraAlpha)));
cameraPos = MultVectorMatrix(cameraPos, QuatToMatrix(QuatFromRotateAroundY(Environment::cameraPhi)));
cameraPos = cameraPos + totalCameraTargetPos;
renderer.RenderUniform3fv("eyePos", &cameraPos.v[0]);
//renderer.RenderUniform3fv("eyePos", &testVec2.v[0]);
renderer.EnableVertexAttribArray(vPositionName);
renderer.EnableVertexAttribArray(vTexCoordName);
renderer.PushPerspectiveProjectionMatrix(1.0 / 1.5,
static_cast<float>(Environment::width) / static_cast<float>(Environment::height),
50, 10000);
renderer.PushMatrix();
renderer.LoadIdentity();
renderer.TranslateMatrix({ 0,0, -100 * Environment::zoom });
renderer.RotateMatrix(QuatFromRotateAroundX(Environment::cameraAlpha));
renderer.RotateMatrix(QuatFromRotateAroundY(Environment::cameraPhi));
renderer.TranslateMatrix(Environment::cameraShift);
//Go a little bit up to make camera at the position of Viola
renderer.TranslateMatrix({ 0, Environment::cameraDefaultVerticalShift, 0 });
// Draw active objects
/*drawObjects(gameObjects);
// Draw room
glBindTexture(GL_TEXTURE_2D, gameObjects.rooms[gameObjects.current_room_index].roomTexture->getTexID());
renderer.DrawVertexRenderStruct(gameObjects.rooms[gameObjects.current_room_index].textMeshMutable);
if (gameObjects.current_room_index == 1 && Environment::goToLevel3 == false)
{
drawMonster(gameObjects);
}*/
//drawViola(gameObjects);
glBindTexture(GL_TEXTURE_2D, gameObjects.landTexturePtr->getTexID());
renderer.DrawVertexRenderStruct(gameObjects.landMeshRender);
glBindTexture(GL_TEXTURE_2D, gameObjects.modelTexturePtr->getTexID());
renderer.DrawVertexRenderStruct(gameObjects.modelMeshRender);
Matrix4f latestProjectionModelView = renderer.GetProjectionModelViewMatrix();
// Проверяем пересечение с мышью после расчета всех матриц
const_cast<GameObjectManager&>(gameObjects).checkMouseIntersection(
lastMouseX, lastMouseY, latestProjectionModelView);
renderer.PopMatrix();
renderer.PopProjectionMatrix();
renderer.DisableVertexAttribArray(vPositionName);
renderer.DisableVertexAttribArray(vTexCoordName);
renderer.shaderManager.PopShader();
// Store matrix for UI rendering
currentProjectionModelView = latestProjectionModelView;
}
void RenderSystem::drawUI(const GameObjectManager& gameObjects) {
// Устанавливаем нужный шейдер для UI (например, "default")
renderer.shaderManager.PushShader("default");
// Если шейдер ожидает атрибуты вершин, их нужно включить
static const std::string vPositionName = "vPosition";
static const std::string vTexCoordName = "vTexCoord";
renderer.EnableVertexAttribArray(vPositionName);
renderer.EnableVertexAttribArray(vTexCoordName);
renderer.PushProjectionMatrix(static_cast<float>(Environment::width),
static_cast<float>(Environment::height));
renderer.PushMatrix();
renderer.LoadIdentity();
// Отрисовка диалогового окна, если оно активно
if (gameObjects.isDialogActive && gameObjects.dialogTexturePtr) {
renderer.PushMatrix();
float xPos = Environment::width / 2.0f - 250; // Центрируем
float yPos = Environment::height / 2.0f - 125; // Центрируем
renderer.TranslateMatrix(Vector3f{xPos, yPos, 0.0f});
renderer.ScaleMatrix(Vector3f{10.5f, 10.5f, 1.0f}); // Увеличиваем размер
glBindTexture(GL_TEXTURE_2D, gameObjects.dialogTexturePtr->getTexID());
renderer.DrawVertexRenderStruct(gameObjects.inventoryIconMeshMutable); // Используем 2D меш инвентаря
renderer.PopMatrix();
}
// Отрисовка диалогового окна батарейки
if (gameObjects.isBatteryDialogActive && gameObjects.batteryDialogTexturePtr) {
renderer.PushMatrix();
float xPos = Environment::width / 2.0f - 250; // Центрируем
float yPos = Environment::height / 2.0f - 125; // Центрируем
renderer.TranslateMatrix(Vector3f{xPos, yPos, 0.0f});
renderer.ScaleMatrix(Vector3f{10.5f, 10.5f, 1.0f}); // Увеличиваем размер
glBindTexture(GL_TEXTURE_2D, gameObjects.batteryDialogTexturePtr->getTexID());
renderer.DrawVertexRenderStruct(gameObjects.inventoryIconMeshMutable); // Используем 2D меш инвентаря
renderer.PopMatrix();
}
//for (const auto* ao : gameObjects.aoMgr.findByHighlighted(true)) {
for (auto& ao : gameObjects.rooms[gameObjects.current_room_index].findByHighlighted(true)) {
std::cout << ao->name << std::endl;
std::cout << "Draw" << std::endl;
if (ao->activeObjectScreenTexturePtr) {
std::cout << "Found activeObjectScreenTexturePtr" << std::endl;
int screenX, screenY;
Vector3f objectPosPlusShift = ao->objectPos + Vector3f{ 0, -Environment::itemDefaultVerticalShift, 0 };
worldToScreenCoordinates(objectPosPlusShift, currentProjectionModelView,
Environment::width, Environment::height, screenX, screenY);
renderer.PushMatrix();
// Здесь можно использовать вычисленные screenX, screenY,
// но для теста оставляем фиксированное значение
renderer.TranslateMatrix(Vector3f{screenX + 0.f, screenY + 0.f, 0.0f});
glBindTexture(GL_TEXTURE_2D, ao->activeObjectScreenTexturePtr->getTexID());
renderer.DrawVertexRenderStruct(ao->activeObjectScreenMeshMutable);
renderer.PopMatrix();
}
}
const auto& inventoryMap = ZL::ReturnInventory();
int i = 0;
for (const auto& [name, item] : inventoryMap) {
renderer.PushMatrix();
if (item.isSelected) {
float xPos = Environment::width
- gameObjects.INVENTORY_MARGIN
- gameObjects.INVENTORY_ICON_SIZE;
float yPos = gameObjects.INVENTORY_MARGIN
+ i * (gameObjects.INVENTORY_ICON_SIZE
+ gameObjects.INVENTORY_MARGIN);
renderer.TranslateMatrix(Vector3f{xPos, yPos, 0.0f});
renderer.ScaleMatrix(Vector3f{1.5f, 1.5f, 1.0f});
glBindTexture(GL_TEXTURE_2D, item.texture->getTexID());
}
else {
float xPos = Environment::width
- gameObjects.INVENTORY_MARGIN
- gameObjects.INVENTORY_ICON_SIZE;
float yPos = gameObjects.INVENTORY_MARGIN
+ i * (gameObjects.INVENTORY_ICON_SIZE
+ gameObjects.INVENTORY_MARGIN);
renderer.TranslateMatrix(Vector3f{xPos, yPos, 0.0f});
glBindTexture(GL_TEXTURE_2D, item.texture->getTexID());
}
renderer.DrawVertexRenderStruct(gameObjects.inventoryIconMeshMutable);
renderer.PopMatrix();
i++;
}
// Отрисовка кубиков
if (gameObjects.current_room_index == 0) {
for (int j = gameObjects.selectedCubes.size() - 1; j >= 0; j--) {
auto& cube = gameObjects.selectedCubes[j];
renderer.PushMatrix();
float xPos = (gameObjects.SELECTED_CUBE_MARGIN + 300.0f)
+ j * (gameObjects.SELECTED_CUBE_ICON_SIZE + gameObjects.SELECTED_CUBE_MARGIN);
float yPos = 500.0f;
renderer.TranslateMatrix(Vector3f{xPos, yPos, 0.0f});
renderer.ScaleMatrix(Vector3f{2.8f, 2.8f, 1.0f});
glBindTexture(GL_TEXTURE_2D, cube.texture->getTexID());
renderer.DrawVertexRenderStruct(gameObjects.inventoryIconMeshMutable);
renderer.PopMatrix();
}
}
renderer.PopMatrix();
renderer.PopProjectionMatrix();
// Выключаем атрибуты, чтобы сохранить баланс
renderer.DisableVertexAttribArray(vPositionName);
renderer.DisableVertexAttribArray(vTexCoordName);
// Снимаем шейдер, тем самым балансируя стек
renderer.shaderManager.PopShader();
}
void RenderSystem::drawLoadingScreen(const GameObjectManager& gameObjects)
{
renderer.shaderManager.PushShader("default");
// Если шейдер ожидает атрибуты вершин, их нужно включить
static const std::string vPositionName = "vPosition";
static const std::string vTexCoordName = "vTexCoord";
renderer.EnableVertexAttribArray(vPositionName);
renderer.EnableVertexAttribArray(vTexCoordName);
renderer.PushProjectionMatrix(static_cast<float>(Environment::width),
static_cast<float>(Environment::height));
renderer.PushMatrix();
renderer.LoadIdentity();
glBindTexture(GL_TEXTURE_2D, gameObjects.loadingScreenTexturePtr->getTexID());
renderer.DrawVertexRenderStruct(gameObjects.loadingScreenMeshMutable);
renderer.PopMatrix();
renderer.PopProjectionMatrix();
// Выключаем атрибуты, чтобы сохранить баланс
renderer.DisableVertexAttribArray(vPositionName);
renderer.DisableVertexAttribArray(vTexCoordName);
// Снимаем шейдер, тем самым балансируя стек
renderer.shaderManager.PopShader();
}
void RenderSystem::drawFinalScreen(const GameObjectManager& gameObjects)
{
renderer.shaderManager.PushShader("default");
// Если шейдер ожидает атрибуты вершин, их нужно включить
static const std::string vPositionName = "vPosition";
static const std::string vTexCoordName = "vTexCoord";
renderer.EnableVertexAttribArray(vPositionName);
renderer.EnableVertexAttribArray(vTexCoordName);
renderer.PushProjectionMatrix(static_cast<float>(Environment::width),
static_cast<float>(Environment::height));
renderer.PushMatrix();
renderer.LoadIdentity();
if (Environment::finalIsBad)
{
glBindTexture(GL_TEXTURE_2D, gameObjects.finalBadTexturePtr->getTexID());
}
else
{
glBindTexture(GL_TEXTURE_2D, gameObjects.finalGoodTexturePtr->getTexID());
}
renderer.DrawVertexRenderStruct(gameObjects.loadingScreenMeshMutable);
renderer.PopMatrix();
renderer.PopProjectionMatrix();
// Выключаем атрибуты, чтобы сохранить баланс
renderer.DisableVertexAttribArray(vPositionName);
renderer.DisableVertexAttribArray(vTexCoordName);
// Снимаем шейдер, тем самым балансируя стек
renderer.shaderManager.PopShader();
}
void RenderSystem::drawMonster(const GameObjectManager& gameObjects)
{
renderer.shaderManager.PushShader("default");
static const std::string vPositionName = "vPosition";
static const std::string vTexCoordName = "vTexCoord";
renderer.EnableVertexAttribArray(vPositionName);
renderer.EnableVertexAttribArray(vTexCoordName);
renderer.PushProjectionMatrix(static_cast<float>(Environment::width),
static_cast<float>(Environment::height));
renderer.PushMatrix();
renderer.LoadIdentity();
std::cout << "Found activeObjectScreenTexturePtr" << std::endl;
int screenX, screenY;
Vector3f objectPosPlusShift = Vector3f{ -300, 50, -70 };
worldToScreenCoordinates(objectPosPlusShift, currentProjectionModelView,
Environment::width, Environment::height, screenX, screenY);
renderer.PushMatrix();
// Здесь можно использовать вычисленные screenX, screenY,
// но для теста оставляем фиксированное значение
renderer.TranslateMatrix(Vector3f{ screenX + 0.f, screenY + 0.f, 0.0f });
if (Environment::monsterState == 0)
{
glBindTexture(GL_TEXTURE_2D, gameObjects.monsterTexturePtr1->getTexID());
}
else
{
glBindTexture(GL_TEXTURE_2D, gameObjects.monsterTexturePtr2->getTexID());
}
renderer.DrawVertexRenderStruct(gameObjects.monsterScreenMeshMutable);
renderer.PopMatrix();
renderer.PopMatrix();
renderer.PopProjectionMatrix();
// Выключаем атрибуты, чтобы сохранить баланс
renderer.DisableVertexAttribArray(vPositionName);
renderer.DisableVertexAttribArray(vTexCoordName);
// Снимаем шейдер, тем самым балансируя стек
renderer.shaderManager.PopShader();
}
void RenderSystem::worldToScreenCoordinates(Vector3f objectPos,
Matrix4f projectionModelView,
int screenWidth, int screenHeight,
int& screenX, int& screenY) {
Vector4f inx = { objectPos.v[0], objectPos.v[1], objectPos.v[2], 1.0f};
Vector4f clipCoords = MultMatrixVector(projectionModelView, inx);
float ndcX = clipCoords.v[0] / clipCoords.v[3];
float ndcY = clipCoords.v[1] / clipCoords.v[3];
screenX = (int)((ndcX + 1.0f) * 0.5f * screenWidth);
screenY = (int)((1.0f + ndcY) * 0.5f * screenHeight);
}
void RenderSystem::drawObjects(GameObjectManager& gameObjects){
for (const auto& ao : gameObjects.activeObjects) {
renderer.PushMatrix();
renderer.TranslateMatrix(ao.objectPos);
glBindTexture(GL_TEXTURE_2D, ao.activeObjectTexturePtr->getTexID());
renderer.DrawVertexRenderStruct(ao.activeObjectMeshMutable);
renderer.PopMatrix();
}
}
} // namespace ZL

View File

@ -1,41 +0,0 @@
#pragma once
#include "Renderer.h"
#include "ActiveObject.h"
#include "GameObjectManager.h"
#include <string>
namespace ZL {
class RenderSystem {
public:
RenderSystem() = default;
Renderer renderer;
void initialize();
void drawScene(GameObjectManager& gameObjects);
Renderer& getRenderer() { return renderer; }
void worldToScreenCoordinates(Vector3f objectPos,
Matrix4f projectionModelView,
int screenWidth, int screenHeight,
int& screenX, int& screenY);
void drawObjects(GameObjectManager& gameObjects);
void drawDialog(GameObjectManager& gameObjects);
private:
void drawWorld(GameObjectManager& gameObjects);
void drawUI(const GameObjectManager& gameObjects);
void drawViola(GameObjectManager& gameObjects);
void drawLoadingScreen(const GameObjectManager& gameObjects);
void drawFinalScreen(const GameObjectManager& gameObjects);
void drawMonster(const GameObjectManager& gameObjects);
ShaderManager shaderManager;
Matrix4f currentProjectionModelView; // Добавлено для хранения матрицы между drawWorld и drawUI
int lastMouseX = 0;
int lastMouseY = 0;
};
} // namespace ZL

View File

@ -677,5 +677,21 @@ namespace ZL {
}
void worldToScreenCoordinates(Vector3f objectPos,
Matrix4f projectionModelView,
int screenWidth, int screenHeight,
int& screenX, int& screenY) {
Vector4f inx = { objectPos.v[0], objectPos.v[1], objectPos.v[2], 1.0f };
Vector4f clipCoords = MultMatrixVector(projectionModelView, inx);
float ndcX = clipCoords.v[0] / clipCoords.v[3];
float ndcY = clipCoords.v[1] / clipCoords.v[3];
screenX = (int)((ndcX + 1.0f) * 0.5f * screenWidth);
screenY = (int)((1.0f + ndcY) * 0.5f * screenHeight);
}
}

View File

@ -130,4 +130,10 @@ namespace ZL {
void worldToScreenCoordinates(Vector3f objectPos,
Matrix4f projectionModelView,
int screenWidth, int screenHeight,
int& screenX, int& screenY);
};

54
Room.h
View File

@ -1,54 +0,0 @@
#pragma once
#include "TextureManager.h"
#include "Math.h"
#include <memory>
#include "ActiveObject.h"
#include <functional>
#include "BoundaryBox.h"
namespace ZL
{
struct Room{
std::shared_ptr<ZL::Texture> roomTexture;
std::vector<ActiveObject> objects;
std::string sound_name;
ZL::VertexDataStruct textMesh;
ZL::VertexRenderStruct textMeshMutable;
CollisionManager collisionMgr;
std::function<void(class GameObjectManager&, size_t)> roomLogic;
Room()
{
objects.reserve(30);
}
std::vector<const ActiveObject*> findByHighlighted(bool highlighted) const {
std::vector<const ActiveObject*> result;
for (auto& o : objects)
{
if (o.highlighted == highlighted) {
result.push_back(&o);
}
}
return result;
}
void removeByPtr(const ActiveObject* ptr) {
for (int i = 0; i < objects.size(); i++)
{
if (ptr == &objects[i])
{
objects.erase(objects.begin() + i);
return;
}
}
}
};
}

View File

@ -71,7 +71,7 @@ namespace ZL
vertices[i] = Vector3f{ floatValues[0], floatValues[1], floatValues[2] };
}
std::cout << "Hello x1" << std::endl;
std::cout << "UV Coordinates" << std::endl;
std::getline(f, tempLine); //===UV Coordinates:
@ -132,15 +132,9 @@ namespace ZL
uvCoords[i][j] = Vector2f{ floatValues[0],floatValues[1] };
}
}
std::cout << "Hello eee" << std::endl;
std::cout << "Normals go" << std::endl;
std::getline(f, tempLine); //===Normals:
@ -164,7 +158,7 @@ namespace ZL
normals[i] = Vector3f{ floatValues[0], floatValues[1], floatValues[2] };
}
std::cout << "Hello x4" << std::endl;
std::cout << "Triangles go:" << std::endl;
std::getline(f, tempLine); //===Triangles: 3974
@ -189,11 +183,11 @@ namespace ZL
}
std::cout << "Hello x5" << std::endl;
std::cout << "Process vertices" << std::endl;
// Now let's process bone weights and vertices
// Now let's process vertices
for (int i = 0; i < numberTriangles; i++)
{
@ -233,6 +227,163 @@ namespace ZL
}
VertexDataStruct LoadFromTextFile02(const std::string& fileName, const std::string& ZIPFileName)
{
VertexDataStruct result;
std::ifstream filestream;
std::istringstream zipStream;
// --- 1. Открытие потока (без изменений) ---
if (!ZIPFileName.empty())
{
std::vector<char> fileData = readFileFromZIP(fileName, ZIPFileName);
std::string fileContents(fileData.begin(), fileData.end());
zipStream.str(fileContents);
}
else
{
filestream.open(fileName);
if (!filestream.is_open()) {
throw std::runtime_error("Failed to open file: " + fileName);
}
}
std::istream& f = (!ZIPFileName.empty()) ? static_cast<std::istream&>(zipStream) : static_cast<std::istream&>(filestream);
std::string tempLine;
std::smatch match;
// Обновленные регулярки
// pattern_float стал чуть надежнее для чисел вида "0" или "-1" без точки, если вдруг Python округлит до int
static const std::regex pattern_count(R"(\d+)");
static const std::regex pattern_float(R"([-]?\d+(\.\d+)?)");
static const std::regex pattern_int(R"([-]?\d+)");
// --- 2. Парсинг Вершин (Pos + Norm + UV) ---
// Ищем заголовок ===Vertices
while (std::getline(f, tempLine)) {
if (tempLine.find("===Vertices") != std::string::npos) break;
}
int numberVertices = 0;
if (std::regex_search(tempLine, match, pattern_count)) {
numberVertices = std::stoi(match.str());
}
else {
throw std::runtime_error("Vertices header not found or invalid.");
}
// Временные буферы для хранения "уникальных" вершин перед разверткой по индексам
std::vector<Vector3f> tempPositions(numberVertices);
std::vector<Vector3f> tempNormals(numberVertices);
std::vector<Vector2f> tempUVs(numberVertices);
for (int i = 0; i < numberVertices; i++)
{
std::getline(f, tempLine);
// Строка вида: V 0: Pos(x, y, z) Norm(x, y, z) UV(u, v)
std::vector<float> floatValues;
floatValues.reserve(8); // Ожидаем ровно 8 чисел (3 pos + 3 norm + 2 uv)
auto b = tempLine.cbegin();
auto e = tempLine.cend();
while (std::regex_search(b, e, match, pattern_float)) {
floatValues.push_back(std::stof(match.str()));
b = match.suffix().first;
}
// Проверка целостности строки (ID вершины regex может поймать первым, но нас интересуют данные)
// Обычно ID идет первым (0), потом 3+3+2 float. Итого 9 чисел, если считать ID.
// Ваш Python пишет "V 0:", regex поймает 0. Потом 8 флоатов.
// Если regex ловит ID вершины как float (что вероятно), нам нужно смещение.
// ID - floatValues[0]
// Pos - [1], [2], [3]
// Norm - [4], [5], [6]
// UV - [7], [8]
if (floatValues.size() < 9) {
throw std::runtime_error("Malformed vertex line at index " + std::to_string(i));
}
tempPositions[i] = Vector3f{ floatValues[1], floatValues[2], floatValues[3] };
tempNormals[i] = Vector3f{ floatValues[4], floatValues[5], floatValues[6] };
tempUVs[i] = Vector2f{ floatValues[7], floatValues[8] };
}
// --- 3. Парсинг Треугольников (Индексов) ---
// Пропускаем пустые строки до заголовка треугольников
while (std::getline(f, tempLine)) {
if (tempLine.find("===Triangles") != std::string::npos) break;
}
int numberTriangles = 0;
if (std::regex_search(tempLine, match, pattern_count)) {
numberTriangles = std::stoi(match.str());
}
else {
throw std::runtime_error("Triangles header not found.");
}
// Резервируем память в result, чтобы избежать лишних аллокаций
result.PositionData.reserve(numberTriangles * 3);
result.NormalData.reserve(numberTriangles * 3);
result.TexCoordData.reserve(numberTriangles * 3);
for (int i = 0; i < numberTriangles; i++)
{
std::getline(f, tempLine);
// Строка вида: Tri: 0 1 2
std::vector<int> indices;
indices.reserve(3);
auto b = tempLine.cbegin();
auto e = tempLine.cend();
while (std::regex_search(b, e, match, pattern_int)) {
indices.push_back(std::stoi(match.str()));
b = match.suffix().first;
}
if (indices.size() != 3) {
throw std::runtime_error("Malformed triangle line at index " + std::to_string(i));
}
// --- 4. Заполнение VertexDataStruct (Flattening) ---
// Берем данные из временных буферов по индексам и кладем в итоговый массив
for (int k = 0; k < 3; k++) {
int idx = indices[k];
result.PositionData.push_back(tempPositions[idx]);
result.NormalData.push_back(tempNormals[idx]);
result.TexCoordData.push_back(tempUVs[idx]);
}
}
// --- 5. Конвертация координат (Blender -> OpenGL/Engine) ---
// Сохраняем вашу логику смены осей: X->Z, Y->X, Z->Y
for (size_t i = 0; i < result.PositionData.size(); i++)
{
Vector3f originalPos = result.PositionData[i];
result.PositionData[i].v[0] = originalPos.v[1]; // New X = Old Y
result.PositionData[i].v[1] = originalPos.v[2]; // New Y = Old Z
result.PositionData[i].v[2] = originalPos.v[0]; // New Z = Old X
Vector3f originalNorm = result.NormalData[i];
result.NormalData[i].v[0] = originalNorm.v[1];
result.NormalData[i].v[1] = originalNorm.v[2];
result.NormalData[i].v[2] = originalNorm.v[0];
}
std::cout << "Model loaded: " << numberVertices << " verts, " << numberTriangles << " tris." << std::endl;
return result;
}

View File

@ -8,7 +8,5 @@
namespace ZL
{
VertexDataStruct LoadFromTextFile(const std::string& fileName, const std::string& ZIPFileName = "");
VertexDataStruct LoadFromTextFile02(const std::string& fileName, const std::string& ZIPFileName = "");
}

View File

@ -259,8 +259,10 @@ namespace ZL
texData.data.resize(dataSize);
for (int y = 0; y < texData.height; y++) {
png_bytep row = row_pointers[y];
//for (int y = 0; y < texData.height; y++) { //Go in reverse because of UV coord start point
for (int y = texData.height-1; y >= 0; y--) {
//png_bytep row = row_pointers[y];//Go in reverse because of UV coord start point
png_bytep row = row_pointers[texData.height - 1 - y];
for (int x = 0; x < texData.width; x++) {
png_bytep px = &(row[x * 4]);
texData.data[(y * texData.width + x) * channels + 0] = px[0]; // R
@ -270,7 +272,8 @@ namespace ZL
texData.data[(y * texData.width + x) * channels + 3] = px[3]; // A
}
}
free(row_pointers[y]);
//free(row_pointers[y]);//Go in reverse because of UV coord start point
free(row_pointers[texData.height - 1 - y]);//Go in reverse because of UV coord start point
}
free(row_pointers);

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.3 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.0 MiB

View File

@ -1,11 +0,0 @@
precision mediump float;
uniform sampler2D Texture;
varying vec2 texCoord;
void main()
{
vec4 color = texture2D(Texture,texCoord).rgba;
gl_FragColor = color;
}

View File

@ -1,11 +0,0 @@
attribute vec3 vPosition;
attribute vec2 vTexCoord;
varying vec2 texCoord;
uniform mat4 ProjectionModelViewMatrix;
void main()
{
gl_Position = ProjectionModelViewMatrix * vec4(vPosition.xyz, 1.0);
texCoord = vTexCoord;
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.8 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.4 MiB

20
aaaa
View File

@ -1,20 +0,0 @@
//----------- 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!

Binary file not shown.

Before

Width:  |  Height:  |  Size: 768 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 768 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.0 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 64 KiB

View File

@ -1,372 +0,0 @@
# This is the CMakeCache file.
# For build in directory: /home/romazan/Рабочий стол/cproject/build-emcmake
# It was generated by CMake: /usr/bin/cmake
# You can edit this file to change values found and used by cmake.
# If you do not want to change any of the values, simply exit the editor.
# If you do want to change a value, simply edit, save, and exit the editor.
# The syntax for the file is as follows:
# KEY:TYPE=VALUE
# KEY is the name of a variable in the cache.
# TYPE is a hint to GUIs for the type of VALUE, DO NOT EDIT TYPE!.
# VALUE is the current value for the KEY.
########################
# EXTERNAL cache entries
########################
//Path to a program.
CMAKE_ADDR2LINE:FILEPATH=/usr/bin/addr2line
//Choose the type of build, options are: None Debug Release RelWithDebInfo
// MinSizeRel ...
CMAKE_BUILD_TYPE:STRING=
//Enable/Disable color output during build.
CMAKE_COLOR_MAKEFILE:BOOL=ON
//No help, variable specified on the command line.
CMAKE_CROSSCOMPILING_EMULATOR:UNINITIALIZED=/home/romazan/Рабочий стол/emsdk/node/20.18.0_64bit/bin/node
//Flags used by the CXX compiler during all build types.
CMAKE_CXX_FLAGS:STRING=
//Flags used by the CXX compiler during DEBUG builds.
CMAKE_CXX_FLAGS_DEBUG:STRING=-g
//Flags used by the CXX compiler during MINSIZEREL builds.
CMAKE_CXX_FLAGS_MINSIZEREL:STRING=-Os -DNDEBUG
//Flags used by the CXX compiler during RELEASE builds.
CMAKE_CXX_FLAGS_RELEASE:STRING=-O3 -DNDEBUG
//Flags used by the CXX compiler during RELWITHDEBINFO builds.
CMAKE_CXX_FLAGS_RELWITHDEBINFO:STRING=-O2 -g -DNDEBUG
//Path to a program.
CMAKE_DLLTOOL:FILEPATH=CMAKE_DLLTOOL-NOTFOUND
//Flags used by the linker during all build types.
CMAKE_EXE_LINKER_FLAGS:STRING=
//Flags used by the linker during DEBUG builds.
CMAKE_EXE_LINKER_FLAGS_DEBUG:STRING=
//Flags used by the linker during MINSIZEREL builds.
CMAKE_EXE_LINKER_FLAGS_MINSIZEREL:STRING=
//Flags used by the linker during RELEASE builds.
CMAKE_EXE_LINKER_FLAGS_RELEASE:STRING=
//Flags used by the linker during RELWITHDEBINFO builds.
CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO:STRING=
//Enable/Disable output of compile commands during generation.
CMAKE_EXPORT_COMPILE_COMMANDS:BOOL=
//Value Computed by CMake.
CMAKE_FIND_PACKAGE_REDIRECTS_DIR:STATIC=/home/romazan/Рабочий стол/cproject/build-emcmake/CMakeFiles/pkgRedirects
//Install path prefix, prepended onto install directories.
CMAKE_INSTALL_PREFIX:PATH=/home/romazan/Рабочий стол/cproject/build-emcmake/install
//Path to a program.
CMAKE_LINKER:FILEPATH=/usr/bin/ld
//Path to a program.
CMAKE_MAKE_PROGRAM:FILEPATH=/usr/bin/gmake
//Flags used by the linker during the creation of modules during
// all build types.
CMAKE_MODULE_LINKER_FLAGS:STRING=
//Flags used by the linker during the creation of modules during
// DEBUG builds.
CMAKE_MODULE_LINKER_FLAGS_DEBUG:STRING=
//Flags used by the linker during the creation of modules during
// MINSIZEREL builds.
CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL:STRING=
//Flags used by the linker during the creation of modules during
// RELEASE builds.
CMAKE_MODULE_LINKER_FLAGS_RELEASE:STRING=
//Flags used by the linker during the creation of modules during
// RELWITHDEBINFO builds.
CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO:STRING=
//Path to a program.
CMAKE_OBJCOPY:FILEPATH=/usr/bin/objcopy
//Path to a program.
CMAKE_OBJDUMP:FILEPATH=/usr/bin/objdump
//Value Computed by CMake
CMAKE_PROJECT_DESCRIPTION:STATIC=
//Value Computed by CMake
CMAKE_PROJECT_HOMEPAGE_URL:STATIC=
//Value Computed by CMake
CMAKE_PROJECT_NAME:STATIC=SDLApp
//Value Computed by CMake
CMAKE_PROJECT_VERSION:STATIC=1.0
//Value Computed by CMake
CMAKE_PROJECT_VERSION_MAJOR:STATIC=1
//Value Computed by CMake
CMAKE_PROJECT_VERSION_MINOR:STATIC=0
//Value Computed by CMake
CMAKE_PROJECT_VERSION_PATCH:STATIC=
//Value Computed by CMake
CMAKE_PROJECT_VERSION_TWEAK:STATIC=
//Path to a program.
CMAKE_READELF:FILEPATH=/usr/bin/readelf
//Flags used by the linker during the creation of shared libraries
// during all build types.
CMAKE_SHARED_LINKER_FLAGS:STRING=
//Flags used by the linker during the creation of shared libraries
// during DEBUG builds.
CMAKE_SHARED_LINKER_FLAGS_DEBUG:STRING=
//Flags used by the linker during the creation of shared libraries
// during MINSIZEREL builds.
CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL:STRING=
//Flags used by the linker during the creation of shared libraries
// during RELEASE builds.
CMAKE_SHARED_LINKER_FLAGS_RELEASE:STRING=
//Flags used by the linker during the creation of shared libraries
// during RELWITHDEBINFO builds.
CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO:STRING=
//If set, runtime paths are not added when installing shared libraries,
// but are added when building.
CMAKE_SKIP_INSTALL_RPATH:BOOL=NO
//If set, runtime paths are not added when using shared libraries.
CMAKE_SKIP_RPATH:BOOL=NO
//Flags used by the linker during the creation of static libraries
// during all build types.
CMAKE_STATIC_LINKER_FLAGS:STRING=
//Flags used by the linker during the creation of static libraries
// during DEBUG builds.
CMAKE_STATIC_LINKER_FLAGS_DEBUG:STRING=
//Flags used by the linker during the creation of static libraries
// during MINSIZEREL builds.
CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL:STRING=
//Flags used by the linker during the creation of static libraries
// during RELEASE builds.
CMAKE_STATIC_LINKER_FLAGS_RELEASE:STRING=
//Flags used by the linker during the creation of static libraries
// during RELWITHDEBINFO builds.
CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO:STRING=
//Path to a program.
CMAKE_STRIP:FILEPATH=/usr/bin/strip
//Path to a program.
CMAKE_TAPI:FILEPATH=CMAKE_TAPI-NOTFOUND
//No help, variable specified on the command line.
CMAKE_TOOLCHAIN_FILE:UNINITIALIZED=/home/romazan/Рабочий стол/emsdk/upstream/emscripten/cmake/Modules/Platform/Emscripten.cmake
//If this value is on, makefiles will be generated without the
// .SILENT directive, and all commands will be echoed to the console
// during the make. This is useful for debugging only. With Visual
// Studio IDE projects all commands are done without /nologo.
CMAKE_VERBOSE_MAKEFILE:BOOL=FALSE
//Force C/C++ compiler
EMSCRIPTEN_FORCE_COMPILERS:BOOL=OFF
//If set, static library targets generate LLVM bitcode files (.bc).
// If disabled (default), UNIX ar archives (.a) are generated.
EMSCRIPTEN_GENERATE_BITCODE_STATIC_LIBRARIES:BOOL=OFF
//Arguments to supply to pkg-config
PKG_CONFIG_ARGN:STRING=
//pkg-config executable
PKG_CONFIG_EXECUTABLE:FILEPATH=/usr/bin/pkg-config
//Value Computed by CMake
SDLApp_BINARY_DIR:STATIC=/home/romazan/Рабочий стол/cproject/build-emcmake
//Value Computed by CMake
SDLApp_IS_TOP_LEVEL:STATIC=ON
//Value Computed by CMake
SDLApp_SOURCE_DIR:STATIC=/home/romazan/Рабочий стол/cproject
########################
# INTERNAL cache entries
########################
//ADVANCED property for variable: CMAKE_ADDR2LINE
CMAKE_ADDR2LINE-ADVANCED:INTERNAL=1
//This is the directory where this CMakeCache.txt was created
CMAKE_CACHEFILE_DIR:INTERNAL=/home/romazan/Рабочий стол/cproject/build-emcmake
//Major version of cmake used to create the current loaded cache
CMAKE_CACHE_MAJOR_VERSION:INTERNAL=3
//Minor version of cmake used to create the current loaded cache
CMAKE_CACHE_MINOR_VERSION:INTERNAL=28
//Patch version of cmake used to create the current loaded cache
CMAKE_CACHE_PATCH_VERSION:INTERNAL=3
//ADVANCED property for variable: CMAKE_COLOR_MAKEFILE
CMAKE_COLOR_MAKEFILE-ADVANCED:INTERNAL=1
//Path to CMake executable.
CMAKE_COMMAND:INTERNAL=/usr/bin/cmake
//Path to cpack program executable.
CMAKE_CPACK_COMMAND:INTERNAL=/usr/bin/cpack
//Path to ctest program executable.
CMAKE_CTEST_COMMAND:INTERNAL=/usr/bin/ctest
//ADVANCED property for variable: CMAKE_CXX_FLAGS
CMAKE_CXX_FLAGS-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_CXX_FLAGS_DEBUG
CMAKE_CXX_FLAGS_DEBUG-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_CXX_FLAGS_MINSIZEREL
CMAKE_CXX_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_CXX_FLAGS_RELEASE
CMAKE_CXX_FLAGS_RELEASE-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_CXX_FLAGS_RELWITHDEBINFO
CMAKE_CXX_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_DLLTOOL
CMAKE_DLLTOOL-ADVANCED:INTERNAL=1
//Executable file format
CMAKE_EXECUTABLE_FORMAT:INTERNAL=Unknown
//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS
CMAKE_EXE_LINKER_FLAGS-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_DEBUG
CMAKE_EXE_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_MINSIZEREL
CMAKE_EXE_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_RELEASE
CMAKE_EXE_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO
CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_EXPORT_COMPILE_COMMANDS
CMAKE_EXPORT_COMPILE_COMMANDS-ADVANCED:INTERNAL=1
//Name of external makefile project generator.
CMAKE_EXTRA_GENERATOR:INTERNAL=
//Name of generator.
CMAKE_GENERATOR:INTERNAL=Unix Makefiles
//Generator instance identifier.
CMAKE_GENERATOR_INSTANCE:INTERNAL=
//Name of generator platform.
CMAKE_GENERATOR_PLATFORM:INTERNAL=
//Name of generator toolset.
CMAKE_GENERATOR_TOOLSET:INTERNAL=
//Test CMAKE_HAVE_LIBC_PTHREAD
CMAKE_HAVE_LIBC_PTHREAD:INTERNAL=1
//Source directory with the top level CMakeLists.txt file for this
// project
CMAKE_HOME_DIRECTORY:INTERNAL=/home/romazan/Рабочий стол/cproject
//ADVANCED property for variable: CMAKE_LINKER
CMAKE_LINKER-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_MAKE_PROGRAM
CMAKE_MAKE_PROGRAM-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS
CMAKE_MODULE_LINKER_FLAGS-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_DEBUG
CMAKE_MODULE_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL
CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_RELEASE
CMAKE_MODULE_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO
CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
//number of local generators
CMAKE_NUMBER_OF_MAKEFILES:INTERNAL=1
//ADVANCED property for variable: CMAKE_OBJCOPY
CMAKE_OBJCOPY-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_OBJDUMP
CMAKE_OBJDUMP-ADVANCED:INTERNAL=1
//Platform information initialized
CMAKE_PLATFORM_INFO_INITIALIZED:INTERNAL=1
//ADVANCED property for variable: CMAKE_READELF
CMAKE_READELF-ADVANCED:INTERNAL=1
//Path to CMake installation.
CMAKE_ROOT:INTERNAL=/usr/share/cmake-3.28
//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS
CMAKE_SHARED_LINKER_FLAGS-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_DEBUG
CMAKE_SHARED_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL
CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_RELEASE
CMAKE_SHARED_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO
CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_SKIP_INSTALL_RPATH
CMAKE_SKIP_INSTALL_RPATH-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_SKIP_RPATH
CMAKE_SKIP_RPATH-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS
CMAKE_STATIC_LINKER_FLAGS-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_DEBUG
CMAKE_STATIC_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL
CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_RELEASE
CMAKE_STATIC_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO
CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_STRIP
CMAKE_STRIP-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_TAPI
CMAKE_TAPI-ADVANCED:INTERNAL=1
//uname command
CMAKE_UNAME:INTERNAL=/usr/bin/uname
//ADVANCED property for variable: CMAKE_VERBOSE_MAKEFILE
CMAKE_VERBOSE_MAKEFILE-ADVANCED:INTERNAL=1
//If true, we are targeting Emscripten output.
EMSCRIPTEN:INTERNAL=1
//Details about finding PkgConfig
FIND_PACKAGE_MESSAGE_DETAILS_PkgConfig:INTERNAL=[/usr/bin/pkg-config][v1.8.1()]
//Details about finding Threads
FIND_PACKAGE_MESSAGE_DETAILS_Threads:INTERNAL=[TRUE][v()]
//ADVANCED property for variable: PKG_CONFIG_ARGN
PKG_CONFIG_ARGN-ADVANCED:INTERNAL=1
//ADVANCED property for variable: PKG_CONFIG_EXECUTABLE
PKG_CONFIG_EXECUTABLE-ADVANCED:INTERNAL=1
SDL2_CFLAGS:INTERNAL=
SDL2_CFLAGS_I:INTERNAL=
SDL2_CFLAGS_OTHER:INTERNAL=
SDL2_FOUND:INTERNAL=
SDL2_INCLUDEDIR:INTERNAL=
SDL2_LIBDIR:INTERNAL=
SDL2_LIBS:INTERNAL=
SDL2_LIBS_L:INTERNAL=
SDL2_LIBS_OTHER:INTERNAL=
SDL2_LIBS_PATHS:INTERNAL=
SDL2_MODULE_NAME:INTERNAL=
SDL2_PREFIX:INTERNAL=
SDL2_STATIC_CFLAGS:INTERNAL=
SDL2_STATIC_CFLAGS_I:INTERNAL=
SDL2_STATIC_CFLAGS_OTHER:INTERNAL=
SDL2_STATIC_LIBDIR:INTERNAL=
SDL2_STATIC_LIBS:INTERNAL=
SDL2_STATIC_LIBS_L:INTERNAL=
SDL2_STATIC_LIBS_OTHER:INTERNAL=
SDL2_STATIC_LIBS_PATHS:INTERNAL=
SDL2_VERSION:INTERNAL=
SDL2_sdl2_INCLUDEDIR:INTERNAL=
SDL2_sdl2_LIBDIR:INTERNAL=
SDL2_sdl2_PREFIX:INTERNAL=
SDL2_sdl2_VERSION:INTERNAL=

View File

@ -1,85 +0,0 @@
set(CMAKE_CXX_COMPILER "/home/romazan/Рабочий стол/emsdk/upstream/emscripten/em++")
set(CMAKE_CXX_COMPILER_ARG1 "")
set(CMAKE_CXX_COMPILER_ID "Clang")
set(CMAKE_CXX_COMPILER_VERSION "21.0.0")
set(CMAKE_CXX_COMPILER_VERSION_INTERNAL "")
set(CMAKE_CXX_COMPILER_WRAPPER "")
set(CMAKE_CXX_STANDARD_COMPUTED_DEFAULT "17")
set(CMAKE_CXX_EXTENSIONS_COMPUTED_DEFAULT "ON")
set(CMAKE_CXX_COMPILE_FEATURES "cxx_std_98;cxx_template_template_parameters;cxx_std_11;cxx_alias_templates;cxx_alignas;cxx_alignof;cxx_attributes;cxx_auto_type;cxx_constexpr;cxx_decltype;cxx_decltype_incomplete_return_types;cxx_default_function_template_args;cxx_defaulted_functions;cxx_defaulted_move_initializers;cxx_delegating_constructors;cxx_deleted_functions;cxx_enum_forward_declarations;cxx_explicit_conversions;cxx_extended_friend_declarations;cxx_extern_templates;cxx_final;cxx_func_identifier;cxx_generalized_initializers;cxx_inheriting_constructors;cxx_inline_namespaces;cxx_lambdas;cxx_local_type_template_args;cxx_long_long_type;cxx_noexcept;cxx_nonstatic_member_init;cxx_nullptr;cxx_override;cxx_range_for;cxx_raw_string_literals;cxx_reference_qualified_functions;cxx_right_angle_brackets;cxx_rvalue_references;cxx_sizeof_member;cxx_static_assert;cxx_strong_enums;cxx_thread_local;cxx_trailing_return_types;cxx_unicode_literals;cxx_uniform_initialization;cxx_unrestricted_unions;cxx_user_literals;cxx_variadic_macros;cxx_variadic_templates;cxx_std_14;cxx_aggregate_default_initializers;cxx_attribute_deprecated;cxx_binary_literals;cxx_contextual_conversions;cxx_decltype_auto;cxx_digit_separators;cxx_generic_lambdas;cxx_lambda_init_captures;cxx_relaxed_constexpr;cxx_return_type_deduction;cxx_variable_templates;cxx_std_17;cxx_std_20;cxx_std_23")
set(CMAKE_CXX98_COMPILE_FEATURES "cxx_std_98;cxx_template_template_parameters")
set(CMAKE_CXX11_COMPILE_FEATURES "cxx_std_11;cxx_alias_templates;cxx_alignas;cxx_alignof;cxx_attributes;cxx_auto_type;cxx_constexpr;cxx_decltype;cxx_decltype_incomplete_return_types;cxx_default_function_template_args;cxx_defaulted_functions;cxx_defaulted_move_initializers;cxx_delegating_constructors;cxx_deleted_functions;cxx_enum_forward_declarations;cxx_explicit_conversions;cxx_extended_friend_declarations;cxx_extern_templates;cxx_final;cxx_func_identifier;cxx_generalized_initializers;cxx_inheriting_constructors;cxx_inline_namespaces;cxx_lambdas;cxx_local_type_template_args;cxx_long_long_type;cxx_noexcept;cxx_nonstatic_member_init;cxx_nullptr;cxx_override;cxx_range_for;cxx_raw_string_literals;cxx_reference_qualified_functions;cxx_right_angle_brackets;cxx_rvalue_references;cxx_sizeof_member;cxx_static_assert;cxx_strong_enums;cxx_thread_local;cxx_trailing_return_types;cxx_unicode_literals;cxx_uniform_initialization;cxx_unrestricted_unions;cxx_user_literals;cxx_variadic_macros;cxx_variadic_templates")
set(CMAKE_CXX14_COMPILE_FEATURES "cxx_std_14;cxx_aggregate_default_initializers;cxx_attribute_deprecated;cxx_binary_literals;cxx_contextual_conversions;cxx_decltype_auto;cxx_digit_separators;cxx_generic_lambdas;cxx_lambda_init_captures;cxx_relaxed_constexpr;cxx_return_type_deduction;cxx_variable_templates")
set(CMAKE_CXX17_COMPILE_FEATURES "cxx_std_17")
set(CMAKE_CXX20_COMPILE_FEATURES "cxx_std_20")
set(CMAKE_CXX23_COMPILE_FEATURES "cxx_std_23")
set(CMAKE_CXX_PLATFORM_ID "")
set(CMAKE_CXX_SIMULATE_ID "")
set(CMAKE_CXX_COMPILER_FRONTEND_VARIANT "GNU")
set(CMAKE_CXX_SIMULATE_VERSION "")
set(CMAKE_AR "/home/romazan/Рабочий стол/emsdk/upstream/emscripten/emar")
set(CMAKE_CXX_COMPILER_AR "/home/romazan/Рабочий стол/emsdk/upstream/emscripten/emar")
set(CMAKE_RANLIB "/home/romazan/Рабочий стол/emsdk/upstream/emscripten/emranlib")
set(CMAKE_CXX_COMPILER_RANLIB "/home/romazan/Рабочий стол/emsdk/upstream/emscripten/emranlib")
set(CMAKE_LINKER "/usr/bin/ld")
set(CMAKE_MT "")
set(CMAKE_TAPI "CMAKE_TAPI-NOTFOUND")
set(CMAKE_COMPILER_IS_GNUCXX )
set(CMAKE_CXX_COMPILER_LOADED 1)
set(CMAKE_CXX_COMPILER_WORKS TRUE)
set(CMAKE_CXX_ABI_COMPILED TRUE)
set(CMAKE_CXX_COMPILER_ENV_VAR "CXX")
set(CMAKE_CXX_COMPILER_ID_RUN 1)
set(CMAKE_CXX_SOURCE_FILE_EXTENSIONS C;M;c++;cc;cpp;cxx;m;mm;mpp;CPP;ixx;cppm;ccm;cxxm;c++m)
set(CMAKE_CXX_IGNORE_EXTENSIONS inl;h;hpp;HPP;H;o;O;obj;OBJ;def;DEF;rc;RC)
foreach (lang C OBJC OBJCXX)
if (CMAKE_${lang}_COMPILER_ID_RUN)
foreach(extension IN LISTS CMAKE_${lang}_SOURCE_FILE_EXTENSIONS)
list(REMOVE_ITEM CMAKE_CXX_SOURCE_FILE_EXTENSIONS ${extension})
endforeach()
endif()
endforeach()
set(CMAKE_CXX_LINKER_PREFERENCE 30)
set(CMAKE_CXX_LINKER_PREFERENCE_PROPAGATES 1)
set(CMAKE_CXX_LINKER_DEPFILE_SUPPORTED FALSE)
# Save compiler ABI information.
set(CMAKE_CXX_SIZEOF_DATA_PTR "4")
set(CMAKE_CXX_COMPILER_ABI "")
set(CMAKE_CXX_BYTE_ORDER "LITTLE_ENDIAN")
set(CMAKE_CXX_LIBRARY_ARCHITECTURE "")
if(CMAKE_CXX_SIZEOF_DATA_PTR)
set(CMAKE_SIZEOF_VOID_P "${CMAKE_CXX_SIZEOF_DATA_PTR}")
endif()
if(CMAKE_CXX_COMPILER_ABI)
set(CMAKE_INTERNAL_PLATFORM_ABI "${CMAKE_CXX_COMPILER_ABI}")
endif()
if(CMAKE_CXX_LIBRARY_ARCHITECTURE)
set(CMAKE_LIBRARY_ARCHITECTURE "")
endif()
set(CMAKE_CXX_CL_SHOWINCLUDES_PREFIX "")
if(CMAKE_CXX_CL_SHOWINCLUDES_PREFIX)
set(CMAKE_CL_SHOWINCLUDES_PREFIX "${CMAKE_CXX_CL_SHOWINCLUDES_PREFIX}")
endif()
set(CMAKE_CXX_IMPLICIT_INCLUDE_DIRECTORIES "/home/romazan/Рабочий стол/emsdk/upstream/emscripten/cache/sysroot/include/fakesdl;/home/romazan/Рабочий стол/emsdk/upstream/emscripten/cache/sysroot/include/compat;/home/romazan/Рабочий стол/emsdk/upstream/emscripten/cache/sysroot/include/c++/v1;/home/romazan/Рабочий стол/emsdk/upstream/lib/clang/21/include;/home/romazan/Рабочий стол/emsdk/upstream/emscripten/cache/sysroot/include")
set(CMAKE_CXX_IMPLICIT_LINK_LIBRARIES "GL-getprocaddr;al;html5;stubs-debug;noexit;c-debug;dlmalloc-debug;compiler_rt;c++-noexcept;c++abi-debug-noexcept;sockets")
set(CMAKE_CXX_IMPLICIT_LINK_DIRECTORIES "/home/romazan/Рабочий стол/emsdk/upstream/emscripten/cache/sysroot/lib/wasm32-emscripten;/home/romazan/Рабочий стол/emsdk/upstream/emscripten/src/lib")
set(CMAKE_CXX_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES "")

View File

@ -1,15 +0,0 @@
set(CMAKE_HOST_SYSTEM "Linux-6.8.0-53-generic")
set(CMAKE_HOST_SYSTEM_NAME "Linux")
set(CMAKE_HOST_SYSTEM_VERSION "6.8.0-53-generic")
set(CMAKE_HOST_SYSTEM_PROCESSOR "x86_64")
include("/home/romazan/Рабочий стол/emsdk/upstream/emscripten/cmake/Modules/Platform/Emscripten.cmake")
set(CMAKE_SYSTEM "Emscripten-1")
set(CMAKE_SYSTEM_NAME "Emscripten")
set(CMAKE_SYSTEM_VERSION "1")
set(CMAKE_SYSTEM_PROCESSOR "x86")
set(CMAKE_CROSSCOMPILING "TRUE")
set(CMAKE_SYSTEM_LOADED 1)

View File

@ -1,869 +0,0 @@
/* This source file must have a .cpp extension so that all C++ compilers
recognize the extension without flags. Borland does not know .cxx for
example. */
#ifndef __cplusplus
# error "A C compiler has been selected for C++."
#endif
#if !defined(__has_include)
/* If the compiler does not have __has_include, pretend the answer is
always no. */
# define __has_include(x) 0
#endif
/* Version number components: V=Version, R=Revision, P=Patch
Version date components: YYYY=Year, MM=Month, DD=Day */
#if defined(__COMO__)
# define COMPILER_ID "Comeau"
/* __COMO_VERSION__ = VRR */
# define COMPILER_VERSION_MAJOR DEC(__COMO_VERSION__ / 100)
# define COMPILER_VERSION_MINOR DEC(__COMO_VERSION__ % 100)
#elif defined(__INTEL_COMPILER) || defined(__ICC)
# define COMPILER_ID "Intel"
# if defined(_MSC_VER)
# define SIMULATE_ID "MSVC"
# endif
# if defined(__GNUC__)
# define SIMULATE_ID "GNU"
# endif
/* __INTEL_COMPILER = VRP prior to 2021, and then VVVV for 2021 and later,
except that a few beta releases use the old format with V=2021. */
# if __INTEL_COMPILER < 2021 || __INTEL_COMPILER == 202110 || __INTEL_COMPILER == 202111
# define COMPILER_VERSION_MAJOR DEC(__INTEL_COMPILER/100)
# define COMPILER_VERSION_MINOR DEC(__INTEL_COMPILER/10 % 10)
# if defined(__INTEL_COMPILER_UPDATE)
# define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER_UPDATE)
# else
# define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER % 10)
# endif
# else
# define COMPILER_VERSION_MAJOR DEC(__INTEL_COMPILER)
# define COMPILER_VERSION_MINOR DEC(__INTEL_COMPILER_UPDATE)
/* The third version component from --version is an update index,
but no macro is provided for it. */
# define COMPILER_VERSION_PATCH DEC(0)
# endif
# if defined(__INTEL_COMPILER_BUILD_DATE)
/* __INTEL_COMPILER_BUILD_DATE = YYYYMMDD */
# define COMPILER_VERSION_TWEAK DEC(__INTEL_COMPILER_BUILD_DATE)
# endif
# if defined(_MSC_VER)
/* _MSC_VER = VVRR */
# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
# endif
# if defined(__GNUC__)
# define SIMULATE_VERSION_MAJOR DEC(__GNUC__)
# elif defined(__GNUG__)
# define SIMULATE_VERSION_MAJOR DEC(__GNUG__)
# endif
# if defined(__GNUC_MINOR__)
# define SIMULATE_VERSION_MINOR DEC(__GNUC_MINOR__)
# endif
# if defined(__GNUC_PATCHLEVEL__)
# define SIMULATE_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__)
# endif
#elif (defined(__clang__) && defined(__INTEL_CLANG_COMPILER)) || defined(__INTEL_LLVM_COMPILER)
# define COMPILER_ID "IntelLLVM"
#if defined(_MSC_VER)
# define SIMULATE_ID "MSVC"
#endif
#if defined(__GNUC__)
# define SIMULATE_ID "GNU"
#endif
/* __INTEL_LLVM_COMPILER = VVVVRP prior to 2021.2.0, VVVVRRPP for 2021.2.0 and
* later. Look for 6 digit vs. 8 digit version number to decide encoding.
* VVVV is no smaller than the current year when a version is released.
*/
#if __INTEL_LLVM_COMPILER < 1000000L
# define COMPILER_VERSION_MAJOR DEC(__INTEL_LLVM_COMPILER/100)
# define COMPILER_VERSION_MINOR DEC(__INTEL_LLVM_COMPILER/10 % 10)
# define COMPILER_VERSION_PATCH DEC(__INTEL_LLVM_COMPILER % 10)
#else
# define COMPILER_VERSION_MAJOR DEC(__INTEL_LLVM_COMPILER/10000)
# define COMPILER_VERSION_MINOR DEC(__INTEL_LLVM_COMPILER/100 % 100)
# define COMPILER_VERSION_PATCH DEC(__INTEL_LLVM_COMPILER % 100)
#endif
#if defined(_MSC_VER)
/* _MSC_VER = VVRR */
# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
#endif
#if defined(__GNUC__)
# define SIMULATE_VERSION_MAJOR DEC(__GNUC__)
#elif defined(__GNUG__)
# define SIMULATE_VERSION_MAJOR DEC(__GNUG__)
#endif
#if defined(__GNUC_MINOR__)
# define SIMULATE_VERSION_MINOR DEC(__GNUC_MINOR__)
#endif
#if defined(__GNUC_PATCHLEVEL__)
# define SIMULATE_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__)
#endif
#elif defined(__PATHCC__)
# define COMPILER_ID "PathScale"
# define COMPILER_VERSION_MAJOR DEC(__PATHCC__)
# define COMPILER_VERSION_MINOR DEC(__PATHCC_MINOR__)
# if defined(__PATHCC_PATCHLEVEL__)
# define COMPILER_VERSION_PATCH DEC(__PATHCC_PATCHLEVEL__)
# endif
#elif defined(__BORLANDC__) && defined(__CODEGEARC_VERSION__)
# define COMPILER_ID "Embarcadero"
# define COMPILER_VERSION_MAJOR HEX(__CODEGEARC_VERSION__>>24 & 0x00FF)
# define COMPILER_VERSION_MINOR HEX(__CODEGEARC_VERSION__>>16 & 0x00FF)
# define COMPILER_VERSION_PATCH DEC(__CODEGEARC_VERSION__ & 0xFFFF)
#elif defined(__BORLANDC__)
# define COMPILER_ID "Borland"
/* __BORLANDC__ = 0xVRR */
# define COMPILER_VERSION_MAJOR HEX(__BORLANDC__>>8)
# define COMPILER_VERSION_MINOR HEX(__BORLANDC__ & 0xFF)
#elif defined(__WATCOMC__) && __WATCOMC__ < 1200
# define COMPILER_ID "Watcom"
/* __WATCOMC__ = VVRR */
# define COMPILER_VERSION_MAJOR DEC(__WATCOMC__ / 100)
# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10)
# if (__WATCOMC__ % 10) > 0
# define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10)
# endif
#elif defined(__WATCOMC__)
# define COMPILER_ID "OpenWatcom"
/* __WATCOMC__ = VVRP + 1100 */
# define COMPILER_VERSION_MAJOR DEC((__WATCOMC__ - 1100) / 100)
# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10)
# if (__WATCOMC__ % 10) > 0
# define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10)
# endif
#elif defined(__SUNPRO_CC)
# define COMPILER_ID "SunPro"
# if __SUNPRO_CC >= 0x5100
/* __SUNPRO_CC = 0xVRRP */
# define COMPILER_VERSION_MAJOR HEX(__SUNPRO_CC>>12)
# define COMPILER_VERSION_MINOR HEX(__SUNPRO_CC>>4 & 0xFF)
# define COMPILER_VERSION_PATCH HEX(__SUNPRO_CC & 0xF)
# else
/* __SUNPRO_CC = 0xVRP */
# define COMPILER_VERSION_MAJOR HEX(__SUNPRO_CC>>8)
# define COMPILER_VERSION_MINOR HEX(__SUNPRO_CC>>4 & 0xF)
# define COMPILER_VERSION_PATCH HEX(__SUNPRO_CC & 0xF)
# endif
#elif defined(__HP_aCC)
# define COMPILER_ID "HP"
/* __HP_aCC = VVRRPP */
# define COMPILER_VERSION_MAJOR DEC(__HP_aCC/10000)
# define COMPILER_VERSION_MINOR DEC(__HP_aCC/100 % 100)
# define COMPILER_VERSION_PATCH DEC(__HP_aCC % 100)
#elif defined(__DECCXX)
# define COMPILER_ID "Compaq"
/* __DECCXX_VER = VVRRTPPPP */
# define COMPILER_VERSION_MAJOR DEC(__DECCXX_VER/10000000)
# define COMPILER_VERSION_MINOR DEC(__DECCXX_VER/100000 % 100)
# define COMPILER_VERSION_PATCH DEC(__DECCXX_VER % 10000)
#elif defined(__IBMCPP__) && defined(__COMPILER_VER__)
# define COMPILER_ID "zOS"
/* __IBMCPP__ = VRP */
# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100)
# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10)
# define COMPILER_VERSION_PATCH DEC(__IBMCPP__ % 10)
#elif defined(__open_xl__) && defined(__clang__)
# define COMPILER_ID "IBMClang"
# define COMPILER_VERSION_MAJOR DEC(__open_xl_version__)
# define COMPILER_VERSION_MINOR DEC(__open_xl_release__)
# define COMPILER_VERSION_PATCH DEC(__open_xl_modification__)
# define COMPILER_VERSION_TWEAK DEC(__open_xl_ptf_fix_level__)
#elif defined(__ibmxl__) && defined(__clang__)
# define COMPILER_ID "XLClang"
# define COMPILER_VERSION_MAJOR DEC(__ibmxl_version__)
# define COMPILER_VERSION_MINOR DEC(__ibmxl_release__)
# define COMPILER_VERSION_PATCH DEC(__ibmxl_modification__)
# define COMPILER_VERSION_TWEAK DEC(__ibmxl_ptf_fix_level__)
#elif defined(__IBMCPP__) && !defined(__COMPILER_VER__) && __IBMCPP__ >= 800
# define COMPILER_ID "XL"
/* __IBMCPP__ = VRP */
# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100)
# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10)
# define COMPILER_VERSION_PATCH DEC(__IBMCPP__ % 10)
#elif defined(__IBMCPP__) && !defined(__COMPILER_VER__) && __IBMCPP__ < 800
# define COMPILER_ID "VisualAge"
/* __IBMCPP__ = VRP */
# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100)
# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10)
# define COMPILER_VERSION_PATCH DEC(__IBMCPP__ % 10)
#elif defined(__NVCOMPILER)
# define COMPILER_ID "NVHPC"
# define COMPILER_VERSION_MAJOR DEC(__NVCOMPILER_MAJOR__)
# define COMPILER_VERSION_MINOR DEC(__NVCOMPILER_MINOR__)
# if defined(__NVCOMPILER_PATCHLEVEL__)
# define COMPILER_VERSION_PATCH DEC(__NVCOMPILER_PATCHLEVEL__)
# endif
#elif defined(__PGI)
# define COMPILER_ID "PGI"
# define COMPILER_VERSION_MAJOR DEC(__PGIC__)
# define COMPILER_VERSION_MINOR DEC(__PGIC_MINOR__)
# if defined(__PGIC_PATCHLEVEL__)
# define COMPILER_VERSION_PATCH DEC(__PGIC_PATCHLEVEL__)
# endif
#elif defined(__clang__) && defined(__cray__)
# define COMPILER_ID "CrayClang"
# define COMPILER_VERSION_MAJOR DEC(__cray_major__)
# define COMPILER_VERSION_MINOR DEC(__cray_minor__)
# define COMPILER_VERSION_PATCH DEC(__cray_patchlevel__)
# define COMPILER_VERSION_INTERNAL_STR __clang_version__
#elif defined(_CRAYC)
# define COMPILER_ID "Cray"
# define COMPILER_VERSION_MAJOR DEC(_RELEASE_MAJOR)
# define COMPILER_VERSION_MINOR DEC(_RELEASE_MINOR)
#elif defined(__TI_COMPILER_VERSION__)
# define COMPILER_ID "TI"
/* __TI_COMPILER_VERSION__ = VVVRRRPPP */
# define COMPILER_VERSION_MAJOR DEC(__TI_COMPILER_VERSION__/1000000)
# define COMPILER_VERSION_MINOR DEC(__TI_COMPILER_VERSION__/1000 % 1000)
# define COMPILER_VERSION_PATCH DEC(__TI_COMPILER_VERSION__ % 1000)
#elif defined(__CLANG_FUJITSU)
# define COMPILER_ID "FujitsuClang"
# define COMPILER_VERSION_MAJOR DEC(__FCC_major__)
# define COMPILER_VERSION_MINOR DEC(__FCC_minor__)
# define COMPILER_VERSION_PATCH DEC(__FCC_patchlevel__)
# define COMPILER_VERSION_INTERNAL_STR __clang_version__
#elif defined(__FUJITSU)
# define COMPILER_ID "Fujitsu"
# if defined(__FCC_version__)
# define COMPILER_VERSION __FCC_version__
# elif defined(__FCC_major__)
# define COMPILER_VERSION_MAJOR DEC(__FCC_major__)
# define COMPILER_VERSION_MINOR DEC(__FCC_minor__)
# define COMPILER_VERSION_PATCH DEC(__FCC_patchlevel__)
# endif
# if defined(__fcc_version)
# define COMPILER_VERSION_INTERNAL DEC(__fcc_version)
# elif defined(__FCC_VERSION)
# define COMPILER_VERSION_INTERNAL DEC(__FCC_VERSION)
# endif
#elif defined(__ghs__)
# define COMPILER_ID "GHS"
/* __GHS_VERSION_NUMBER = VVVVRP */
# ifdef __GHS_VERSION_NUMBER
# define COMPILER_VERSION_MAJOR DEC(__GHS_VERSION_NUMBER / 100)
# define COMPILER_VERSION_MINOR DEC(__GHS_VERSION_NUMBER / 10 % 10)
# define COMPILER_VERSION_PATCH DEC(__GHS_VERSION_NUMBER % 10)
# endif
#elif defined(__TASKING__)
# define COMPILER_ID "Tasking"
# define COMPILER_VERSION_MAJOR DEC(__VERSION__/1000)
# define COMPILER_VERSION_MINOR DEC(__VERSION__ % 100)
# define COMPILER_VERSION_INTERNAL DEC(__VERSION__)
#elif defined(__ORANGEC__)
# define COMPILER_ID "OrangeC"
# define COMPILER_VERSION_MAJOR DEC(__ORANGEC_MAJOR__)
# define COMPILER_VERSION_MINOR DEC(__ORANGEC_MINOR__)
# define COMPILER_VERSION_PATCH DEC(__ORANGEC_PATCHLEVEL__)
#elif defined(__SCO_VERSION__)
# define COMPILER_ID "SCO"
#elif defined(__ARMCC_VERSION) && !defined(__clang__)
# define COMPILER_ID "ARMCC"
#if __ARMCC_VERSION >= 1000000
/* __ARMCC_VERSION = VRRPPPP */
# define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/1000000)
# define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 100)
# define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION % 10000)
#else
/* __ARMCC_VERSION = VRPPPP */
# define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/100000)
# define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 10)
# define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION % 10000)
#endif
#elif defined(__clang__) && defined(__apple_build_version__)
# define COMPILER_ID "AppleClang"
# if defined(_MSC_VER)
# define SIMULATE_ID "MSVC"
# endif
# define COMPILER_VERSION_MAJOR DEC(__clang_major__)
# define COMPILER_VERSION_MINOR DEC(__clang_minor__)
# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__)
# if defined(_MSC_VER)
/* _MSC_VER = VVRR */
# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
# endif
# define COMPILER_VERSION_TWEAK DEC(__apple_build_version__)
#elif defined(__clang__) && defined(__ARMCOMPILER_VERSION)
# define COMPILER_ID "ARMClang"
# define COMPILER_VERSION_MAJOR DEC(__ARMCOMPILER_VERSION/1000000)
# define COMPILER_VERSION_MINOR DEC(__ARMCOMPILER_VERSION/10000 % 100)
# define COMPILER_VERSION_PATCH DEC(__ARMCOMPILER_VERSION/100 % 100)
# define COMPILER_VERSION_INTERNAL DEC(__ARMCOMPILER_VERSION)
#elif defined(__clang__)
# define COMPILER_ID "Clang"
# if defined(_MSC_VER)
# define SIMULATE_ID "MSVC"
# endif
# define COMPILER_VERSION_MAJOR DEC(__clang_major__)
# define COMPILER_VERSION_MINOR DEC(__clang_minor__)
# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__)
# if defined(_MSC_VER)
/* _MSC_VER = VVRR */
# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
# endif
#elif defined(__LCC__) && (defined(__GNUC__) || defined(__GNUG__) || defined(__MCST__))
# define COMPILER_ID "LCC"
# define COMPILER_VERSION_MAJOR DEC(__LCC__ / 100)
# define COMPILER_VERSION_MINOR DEC(__LCC__ % 100)
# if defined(__LCC_MINOR__)
# define COMPILER_VERSION_PATCH DEC(__LCC_MINOR__)
# endif
# if defined(__GNUC__) && defined(__GNUC_MINOR__)
# define SIMULATE_ID "GNU"
# define SIMULATE_VERSION_MAJOR DEC(__GNUC__)
# define SIMULATE_VERSION_MINOR DEC(__GNUC_MINOR__)
# if defined(__GNUC_PATCHLEVEL__)
# define SIMULATE_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__)
# endif
# endif
#elif defined(__GNUC__) || defined(__GNUG__)
# define COMPILER_ID "GNU"
# if defined(__GNUC__)
# define COMPILER_VERSION_MAJOR DEC(__GNUC__)
# else
# define COMPILER_VERSION_MAJOR DEC(__GNUG__)
# endif
# if defined(__GNUC_MINOR__)
# define COMPILER_VERSION_MINOR DEC(__GNUC_MINOR__)
# endif
# if defined(__GNUC_PATCHLEVEL__)
# define COMPILER_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__)
# endif
#elif defined(_MSC_VER)
# define COMPILER_ID "MSVC"
/* _MSC_VER = VVRR */
# define COMPILER_VERSION_MAJOR DEC(_MSC_VER / 100)
# define COMPILER_VERSION_MINOR DEC(_MSC_VER % 100)
# if defined(_MSC_FULL_VER)
# if _MSC_VER >= 1400
/* _MSC_FULL_VER = VVRRPPPPP */
# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 100000)
# else
/* _MSC_FULL_VER = VVRRPPPP */
# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 10000)
# endif
# endif
# if defined(_MSC_BUILD)
# define COMPILER_VERSION_TWEAK DEC(_MSC_BUILD)
# endif
#elif defined(_ADI_COMPILER)
# define COMPILER_ID "ADSP"
#if defined(__VERSIONNUM__)
/* __VERSIONNUM__ = 0xVVRRPPTT */
# define COMPILER_VERSION_MAJOR DEC(__VERSIONNUM__ >> 24 & 0xFF)
# define COMPILER_VERSION_MINOR DEC(__VERSIONNUM__ >> 16 & 0xFF)
# define COMPILER_VERSION_PATCH DEC(__VERSIONNUM__ >> 8 & 0xFF)
# define COMPILER_VERSION_TWEAK DEC(__VERSIONNUM__ & 0xFF)
#endif
#elif defined(__IAR_SYSTEMS_ICC__) || defined(__IAR_SYSTEMS_ICC)
# define COMPILER_ID "IAR"
# if defined(__VER__) && defined(__ICCARM__)
# define COMPILER_VERSION_MAJOR DEC((__VER__) / 1000000)
# define COMPILER_VERSION_MINOR DEC(((__VER__) / 1000) % 1000)
# define COMPILER_VERSION_PATCH DEC((__VER__) % 1000)
# define COMPILER_VERSION_INTERNAL DEC(__IAR_SYSTEMS_ICC__)
# elif defined(__VER__) && (defined(__ICCAVR__) || defined(__ICCRX__) || defined(__ICCRH850__) || defined(__ICCRL78__) || defined(__ICC430__) || defined(__ICCRISCV__) || defined(__ICCV850__) || defined(__ICC8051__) || defined(__ICCSTM8__))
# define COMPILER_VERSION_MAJOR DEC((__VER__) / 100)
# define COMPILER_VERSION_MINOR DEC((__VER__) - (((__VER__) / 100)*100))
# define COMPILER_VERSION_PATCH DEC(__SUBVERSION__)
# define COMPILER_VERSION_INTERNAL DEC(__IAR_SYSTEMS_ICC__)
# endif
/* These compilers are either not known or too old to define an
identification macro. Try to identify the platform and guess that
it is the native compiler. */
#elif defined(__hpux) || defined(__hpua)
# define COMPILER_ID "HP"
#else /* unknown compiler */
# define COMPILER_ID ""
#endif
/* Construct the string literal in pieces to prevent the source from
getting matched. Store it in a pointer rather than an array
because some compilers will just produce instructions to fill the
array rather than assigning a pointer to a static array. */
char const* info_compiler = "INFO" ":" "compiler[" COMPILER_ID "]";
#ifdef SIMULATE_ID
char const* info_simulate = "INFO" ":" "simulate[" SIMULATE_ID "]";
#endif
#ifdef __QNXNTO__
char const* qnxnto = "INFO" ":" "qnxnto[]";
#endif
#if defined(__CRAYXT_COMPUTE_LINUX_TARGET)
char const *info_cray = "INFO" ":" "compiler_wrapper[CrayPrgEnv]";
#endif
#define STRINGIFY_HELPER(X) #X
#define STRINGIFY(X) STRINGIFY_HELPER(X)
/* Identify known platforms by name. */
#if defined(__linux) || defined(__linux__) || defined(linux)
# define PLATFORM_ID "Linux"
#elif defined(__MSYS__)
# define PLATFORM_ID "MSYS"
#elif defined(__CYGWIN__)
# define PLATFORM_ID "Cygwin"
#elif defined(__MINGW32__)
# define PLATFORM_ID "MinGW"
#elif defined(__APPLE__)
# define PLATFORM_ID "Darwin"
#elif defined(_WIN32) || defined(__WIN32__) || defined(WIN32)
# define PLATFORM_ID "Windows"
#elif defined(__FreeBSD__) || defined(__FreeBSD)
# define PLATFORM_ID "FreeBSD"
#elif defined(__NetBSD__) || defined(__NetBSD)
# define PLATFORM_ID "NetBSD"
#elif defined(__OpenBSD__) || defined(__OPENBSD)
# define PLATFORM_ID "OpenBSD"
#elif defined(__sun) || defined(sun)
# define PLATFORM_ID "SunOS"
#elif defined(_AIX) || defined(__AIX) || defined(__AIX__) || defined(__aix) || defined(__aix__)
# define PLATFORM_ID "AIX"
#elif defined(__hpux) || defined(__hpux__)
# define PLATFORM_ID "HP-UX"
#elif defined(__HAIKU__)
# define PLATFORM_ID "Haiku"
#elif defined(__BeOS) || defined(__BEOS__) || defined(_BEOS)
# define PLATFORM_ID "BeOS"
#elif defined(__QNX__) || defined(__QNXNTO__)
# define PLATFORM_ID "QNX"
#elif defined(__tru64) || defined(_tru64) || defined(__TRU64__)
# define PLATFORM_ID "Tru64"
#elif defined(__riscos) || defined(__riscos__)
# define PLATFORM_ID "RISCos"
#elif defined(__sinix) || defined(__sinix__) || defined(__SINIX__)
# define PLATFORM_ID "SINIX"
#elif defined(__UNIX_SV__)
# define PLATFORM_ID "UNIX_SV"
#elif defined(__bsdos__)
# define PLATFORM_ID "BSDOS"
#elif defined(_MPRAS) || defined(MPRAS)
# define PLATFORM_ID "MP-RAS"
#elif defined(__osf) || defined(__osf__)
# define PLATFORM_ID "OSF1"
#elif defined(_SCO_SV) || defined(SCO_SV) || defined(sco_sv)
# define PLATFORM_ID "SCO_SV"
#elif defined(__ultrix) || defined(__ultrix__) || defined(_ULTRIX)
# define PLATFORM_ID "ULTRIX"
#elif defined(__XENIX__) || defined(_XENIX) || defined(XENIX)
# define PLATFORM_ID "Xenix"
#elif defined(__WATCOMC__)
# if defined(__LINUX__)
# define PLATFORM_ID "Linux"
# elif defined(__DOS__)
# define PLATFORM_ID "DOS"
# elif defined(__OS2__)
# define PLATFORM_ID "OS2"
# elif defined(__WINDOWS__)
# define PLATFORM_ID "Windows3x"
# elif defined(__VXWORKS__)
# define PLATFORM_ID "VxWorks"
# else /* unknown platform */
# define PLATFORM_ID
# endif
#elif defined(__INTEGRITY)
# if defined(INT_178B)
# define PLATFORM_ID "Integrity178"
# else /* regular Integrity */
# define PLATFORM_ID "Integrity"
# endif
# elif defined(_ADI_COMPILER)
# define PLATFORM_ID "ADSP"
#else /* unknown platform */
# define PLATFORM_ID
#endif
/* For windows compilers MSVC and Intel we can determine
the architecture of the compiler being used. This is because
the compilers do not have flags that can change the architecture,
but rather depend on which compiler is being used
*/
#if defined(_WIN32) && defined(_MSC_VER)
# if defined(_M_IA64)
# define ARCHITECTURE_ID "IA64"
# elif defined(_M_ARM64EC)
# define ARCHITECTURE_ID "ARM64EC"
# elif defined(_M_X64) || defined(_M_AMD64)
# define ARCHITECTURE_ID "x64"
# elif defined(_M_IX86)
# define ARCHITECTURE_ID "X86"
# elif defined(_M_ARM64)
# define ARCHITECTURE_ID "ARM64"
# elif defined(_M_ARM)
# if _M_ARM == 4
# define ARCHITECTURE_ID "ARMV4I"
# elif _M_ARM == 5
# define ARCHITECTURE_ID "ARMV5I"
# else
# define ARCHITECTURE_ID "ARMV" STRINGIFY(_M_ARM)
# endif
# elif defined(_M_MIPS)
# define ARCHITECTURE_ID "MIPS"
# elif defined(_M_SH)
# define ARCHITECTURE_ID "SHx"
# else /* unknown architecture */
# define ARCHITECTURE_ID ""
# endif
#elif defined(__WATCOMC__)
# if defined(_M_I86)
# define ARCHITECTURE_ID "I86"
# elif defined(_M_IX86)
# define ARCHITECTURE_ID "X86"
# else /* unknown architecture */
# define ARCHITECTURE_ID ""
# endif
#elif defined(__IAR_SYSTEMS_ICC__) || defined(__IAR_SYSTEMS_ICC)
# if defined(__ICCARM__)
# define ARCHITECTURE_ID "ARM"
# elif defined(__ICCRX__)
# define ARCHITECTURE_ID "RX"
# elif defined(__ICCRH850__)
# define ARCHITECTURE_ID "RH850"
# elif defined(__ICCRL78__)
# define ARCHITECTURE_ID "RL78"
# elif defined(__ICCRISCV__)
# define ARCHITECTURE_ID "RISCV"
# elif defined(__ICCAVR__)
# define ARCHITECTURE_ID "AVR"
# elif defined(__ICC430__)
# define ARCHITECTURE_ID "MSP430"
# elif defined(__ICCV850__)
# define ARCHITECTURE_ID "V850"
# elif defined(__ICC8051__)
# define ARCHITECTURE_ID "8051"
# elif defined(__ICCSTM8__)
# define ARCHITECTURE_ID "STM8"
# else /* unknown architecture */
# define ARCHITECTURE_ID ""
# endif
#elif defined(__ghs__)
# if defined(__PPC64__)
# define ARCHITECTURE_ID "PPC64"
# elif defined(__ppc__)
# define ARCHITECTURE_ID "PPC"
# elif defined(__ARM__)
# define ARCHITECTURE_ID "ARM"
# elif defined(__x86_64__)
# define ARCHITECTURE_ID "x64"
# elif defined(__i386__)
# define ARCHITECTURE_ID "X86"
# else /* unknown architecture */
# define ARCHITECTURE_ID ""
# endif
#elif defined(__TI_COMPILER_VERSION__)
# if defined(__TI_ARM__)
# define ARCHITECTURE_ID "ARM"
# elif defined(__MSP430__)
# define ARCHITECTURE_ID "MSP430"
# elif defined(__TMS320C28XX__)
# define ARCHITECTURE_ID "TMS320C28x"
# elif defined(__TMS320C6X__) || defined(_TMS320C6X)
# define ARCHITECTURE_ID "TMS320C6x"
# else /* unknown architecture */
# define ARCHITECTURE_ID ""
# endif
# elif defined(__ADSPSHARC__)
# define ARCHITECTURE_ID "SHARC"
# elif defined(__ADSPBLACKFIN__)
# define ARCHITECTURE_ID "Blackfin"
#elif defined(__TASKING__)
# if defined(__CTC__) || defined(__CPTC__)
# define ARCHITECTURE_ID "TriCore"
# elif defined(__CMCS__)
# define ARCHITECTURE_ID "MCS"
# elif defined(__CARM__)
# define ARCHITECTURE_ID "ARM"
# elif defined(__CARC__)
# define ARCHITECTURE_ID "ARC"
# elif defined(__C51__)
# define ARCHITECTURE_ID "8051"
# elif defined(__CPCP__)
# define ARCHITECTURE_ID "PCP"
# else
# define ARCHITECTURE_ID ""
# endif
#else
# define ARCHITECTURE_ID
#endif
/* Convert integer to decimal digit literals. */
#define DEC(n) \
('0' + (((n) / 10000000)%10)), \
('0' + (((n) / 1000000)%10)), \
('0' + (((n) / 100000)%10)), \
('0' + (((n) / 10000)%10)), \
('0' + (((n) / 1000)%10)), \
('0' + (((n) / 100)%10)), \
('0' + (((n) / 10)%10)), \
('0' + ((n) % 10))
/* Convert integer to hex digit literals. */
#define HEX(n) \
('0' + ((n)>>28 & 0xF)), \
('0' + ((n)>>24 & 0xF)), \
('0' + ((n)>>20 & 0xF)), \
('0' + ((n)>>16 & 0xF)), \
('0' + ((n)>>12 & 0xF)), \
('0' + ((n)>>8 & 0xF)), \
('0' + ((n)>>4 & 0xF)), \
('0' + ((n) & 0xF))
/* Construct a string literal encoding the version number. */
#ifdef COMPILER_VERSION
char const* info_version = "INFO" ":" "compiler_version[" COMPILER_VERSION "]";
/* Construct a string literal encoding the version number components. */
#elif defined(COMPILER_VERSION_MAJOR)
char const info_version[] = {
'I', 'N', 'F', 'O', ':',
'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','[',
COMPILER_VERSION_MAJOR,
# ifdef COMPILER_VERSION_MINOR
'.', COMPILER_VERSION_MINOR,
# ifdef COMPILER_VERSION_PATCH
'.', COMPILER_VERSION_PATCH,
# ifdef COMPILER_VERSION_TWEAK
'.', COMPILER_VERSION_TWEAK,
# endif
# endif
# endif
']','\0'};
#endif
/* Construct a string literal encoding the internal version number. */
#ifdef COMPILER_VERSION_INTERNAL
char const info_version_internal[] = {
'I', 'N', 'F', 'O', ':',
'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','_',
'i','n','t','e','r','n','a','l','[',
COMPILER_VERSION_INTERNAL,']','\0'};
#elif defined(COMPILER_VERSION_INTERNAL_STR)
char const* info_version_internal = "INFO" ":" "compiler_version_internal[" COMPILER_VERSION_INTERNAL_STR "]";
#endif
/* Construct a string literal encoding the version number components. */
#ifdef SIMULATE_VERSION_MAJOR
char const info_simulate_version[] = {
'I', 'N', 'F', 'O', ':',
's','i','m','u','l','a','t','e','_','v','e','r','s','i','o','n','[',
SIMULATE_VERSION_MAJOR,
# ifdef SIMULATE_VERSION_MINOR
'.', SIMULATE_VERSION_MINOR,
# ifdef SIMULATE_VERSION_PATCH
'.', SIMULATE_VERSION_PATCH,
# ifdef SIMULATE_VERSION_TWEAK
'.', SIMULATE_VERSION_TWEAK,
# endif
# endif
# endif
']','\0'};
#endif
/* Construct the string literal in pieces to prevent the source from
getting matched. Store it in a pointer rather than an array
because some compilers will just produce instructions to fill the
array rather than assigning a pointer to a static array. */
char const* info_platform = "INFO" ":" "platform[" PLATFORM_ID "]";
char const* info_arch = "INFO" ":" "arch[" ARCHITECTURE_ID "]";
#if defined(__INTEL_COMPILER) && defined(_MSVC_LANG) && _MSVC_LANG < 201403L
# if defined(__INTEL_CXX11_MODE__)
# if defined(__cpp_aggregate_nsdmi)
# define CXX_STD 201402L
# else
# define CXX_STD 201103L
# endif
# else
# define CXX_STD 199711L
# endif
#elif defined(_MSC_VER) && defined(_MSVC_LANG)
# define CXX_STD _MSVC_LANG
#else
# define CXX_STD __cplusplus
#endif
const char* info_language_standard_default = "INFO" ":" "standard_default["
#if CXX_STD > 202002L
"23"
#elif CXX_STD > 201703L
"20"
#elif CXX_STD >= 201703L
"17"
#elif CXX_STD >= 201402L
"14"
#elif CXX_STD >= 201103L
"11"
#else
"98"
#endif
"]";
const char* info_language_extensions_default = "INFO" ":" "extensions_default["
#if (defined(__clang__) || defined(__GNUC__) || defined(__xlC__) || \
defined(__TI_COMPILER_VERSION__)) && \
!defined(__STRICT_ANSI__)
"ON"
#else
"OFF"
#endif
"]";
/*--------------------------------------------------------------------------*/
int main(int argc, char* argv[])
{
int require = 0;
require += info_compiler[argc];
require += info_platform[argc];
require += info_arch[argc];
#ifdef COMPILER_VERSION_MAJOR
require += info_version[argc];
#endif
#ifdef COMPILER_VERSION_INTERNAL
require += info_version_internal[argc];
#endif
#ifdef SIMULATE_ID
require += info_simulate[argc];
#endif
#ifdef SIMULATE_VERSION_MAJOR
require += info_simulate_version[argc];
#endif
#if defined(__CRAYXT_COMPUTE_LINUX_TARGET)
require += info_cray[argc];
#endif
require += info_language_standard_default[argc];
require += info_language_extensions_default[argc];
(void)argv;
return require;
}

File diff suppressed because it is too large Load Diff

View File

@ -1,254 +0,0 @@
---
events:
-
kind: "message-v1"
backtrace:
- "/usr/share/cmake-3.28/Modules/CMakeDetermineSystem.cmake:228 (message)"
- "CMakeLists.txt:3 (project)"
message: |
The target system is: Emscripten - 1 - x86
The host system is: Linux - 6.8.0-53-generic - x86_64
-
kind: "message-v1"
backtrace:
- "/usr/share/cmake-3.28/Modules/CMakeDetermineCompilerId.cmake:17 (message)"
- "/usr/share/cmake-3.28/Modules/CMakeDetermineCompilerId.cmake:64 (__determine_compiler_id_test)"
- "/usr/share/cmake-3.28/Modules/CMakeDetermineCXXCompiler.cmake:126 (CMAKE_DETERMINE_COMPILER_ID)"
- "CMakeLists.txt:3 (project)"
message: |
Compiling the CXX compiler identification source file "CMakeCXXCompilerId.cpp" succeeded.
Compiler: /home/romazan/Рабочий стол/emsdk/upstream/emscripten/em++
Build flags:
Id flags:
The output was:
0
shared:INFO: (Emscripten: Running sanity checks)
cache:INFO: generating system asset: symbol_lists/5942949263c8e6ecd538c6aa2e8973567049bbc7.json... (this will be cached in "/home/romazan/Рабочий стол/emsdk/upstream/emscripten/cache/symbol_lists/5942949263c8e6ecd538c6aa2e8973567049bbc7.json" for subsequent builds)
cache:INFO: - ok
Compilation of the CXX compiler identification source "CMakeCXXCompilerId.cpp" produced "a.out.js"
Compilation of the CXX compiler identification source "CMakeCXXCompilerId.cpp" produced "a.out.wasm"
The CXX compiler identification could not be found in:
/home/romazan/Рабочий стол/cproject/build-emcmake/CMakeFiles/3.28.3/CompilerIdCXX/a.out.js
The CXX compiler identification is Clang, found in:
/home/romazan/Рабочий стол/cproject/build-emcmake/CMakeFiles/3.28.3/CompilerIdCXX/a.out.wasm
-
kind: "try_compile-v1"
backtrace:
- "/usr/share/cmake-3.28/Modules/CMakeDetermineCompilerABI.cmake:57 (try_compile)"
- "/usr/share/cmake-3.28/Modules/CMakeTestCXXCompiler.cmake:26 (CMAKE_DETERMINE_COMPILER_ABI)"
- "CMakeLists.txt:3 (project)"
checks:
- "Detecting CXX compiler ABI info"
directories:
source: "/home/romazan/\u0420\u0430\u0431\u043e\u0447\u0438\u0439 \u0441\u0442\u043e\u043b/cproject/build-emcmake/CMakeFiles/CMakeScratch/TryCompile-KFqeHh"
binary: "/home/romazan/\u0420\u0430\u0431\u043e\u0447\u0438\u0439 \u0441\u0442\u043e\u043b/cproject/build-emcmake/CMakeFiles/CMakeScratch/TryCompile-KFqeHh"
cmakeVariables:
CMAKE_CXX_COMPILER_CLANG_SCAN_DEPS: "/home/romazan/\u0420\u0430\u0431\u043e\u0447\u0438\u0439 \u0441\u0442\u043e\u043b/emsdk/upstream/emscripten/emscan-deps"
CMAKE_CXX_FLAGS: ""
CMAKE_CXX_FLAGS_DEBUG: "-g"
CMAKE_EXE_LINKER_FLAGS: ""
CMAKE_MODULE_PATH: "/home/romazan/\u0420\u0430\u0431\u043e\u0447\u0438\u0439 \u0441\u0442\u043e\u043b/emsdk/upstream/emscripten/cmake/Modules;/home/romazan/\u0420\u0430\u0431\u043e\u0447\u0438\u0439 \u0441\u0442\u043e\u043b/emsdk/upstream/emscripten/cmake/Modules;/home/romazan/\u0420\u0430\u0431\u043e\u0447\u0438\u0439 \u0441\u0442\u043e\u043b/emsdk/upstream/emscripten/cmake/Modules;/home/romazan/\u0420\u0430\u0431\u043e\u0447\u0438\u0439 \u0441\u0442\u043e\u043b/emsdk/upstream/emscripten/cmake/Modules"
buildResult:
variable: "CMAKE_CXX_ABI_COMPILED"
cached: true
stdout: |
Change Dir: '/home/romazan/Рабочий стол/cproject/build-emcmake/CMakeFiles/CMakeScratch/TryCompile-KFqeHh'
Run Build Command(s): /usr/bin/cmake -E env VERBOSE=1 /usr/bin/gmake -f Makefile cmTC_63219/fast
/usr/bin/gmake -f CMakeFiles/cmTC_63219.dir/build.make CMakeFiles/cmTC_63219.dir/build
gmake[1]: Entering directory '/home/romazan/Рабочий стол/cproject/build-emcmake/CMakeFiles/CMakeScratch/TryCompile-KFqeHh'
Building CXX object CMakeFiles/cmTC_63219.dir/CMakeCXXCompilerABI.cpp.o
"/home/romazan/Рабочий стол/emsdk/upstream/emscripten/em++" -v -MD -MT CMakeFiles/cmTC_63219.dir/CMakeCXXCompilerABI.cpp.o -MF CMakeFiles/cmTC_63219.dir/CMakeCXXCompilerABI.cpp.o.d -o CMakeFiles/cmTC_63219.dir/CMakeCXXCompilerABI.cpp.o -c /usr/share/cmake-3.28/Modules/CMakeCXXCompilerABI.cpp
"/home/romazan/Рабочий стол/emsdk/upstream/bin/clang++" -target wasm32-unknown-emscripten -fignore-exceptions -mllvm -combiner-global-alias-analysis=false -mllvm -enable-emscripten-sjlj -mllvm -disable-lsr "--sysroot=/home/romazan/Рабочий стол/emsdk/upstream/emscripten/cache/sysroot" -DEMSCRIPTEN -Xclang -iwithsysroot/include/fakesdl -Xclang -iwithsysroot/include/compat -v -MD -MT CMakeFiles/cmTC_63219.dir/CMakeCXXCompilerABI.cpp.o -MF CMakeFiles/cmTC_63219.dir/CMakeCXXCompilerABI.cpp.o.d -oCMakeFiles/cmTC_63219.dir/CMakeCXXCompilerABI.cpp.o -c /usr/share/cmake-3.28/Modules/CMakeCXXCompilerABI.cpp
clang version 21.0.0git (https:/github.com/llvm/llvm-project 4775e6d9099467df9363e1a3cd5950cc3d2fde05)
Target: wasm32-unknown-emscripten
Thread model: posix
InstalledDir: /home/romazan/Рабочий стол/emsdk/upstream/bin
(in-process)
"/home/romazan/Рабочий стол/emsdk/upstream/bin/clang-21" -cc1 -triple wasm32-unknown-emscripten -emit-obj -disable-free -clear-ast-before-backend -disable-llvm-verifier -discard-value-names -main-file-name CMakeCXXCompilerABI.cpp -mrelocation-model static -mframe-pointer=none -ffp-contract=on -fno-rounding-math -mconstructor-aliases -target-cpu generic -fvisibility=hidden -debugger-tuning=gdb "-fdebug-compilation-dir=/home/romazan/Рабочий стол/cproject/build-emcmake/CMakeFiles/CMakeScratch/TryCompile-KFqeHh" -v "-fcoverage-compilation-dir=/home/romazan/Рабочий стол/cproject/build-emcmake/CMakeFiles/CMakeScratch/TryCompile-KFqeHh" -resource-dir "/home/romazan/Рабочий стол/emsdk/upstream/lib/clang/21" -dependency-file CMakeFiles/cmTC_63219.dir/CMakeCXXCompilerABI.cpp.o.d -MT CMakeFiles/cmTC_63219.dir/CMakeCXXCompilerABI.cpp.o -sys-header-deps -D EMSCRIPTEN -isysroot "/home/romazan/Рабочий стол/emsdk/upstream/emscripten/cache/sysroot" -internal-isystem "/home/romazan/Рабочий стол/emsdk/upstream/emscripten/cache/sysroot/include/wasm32-emscripten/c++/v1" -internal-isystem "/home/romazan/Рабочий стол/emsdk/upstream/emscripten/cache/sysroot/include/c++/v1" -internal-isystem "/home/romazan/Рабочий стол/emsdk/upstream/lib/clang/21/include" -internal-isystem "/home/romazan/Рабочий стол/emsdk/upstream/emscripten/cache/sysroot/include/wasm32-emscripten" -internal-isystem "/home/romazan/Рабочий стол/emsdk/upstream/emscripten/cache/sysroot/include" -fdeprecated-macro -ferror-limit 19 -fgnuc-version=4.2.1 -fskip-odr-check-in-gmf -fcxx-exceptions -fignore-exceptions -fexceptions -iwithsysroot/include/fakesdl -iwithsysroot/include/compat -mllvm -combiner-global-alias-analysis=false -mllvm -enable-emscripten-sjlj -mllvm -disable-lsr -o CMakeFiles/cmTC_63219.dir/CMakeCXXCompilerABI.cpp.o -x c++ /usr/share/cmake-3.28/Modules/CMakeCXXCompilerABI.cpp
clang -cc1 version 21.0.0git based upon LLVM 21.0.0git default target x86_64-unknown-linux-gnu
ignoring nonexistent directory "/home/romazan/Рабочий стол/emsdk/upstream/emscripten/cache/sysroot/include/wasm32-emscripten/c++/v1"
ignoring nonexistent directory "/home/romazan/Рабочий стол/emsdk/upstream/emscripten/cache/sysroot/include/wasm32-emscripten"
#include "..." search starts here:
#include <...> search starts here:
/home/romazan/Рабочий стол/emsdk/upstream/emscripten/cache/sysroot/include/fakesdl
/home/romazan/Рабочий стол/emsdk/upstream/emscripten/cache/sysroot/include/compat
/home/romazan/Рабочий стол/emsdk/upstream/emscripten/cache/sysroot/include/c++/v1
/home/romazan/Рабочий стол/emsdk/upstream/lib/clang/21/include
/home/romazan/Рабочий стол/emsdk/upstream/emscripten/cache/sysroot/include
End of search list.
Linking CXX executable cmTC_63219.js
/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_63219.dir/link.txt --verbose=1
"/home/romazan/Рабочий стол/emsdk/upstream/emscripten/em++" -v @CMakeFiles/cmTC_63219.dir/objects1.rsp -o cmTC_63219.js
"/home/romazan/Рабочий стол/emsdk/upstream/bin/clang" --version
"/home/romazan/Рабочий стол/emsdk/upstream/bin/wasm-ld" -o cmTC_63219.wasm CMakeFiles/cmTC_63219.dir/CMakeCXXCompilerABI.cpp.o "-L/home/romazan/Рабочий стол/emsdk/upstream/emscripten/cache/sysroot/lib/wasm32-emscripten" "-L/home/romazan/Рабочий стол/emsdk/upstream/emscripten/src/lib" -lGL-getprocaddr -lal -lhtml5 -lstubs-debug -lnoexit -lc-debug -ldlmalloc-debug -lcompiler_rt -lc++-noexcept -lc++abi-debug-noexcept -lsockets -mllvm -combiner-global-alias-analysis=false -mllvm -enable-emscripten-sjlj -mllvm -disable-lsr /tmp/tmplzzwbdr5libemscripten_js_symbols.so --strip-debug --export=emscripten_stack_get_end --export=emscripten_stack_get_free --export=emscripten_stack_get_base --export=emscripten_stack_get_current --export=emscripten_stack_init --export=_emscripten_stack_alloc --export=__wasm_call_ctors --export=_emscripten_stack_restore --export-if-defined=__start_em_asm --export-if-defined=__stop_em_asm --export-if-defined=__start_em_lib_deps --export-if-defined=__stop_em_lib_deps --export-if-defined=__start_em_js --export-if-defined=__stop_em_js --export-if-defined=main --export-if-defined=__main_argc_argv --export-if-defined=fflush --export-table -z stack-size=65536 --no-growable-memory --initial-heap=16777216 --no-entry --stack-first --table-base=1
"/home/romazan/Рабочий стол/emsdk/upstream/bin/llvm-objcopy" cmTC_63219.wasm cmTC_63219.wasm --remove-section=.debug* --remove-section=producers --remove-section=name
"/home/romazan/Рабочий стол/emsdk/node/20.18.0_64bit/bin/node" "/home/romazan/Рабочий стол/emsdk/upstream/emscripten/tools/compiler.mjs" -
gmake[1]: Leaving directory '/home/romazan/Рабочий стол/cproject/build-emcmake/CMakeFiles/CMakeScratch/TryCompile-KFqeHh'
exitCode: 0
-
kind: "message-v1"
backtrace:
- "/usr/share/cmake-3.28/Modules/CMakeDetermineCompilerABI.cmake:127 (message)"
- "/usr/share/cmake-3.28/Modules/CMakeTestCXXCompiler.cmake:26 (CMAKE_DETERMINE_COMPILER_ABI)"
- "CMakeLists.txt:3 (project)"
message: |
Parsed CXX implicit include dir info: rv=done
found start of include info
found start of implicit include info
add: [/home/romazan/Рабочий стол/emsdk/upstream/emscripten/cache/sysroot/include/fakesdl]
add: [/home/romazan/Рабочий стол/emsdk/upstream/emscripten/cache/sysroot/include/compat]
add: [/home/romazan/Рабочий стол/emsdk/upstream/emscripten/cache/sysroot/include/c++/v1]
add: [/home/romazan/Рабочий стол/emsdk/upstream/lib/clang/21/include]
add: [/home/romazan/Рабочий стол/emsdk/upstream/emscripten/cache/sysroot/include]
end of search list found
collapse include dir [/home/romazan/Рабочий стол/emsdk/upstream/emscripten/cache/sysroot/include/fakesdl] ==> [/home/romazan/Рабочий стол/emsdk/upstream/emscripten/cache/sysroot/include/fakesdl]
collapse include dir [/home/romazan/Рабочий стол/emsdk/upstream/emscripten/cache/sysroot/include/compat] ==> [/home/romazan/Рабочий стол/emsdk/upstream/emscripten/cache/sysroot/include/compat]
collapse include dir [/home/romazan/Рабочий стол/emsdk/upstream/emscripten/cache/sysroot/include/c++/v1] ==> [/home/romazan/Рабочий стол/emsdk/upstream/emscripten/cache/sysroot/include/c++/v1]
collapse include dir [/home/romazan/Рабочий стол/emsdk/upstream/lib/clang/21/include] ==> [/home/romazan/Рабочий стол/emsdk/upstream/lib/clang/21/include]
collapse include dir [/home/romazan/Рабочий стол/emsdk/upstream/emscripten/cache/sysroot/include] ==> [/home/romazan/Рабочий стол/emsdk/upstream/emscripten/cache/sysroot/include]
implicit include dirs: [/home/romazan/Рабочий стол/emsdk/upstream/emscripten/cache/sysroot/include/fakesdl;/home/romazan/Рабочий стол/emsdk/upstream/emscripten/cache/sysroot/include/compat;/home/romazan/Рабочий стол/emsdk/upstream/emscripten/cache/sysroot/include/c++/v1;/home/romazan/Рабочий стол/emsdk/upstream/lib/clang/21/include;/home/romazan/Рабочий стол/emsdk/upstream/emscripten/cache/sysroot/include]
-
kind: "message-v1"
backtrace:
- "/usr/share/cmake-3.28/Modules/CMakeDetermineCompilerABI.cmake:159 (message)"
- "/usr/share/cmake-3.28/Modules/CMakeTestCXXCompiler.cmake:26 (CMAKE_DETERMINE_COMPILER_ABI)"
- "CMakeLists.txt:3 (project)"
message: |
Parsed CXX implicit link information:
link line regex: [^( *|.*[/\\])(ld|CMAKE_LINK_STARTFILE-NOTFOUND|([^/\\]+-)?ld|collect2)[^/\\]*( |$)]
ignore line: [Change Dir: '/home/romazan/Рабочий стол/cproject/build-emcmake/CMakeFiles/CMakeScratch/TryCompile-KFqeHh']
ignore line: []
ignore line: [Run Build Command(s): /usr/bin/cmake -E env VERBOSE=1 /usr/bin/gmake -f Makefile cmTC_63219/fast]
ignore line: [/usr/bin/gmake -f CMakeFiles/cmTC_63219.dir/build.make CMakeFiles/cmTC_63219.dir/build]
ignore line: [gmake[1]: Entering directory '/home/romazan/Рабочий стол/cproject/build-emcmake/CMakeFiles/CMakeScratch/TryCompile-KFqeHh']
ignore line: [Building CXX object CMakeFiles/cmTC_63219.dir/CMakeCXXCompilerABI.cpp.o]
ignore line: ["/home/romazan/Рабочий стол/emsdk/upstream/emscripten/em++" -v -MD -MT CMakeFiles/cmTC_63219.dir/CMakeCXXCompilerABI.cpp.o -MF CMakeFiles/cmTC_63219.dir/CMakeCXXCompilerABI.cpp.o.d -o CMakeFiles/cmTC_63219.dir/CMakeCXXCompilerABI.cpp.o -c /usr/share/cmake-3.28/Modules/CMakeCXXCompilerABI.cpp]
ignore line: [ "/home/romazan/Рабочий стол/emsdk/upstream/bin/clang++" -target wasm32-unknown-emscripten -fignore-exceptions -mllvm -combiner-global-alias-analysis=false -mllvm -enable-emscripten-sjlj -mllvm -disable-lsr "--sysroot=/home/romazan/Рабочий стол/emsdk/upstream/emscripten/cache/sysroot" -DEMSCRIPTEN -Xclang -iwithsysroot/include/fakesdl -Xclang -iwithsysroot/include/compat -v -MD -MT CMakeFiles/cmTC_63219.dir/CMakeCXXCompilerABI.cpp.o -MF CMakeFiles/cmTC_63219.dir/CMakeCXXCompilerABI.cpp.o.d -oCMakeFiles/cmTC_63219.dir/CMakeCXXCompilerABI.cpp.o -c /usr/share/cmake-3.28/Modules/CMakeCXXCompilerABI.cpp]
ignore line: [clang version 21.0.0git (https:/github.com/llvm/llvm-project 4775e6d9099467df9363e1a3cd5950cc3d2fde05)]
ignore line: [Target: wasm32-unknown-emscripten]
ignore line: [Thread model: posix]
ignore line: [InstalledDir: /home/romazan/Рабочий стол/emsdk/upstream/bin]
ignore line: [ (in-process)]
ignore line: [ "/home/romazan/Рабочий стол/emsdk/upstream/bin/clang-21" -cc1 -triple wasm32-unknown-emscripten -emit-obj -disable-free -clear-ast-before-backend -disable-llvm-verifier -discard-value-names -main-file-name CMakeCXXCompilerABI.cpp -mrelocation-model static -mframe-pointer=none -ffp-contract=on -fno-rounding-math -mconstructor-aliases -target-cpu generic -fvisibility=hidden -debugger-tuning=gdb "-fdebug-compilation-dir=/home/romazan/Рабочий стол/cproject/build-emcmake/CMakeFiles/CMakeScratch/TryCompile-KFqeHh" -v "-fcoverage-compilation-dir=/home/romazan/Рабочий стол/cproject/build-emcmake/CMakeFiles/CMakeScratch/TryCompile-KFqeHh" -resource-dir "/home/romazan/Рабочий стол/emsdk/upstream/lib/clang/21" -dependency-file CMakeFiles/cmTC_63219.dir/CMakeCXXCompilerABI.cpp.o.d -MT CMakeFiles/cmTC_63219.dir/CMakeCXXCompilerABI.cpp.o -sys-header-deps -D EMSCRIPTEN -isysroot "/home/romazan/Рабочий стол/emsdk/upstream/emscripten/cache/sysroot" -internal-isystem "/home/romazan/Рабочий стол/emsdk/upstream/emscripten/cache/sysroot/include/wasm32-emscripten/c++/v1" -internal-isystem "/home/romazan/Рабочий стол/emsdk/upstream/emscripten/cache/sysroot/include/c++/v1" -internal-isystem "/home/romazan/Рабочий стол/emsdk/upstream/lib/clang/21/include" -internal-isystem "/home/romazan/Рабочий стол/emsdk/upstream/emscripten/cache/sysroot/include/wasm32-emscripten" -internal-isystem "/home/romazan/Рабочий стол/emsdk/upstream/emscripten/cache/sysroot/include" -fdeprecated-macro -ferror-limit 19 -fgnuc-version=4.2.1 -fskip-odr-check-in-gmf -fcxx-exceptions -fignore-exceptions -fexceptions -iwithsysroot/include/fakesdl -iwithsysroot/include/compat -mllvm -combiner-global-alias-analysis=false -mllvm -enable-emscripten-sjlj -mllvm -disable-lsr -o CMakeFiles/cmTC_63219.dir/CMakeCXXCompilerABI.cpp.o -x c++ /usr/share/cmake-3.28/Modules/CMakeCXXCompilerABI.cpp]
ignore line: [clang -cc1 version 21.0.0git based upon LLVM 21.0.0git default target x86_64-unknown-linux-gnu]
ignore line: [ignoring nonexistent directory "/home/romazan/Рабочий стол/emsdk/upstream/emscripten/cache/sysroot/include/wasm32-emscripten/c++/v1"]
ignore line: [ignoring nonexistent directory "/home/romazan/Рабочий стол/emsdk/upstream/emscripten/cache/sysroot/include/wasm32-emscripten"]
ignore line: [#include "..." search starts here:]
ignore line: [#include <...> search starts here:]
ignore line: [ /home/romazan/Рабочий стол/emsdk/upstream/emscripten/cache/sysroot/include/fakesdl]
ignore line: [ /home/romazan/Рабочий стол/emsdk/upstream/emscripten/cache/sysroot/include/compat]
ignore line: [ /home/romazan/Рабочий стол/emsdk/upstream/emscripten/cache/sysroot/include/c++/v1]
ignore line: [ /home/romazan/Рабочий стол/emsdk/upstream/lib/clang/21/include]
ignore line: [ /home/romazan/Рабочий стол/emsdk/upstream/emscripten/cache/sysroot/include]
ignore line: [End of search list.]
ignore line: [Linking CXX executable cmTC_63219.js]
ignore line: [/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_63219.dir/link.txt --verbose=1]
ignore line: ["/home/romazan/Рабочий стол/emsdk/upstream/emscripten/em++" -v @CMakeFiles/cmTC_63219.dir/objects1.rsp -o cmTC_63219.js ]
ignore line: [ "/home/romazan/Рабочий стол/emsdk/upstream/bin/clang" --version]
link line: [ "/home/romazan/Рабочий стол/emsdk/upstream/bin/wasm-ld" -o cmTC_63219.wasm CMakeFiles/cmTC_63219.dir/CMakeCXXCompilerABI.cpp.o "-L/home/romazan/Рабочий стол/emsdk/upstream/emscripten/cache/sysroot/lib/wasm32-emscripten" "-L/home/romazan/Рабочий стол/emsdk/upstream/emscripten/src/lib" -lGL-getprocaddr -lal -lhtml5 -lstubs-debug -lnoexit -lc-debug -ldlmalloc-debug -lcompiler_rt -lc++-noexcept -lc++abi-debug-noexcept -lsockets -mllvm -combiner-global-alias-analysis=false -mllvm -enable-emscripten-sjlj -mllvm -disable-lsr /tmp/tmplzzwbdr5libemscripten_js_symbols.so --strip-debug --export=emscripten_stack_get_end --export=emscripten_stack_get_free --export=emscripten_stack_get_base --export=emscripten_stack_get_current --export=emscripten_stack_init --export=_emscripten_stack_alloc --export=__wasm_call_ctors --export=_emscripten_stack_restore --export-if-defined=__start_em_asm --export-if-defined=__stop_em_asm --export-if-defined=__start_em_lib_deps --export-if-defined=__stop_em_lib_deps --export-if-defined=__start_em_js --export-if-defined=__stop_em_js --export-if-defined=main --export-if-defined=__main_argc_argv --export-if-defined=fflush --export-table -z stack-size=65536 --no-growable-memory --initial-heap=16777216 --no-entry --stack-first --table-base=1]
arg [/home/romazan/Рабочий стол/emsdk/upstream/bin/wasm-ld] ==> ignore
arg [-o] ==> ignore
arg [cmTC_63219.wasm] ==> ignore
arg [CMakeFiles/cmTC_63219.dir/CMakeCXXCompilerABI.cpp.o] ==> ignore
arg [-L/home/romazan/Рабочий стол/emsdk/upstream/emscripten/cache/sysroot/lib/wasm32-emscripten] ==> dir [/home/romazan/Рабочий стол/emsdk/upstream/emscripten/cache/sysroot/lib/wasm32-emscripten]
arg [-L/home/romazan/Рабочий стол/emsdk/upstream/emscripten/src/lib] ==> dir [/home/romazan/Рабочий стол/emsdk/upstream/emscripten/src/lib]
arg [-lGL-getprocaddr] ==> lib [GL-getprocaddr]
arg [-lal] ==> lib [al]
arg [-lhtml5] ==> lib [html5]
arg [-lstubs-debug] ==> lib [stubs-debug]
arg [-lnoexit] ==> lib [noexit]
arg [-lc-debug] ==> lib [c-debug]
arg [-ldlmalloc-debug] ==> lib [dlmalloc-debug]
arg [-lcompiler_rt] ==> lib [compiler_rt]
arg [-lc++-noexcept] ==> lib [c++-noexcept]
arg [-lc++abi-debug-noexcept] ==> lib [c++abi-debug-noexcept]
arg [-lsockets] ==> lib [sockets]
arg [-mllvm] ==> ignore
arg [-combiner-global-alias-analysis=false] ==> ignore
arg [-mllvm] ==> ignore
arg [-enable-emscripten-sjlj] ==> ignore
arg [-mllvm] ==> ignore
arg [-disable-lsr] ==> ignore
arg [/tmp/tmplzzwbdr5libemscripten_js_symbols.so] ==> ignore
arg [--strip-debug] ==> ignore
arg [--export=emscripten_stack_get_end] ==> ignore
arg [--export=emscripten_stack_get_free] ==> ignore
arg [--export=emscripten_stack_get_base] ==> ignore
arg [--export=emscripten_stack_get_current] ==> ignore
arg [--export=emscripten_stack_init] ==> ignore
arg [--export=_emscripten_stack_alloc] ==> ignore
arg [--export=__wasm_call_ctors] ==> ignore
arg [--export=_emscripten_stack_restore] ==> ignore
arg [--export-if-defined=__start_em_asm] ==> ignore
arg [--export-if-defined=__stop_em_asm] ==> ignore
arg [--export-if-defined=__start_em_lib_deps] ==> ignore
arg [--export-if-defined=__stop_em_lib_deps] ==> ignore
arg [--export-if-defined=__start_em_js] ==> ignore
arg [--export-if-defined=__stop_em_js] ==> ignore
arg [--export-if-defined=main] ==> ignore
arg [--export-if-defined=__main_argc_argv] ==> ignore
arg [--export-if-defined=fflush] ==> ignore
arg [--export-table] ==> ignore
arg [-zstack-size=65536] ==> ignore
arg [--no-growable-memory] ==> ignore
arg [--initial-heap=16777216] ==> ignore
arg [--no-entry] ==> ignore
arg [--stack-first] ==> ignore
arg [--table-base=1] ==> ignore
collapse library dir [/home/romazan/Рабочий стол/emsdk/upstream/emscripten/cache/sysroot/lib/wasm32-emscripten] ==> [/home/romazan/Рабочий стол/emsdk/upstream/emscripten/cache/sysroot/lib/wasm32-emscripten]
collapse library dir [/home/romazan/Рабочий стол/emsdk/upstream/emscripten/src/lib] ==> [/home/romazan/Рабочий стол/emsdk/upstream/emscripten/src/lib]
implicit libs: [GL-getprocaddr;al;html5;stubs-debug;noexit;c-debug;dlmalloc-debug;compiler_rt;c++-noexcept;c++abi-debug-noexcept;sockets]
implicit objs: []
implicit dirs: [/home/romazan/Рабочий стол/emsdk/upstream/emscripten/cache/sysroot/lib/wasm32-emscripten;/home/romazan/Рабочий стол/emsdk/upstream/emscripten/src/lib]
implicit fwks: []
-
kind: "try_compile-v1"
backtrace:
- "/usr/share/cmake-3.28/Modules/Internal/CheckSourceCompiles.cmake:101 (try_compile)"
- "/usr/share/cmake-3.28/Modules/CheckCXXSourceCompiles.cmake:52 (cmake_check_source_compiles)"
- "/usr/share/cmake-3.28/Modules/FindThreads.cmake:99 (CHECK_CXX_SOURCE_COMPILES)"
- "/usr/share/cmake-3.28/Modules/FindThreads.cmake:163 (_threads_check_libc)"
- "CMakeLists.txt:9 (find_package)"
checks:
- "Performing Test CMAKE_HAVE_LIBC_PTHREAD"
directories:
source: "/home/romazan/\u0420\u0430\u0431\u043e\u0447\u0438\u0439 \u0441\u0442\u043e\u043b/cproject/build-emcmake/CMakeFiles/CMakeScratch/TryCompile-0L1xjZ"
binary: "/home/romazan/\u0420\u0430\u0431\u043e\u0447\u0438\u0439 \u0441\u0442\u043e\u043b/cproject/build-emcmake/CMakeFiles/CMakeScratch/TryCompile-0L1xjZ"
cmakeVariables:
CMAKE_CXX_COMPILER_CLANG_SCAN_DEPS: "/home/romazan/\u0420\u0430\u0431\u043e\u0447\u0438\u0439 \u0441\u0442\u043e\u043b/emsdk/upstream/emscripten/emscan-deps"
CMAKE_CXX_FLAGS: ""
CMAKE_CXX_FLAGS_DEBUG: "-g"
CMAKE_EXE_LINKER_FLAGS: ""
CMAKE_MODULE_PATH: "/home/romazan/\u0420\u0430\u0431\u043e\u0447\u0438\u0439 \u0441\u0442\u043e\u043b/emsdk/upstream/emscripten/cmake/Modules;/home/romazan/\u0420\u0430\u0431\u043e\u0447\u0438\u0439 \u0441\u0442\u043e\u043b/emsdk/upstream/emscripten/cmake/Modules;/home/romazan/\u0420\u0430\u0431\u043e\u0447\u0438\u0439 \u0441\u0442\u043e\u043b/emsdk/upstream/emscripten/cmake/Modules;/home/romazan/\u0420\u0430\u0431\u043e\u0447\u0438\u0439 \u0441\u0442\u043e\u043b/emsdk/upstream/emscripten/cmake/Modules"
buildResult:
variable: "CMAKE_HAVE_LIBC_PTHREAD"
cached: true
stdout: |
Change Dir: '/home/romazan/Рабочий стол/cproject/build-emcmake/CMakeFiles/CMakeScratch/TryCompile-0L1xjZ'
Run Build Command(s): /usr/bin/cmake -E env VERBOSE=1 /usr/bin/gmake -f Makefile cmTC_ad7d0/fast
/usr/bin/gmake -f CMakeFiles/cmTC_ad7d0.dir/build.make CMakeFiles/cmTC_ad7d0.dir/build
gmake[1]: вход в каталог «/home/romazan/Рабочий стол/cproject/build-emcmake/CMakeFiles/CMakeScratch/TryCompile-0L1xjZ»
Building CXX object CMakeFiles/cmTC_ad7d0.dir/src.cxx.o
"/home/romazan/Рабочий стол/emsdk/upstream/emscripten/em++" -DCMAKE_HAVE_LIBC_PTHREAD -std=gnu++17 -MD -MT CMakeFiles/cmTC_ad7d0.dir/src.cxx.o -MF CMakeFiles/cmTC_ad7d0.dir/src.cxx.o.d -o CMakeFiles/cmTC_ad7d0.dir/src.cxx.o -c "/home/romazan/Рабочий стол/cproject/build-emcmake/CMakeFiles/CMakeScratch/TryCompile-0L1xjZ/src.cxx"
Linking CXX executable cmTC_ad7d0.js
/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_ad7d0.dir/link.txt --verbose=1
"/home/romazan/Рабочий стол/emsdk/upstream/emscripten/em++" @CMakeFiles/cmTC_ad7d0.dir/objects1.rsp -o cmTC_ad7d0.js
gmake[1]: выход из каталога «/home/romazan/Рабочий стол/cproject/build-emcmake/CMakeFiles/CMakeScratch/TryCompile-0L1xjZ»
exitCode: 0
...

View File

@ -1 +0,0 @@
# This file is generated by cmake for dependency checking of the CMakeCache.txt file

1325
car.txt

File diff suppressed because it is too large Load Diff

View File

@ -1,344 +0,0 @@
# This is the CMakeCache file.
# For build in directory: c:/Work/Projects/ZeptoLabTest1/cmakeaudioplayer/build
# It was generated by CMake: C:/Strawberry/c/bin/cmake.exe
# You can edit this file to change values found and used by cmake.
# If you do not want to change any of the values, simply exit the editor.
# If you do want to change a value, simply edit, save, and exit the editor.
# The syntax for the file is as follows:
# KEY:TYPE=VALUE
# KEY is the name of a variable in the cache.
# TYPE is a hint to GUIs for the type of VALUE, DO NOT EDIT TYPE!.
# VALUE is the current value for the KEY.
########################
# EXTERNAL cache entries
########################
//Value Computed by CMake
AudioPlayer_BINARY_DIR:STATIC=C:/Work/Projects/ZeptoLabTest1/cmakeaudioplayer/build
//Value Computed by CMake
AudioPlayer_IS_TOP_LEVEL:STATIC=ON
//Value Computed by CMake
AudioPlayer_SOURCE_DIR:STATIC=C:/Work/Projects/ZeptoLabTest1/cmakeaudioplayer
//Path to a program.
CMAKE_AR:FILEPATH=C:/Program Files/Microsoft Visual Studio/2022/Community/VC/Tools/MSVC/14.44.35207/bin/Hostx64/x64/lib.exe
//Semicolon separated list of supported configuration types, only
// supports Debug, Release, MinSizeRel, and RelWithDebInfo, anything
// else will be ignored.
CMAKE_CONFIGURATION_TYPES:STRING=Debug;Release;MinSizeRel;RelWithDebInfo
//Flags used by the CXX compiler during all build types.
CMAKE_CXX_FLAGS:STRING=/DWIN32 /D_WINDOWS /W3 /GR /EHsc
//Flags used by the CXX compiler during DEBUG builds.
CMAKE_CXX_FLAGS_DEBUG:STRING=/MDd /Zi /Ob0 /Od /RTC1
//Flags used by the CXX compiler during MINSIZEREL builds.
CMAKE_CXX_FLAGS_MINSIZEREL:STRING=/MD /O1 /Ob1 /DNDEBUG
//Flags used by the CXX compiler during RELEASE builds.
CMAKE_CXX_FLAGS_RELEASE:STRING=/MD /O2 /Ob2 /DNDEBUG
//Flags used by the CXX compiler during RELWITHDEBINFO builds.
CMAKE_CXX_FLAGS_RELWITHDEBINFO:STRING=/MD /Zi /O2 /Ob1 /DNDEBUG
//Libraries linked by default with all C++ applications.
CMAKE_CXX_STANDARD_LIBRARIES:STRING=kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib
//Flags used by the C compiler during all build types.
CMAKE_C_FLAGS:STRING=/DWIN32 /D_WINDOWS /W3
//Flags used by the C compiler during DEBUG builds.
CMAKE_C_FLAGS_DEBUG:STRING=/MDd /Zi /Ob0 /Od /RTC1
//Flags used by the C compiler during MINSIZEREL builds.
CMAKE_C_FLAGS_MINSIZEREL:STRING=/MD /O1 /Ob1 /DNDEBUG
//Flags used by the C compiler during RELEASE builds.
CMAKE_C_FLAGS_RELEASE:STRING=/MD /O2 /Ob2 /DNDEBUG
//Flags used by the C compiler during RELWITHDEBINFO builds.
CMAKE_C_FLAGS_RELWITHDEBINFO:STRING=/MD /Zi /O2 /Ob1 /DNDEBUG
//Libraries linked by default with all C applications.
CMAKE_C_STANDARD_LIBRARIES:STRING=kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib
//Flags used by the linker during all build types.
CMAKE_EXE_LINKER_FLAGS:STRING=/machine:x64
//Flags used by the linker during DEBUG builds.
CMAKE_EXE_LINKER_FLAGS_DEBUG:STRING=/debug /INCREMENTAL
//Flags used by the linker during MINSIZEREL builds.
CMAKE_EXE_LINKER_FLAGS_MINSIZEREL:STRING=/INCREMENTAL:NO
//Flags used by the linker during RELEASE builds.
CMAKE_EXE_LINKER_FLAGS_RELEASE:STRING=/INCREMENTAL:NO
//Flags used by the linker during RELWITHDEBINFO builds.
CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO:STRING=/debug /INCREMENTAL
//Value Computed by CMake.
CMAKE_FIND_PACKAGE_REDIRECTS_DIR:STATIC=C:/Work/Projects/ZeptoLabTest1/cmakeaudioplayer/build/CMakeFiles/pkgRedirects
//Install path prefix, prepended onto install directories.
CMAKE_INSTALL_PREFIX:PATH=C:/Program Files (x86)/AudioPlayer
//Path to a program.
CMAKE_LINKER:FILEPATH=C:/Program Files/Microsoft Visual Studio/2022/Community/VC/Tools/MSVC/14.44.35207/bin/Hostx64/x64/link.exe
//Flags used by the linker during the creation of modules during
// all build types.
CMAKE_MODULE_LINKER_FLAGS:STRING=/machine:x64
//Flags used by the linker during the creation of modules during
// DEBUG builds.
CMAKE_MODULE_LINKER_FLAGS_DEBUG:STRING=/debug /INCREMENTAL
//Flags used by the linker during the creation of modules during
// MINSIZEREL builds.
CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL:STRING=/INCREMENTAL:NO
//Flags used by the linker during the creation of modules during
// RELEASE builds.
CMAKE_MODULE_LINKER_FLAGS_RELEASE:STRING=/INCREMENTAL:NO
//Flags used by the linker during the creation of modules during
// RELWITHDEBINFO builds.
CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO:STRING=/debug /INCREMENTAL
//Path to a program.
CMAKE_MT:FILEPATH=C:/Program Files (x86)/Windows Kits/10/bin/10.0.26100.0/x64/mt.exe
//Value Computed by CMake
CMAKE_PROJECT_DESCRIPTION:STATIC=
//Value Computed by CMake
CMAKE_PROJECT_HOMEPAGE_URL:STATIC=
//Value Computed by CMake
CMAKE_PROJECT_NAME:STATIC=AudioPlayer
//RC compiler
CMAKE_RC_COMPILER:FILEPATH=C:/Program Files (x86)/Windows Kits/10/bin/10.0.26100.0/x64/rc.exe
//Flags for Windows Resource Compiler during all build types.
CMAKE_RC_FLAGS:STRING=-DWIN32
//Flags for Windows Resource Compiler during DEBUG builds.
CMAKE_RC_FLAGS_DEBUG:STRING=-D_DEBUG
//Flags for Windows Resource Compiler during MINSIZEREL builds.
CMAKE_RC_FLAGS_MINSIZEREL:STRING=
//Flags for Windows Resource Compiler during RELEASE builds.
CMAKE_RC_FLAGS_RELEASE:STRING=
//Flags for Windows Resource Compiler during RELWITHDEBINFO builds.
CMAKE_RC_FLAGS_RELWITHDEBINFO:STRING=
//Flags used by the linker during the creation of shared libraries
// during all build types.
CMAKE_SHARED_LINKER_FLAGS:STRING=/machine:x64
//Flags used by the linker during the creation of shared libraries
// during DEBUG builds.
CMAKE_SHARED_LINKER_FLAGS_DEBUG:STRING=/debug /INCREMENTAL
//Flags used by the linker during the creation of shared libraries
// during MINSIZEREL builds.
CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL:STRING=/INCREMENTAL:NO
//Flags used by the linker during the creation of shared libraries
// during RELEASE builds.
CMAKE_SHARED_LINKER_FLAGS_RELEASE:STRING=/INCREMENTAL:NO
//Flags used by the linker during the creation of shared libraries
// during RELWITHDEBINFO builds.
CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO:STRING=/debug /INCREMENTAL
//If set, runtime paths are not added when installing shared libraries,
// but are added when building.
CMAKE_SKIP_INSTALL_RPATH:BOOL=NO
//If set, runtime paths are not added when using shared libraries.
CMAKE_SKIP_RPATH:BOOL=NO
//Flags used by the linker during the creation of static libraries
// during all build types.
CMAKE_STATIC_LINKER_FLAGS:STRING=/machine:x64
//Flags used by the linker during the creation of static libraries
// during DEBUG builds.
CMAKE_STATIC_LINKER_FLAGS_DEBUG:STRING=
//Flags used by the linker during the creation of static libraries
// during MINSIZEREL builds.
CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL:STRING=
//Flags used by the linker during the creation of static libraries
// during RELEASE builds.
CMAKE_STATIC_LINKER_FLAGS_RELEASE:STRING=
//Flags used by the linker during the creation of static libraries
// during RELWITHDEBINFO builds.
CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO:STRING=
//If this value is on, makefiles will be generated without the
// .SILENT directive, and all commands will be echoed to the console
// during the make. This is useful for debugging only. With Visual
// Studio IDE projects all commands are done without /nologo.
CMAKE_VERBOSE_MAKEFILE:BOOL=FALSE
//Path to a file.
OPENAL_INCLUDE_DIR:PATH=OPENAL_INCLUDE_DIR-NOTFOUND
//Path to a library.
OPENAL_LIBRARY:FILEPATH=OPENAL_LIBRARY-NOTFOUND
//Arguments to supply to pkg-config
PKG_CONFIG_ARGN:STRING=
//pkg-config executable
PKG_CONFIG_EXECUTABLE:FILEPATH=PKG_CONFIG_EXECUTABLE-NOTFOUND
########################
# INTERNAL cache entries
########################
//ADVANCED property for variable: CMAKE_AR
CMAKE_AR-ADVANCED:INTERNAL=1
//This is the directory where this CMakeCache.txt was created
CMAKE_CACHEFILE_DIR:INTERNAL=c:/Work/Projects/ZeptoLabTest1/cmakeaudioplayer/build
//Major version of cmake used to create the current loaded cache
CMAKE_CACHE_MAJOR_VERSION:INTERNAL=3
//Minor version of cmake used to create the current loaded cache
CMAKE_CACHE_MINOR_VERSION:INTERNAL=29
//Patch version of cmake used to create the current loaded cache
CMAKE_CACHE_PATCH_VERSION:INTERNAL=2
//Path to CMake executable.
CMAKE_COMMAND:INTERNAL=C:/Strawberry/c/bin/cmake.exe
//Path to cpack program executable.
CMAKE_CPACK_COMMAND:INTERNAL=C:/Strawberry/c/bin/cpack.exe
//Path to ctest program executable.
CMAKE_CTEST_COMMAND:INTERNAL=C:/Strawberry/c/bin/ctest.exe
//ADVANCED property for variable: CMAKE_CXX_FLAGS
CMAKE_CXX_FLAGS-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_CXX_FLAGS_DEBUG
CMAKE_CXX_FLAGS_DEBUG-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_CXX_FLAGS_MINSIZEREL
CMAKE_CXX_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_CXX_FLAGS_RELEASE
CMAKE_CXX_FLAGS_RELEASE-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_CXX_FLAGS_RELWITHDEBINFO
CMAKE_CXX_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_CXX_STANDARD_LIBRARIES
CMAKE_CXX_STANDARD_LIBRARIES-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_C_FLAGS
CMAKE_C_FLAGS-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_C_FLAGS_DEBUG
CMAKE_C_FLAGS_DEBUG-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_C_FLAGS_MINSIZEREL
CMAKE_C_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_C_FLAGS_RELEASE
CMAKE_C_FLAGS_RELEASE-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_C_FLAGS_RELWITHDEBINFO
CMAKE_C_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_C_STANDARD_LIBRARIES
CMAKE_C_STANDARD_LIBRARIES-ADVANCED:INTERNAL=1
//Executable file format
CMAKE_EXECUTABLE_FORMAT:INTERNAL=Unknown
//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS
CMAKE_EXE_LINKER_FLAGS-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_DEBUG
CMAKE_EXE_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_MINSIZEREL
CMAKE_EXE_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_RELEASE
CMAKE_EXE_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO
CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
//Name of external makefile project generator.
CMAKE_EXTRA_GENERATOR:INTERNAL=
//Name of generator.
CMAKE_GENERATOR:INTERNAL=Visual Studio 17 2022
//Generator instance identifier.
CMAKE_GENERATOR_INSTANCE:INTERNAL=C:/Program Files/Microsoft Visual Studio/2022/Community
//Name of generator platform.
CMAKE_GENERATOR_PLATFORM:INTERNAL=
//Name of generator toolset.
CMAKE_GENERATOR_TOOLSET:INTERNAL=
//Source directory with the top level CMakeLists.txt file for this
// project
CMAKE_HOME_DIRECTORY:INTERNAL=C:/Work/Projects/ZeptoLabTest1/cmakeaudioplayer
//ADVANCED property for variable: CMAKE_LINKER
CMAKE_LINKER-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS
CMAKE_MODULE_LINKER_FLAGS-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_DEBUG
CMAKE_MODULE_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL
CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_RELEASE
CMAKE_MODULE_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO
CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_MT
CMAKE_MT-ADVANCED:INTERNAL=1
//number of local generators
CMAKE_NUMBER_OF_MAKEFILES:INTERNAL=1
//Platform information initialized
CMAKE_PLATFORM_INFO_INITIALIZED:INTERNAL=1
//noop for ranlib
CMAKE_RANLIB:INTERNAL=:
//ADVANCED property for variable: CMAKE_RC_COMPILER
CMAKE_RC_COMPILER-ADVANCED:INTERNAL=1
CMAKE_RC_COMPILER_WORKS:INTERNAL=1
//ADVANCED property for variable: CMAKE_RC_FLAGS
CMAKE_RC_FLAGS-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_RC_FLAGS_DEBUG
CMAKE_RC_FLAGS_DEBUG-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_RC_FLAGS_MINSIZEREL
CMAKE_RC_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_RC_FLAGS_RELEASE
CMAKE_RC_FLAGS_RELEASE-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_RC_FLAGS_RELWITHDEBINFO
CMAKE_RC_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
//Path to CMake installation.
CMAKE_ROOT:INTERNAL=C:/Strawberry/c/share/cmake-3.29
//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS
CMAKE_SHARED_LINKER_FLAGS-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_DEBUG
CMAKE_SHARED_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL
CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_RELEASE
CMAKE_SHARED_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO
CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_SKIP_INSTALL_RPATH
CMAKE_SKIP_INSTALL_RPATH-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_SKIP_RPATH
CMAKE_SKIP_RPATH-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS
CMAKE_STATIC_LINKER_FLAGS-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_DEBUG
CMAKE_STATIC_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL
CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_RELEASE
CMAKE_STATIC_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO
CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_VERBOSE_MAKEFILE
CMAKE_VERBOSE_MAKEFILE-ADVANCED:INTERNAL=1
//ADVANCED property for variable: PKG_CONFIG_ARGN
PKG_CONFIG_ARGN-ADVANCED:INTERNAL=1
//ADVANCED property for variable: PKG_CONFIG_EXECUTABLE
PKG_CONFIG_EXECUTABLE-ADVANCED:INTERNAL=1

View File

@ -1,323 +0,0 @@
---
events:
-
kind: "message-v1"
backtrace:
- "C:/Strawberry/c/share/cmake-3.29/Modules/CMakeDetermineSystem.cmake:205 (message)"
- "CMakeLists.txt:2 (project)"
message: |
The system is: Windows - 6.2.9200 - AMD64
-
kind: "message-v1"
backtrace:
- "C:/Strawberry/c/share/cmake-3.29/Modules/CMakeDetermineCompilerId.cmake:17 (message)"
- "C:/Strawberry/c/share/cmake-3.29/Modules/CMakeDetermineCompilerId.cmake:64 (__determine_compiler_id_test)"
- "C:/Strawberry/c/share/cmake-3.29/Modules/CMakeDetermineCCompiler.cmake:123 (CMAKE_DETERMINE_COMPILER_ID)"
- "CMakeLists.txt:2 (project)"
message: |
Compiling the C compiler identification source file "CMakeCCompilerId.c" succeeded.
Compiler:
Build flags:
Id flags:
The output was:
0
╨Т╨╡╤А╤Б╨╕╤П MSBuild 17.14.23+b0019275e ╨┤╨╗╤П .NET Framework
╨б╨▒╨╛╤А╨║╨░ ╨╜╨░╤З╨░╤В╨░ 31.10.2025 15:03:34.
╨Я╤А╨╛╨╡╨║╤В "C:\\Work\\Projects\\ZeptoLabTest1\\cmakeaudioplayer\\build\\CMakeFiles\\3.29.2\\CompilerIdC\\CompilerIdC.vcxproj" ╨▓ ╤Г╨╖╨╗╨╡ 1 (╤Ж╨╡╨╗╨╡╨▓╤Л╨╡ ╨╛╨▒╤К╨╡╨║╤В╤Л ╨┐╨╛ ╤Г╨╝╨╛╨╗╤З╨░╨╜╨╕╤О).
PrepareForBuild:
╨б╨╛╨╖╨┤╨░╨╜╨╕╨╡ ╨║╨░╤В╨░╨╗╨╛╨│╨░ "Debug\\".
╨б╤В╤А╤Г╨║╤В╤Г╤А╨╕╤А╨╛╨▓╨░╨╜╨╜╤Л╨╣ ╨▓╤Л╨▓╨╛╨┤ ╨▓╨║╨╗╤О╤З╨╡╨╜. ╨д╨╛╤А╨╝╨░╤В╨╕╤А╨╛╨▓╨░╨╜╨╕╨╡ ╨┤╨╕╨░╨│╨╜╨╛╤Б╤В╨╕╨║╨╕ ╨║╨╛╨╝╨┐╨╕╨╗╤П╤В╨╛╤А╨░ ╨▒╤Г╨┤╨╡╤В ╨╛╤В╤А╨░╨╢╨░╤В╤М ╨╕╨╡╤А╨░╤А╤Е╨╕╤О ╨╛╤И╨╕╨▒╨╛╨║. ╨Я╨╛╨┤╤А╨╛╨▒╨╜╨╡╨╡ ╤Б╨╝. https://aka.ms/cpp/structured-output.
╨б╨╛╨╖╨┤╨░╨╜╨╕╨╡ ╨║╨░╤В╨░╨╗╨╛╨│╨░ "Debug\\CompilerIdC.tlog\\".
InitializeBuildStatus:
╨б╨╛╨╖╨┤╨░╨╜╨╕╨╡ "Debug\\CompilerIdC.tlog\\unsuccessfulbuild", ╤В╨░╨║ ╨║╨░╨║ ╨▒╤Л╨╗╨╛ ╨╖╨░╨┤╨░╨╜╨╛ "AlwaysCreate".
╨Ю╨▒╤А╨░╤Й╨╡╨╜╨╕╨╡ ╨║ "Debug\\CompilerIdC.tlog\\unsuccessfulbuild".
VcpkgTripletSelection:
Using triplet "x64-windows" from "C:\\Work\\vcpkg-2024.03.25\\installed\\x64-windows\\"
Using normalized configuration "Release"
ClCompile:
C:\\Program Files\\Microsoft Visual Studio\\2022\\Community\\VC\\Tools\\MSVC\\14.44.35207\\bin\\HostX64\\x64\\CL.exe /c /I"C:\\Work\\vcpkg-2024.03.25\\installed\\x64-windows\\include" /nologo /W0 /WX- /diagnostics:column /Od /D _MBCS /Gm- /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Zc:inline /Fo"Debug\\\\" /Fd"Debug\\vc143.pdb" /external:W0 /Gd /TC /FC /errorReport:queue CMakeCCompilerId.c
CMakeCCompilerId.c
Link:
C:\\Program Files\\Microsoft Visual Studio\\2022\\Community\\VC\\Tools\\MSVC\\14.44.35207\\bin\\HostX64\\x64\\link.exe /ERRORREPORT:QUEUE /OUT:".\\CompilerIdC.exe" /INCREMENTAL:NO /NOLOGO /LIBPATH:"C:\\Work\\vcpkg-2024.03.25\\installed\\x64-windows\\lib" /LIBPATH:"C:\\Work\\vcpkg-2024.03.25\\installed\\x64-windows\\lib\\manual-link" kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib "C:\\Work\\vcpkg-2024.03.25\\installed\\x64-windows\\lib\\*.lib" /MANIFEST /MANIFESTUAC:"level='asInvoker' uiAccess='false'" /manifest:embed /PDB:".\\CompilerIdC.pdb" /SUBSYSTEM:CONSOLE /TLBID:1 /DYNAMICBASE /NXCOMPAT /IMPLIB:".\\CompilerIdC.lib" /MACHINE:X64 Debug\\CMakeCCompilerId.obj
CompilerIdC.vcxproj -> C:\\Work\\Projects\\ZeptoLabTest1\\cmakeaudioplayer\\build\\CMakeFiles\\3.29.2\\CompilerIdC\\CompilerIdC.exe
AppLocalFromInstalled:
pwsh.exe -ExecutionPolicy Bypass -noprofile -File "C:\\Work\\vcpkg-2024.03.25\\scripts\\buildsystems\\msbuild\\applocal.ps1" "C:\\Work\\Projects\\ZeptoLabTest1\\cmakeaudioplayer\\build\\CMakeFiles\\3.29.2\\CompilerIdC\\CompilerIdC.exe" "C:\\Work\\vcpkg-2024.03.25\\installed\\x64-windows\\bin" "Debug\\CompilerIdC.tlog\\CompilerIdC.write.1u.tlog" "Debug\\vcpkg.applocal.log"
"pwsh.exe" ╨╜╨╡ ╤П╨▓╨╗╤П╨╡╤В╤Б╤П ╨▓╨╜╤Г╤В╤А╨╡╨╜╨╜╨╡╨╣ ╨╕╨╗╨╕ ╨▓╨╜╨╡╤И╨╜╨╡╨╣
╨║╨╛╨╝╨░╨╜╨┤╨╛╨╣, ╨╕╤Б╨┐╨╛╨╗╨╜╤П╨╡╨╝╨╛╨╣ ╨┐╤А╨╛╨│╤А╨░╨╝╨╝╨╛╨╣ ╨╕╨╗╨╕ ╨┐╨░╨║╨╡╤В╨╜╤Л╨╝ ╤Д╨░╨╣╨╗╨╛╨╝.
╨Т╤Л╤Е╨╛╨┤ ╨╕╨╖ ╨║╨╛╨╝╨░╨╜╨┤╤Л "pwsh.exe -ExecutionPolicy Bypass -noprofile -File "C:\\Work\\vcpkg-2024.03.25\\scripts\\buildsystems\\msbuild\\applocal.ps1" "C:\\Work\\Projects\\ZeptoLabTest1\\cmakeaudioplayer\\build\\CMakeFiles\\3.29.2\\CompilerIdC\\CompilerIdC.exe" "C:\\Work\\vcpkg-2024.03.25\\installed\\x64-windows\\bin" "Debug\\CompilerIdC.tlog\\CompilerIdC.write.1u.tlog" "Debug\\vcpkg.applocal.log"" ╤Б ╨║╨╛╨┤╨╛╨╝ 9009.
"C:\\WINDOWS\\System32\\WindowsPowerShell\\v1.0\\powershell.exe" -ExecutionPolicy Bypass -noprofile -File "C:\\Work\\vcpkg-2024.03.25\\scripts\\buildsystems\\msbuild\\applocal.ps1" "C:\\Work\\Projects\\ZeptoLabTest1\\cmakeaudioplayer\\build\\CMakeFiles\\3.29.2\\CompilerIdC\\CompilerIdC.exe" "C:\\Work\\vcpkg-2024.03.25\\installed\\x64-windows\\bin" "Debug\\CompilerIdC.tlog\\CompilerIdC.write.1u.tlog" "Debug\\vcpkg.applocal.log"
PostBuildEvent:
for %%i in (cl.exe) do @echo CMAKE_C_COMPILER=%%~$PATH:i
:VCEnd
CMAKE_C_COMPILER=C:\\Program Files\\Microsoft Visual Studio\\2022\\Community\\VC\\Tools\\MSVC\\14.44.35207\\bin\\Hostx64\\x64\\cl.exe
FinalizeBuildStatus:
╨д╨░╨╣╨╗ "Debug\\CompilerIdC.tlog\\unsuccessfulbuild" ╤Г╨┤╨░╨╗╤П╨╡╤В╤Б╤П.
╨Ю╨▒╤А╨░╤Й╨╡╨╜╨╕╨╡ ╨║ "Debug\\CompilerIdC.tlog\\CompilerIdC.lastbuildstate".
╨б╨▒╨╛╤А╨║╨░ ╨┐╤А╨╛╨╡╨║╤В╨░ "C:\\Work\\Projects\\ZeptoLabTest1\\cmakeaudioplayer\\build\\CMakeFiles\\3.29.2\\CompilerIdC\\CompilerIdC.vcxproj" ╨╖╨░╨▓╨╡╤А╤И╨╡╨╜╨░ (╤Ж╨╡╨╗╨╡╨▓╤Л╨╡ ╨╛╨▒╤К╨╡╨║╤В╤Л ╨┐╨╛ ╤Г╨╝╨╛╨╗╤З╨░╨╜╨╕╤О).
╨б╨▒╨╛╤А╨║╨░ ╤Г╤Б╨┐╨╡╤И╨╜╨╛ ╨╖╨░╨▓╨╡╤А╤И╨╡╨╜╨░.
╨Я╤А╨╡╨┤╤Г╨┐╤А╨╡╨╢╨┤╨╡╨╜╨╕╨╣: 0
╨Ю╤И╨╕╨▒╨╛╨║: 0
╨Я╤А╨╛╤И╨╗╨╛ ╨▓╤А╨╡╨╝╨╡╨╜╨╕ 00:00:01.58
Compilation of the C compiler identification source "CMakeCCompilerId.c" produced "CompilerIdC.exe"
Compilation of the C compiler identification source "CMakeCCompilerId.c" produced "CompilerIdC.vcxproj"
The C compiler identification is MSVC, found in:
C:/Work/Projects/ZeptoLabTest1/cmakeaudioplayer/build/CMakeFiles/3.29.2/CompilerIdC/CompilerIdC.exe
-
kind: "message-v1"
backtrace:
- "C:/Strawberry/c/share/cmake-3.29/Modules/CMakeDetermineCompilerId.cmake:17 (message)"
- "C:/Strawberry/c/share/cmake-3.29/Modules/CMakeDetermineCompilerId.cmake:64 (__determine_compiler_id_test)"
- "C:/Strawberry/c/share/cmake-3.29/Modules/CMakeDetermineCXXCompiler.cmake:126 (CMAKE_DETERMINE_COMPILER_ID)"
- "CMakeLists.txt:2 (project)"
message: |
Compiling the CXX compiler identification source file "CMakeCXXCompilerId.cpp" succeeded.
Compiler:
Build flags:
Id flags:
The output was:
0
╨Т╨╡╤А╤Б╨╕╤П MSBuild 17.14.23+b0019275e ╨┤╨╗╤П .NET Framework
╨б╨▒╨╛╤А╨║╨░ ╨╜╨░╤З╨░╤В╨░ 31.10.2025 15:03:36.
╨Я╤А╨╛╨╡╨║╤В "C:\\Work\\Projects\\ZeptoLabTest1\\cmakeaudioplayer\\build\\CMakeFiles\\3.29.2\\CompilerIdCXX\\CompilerIdCXX.vcxproj" ╨▓ ╤Г╨╖╨╗╨╡ 1 (╤Ж╨╡╨╗╨╡╨▓╤Л╨╡ ╨╛╨▒╤К╨╡╨║╤В╤Л ╨┐╨╛ ╤Г╨╝╨╛╨╗╤З╨░╨╜╨╕╤О).
PrepareForBuild:
╨б╨╛╨╖╨┤╨░╨╜╨╕╨╡ ╨║╨░╤В╨░╨╗╨╛╨│╨░ "Debug\\".
╨б╤В╤А╤Г╨║╤В╤Г╤А╨╕╤А╨╛╨▓╨░╨╜╨╜╤Л╨╣ ╨▓╤Л╨▓╨╛╨┤ ╨▓╨║╨╗╤О╤З╨╡╨╜. ╨д╨╛╤А╨╝╨░╤В╨╕╤А╨╛╨▓╨░╨╜╨╕╨╡ ╨┤╨╕╨░╨│╨╜╨╛╤Б╤В╨╕╨║╨╕ ╨║╨╛╨╝╨┐╨╕╨╗╤П╤В╨╛╤А╨░ ╨▒╤Г╨┤╨╡╤В ╨╛╤В╤А╨░╨╢╨░╤В╤М ╨╕╨╡╤А╨░╤А╤Е╨╕╤О ╨╛╤И╨╕╨▒╨╛╨║. ╨Я╨╛╨┤╤А╨╛╨▒╨╜╨╡╨╡ ╤Б╨╝. https://aka.ms/cpp/structured-output.
╨б╨╛╨╖╨┤╨░╨╜╨╕╨╡ ╨║╨░╤В╨░╨╗╨╛╨│╨░ "Debug\\CompilerIdCXX.tlog\\".
InitializeBuildStatus:
╨б╨╛╨╖╨┤╨░╨╜╨╕╨╡ "Debug\\CompilerIdCXX.tlog\\unsuccessfulbuild", ╤В╨░╨║ ╨║╨░╨║ ╨▒╤Л╨╗╨╛ ╨╖╨░╨┤╨░╨╜╨╛ "AlwaysCreate".
╨Ю╨▒╤А╨░╤Й╨╡╨╜╨╕╨╡ ╨║ "Debug\\CompilerIdCXX.tlog\\unsuccessfulbuild".
VcpkgTripletSelection:
Using triplet "x64-windows" from "C:\\Work\\vcpkg-2024.03.25\\installed\\x64-windows\\"
Using normalized configuration "Release"
ClCompile:
C:\\Program Files\\Microsoft Visual Studio\\2022\\Community\\VC\\Tools\\MSVC\\14.44.35207\\bin\\HostX64\\x64\\CL.exe /c /I"C:\\Work\\vcpkg-2024.03.25\\installed\\x64-windows\\include" /nologo /W0 /WX- /diagnostics:column /Od /D _MBCS /Gm- /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Zc:inline /Fo"Debug\\\\" /Fd"Debug\\vc143.pdb" /external:W0 /Gd /TP /FC /errorReport:queue CMakeCXXCompilerId.cpp
CMakeCXXCompilerId.cpp
Link:
C:\\Program Files\\Microsoft Visual Studio\\2022\\Community\\VC\\Tools\\MSVC\\14.44.35207\\bin\\HostX64\\x64\\link.exe /ERRORREPORT:QUEUE /OUT:".\\CompilerIdCXX.exe" /INCREMENTAL:NO /NOLOGO /LIBPATH:"C:\\Work\\vcpkg-2024.03.25\\installed\\x64-windows\\lib" /LIBPATH:"C:\\Work\\vcpkg-2024.03.25\\installed\\x64-windows\\lib\\manual-link" kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib "C:\\Work\\vcpkg-2024.03.25\\installed\\x64-windows\\lib\\*.lib" /MANIFEST /MANIFESTUAC:"level='asInvoker' uiAccess='false'" /manifest:embed /PDB:".\\CompilerIdCXX.pdb" /SUBSYSTEM:CONSOLE /TLBID:1 /DYNAMICBASE /NXCOMPAT /IMPLIB:".\\CompilerIdCXX.lib" /MACHINE:X64 Debug\\CMakeCXXCompilerId.obj
CompilerIdCXX.vcxproj -> C:\\Work\\Projects\\ZeptoLabTest1\\cmakeaudioplayer\\build\\CMakeFiles\\3.29.2\\CompilerIdCXX\\CompilerIdCXX.exe
AppLocalFromInstalled:
pwsh.exe -ExecutionPolicy Bypass -noprofile -File "C:\\Work\\vcpkg-2024.03.25\\scripts\\buildsystems\\msbuild\\applocal.ps1" "C:\\Work\\Projects\\ZeptoLabTest1\\cmakeaudioplayer\\build\\CMakeFiles\\3.29.2\\CompilerIdCXX\\CompilerIdCXX.exe" "C:\\Work\\vcpkg-2024.03.25\\installed\\x64-windows\\bin" "Debug\\CompilerIdCXX.tlog\\CompilerIdCXX.write.1u.tlog" "Debug\\vcpkg.applocal.log"
"pwsh.exe" ╨╜╨╡ ╤П╨▓╨╗╤П╨╡╤В╤Б╤П ╨▓╨╜╤Г╤В╤А╨╡╨╜╨╜╨╡╨╣ ╨╕╨╗╨╕ ╨▓╨╜╨╡╤И╨╜╨╡╨╣
╨║╨╛╨╝╨░╨╜╨┤╨╛╨╣, ╨╕╤Б╨┐╨╛╨╗╨╜╤П╨╡╨╝╨╛╨╣ ╨┐╤А╨╛╨│╤А╨░╨╝╨╝╨╛╨╣ ╨╕╨╗╨╕ ╨┐╨░╨║╨╡╤В╨╜╤Л╨╝ ╤Д╨░╨╣╨╗╨╛╨╝.
╨Т╤Л╤Е╨╛╨┤ ╨╕╨╖ ╨║╨╛╨╝╨░╨╜╨┤╤Л "pwsh.exe -ExecutionPolicy Bypass -noprofile -File "C:\\Work\\vcpkg-2024.03.25\\scripts\\buildsystems\\msbuild\\applocal.ps1" "C:\\Work\\Projects\\ZeptoLabTest1\\cmakeaudioplayer\\build\\CMakeFiles\\3.29.2\\CompilerIdCXX\\CompilerIdCXX.exe" "C:\\Work\\vcpkg-2024.03.25\\installed\\x64-windows\\bin" "Debug\\CompilerIdCXX.tlog\\CompilerIdCXX.write.1u.tlog" "Debug\\vcpkg.applocal.log"" ╤Б ╨║╨╛╨┤╨╛╨╝ 9009.
"C:\\WINDOWS\\System32\\WindowsPowerShell\\v1.0\\powershell.exe" -ExecutionPolicy Bypass -noprofile -File "C:\\Work\\vcpkg-2024.03.25\\scripts\\buildsystems\\msbuild\\applocal.ps1" "C:\\Work\\Projects\\ZeptoLabTest1\\cmakeaudioplayer\\build\\CMakeFiles\\3.29.2\\CompilerIdCXX\\CompilerIdCXX.exe" "C:\\Work\\vcpkg-2024.03.25\\installed\\x64-windows\\bin" "Debug\\CompilerIdCXX.tlog\\CompilerIdCXX.write.1u.tlog" "Debug\\vcpkg.applocal.log"
PostBuildEvent:
for %%i in (cl.exe) do @echo CMAKE_CXX_COMPILER=%%~$PATH:i
:VCEnd
CMAKE_CXX_COMPILER=C:\\Program Files\\Microsoft Visual Studio\\2022\\Community\\VC\\Tools\\MSVC\\14.44.35207\\bin\\Hostx64\\x64\\cl.exe
FinalizeBuildStatus:
╨д╨░╨╣╨╗ "Debug\\CompilerIdCXX.tlog\\unsuccessfulbuild" ╤Г╨┤╨░╨╗╤П╨╡╤В╤Б╤П.
╨Ю╨▒╤А╨░╤Й╨╡╨╜╨╕╨╡ ╨║ "Debug\\CompilerIdCXX.tlog\\CompilerIdCXX.lastbuildstate".
╨б╨▒╨╛╤А╨║╨░ ╨┐╤А╨╛╨╡╨║╤В╨░ "C:\\Work\\Projects\\ZeptoLabTest1\\cmakeaudioplayer\\build\\CMakeFiles\\3.29.2\\CompilerIdCXX\\CompilerIdCXX.vcxproj" ╨╖╨░╨▓╨╡╤А╤И╨╡╨╜╨░ (╤Ж╨╡╨╗╨╡╨▓╤Л╨╡ ╨╛╨▒╤К╨╡╨║╤В╤Л ╨┐╨╛ ╤Г╨╝╨╛╨╗╤З╨░╨╜╨╕╤О).
╨б╨▒╨╛╤А╨║╨░ ╤Г╤Б╨┐╨╡╤И╨╜╨╛ ╨╖╨░╨▓╨╡╤А╤И╨╡╨╜╨░.
╨Я╤А╨╡╨┤╤Г╨┐╤А╨╡╨╢╨┤╨╡╨╜╨╕╨╣: 0
╨Ю╤И╨╕╨▒╨╛╨║: 0
╨Я╤А╨╛╤И╨╗╨╛ ╨▓╤А╨╡╨╝╨╡╨╜╨╕ 00:00:01.24
Compilation of the CXX compiler identification source "CMakeCXXCompilerId.cpp" produced "CompilerIdCXX.exe"
Compilation of the CXX compiler identification source "CMakeCXXCompilerId.cpp" produced "CompilerIdCXX.vcxproj"
The CXX compiler identification is MSVC, found in:
C:/Work/Projects/ZeptoLabTest1/cmakeaudioplayer/build/CMakeFiles/3.29.2/CompilerIdCXX/CompilerIdCXX.exe
-
kind: "try_compile-v1"
backtrace:
- "C:/Strawberry/c/share/cmake-3.29/Modules/CMakeDetermineCompilerABI.cmake:64 (try_compile)"
- "C:/Strawberry/c/share/cmake-3.29/Modules/CMakeTestCCompiler.cmake:26 (CMAKE_DETERMINE_COMPILER_ABI)"
- "CMakeLists.txt:2 (project)"
checks:
- "Detecting C compiler ABI info"
directories:
source: "C:/Work/Projects/ZeptoLabTest1/cmakeaudioplayer/build/CMakeFiles/CMakeScratch/TryCompile-d3xle8"
binary: "C:/Work/Projects/ZeptoLabTest1/cmakeaudioplayer/build/CMakeFiles/CMakeScratch/TryCompile-d3xle8"
cmakeVariables:
CMAKE_C_FLAGS: "/DWIN32 /D_WINDOWS /W3"
CMAKE_C_FLAGS_DEBUG: "/MDd /Zi /Ob0 /Od /RTC1"
CMAKE_EXE_LINKER_FLAGS: "/machine:x64"
buildResult:
variable: "CMAKE_C_ABI_COMPILED"
cached: true
stdout: |
Change Dir: 'C:/Work/Projects/ZeptoLabTest1/cmakeaudioplayer/build/CMakeFiles/CMakeScratch/TryCompile-d3xle8'
Run Build Command(s): "C:/Program Files/Microsoft Visual Studio/2022/Community/MSBuild/Current/Bin/amd64/MSBuild.exe" cmTC_b9934.vcxproj /p:Configuration=Debug /p:Platform=x64 /p:VisualStudioVersion=17.0 /v:n
╨Т╨╡╤А╤Б╨╕╤П MSBuild 17.14.23+b0019275e ╨┤╨╗╤П .NET Framework
╨б╨▒╨╛╤А╨║╨░ ╨╜╨░╤З╨░╤В╨░ 31.10.2025 15:03:38.
╨Я╤А╨╛╨╡╨║╤В "C:\\Work\\Projects\\ZeptoLabTest1\\cmakeaudioplayer\\build\\CMakeFiles\\CMakeScratch\\TryCompile-d3xle8\\cmTC_b9934.vcxproj" ╨▓ ╤Г╨╖╨╗╨╡ 1 (╤Ж╨╡╨╗╨╡╨▓╤Л╨╡ ╨╛╨▒╤К╨╡╨║╤В╤Л ╨┐╨╛ ╤Г╨╝╨╛╨╗╤З╨░╨╜╨╕╤О).
PrepareForBuild:
╨б╨╛╨╖╨┤╨░╨╜╨╕╨╡ ╨║╨░╤В╨░╨╗╨╛╨│╨░ "cmTC_b9934.dir\\Debug\\".
╨б╤В╤А╤Г╨║╤В╤Г╤А╨╕╤А╨╛╨▓╨░╨╜╨╜╤Л╨╣ ╨▓╤Л╨▓╨╛╨┤ ╨▓╨║╨╗╤О╤З╨╡╨╜. ╨д╨╛╤А╨╝╨░╤В╨╕╤А╨╛╨▓╨░╨╜╨╕╨╡ ╨┤╨╕╨░╨│╨╜╨╛╤Б╤В╨╕╨║╨╕ ╨║╨╛╨╝╨┐╨╕╨╗╤П╤В╨╛╤А╨░ ╨▒╤Г╨┤╨╡╤В ╨╛╤В╤А╨░╨╢╨░╤В╤М ╨╕╨╡╤А╨░╤А╤Е╨╕╤О ╨╛╤И╨╕╨▒╨╛╨║. ╨Я╨╛╨┤╤А╨╛╨▒╨╜╨╡╨╡ ╤Б╨╝. https://aka.ms/cpp/structured-output.
╨б╨╛╨╖╨┤╨░╨╜╨╕╨╡ ╨║╨░╤В╨░╨╗╨╛╨│╨░ "C:\\Work\\Projects\\ZeptoLabTest1\\cmakeaudioplayer\\build\\CMakeFiles\\CMakeScratch\\TryCompile-d3xle8\\Debug\\".
╨б╨╛╨╖╨┤╨░╨╜╨╕╨╡ ╨║╨░╤В╨░╨╗╨╛╨│╨░ "cmTC_b9934.dir\\Debug\\cmTC_b9934.tlog\\".
InitializeBuildStatus:
╨б╨╛╨╖╨┤╨░╨╜╨╕╨╡ "cmTC_b9934.dir\\Debug\\cmTC_b9934.tlog\\unsuccessfulbuild", ╤В╨░╨║ ╨║╨░╨║ ╨▒╤Л╨╗╨╛ ╨╖╨░╨┤╨░╨╜╨╛ "AlwaysCreate".
╨Ю╨▒╤А╨░╤Й╨╡╨╜╨╕╨╡ ╨║ "cmTC_b9934.dir\\Debug\\cmTC_b9934.tlog\\unsuccessfulbuild".
VcpkgTripletSelection:
Using triplet "x64-windows" from "C:\\Work\\vcpkg-2024.03.25\\installed\\x64-windows\\"
Using normalized configuration "Release"
ClCompile:
C:\\Program Files\\Microsoft Visual Studio\\2022\\Community\\VC\\Tools\\MSVC\\14.44.35207\\bin\\HostX64\\x64\\CL.exe /c /I"C:\\Work\\vcpkg-2024.03.25\\installed\\x64-windows\\include" /Zi /W3 /WX- /diagnostics:column /Od /Ob0 /D _MBCS /D WIN32 /D _WINDOWS /D "CMAKE_INTDIR=\\"Debug\\"" /Gm- /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Zc:inline /Fo"cmTC_b9934.dir\\Debug\\\\" /Fd"cmTC_b9934.dir\\Debug\\vc143.pdb" /external:W3 /Gd /TC /errorReport:queue "C:\\Strawberry\\c\\share\\cmake-3.29\\Modules\\CMakeCCompilerABI.c"
╨Ю╨┐╤В╨╕╨╝╨╕╨╖╨╕╤А╤Г╤О╤Й╨╕╨╣ ╨║╨╛╨╝╨┐╨╕╨╗╤П╤В╨╛╤А Microsoft (R) C/C++ ╨▓╨╡╤А╤Б╨╕╨╕ 19.44.35217 ╨┤╨╗╤П x64
(C) ╨Ъ╨╛╤А╨┐╨╛╤А╨░╤Ж╨╕╤П ╨Ь╨░╨╣╨║╤А╨╛╤Б╨╛╤Д╤В (Microsoft Corporation). ╨Т╤Б╨╡ ╨┐╤А╨░╨▓╨░ ╨╖╨░╤Й╨╕╤Й╨╡╨╜╤Л.
cl /c /I"C:\\Work\\vcpkg-2024.03.25\\installed\\x64-windows\\include" /Zi /W3 /WX- /diagnostics:column /Od /Ob0 /D _MBCS /D WIN32 /D _WINDOWS /D "CMAKE_INTDIR=\\"Debug\\"" /Gm- /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Zc:inline /Fo"cmTC_b9934.dir\\Debug\\\\" /Fd"cmTC_b9934.dir\\Debug\\vc143.pdb" /external:W3 /Gd /TC /errorReport:queue "C:\\Strawberry\\c\\share\\cmake-3.29\\Modules\\CMakeCCompilerABI.c"
CMakeCCompilerABI.c
Link:
C:\\Program Files\\Microsoft Visual Studio\\2022\\Community\\VC\\Tools\\MSVC\\14.44.35207\\bin\\HostX64\\x64\\link.exe /ERRORREPORT:QUEUE /OUT:"C:\\Work\\Projects\\ZeptoLabTest1\\cmakeaudioplayer\\build\\CMakeFiles\\CMakeScratch\\TryCompile-d3xle8\\Debug\\cmTC_b9934.exe" /INCREMENTAL /ILK:"cmTC_b9934.dir\\Debug\\cmTC_b9934.ilk" /NOLOGO /LIBPATH:"C:\\Work\\vcpkg-2024.03.25\\installed\\x64-windows\\lib" /LIBPATH:"C:\\Work\\vcpkg-2024.03.25\\installed\\x64-windows\\lib\\manual-link" kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib "C:\\Work\\vcpkg-2024.03.25\\installed\\x64-windows\\lib\\*.lib" /MANIFEST /MANIFESTUAC:"level='asInvoker' uiAccess='false'" /manifest:embed /DEBUG /PDB:"C:/Work/Projects/ZeptoLabTest1/cmakeaudioplayer/build/CMakeFiles/CMakeScratch/TryCompile-d3xle8/Debug/cmTC_b9934.pdb" /SUBSYSTEM:CONSOLE /TLBID:1 /DYNAMICBASE /NXCOMPAT /IMPLIB:"C:/Work/Projects/ZeptoLabTest1/cmakeaudioplayer/build/CMakeFiles/CMakeScratch/TryCompile-d3xle8/Debug/cmTC_b9934.lib" /MACHINE:X64 /machine:x64 cmTC_b9934.dir\\Debug\\CMakeCCompilerABI.obj
cmTC_b9934.vcxproj -> C:\\Work\\Projects\\ZeptoLabTest1\\cmakeaudioplayer\\build\\CMakeFiles\\CMakeScratch\\TryCompile-d3xle8\\Debug\\cmTC_b9934.exe
AppLocalFromInstalled:
pwsh.exe -ExecutionPolicy Bypass -noprofile -File "C:\\Work\\vcpkg-2024.03.25\\scripts\\buildsystems\\msbuild\\applocal.ps1" "C:\\Work\\Projects\\ZeptoLabTest1\\cmakeaudioplayer\\build\\CMakeFiles\\CMakeScratch\\TryCompile-d3xle8\\Debug\\cmTC_b9934.exe" "C:\\Work\\vcpkg-2024.03.25\\installed\\x64-windows\\bin" "cmTC_b9934.dir\\Debug\\cmTC_b9934.tlog\\cmTC_b9934.write.1u.tlog" "cmTC_b9934.dir\\Debug\\vcpkg.applocal.log"
"pwsh.exe" ╨╜╨╡ ╤П╨▓╨╗╤П╨╡╤В╤Б╤П ╨▓╨╜╤Г╤В╤А╨╡╨╜╨╜╨╡╨╣ ╨╕╨╗╨╕ ╨▓╨╜╨╡╤И╨╜╨╡╨╣
╨║╨╛╨╝╨░╨╜╨┤╨╛╨╣, ╨╕╤Б╨┐╨╛╨╗╨╜╤П╨╡╨╝╨╛╨╣ ╨┐╤А╨╛╨│╤А╨░╨╝╨╝╨╛╨╣ ╨╕╨╗╨╕ ╨┐╨░╨║╨╡╤В╨╜╤Л╨╝ ╤Д╨░╨╣╨╗╨╛╨╝.
╨Т╤Л╤Е╨╛╨┤ ╨╕╨╖ ╨║╨╛╨╝╨░╨╜╨┤╤Л "pwsh.exe -ExecutionPolicy Bypass -noprofile -File "C:\\Work\\vcpkg-2024.03.25\\scripts\\buildsystems\\msbuild\\applocal.ps1" "C:\\Work\\Projects\\ZeptoLabTest1\\cmakeaudioplayer\\build\\CMakeFiles\\CMakeScratch\\TryCompile-d3xle8\\Debug\\cmTC_b9934.exe" "C:\\Work\\vcpkg-2024.03.25\\installed\\x64-windows\\bin" "cmTC_b9934.dir\\Debug\\cmTC_b9934.tlog\\cmTC_b9934.write.1u.tlog" "cmTC_b9934.dir\\Debug\\vcpkg.applocal.log"" ╤Б ╨║╨╛╨┤╨╛╨╝ 9009.
"C:\\WINDOWS\\System32\\WindowsPowerShell\\v1.0\\powershell.exe" -ExecutionPolicy Bypass -noprofile -File "C:\\Work\\vcpkg-2024.03.25\\scripts\\buildsystems\\msbuild\\applocal.ps1" "C:\\Work\\Projects\\ZeptoLabTest1\\cmakeaudioplayer\\build\\CMakeFiles\\CMakeScratch\\TryCompile-d3xle8\\Debug\\cmTC_b9934.exe" "C:\\Work\\vcpkg-2024.03.25\\installed\\x64-windows\\bin" "cmTC_b9934.dir\\Debug\\cmTC_b9934.tlog\\cmTC_b9934.write.1u.tlog" "cmTC_b9934.dir\\Debug\\vcpkg.applocal.log"
FinalizeBuildStatus:
╨д╨░╨╣╨╗ "cmTC_b9934.dir\\Debug\\cmTC_b9934.tlog\\unsuccessfulbuild" ╤Г╨┤╨░╨╗╤П╨╡╤В╤Б╤П.
╨Ю╨▒╤А╨░╤Й╨╡╨╜╨╕╨╡ ╨║ "cmTC_b9934.dir\\Debug\\cmTC_b9934.tlog\\cmTC_b9934.lastbuildstate".
╨б╨▒╨╛╤А╨║╨░ ╨┐╤А╨╛╨╡╨║╤В╨░ "C:\\Work\\Projects\\ZeptoLabTest1\\cmakeaudioplayer\\build\\CMakeFiles\\CMakeScratch\\TryCompile-d3xle8\\cmTC_b9934.vcxproj" ╨╖╨░╨▓╨╡╤А╤И╨╡╨╜╨░ (╤Ж╨╡╨╗╨╡╨▓╤Л╨╡ ╨╛╨▒╤К╨╡╨║╤В╤Л ╨┐╨╛ ╤Г╨╝╨╛╨╗╤З╨░╨╜╨╕╤О).
╨б╨▒╨╛╤А╨║╨░ ╤Г╤Б╨┐╨╡╤И╨╜╨╛ ╨╖╨░╨▓╨╡╤А╤И╨╡╨╜╨░.
╨Я╤А╨╡╨┤╤Г╨┐╤А╨╡╨╢╨┤╨╡╨╜╨╕╨╣: 0
╨Ю╤И╨╕╨▒╨╛╨║: 0
╨Я╤А╨╛╤И╨╗╨╛ ╨▓╤А╨╡╨╝╨╡╨╜╨╕ 00:00:01.08
exitCode: 0
-
kind: "message-v1"
backtrace:
- "C:/Strawberry/c/share/cmake-3.29/Modules/CMakeDetermineCompilerABI.cmake:170 (message)"
- "C:/Strawberry/c/share/cmake-3.29/Modules/CMakeTestCCompiler.cmake:26 (CMAKE_DETERMINE_COMPILER_ABI)"
- "CMakeLists.txt:2 (project)"
message: |
Parsed C implicit link information:
link line regex: [^( *|.*[/\\])(ld[0-9]*(\\.[a-z]+)?|link\\.exe|lld-link(\\.exe)?|CMAKE_LINK_STARTFILE-NOTFOUND|([^/\\]+-)?ld|collect2)[^/\\]*( |$)]
linker tool regex: [^[ ]*(->|")?[ ]*(([^"]*[/\\])?(ld[0-9]*(\\.[a-z]+)?|link\\.exe|lld-link(\\.exe)?))("|,| |$)]
linker tool for 'C': C:/Program Files/Microsoft Visual Studio/2022/Community/VC/Tools/MSVC/14.44.35207/bin/HostX64/x64/link.exe
implicit libs: []
implicit objs: []
implicit dirs: []
implicit fwks: []
-
kind: "message-v1"
backtrace:
- "C:/Strawberry/c/share/cmake-3.29/Modules/Internal/CMakeDetermineLinkerId.cmake:40 (message)"
- "C:/Strawberry/c/share/cmake-3.29/Modules/CMakeDetermineCompilerABI.cmake:207 (cmake_determine_linker_id)"
- "C:/Strawberry/c/share/cmake-3.29/Modules/CMakeTestCCompiler.cmake:26 (CMAKE_DETERMINE_COMPILER_ABI)"
- "CMakeLists.txt:2 (project)"
message: |
Running the C compiler's linker: "C:/Program Files/Microsoft Visual Studio/2022/Community/VC/Tools/MSVC/14.44.35207/bin/HostX64/x64/link.exe" "-v"
Microsoft (R) Incremental Linker Version 14.44.35217.0
Copyright (C) Microsoft Corporation. All rights reserved.
-
kind: "try_compile-v1"
backtrace:
- "C:/Strawberry/c/share/cmake-3.29/Modules/CMakeDetermineCompilerABI.cmake:64 (try_compile)"
- "C:/Strawberry/c/share/cmake-3.29/Modules/CMakeTestCXXCompiler.cmake:26 (CMAKE_DETERMINE_COMPILER_ABI)"
- "CMakeLists.txt:2 (project)"
checks:
- "Detecting CXX compiler ABI info"
directories:
source: "C:/Work/Projects/ZeptoLabTest1/cmakeaudioplayer/build/CMakeFiles/CMakeScratch/TryCompile-jvadad"
binary: "C:/Work/Projects/ZeptoLabTest1/cmakeaudioplayer/build/CMakeFiles/CMakeScratch/TryCompile-jvadad"
cmakeVariables:
CMAKE_CXX_FLAGS: "/DWIN32 /D_WINDOWS /W3 /GR /EHsc"
CMAKE_CXX_FLAGS_DEBUG: "/MDd /Zi /Ob0 /Od /RTC1"
CMAKE_EXE_LINKER_FLAGS: "/machine:x64"
buildResult:
variable: "CMAKE_CXX_ABI_COMPILED"
cached: true
stdout: |
Change Dir: 'C:/Work/Projects/ZeptoLabTest1/cmakeaudioplayer/build/CMakeFiles/CMakeScratch/TryCompile-jvadad'
Run Build Command(s): "C:/Program Files/Microsoft Visual Studio/2022/Community/MSBuild/Current/Bin/amd64/MSBuild.exe" cmTC_a4dde.vcxproj /p:Configuration=Debug /p:Platform=x64 /p:VisualStudioVersion=17.0 /v:n
╨Т╨╡╤А╤Б╨╕╤П MSBuild 17.14.23+b0019275e ╨┤╨╗╤П .NET Framework
╨б╨▒╨╛╤А╨║╨░ ╨╜╨░╤З╨░╤В╨░ 31.10.2025 15:03:39.
╨Я╤А╨╛╨╡╨║╤В "C:\\Work\\Projects\\ZeptoLabTest1\\cmakeaudioplayer\\build\\CMakeFiles\\CMakeScratch\\TryCompile-jvadad\\cmTC_a4dde.vcxproj" ╨▓ ╤Г╨╖╨╗╨╡ 1 (╤Ж╨╡╨╗╨╡╨▓╤Л╨╡ ╨╛╨▒╤К╨╡╨║╤В╤Л ╨┐╨╛ ╤Г╨╝╨╛╨╗╤З╨░╨╜╨╕╤О).
PrepareForBuild:
╨б╨╛╨╖╨┤╨░╨╜╨╕╨╡ ╨║╨░╤В╨░╨╗╨╛╨│╨░ "cmTC_a4dde.dir\\Debug\\".
╨б╤В╤А╤Г╨║╤В╤Г╤А╨╕╤А╨╛╨▓╨░╨╜╨╜╤Л╨╣ ╨▓╤Л╨▓╨╛╨┤ ╨▓╨║╨╗╤О╤З╨╡╨╜. ╨д╨╛╤А╨╝╨░╤В╨╕╤А╨╛╨▓╨░╨╜╨╕╨╡ ╨┤╨╕╨░╨│╨╜╨╛╤Б╤В╨╕╨║╨╕ ╨║╨╛╨╝╨┐╨╕╨╗╤П╤В╨╛╤А╨░ ╨▒╤Г╨┤╨╡╤В ╨╛╤В╤А╨░╨╢╨░╤В╤М ╨╕╨╡╤А╨░╤А╤Е╨╕╤О ╨╛╤И╨╕╨▒╨╛╨║. ╨Я╨╛╨┤╤А╨╛╨▒╨╜╨╡╨╡ ╤Б╨╝. https://aka.ms/cpp/structured-output.
╨б╨╛╨╖╨┤╨░╨╜╨╕╨╡ ╨║╨░╤В╨░╨╗╨╛╨│╨░ "C:\\Work\\Projects\\ZeptoLabTest1\\cmakeaudioplayer\\build\\CMakeFiles\\CMakeScratch\\TryCompile-jvadad\\Debug\\".
╨б╨╛╨╖╨┤╨░╨╜╨╕╨╡ ╨║╨░╤В╨░╨╗╨╛╨│╨░ "cmTC_a4dde.dir\\Debug\\cmTC_a4dde.tlog\\".
InitializeBuildStatus:
╨б╨╛╨╖╨┤╨░╨╜╨╕╨╡ "cmTC_a4dde.dir\\Debug\\cmTC_a4dde.tlog\\unsuccessfulbuild", ╤В╨░╨║ ╨║╨░╨║ ╨▒╤Л╨╗╨╛ ╨╖╨░╨┤╨░╨╜╨╛ "AlwaysCreate".
╨Ю╨▒╤А╨░╤Й╨╡╨╜╨╕╨╡ ╨║ "cmTC_a4dde.dir\\Debug\\cmTC_a4dde.tlog\\unsuccessfulbuild".
VcpkgTripletSelection:
Using triplet "x64-windows" from "C:\\Work\\vcpkg-2024.03.25\\installed\\x64-windows\\"
Using normalized configuration "Release"
ClCompile:
C:\\Program Files\\Microsoft Visual Studio\\2022\\Community\\VC\\Tools\\MSVC\\14.44.35207\\bin\\HostX64\\x64\\CL.exe /c /I"C:\\Work\\vcpkg-2024.03.25\\installed\\x64-windows\\include" /Zi /W3 /WX- /diagnostics:column /Od /Ob0 /D _MBCS /D WIN32 /D _WINDOWS /D "CMAKE_INTDIR=\\"Debug\\"" /Gm- /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Zc:inline /GR /Fo"cmTC_a4dde.dir\\Debug\\\\" /Fd"cmTC_a4dde.dir\\Debug\\vc143.pdb" /external:W3 /Gd /TP /errorReport:queue "C:\\Strawberry\\c\\share\\cmake-3.29\\Modules\\CMakeCXXCompilerABI.cpp"
╨Ю╨┐╤В╨╕╨╝╨╕╨╖╨╕╤А╤Г╤О╤Й╨╕╨╣ ╨║╨╛╨╝╨┐╨╕╨╗╤П╤В╨╛╤А Microsoft (R) C/C++ ╨▓╨╡╤А╤Б╨╕╨╕ 19.44.35217 ╨┤╨╗╤П x64
(C) ╨Ъ╨╛╤А╨┐╨╛╤А╨░╤Ж╨╕╤П ╨Ь╨░╨╣╨║╤А╨╛╤Б╨╛╤Д╤В (Microsoft Corporation). ╨Т╤Б╨╡ ╨┐╤А╨░╨▓╨░ ╨╖╨░╤Й╨╕╤Й╨╡╨╜╤Л.
cl /c /I"C:\\Work\\vcpkg-2024.03.25\\installed\\x64-windows\\include" /Zi /W3 /WX- /diagnostics:column /Od /Ob0 /D _MBCS /D WIN32 /D _WINDOWS /D "CMAKE_INTDIR=\\"Debug\\"" /Gm- /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Zc:inline /GR /Fo"cmTC_a4dde.dir\\Debug\\\\" /Fd"cmTC_a4dde.dir\\Debug\\vc143.pdb" /external:W3 /Gd /TP /errorReport:queue "C:\\Strawberry\\c\\share\\cmake-3.29\\Modules\\CMakeCXXCompilerABI.cpp"
CMakeCXXCompilerABI.cpp
Link:
C:\\Program Files\\Microsoft Visual Studio\\2022\\Community\\VC\\Tools\\MSVC\\14.44.35207\\bin\\HostX64\\x64\\link.exe /ERRORREPORT:QUEUE /OUT:"C:\\Work\\Projects\\ZeptoLabTest1\\cmakeaudioplayer\\build\\CMakeFiles\\CMakeScratch\\TryCompile-jvadad\\Debug\\cmTC_a4dde.exe" /INCREMENTAL /ILK:"cmTC_a4dde.dir\\Debug\\cmTC_a4dde.ilk" /NOLOGO /LIBPATH:"C:\\Work\\vcpkg-2024.03.25\\installed\\x64-windows\\lib" /LIBPATH:"C:\\Work\\vcpkg-2024.03.25\\installed\\x64-windows\\lib\\manual-link" kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib "C:\\Work\\vcpkg-2024.03.25\\installed\\x64-windows\\lib\\*.lib" /MANIFEST /MANIFESTUAC:"level='asInvoker' uiAccess='false'" /manifest:embed /DEBUG /PDB:"C:/Work/Projects/ZeptoLabTest1/cmakeaudioplayer/build/CMakeFiles/CMakeScratch/TryCompile-jvadad/Debug/cmTC_a4dde.pdb" /SUBSYSTEM:CONSOLE /TLBID:1 /DYNAMICBASE /NXCOMPAT /IMPLIB:"C:/Work/Projects/ZeptoLabTest1/cmakeaudioplayer/build/CMakeFiles/CMakeScratch/TryCompile-jvadad/Debug/cmTC_a4dde.lib" /MACHINE:X64 /machine:x64 cmTC_a4dde.dir\\Debug\\CMakeCXXCompilerABI.obj
cmTC_a4dde.vcxproj -> C:\\Work\\Projects\\ZeptoLabTest1\\cmakeaudioplayer\\build\\CMakeFiles\\CMakeScratch\\TryCompile-jvadad\\Debug\\cmTC_a4dde.exe
AppLocalFromInstalled:
pwsh.exe -ExecutionPolicy Bypass -noprofile -File "C:\\Work\\vcpkg-2024.03.25\\scripts\\buildsystems\\msbuild\\applocal.ps1" "C:\\Work\\Projects\\ZeptoLabTest1\\cmakeaudioplayer\\build\\CMakeFiles\\CMakeScratch\\TryCompile-jvadad\\Debug\\cmTC_a4dde.exe" "C:\\Work\\vcpkg-2024.03.25\\installed\\x64-windows\\bin" "cmTC_a4dde.dir\\Debug\\cmTC_a4dde.tlog\\cmTC_a4dde.write.1u.tlog" "cmTC_a4dde.dir\\Debug\\vcpkg.applocal.log"
"pwsh.exe" ╨╜╨╡ ╤П╨▓╨╗╤П╨╡╤В╤Б╤П ╨▓╨╜╤Г╤В╤А╨╡╨╜╨╜╨╡╨╣ ╨╕╨╗╨╕ ╨▓╨╜╨╡╤И╨╜╨╡╨╣
╨║╨╛╨╝╨░╨╜╨┤╨╛╨╣, ╨╕╤Б╨┐╨╛╨╗╨╜╤П╨╡╨╝╨╛╨╣ ╨┐╤А╨╛╨│╤А╨░╨╝╨╝╨╛╨╣ ╨╕╨╗╨╕ ╨┐╨░╨║╨╡╤В╨╜╤Л╨╝ ╤Д╨░╨╣╨╗╨╛╨╝.
╨Т╤Л╤Е╨╛╨┤ ╨╕╨╖ ╨║╨╛╨╝╨░╨╜╨┤╤Л "pwsh.exe -ExecutionPolicy Bypass -noprofile -File "C:\\Work\\vcpkg-2024.03.25\\scripts\\buildsystems\\msbuild\\applocal.ps1" "C:\\Work\\Projects\\ZeptoLabTest1\\cmakeaudioplayer\\build\\CMakeFiles\\CMakeScratch\\TryCompile-jvadad\\Debug\\cmTC_a4dde.exe" "C:\\Work\\vcpkg-2024.03.25\\installed\\x64-windows\\bin" "cmTC_a4dde.dir\\Debug\\cmTC_a4dde.tlog\\cmTC_a4dde.write.1u.tlog" "cmTC_a4dde.dir\\Debug\\vcpkg.applocal.log"" ╤Б ╨║╨╛╨┤╨╛╨╝ 9009.
"C:\\WINDOWS\\System32\\WindowsPowerShell\\v1.0\\powershell.exe" -ExecutionPolicy Bypass -noprofile -File "C:\\Work\\vcpkg-2024.03.25\\scripts\\buildsystems\\msbuild\\applocal.ps1" "C:\\Work\\Projects\\ZeptoLabTest1\\cmakeaudioplayer\\build\\CMakeFiles\\CMakeScratch\\TryCompile-jvadad\\Debug\\cmTC_a4dde.exe" "C:\\Work\\vcpkg-2024.03.25\\installed\\x64-windows\\bin" "cmTC_a4dde.dir\\Debug\\cmTC_a4dde.tlog\\cmTC_a4dde.write.1u.tlog" "cmTC_a4dde.dir\\Debug\\vcpkg.applocal.log"
FinalizeBuildStatus:
╨д╨░╨╣╨╗ "cmTC_a4dde.dir\\Debug\\cmTC_a4dde.tlog\\unsuccessfulbuild" ╤Г╨┤╨░╨╗╤П╨╡╤В╤Б╤П.
╨Ю╨▒╤А╨░╤Й╨╡╨╜╨╕╨╡ ╨║ "cmTC_a4dde.dir\\Debug\\cmTC_a4dde.tlog\\cmTC_a4dde.lastbuildstate".
╨б╨▒╨╛╤А╨║╨░ ╨┐╤А╨╛╨╡╨║╤В╨░ "C:\\Work\\Projects\\ZeptoLabTest1\\cmakeaudioplayer\\build\\CMakeFiles\\CMakeScratch\\TryCompile-jvadad\\cmTC_a4dde.vcxproj" ╨╖╨░╨▓╨╡╤А╤И╨╡╨╜╨░ (╤Ж╨╡╨╗╨╡╨▓╤Л╨╡ ╨╛╨▒╤К╨╡╨║╤В╤Л ╨┐╨╛ ╤Г╨╝╨╛╨╗╤З╨░╨╜╨╕╤О).
╨б╨▒╨╛╤А╨║╨░ ╤Г╤Б╨┐╨╡╤И╨╜╨╛ ╨╖╨░╨▓╨╡╤А╤И╨╡╨╜╨░.
╨Я╤А╨╡╨┤╤Г╨┐╤А╨╡╨╢╨┤╨╡╨╜╨╕╨╣: 0
╨Ю╤И╨╕╨▒╨╛╨║: 0
╨Я╤А╨╛╤И╨╗╨╛ ╨▓╤А╨╡╨╝╨╡╨╜╨╕ 00:00:01.07
exitCode: 0
-
kind: "message-v1"
backtrace:
- "C:/Strawberry/c/share/cmake-3.29/Modules/CMakeDetermineCompilerABI.cmake:170 (message)"
- "C:/Strawberry/c/share/cmake-3.29/Modules/CMakeTestCXXCompiler.cmake:26 (CMAKE_DETERMINE_COMPILER_ABI)"
- "CMakeLists.txt:2 (project)"
message: |
Parsed CXX implicit link information:
link line regex: [^( *|.*[/\\])(ld[0-9]*(\\.[a-z]+)?|link\\.exe|lld-link(\\.exe)?|CMAKE_LINK_STARTFILE-NOTFOUND|([^/\\]+-)?ld|collect2)[^/\\]*( |$)]
linker tool regex: [^[ ]*(->|")?[ ]*(([^"]*[/\\])?(ld[0-9]*(\\.[a-z]+)?|link\\.exe|lld-link(\\.exe)?))("|,| |$)]
linker tool for 'CXX': C:/Program Files/Microsoft Visual Studio/2022/Community/VC/Tools/MSVC/14.44.35207/bin/HostX64/x64/link.exe
implicit libs: []
implicit objs: []
implicit dirs: []
implicit fwks: []
-
kind: "message-v1"
backtrace:
- "C:/Strawberry/c/share/cmake-3.29/Modules/Internal/CMakeDetermineLinkerId.cmake:40 (message)"
- "C:/Strawberry/c/share/cmake-3.29/Modules/CMakeDetermineCompilerABI.cmake:207 (cmake_determine_linker_id)"
- "C:/Strawberry/c/share/cmake-3.29/Modules/CMakeTestCXXCompiler.cmake:26 (CMAKE_DETERMINE_COMPILER_ABI)"
- "CMakeLists.txt:2 (project)"
message: |
Running the CXX compiler's linker: "C:/Program Files/Microsoft Visual Studio/2022/Community/VC/Tools/MSVC/14.44.35207/bin/HostX64/x64/link.exe" "-v"
Microsoft (R) Incremental Linker Version 14.44.35217.0
Copyright (C) Microsoft Corporation. All rights reserved.
...

View File

@ -1 +0,0 @@
# This file is generated by cmake for dependency checking of the CMakeCache.txt file

View File

@ -1,7 +0,0 @@
Run using cmakelist
make -j$(nproc) -C build #Компилируем
./build/sdl_app #Запускаем
Для постройки без звука
rm -rf build #Очищаем build папку
cmake -B build -DAUDIO=1 #Пересоздаём конфигурацию CMake

BIN
conus.bmp

Binary file not shown.

Before

Width:  |  Height:  |  Size: 48 KiB

View File

@ -1,93 +0,0 @@
===Vertices: 8
Vertex 0: <Vector (1.0000, 1.0000, 1.0000)>
Vertex 1: <Vector (1.0000, 1.0000, -1.0000)>
Vertex 2: <Vector (1.0000, -1.0000, 1.0000)>
Vertex 3: <Vector (1.0000, -1.0000, -1.0000)>
Vertex 4: <Vector (-1.0000, 1.0000, 1.0000)>
Vertex 5: <Vector (-1.0000, 1.0000, -1.0000)>
Vertex 6: <Vector (-1.0000, -1.0000, 1.0000)>
Vertex 7: <Vector (-1.0000, -1.0000, -1.0000)>
===UV Coordinates:
Face count: 12
Face 0
UV Count: 3
UV <Vector (0.8750, 0.5000)>
UV <Vector (0.6250, 0.7500)>
UV <Vector (0.6250, 0.5000)>
Face 1
UV Count: 3
UV <Vector (0.6250, 0.7500)>
UV <Vector (0.3750, 1.0000)>
UV <Vector (0.3750, 0.7500)>
Face 2
UV Count: 3
UV <Vector (0.6250, 0.0000)>
UV <Vector (0.3750, 0.2500)>
UV <Vector (0.3750, 0.0000)>
Face 3
UV Count: 3
UV <Vector (0.3750, 0.5000)>
UV <Vector (0.1250, 0.7500)>
UV <Vector (0.1250, 0.5000)>
Face 4
UV Count: 3
UV <Vector (0.6250, 0.5000)>
UV <Vector (0.3750, 0.7500)>
UV <Vector (0.3750, 0.5000)>
Face 5
UV Count: 3
UV <Vector (0.6250, 0.2500)>
UV <Vector (0.3750, 0.5000)>
UV <Vector (0.3750, 0.2500)>
Face 6
UV Count: 3
UV <Vector (0.8750, 0.5000)>
UV <Vector (0.8750, 0.7500)>
UV <Vector (0.6250, 0.7500)>
Face 7
UV Count: 3
UV <Vector (0.6250, 0.7500)>
UV <Vector (0.6250, 1.0000)>
UV <Vector (0.3750, 1.0000)>
Face 8
UV Count: 3
UV <Vector (0.6250, 0.0000)>
UV <Vector (0.6250, 0.2500)>
UV <Vector (0.3750, 0.2500)>
Face 9
UV Count: 3
UV <Vector (0.3750, 0.5000)>
UV <Vector (0.3750, 0.7500)>
UV <Vector (0.1250, 0.7500)>
Face 10
UV Count: 3
UV <Vector (0.6250, 0.5000)>
UV <Vector (0.6250, 0.7500)>
UV <Vector (0.3750, 0.7500)>
Face 11
UV Count: 3
UV <Vector (0.6250, 0.2500)>
UV <Vector (0.6250, 0.5000)>
UV <Vector (0.3750, 0.5000)>
===Normals:
Vertex 0: Normal <Vector (0.5774, 0.5773, 0.5773)>
Vertex 1: Normal <Vector (0.5773, 0.5774, -0.5774)>
Vertex 2: Normal <Vector (0.5773, -0.5774, 0.5774)>
Vertex 3: Normal <Vector (0.5774, -0.5773, -0.5773)>
Vertex 4: Normal <Vector (-0.5773, 0.5774, 0.5774)>
Vertex 5: Normal <Vector (-0.5774, 0.5773, -0.5773)>
Vertex 6: Normal <Vector (-0.5774, -0.5773, 0.5773)>
Vertex 7: Normal <Vector (-0.5773, -0.5774, -0.5774)>
===Triangles: 12
Triangle: [4, 2, 0]
Triangle: [2, 7, 3]
Triangle: [6, 5, 7]
Triangle: [1, 7, 5]
Triangle: [0, 3, 1]
Triangle: [4, 1, 5]
Triangle: [4, 6, 2]
Triangle: [2, 6, 7]
Triangle: [6, 4, 5]
Triangle: [1, 3, 7]
Triangle: [0, 2, 3]
Triangle: [4, 0, 1]

BIN
data.zip

Binary file not shown.

View File

@ -1,15 +0,0 @@
attribute vec3 vPosition;
attribute vec2 vTexCoord;
varying vec2 texCoord;
varying vec3 vWorldPos; // Мировая позиция вершины
uniform mat4 ProjectionModelViewMatrix;
//uniform mat4 ModelMatrix; // Матрица модели объекта
void main()
{
vec4 worldPos = vec4(vPosition, 1.0);
vWorldPos = worldPos.xyz;
gl_Position = ProjectionModelViewMatrix * vec4(vPosition, 1.0);
texCoord = vTexCoord;
}

View File

@ -1,34 +0,0 @@
uniform sampler2D Texture;
varying vec2 texCoord;
varying vec3 vWorldPos;
uniform vec3 eyePos; // Позиция камеры
uniform vec3 targetPos; // Цель камеры
void main()
{
vec4 color;
vec3 dirToCamera = normalize(eyePos - targetPos);
vec3 dirToVertex = normalize(vWorldPos - targetPos);
float dotProduct = dot(dirToCamera, dirToVertex);
float distanceX = abs(vWorldPos.x);
float distanceZ = abs(vWorldPos.z);
//float distanceToCamera = length(vWorldPos - targetPos);
if ((distanceX > 380.0 || distanceZ > 380.0) && (dotProduct > 0.0) && vWorldPos.y > 10.0)
{
//color.rgba = vec4(1,0,0,1);
discard;
}
else
{
color.rgb = texture2D(Texture, texCoord).rgb;
color.a = 1.0;
}
gl_FragColor = color;
}

View File

@ -1,36 +0,0 @@
precision mediump float;
uniform sampler2D Texture;
varying vec2 texCoord;
varying vec3 vWorldPos;
uniform vec3 eyePos; // Позиция камеры
uniform vec3 targetPos; // Цель камеры
void main()
{
vec4 color;
vec3 dirToCamera = normalize(eyePos - targetPos);
vec3 dirToVertex = normalize(vWorldPos - targetPos);
float dotProduct = dot(dirToCamera, dirToVertex);
float distanceX = abs(vWorldPos.x);
float distanceZ = abs(vWorldPos.z);
//float distanceToCamera = length(vWorldPos - targetPos);
if ((distanceX > 380.0 || distanceZ > 380.0) && (dotProduct > 0.0) && vWorldPos.y > 10.0)
{
//color.rgba = vec4(1,0,0,1);
discard;
}
else
{
color.rgb = texture2D(Texture, texCoord).rgb;
color.a = 1.0;
}
gl_FragColor = color;
}

BIN
door.bmp

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.0 MiB

View File

@ -1,93 +0,0 @@
===Vertices: 8
Vertex 0: <Vector (-1.0000, -1.0000, -1.0000)>
Vertex 1: <Vector (-1.0000, -1.3082, 2.8700)>
Vertex 2: <Vector (-1.0000, 1.0000, -1.0000)>
Vertex 3: <Vector (-1.0000, 1.0000, 3.2248)>
Vertex 4: <Vector (-0.3594, -1.0000, -1.0000)>
Vertex 5: <Vector (-0.3594, -1.3082, 2.8700)>
Vertex 6: <Vector (-0.3594, 1.0000, -1.0000)>
Vertex 7: <Vector (-0.3594, 1.0000, 3.2248)>
===UV Coordinates:
Face count: 12
Face 0
UV Count: 3
UV <Vector (0.3708, 0.0570)>
UV <Vector (0.7416, 0.6787)>
UV <Vector (0.4203, 0.6787)>
Face 1
UV Count: 3
UV <Vector (0.7416, -0.0000)>
UV <Vector (0.8445, 0.6787)>
UV <Vector (0.7416, 0.6787)>
Face 2
UV Count: 3
UV <Vector (-0.0000, 0.6787)>
UV <Vector (0.3708, 0.0570)>
UV <Vector (0.3213, 0.6787)>
Face 3
UV Count: 3
UV <Vector (0.8445, -0.0000)>
UV <Vector (0.9474, 0.6237)>
UV <Vector (0.8445, 0.6237)>
Face 4
UV Count: 3
UV <Vector (0.0000, 1.0000)>
UV <Vector (0.1029, 0.6787)>
UV <Vector (0.1029, 1.0000)>
Face 5
UV Count: 3
UV <Vector (0.9474, 0.6237)>
UV <Vector (0.8445, 0.9988)>
UV <Vector (0.8445, 0.6237)>
Face 6
UV Count: 3
UV <Vector (0.3708, 0.0570)>
UV <Vector (0.7416, -0.0000)>
UV <Vector (0.7416, 0.6787)>
Face 7
UV Count: 3
UV <Vector (0.7416, -0.0000)>
UV <Vector (0.8445, -0.0000)>
UV <Vector (0.8445, 0.6787)>
Face 8
UV Count: 3
UV <Vector (-0.0000, 0.6787)>
UV <Vector (0.0000, 0.0000)>
UV <Vector (0.3708, 0.0570)>
Face 9
UV Count: 3
UV <Vector (0.8445, -0.0000)>
UV <Vector (0.9474, 0.0000)>
UV <Vector (0.9474, 0.6237)>
Face 10
UV Count: 3
UV <Vector (0.0000, 1.0000)>
UV <Vector (0.0000, 0.6787)>
UV <Vector (0.1029, 0.6787)>
Face 11
UV Count: 3
UV <Vector (0.9474, 0.6237)>
UV <Vector (0.9474, 0.9988)>
UV <Vector (0.8445, 0.9988)>
===Normals:
Vertex 0: Normal <Vector (-0.5816, -0.5519, -0.5976)>
Vertex 1: Normal <Vector (-0.5813, -0.6381, 0.5049)>
Vertex 2: Normal <Vector (-0.5773, 0.5774, -0.5774)>
Vertex 3: Normal <Vector (-0.5698, 0.5352, 0.6237)>
Vertex 4: Normal <Vector (0.5816, -0.5519, -0.5976)>
Vertex 5: Normal <Vector (0.5813, -0.6381, 0.5049)>
Vertex 6: Normal <Vector (0.5774, 0.5774, -0.5773)>
Vertex 7: Normal <Vector (0.5698, 0.5351, 0.6237)>
===Triangles: 12
Triangle: [1, 2, 0]
Triangle: [3, 6, 2]
Triangle: [6, 5, 4]
Triangle: [5, 0, 4]
Triangle: [6, 0, 2]
Triangle: [3, 5, 7]
Triangle: [1, 3, 2]
Triangle: [3, 7, 6]
Triangle: [6, 7, 5]
Triangle: [5, 1, 0]
Triangle: [6, 4, 0]
Triangle: [3, 1, 5]

Binary file not shown.

Before

Width:  |  Height:  |  Size: 768 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.0 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 768 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 512 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 MiB

File diff suppressed because it is too large Load Diff

View File

@ -1,93 +0,0 @@
===Vertices: 8
Vertex 0: <Vector (10.0851, 30.8909, 9.4815)>
Vertex 1: <Vector (10.0851, 30.8909, -9.4815)>
Vertex 2: <Vector (10.0851, -30.8909, 9.4815)>
Vertex 3: <Vector (10.0851, -30.8909, -9.4815)>
Vertex 4: <Vector (-10.0851, 30.8909, 9.4815)>
Vertex 5: <Vector (-10.0851, 30.8909, -9.4815)>
Vertex 6: <Vector (-10.0851, -30.8909, 9.4815)>
Vertex 7: <Vector (-10.0851, -30.8909, -9.4815)>
===UV Coordinates:
Face count: 12
Face 0
UV Count: 3
UV <Vector (0.0000, 0.7539)>
UV <Vector (0.2577, 0.0000)>
UV <Vector (0.2577, 0.7539)>
Face 1
UV Count: 3
UV <Vector (0.0000, 1.0000)>
UV <Vector (0.2423, 0.7539)>
UV <Vector (0.2423, 1.0000)>
Face 2
UV Count: 3
UV <Vector (0.5154, 0.7539)>
UV <Vector (0.7577, 0.0000)>
UV <Vector (0.7577, 0.7539)>
Face 3
UV Count: 3
UV <Vector (0.2577, 0.7539)>
UV <Vector (0.5154, 0.0000)>
UV <Vector (0.5154, 0.7539)>
Face 4
UV Count: 3
UV <Vector (0.7577, 0.7539)>
UV <Vector (1.0000, 0.0000)>
UV <Vector (1.0000, 0.7539)>
Face 5
UV Count: 3
UV <Vector (0.2423, 1.0000)>
UV <Vector (0.4846, 0.7539)>
UV <Vector (0.4846, 1.0000)>
Face 6
UV Count: 3
UV <Vector (0.0000, 0.7539)>
UV <Vector (0.0000, 0.0000)>
UV <Vector (0.2577, 0.0000)>
Face 7
UV Count: 3
UV <Vector (0.0000, 1.0000)>
UV <Vector (0.0000, 0.7539)>
UV <Vector (0.2423, 0.7539)>
Face 8
UV Count: 3
UV <Vector (0.5154, 0.7539)>
UV <Vector (0.5154, 0.0000)>
UV <Vector (0.7577, 0.0000)>
Face 9
UV Count: 3
UV <Vector (0.2577, 0.7539)>
UV <Vector (0.2577, 0.0000)>
UV <Vector (0.5154, 0.0000)>
Face 10
UV Count: 3
UV <Vector (0.7577, 0.7539)>
UV <Vector (0.7577, 0.0000)>
UV <Vector (1.0000, 0.0000)>
Face 11
UV Count: 3
UV <Vector (0.2423, 1.0000)>
UV <Vector (0.2423, 0.7539)>
UV <Vector (0.4846, 0.7539)>
===Normals:
Vertex 0: Normal <Vector (0.5774, 0.5774, 0.5774)>
Vertex 1: Normal <Vector (0.5774, 0.5774, -0.5774)>
Vertex 2: Normal <Vector (0.5774, -0.5774, 0.5774)>
Vertex 3: Normal <Vector (0.5774, -0.5774, -0.5774)>
Vertex 4: Normal <Vector (-0.5774, 0.5774, 0.5774)>
Vertex 5: Normal <Vector (-0.5774, 0.5774, -0.5774)>
Vertex 6: Normal <Vector (-0.5774, -0.5774, 0.5774)>
Vertex 7: Normal <Vector (-0.5774, -0.5774, -0.5774)>
===Triangles: 12
Triangle: [4, 2, 0]
Triangle: [2, 7, 3]
Triangle: [6, 5, 7]
Triangle: [1, 7, 5]
Triangle: [0, 3, 1]
Triangle: [4, 1, 5]
Triangle: [4, 6, 2]
Triangle: [2, 6, 7]
Triangle: [6, 4, 5]
Triangle: [1, 3, 7]
Triangle: [0, 2, 3]
Triangle: [4, 0, 1]

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

Binary file not shown.

View File

@ -1,261 +0,0 @@
===Vertices: 20
Vertex 0: <Vector (-1.0000, -1.0000, 1.0000)>
Vertex 1: <Vector (-1.0000, 1.0000, 1.0000)>
Vertex 2: <Vector (1.0000, -1.0000, 1.0000)>
Vertex 3: <Vector (1.0000, 1.0000, 1.0000)>
Vertex 4: <Vector (0.0000, 1.0000, -1.3168)>
Vertex 5: <Vector (0.0000, 1.0000, 3.2597)>
Vertex 6: <Vector (0.0000, -1.0000, -1.3168)>
Vertex 7: <Vector (0.0000, -1.0000, 3.2597)>
Vertex 8: <Vector (2.9516, -1.0000, 1.0000)>
Vertex 9: <Vector (2.9516, 1.0000, 1.0000)>
Vertex 10: <Vector (-3.0111, -1.0000, 1.0000)>
Vertex 11: <Vector (-3.0111, 1.0000, 1.0000)>
Vertex 12: <Vector (-1.6367, 1.0000, -0.3668)>
Vertex 13: <Vector (-1.6367, -1.0000, -0.3668)>
Vertex 14: <Vector (1.6107, -1.0000, -0.3742)>
Vertex 15: <Vector (1.6107, 1.0000, -0.3742)>
Vertex 16: <Vector (-1.6367, 1.0000, -3.1173)>
Vertex 17: <Vector (-1.6367, -1.0000, -3.1173)>
Vertex 18: <Vector (1.6107, -1.0000, -3.1246)>
Vertex 19: <Vector (1.6107, 1.0000, -3.1246)>
===UV Coordinates:
Face count: 36
Face 0
UV Count: 3
UV <Vector (0.6779, 0.5670)>
UV <Vector (0.8298, 0.5670)>
UV <Vector (0.6779, 0.7197)>
Face 1
UV Count: 3
UV <Vector (0.3743, 0.6470)>
UV <Vector (0.2225, 0.6470)>
UV <Vector (0.2225, 0.5670)>
Face 2
UV Count: 3
UV <Vector (0.5261, 0.5670)>
UV <Vector (0.5261, 0.7506)>
UV <Vector (0.3743, 0.5670)>
Face 3
UV Count: 3
UV <Vector (0.5261, 0.7506)>
UV <Vector (0.6779, 0.5670)>
UV <Vector (0.6779, 0.7506)>
Face 4
UV Count: 3
UV <Vector (0.6779, 0.8715)>
UV <Vector (0.8261, 0.7197)>
UV <Vector (0.8261, 0.8715)>
Face 5
UV Count: 3
UV <Vector (0.3418, 0.0686)>
UV <Vector (0.3595, 0.2554)>
UV <Vector (0.2155, 0.2073)>
Face 6
UV Count: 3
UV <Vector (0.0707, 0.5670)>
UV <Vector (0.2225, 0.5670)>
UV <Vector (0.0707, 0.6480)>
Face 7
UV Count: 3
UV <Vector (0.0707, 0.6480)>
UV <Vector (0.2225, 0.8523)>
UV <Vector (0.0707, 0.8523)>
Face 8
UV Count: 3
UV <Vector (0.3743, 0.6470)>
UV <Vector (0.3743, 0.8512)>
UV <Vector (0.2225, 0.8512)>
Face 9
UV Count: 3
UV <Vector (0.4833, 0.7506)>
UV <Vector (0.5913, 0.7506)>
UV <Vector (0.4833, 0.9024)>
Face 10
UV Count: 3
UV <Vector (0.3743, 0.9024)>
UV <Vector (0.3743, 0.7506)>
UV <Vector (0.4833, 0.9024)>
Face 11
UV Count: 3
UV <Vector (0.3704, 0.3690)>
UV <Vector (0.3595, 0.2554)>
UV <Vector (0.5000, 0.3023)>
Face 12
UV Count: 3
UV <Vector (0.3043, 0.5670)>
UV <Vector (0.2318, 0.3981)>
UV <Vector (0.3704, 0.3690)>
Face 13
UV Count: 3
UV <Vector (0.0707, 0.4884)>
UV <Vector (0.1368, 0.2904)>
UV <Vector (0.2318, 0.3981)>
Face 14
UV Count: 3
UV <Vector (0.0707, 0.1589)>
UV <Vector (0.2155, 0.2073)>
UV <Vector (0.1368, 0.2904)>
Face 15
UV Count: 3
UV <Vector (0.1368, 0.2904)>
UV <Vector (0.2155, 0.2073)>
UV <Vector (0.2318, 0.3981)>
Face 16
UV Count: 3
UV <Vector (0.2155, 0.2073)>
UV <Vector (0.3595, 0.2554)>
UV <Vector (0.2318, 0.3981)>
Face 17
UV Count: 3
UV <Vector (0.3595, 0.2554)>
UV <Vector (0.3704, 0.3690)>
UV <Vector (0.2318, 0.3981)>
Face 18
UV Count: 3
UV <Vector (0.9293, 0.1589)>
UV <Vector (0.8632, 0.2904)>
UV <Vector (0.7845, 0.2073)>
Face 19
UV Count: 3
UV <Vector (0.2225, 0.5670)>
UV <Vector (0.3743, 0.5670)>
UV <Vector (0.3743, 0.6470)>
Face 20
UV Count: 3
UV <Vector (0.0707, 0.6480)>
UV <Vector (0.2225, 0.5670)>
UV <Vector (0.2225, 0.6480)>
Face 21
UV Count: 3
UV <Vector (0.2225, 0.8523)>
UV <Vector (0.0707, 0.6480)>
UV <Vector (0.2225, 0.6480)>
Face 22
UV Count: 3
UV <Vector (0.2225, 0.8512)>
UV <Vector (0.2225, 0.6470)>
UV <Vector (0.3743, 0.6470)>
Face 23
UV Count: 3
UV <Vector (0.5913, 0.7506)>
UV <Vector (0.5913, 0.9024)>
UV <Vector (0.4833, 0.9024)>
Face 24
UV Count: 3
UV <Vector (0.6779, 0.7197)>
UV <Vector (0.8298, 0.5670)>
UV <Vector (0.8298, 0.7197)>
Face 25
UV Count: 3
UV <Vector (0.4833, 0.9024)>
UV <Vector (0.3743, 0.7506)>
UV <Vector (0.4833, 0.7506)>
Face 26
UV Count: 3
UV <Vector (0.3743, 0.5670)>
UV <Vector (0.5261, 0.7506)>
UV <Vector (0.3743, 0.7506)>
Face 27
UV Count: 3
UV <Vector (0.6779, 0.5670)>
UV <Vector (0.5261, 0.7506)>
UV <Vector (0.5261, 0.5670)>
Face 28
UV Count: 3
UV <Vector (0.8261, 0.7197)>
UV <Vector (0.6779, 0.8715)>
UV <Vector (0.6779, 0.7197)>
Face 29
UV Count: 3
UV <Vector (0.6582, 0.0686)>
UV <Vector (0.7845, 0.2073)>
UV <Vector (0.6405, 0.2554)>
Face 30
UV Count: 3
UV <Vector (0.5000, 0.3023)>
UV <Vector (0.6405, 0.2554)>
UV <Vector (0.6296, 0.3690)>
Face 31
UV Count: 3
UV <Vector (0.6957, 0.5670)>
UV <Vector (0.6296, 0.3690)>
UV <Vector (0.7682, 0.3981)>
Face 32
UV Count: 3
UV <Vector (0.9293, 0.4884)>
UV <Vector (0.7682, 0.3981)>
UV <Vector (0.8632, 0.2904)>
Face 33
UV Count: 3
UV <Vector (0.8632, 0.2904)>
UV <Vector (0.7682, 0.3981)>
UV <Vector (0.7845, 0.2073)>
Face 34
UV Count: 3
UV <Vector (0.6296, 0.3690)>
UV <Vector (0.6405, 0.2554)>
UV <Vector (0.7682, 0.3981)>
Face 35
UV Count: 3
UV <Vector (0.6405, 0.2554)>
UV <Vector (0.7845, 0.2073)>
UV <Vector (0.7682, 0.3981)>
===Normals:
Vertex 0: Normal <Vector (-0.2851, -0.8526, 0.4379)>
Vertex 1: Normal <Vector (-0.2851, 0.8526, 0.4380)>
Vertex 2: Normal <Vector (0.2851, -0.8526, 0.4379)>
Vertex 3: Normal <Vector (0.2851, 0.8526, 0.4380)>
Vertex 4: Normal <Vector (-0.0020, 0.9166, -0.3998)>
Vertex 5: Normal <Vector (0.0000, 0.5482, 0.8364)>
Vertex 6: Normal <Vector (-0.0020, -0.9166, -0.3998)>
Vertex 7: Normal <Vector (0.0000, -0.5482, 0.8364)>
Vertex 8: Normal <Vector (0.7713, -0.5472, 0.3250)>
Vertex 9: Normal <Vector (0.7713, 0.5473, 0.3250)>
Vertex 10: Normal <Vector (-0.7739, -0.5468, 0.3193)>
Vertex 11: Normal <Vector (-0.7739, 0.5469, 0.3193)>
Vertex 12: Normal <Vector (-0.5484, 0.8045, -0.2280)>
Vertex 13: Normal <Vector (-0.5484, -0.8045, -0.2280)>
Vertex 14: Normal <Vector (0.5525, -0.8026, -0.2249)>
Vertex 15: Normal <Vector (0.5525, 0.8026, -0.2249)>
Vertex 16: Normal <Vector (-0.3021, 0.5458, -0.7816)>
Vertex 17: Normal <Vector (-0.3021, -0.5458, -0.7816)>
Vertex 18: Normal <Vector (0.2983, -0.5455, -0.7832)>
Vertex 19: Normal <Vector (0.2983, 0.5455, -0.7832)>
===Triangles: 36
Triangle: [0, 1, 10]
Triangle: [12, 13, 10]
Triangle: [5, 1, 7]
Triangle: [3, 7, 2]
Triangle: [3, 8, 9]
Triangle: [5, 3, 1]
Triangle: [9, 8, 15]
Triangle: [15, 18, 19]
Triangle: [12, 16, 17]
Triangle: [6, 17, 4]
Triangle: [6, 4, 18]
Triangle: [15, 3, 9]
Triangle: [19, 4, 15]
Triangle: [16, 12, 4]
Triangle: [11, 1, 12]
Triangle: [12, 1, 4]
Triangle: [1, 3, 4]
Triangle: [3, 15, 4]
Triangle: [10, 13, 0]
Triangle: [10, 11, 12]
Triangle: [15, 8, 14]
Triangle: [18, 15, 14]
Triangle: [17, 13, 12]
Triangle: [17, 16, 4]
Triangle: [10, 1, 11]
Triangle: [18, 4, 19]
Triangle: [7, 1, 0]
Triangle: [7, 3, 5]
Triangle: [8, 3, 2]
Triangle: [7, 0, 2]
Triangle: [8, 2, 14]
Triangle: [18, 14, 6]
Triangle: [17, 6, 13]
Triangle: [13, 6, 0]
Triangle: [14, 2, 6]
Triangle: [2, 0, 6]

Binary file not shown.

Before

Width:  |  Height:  |  Size: 768 KiB

559
lock.txt
View File

@ -1,559 +0,0 @@
===Vertices: 43
Vertex 0: <Vector (-0.0002, 4.1693, -1.1602)>
Vertex 1: <Vector (-0.0002, 4.1693, 0.8398)>
Vertex 2: <Vector (0.9508, 3.4783, -1.1602)>
Vertex 3: <Vector (0.9508, 3.4783, 0.8398)>
Vertex 4: <Vector (0.5875, 2.3603, -1.1602)>
Vertex 5: <Vector (0.5875, 2.3603, 0.8398)>
Vertex 6: <Vector (-0.5880, 2.3603, -1.1602)>
Vertex 7: <Vector (-0.5880, 2.3603, 0.8398)>
Vertex 8: <Vector (-0.9513, 3.4783, -1.1602)>
Vertex 9: <Vector (-0.9513, 3.4783, 0.8398)>
Vertex 10: <Vector (0.5871, -2.3745, -1.1602)>
Vertex 11: <Vector (0.5871, -2.3745, 0.8398)>
Vertex 12: <Vector (0.9510, -3.4923, -1.1602)>
Vertex 13: <Vector (0.9510, -3.4923, 0.8398)>
Vertex 14: <Vector (0.0003, -4.1838, -1.1602)>
Vertex 15: <Vector (0.0003, -4.1838, 0.8398)>
Vertex 16: <Vector (-0.9511, -3.4933, -1.1602)>
Vertex 17: <Vector (-0.9511, -3.4933, 0.8398)>
Vertex 18: <Vector (-0.5884, -2.3751, -1.1602)>
Vertex 19: <Vector (-0.5884, -2.3751, 0.8398)>
Vertex 20: <Vector (-0.5881, 1.3244, 2.2781)>
Vertex 21: <Vector (-0.5882, -0.0074, 2.7576)>
Vertex 22: <Vector (-0.5884, -1.3392, 2.2781)>
Vertex 23: <Vector (0.5875, 1.3246, 2.2779)>
Vertex 24: <Vector (0.5873, -0.0071, 2.7573)>
Vertex 25: <Vector (0.5872, -1.3387, 2.2779)>
Vertex 26: <Vector (-0.9513, 1.9533, 2.9574)>
Vertex 27: <Vector (-0.9512, -0.0075, 3.6633)>
Vertex 28: <Vector (-0.9512, -1.9682, 2.9574)>
Vertex 29: <Vector (-0.0001, 2.3421, 3.3770)>
Vertex 30: <Vector (0.0000, -0.0072, 4.2228)>
Vertex 31: <Vector (0.0002, -2.3565, 3.3770)>
Vertex 32: <Vector (0.9509, 1.9535, 2.9571)>
Vertex 33: <Vector (0.9509, -0.0070, 3.6629)>
Vertex 34: <Vector (0.9509, -1.9675, 2.9571)>
Vertex 35: <Vector (-1.4333, -3.8304, -9.3966)>
Vertex 36: <Vector (-1.4333, -4.5015, -0.9919)>
Vertex 37: <Vector (-1.4333, 3.8841, -9.3966)>
Vertex 38: <Vector (-1.4333, 4.5742, -0.9919)>
Vertex 39: <Vector (1.4353, -3.8304, -9.3966)>
Vertex 40: <Vector (1.4353, -4.5015, -0.9919)>
Vertex 41: <Vector (1.4353, 3.8841, -9.3966)>
Vertex 42: <Vector (1.4353, 4.5742, -0.9919)>
===UV Coordinates:
Face count: 78
Face 0
UV Count: 3
UV <Vector (0.8193, 0.8359)>
UV <Vector (0.8638, 0.9308)>
UV <Vector (0.8193, 0.9294)>
Face 1
UV Count: 3
UV <Vector (0.8699, 0.0000)>
UV <Vector (0.7747, 0.0523)>
UV <Vector (0.7777, 0.0000)>
Face 2
UV Count: 3
UV <Vector (0.3621, 0.6569)>
UV <Vector (0.4171, 0.7504)>
UV <Vector (0.3621, 0.7504)>
Face 3
UV Count: 3
UV <Vector (0.0922, 0.6989)>
UV <Vector (0.0030, 0.7512)>
UV <Vector (0.0000, 0.6989)>
Face 4
UV Count: 3
UV <Vector (0.7747, 0.8372)>
UV <Vector (0.8193, 0.9294)>
UV <Vector (0.7747, 0.9308)>
Face 5
UV Count: 3
UV <Vector (0.0847, 0.7682)>
UV <Vector (0.1370, 0.7512)>
UV <Vector (0.1694, 0.7957)>
Face 6
UV Count: 3
UV <Vector (0.8669, 0.2740)>
UV <Vector (0.7777, 0.3263)>
UV <Vector (0.7747, 0.2740)>
Face 7
UV Count: 3
UV <Vector (0.4171, 0.7614)>
UV <Vector (0.4616, 0.8536)>
UV <Vector (0.4171, 0.8549)>
Face 8
UV Count: 3
UV <Vector (0.4616, 0.7601)>
UV <Vector (0.5062, 0.8549)>
UV <Vector (0.4616, 0.8536)>
Face 9
UV Count: 3
UV <Vector (0.0951, 0.4248)>
UV <Vector (0.0000, 0.4772)>
UV <Vector (0.0030, 0.4248)>
Face 10
UV Count: 3
UV <Vector (0.3621, 0.4941)>
UV <Vector (0.4171, 0.5876)>
UV <Vector (0.3621, 0.5877)>
Face 11
UV Count: 3
UV <Vector (0.0323, 0.7512)>
UV <Vector (0.0847, 0.8232)>
UV <Vector (0.0323, 0.8402)>
Face 12
UV Count: 3
UV <Vector (0.4171, 0.6569)>
UV <Vector (0.3621, 0.5877)>
UV <Vector (0.4171, 0.5877)>
Face 13
UV Count: 3
UV <Vector (0.4171, 0.8751)>
UV <Vector (0.3621, 0.8128)>
UV <Vector (0.4171, 0.8128)>
Face 14
UV Count: 3
UV <Vector (0.4171, 0.8128)>
UV <Vector (0.3621, 0.7504)>
UV <Vector (0.4171, 0.7504)>
Face 15
UV Count: 3
UV <Vector (0.3621, 0.4248)>
UV <Vector (0.4171, 0.4941)>
UV <Vector (0.3621, 0.4941)>
Face 16
UV Count: 3
UV <Vector (0.7747, 0.8372)>
UV <Vector (0.8193, 0.7207)>
UV <Vector (0.8193, 0.8359)>
Face 17
UV Count: 3
UV <Vector (0.4171, 0.6266)>
UV <Vector (0.4617, 0.5348)>
UV <Vector (0.4617, 0.6448)>
Face 18
UV Count: 3
UV <Vector (0.4171, 0.4430)>
UV <Vector (0.4617, 0.5348)>
UV <Vector (0.4171, 0.5348)>
Face 19
UV Count: 3
UV <Vector (0.5062, 0.7614)>
UV <Vector (0.4616, 0.6448)>
UV <Vector (0.5062, 0.6651)>
Face 20
UV Count: 3
UV <Vector (0.8193, 0.7207)>
UV <Vector (0.8638, 0.8372)>
UV <Vector (0.8193, 0.8359)>
Face 21
UV Count: 3
UV <Vector (0.4617, 0.5348)>
UV <Vector (0.5062, 0.6266)>
UV <Vector (0.4617, 0.6448)>
Face 22
UV Count: 3
UV <Vector (0.4617, 0.5348)>
UV <Vector (0.5062, 0.4431)>
UV <Vector (0.5062, 0.5348)>
Face 23
UV Count: 3
UV <Vector (0.4616, 0.6448)>
UV <Vector (0.4171, 0.7614)>
UV <Vector (0.4171, 0.6652)>
Face 24
UV Count: 3
UV <Vector (0.1928, 0.6798)>
UV <Vector (0.0922, 0.6989)>
UV <Vector (0.1585, 0.6504)>
Face 25
UV Count: 3
UV <Vector (0.2253, 0.5880)>
UV <Vector (0.1585, 0.6504)>
UV <Vector (0.1806, 0.5880)>
Face 26
UV Count: 3
UV <Vector (0.2253, 0.5880)>
UV <Vector (0.1585, 0.5257)>
UV <Vector (0.1928, 0.4962)>
Face 27
UV Count: 3
UV <Vector (0.1928, 0.4962)>
UV <Vector (0.0922, 0.4772)>
UV <Vector (0.0951, 0.4248)>
Face 28
UV Count: 3
UV <Vector (0.8669, 0.0523)>
UV <Vector (0.9675, 0.0714)>
UV <Vector (0.9332, 0.1008)>
Face 29
UV Count: 3
UV <Vector (0.9332, 0.1008)>
UV <Vector (1.0000, 0.1631)>
UV <Vector (0.9553, 0.1632)>
Face 30
UV Count: 3
UV <Vector (0.9332, 0.2255)>
UV <Vector (1.0000, 0.1631)>
UV <Vector (0.9675, 0.2549)>
Face 31
UV Count: 3
UV <Vector (0.8669, 0.2740)>
UV <Vector (0.9675, 0.2549)>
UV <Vector (0.8699, 0.3263)>
Face 32
UV Count: 3
UV <Vector (0.3874, -0.0000)>
UV <Vector (0.0000, 0.3925)>
UV <Vector (0.0000, 0.0314)>
Face 33
UV Count: 3
UV <Vector (0.7747, 0.3263)>
UV <Vector (0.9090, 0.7207)>
UV <Vector (0.7747, 0.7207)>
Face 34
UV Count: 3
UV <Vector (0.3874, 0.0323)>
UV <Vector (0.7747, 0.4248)>
UV <Vector (0.3874, 0.3934)>
Face 35
UV Count: 3
UV <Vector (0.6404, 0.4248)>
UV <Vector (0.7747, 0.8192)>
UV <Vector (0.6404, 0.8192)>
Face 36
UV Count: 3
UV <Vector (0.5062, 0.7860)>
UV <Vector (0.6404, 0.4248)>
UV <Vector (0.6404, 0.7860)>
Face 37
UV Count: 3
UV <Vector (0.2253, 0.8497)>
UV <Vector (0.3596, 0.4248)>
UV <Vector (0.3596, 0.8497)>
Face 38
UV Count: 3
UV <Vector (0.8193, 0.8359)>
UV <Vector (0.8638, 0.8372)>
UV <Vector (0.8638, 0.9308)>
Face 39
UV Count: 3
UV <Vector (0.8699, 0.0000)>
UV <Vector (0.8669, 0.0523)>
UV <Vector (0.7747, 0.0523)>
Face 40
UV Count: 3
UV <Vector (0.3621, 0.6569)>
UV <Vector (0.4171, 0.6569)>
UV <Vector (0.4171, 0.7504)>
Face 41
UV Count: 3
UV <Vector (0.0922, 0.6989)>
UV <Vector (0.0952, 0.7512)>
UV <Vector (0.0030, 0.7512)>
Face 42
UV Count: 3
UV <Vector (0.7747, 0.8372)>
UV <Vector (0.8193, 0.8359)>
UV <Vector (0.8193, 0.9294)>
Face 43
UV Count: 3
UV <Vector (0.1370, 0.8402)>
UV <Vector (0.0847, 0.8232)>
UV <Vector (0.1694, 0.7957)>
Face 44
UV Count: 3
UV <Vector (0.0847, 0.8232)>
UV <Vector (0.0847, 0.7682)>
UV <Vector (0.1694, 0.7957)>
Face 45
UV Count: 3
UV <Vector (0.8669, 0.2740)>
UV <Vector (0.8699, 0.3263)>
UV <Vector (0.7777, 0.3263)>
Face 46
UV Count: 3
UV <Vector (0.4171, 0.7614)>
UV <Vector (0.4616, 0.7601)>
UV <Vector (0.4616, 0.8536)>
Face 47
UV Count: 3
UV <Vector (0.4616, 0.7601)>
UV <Vector (0.5062, 0.7614)>
UV <Vector (0.5062, 0.8549)>
Face 48
UV Count: 3
UV <Vector (0.0951, 0.4248)>
UV <Vector (0.0922, 0.4772)>
UV <Vector (0.0000, 0.4772)>
Face 49
UV Count: 3
UV <Vector (0.3621, 0.4941)>
UV <Vector (0.4171, 0.4941)>
UV <Vector (0.4171, 0.5876)>
Face 50
UV Count: 3
UV <Vector (0.0323, 0.8402)>
UV <Vector (-0.0000, 0.7957)>
UV <Vector (0.0323, 0.7512)>
Face 51
UV Count: 3
UV <Vector (0.0323, 0.7512)>
UV <Vector (0.0847, 0.7682)>
UV <Vector (0.0847, 0.8232)>
Face 52
UV Count: 3
UV <Vector (0.4171, 0.6569)>
UV <Vector (0.3621, 0.6569)>
UV <Vector (0.3621, 0.5877)>
Face 53
UV Count: 3
UV <Vector (0.4171, 0.8751)>
UV <Vector (0.3621, 0.8751)>
UV <Vector (0.3621, 0.8128)>
Face 54
UV Count: 3
UV <Vector (0.4171, 0.8128)>
UV <Vector (0.3621, 0.8128)>
UV <Vector (0.3621, 0.7504)>
Face 55
UV Count: 3
UV <Vector (0.3621, 0.4248)>
UV <Vector (0.4171, 0.4248)>
UV <Vector (0.4171, 0.4941)>
Face 56
UV Count: 3
UV <Vector (0.7747, 0.8372)>
UV <Vector (0.7747, 0.7411)>
UV <Vector (0.8193, 0.7207)>
Face 57
UV Count: 3
UV <Vector (0.4171, 0.6266)>
UV <Vector (0.4171, 0.5348)>
UV <Vector (0.4617, 0.5348)>
Face 58
UV Count: 3
UV <Vector (0.4171, 0.4430)>
UV <Vector (0.4617, 0.4248)>
UV <Vector (0.4617, 0.5348)>
Face 59
UV Count: 3
UV <Vector (0.5062, 0.7614)>
UV <Vector (0.4616, 0.7601)>
UV <Vector (0.4616, 0.6448)>
Face 60
UV Count: 3
UV <Vector (0.8193, 0.7207)>
UV <Vector (0.8638, 0.7411)>
UV <Vector (0.8638, 0.8372)>
Face 61
UV Count: 3
UV <Vector (0.4617, 0.5348)>
UV <Vector (0.5062, 0.5348)>
UV <Vector (0.5062, 0.6266)>
Face 62
UV Count: 3
UV <Vector (0.4617, 0.5348)>
UV <Vector (0.4617, 0.4248)>
UV <Vector (0.5062, 0.4431)>
Face 63
UV Count: 3
UV <Vector (0.4616, 0.6448)>
UV <Vector (0.4616, 0.7601)>
UV <Vector (0.4171, 0.7614)>
Face 64
UV Count: 3
UV <Vector (0.1928, 0.6798)>
UV <Vector (0.0952, 0.7512)>
UV <Vector (0.0922, 0.6989)>
Face 65
UV Count: 3
UV <Vector (0.2253, 0.5880)>
UV <Vector (0.1928, 0.6798)>
UV <Vector (0.1585, 0.6504)>
Face 66
UV Count: 3
UV <Vector (0.2253, 0.5880)>
UV <Vector (0.1806, 0.5880)>
UV <Vector (0.1585, 0.5257)>
Face 67
UV Count: 3
UV <Vector (0.1928, 0.4962)>
UV <Vector (0.1585, 0.5257)>
UV <Vector (0.0922, 0.4772)>
Face 68
UV Count: 3
UV <Vector (0.8669, 0.0523)>
UV <Vector (0.8699, 0.0000)>
UV <Vector (0.9675, 0.0714)>
Face 69
UV Count: 3
UV <Vector (0.9332, 0.1008)>
UV <Vector (0.9675, 0.0714)>
UV <Vector (1.0000, 0.1631)>
Face 70
UV Count: 3
UV <Vector (0.9332, 0.2255)>
UV <Vector (0.9553, 0.1632)>
UV <Vector (1.0000, 0.1631)>
Face 71
UV Count: 3
UV <Vector (0.8669, 0.2740)>
UV <Vector (0.9332, 0.2255)>
UV <Vector (0.9675, 0.2549)>
Face 72
UV Count: 3
UV <Vector (0.3874, -0.0000)>
UV <Vector (0.3874, 0.4248)>
UV <Vector (0.0000, 0.3925)>
Face 73
UV Count: 3
UV <Vector (0.7747, 0.3263)>
UV <Vector (0.9090, 0.3263)>
UV <Vector (0.9090, 0.7207)>
Face 74
UV Count: 3
UV <Vector (0.3874, 0.0323)>
UV <Vector (0.7747, 0.0000)>
UV <Vector (0.7747, 0.4248)>
Face 75
UV Count: 3
UV <Vector (0.6404, 0.4248)>
UV <Vector (0.7747, 0.4248)>
UV <Vector (0.7747, 0.8192)>
Face 76
UV Count: 3
UV <Vector (0.5062, 0.7860)>
UV <Vector (0.5062, 0.4248)>
UV <Vector (0.6404, 0.4248)>
Face 77
UV Count: 3
UV <Vector (0.2253, 0.8497)>
UV <Vector (0.2253, 0.4248)>
UV <Vector (0.3596, 0.4248)>
===Normals:
Vertex 0: Normal <Vector (0.0000, 0.8032, -0.5957)>
Vertex 1: Normal <Vector (-0.0000, 0.9606, 0.2778)>
Vertex 2: Normal <Vector (0.7639, 0.2482, -0.5957)>
Vertex 3: Normal <Vector (0.9084, 0.3867, 0.1591)>
Vertex 4: Normal <Vector (0.4721, -0.6498, -0.5957)>
Vertex 5: Normal <Vector (0.6386, -0.7267, -0.2531)>
Vertex 6: Normal <Vector (-0.4721, -0.6498, -0.5957)>
Vertex 7: Normal <Vector (-0.6386, -0.7267, -0.2531)>
Vertex 8: Normal <Vector (-0.7639, 0.2482, -0.5957)>
Vertex 9: Normal <Vector (-0.9084, 0.3867, 0.1591)>
Vertex 10: Normal <Vector (0.4718, 0.6501, -0.5957)>
Vertex 11: Normal <Vector (0.6381, 0.7271, -0.2533)>
Vertex 12: Normal <Vector (0.7640, -0.2478, -0.5957)>
Vertex 13: Normal <Vector (0.9086, -0.3863, 0.1590)>
Vertex 14: Normal <Vector (0.0004, -0.8032, -0.5957)>
Vertex 15: Normal <Vector (0.0005, -0.9606, 0.2778)>
Vertex 16: Normal <Vector (-0.7638, -0.2486, -0.5957)>
Vertex 17: Normal <Vector (-0.9082, -0.3872, 0.1592)>
Vertex 18: Normal <Vector (-0.4725, 0.6496, -0.5957)>
Vertex 19: Normal <Vector (-0.6390, 0.7264, -0.2530)>
Vertex 20: Normal <Vector (-0.6177, -0.4688, -0.6314)>
Vertex 21: Normal <Vector (-0.6246, 0.0001, -0.7809)>
Vertex 22: Normal <Vector (-0.6180, 0.4687, -0.6312)>
Vertex 23: Normal <Vector (0.6175, -0.4689, -0.6315)>
Vertex 24: Normal <Vector (0.6242, -0.0001, -0.7813)>
Vertex 25: Normal <Vector (0.6173, 0.4690, -0.6317)>
Vertex 26: Normal <Vector (-0.9056, 0.2472, 0.3447)>
Vertex 27: Normal <Vector (-0.8986, -0.0000, 0.4387)>
Vertex 28: Normal <Vector (-0.9055, -0.2474, 0.3449)>
Vertex 29: Normal <Vector (0.0001, 0.6089, 0.7932)>
Vertex 30: Normal <Vector (0.0002, -0.0000, 1.0000)>
Vertex 31: Normal <Vector (0.0004, -0.6089, 0.7932)>
Vertex 32: Normal <Vector (0.9057, 0.2471, 0.3445)>
Vertex 33: Normal <Vector (0.8989, 0.0000, 0.4382)>
Vertex 34: Normal <Vector (0.9058, -0.2469, 0.3443)>
Vertex 35: Normal <Vector (-0.5817, -0.5518, -0.5976)>
Vertex 36: Normal <Vector (-0.5733, -0.6020, 0.5558)>
Vertex 37: Normal <Vector (-0.5818, 0.5511, -0.5982)>
Vertex 38: Normal <Vector (-0.5732, 0.6027, 0.5552)>
Vertex 39: Normal <Vector (0.5816, -0.5518, -0.5976)>
Vertex 40: Normal <Vector (0.5733, -0.6020, 0.5558)>
Vertex 41: Normal <Vector (0.5818, 0.5511, -0.5982)>
Vertex 42: Normal <Vector (0.5732, 0.6027, 0.5552)>
===Triangles: 78
Triangle: [1, 2, 0]
Triangle: [3, 4, 2]
Triangle: [5, 6, 4]
Triangle: [7, 8, 6]
Triangle: [9, 0, 8]
Triangle: [2, 4, 6]
Triangle: [11, 12, 10]
Triangle: [13, 14, 12]
Triangle: [15, 16, 14]
Triangle: [17, 18, 16]
Triangle: [19, 10, 18]
Triangle: [12, 16, 18]
Triangle: [7, 23, 20]
Triangle: [20, 24, 21]
Triangle: [21, 25, 22]
Triangle: [22, 11, 19]
Triangle: [9, 29, 1]
Triangle: [26, 30, 29]
Triangle: [28, 30, 27]
Triangle: [17, 31, 28]
Triangle: [29, 3, 1]
Triangle: [30, 32, 29]
Triangle: [30, 34, 33]
Triangle: [31, 13, 34]
Triangle: [26, 7, 20]
Triangle: [27, 20, 21]
Triangle: [27, 22, 28]
Triangle: [28, 19, 17]
Triangle: [5, 32, 23]
Triangle: [23, 33, 24]
Triangle: [25, 33, 34]
Triangle: [11, 34, 13]
Triangle: [36, 37, 35]
Triangle: [38, 41, 37]
Triangle: [41, 40, 39]
Triangle: [40, 35, 39]
Triangle: [41, 35, 37]
Triangle: [38, 40, 42]
Triangle: [1, 3, 2]
Triangle: [3, 5, 4]
Triangle: [5, 7, 6]
Triangle: [7, 9, 8]
Triangle: [9, 1, 0]
Triangle: [8, 0, 6]
Triangle: [0, 2, 6]
Triangle: [11, 13, 12]
Triangle: [13, 15, 14]
Triangle: [15, 17, 16]
Triangle: [17, 19, 18]
Triangle: [19, 11, 10]
Triangle: [18, 10, 12]
Triangle: [12, 14, 16]
Triangle: [7, 5, 23]
Triangle: [20, 23, 24]
Triangle: [21, 24, 25]
Triangle: [22, 25, 11]
Triangle: [9, 26, 29]
Triangle: [26, 27, 30]
Triangle: [28, 31, 30]
Triangle: [17, 15, 31]
Triangle: [29, 32, 3]
Triangle: [30, 33, 32]
Triangle: [30, 31, 34]
Triangle: [31, 15, 13]
Triangle: [26, 9, 7]
Triangle: [27, 26, 20]
Triangle: [27, 21, 22]
Triangle: [28, 22, 19]
Triangle: [5, 3, 32]
Triangle: [23, 32, 33]
Triangle: [25, 24, 33]
Triangle: [11, 25, 34]
Triangle: [36, 38, 37]
Triangle: [38, 42, 41]
Triangle: [41, 42, 40]
Triangle: [40, 36, 35]
Triangle: [41, 39, 35]
Triangle: [38, 36, 40]

View File

@ -22,7 +22,7 @@ int main(int argc, char* argv[]) {
SDL_GL_SetAttribute(SDL_GL_CONTEXT_MINOR_VERSION, 0);
SDL_GL_SetAttribute(SDL_GL_CONTEXT_PROFILE_MASK, SDL_GL_CONTEXT_PROFILE_ES);
SDL_Window* win = SDL_CreateWindow("Jumping Bird",
SDL_Window* win = SDL_CreateWindow("Space Ship Game",
SDL_WINDOWPOS_CENTERED, SDL_WINDOWPOS_CENTERED,
CONST_WIDTH, CONST_HEIGHT,
SDL_WINDOW_OPENGL);
@ -53,7 +53,7 @@ int main(int argc, char* argv[]) {
SDL_GL_SetAttribute(SDL_GL_CONTEXT_PROFILE_MASK, SDL_GL_CONTEXT_PROFILE_CORE);
ZL::Environment::window = SDL_CreateWindow(
"INAI game",
"Space Ship Game",
SDL_WINDOWPOS_CENTERED, SDL_WINDOWPOS_CENTERED,
CONST_WIDTH, CONST_HEIGHT,
SDL_WINDOW_OPENGL | SDL_WINDOW_SHOWN

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.6 KiB

Binary file not shown.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 21 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 948 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.0 KiB

Binary file not shown.

Binary file not shown.

View File

@ -1,40 +0,0 @@
// animation config file
sex m
// first frame, num frames, looping frames, frames per second
0 30 0 20 // BOTH_DEATH1
29 1 0 20 // BOTH_DEAD1
30 30 0 20 // BOTH_DEATH2
59 1 0 20 // BOTH_DEAD2
60 30 0 20 // BOTH_DEATH3
89 1 0 20 // BOTH_DEAD3
90 40 0 18 // TORSO_GESTURE
130 6 0 15 // TORSO_ATTACK (MUST NOT CHANGE -- hand animation is synced to this)
136 6 0 15 // TORSO_ATTACK2 (MUST NOT CHANGE -- hand animation is synced to this)
142 5 0 20 // TORSO_DROP (MUST NOT CHANGE -- hand animation is synced to this)
147 4 0 20 // TORSO_RAISE (MUST NOT CHANGE -- hand animation is synced to this)
151 1 0 15 // TORSO_STAND
152 1 0 15 // TORSO_STAND2
153 8 8 20 // LEGS_WALKCR
161 12 12 20 // LEGS_WALK
173 11 11 21 // LEGS_RUN
184 10 10 20 // LEGS_BACK
194 10 10 15 // LEGS_SWIM
204 10 0 18 // LEGS_JUMP
214 6 0 20 // LEGS_LAND
220 8 0 15 // LEGS_JUMPB
228 1 0 15 // LEGS_LANDB
229 10 10 15 // LEGS_IDLE
239 8 8 15 // LEGS_IDLECR
247 7 7 15 // LEGS_TURN

Binary file not shown.

Before

Width:  |  Height:  |  Size: 134 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 192 KiB

Some files were not shown because too many files have changed in this diff Show More