diff --git a/.gitignore b/.gitignore
index 68db53b..2fe49d6 100644
--- a/.gitignore
+++ b/.gitignore
@@ -371,4 +371,6 @@ lib/*
.vscode
src/DiscordIntegration.cpp
-include/DiscordIntegration.hpp
\ No newline at end of file
+include/DiscordIntegration.hpp
+
+*.ini
\ No newline at end of file
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 63fcd8b..dd58049 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -35,11 +35,5 @@ add_executable(booldozer ${BOOLDOZER_SRC})
target_include_directories(booldozer PUBLIC include lib/libflipper/include lib/libflipper/include/geometry lib/imgui lib/imgui/backends lib/fmt/include lib/glfw/include lib/glad/include lib/glm lib/J3DUltra/include)
add_definitions(-DIMGUI_DEFINE_MATH_OPERATORS)
-
find_package(ICU 61.0 COMPONENTS uc i18n REQUIRED)
-target_link_libraries(booldozer PUBLIC imgui glfw gctools ICU::uc ICU::i18n fmt j3dultra discord-rpc)
-
-
-#if(WIN32)
-#target_link_libraries(booldozer PUBLIC imgui glfw gctools fmt j3dultra /usr/x86_64-w64-mingw32/lib/libicuin.dll.a /usr/x86_64-w64-mingw32/lib/libicuuc.dll.a /usr/x86_64-w64-mingw32/lib/libicudt.dll.a /usr/x86_64-w64-mingw32/lib/libicuio.dll.a /usr/x86_64-w64-mingw32/lib/libicutu.dll.a /usr/x86_64-w64-mingw32/lib/libicutu.dll.a ssp)
-#endif(WIN32)
\ No newline at end of file
+target_link_libraries(booldozer PUBLIC imgui glfw gctools ICU::uc ICU::i18n fmt j3dultra)
\ No newline at end of file
diff --git a/README.md b/README.md
index 71bc248..712c201 100644
--- a/README.md
+++ b/README.md
@@ -5,27 +5,35 @@
Booldozer is a work-in-progress editor for the original [Luigi's Mansion on GameCube](https://en.wikipedia.org/wiki/Luigi%27s_Mansion), written by SpaceCats ([@kittensandals](https://twitter.com/kittensandals)) and Gamma ([@SageOfMirrors](https://twitter.com/SageOfMirrors)). It aims to cover as many aspects of modding the game as possible.
-### Features
-#### Map Editing
-
+
-Create custom maps with Booldozer's various editing modes! Set the scene with Actor Mode, configure loot drops with Item Mode, and customize collision with Collision Mode.
+## Build Instructions
-#### Spawn Groups
-
+### Cloning the Repository
-Keeping track of create names manually is a thing of the past! Use Booldozer's Spawn Group Editor to make managing waves of enemies as easy as clicking and dragging.
+```
+git clone https://github.com/Sage-of-Mirrors/Booldozer.git
-#### Ghost Configs (PRM)
-
+cd Booldozer
-Make objects act the way you want with Booldozer's Ghost Config Editor! Change their attacks, their HP, and even what color they glow.
+git submodule update --init --recursive
+```
-### Roadmap/TODOs
- - Modes
- - Collision
- - Event
- - Complete this list
+### Linux
+
+Ensure all required packages are installed (Iconv, libpng, zlib)
+
+```
+cmake -S . -B build
+cd build
+make
+```
+
+### Windows
+
+Open the repository in Visual Studio as a CMake Project and compile like any other VS Project.
+
+**Must** be a version of VS that includes vcpkg.
diff --git a/imgui.ini b/imgui.ini
deleted file mode 100644
index 9ada395..0000000
--- a/imgui.ini
+++ /dev/null
@@ -1,98 +0,0 @@
-[Window][Debug##Default]
-Pos=60,60
-Size=400,400
-Collapsed=0
-
-[Window][mode combo window]
-Pos=5,25
-Size=195,40
-Collapsed=0
-
-[Window][render distance window]
-Pos=205,25
-Size=150,40
-Collapsed=0
-
-[Window][gizmo mode window]
-Pos=360,25
-Size=85,40
-Collapsed=0
-
-[Window][Open map archive##OpenMapDlg]
-Pos=60,60
-Size=832,411
-Collapsed=0
-
-[Window][cammove mode window]
-Pos=450,25
-Size=110,40
-Collapsed=0
-
-[Window][Root Not Set]
-Pos=24,183
-Size=591,114
-Collapsed=0
-
-[Window][Selected Object Details]
-Pos=827,54
-Size=423,647
-Collapsed=0
-
-[Window][Scene Hierarchy]
-Pos=854,117
-Size=380,324
-Collapsed=1
-
-[Window][transform gadget window]
-Pos=380,25
-Size=60,35
-Collapsed=0
-
-[Window][rotate gadget window]
-Pos=445,25
-Size=60,35
-Collapsed=0
-
-[Window][scale gadget window]
-Pos=510,25
-Size=60,35
-Collapsed=0
-
-[Window][Ghost Configurations]
-Pos=1040,25
-Size=236,714
-Collapsed=1
-
-[Window][Door List]
-Pos=18,111
-Size=461,609
-Collapsed=0
-
-[Window][Item Data]
-Pos=13,177
-Size=252,184
-Collapsed=0
-
-[Window][Available Events]
-Pos=406,154
-Size=359,309
-Collapsed=0
-
-[Window][Event Script]
-Pos=16,176
-Size=285,221
-Collapsed=0
-
-[Window][Choose a Folder##SaveMapFilesDlg]
-Pos=60,60
-Size=975,523
-Collapsed=0
-
-[Table][0x3979CA21,4]
-RefScale=18
-Column 0 Sort=0v
-
-[Table][0x33C1868E,4]
-RefScale=18
-Column 0 Sort=0v
-
diff --git a/include/DiscordIntegration.hpp b/include/DiscordIntegration.hpp
index bf8e1f0..680ef20 100644
--- a/include/DiscordIntegration.hpp
+++ b/include/DiscordIntegration.hpp
@@ -1,4 +1,5 @@
#pragma once
+/*
#include
// Invalidated Old ID
@@ -14,4 +15,5 @@ namespace Discord {
void HandleJoinRequest(const DiscordUser* request);
extern DiscordRichPresence RichPresence;
-};
\ No newline at end of file
+};
+*/
\ No newline at end of file
diff --git a/preview.png b/preview.png
new file mode 100644
index 0000000..f58a2f2
Binary files /dev/null and b/preview.png differ
diff --git a/src/DiscordIntegration.cpp b/src/DiscordIntegration.cpp
index 1d6278c..bfb0f4e 100644
--- a/src/DiscordIntegration.cpp
+++ b/src/DiscordIntegration.cpp
@@ -1,5 +1,6 @@
-#include
#include
+/*
+#include
namespace Discord {
DiscordRichPresence RichPresence;
@@ -21,4 +22,5 @@ namespace Discord {
void HandleSpectate(const char* secret){}
void HandleJoinRequest(const DiscordUser* request){}
-}
\ No newline at end of file
+}
+*/
\ No newline at end of file
diff --git a/src/modes/ActorMode.cpp b/src/modes/ActorMode.cpp
index ed5d1dc..c19f3bc 100644
--- a/src/modes/ActorMode.cpp
+++ b/src/modes/ActorMode.cpp
@@ -4,7 +4,7 @@
#include "ImGuizmo.h"
#include "UIUtil.hpp"
-#include
+//#include
LActorMode::LActorMode()
{
@@ -216,10 +216,12 @@ void LActorMode::Render(std::shared_ptr current_map, LEditorScene*
if(mRoomChanged){
if(std::shared_ptr room = mManualRoomSelect.lock()){
+ /*
std::string room_name = fmt::format("Editing {}", room->GetName());
Discord::RichPresence.details = room_name.c_str();
Discord_UpdatePresence(&Discord::RichPresence);
+ */
renderer_scene->SetRoom(room);
}
}
diff --git a/src/scene/EditorScene.cpp b/src/scene/EditorScene.cpp
index 1411373..96c5e4c 100644
--- a/src/scene/EditorScene.cpp
+++ b/src/scene/EditorScene.cpp
@@ -31,46 +31,46 @@ struct cube_vertex {
//hardcoded cube rendering data
static const GLfloat s_cubeVertices[] = {
- -1.0f,-1.0f,-1.0f, 0.000059f, 1.0f-0.000004f,
- -1.0f,-1.0f, 1.0f, 0.000103f, 1.0f-0.336048f,
- -1.0f, 1.0f, 1.0f, 0.335973f, 1.0f-0.335903f,
- 1.0f, 1.0f,-1.0f, 1.000023f, 1.0f-0.000013f,
- -1.0f,-1.0f,-1.0f, 0.667979f, 1.0f-0.335851f,
- -1.0f, 1.0f,-1.0f, 0.999958f, 1.0f-0.336064f,
- 1.0f,-1.0f, 1.0f, 0.667979f, 1.0f-0.335851f,
- -1.0f,-1.0f,-1.0f, 0.336024f, 1.0f-0.671877f,
- 1.0f,-1.0f,-1.0f, 0.667969f, 1.0f-0.671889f,
- 1.0f, 1.0f,-1.0f, 1.000023f, 1.0f-0.000013f,
- 1.0f,-1.0f,-1.0f, 0.668104f, 1.0f-0.000013f,
- -1.0f,-1.0f,-1.0f, 0.667979f, 1.0f-0.335851f,
- -1.0f,-1.0f,-1.0f, 0.000059f, 1.0f-0.000004f,
- -1.0f, 1.0f, 1.0f, 0.335973f, 1.0f-0.335903f,
- -1.0f, 1.0f,-1.0f, 0.336098f, 1.0f-0.000071f,
- 1.0f,-1.0f, 1.0f, 0.667979f, 1.0f-0.335851f,
- -1.0f,-1.0f, 1.0f, 0.335973f, 1.0f-0.335903f,
- -1.0f,-1.0f,-1.0f, 0.336024f, 1.0f-0.671877f,
- -1.0f, 1.0f, 1.0f, 1.000004f, 1.0f-0.671847f,
- -1.0f,-1.0f, 1.0f, 0.999958f, 1.0f-0.336064f,
- 1.0f,-1.0f, 1.0f, 0.667979f, 1.0f-0.335851f,
- 1.0f, 1.0f, 1.0f, 0.668104f, 1.0f-0.000013f,
- 1.0f,-1.0f,-1.0f, 0.335973f, 1.0f-0.335903f,
- 1.0f, 1.0f,-1.0f, 0.667979f, 1.0f-0.335851f,
- 1.0f,-1.0f,-1.0f, 0.335973f, 1.0f-0.335903f,
- 1.0f, 1.0f, 1.0f, 0.668104f, 1.0f-0.000013f,
- 1.0f,-1.0f, 1.0f, 0.336098f, 1.0f-0.000071f,
- 1.0f, 1.0f, 1.0f, 0.000103f, 1.0f-0.336048f,
- 1.0f, 1.0f,-1.0f, 0.000004f, 1.0f-0.671870f,
- -1.0f, 1.0f,-1.0f, 0.336024f, 1.0f-0.671877f,
- 1.0f, 1.0f, 1.0f, 0.000103f, 1.0f-0.336048f,
- -1.0f, 1.0f,-1.0f, 0.336024f, 1.0f-0.671877f,
- -1.0f, 1.0f, 1.0f, 0.335973f, 1.0f-0.335903f,
- 1.0f, 1.0f, 1.0f, 0.667969f, 1.0f-0.671889f,
- -1.0f, 1.0f, 1.0f, 1.000004f, 1.0f-0.671847f,
- 1.0f,-1.0f, 1.0f, 0.667979f, 1.0f-0.335851f
+ -10.0f,-10.0f,-10.0f, 0.000059f, 10.0f-0.000004f,
+ -10.0f,-10.0f, 10.0f, 0.000103f, 10.0f-0.336048f,
+ -10.0f, 10.0f, 10.0f, 0.335973f, 10.0f-0.335903f,
+ 10.0f, 10.0f,-10.0f, 10.000023f, 10.0f-0.000013f,
+ -10.0f,-10.0f,-10.0f, 0.667979f, 10.0f-0.335851f,
+ -10.0f, 10.0f,-10.0f, 0.999958f, 10.0f-0.336064f,
+ 10.0f,-10.0f, 10.0f, 0.667979f, 10.0f-0.335851f,
+ -10.0f,-10.0f,-10.0f, 0.336024f, 10.0f-0.671877f,
+ 10.0f,-10.0f,-10.0f, 0.667969f, 10.0f-0.671889f,
+ 10.0f, 10.0f,-10.0f, 10.000023f, 10.0f-0.000013f,
+ 10.0f,-10.0f,-10.0f, 0.668104f, 10.0f-0.000013f,
+ -10.0f,-10.0f,-10.0f, 0.667979f, 10.0f-0.335851f,
+ -10.0f,-10.0f,-10.0f, 0.000059f, 10.0f-0.000004f,
+ -10.0f, 10.0f, 10.0f, 0.335973f, 10.0f-0.335903f,
+ -10.0f, 10.0f,-10.0f, 0.336098f, 10.0f-0.000071f,
+ 10.0f,-10.0f, 10.0f, 0.667979f, 10.0f-0.335851f,
+ -10.0f,-10.0f, 10.0f, 0.335973f, 10.0f-0.335903f,
+ -10.0f,-10.0f,-10.0f, 0.336024f, 10.0f-0.671877f,
+ -10.0f, 10.0f, 10.0f, 10.000004f, 10.0f-0.671847f,
+ -10.0f,-10.0f, 10.0f, 0.999958f, 10.0f-0.336064f,
+ 10.0f,-10.0f, 10.0f, 0.667979f, 10.0f-0.335851f,
+ 10.0f, 10.0f, 10.0f, 0.668104f, 10.0f-0.000013f,
+ 10.0f,-10.0f,-10.0f, 0.335973f, 10.0f-0.335903f,
+ 10.0f, 10.0f,-10.0f, 0.667979f, 10.0f-0.335851f,
+ 10.0f,-10.0f,-10.0f, 0.335973f, 10.0f-0.335903f,
+ 10.0f, 10.0f, 10.0f, 0.668104f, 10.0f-0.000013f,
+ 10.0f,-10.0f, 10.0f, 0.336098f, 10.0f-0.000071f,
+ 10.0f, 10.0f, 10.0f, 0.000103f, 10.0f-0.336048f,
+ 10.0f, 10.0f,-10.0f, 0.000004f, 10.0f-0.671870f,
+ -10.0f, 10.0f,-10.0f, 0.336024f, 10.0f-0.671877f,
+ 10.0f, 10.0f, 10.0f, 0.000103f, 10.0f-0.336048f,
+ -10.0f, 10.0f,-10.0f, 0.336024f, 10.0f-0.671877f,
+ -10.0f, 10.0f, 10.0f, 0.335973f, 10.0f-0.335903f,
+ 10.0f, 10.0f, 10.0f, 0.667969f, 10.0f-0.671889f,
+ -10.0f, 10.0f, 10.0f, 10.000004f, 10.0f-0.671847f,
+ 10.0f,-10.0f, 10.0f, 0.667979f, 10.0f-0.335851f
};
const char* cube_vtx_shader = "#version 460\n\
- #extension GL_ARB_separate_shader_objects : enable\n\
+ #extension GL_ARB_separate_shader_objects : enable\n\
struct GXLight {\n\
vec4 Position;\n\
vec4 Direction;\n\
@@ -78,7 +78,7 @@ const char* cube_vtx_shader = "#version 460\n\
vec4 AngleAtten;\n\
vec4 DistAtten;\n\
};\n\
- layout (std140, binding=0) uniform uSharedData {\n\
+ layout (std140, binding=0) uniform uSharedData {\n\
mat4 Proj;\n\
mat4 View;\n\
mat4 Model;\n\
@@ -87,34 +87,34 @@ const char* cube_vtx_shader = "#version 460\n\
GXLight Lights[8];\n\
mat4 Envelopes[512];\n\
mat4 TexMatrices[10];\n\
- };\n\
- uniform mat4 transform;\n\
- \
- layout(location = 0) in vec3 inPosition;\n\
- layout(location = 1) in vec2 inTexCoord;\n\
- \
- layout(location = 0) out vec2 fragTexCoord;\n\
- \
- void main()\n\
- {\
- gl_Position = Proj * View * transform * vec4(inPosition, 1.0);\n\
- fragTexCoord = inTexCoord;\n\
- }\
+ };\n\
+ uniform mat4 transform;\n\
+ \
+ layout(location = 0) in vec3 inPosition;\n\
+ layout(location = 1) in vec2 inTexCoord;\n\
+ \
+ layout(location = 0) out vec2 fragTexCoord;\n\
+ \
+ void main()\n\
+ {\
+ gl_Position = Proj * View * transform * vec4(inPosition, 1.0);\n\
+ fragTexCoord = inTexCoord;\n\
+ }\
";
const char* cube_frg_shader = "#version 460\n\
- #extension GL_ARB_separate_shader_objects : enable\n\
- \
- uniform sampler2D texSampler;\n\
- layout(location = 0) in vec2 fragTexCoord;\n\
- layout(location = 0) out vec4 outColor;\n\
- \
- void main()\n\
- {\n\
- vec4 baseColor = texture(texSampler, vec2(fragTexCoord.y, fragTexCoord.x));\n\
- outColor = baseColor;\n\
- if(baseColor.a < 1.0 / 1.0f) discard;\n\
- }\
+ #extension GL_ARB_separate_shader_objects : enable\n\
+ \
+ uniform sampler2D texSampler;\n\
+ layout(location = 0) in vec2 fragTexCoord;\n\
+ layout(location = 0) out vec4 outColor;\n\
+ \
+ void main()\n\
+ {\n\
+ vec4 baseColor = texture(texSampler, vec2(fragTexCoord.y, fragTexCoord.x));\n\
+ outColor = baseColor;\n\
+ if(baseColor.a < 1.0 / 1.0f) discard;\n\
+ }\
";
// From: https://github.com/opengl-tutorials/ogl/blob/master/misc05_picking/misc05_picking_custom.cpp
@@ -296,12 +296,12 @@ void LCubeManager::render(glm::mat4* transform, bool wireframe=false){
if(wireframe) glPolygonMode( GL_FRONT_AND_BACK, GL_LINE );
- glActiveTexture(GL_TEXTURE0);
- glBindTexture(GL_TEXTURE_2D, mCubeTex);
+ glActiveTexture(GL_TEXTURE0);
+ glBindTexture(GL_TEXTURE_2D, mCubeTex);
glBindVertexArray(mVao);
glDrawArrays(GL_TRIANGLES, 0, 36);
- glBindVertexArray(0);
+ glBindVertexArray(0);
if(wireframe) glPolygonMode( GL_FRONT_AND_BACK, GL_FILL );
}
@@ -314,95 +314,95 @@ void LCubeManager::init(){
uint8_t* data = stbi_load_from_memory(&cube_png[0], cube_png_size, &x, &y, &n, 4);
glGenTextures(1, &mCubeTex);
- glBindTexture(GL_TEXTURE_2D, mCubeTex);
+ glBindTexture(GL_TEXTURE_2D, mCubeTex);
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_REPEAT);
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_REPEAT);
+ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
+ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
+ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_REPEAT);
+ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_REPEAT);
- glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, x, y, 0, GL_RGBA, GL_UNSIGNED_BYTE, data);
-
- glBindTexture(GL_TEXTURE_2D, 0);
+ glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, x, y, 0, GL_RGBA, GL_UNSIGNED_BYTE, data);
+
+ glBindTexture(GL_TEXTURE_2D, 0);
stbi_image_free(data);
- glGenVertexArrays(1, &mVao);
- glBindVertexArray(mVao);
+ glGenVertexArrays(1, &mVao);
+ glBindVertexArray(mVao);
- glGenBuffers(1, &mVbo);
- glBindBuffer(GL_ARRAY_BUFFER, mVbo);
+ glGenBuffers(1, &mVbo);
+ glBindBuffer(GL_ARRAY_BUFFER, mVbo);
- glEnableVertexAttribArray(0);
- glVertexAttribPointer(0, 3, GL_FLOAT, GL_FALSE, sizeof(cube_vertex), (void*)0);
- glEnableVertexAttribArray(1);
- glVertexAttribPointer(1, 2, GL_FLOAT, GL_FALSE, sizeof(cube_vertex), (void*)12);
+ glEnableVertexAttribArray(0);
+ glVertexAttribPointer(0, 3, GL_FLOAT, GL_FALSE, sizeof(cube_vertex), (void*)0);
+ glEnableVertexAttribArray(1);
+ glVertexAttribPointer(1, 2, GL_FLOAT, GL_FALSE, sizeof(cube_vertex), (void*)12);
- glBufferData(GL_ARRAY_BUFFER, sizeof(s_cubeVertices), s_cubeVertices, GL_STATIC_DRAW);
- glBindBuffer(GL_ARRAY_BUFFER, 0);
+ glBufferData(GL_ARRAY_BUFFER, sizeof(s_cubeVertices), s_cubeVertices, GL_STATIC_DRAW);
+ glBindBuffer(GL_ARRAY_BUFFER, 0);
glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, 0);
- glBindVertexArray(0);
+ glBindVertexArray(0);
- char glErrorLogBuffer[4096];
- GLuint vs = glCreateShader(GL_VERTEX_SHADER);
- GLuint fs = glCreateShader(GL_FRAGMENT_SHADER);
+ char glErrorLogBuffer[4096];
+ GLuint vs = glCreateShader(GL_VERTEX_SHADER);
+ GLuint fs = glCreateShader(GL_FRAGMENT_SHADER);
- glShaderSource(vs, 1, &cube_vtx_shader, NULL);
- glShaderSource(fs, 1, &cube_frg_shader, NULL);
+ glShaderSource(vs, 1, &cube_vtx_shader, NULL);
+ glShaderSource(fs, 1, &cube_frg_shader, NULL);
- glCompileShader(vs);
+ glCompileShader(vs);
- GLint status;
- glGetShaderiv(vs, GL_COMPILE_STATUS, &status);
- if(status == GL_FALSE){
- GLint infoLogLength;
- glGetShaderiv(vs, GL_INFO_LOG_LENGTH, &infoLogLength);
+ GLint status;
+ glGetShaderiv(vs, GL_COMPILE_STATUS, &status);
+ if(status == GL_FALSE){
+ GLint infoLogLength;
+ glGetShaderiv(vs, GL_INFO_LOG_LENGTH, &infoLogLength);
- glGetShaderInfoLog(vs, infoLogLength, NULL, glErrorLogBuffer);
+ glGetShaderInfoLog(vs, infoLogLength, NULL, glErrorLogBuffer);
- printf("Compile failure in vertex shader:\n%s\n", glErrorLogBuffer);
- }
+ printf("Compile failure in vertex shader:\n%s\n", glErrorLogBuffer);
+ }
- glCompileShader(fs);
+ glCompileShader(fs);
- glGetShaderiv(fs, GL_COMPILE_STATUS, &status);
- if(status == GL_FALSE){
- GLint infoLogLength;
- glGetShaderiv(fs, GL_INFO_LOG_LENGTH, &infoLogLength);
+ glGetShaderiv(fs, GL_COMPILE_STATUS, &status);
+ if(status == GL_FALSE){
+ GLint infoLogLength;
+ glGetShaderiv(fs, GL_INFO_LOG_LENGTH, &infoLogLength);
- glGetShaderInfoLog(fs, infoLogLength, NULL, glErrorLogBuffer);
+ glGetShaderInfoLog(fs, infoLogLength, NULL, glErrorLogBuffer);
- printf("Compile failure in fragment shader:\n%s\n", glErrorLogBuffer);
- }
+ printf("Compile failure in fragment shader:\n%s\n", glErrorLogBuffer);
+ }
- mCubeProgram = glCreateProgram();
+ mCubeProgram = glCreateProgram();
- glAttachShader(mCubeProgram, vs);
- glAttachShader(mCubeProgram, fs);
+ glAttachShader(mCubeProgram, vs);
+ glAttachShader(mCubeProgram, fs);
- glLinkProgram(mCubeProgram);
+ glLinkProgram(mCubeProgram);
- glGetProgramiv(mCubeProgram, GL_LINK_STATUS, &status);
- if(GL_FALSE == status) {
- GLint logLen;
- glGetProgramiv(mCubeProgram, GL_INFO_LOG_LENGTH, &logLen);
- glGetProgramInfoLog(mCubeProgram, logLen, NULL, glErrorLogBuffer);
- printf("Cube Shader Program Linking Error:\n%s\n", glErrorLogBuffer);
- }
+ glGetProgramiv(mCubeProgram, GL_LINK_STATUS, &status);
+ if(GL_FALSE == status) {
+ GLint logLen;
+ glGetProgramiv(mCubeProgram, GL_INFO_LOG_LENGTH, &logLen);
+ glGetProgramInfoLog(mCubeProgram, logLen, NULL, glErrorLogBuffer);
+ printf("Cube Shader Program Linking Error:\n%s\n", glErrorLogBuffer);
+ }
- glDetachShader(mCubeProgram, vs);
- glDetachShader(mCubeProgram, fs);
+ glDetachShader(mCubeProgram, vs);
+ glDetachShader(mCubeProgram, fs);
- glDeleteShader(vs);
- glDeleteShader(fs);
+ glDeleteShader(vs);
+ glDeleteShader(fs);
}
LCubeManager::~LCubeManager(){
glDeleteTextures(1, &mCubeTex);
- glDeleteVertexArrays(1, &mVao);
- glDeleteBuffers(1, &mVbo);
+ glDeleteVertexArrays(1, &mVao);
+ glDeleteBuffers(1, &mVbo);
glDeleteBuffers(1, &mIbo);
}
@@ -619,13 +619,13 @@ void LEditorScene::RenderSubmit(uint32_t m_width, uint32_t m_height){
}
}
- glFrontFace(GL_CW);
+ glFrontFace(GL_CW);
- glEnable(GL_DEPTH_TEST);
- glDepthFunc(GL_LEQUAL);
+ glEnable(GL_DEPTH_TEST);
+ glDepthFunc(GL_LEQUAL);
- glEnable(GL_BLEND);
- glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
+ glEnable(GL_BLEND);
+ glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
for(std::weak_ptr doorRef : mRoomDoors){
if (std::shared_ptr door = doorRef.lock())
diff --git a/src/ui/BooldozerApp.cpp b/src/ui/BooldozerApp.cpp
index 63e422d..035d93e 100644
--- a/src/ui/BooldozerApp.cpp
+++ b/src/ui/BooldozerApp.cpp
@@ -26,6 +26,7 @@ void DealWithGLErrors(GLenum source, GLenum type, GLuint id, GLenum severity, GL
bool LBooldozerApp::Setup() {
+ /*
mDiscordHandlers.ready = Discord::HandleReady;
mDiscordHandlers.disconnected = Discord::HandleDisconnected;
mDiscordHandlers.errored = Discord::HandleError;
@@ -40,6 +41,7 @@ bool LBooldozerApp::Setup() {
Discord::RichPresence.largeImageKey = "weeg";
Discord::RichPresence.startTimestamp = 0;
Discord_UpdatePresence(&Discord::RichPresence);
+ */
GCResourceManager.Init();
@@ -122,8 +124,10 @@ bool LBooldozerApp::Setup() {
bool LBooldozerApp::Teardown() {
+ /*
Discord_ClearPresence();
Discord_Shutdown();
+ */
GCResourceManager.Cleanup();
diff --git a/vcpkg.json b/vcpkg.json
new file mode 100644
index 0000000..7731150
--- /dev/null
+++ b/vcpkg.json
@@ -0,0 +1,9 @@
+{
+ "name" : "Booldozer",
+ "version-string" : "Booldozer-Win",
+ "dependencies": [
+ "icu",
+ "zlib",
+ "libpng"
+ ]
+}
\ No newline at end of file