Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
75 commits
Select commit Hold shift + click to select a range
a93e4f6
[WIP] graphics: restore
Demonese Dec 8, 2025
607ed6e
[WIP] graphics: update design
Demonese Dec 14, 2025
38b79d0
[WIP] graphics: rename upload
Demonese Dec 14, 2025
9b5e2f0
image: alpha mode
Demonese Dec 14, 2025
da8c916
[WIP] graphics: graphics resource
Demonese Dec 14, 2025
70d763f
dev: replace CORE_NO_VIRTUAL_TABLE with CORE_INTERFACE
Demonese Jan 21, 2026
b146b51
[WIP] application and main-loop
Demonese Jan 21, 2026
23f07e2
window: ApplicationManager
Demonese Jan 23, 2026
7f5fb86
dev: small header size
Demonese Jan 23, 2026
9046be1
application: refactor application architecture, no longer use AppModel
Demonese Jan 23, 2026
f385d86
application: remove ApplicationModel, move FrameRateController to win…
Demonese Jan 24, 2026
942b15a
application: small header
Demonese Jan 24, 2026
291da45
window: move Display and Window to window-system
Demonese Jan 26, 2026
0296264
platform windows: move to win32
Demonese Jan 26, 2026
99f72f3
graphics: replace Microsoft::WRL::ComPtr with win32::com_ptr
Demonese Jan 26, 2026
e1b0424
graphics: remove unused dependencies
Demonese Jan 26, 2026
a64ebb2
reference-counted: impl support multiple interface
Demonese Jan 28, 2026
1b252d5
luastg: simplify OnLoadMainScriptAndFiles
Demonese Jan 28, 2026
66bfeab
dev: cleanup headers
Demonese Jan 28, 2026
da08bb8
Revert "dev: cleanup headers"
Demonese Jan 28, 2026
eefb802
graphics: bad assert
Demonese Jan 28, 2026
2235e5f
graphics: gfx vertex/index buffer
Demonese Jan 28, 2026
90742e7
graphics: gfx vertex/index buffer 2
Demonese Jan 28, 2026
08c4174
graphics: gfx vertex/index buffer 3
Demonese Jan 28, 2026
9a1a404
graphics: I think...
Demonese Jan 29, 2026
409e3aa
graphics: remove hard to maintain i18n; migrate to core::Logger
Demonese Jan 29, 2026
9cf6be3
graphics: simplify set debug name
Demonese Jan 29, 2026
1ae8af7
graphics: fix warning
Demonese Jan 29, 2026
faba55c
graphics: fix compile error
Demonese Jan 29, 2026
ec50c64
graphics: remove dependencies: spdlog, imgui
Demonese Jan 29, 2026
757f713
graphics: remove gHRLastError, bHR, HResultToBool
Demonese Jan 29, 2026
7b0a489
graphics: lua dwrite: simplify printFontCollectionInfo, add error han…
Demonese Jan 29, 2026
c97bbf7
graphics: remove VersionHelpers.h
Demonese Jan 29, 2026
7781f1e
graphics: remove timeapi.h
Demonese Jan 29, 2026
edfcd7d
graphics: remove Unknwn.h
Demonese Jan 29, 2026
cb193e4
graphics: preparing to move directory
Demonese Jan 29, 2026
8904c67
graphics: move legacy Core to graphics
Demonese Jan 29, 2026
1e1cc57
graphics: cmake: merge legacy Core into Core.Graphics
Demonese Jan 29, 2026
abb0cd4
graphics: imgui: compile shaders using fxc
Demonese Jan 29, 2026
c9892c8
graphics: compile shaders using fxc, remove custom ShaderCompiler tool
Demonese Jan 29, 2026
6fc1fa2
graphics: GraphicsDeviceManager
Demonese Jan 29, 2026
90e7b0b
graphics: update GraphicsDeviceManager
Demonese Jan 29, 2026
dc26ac4
graphics: SwapChain createCompositionSwapChain required allow-tearing
Demonese Jan 29, 2026
85b4525
graphics: simplify device create
Demonese Jan 29, 2026
04cc901
graphics: luastg: update checkEngineRuntimeRequirement
Demonese Jan 29, 2026
108d452
graphics: GraphicsDeviceManagerDXGI::refreshAndFindAdapter auto relea…
Demonese Jan 29, 2026
e20b269
graphics: log device feature and format support
Demonese Jan 29, 2026
d7f479a
graphics: remove validateDXGIFactory
Demonese Jan 30, 2026
277e984
graphics: remove some internal Device getter
Demonese Jan 30, 2026
89496ea
graphics: redesign device create (D3D11CreateDevice)
Demonese Jan 30, 2026
f6a1d59
graphics: remove GraphicsDevice::testMultiPlaneOverlay
Demonese Jan 30, 2026
e78ad94
graphics: simplify GraphicsDevice format check
Demonese Jan 30, 2026
40090fb
graphics: cleanup
Demonese Jan 30, 2026
e7486e3
graphics: dwrite should be an independent component
Demonese Jan 30, 2026
0421427
graphics: refactor the device header file structure
Demonese Jan 30, 2026
3ad9b1a
graphics: refactor the device source file structure
Demonese Jan 30, 2026
666b445
graphics: create a new factory object when DXGI is required to ensure…
Demonese Jan 30, 2026
6ad72b7
graphics: device create static link to d2d1
Demonese Jan 30, 2026
2b6913b
graphics: debug layer can be enabled/disabled via CMake option LUASTG…
Demonese Jan 30, 2026
67293f8
configurer: fix compile error
Demonese Jan 30, 2026
cec5df1
configurer: make it runnable on software devices
Demonese Jan 30, 2026
76e52b1
graphics: add doc ref
Demonese Jan 30, 2026
fb5a5eb
graphics: migrate core::Graphics::IDevice to core::IGraphicsDevice
Demonese Jan 30, 2026
1c98d46
graphics: add GraphicsBuffer
Demonese Jan 30, 2026
7c7e5e4
graphics: migrate core::Graphics::IBuffer to core::IGraphicsBuffer
Demonese Jan 30, 2026
910c529
graphics: remove unused header
Demonese Jan 30, 2026
99defe8
graphics: migrate core::Graphics::IDepthStencilView to core::IDepthSt…
Demonese Feb 1, 2026
03e9319
graphics: init IGraphicsSampler
Demonese Feb 1, 2026
555bedf
graphics: migrate core::Graphics::ISamplerState to core::IGraphicsSam…
Demonese Feb 1, 2026
2fa09b4
graphics: remove unused header
Demonese Feb 1, 2026
e82c047
graphics: init format
Demonese Feb 1, 2026
d13f08c
graphics: init format
Demonese Feb 1, 2026
1d4434f
graphics: init format
Demonese Feb 1, 2026
07c4544
graphics: remove r10_g10_b10_a2_uint
Demonese Feb 1, 2026
fcc4fd5
graphics: thinking... Texture2D
Demonese Feb 1, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
1 change: 0 additions & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,6 @@ include(cmake/import/all.cmake)
include(cmake/build/all.cmake)
add_subdirectory(external)
include(cmake/packages.lua.cmake)
include(LuaSTG/shaders.cmake)
add_subdirectory(imgui)

