Skip to content

Commit

Permalink
Initial Editor (#36)
Browse files Browse the repository at this point in the history
* Setup editor project

* Started work on editor

* Add a bunch of new structure to the editor

* First images out of the scene panel

* Experimenting with serialization

* Many improvements

* Some fixes

* Guizmo is working now

* Many improvements

* Fixed a few issues

* Lighting and post process structures get serialized as well now

* Updated editor to support ray tracing

* Primitive injection works again, debug marker range support, etc.

* Implemented a bunch of improvements and fixes

* Fixed a few bugs/improved fog

* Some physics experimentation

* AudioComponents are more complete now

* Fixing remaining code smells + more UI outsourcing

* More code smells fixed
  • Loading branch information
tippesi authored Feb 8, 2024
1 parent 6db429e commit bb69679
Show file tree
Hide file tree
Showing 194 changed files with 5,715 additions and 1,354 deletions.
14 changes: 8 additions & 6 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -102,7 +102,7 @@ jobs:
cc: "cl"
cxx: "cl"
configure-options: -DCMAKE_TOOLCHAIN_FILE='${{ github.workspace }}/vcpkg/scripts/buildsystems/vcpkg.cmake'
-DATLAS_DEMO=ON -DATLAS_TESTS=OFF -G Ninja
-DATLAS_DEMO=ON -DATLAS_TESTS=OFF -DATLAS_EDITOR=ON -G Ninja
parallel: 16
build-type: ${{ matrix.build-type }}

Expand Down Expand Up @@ -139,13 +139,14 @@ jobs:
if: ${{ matrix.build-type == 'Release' }}
uses: actions/upload-artifact@v2
with:
name: Atlas Engine Demo Windows ${{ matrix.build-type }}
name: Atlas Engine Windows ${{ matrix.build-type }}
path: |
data
README.md
LICENSE.md
THIRDPARTY.md
${{ github.workspace }}/bin/**/AtlasEngineDemo.exe
${{ github.workspace }}/bin/**/AtlasEngineEditor.exe
${{ github.workspace }}/bin/**/*.dll
!${{ github.workspace }}/bin/tests
!**/CMakeFiles
Expand Down Expand Up @@ -234,7 +235,7 @@ jobs:
cc: "gcc"
cxx: "g++"
configure-options: -DCMAKE_TOOLCHAIN_FILE='${{ github.workspace }}/vcpkg/scripts/buildsystems/vcpkg.cmake'
-DATLAS_DEMO=ON -DATLAS_TESTS=OFF -G Ninja
-DATLAS_DEMO=ON -DATLAS_TESTS=OFF -DATLAS_EDITOR=ON -G Ninja
parallel: 16
build-type: ${{ matrix.build-type }}

Expand Down Expand Up @@ -268,13 +269,14 @@ jobs:
if: ${{ matrix.build-type == 'Release' }}
uses: actions/upload-artifact@v2
with:
name: Atlas Engine Demo Linux ${{ matrix.build-type }}
name: Atlas Engine Linux ${{ matrix.build-type }}
path: |
data
README.md
LICENSE.md
THIRDPARTY.md
${{ github.workspace }}/bin/**/AtlasEngineDemo
${{ github.workspace }}/bin/**/AtlasEngineEditor
${{ github.workspace }}/bin/**/*.so*
!${{ github.workspace }}/bin/tests
!**/CMakeFiles
Expand Down Expand Up @@ -362,7 +364,7 @@ jobs:
cc: "clang"
cxx: "clang++"
configure-options: -DCMAKE_TOOLCHAIN_FILE='${{ github.workspace }}/vcpkg/scripts/buildsystems/vcpkg.cmake'
-DATLAS_DEMO=ON -DATLAS_TESTS=OFF -G Ninja
-DATLAS_DEMO=ON -DATLAS_TESTS=OFF -DATLAS_EDITOR=ON -G Ninja
parallel: 16
build-type: ${{ matrix.build-type }}

Expand Down Expand Up @@ -396,7 +398,7 @@ jobs:
if: ${{ matrix.build-type == 'Release' }}
uses: actions/upload-artifact@v2
with:
name: Atlas Engine Demo MacOS ${{ matrix.build-type }}
name: Atlas Engine MacOS ${{ matrix.build-type }}
path: |
data
README.md
Expand Down
6 changes: 4 additions & 2 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,7 @@ jobs:
cc: "cl"
cxx: "cl"
configure-options: -G Ninja -DCMAKE_TOOLCHAIN_FILE='${{ github.workspace }}/vcpkg/scripts/buildsystems/vcpkg.cmake'
-DASSIMP_BUILD_TESTS=OFF -DASSIMP_BUILD_ASSIMP_TOOLS=OFF -DATLAS_DEMO=ON -DATLAS_TESTS=OFF
-DASSIMP_BUILD_TESTS=OFF -DASSIMP_BUILD_ASSIMP_TOOLS=OFF -DATLAS_DEMO=ON -DATLAS_TESTS=OFF -DATLAS_EDITOR=ON
parallel: 16
build-type: ${{ matrix.build-type }}

Expand All @@ -79,6 +79,7 @@ jobs:
LICENSE.md
THIRDPARTY.md
${{ github.workspace }}/bin/**/AtlasEngineDemo.exe
${{ github.workspace }}/bin/**/AtlasEngineEditor.exe
${{ github.workspace }}/bin/**/*.dll
!**/CMakeFiles
Expand Down Expand Up @@ -131,7 +132,7 @@ jobs:
cc: "gcc"
cxx: "g++"
configure-options: -G Ninja -DCMAKE_TOOLCHAIN_FILE='${{ github.workspace }}/vcpkg/scripts/buildsystems/vcpkg.cmake'
-DASSIMP_BUILD_TESTS=OFF -DASSIMP_BUILD_ASSIMP_TOOLS=OFF -DATLAS_DEMO=ON -DATLAS_TESTS=OFF
-DASSIMP_BUILD_TESTS=OFF -DASSIMP_BUILD_ASSIMP_TOOLS=OFF -DATLAS_DEMO=ON -DATLAS_TESTS=OFF -DATLAS_EDITOR=ON
parallel: 16
build-type: ${{ matrix.build-type }}

Expand All @@ -145,6 +146,7 @@ jobs:
LICENSE.md
THIRDPARTY.md
${{ github.workspace }}/bin/**/AtlasEngineDemo
${{ github.workspace }}/bin/**/AtlasEngineEditor
${{ github.workspace }}/bin/**/*.so*
!**/CMakeFiles
Expand Down
7 changes: 7 additions & 0 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@ option(ATLAS_OPENGL_ES "Use OpenGL ES instead of OpenGL" OFF)
option(ATLAS_EXPORT_MAIN "Add main file in root of directory tree. Add ${ATLAS_ENGINE_MAIN_FILE} to your executable" OFF)
option(ATLAS_NO_APP "Disables the engines main function" OFF)
option(ATLAS_DEMO "Build demo executable" OFF)
option(ATLAS_DEMO "Build editor executable" ON)
option(ATLAS_IMGUI "Activate ImGui integration" OFF)
option(ATLAS_ASSIMP "Activate Assimp integration" ON)
option(ATLAS_HEADLESS "Activate support for running the engine in headless mode" OFF)
Expand Down Expand Up @@ -66,6 +67,7 @@ endif()
set (ATLAS_LOCATION ${CMAKE_CURRENT_SOURCE_DIR}/src/engine)
set (DEMO_LOCATION ${CMAKE_CURRENT_SOURCE_DIR}/src/demo)
set (TESTS_LOCATION ${CMAKE_CURRENT_SOURCE_DIR}/src/tests)
set (EDITOR_LOCATION ${CMAKE_CURRENT_SOURCE_DIR}/src/editor)
set (IMGUI_EXTENSION_LOCATION ${CMAKE_CURRENT_SOURCE_DIR}/libs/ImguiExtension)

# Add dependencies ################################################################################
Expand Down Expand Up @@ -102,6 +104,11 @@ if (ATLAS_DEMO)
add_subdirectory(${DEMO_LOCATION})
endif()

if (ATLAS_EDITOR)
find_package(imguizmo CONFIG REQUIRED)
add_subdirectory(${EDITOR_LOCATION})
endif()

if (ATLAS_TESTS)
add_subdirectory(${TESTS_LOCATION})
endif()
14 changes: 14 additions & 0 deletions data/editor/icons/LICENSE
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@

Copyright 2024 Google

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
Binary file added data/editor/icons/audio.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
1 change: 1 addition & 0 deletions data/editor/icons/audio.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added data/editor/icons/camera.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
1 change: 1 addition & 0 deletions data/editor/icons/camera.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added data/editor/icons/document.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
1 change: 1 addition & 0 deletions data/editor/icons/document.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added data/editor/icons/folder.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
1 change: 1 addition & 0 deletions data/editor/icons/folder.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added data/editor/icons/image.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
1 change: 1 addition & 0 deletions data/editor/icons/image.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added data/editor/icons/mesh.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
1 change: 1 addition & 0 deletions data/editor/icons/mesh.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added data/editor/icons/play.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
1 change: 1 addition & 0 deletions data/editor/icons/play.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added data/editor/icons/scene.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
1 change: 1 addition & 0 deletions data/editor/icons/scene.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added data/editor/icons/stop.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
1 change: 1 addition & 0 deletions data/editor/icons/stop.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added data/editor/icons/terrain.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
1 change: 1 addition & 0 deletions data/editor/icons/terrain.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading

0 comments on commit bb69679

Please sign in to comment.