Skip to content

Commit

Permalink
Big update. Code Cleanup. Async console. Buf fix.
Browse files Browse the repository at this point in the history
  • Loading branch information
UnrealKaraulov committed Mar 25, 2024
1 parent b74a7e1 commit e20fa03
Show file tree
Hide file tree
Showing 47 changed files with 1,009 additions and 1,087 deletions.
138 changes: 10 additions & 128 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -21,8 +21,6 @@ set(SOURCE_FILES
src/bsp/bsptypes.h src/bsp/bsptypes.cpp
src/bsp/Entity.h src/bsp/Entity.cpp
src/bsp/Keyvalue.h src/bsp/Keyvalue.cpp
src/bsp/Wad.h src/bsp/Wad.cpp
src/bsp/Sprite.h src/bsp/Sprite.cpp
src/bsp/remap.h src/bsp/remap.cpp

# Math and stuff
Expand Down Expand Up @@ -70,17 +68,24 @@ set(SOURCE_FILES
src/util/lang_defs.h
src/util/lang.h src/util/lang.cpp
src/util/quantizer.h src/util/quantizer.cpp
src/util/log.h src/util/log.cpp

# 3D model viewer
src/mdl/mdl_studio.h src/mdl/mdl_studio.cpp

# OPENFILEDIALOG
src/filedialog/stb_image.h
src/filedialog/ImFileDialog.h src/filedialog/ImFileDialog.cpp

src/res/Wad.h src/res/Wad.cpp
src/res/Sprite.h src/res/Sprite.cpp
src/res/XASH_csm.h src/res/XASH_csm.cpp
src/res/JACK_jmf.h
)

include_directories(src)
include_directories(src/bsp)
include_directories(src/res)
include_directories(src/cli)
include_directories(src/data)
include_directories(src/editor)
Expand All @@ -102,132 +107,7 @@ add_subdirectory(glfw)

set(CMAKE_CXX_STANDARD_REQUIRED True)

if(MSVC)
# compile using the static runtime

add_definitions(-DGLEW_STATIC)
add_definitions(-DNDEBUG)

set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /std:c++latest")
set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /MD /wd4244 /wd4018")
set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} /MDd /wd4244 /wd4018 /W0")

set_property(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} PROPERTY VS_STARTUP_PROJECT bspguy)

target_link_libraries(${PROJECT_NAME} fmt::fmt glfw)

if(CMAKE_SIZEOF_VOID_P EQUAL 8)
target_link_libraries(${PROJECT_NAME} opengl32 ${CMAKE_CURRENT_SOURCE_DIR}/glew/lib/Release/x64/glew32s.lib)
elseif(CMAKE_SIZEOF_VOID_P EQUAL 4)
target_link_libraries(${PROJECT_NAME} opengl32 ${CMAKE_CURRENT_SOURCE_DIR}/glew/lib/Release/Win32/glew32s.lib)
endif()

source_group("Header Files\\bsp" FILES src/bsp/forcecrc32.h
src/bsp/BspMerger.h
src/bsp/Bsp.h
src/bsp/bsplimits.h
src/bsp/bsptypes.h
src/bsp/Entity.h
src/bsp/Keyvalue.h
src/bsp/Wad.h
src/bsp/remap.h)

source_group("Source Files\\bsp" FILES src/bsp/forcecrc32.cpp
src/bsp/BspMerger.cpp
src/bsp/Bsp.cpp
src/bsp/bsplimits.cpp
src/bsp/bsptypes.cpp
src/bsp/Entity.cpp
src/bsp/Keyvalue.cpp
src/bsp/Wad.cpp
src/bsp/remap.cpp)

source_group("Header Files\\cli" FILES src/cli/CommandLine.h
src/cli/ProgressMeter.h)

source_group("Source Files\\cli" FILES src/cli/CommandLine.cpp
src/cli/ProgressMeter.cpp)

source_group("Header Files\\gl" FILES src/gl/Shader.h
src/gl/ShaderProgram.h
src/gl/VertexBuffer.h
src/gl/Texture.h
src/gl/primitives.h
src/gl/shaders.h)

