Commit Graph
100 Commits
Author SHA1 Message Date
Riyyi fd8973d10d Engine: Implement skybox 2024-01-07 16:37:42 +01:00
Riyyi bc3f2c9db5 Component+Scene+System: Implement parent-child transform components 2024-01-05 20:50:49 +01:00
Riyyi 0dd7a05d46 Component+Scene: Restructure scene .json to allow multiple components 2024-01-01 13:10:20 +01:00
Riyyi c607ebcc72 Engine: Do not use offset for character advance 2023-12-29 22:53:29 +01:00
Riyyi 15b71f8387 Engine: Allow configuration of font size and line spacing 2023-12-29 22:12:13 +01:00
Riyyi 6e5f82913e Script: Add missing macro CONCAT 2023-12-26 22:06:02 +01:00
Riyyi d02d5a528b Assets: Add text entity to example scene1.json 2023-12-26 13:07:56 +01:00
Riyyi 574f2a8b5a Engine: Fix font spacing in TextAreaComponent 2023-12-26 01:31:12 +01:00
Riyyi 2b0635ed69 Meta: Assets in separate CMakeLists.txt 2023-12-18 21:50:10 +01:00
Riyyi 649d196577 Script+System: Allow native scripts from projects, decoupled from engine 2023-12-03 20:05:21 +01:00
Riyyi f47babe5cf Engine: Add ability to set camera zoom-level via scene JSON 2022-10-16 12:44:35 +02:00
Riyyi efae5b9adb Engine: Add Scene::findEntity() function 2022-10-16 11:39:19 +02:00
Riyyi a1b02c2e3a Meta: Update ruc library 2022-10-15 11:33:19 +02:00
Riyyi e926d3ce4a CMake: Link against ruc-test library 2022-09-28 14:36:44 +02:00
Riyyi 4c479cfb64 Meta: Update ruc library 2022-09-28 14:34:17 +02:00
Riyyi cf0a20e208 Engine: Add scene getter 2022-09-28 14:20:28 +02:00
Riyyi 55af11d831 Engine: Add constructor for raw data texture 2022-09-28 14:15:52 +02:00
Riyyi 26cd35d679 CMake: Populate list of required include directories for library targets
PUBLIC items will populate the INTERFACE_INCLUDE_DIRECTORIES property of
<target>. This property is a list of public include directories
requirements for a library.

