New version
2
.gitignore
vendored
@ -399,4 +399,4 @@ script.py
|
|||||||
jumpingbird.*
|
jumpingbird.*
|
||||||
jumpingbird.data
|
jumpingbird.data
|
||||||
build
|
build
|
||||||
build-emcmake
|
build-emcmake
|
||||||
|
|||||||
83
.vscode/settings.json
vendored
@ -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"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@ -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;
|
|
||||||
};
|
|
||||||
}
|
|
||||||
110
BoundaryBox.h
@ -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
|
|
||||||
@ -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()
|
|
||||||
|
Before Width: | Height: | Size: 48 MiB |
@ -1,8 +1,6 @@
|
|||||||
#include "Environment.h"
|
#include "Environment.h"
|
||||||
|
|
||||||
#include "RenderSystem.h"
|
|
||||||
#include "Utils.h"
|
#include "Utils.h"
|
||||||
#include "Inventory.h"
|
|
||||||
#include <GL/gl.h>
|
#include <GL/gl.h>
|
||||||
|
|
||||||
namespace ZL {
|
namespace ZL {
|
||||||
@ -10,7 +8,7 @@ namespace ZL {
|
|||||||
int Environment::windowHeaderHeight = 0;
|
int Environment::windowHeaderHeight = 0;
|
||||||
int Environment::width = 0;
|
int Environment::width = 0;
|
||||||
int Environment::height = 0;
|
int Environment::height = 0;
|
||||||
float Environment::zoom = 3.f;
|
float Environment::zoom = 20.f;
|
||||||
|
|
||||||
bool Environment::leftPressed = false;
|
bool Environment::leftPressed = false;
|
||||||
bool Environment::rightPressed = false;
|
bool Environment::rightPressed = false;
|
||||||
@ -23,34 +21,14 @@ Vector3f Environment::characterPos = {0, 0, 0};
|
|||||||
float Environment::cameraPhi = 0.f;
|
float Environment::cameraPhi = 0.f;
|
||||||
float Environment::cameraAlpha = 0.3*M_PI / 2.0;
|
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;
|
bool Environment::settings_inverseVertical = false;
|
||||||
|
|
||||||
SDL_Window* Environment::window = nullptr;
|
SDL_Window* Environment::window = nullptr;
|
||||||
|
|
||||||
float Environment::cameraDefaultVerticalShift = -150.f;
|
|
||||||
float Environment::itemDefaultVerticalShift = -80.f;
|
|
||||||
bool Environment::showMouse = false;
|
bool Environment::showMouse = false;
|
||||||
|
|
||||||
bool Environment::exitGameLoop = 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
|
} // namespace ZL
|
||||||
|
|||||||
@ -24,38 +24,15 @@ public:
|
|||||||
static float cameraPhi;
|
static float cameraPhi;
|
||||||
static float cameraAlpha;
|
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 bool settings_inverseVertical;
|
||||||
|
|
||||||
static SDL_Window* window;
|
static SDL_Window* window;
|
||||||
|
|
||||||
static float cameraDefaultVerticalShift;
|
|
||||||
static float itemDefaultVerticalShift;
|
|
||||||
|
|
||||||
static bool showMouse;
|
static bool showMouse;
|
||||||
static bool exitGameLoop;
|
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
@ -2,20 +2,20 @@
|
|||||||
#include "AnimatedModel.h"
|
#include "AnimatedModel.h"
|
||||||
#include "BoneAnimatedModel.h"
|
#include "BoneAnimatedModel.h"
|
||||||
#include "Utils.h"
|
#include "Utils.h"
|
||||||
#include "Inventory.h" // Add this include
|
|
||||||
#include "OpenGlExtensions.h"
|
#include "OpenGlExtensions.h"
|
||||||
#include <iostream>
|
#include <iostream>
|
||||||
|
#include "TextureManager.h"
|
||||||
|
#include "TextModel.h"
|
||||||
|
|
||||||
namespace ZL
|
namespace ZL
|
||||||
{
|
{
|
||||||
extern const char* CONST_ZIP_FILE;
|
const char* CONST_ZIP_FILE = "";
|
||||||
|
|
||||||
Game::Game()
|
Game::Game()
|
||||||
: window(nullptr)
|
: window(nullptr)
|
||||||
, glContext(nullptr)
|
, glContext(nullptr)
|
||||||
, newTickCount(0)
|
, newTickCount(0)
|
||||||
, lastTickCount(0)
|
, lastTickCount(0)
|
||||||
, renderer(renderSystem.getRenderer()) // Инициализация ссылки на renderer
|
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -35,65 +35,71 @@ void Game::setup() {
|
|||||||
ZL::BindOpenGlFunctions();
|
ZL::BindOpenGlFunctions();
|
||||||
ZL::CheckGlError();
|
ZL::CheckGlError();
|
||||||
|
|
||||||
std::cout << "Hello 1" << std::endl;
|
|
||||||
|
|
||||||
// Initialize renderer
|
// Initialize renderer
|
||||||
|
|
||||||
#ifdef EMSCRIPTEN
|
#ifdef EMSCRIPTEN
|
||||||
renderer.shaderManager.AddShaderFromFiles("default", "./default.vertex", "./default_web.fragment", CONST_ZIP_FILE);
|
renderer.shaderManager.AddShaderFromFiles("default", "./shaders/default.vertex", "./shaders/default_web.fragment", CONST_ZIP_FILE);
|
||||||
renderer.shaderManager.AddShaderFromFiles("defaultColor", "./defaultColor.vertex", "./defaultColor_web.fragment", CONST_ZIP_FILE);
|
renderer.shaderManager.AddShaderFromFiles("defaultColor", "./shaders/defaultColor.vertex", "./shaders/defaultColor_web.fragment", CONST_ZIP_FILE);
|
||||||
renderer.shaderManager.AddShaderFromFiles("defaultHideCam", "./defaultHideCam.vertex", "./defaultHideCam_web.fragment", CONST_ZIP_FILE);
|
|
||||||
#else
|
#else
|
||||||
renderer.shaderManager.AddShaderFromFiles("default", "./default.vertex", "./default_desktop.fragment", CONST_ZIP_FILE);
|
renderer.shaderManager.AddShaderFromFiles("default", "./shaders/default.vertex", "./shaders/default_desktop.fragment", CONST_ZIP_FILE);
|
||||||
renderer.shaderManager.AddShaderFromFiles("defaultColor", "./defaultColor.vertex", "./defaultColor_desktop.fragment", CONST_ZIP_FILE);
|
renderer.shaderManager.AddShaderFromFiles("defaultColor", "./shaders/defaultColor.vertex", "./shaders/defaultColor_desktop.fragment", CONST_ZIP_FILE);
|
||||||
renderer.shaderManager.AddShaderFromFiles("defaultHideCam", "./defaultHideCam.vertex", "./defaultHideCam_desktop.fragment", CONST_ZIP_FILE);
|
|
||||||
#endif
|
#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();
|
renderer.InitOpenGL();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void Game::drawScene() {
|
void Game::drawScene() {
|
||||||
// Вместо прямого рисования используем RenderSystem
|
static const std::string defaultShaderName = "default";
|
||||||
renderSystem.drawScene(gameObjects);
|
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() {
|
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) {
|
if (lastTickCount == 0) {
|
||||||
lastTickCount = SDL_GetTicks64();
|
lastTickCount = SDL_GetTicks64();
|
||||||
return;
|
return;
|
||||||
@ -104,7 +110,9 @@ void Game::processTickCount() {
|
|||||||
size_t delta = (newTickCount - lastTickCount > CONST_MAX_TIME_INTERVAL) ?
|
size_t delta = (newTickCount - lastTickCount > CONST_MAX_TIME_INTERVAL) ?
|
||||||
CONST_MAX_TIME_INTERVAL : newTickCount - lastTickCount;
|
CONST_MAX_TIME_INTERVAL : newTickCount - lastTickCount;
|
||||||
|
|
||||||
gameObjects.updateScene(delta);
|
//gameObjects.updateScene(delta);
|
||||||
|
|
||||||
|
Environment::cameraAlpha = Environment::cameraAlpha + delta * M_PI / 10000.f;
|
||||||
|
|
||||||
lastTickCount = newTickCount;
|
lastTickCount = newTickCount;
|
||||||
}
|
}
|
||||||
@ -127,22 +135,29 @@ void Game::update() {
|
|||||||
SDL_Event event;
|
SDL_Event event;
|
||||||
while (SDL_PollEvent(&event)) {
|
while (SDL_PollEvent(&event)) {
|
||||||
if (event.type == SDL_QUIT) {
|
if (event.type == SDL_QUIT) {
|
||||||
if (gameObjects.loadingThread.joinable())
|
|
||||||
{
|
|
||||||
gameObjects.loadingThread.join();
|
|
||||||
}
|
|
||||||
#ifdef AUDIO
|
|
||||||
gameObjects.audioPlayerAsync.exit();
|
|
||||||
#endif
|
|
||||||
Environment::exitGameLoop = true;
|
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)
|
//this->modelMeshRender.data.Scale(0.5);
|
||||||
{
|
//this->modelMeshRender.RefreshVBO();
|
||||||
gameObjects.handleEvent(event);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
render();
|
render();
|
||||||
}
|
}
|
||||||
|
|||||||
13
Game.h
@ -1,9 +1,9 @@
|
|||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
#include "OpenGlExtensions.h"
|
#include "OpenGlExtensions.h"
|
||||||
#include "GameObjectManager.h"
|
#include "Renderer.h"
|
||||||
#include "RenderSystem.h"
|
|
||||||
#include "Environment.h"
|
#include "Environment.h"
|
||||||
|
#include "TextureManager.h"
|
||||||
|
|
||||||
namespace ZL {
|
namespace ZL {
|
||||||
|
|
||||||
@ -13,7 +13,6 @@ public:
|
|||||||
~Game();
|
~Game();
|
||||||
|
|
||||||
void setup();
|
void setup();
|
||||||
void run();
|
|
||||||
void update();
|
void update();
|
||||||
void render();
|
void render();
|
||||||
|
|
||||||
@ -25,15 +24,17 @@ private:
|
|||||||
|
|
||||||
SDL_Window* window;
|
SDL_Window* window;
|
||||||
SDL_GLContext glContext;
|
SDL_GLContext glContext;
|
||||||
RenderSystem renderSystem;
|
Renderer renderer;
|
||||||
GameObjectManager gameObjects;
|
|
||||||
Renderer& renderer; // Ссылка на renderer из RenderSystem
|
|
||||||
|
|
||||||
size_t newTickCount;
|
size_t newTickCount;
|
||||||
size_t lastTickCount;
|
size_t lastTickCount;
|
||||||
|
|
||||||
static const size_t CONST_TIMER_INTERVAL = 10;
|
static const size_t CONST_TIMER_INTERVAL = 10;
|
||||||
static const size_t CONST_MAX_TIME_INTERVAL = 1000;
|
static const size_t CONST_MAX_TIME_INTERVAL = 1000;
|
||||||
|
|
||||||
|
std::shared_ptr<Texture> spaceshipTexture;
|
||||||
|
VertexDataStruct spaceshipBase;
|
||||||
|
VertexRenderStruct spaceship;
|
||||||
};
|
};
|
||||||
|
|
||||||
} // namespace ZL
|
} // namespace ZL
|
||||||
@ -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
|
|
||||||
@ -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
|
|
||||||
@ -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);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
18
GameWorld.h
@ -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;
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@ -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];
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@ -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;
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@ -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;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
44
Inventory.h
@ -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();
|
|
||||||
}
|
|
||||||
|
Before Width: | Height: | Size: 3.0 MiB |
|
Before Width: | Height: | Size: 3.0 MiB |
|
Before Width: | Height: | Size: 3.0 MiB |
|
Before Width: | Height: | Size: 12 MiB |
|
Before Width: | Height: | Size: 3.0 MiB |
1206
ObjLoader.cpp
@ -1,5 +0,0 @@
|
|||||||
#pragma once
|
|
||||||
|
|
||||||
#include "Renderer.h"
|
|
||||||
|
|
||||||
ZL::VertexDataStruct LoadFromObjFile(const std::string& fileName);
|
|
||||||
78
Physics.cpp
@ -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;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
22
Physics.h
@ -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);
|
|
||||||
|
|
||||||
}
|
|
||||||
@ -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
|
|
||||||
{
|
|
||||||
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
@ -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();
|
|
||||||
|
|
||||||
}
|
|
||||||
@ -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
|
|
||||||
```
|
|
||||||
484
RenderSystem.cpp
@ -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
|
|
||||||
@ -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
|
|
||||||
16
Renderer.cpp
@ -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);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -130,4 +130,10 @@ namespace ZL {
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
void worldToScreenCoordinates(Vector3f objectPos,
|
||||||
|
Matrix4f projectionModelView,
|
||||||
|
int screenWidth, int screenHeight,
|
||||||
|
int& screenX, int& screenY);
|
||||||
|
|
||||||
};
|
};
|
||||||
54
Room.h
@ -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;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
};
|
|
||||||
}
|
|
||||||
173
TextModel.cpp
@ -71,7 +71,7 @@ namespace ZL
|
|||||||
vertices[i] = Vector3f{ floatValues[0], floatValues[1], floatValues[2] };
|
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:
|
std::getline(f, tempLine); //===UV Coordinates:
|
||||||
|
|
||||||
@ -132,15 +132,9 @@ namespace ZL
|
|||||||
|
|
||||||
uvCoords[i][j] = Vector2f{ floatValues[0],floatValues[1] };
|
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:
|
std::getline(f, tempLine); //===Normals:
|
||||||
|
|
||||||
@ -164,7 +158,7 @@ namespace ZL
|
|||||||
normals[i] = Vector3f{ floatValues[0], floatValues[1], floatValues[2] };
|
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
|
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++)
|
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;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -8,7 +8,5 @@
|
|||||||
namespace ZL
|
namespace ZL
|
||||||
{
|
{
|
||||||
VertexDataStruct LoadFromTextFile(const std::string& fileName, const std::string& ZIPFileName = "");
|
VertexDataStruct LoadFromTextFile(const std::string& fileName, const std::string& ZIPFileName = "");
|
||||||
|
VertexDataStruct LoadFromTextFile02(const std::string& fileName, const std::string& ZIPFileName = "");
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
@ -259,8 +259,10 @@ namespace ZL
|
|||||||
texData.data.resize(dataSize);
|
texData.data.resize(dataSize);
|
||||||
|
|
||||||
|
|
||||||
for (int y = 0; y < texData.height; y++) {
|
//for (int y = 0; y < texData.height; y++) { //Go in reverse because of UV coord start point
|
||||||
png_bytep row = row_pointers[y];
|
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++) {
|
for (int x = 0; x < texData.width; x++) {
|
||||||
png_bytep px = &(row[x * 4]);
|
png_bytep px = &(row[x * 4]);
|
||||||
texData.data[(y * texData.width + x) * channels + 0] = px[0]; // R
|
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
|
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);
|
free(row_pointers);
|
||||||
|
|
||||||
|
|||||||
|
Before Width: | Height: | Size: 1.3 MiB |
|
Before Width: | Height: | Size: 1.0 MiB |
@ -1,11 +0,0 @@
|
|||||||
precision mediump float;
|
|
||||||
uniform sampler2D Texture;
|
|
||||||
varying vec2 texCoord;
|
|
||||||
|
|
||||||
void main()
|
|
||||||
{
|
|
||||||
vec4 color = texture2D(Texture,texCoord).rgba;
|
|
||||||
|
|
||||||
gl_FragColor = color;
|
|
||||||
|
|
||||||
}
|
|
||||||
@ -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;
|
|
||||||
}
|
|
||||||
|
Before Width: | Height: | Size: 3.8 MiB |
|
Before Width: | Height: | Size: 1.4 MiB |
20
aaaa
@ -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!
|
|
||||||
|
|
||||||
BIN
background.bmp
|
Before Width: | Height: | Size: 768 KiB |
|
Before Width: | Height: | Size: 768 KiB |
|
Before Width: | Height: | Size: 3.0 MiB |
BIN
bird.bmp32
|
Before Width: | Height: | Size: 64 KiB |
@ -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=
|
|
||||||
|
|
||||||
@ -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 "")
|
|
||||||
@ -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)
|
|
||||||
@ -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;
|
|
||||||
}
|
|
||||||
@ -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
|
|
||||||
...
|
|
||||||
@ -1 +0,0 @@
|
|||||||
# This file is generated by cmake for dependency checking of the CMakeCache.txt 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
|
|
||||||
|
|
||||||
@ -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.
|
|
||||||
...
|
|
||||||
@ -1 +0,0 @@
|
|||||||
# This file is generated by cmake for dependency checking of the CMakeCache.txt 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
|
|
||||||
93
cube001.txt
@ -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]
|
|
||||||
@ -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;
|
|
||||||
}
|
|
||||||
@ -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;
|
|
||||||
}
|
|
||||||
@ -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;
|
|
||||||
}
|
|
||||||
93
door.txt
@ -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]
|
|
||||||
BIN
final_bad.bmp
|
Before Width: | Height: | Size: 768 KiB |
BIN
final_dialog.bmp
|
Before Width: | Height: | Size: 3.0 MiB |
BIN
final_good.bmp
|
Before Width: | Height: | Size: 768 KiB |
BIN
game_over.bmp32
|
Before Width: | Height: | Size: 512 KiB |
BIN
hand.bmp32
|
Before Width: | Height: | Size: 16 MiB |
42311
idleviola_uv010.txt
93
inai001.txt
@ -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]
|
|
||||||
BIN
jumpingbird.wasm
261
lighter.txt
@ -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]
|
|
||||||
BIN
loading.bmp
|
Before Width: | Height: | Size: 768 KiB |
559
lock.txt
@ -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]
|
|
||||||
4
main.cpp
@ -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_MINOR_VERSION, 0);
|
||||||
SDL_GL_SetAttribute(SDL_GL_CONTEXT_PROFILE_MASK, SDL_GL_CONTEXT_PROFILE_ES);
|
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,
|
SDL_WINDOWPOS_CENTERED, SDL_WINDOWPOS_CENTERED,
|
||||||
CONST_WIDTH, CONST_HEIGHT,
|
CONST_WIDTH, CONST_HEIGHT,
|
||||||
SDL_WINDOW_OPENGL);
|
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);
|
SDL_GL_SetAttribute(SDL_GL_CONTEXT_PROFILE_MASK, SDL_GL_CONTEXT_PROFILE_CORE);
|
||||||
|
|
||||||
ZL::Environment::window = SDL_CreateWindow(
|
ZL::Environment::window = SDL_CreateWindow(
|
||||||
"INAI game",
|
"Space Ship Game",
|
||||||
SDL_WINDOWPOS_CENTERED, SDL_WINDOWPOS_CENTERED,
|
SDL_WINDOWPOS_CENTERED, SDL_WINDOWPOS_CENTERED,
|
||||||
CONST_WIDTH, CONST_HEIGHT,
|
CONST_WIDTH, CONST_HEIGHT,
|
||||||
SDL_WINDOW_OPENGL | SDL_WINDOW_SHOWN
|
SDL_WINDOW_OPENGL | SDL_WINDOW_SHOWN
|
||||||
|
|||||||
|
Before Width: | Height: | Size: 2.6 KiB |
|
Before Width: | Height: | Size: 21 KiB |
|
Before Width: | Height: | Size: 3.0 KiB |
|
Before Width: | Height: | Size: 948 B |
|
Before Width: | Height: | Size: 1.2 KiB |
|
Before Width: | Height: | Size: 1.0 KiB |
@ -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
|
|
||||||
|
Before Width: | Height: | Size: 134 KiB |
|
Before Width: | Height: | Size: 192 KiB |