source_group("Source Files\\gl" FILES src/gl/Shader.cpp
src/gl/ShaderProgram.cpp
src/gl/VertexBuffer.cpp
src/gl/Texture.cpp
src/gl/primitives.cpp
src/gl/shaders.cpp)

source_group("Header Files\\editor" FILES src/editor/Settings.h
src/editor/BspRenderer.h
src/editor/LightmapNode.h
src/editor/Renderer.h
src/editor/Fgd.h
src/editor/Gui.h
src/editor/PointEntRenderer.h
src/editor/Command.h
src/editor/Clipper.h)

source_group("Source Files\\editor" FILES src/editor/Settings.cpp
src/editor/BspRenderer.cpp
src/editor/LightmapNode.cpp
src/editor/Renderer.cpp
src/editor/Fgd.cpp
src/editor/Gui.cpp
src/editor/PointEntRenderer.cpp
src/editor/Command.cpp
src/editor/Clipper.cpp)

source_group("Header Files\\qtools" FILES src/qtools/rad.h
src/qtools/vis.h
src/qtools/winding.h)

source_group("Source Files\\qtools" FILES src/qtools/rad.cpp
src/qtools/vis.cpp
src/qtools/winding.cpp)

source_group("Header Files\\util" FILES src/util/util.h
src/util/vectors.h
src/util/mat4x4.h)

source_group("Source Files\\util" FILES src/util/util.cpp
src/util/vectors.cpp
src/util/mat4x4.cpp)

source_group("Header Files\\util\\lib" FILES src/util/quantizer.h
src/util/ini.h
src/util/INIReader.h
src/util/lodepng.h)

source_group("Source Files\\util\\lib" FILES imgui/imgui.cpp
imgui/imgui_tables.cpp
imgui/imgui_widgets.cpp
imgui/imgui_draw.cpp
imgui/backends/imgui_impl_glfw.cpp
imgui/backends/imgui_impl_opengl3.cpp
imgui/misc/cpp/imgui_stdlib.cpp
src/util/lodepng.cpp
src/util/quantizer.cpp
src/util/ini.c
src/util/INIReader.cpp)

source_group("Header Files\\mdl" FILES
src/mdl/mdl_studio.h)

source_group("Source Files\\mdl" FILES
src/mdl/mdl_studio.cpp)

source_group("Header Files\\filedialog" FILES
src/filedialog/stb_image.h
src/filedialog/ImFileDialog.h)

source_group("Source Files\\filedialog" FILES src/filedialog/ImFileDialog.c)
add_definitions(-DNOMINMAX)
else()
if(NOT MSVC)
add_definitions(-DNDEBUG)
if(WIN32)
if(CMAKE_SIZEOF_VOID_P EQUAL 8)
Expand All @@ -254,4 +134,6 @@ else()
-Wno-unused-result -Wno-unused-function -Wno-write-strings -Wno-switch -Wno-enum-compare -Wno-sign-compare\
-Wno-format -Wno-ignored-attributes -Wno-strict-aliasing -fno-plt -fno-devirtualize -Wno-unused-local-typedefs\
-Wno-unused-but-set-variable -Wno-stringop-truncation -Wno-format-truncation -Wno-class-memaccess")
else()
message(FATAL_ERROR "Use vs-project/bspguy.sln for Visual Studio")
endif()
29 changes: 14 additions & 15 deletions src/bsp/Bsp.cpp
Original file line number Diff line number Diff line change
@@ -1,27 +1,23 @@
#include "lang.h"
#include "Bsp.h"
#include "lang.h"
#include "util.h"
#include <algorithm>
#include <sstream>
#include "log.h"
#include "lodepng.h"
#include "rad.h"
#include "vis.h"
#include "remap.h"
#include "Settings.h"
#include "Renderer.h"
#include "BspRenderer.h"
#include <set>
#include <winding.h>
#include "Wad.h"
#include <vector>
#include "winding.h"
#include "forcecrc32.h"
#include "quantizer.h"
#include <execution>
#include <unordered_set>
#include <fstream>
#include <deque>
#include "Wad.h"

typedef std::map< std::string, vec3 > mapStringToVector;
#include "JACK_jmf.h"
#include "XASH_csm.h"

#include <execution>