add_subdirectory(engine)
Expand Down
10 changes: 5 additions & 5 deletions LuaSTG/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,8 +1,5 @@
# LuaSTG configurer

add_subdirectory(Shader)
include(Platform.cmake)
include(Core.cmake)
add_subdirectory(Configurer)

# LuaSTG Engine
Expand Down Expand Up @@ -35,6 +32,8 @@ set(LUASTG_ENGINE_SOURCES
LuaSTG/Debugger/ImGuiExtension.h
LuaSTG/Debugger/Logger.cpp
LuaSTG/Debugger/Logger.hpp
LuaSTG/Debugger/FrameQuery.hpp
LuaSTG/Debugger/FrameQuery.cpp

LuaSTG/GameObject/GameObject.cpp
LuaSTG/GameObject/GameObject.hpp
Expand Down Expand Up @@ -210,10 +209,9 @@ target_link_libraries(LuaSTG PRIVATE
utility
utf8
win32
PlatformAPI
beautiful_win32_api
DirectX::ToolKitMini
Microsoft::DirectXTexMini
Core
xmath
lua51_static
lua_plus
Expand All @@ -235,6 +233,8 @@ target_link_libraries(LuaSTG PRIVATE
Core.Clipboard
Core.ShellIntegration
Core.Audio
Core.WindowSystem
Core.Graphics
LuaSTG.InternalLuaScriptsFileSystem
)

Expand Down
2 changes: 1 addition & 1 deletion LuaSTG/Configurer/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -18,12 +18,12 @@ target_link_libraries(Setting PRIVATE
dxgi.lib
spdlog
utf8
win32
beautiful_win32_api
imgui
imgui_impl_win32
imgui_impl_dx11
nlohmann_json
PlatformAPI
)

set(LUASTG_SETTING_BUILD_OUTPUT_DIR ${CMAKE_BINARY_DIR}/bin)
Expand Down
45 changes: 33 additions & 12 deletions LuaSTG/Configurer/Main.cpp
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#include "win32/win32.hpp"
#include "win32/abi.hpp"
#include "Platform/WindowTheme.hpp"
#include "windows/WindowTheme.hpp"
#include "imgui.h"
#include "imgui_stdlib.h"
#include "imgui_freetype.h"
Expand Down Expand Up @@ -601,8 +601,8 @@ struct Window
}
void LayoutWindowTab() {
if (show_advance) {
showTextFieldEdit(config_json, "/window/title"_json_pointer, "config-window-title"sv, LUASTG_INFO ""s);
showCheckBoxEdit(config_json, "/window/cursor_visible"_json_pointer, "config-window-cursor-visible"sv, true);
showTextFieldEdit(config_json, "/window/title"_json_pointer, "config-window-title"sv, LUASTG_INFO ""s);
showCheckBoxEdit(config_json, "/window/cursor_visible"_json_pointer, "config-window-cursor-visible"sv, true);
}
showCheckBoxEdit(config_json, "/window/allow_window_corner"_json_pointer, "config-window-allow-window-corner"sv, true);
}
Expand All @@ -612,7 +612,7 @@ struct Window
ImGui::TextUnformatted(i18n_c_str("config-graphics-system-preferred-device-name"sv));
ImGui::PushID(i18n_c_str("config-graphics-system-preferred-device-name"sv));
ImGui::SetNextItemWidth(-FLT_MIN);
if (ImGui::BeginCombo("##", !preferred_device_name.empty() ? preferred_device_name.c_str() : i18n_c_str("common-default2"sv))) {
if (ImGui::BeginCombo("##", !preferred_device_name.empty() ? preferred_device_name.c_str() : i18n_c_str("common-default2"sv))) {
if (ImGui::Selectable(i18n_c_str("common-default2"sv), preferred_device_name.empty())) {
config_json["/graphics_system/preferred_device_name"_json_pointer] = ""sv;
}
Expand Down Expand Up @@ -726,10 +726,7 @@ struct Window
{
throw std::runtime_error("CreateDXGIFactory1 failed.");
}
if (FAILED(dxgi_factory->EnumAdapters1(0, &dxgi_adapter)))
{
throw std::runtime_error("IDXGIFactory1::EnumAdapters1 failed.");
}
dxgi_factory->EnumAdapters1(0, &dxgi_adapter);

dxgi_adapter_list.clear();
Microsoft::WRL::ComPtr<IDXGIFactory6> dxgi_factory6;
Expand Down Expand Up @@ -759,10 +756,34 @@ struct Window
D3D_FEATURE_LEVEL_10_1,
D3D_FEATURE_LEVEL_10_0,
};
hr = D3D11CreateDevice(
dxgi_adapter.Get(), D3D_DRIVER_TYPE_UNKNOWN, NULL,
D3D11_CREATE_DEVICE_BGRA_SUPPORT, target_levels, 3, D3D11_SDK_VERSION,
&d3d11_device, &d3d11_feature_level, &d3d11_devctx);
hr = E_FAIL;
if (dxgi_adapter) {
hr = D3D11CreateDevice(
dxgi_adapter.Get(), D3D_DRIVER_TYPE_UNKNOWN, NULL,
D3D11_CREATE_DEVICE_BGRA_SUPPORT, target_levels, 3, D3D11_SDK_VERSION,
&d3d11_device, &d3d11_feature_level, &d3d11_devctx);
}
if (FAILED(hr))
{
hr = D3D11CreateDevice(
nullptr, D3D_DRIVER_TYPE_WARP, NULL,
D3D11_CREATE_DEVICE_BGRA_SUPPORT, target_levels, 3, D3D11_SDK_VERSION,
&d3d11_device, &d3d11_feature_level, &d3d11_devctx);
}
if (FAILED(hr))
{
hr = D3D11CreateDevice(
nullptr, D3D_DRIVER_TYPE_SOFTWARE, NULL,
D3D11_CREATE_DEVICE_BGRA_SUPPORT, target_levels, 3, D3D11_SDK_VERSION,
&d3d11_device, &d3d11_feature_level, &d3d11_devctx);
}
if (FAILED(hr))
{
hr = D3D11CreateDevice(
nullptr, D3D_DRIVER_TYPE_REFERENCE, NULL,
D3D11_CREATE_DEVICE_BGRA_SUPPORT, target_levels, 3, D3D11_SDK_VERSION,
&d3d11_device, &d3d11_feature_level, &d3d11_devctx);
}
if (FAILED(hr))
{
throw std::runtime_error("D3D11CreateDevice failed.");
Expand Down
127 changes: 0 additions & 127 deletions LuaSTG/Core.cmake

This file was deleted.

74 changes: 0 additions & 74 deletions LuaSTG/Core/ApplicationModel.hpp

This file was deleted.

Loading