Merge branch 'main' of https://github.com/antopilo/Nuake
This commit is contained in:
3
.gitmodules
vendored
3
.gitmodules
vendored
@@ -19,3 +19,6 @@
|
||||
[submodule "Nuake/dependencies/soloud"]
|
||||
path = Nuake/dependencies/soloud
|
||||
url = https://github.com/antopilo/soloud.git
|
||||
[submodule "Nuake/dependencies/optick"]
|
||||
path = Nuake/dependencies/optick
|
||||
url = https://github.com/bombomby/optick.git
|
||||
|
||||
BIN
Editor/resources/Fonts/FiraMono-Bold.ttf
Normal file
BIN
Editor/resources/Fonts/FiraMono-Bold.ttf
Normal file
Binary file not shown.
BIN
Editor/resources/Fonts/FiraMono-Regular.ttf
Normal file
BIN
Editor/resources/Fonts/FiraMono-Regular.ttf
Normal file
Binary file not shown.
BIN
Editor/resources/Fonts/Poppins-Regular.ttf
Normal file
BIN
Editor/resources/Fonts/Poppins-Regular.ttf
Normal file
Binary file not shown.
BIN
Editor/resources/Gizmos/bone.png
Normal file
BIN
Editor/resources/Gizmos/bone.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 6.2 KiB |
BIN
Editor/resources/Gizmos/camera.png
Normal file
BIN
Editor/resources/Gizmos/camera.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 9.9 KiB |
BIN
Editor/resources/Gizmos/light.png
Normal file
BIN
Editor/resources/Gizmos/light.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 7.4 KiB |
BIN
Editor/resources/Gizmos/player.png
Normal file
BIN
Editor/resources/Gizmos/player.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 7.8 KiB |
@@ -12,10 +12,10 @@ void FontManager::LoadFonts()
|
||||
ImFontConfig icons_config; icons_config.MergeMode = true; icons_config.PixelSnapH = true;
|
||||
|
||||
mFonts[Normal] = io.Fonts->AddFontFromFileTTF("resources/Fonts/fa-solid-900.ttf", 11.0f, &icons_config, icons_ranges);
|
||||
mFonts[Bold] = io.Fonts->AddFontFromFileTTF("resources/Fonts/OpenSans-Bold.ttf", 16.0);
|
||||
mFonts[LargeBold] = io.Fonts->AddFontFromFileTTF("resources/Fonts/OpenSans-Regular.ttf", 32);
|
||||
mFonts[Title] = io.Fonts->AddFontFromFileTTF("resources/Fonts/OpenSans-Bold.ttf", 50.0);
|
||||
mFonts[SubTitle] = io.Fonts->AddFontFromFileTTF("resources/Fonts/OpenSans-Regular.ttf", 24.0);
|
||||
mFonts[Bold] = io.Fonts->AddFontFromFileTTF("resources/Fonts/FiraMono-Bold.ttf", 16.0);
|
||||
mFonts[LargeBold] = io.Fonts->AddFontFromFileTTF("resources/Fonts/FiraMono-Regular.ttf", 32);
|
||||
mFonts[Title] = io.Fonts->AddFontFromFileTTF("resources/Fonts/FiraMono-Bold.ttf", 50.0);
|
||||
mFonts[SubTitle] = io.Fonts->AddFontFromFileTTF("resources/Fonts/FiraMono-Regular.ttf", 24.0);
|
||||
ImGui::GetIO().Fonts->AddFontDefault();
|
||||
icons_config.MergeMode = true;
|
||||
mFonts[BigIcon] = io.Fonts->AddFontFromFileTTF("resources/Fonts/fa-solid-900.ttf", 42.0f, &icons_config, icons_ranges);
|
||||
|
||||
@@ -430,8 +430,14 @@ void EditorSelectionPanel::DrawProjectPanel(Ref<Nuake::Project> project)
|
||||
|
||||
if (ImGui::Button("Locate"))
|
||||
{
|
||||
const std::string& locationPath = Nuake::FileDialog::OpenFile("TrenchBroom (.exe)\0TrenchBroom.exe\0");
|
||||
|
||||
if (!locationPath.empty())
|
||||
{
|
||||
project->TrenchbroomPath = locationPath;
|
||||
}
|
||||
}
|
||||
|
||||
ImGui::SameLine();
|
||||
ImGui::InputText("Trenchbroom Path", &project->TrenchbroomPath);
|
||||
}
|
||||
|
||||
@@ -62,7 +62,6 @@ namespace Nuake
|
||||
void FileSystemUI::DrawDirectory(Ref<Directory> directory, uint32_t drawId)
|
||||
{
|
||||
ImGui::PushFont(FontManager::GetFont(Icons));
|
||||
ImGui::PushStyleVar(ImGuiStyleVar_FrameRounding, 4.0f);
|
||||
const char* icon = ICON_FA_FOLDER;
|
||||
const std::string id = ICON_FA_FOLDER + std::string("##") + directory->name;
|
||||
if (ImGui::Button(id.c_str(), ImVec2(100, 100)))
|
||||
@@ -213,6 +212,10 @@ namespace Nuake
|
||||
{
|
||||
Editor->Selection = EditorSelection(file);
|
||||
}
|
||||
if (ImGui::IsItemHovered() && ImGui::IsMouseDoubleClicked(0))
|
||||
{
|
||||
OS::OpenTrenchbroomMap(file->GetAbsolutePath());
|
||||
}
|
||||
}
|
||||
ImGui::PopStyleVar();
|
||||
if (ImGui::BeginDragDropSource())
|
||||
@@ -734,7 +737,6 @@ namespace Nuake
|
||||
|
||||
ImGui::EndTable();
|
||||
}
|
||||
|
||||
}
|
||||
ImGui::EndChild();
|
||||
}
|
||||
|
||||
@@ -8,7 +8,6 @@ namespace Nuake {
|
||||
{
|
||||
if (ImGui::Begin("Project settings"))
|
||||
{
|
||||
|
||||
char buffer[256];
|
||||
memset(buffer, 0, sizeof(buffer));
|
||||
std::strncpy(buffer, Engine::GetProject()->Name.c_str(), sizeof(buffer));
|
||||
|
||||
1
Nuake/dependencies/optick
Submodule
1
Nuake/dependencies/optick
Submodule
Submodule Nuake/dependencies/optick added at 8abd28dee1
@@ -1,5 +1,6 @@
|
||||
#include "OS.h"
|
||||
#include "src/Window.h"
|
||||
#include "Engine.h"
|
||||
|
||||
#define GLFW_EXPOSE_NATIVE_WIN32
|
||||
#include "GLFW/glfw3.h"
|
||||
@@ -69,6 +70,11 @@ void OS::ShowInFileExplorer(const std::string& filePath)
|
||||
ShellExecuteA(nullptr, "open", "explorer.exe", ("/select," + std::string(filePath)).c_str(), nullptr, SW_SHOWDEFAULT);
|
||||
}
|
||||
|
||||
void OS::OpenTrenchbroomMap(const std::string& filePath)
|
||||
{
|
||||
ShellExecuteA(nullptr, nullptr, Engine::GetProject()->TrenchbroomPath.c_str(), filePath.c_str(), nullptr, SW_SHOW);
|
||||
}
|
||||
|
||||
void OS::OpenURL(const std::string& url)
|
||||
{
|
||||
ShellExecute(nullptr, nullptr, std::wstring(url.begin(), url.end()).c_str(), 0, 0, SW_SHOW);
|
||||
|
||||
@@ -12,9 +12,10 @@ namespace Nuake
|
||||
static std::string GetFromClipboard();
|
||||
static int GetTime();
|
||||
static void OpenIn(const std::string& filePath);
|
||||
static int OS::RenameFile(const Ref<File>& file, const std::string& newName);
|
||||
static int OS::RenameDirectory(const Ref<Directory>& dir, const std::string& newName);
|
||||
static int RenameFile(const Ref<File>& file, const std::string& newName);
|
||||
static int RenameDirectory(const Ref<Directory>& dir, const std::string& newName);
|
||||
static void ShowInFileExplorer(const std::string& filePath);
|
||||
static void OpenTrenchbroomMap(const std::string& filePath);
|
||||
static void OpenURL(const std::string& url);
|
||||
};
|
||||
}
|
||||
|
||||
@@ -279,6 +279,7 @@ namespace Nuake
|
||||
gBufferShader->SetUniformMat4f("u_View", mView);
|
||||
|
||||
// Models
|
||||
glDisable(GL_CULL_FACE);
|
||||
auto view = scene.m_Registry.view<TransformComponent, ModelComponent, VisibilityComponent>();
|
||||
for (auto e : view)
|
||||
{
|
||||
@@ -292,10 +293,10 @@ namespace Nuake
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
glCullFace(GL_FRONT);
|
||||
|
||||
Renderer::Flush(gBufferShader, false);
|
||||
|
||||
|
||||
// Quake BSPs
|
||||
auto quakeView = scene.m_Registry.view<TransformComponent, BSPBrushComponent, VisibilityComponent>();
|
||||
for (auto e : quakeView)
|
||||
@@ -310,6 +311,7 @@ namespace Nuake
|
||||
Renderer::SubmitMesh(b, transform.GetGlobalTransform(), (uint32_t)e);
|
||||
}
|
||||
}
|
||||
|
||||
Renderer::Flush(gBufferShader, false);
|
||||
|
||||
RenderCommand::Disable(RendererEnum::FACE_CULL);
|
||||
|
||||
@@ -19,9 +19,10 @@ namespace Nuake
|
||||
{
|
||||
std::vector<Vertex> quadVertices =
|
||||
{
|
||||
{ Vector3(-1.0f, -1.0f, 0.0f), Vector2(0, 0), Vector3(0, 0, -1) },
|
||||
{ Vector3(1.0f, 1.0f, 0.0f), Vector2(1.0f, 1.0f), Vector3(0, 0, -1) },
|
||||
{ Vector3(-1.0f, 1.0f, 0.0f), Vector2(0.0f, 1.0f), Vector3(0, 0, -1) },
|
||||
{ Vector3(1.0f, 1.0f, 0.0f), Vector2(1.0f, 1.0f), Vector3(0, 0, -1) },
|
||||
{ Vector3(-1.0f, -1.0f, 0.0f), Vector2(0, 0), Vector3(0, 0, -1) },
|
||||
|
||||
{ Vector3(1.0f, -1.0f, 0.0f), Vector2(1.0f, 0.0f), Vector3(0, 0, -1) },
|
||||
{ Vector3(-1.0f, -1.0f, 0.0f), Vector2(0.0f, 0.0f), Vector3(0, 0, -1) },
|
||||
{ Vector3(1.0f, 1.0f, 0.0f), Vector2(1.0f, 1.0f), Vector3(0, 0, -1) }
|
||||
|
||||
@@ -52,6 +52,7 @@ namespace Nuake {
|
||||
{
|
||||
BEGIN_SERIALIZE();
|
||||
SERIALIZE_VAL(CurrentSkyType);
|
||||
SERIALIZE_VEC4(AmbientColor);
|
||||
SERIALIZE_VAL(VolumetricFog);
|
||||
SERIALIZE_VAL(VolumetricStepCount);
|
||||
SERIALIZE_VEC4(AmbientColor);
|
||||
@@ -63,6 +64,8 @@ namespace Nuake {
|
||||
{
|
||||
if (j.contains("CurrentSkyType"))
|
||||
CurrentSkyType = j["CurrentSkyType"];
|
||||
if (j.contains("AmbientColor"))
|
||||
DESERIALIZE_VEC4(j["AmbientColor"], AmbientColor);
|
||||
if (j.contains("VolumetricFog"))
|
||||
VolumetricFog = j["VolumetricFog"];
|
||||
if (j.contains("VolumetricStepCount"))
|
||||
|
||||
@@ -101,8 +101,7 @@ namespace Nuake
|
||||
}
|
||||
|
||||
Logger::Log("Entity not found with id: " + std::to_string(id), "scene", CRITICAL);
|
||||
|
||||
assert("Entity not found");
|
||||
return Entity{ (entt::entity)0, this };
|
||||
}
|
||||
|
||||
bool Scene::OnInit()
|
||||
@@ -388,7 +387,6 @@ namespace Nuake
|
||||
sceneCopy->Path = Path;
|
||||
|
||||
json serializedScene = Serialize();
|
||||
|
||||
sceneCopy->Deserialize(serializedScene);
|
||||
return sceneCopy;
|
||||
}
|
||||
@@ -485,7 +483,7 @@ namespace Nuake
|
||||
|
||||
Entity skeletonRootEntity = CreateEntity(skeletonRoot.Name);
|
||||
skeletonRootEntity.AddComponent<BoneComponent>().Name = skeletonRoot.Name;
|
||||
skeletonRoot.EntityHandle = skeletonRootEntity.GetHandle();
|
||||
skeletonRoot.EntityHandle = skeletonRootEntity.GetID();
|
||||
entity.AddChild(skeletonRootEntity);
|
||||
|
||||
Vector3 bonePosition;
|
||||
@@ -510,7 +508,7 @@ namespace Nuake
|
||||
boneEntity.AddComponent<BoneComponent>();
|
||||
entity.AddChild(boneEntity);
|
||||
|
||||
c.EntityHandle = boneEntity.GetHandle();
|
||||
c.EntityHandle = boneEntity.GetID();
|
||||
|
||||
Vector3 bonePosition;
|
||||
Quat boneRotation;
|
||||
|
||||
@@ -50,9 +50,9 @@ namespace Nuake
|
||||
auto& animationTrack = animation->GetTrack(boneName);
|
||||
|
||||
Entity& boneEntity = m_Scene->GetEntity(boneName);
|
||||
Entity& boneEnt = Entity{ (entt::entity)bone.EntityHandle, m_Scene };
|
||||
Entity& boneEnt = m_Scene->GetEntityByID(bone.EntityHandle);
|
||||
///assert(boneEnt.GetHandle() == boneEntity.GetHandle());
|
||||
if (boneEnt.GetHandle() != 0)
|
||||
if (boneEnt.IsValid())
|
||||
{
|
||||
auto& transformComponent = boneEnt.GetComponent<TransformComponent>();
|
||||
bone.FinalTransform = transformComponent.GetGlobalTransform() * bone.Offset;
|
||||
|
||||
@@ -260,7 +260,7 @@ namespace Nuake
|
||||
{
|
||||
ImGui::CreateContext();
|
||||
ImGuiIO& io = ImGui::GetIO(); (void)io;
|
||||
io.Fonts->AddFontFromFileTTF("resources/Fonts/OpenSans-Regular.ttf", 16.0);
|
||||
io.Fonts->AddFontFromFileTTF("resources/Fonts/Poppins-Regular.ttf", 16.0);
|
||||
|
||||
io.ConfigFlags |= ImGuiConfigFlags_DockingEnable;
|
||||
ImGui::StyleColorsDark();
|
||||
|
||||
Reference in New Issue
Block a user