Targets may populate this property to publish the include directories
required to compile against the headers for the target.
2022-09-28 14:05:02 +02:00
Riyyi 6972128ad2 Assets: Remove font from test scene, as font assets aren't added yet 2022-09-27 13:12:13 +02:00
Riyyi c858ef3b1d CMake: Always copy assets to build directory, fixes example: $ make run 2022-09-27 13:10:33 +02:00
Riyyi 3d22334be9 Meta: Update debugging path to example executable 2022-09-27 12:32:02 +02:00
Riyyi 9d26f20bde Script: Prefer using script files from the ruc library 2022-09-27 12:28:57 +02:00
Riyyi 0305b2c464 Doc: Update git submodule instructions in readme 2022-09-27 12:23:31 +02:00
Riyyi 17e3a8a5eb CMake: Copy assets to the build directory automatically 2022-09-27 12:12:03 +02:00
Riyyi 85b222984d Meta: Remove nlohmann/json dependency 2022-09-26 22:37:25 +02:00
Riyyi 124479876b Engine: Make event handle functions virtual 2022-09-26 14:19:49 +02:00
Riyyi aec1a80623 Engine: Rename getWindow() => window() 2022-09-26 14:18:34 +02:00
Riyyi ae8bb46a7d Engine+Example: Improve entrypoint via manual singleton 2022-09-26 13:07:05 +02:00
Riyyi 1dcb25ea5e CMake: Change include directories to use relative path 2022-09-26 13:00:00 +02:00
Riyyi 10a5b70520 Engine: Comment out text-area test code 2022-09-26 13:00:00 +02:00
Riyyi 67b4eb0cc0 Scene: Load text-areas from JSON 2022-09-26 13:00:00 +02:00
Riyyi e1d88a1872 Component: Add ability to load TextAreaComponent from JSON 2022-09-26 13:00:00 +02:00
Riyyi 3db5845bb4 Scene: Load quads from JSON 2022-09-26 13:00:00 +02:00
Riyyi c7a8f92970 Component: Add ability to read SpriteComponent from JSON 2022-09-26 13:00:00 +02:00
Riyyi 892be89728 Scene: Load camera from JSON 2022-09-26 13:00:00 +02:00
Riyyi c2c5777566 Component: Add ability to read TransformComponent from JSON 2022-09-26 13:00:00 +02:00
Riyyi aedb1a5fc9 Everywhere: Add copyright headers 2022-09-26 13:00:00 +02:00
Riyyi 2ab555af5e Engine: Remove unused utility classes 2022-09-26 13:00:00 +02:00
Riyyi 01e5179ec7 Engine: Update std::stou, remove need for intToHex() 2022-09-26 13:00:00 +02:00
Riyyi 324da69bb2 Engine: Remove unnecessary unused warning suppressions 2022-09-26 13:00:00 +02:00
Riyyi f44c82d06e Engine: Add function for finding key names 2022-09-26 13:00:00 +02:00
Riyyi 8a03d84580 Engine: Switch inferno/io/log.h => ruc/format/log.h 2022-09-26 13:00:00 +02:00
Riyyi f61f402116 Engine: Switch to ruc::File 2022-09-26 13:00:00 +02:00
Riyyi 470f90fbdd Engine: Switch inferno core.h => ruc core.h 2022-09-26 13:00:00 +02:00
Riyyi 6302bb4ae1 Engine: Make sure glad gets included before GLFW in context 2022-09-26 13:00:00 +02:00
Riyyi b72da1278d Engine: Run clang-format 2022-09-26 13:00:00 +02:00
Riyyi 3da83e9cea Meta: Bump C++ version to 20 in .clang-format 2022-09-26 13:00:00 +02:00
Riyyi 766f24d6b9 Engine: Switch to ASSERT macro to ruc's VERIFY 2022-09-26 13:00:00 +02:00
Riyyi 722bdd82b1 Engine: Change include guards to #pragma once 2022-09-26 13:00:00 +02:00
Riyyi 4af037a7fb Engine: Switch to ruc's singleton 2022-09-26 13:00:00 +02:00
Riyyi 2f1c6b5e75 Engine: Make it compile again 2022-09-26 13:00:00 +02:00
Riyyi 478dccd3df Meta+CMake: Add ruc library 2022-09-26 13:00:00 +02:00
Riyyi edc0ef7203 Everywhere: Update work in progress 2022-09-16 20:22:08 +02:00
Riyyi 6b0095dadf CMake: Move source directory to project root 2022-09-16 20:15:49 +02:00
Riyyi 4468b1ffb9 CMake: Move vendor directory to the project root 2022-09-16 19:16:53 +02:00
Riyyi 90bfd30f7f CMake: Move engine source compilation to separate file 2022-09-16 17:12:57 +02:00
Riyyi ed935e50cd CMake: Automatically build examples during standalone compilation 2022-09-16 12:46:44 +02:00
Riyyi 8b11e51109 CMake: Restructure main file, move example to its own directory 2022-09-16 12:41:08 +02:00
Riyyi da757365d0 CMake: Exclude unnecessary lua files from compilation 2022-09-16 11:14:09 +02:00
Riyyi 50f363df65 Add git pre-commit hooks and install script 2021-06-15 23:39:12 +02:00
Riyyi 7401936016 Initialize raw pointers as nullptr 2021-05-18 02:45:00 +02:00
Riyyi d1ba13794c Release source under MIT license 2021-04-01 00:43:30 +02:00
Riyyi ec2cb44c06 Set stride to 0 when calculating offsets 2021-03-11 16:55:05 +01:00
Riyyi c8cea7bf45 Give native types initial value 2021-03-11 16:52:47 +01:00
Riyyi f63bd4ab6d Remove move where it didnt make sense 2021-03-11 16:17:04 +01:00
Riyyi 0b57ee3a9f Remove const ref std::shared_ptr
Taking a const std::shared_ptr& doesnt make sense, as it doesnt increase the
reference count and the object inside the pointer is still modifiable.

