Compare commits
55 Commits
e20853fdb1
...
v0.0.1
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
9005863300 | ||
|
|
60a1683255 | ||
|
|
e85781c29e | ||
|
|
580c05c37b | ||
|
|
2c7bb51658 | ||
|
|
3f80057682 | ||
|
|
8f868529f8 | ||
|
|
8e6da66609 | ||
|
|
ae4e81c937 | ||
|
|
ed1dc1eed9 | ||
|
|
50dc6c8195 | ||
|
|
bbbe7adb3a | ||
|
|
09a70ab98d | ||
|
|
84c0733a77 | ||
|
|
2f1bb884d7 | ||
|
|
9d36bfd13f | ||
|
|
734caada6c | ||
|
|
3ae209819a | ||
|
|
e3678118b4 | ||
|
|
d654c99a8e | ||
|
|
ee4729d31e | ||
|
|
32746e7f95 | ||
|
|
dac1551039 | ||
|
|
9a395bd741 | ||
|
|
e106427ebc | ||
|
|
6a858f49e6 | ||
|
|
87af2e752e | ||
|
|
959728aee3 | ||
|
|
ad63b7d9ed | ||
|
|
d898960494 | ||
|
|
073bb47586 | ||
|
|
0abc3dbfab | ||
|
|
820442c4d6 | ||
|
|
9145e739ba | ||
|
|
988f7f8805 | ||
|
|
e4dcfeccb9 | ||
|
|
c808fe2903 | ||
|
|
f603d3b58f | ||
|
|
1a312832ea | ||
|
|
85c45f0929 | ||
|
|
6abfe9f27b | ||
|
|
a84b35c105 | ||
|
|
8db8ca679e | ||
|
|
83bb2c6932 | ||
|
|
4d5c9fc614 | ||
|
|
c9c0a328dc | ||
|
|
7ab3e7434a | ||
|
|
fe4b54699b | ||
|
|
b69f9c5305 | ||
|
|
adc6676dc9 | ||
|
|
43c66d887b | ||
|
|
6970df2ead | ||
|
|
b24578ad70 | ||
|
|
2463a5f001 | ||
|
|
697ae61109 |
@@ -9,6 +9,7 @@ jobs:
|
|||||||
force: false
|
force: false
|
||||||
condition: SUCCESSFUL
|
condition: SUCCESSFUL
|
||||||
optional: false
|
optional: false
|
||||||
|
jobExecutor: terra-executor
|
||||||
triggers:
|
triggers:
|
||||||
- type: BranchUpdateTrigger
|
- type: BranchUpdateTrigger
|
||||||
branches: main
|
branches: main
|
||||||
@@ -23,6 +24,15 @@ jobs:
|
|||||||
timeout: 14400
|
timeout: 14400
|
||||||
- name: Compile for Linux
|
- name: Compile for Linux
|
||||||
steps:
|
steps:
|
||||||
|
- type: SetupCacheStep
|
||||||
|
name: conan-cache
|
||||||
|
key: conan-cache-@file:conanfile.txt@
|
||||||
|
paths:
|
||||||
|
- /root/.conan2
|
||||||
|
uploadStrategy: UPLOAD_IF_CHANGED
|
||||||
|
changeDetectionExcludes: /root/.conan2/p/*/dl /root/.conan2/logs
|
||||||
|
condition: SUCCESSFUL
|
||||||
|
optional: true
|
||||||
- type: CheckoutStep
|
- type: CheckoutStep
|
||||||
name: Checkout
|
name: Checkout
|
||||||
cloneCredential:
|
cloneCredential:
|
||||||
@@ -34,23 +44,25 @@ jobs:
|
|||||||
- type: CommandStep
|
- type: CommandStep
|
||||||
name: Compile for Linux
|
name: Compile for Linux
|
||||||
runInContainer: true
|
runInContainer: true
|
||||||
image: erriss/erris-build_tools:V0.4
|
image: erriss/erris-build_tools:V0.7
|
||||||
interpreter:
|
interpreter:
|
||||||
type: DefaultInterpreter
|
type: DefaultInterpreter
|
||||||
commands: |
|
commands: |
|
||||||
conan profile detect --force
|
#git clone --depth 1 https://github.com/dotnet/runtime.git
|
||||||
|
#cd runtime
|
||||||
|
#./build.sh -c Release -subset host
|
||||||
|
|
||||||
|
#cp artifacts/bin/native/net10.0-linux-Release-x64/nethost/libnethost.a /onedev-build/workspace/lib/
|
||||||
|
|
||||||
git submodule update --init --recursive
|
git submodule update --init --recursive
|
||||||
conan install . --output-folder=. --build=missing -s build_type=${BUILD_TYPE}
|
|
||||||
|
conan profile detect --force
|
||||||
|
conan install . -c tools.system.package_manager:mode=install --output-folder=build --build=missing -s build_type=${BUILD_TYPE}
|
||||||
|
|
||||||
cmake -S . -G Ninja -B build -DCMAKE_BUILD_TYPE=${BUILD_TYPE} -DCMAKE_TOOLCHAIN_FILE=conan_toolchain.cmake
|
cmake -S . -G Ninja -B build -DCMAKE_BUILD_TYPE=${BUILD_TYPE} -DCMAKE_TOOLCHAIN_FILE=conan_toolchain.cmake
|
||||||
|
|
||||||
echo ====== Building =============================
|
echo ====== Building =============================
|
||||||
cmake --build build --config ${BUILD_TYPE}
|
cmake --build build --config ${BUILD_TYPE}
|
||||||
|
|
||||||
echo ====== ls ===================================
|
|
||||||
ls -la
|
|
||||||
|
|
||||||
echo ====== ls build =============================
|
|
||||||
ls build -la
|
|
||||||
envVars:
|
envVars:
|
||||||
- name: BUILD_TYPE
|
- name: BUILD_TYPE
|
||||||
value: Debug
|
value: Debug
|
||||||
@@ -67,6 +79,57 @@ jobs:
|
|||||||
artifacts: editor/* open_engine/*
|
artifacts: editor/* open_engine/*
|
||||||
condition: SUCCESSFUL
|
condition: SUCCESSFUL
|
||||||
optional: false
|
optional: false
|
||||||
|
jobExecutor: luna-executor
|
||||||
|
triggers:
|
||||||
|
- type: BranchUpdateTrigger
|
||||||
|
branches: main
|
||||||
|
userMatch: anyone
|
||||||
|
projects: OpenEngine
|
||||||
|
retryCondition: never
|
||||||
|
maxRetries: 3
|
||||||
|
retryDelay: 30
|
||||||
|
timeout: 14400
|
||||||
|
- name: Release to Gitea
|
||||||
|
steps:
|
||||||
|
- type: CommandStep
|
||||||
|
name: Release to Gitea
|
||||||
|
runInContainer: true
|
||||||
|
image: erriss/erris-build_tools:V0.8
|
||||||
|
interpreter:
|
||||||
|
type: DefaultInterpreter
|
||||||
|
commands: |
|
||||||
|
# 1. Create the Release metadata
|
||||||
|
RELEASE_JSON=$(printf '{"tag_name":"v1.0.%s","target_commitish":"main","name":"Release v1.0.%s","body":"Automated build from OneDev","draft":false,"prerelease":false}' "$ONEDEV_BUILD_NUMBER" "$ONEDEV_BUILD_NUMBER")
|
||||||
|
|
||||||
|
curl -X 'POST' \
|
||||||
|
"https://gitea.anfer.fr/api/v1/repos/anfer/OpenEngine/releases" \
|
||||||
|
-H "Authorization: token @secret:Gitea@" \
|
||||||
|
-H "Content-Type: application/json" \
|
||||||
|
-d "$RELEASE_JSON" > release_info.json
|
||||||
|
|
||||||
|
# 2. Extract the Release ID (using jq)
|
||||||
|
RELEASE_ID=$(jq '.id' release_info.json)
|
||||||
|
|
||||||
|
# 3. Upload your binary (oe_editor)
|
||||||
|
curl -X 'POST' \
|
||||||
|
"https://gitea.anfer.fr/api/v1/repos/anfer/OpenEngine/releases/$RELEASE_ID/assets?name=oe_editor" \
|
||||||
|
-H "Authorization: token @secret:Gitea@" \
|
||||||
|
-H "Content-Type: application/octet-stream" \
|
||||||
|
--data-binary=build/editor/oe_editor
|
||||||
|
envVars:
|
||||||
|
- name: ONEDEV_BUILD_NUMBER
|
||||||
|
value: '1'
|
||||||
|
useTTY: true
|
||||||
|
condition: SUCCESSFUL
|
||||||
|
optional: false
|
||||||
|
jobExecutor: terra-executor
|
||||||
|
triggers:
|
||||||
|
- type: DependencyFinishedTrigger
|
||||||
|
projects: OpenEngine
|
||||||
|
jobDependencies:
|
||||||
|
- jobName: Compile for Linux
|
||||||
|
requireSuccessful: true
|
||||||
|
artifacts: '**'
|
||||||
retryCondition: never
|
retryCondition: never
|
||||||
maxRetries: 3
|
maxRetries: 3
|
||||||
retryDelay: 30
|
retryDelay: 30
|
||||||
|
|||||||
@@ -5,6 +5,10 @@ entt/3.16.0
|
|||||||
yaml-cpp/0.8.0
|
yaml-cpp/0.8.0
|
||||||
joltphysics/5.2.0
|
joltphysics/5.2.0
|
||||||
fastgltf/0.9.0
|
fastgltf/0.9.0
|
||||||
|
glm/1.0.1
|
||||||
|
glfw/3.4
|
||||||
|
shaderc/2025.3
|
||||||
|
spirv-cross/1.4.321.0
|
||||||
|
|
||||||
[generators]
|
[generators]
|
||||||
CMakeDeps
|
CMakeDeps
|
||||||
|
|||||||
@@ -19,10 +19,25 @@ add_executable(${PROJECT_EXECUTABLE_NAME}
|
|||||||
${SRC_FILES}
|
${SRC_FILES}
|
||||||
)
|
)
|
||||||
|
|
||||||
|
file(GLOB NETHOST_DIR_CANDIDATES
|
||||||
|
"/usr/share/dotnet/packs/Microsoft.NETCore.App.Host.*-x64/*/runtimes/linux-x64/native"
|
||||||
|
"/usr/share/dotnet/packs/Microsoft.NETCore.App.Host.*-x64/*/runtimes/arch-x64/native"
|
||||||
|
)
|
||||||
|
|
||||||
|
# Pick the first match
|
||||||
|
list(GET NETHOST_DIR_CANDIDATES 0 NETHOST_DIR)
|
||||||
|
|
||||||
|
if(NOT NETHOST_DIR)
|
||||||
|
message(FATAL_ERROR "Could not find NETCore native directory")
|
||||||
|
else()
|
||||||
|
message(STATUS "Found nethost dir: ${NETHOST_DIR}")
|
||||||
|
endif()
|
||||||
|
|
||||||
target_include_directories(${PROJECT_EXECUTABLE_NAME} PRIVATE
|
target_include_directories(${PROJECT_EXECUTABLE_NAME} PRIVATE
|
||||||
"${PROJECT_SOURCE_DIR}/include"
|
"${PROJECT_SOURCE_DIR}/include"
|
||||||
"${PROJECT_SOURCE_DIR}/editor/include"
|
"${PROJECT_SOURCE_DIR}/editor/include"
|
||||||
"/usr/include/freetype2/"
|
"/usr/include/freetype2/"
|
||||||
|
"${NETHOST_DIR}"
|
||||||
)
|
)
|
||||||
|
|
||||||
target_link_libraries(${PROJECT_EXECUTABLE_NAME} PRIVATE
|
target_link_libraries(${PROJECT_EXECUTABLE_NAME} PRIVATE
|
||||||
@@ -30,12 +45,12 @@ target_link_libraries(${PROJECT_EXECUTABLE_NAME} PRIVATE
|
|||||||
imgui::imgui
|
imgui::imgui
|
||||||
open_engine
|
open_engine
|
||||||
dl
|
dl
|
||||||
nethost
|
|
||||||
freetype
|
freetype
|
||||||
EnTT::EnTT
|
EnTT::EnTT
|
||||||
|
nethost
|
||||||
)
|
)
|
||||||
|
|
||||||
target_link_directories(${PROJECT_EXECUTABLE_NAME} PRIVATE
|
target_link_directories(${PROJECT_EXECUTABLE_NAME} PRIVATE
|
||||||
${PROJECT_SOURCE_DIR}/lib
|
${CMAKE_SOURCE_DIR}/lib
|
||||||
/usr/share/dotnet/packs/Microsoft.NETCore.App.Host.arch-x64/10.0.3/runtimes/arch-x64/native
|
${NETHOST_DIR}
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -146,8 +146,8 @@ namespace OpenEngine {
|
|||||||
Ref<Model3D> monkey = Model3D::Create("./assets/models/monkey.glb");
|
Ref<Model3D> monkey = Model3D::Create("./assets/models/monkey.glb");
|
||||||
|
|
||||||
cube3.AddComponent<ModelComponent>(model);
|
cube3.AddComponent<ModelComponent>(model);
|
||||||
cube3.AddComponent<ModelComponent>(model2);
|
cube4.AddComponent<ModelComponent>(model2);
|
||||||
cube4.AddComponent<ModelComponent>(monkey);
|
cube5.AddComponent<ModelComponent>(monkey);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
auto view = scene->GetRegistry().view<TagComponent>();
|
auto view = scene->GetRegistry().view<TagComponent>();
|
||||||
|
|||||||
@@ -5,9 +5,9 @@
|
|||||||
#include <open_engine.hpp>
|
#include <open_engine.hpp>
|
||||||
#include <unistd.h>
|
#include <unistd.h>
|
||||||
|
|
||||||
#include "/usr/share/dotnet/packs/Microsoft.NETCore.App.Host.arch-x64/10.0.3/runtimes/arch-x64/native/nethost.h"
|
#include <nethost.h>
|
||||||
#include "/usr/share/dotnet/packs/Microsoft.NETCore.App.Host.arch-x64/10.0.3/runtimes/arch-x64/native/hostfxr.h"
|
#include <hostfxr.h>
|
||||||
#include "/usr/share/dotnet/packs/Microsoft.NETCore.App.Host.arch-x64/10.0.3/runtimes/arch-x64/native/coreclr_delegates.h"
|
#include <coreclr_delegates.h>
|
||||||
|
|
||||||
class Modding : public OpenEngine::Layer
|
class Modding : public OpenEngine::Layer
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -15,6 +15,11 @@ find_package(EnTT REQUIRED)
|
|||||||
find_package(yaml-cpp REQUIRED)
|
find_package(yaml-cpp REQUIRED)
|
||||||
find_package(Jolt REQUIRED)
|
find_package(Jolt REQUIRED)
|
||||||
find_package(fastgltf REQUIRED)
|
find_package(fastgltf REQUIRED)
|
||||||
|
find_package(spdlog REQUIRED)
|
||||||
|
find_package(glm REQUIRED)
|
||||||
|
find_package(glfw3 REQUIRED)
|
||||||
|
find_package(shaderc REQUIRED)
|
||||||
|
find_package(spirv-cross REQUIRED)
|
||||||
|
|
||||||
file(GLOB_RECURSE SRC_FILES "src/*.cpp")
|
file(GLOB_RECURSE SRC_FILES "src/*.cpp")
|
||||||
file(GLOB IMGUIZMO_SRC_FILES "${CMAKE_SOURCE_DIR}/vendor/ImGuizmo/*.cpp")
|
file(GLOB IMGUIZMO_SRC_FILES "${CMAKE_SOURCE_DIR}/vendor/ImGuizmo/*.cpp")
|
||||||
@@ -35,7 +40,7 @@ target_include_directories(${PROJECT_EXECUTABLE_NAME} PRIVATE
|
|||||||
|
|
||||||
target_include_directories(${PROJECT_EXECUTABLE_NAME} PUBLIC
|
target_include_directories(${PROJECT_EXECUTABLE_NAME} PUBLIC
|
||||||
"${CMAKE_CURRENT_SOURCE_DIR}/include"
|
"${CMAKE_CURRENT_SOURCE_DIR}/include"
|
||||||
"/home/erris/.conan2/p/b/imguic69fe98538919/p/include"
|
#"/home/erris/.conan2/p/b/imguic69fe98538919/p/include"
|
||||||
"vendor/nativefiledialog-extended/src/include"
|
"vendor/nativefiledialog-extended/src/include"
|
||||||
"${CMAKE_SOURCE_DIR}/vendor/ImGuizmo"
|
"${CMAKE_SOURCE_DIR}/vendor/ImGuizmo"
|
||||||
)
|
)
|
||||||
@@ -45,16 +50,16 @@ target_include_directories(${PROJECT_EXECUTABLE_NAME} PUBLIC
|
|||||||
|
|
||||||
target_link_libraries(${PROJECT_EXECUTABLE_NAME} PUBLIC
|
target_link_libraries(${PROJECT_EXECUTABLE_NAME} PUBLIC
|
||||||
imgui::imgui
|
imgui::imgui
|
||||||
spdlog
|
spdlog::spdlog
|
||||||
glad
|
glad
|
||||||
glfw
|
glfw
|
||||||
glm
|
glm::glm
|
||||||
dl
|
dl
|
||||||
EnTT::EnTT
|
EnTT::EnTT
|
||||||
X11
|
X11
|
||||||
yaml-cpp::yaml-cpp
|
yaml-cpp::yaml-cpp
|
||||||
nfd
|
nfd
|
||||||
shaderc_combined
|
shaderc::shaderc
|
||||||
glslang
|
glslang
|
||||||
glslang-default-resource-limits
|
glslang-default-resource-limits
|
||||||
SPIRV
|
SPIRV
|
||||||
|
|||||||
@@ -3,6 +3,7 @@
|
|||||||
|
|
||||||
#include "open_engine/logging.hpp"
|
#include "open_engine/logging.hpp"
|
||||||
|
|
||||||
|
#include <iomanip>
|
||||||
#include <mutex>
|
#include <mutex>
|
||||||
#include <sstream>
|
#include <sstream>
|
||||||
#include <string>
|
#include <string>
|
||||||
|
|||||||
@@ -1,7 +1,8 @@
|
|||||||
#ifndef PCH_HPP
|
#ifndef PCH_HPP
|
||||||
#define PCH_HPP
|
#define PCH_HPP
|
||||||
|
|
||||||
#include "open_engine/logging.hpp"
|
#include <open_engine/logging.hpp>
|
||||||
|
#include <shaderc/shaderc.hpp>
|
||||||
|
|
||||||
#include <functional>
|
#include <functional>
|
||||||
|
|
||||||
|
|||||||
@@ -2,6 +2,7 @@
|
|||||||
#define SHADER_HPP
|
#define SHADER_HPP
|
||||||
|
|
||||||
#include <open_engine/ref_scope.hpp>
|
#include <open_engine/ref_scope.hpp>
|
||||||
|
|
||||||
#include <glm/glm.hpp>
|
#include <glm/glm.hpp>
|
||||||
#include <string>
|
#include <string>
|
||||||
|
|
||||||
|
|||||||
@@ -6,14 +6,12 @@
|
|||||||
#include <core/time.hpp>
|
#include <core/time.hpp>
|
||||||
#include <logging.hpp>
|
#include <logging.hpp>
|
||||||
|
|
||||||
#include <shaderc/shaderc.hpp>
|
|
||||||
#include <spirv_cross/spirv_cross.hpp>
|
#include <spirv_cross/spirv_cross.hpp>
|
||||||
#include <spirv_cross/spirv_glsl.hpp>
|
#include <spirv_cross/spirv_glsl.hpp>
|
||||||
#include <glm/gtc/type_ptr.hpp>
|
#include <glm/gtc/type_ptr.hpp>
|
||||||
#include <glm/glm.hpp>
|
#include <glm/glm.hpp>
|
||||||
#include <filesystem>
|
#include <filesystem>
|
||||||
#include <glad/glad.h>
|
#include <glad/glad.h>
|
||||||
//#include <alloca.h>
|
|
||||||
|
|
||||||
namespace OpenEngine {
|
namespace OpenEngine {
|
||||||
|
|
||||||
@@ -30,7 +28,7 @@ namespace OpenEngine {
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static shaderc_shader_kind GLShaderStageToShaderC(GLenum stage)
|
static ::shaderc_shader_kind GLShaderStageToShaderC(GLenum stage)
|
||||||
{
|
{
|
||||||
switch (stage)
|
switch (stage)
|
||||||
{
|
{
|
||||||
|
|||||||
Reference in New Issue
Block a user