vec3 default_hull_extents[MAX_MAP_HULLS] = {
vec3(0.0f, 0.0f, 0.0f), // hull 0
Expand Down Expand Up @@ -9957,10 +9953,13 @@ void Bsp::ExportToObjWIP(const std::string& path, int iscale, bool lightmapmode,
}
else
{
csm_export->write(path + bsp_name + ".csm");

print_log(PRINT_GREEN, "VALIDATE START\n");
csm_export->validate();
print_log(PRINT_GREEN, "VALIDATE END\n");
csm_export->write(path + bsp_name + ".csm");/*

/*
csm_export->read(path + bsp_name + ".csm");
csm_export->validate();*/
}
Expand Down Expand Up @@ -12323,7 +12322,7 @@ void Bsp::setBspRender(BspRenderer* rnd)

void Bsp::decalShoot(vec3 pos, const std::string& texname)
{
if (!renderer || !renderer->faceMaths)
if (!renderer || renderer->faceMaths.empty())
return;

Texture* tex = g_app->giveMeTexture(texname);
Expand All @@ -12333,7 +12332,7 @@ void Bsp::decalShoot(vec3 pos, const std::string& texname)
int bestMath = -1;
float bestDist = 30.01f;

for (int faceIdx = 0; faceIdx < faceCount; faceIdx++)
for (int faceIdx = 0; faceIdx < renderer->faceMaths.size(); faceIdx++)
{
FaceMath& face = renderer->faceMaths[faceIdx];
if (renderer->pickFaceMath(pos + (face.normal * 0.01f), face.normal * -0.01f, face, bestDist))
Expand Down
4 changes: 1 addition & 3 deletions src/bsp/BspMerger.cpp
Original file line number Diff line number Diff line change
@@ -1,9 +1,7 @@
#include "lang.h"
#include "BspMerger.h"
#include <algorithm>
#include <map>
#include <set>
#include "vis.h"
#include "log.h"


Bsp* BspMerger::merge(std::vector<Bsp*> maps, const vec3& gap, const std::string& output_name, bool noripent, bool noscript, bool nomergestyles)
Expand Down
3 changes: 0 additions & 3 deletions src/bsp/Entity.cpp
Original file line number Diff line number Diff line change
@@ -1,8 +1,5 @@
#include <string.h>
#include <string>
#include "Entity.h"
#include "util.h"
#include <algorithm>


void Entity::addKeyvalue(const std::string key, const std::string value, bool multisupport)
Expand Down
1 change: 0 additions & 1 deletion src/bsp/Keyvalue.cpp
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
#include "Keyvalue.h"
#include "util.h"
#include <sstream>

Keyvalues::Keyvalues(std::string& line)
{
Expand Down
2 changes: 0 additions & 2 deletions src/bsp/bsptypes.cpp
Original file line number Diff line number Diff line change
@@ -1,6 +1,4 @@
#include "bsptypes.h"
#include <math.h>
#include <string.h>

BSPEDGE16::BSPEDGE16()
{
Expand Down
2 changes: 1 addition & 1 deletion src/bsp/remap.cpp
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#pragma once
#include "remap.h"
#include "Bsp.h"
#include "log.h"

STRUCTCOUNT::STRUCTCOUNT()
{
Expand Down
3 changes: 3 additions & 0 deletions src/cli/CommandLine.cpp
Original file line number Diff line number Diff line change
@@ -1,11 +1,14 @@
#include "lang.h"
#include "CommandLine.h"
#include "log.h"

#ifdef WIN32
#include <Windows.h>
#ifdef WIN_XP_86
#include <shellapi.h>
#endif
#endif

CommandLine::CommandLine(int argc, char* argv[])
{
askingForHelp = false;
Expand Down
5 changes: 1 addition & 4 deletions src/cli/ProgressMeter.cpp
Original file line number Diff line number Diff line change
@@ -1,9 +1,6 @@
#include "lang.h"
#include "ProgressMeter.h"
#include <string>
#include <stdio.h>
#include "util.h"

#include "log.h"
#include "Settings.h"
#include "Renderer.h"

Expand Down
Loading

0 comments on commit e20fa03

Please sign in to comment.