Return std::shared_ptr by value, returning by reference wont increase the
reference count and RVO (return value optimization) makes the const concern
moot.
2021-03-11 11:37:46 +01:00
Riyyi 50a438e340 Cleanup 2021-03-11 11:07:50 +01:00
Riyyi 0522f6f388 String can be printed directly 2021-03-08 23:12:58 +01:00
Riyyi 571403c9a2 Change "pretending to be for loop" while loop to for loop 2021-03-07 01:04:41 +01:00
Riyyi 25a5e0a8e8 Add .clang-format 2021-03-04 03:25:44 +01:00
Riyyi 49bf1b3933 ifstream destructor closes the file, due to RAII 2021-02-15 00:22:32 +01:00
Riyyi 16cebbb8cb Prevent window duplicate destruction 2021-02-14 13:49:35 +01:00
Riyyi 3e1d0eef53 Forward declare components 2021-02-14 04:01:36 +01:00
Riyyi 8f7665b8a3 Implement singleton class in all singletons 2021-02-14 04:00:44 +01:00
Riyyi deb9e34b8f Second attempt at deriving application from a singleton 2021-02-14 02:36:45 +01:00
Riyyi 4467d0d40a Add std::move to the resource managers 2021-02-14 00:21:33 +01:00
Riyyi 6103854503 Revert application and remove singleton class, it breaks object lifetime? 2021-02-14 00:06:30 +01:00
Riyyi 3583c2994b Remove call to application getWindow before its finished construction 2021-02-13 16:42:15 +01:00
Riyyi c1ae98c659 Implement singleton class into application 2021-02-13 16:14:23 +01:00
Riyyi 0cc22100e9 Add singleton class 2021-02-13 16:09:45 +01:00
Riyyi e834203b07 Move settings save after initialize log 2021-02-11 20:50:04 +01:00
Riyyi b26cb3e073 Move defines below includes 2021-02-11 16:48:52 +01:00
Riyyi 58afdbeae6 Re-add stb dependency in the new location 2021-02-11 16:17:45 +01:00
Riyyi aa34cd56ce Remove stb dependency 2021-02-11 16:13:24 +01:00
Riyyi cdbb456ce8 Move try/catch from settings to file, overwrite invalid settings file 2021-02-11 15:54:06 +01:00
Riyyi adc0848a23 Implement nlohmann::json arbitrary type conversion for settings 2021-02-11 01:31:14 +01:00
Riyyi 7042a42032 Settings: use json util, update window size to uint32_t 2021-02-10 23:20:25 +01:00
Riyyi e044397e88 Omit copy constructors for strings in constructors 2021-02-10 14:36:19 +01:00
Riyyi 858a2bd0d4 Prevent double gltf json parsing 2021-02-09 14:46:00 +01:00
Riyyi 68b2e93969 Add support for .gltf file reading with 1 buffer binary 2021-02-09 01:47:59 +01:00
Riyyi 1c311fca64 Update gltf file assert messages 2021-02-09 00:42:10 +01:00
Riyyi b8bd6aad70 Rename gltf file class 2021-02-08 23:52:01 +01:00
Riyyi aa9403dde0 Convert double to float in gltf model and json util 2021-02-07 16:48:38 +01:00
Riyyi a7953b4bdd Add gltf node parsing 2021-02-07 01:51:46 +01:00
Riyyi cf44172943 Add gltf scene parsing, change assert messages capitalization 2021-02-06 13:59:52 +01:00
Riyyi 5ddfa0515c Add gltf json length check 2021-02-06 01:53:59 +01:00
Riyyi 1134ce6a43 Start working on glTF model class 2021-02-06 01:52:43 +01:00
Riyyi 105912a62a Add json object parsing and helpers 2021-02-06 00:57:33 +01:00
Riyyi ac444184a9 Add json array property parsing, helper functions 2021-02-05 17:47:19 +01:00
Riyyi b554b91ec0 Add json utility class 2021-02-05 01:09:43 +01:00