Compare commits
222 Commits
d7daa04a1b
...
master
| Author | SHA1 | Date | |
|---|---|---|---|
| ca6f7e9f55 | |||
| dd3867fbf1 | |||
| bc0dcfaead | |||
| dd00a41024 | |||
| fd23aa6287 | |||
| e441cd9c0a | |||
| 64424e3111 | |||
| c727a1912c | |||
| 69993ba696 | |||
| af55e598e3 | |||
| 77def2c519 | |||
| 676ef45897 | |||
| 04e75ebd81 | |||
| cafe9ba094 | |||
| 05755827ce | |||
| 691b8e22bd | |||
| d087ca7c85 | |||
| 5c9dda161b | |||
| 1ac88ba5f8 | |||
| 53bb26c347 | |||
| 7f87876cd5 | |||
| f4e551f053 | |||
| 6819357b67 | |||
| ea792d8ea9 | |||
| 8e140fb878 | |||
| 7eceed3ee5 | |||
| 85900e3ef1 | |||
| c7fe27c36e | |||
| 881c7b3229 | |||
| a9a1bbe740 | |||
| 876eefeea5 | |||
| 5f1fdddc5d | |||
| 0f21cce741 | |||
| 32a8e1fb58 | |||
| e83cecc8b3 | |||
| 2afa4feee8 | |||
| fc1c4b5168 | |||
| d79222c86c | |||
| 66838892d5 | |||
| 2eed8ef509 | |||
| b56103930c | |||
| 2780fd300a | |||
| 7518a6a360 | |||
| d2cc947ae7 | |||
| 6eae0ac557 | |||
| e5f22d47ab | |||
| c8f4ff5a4e | |||
| 2e35ff4ec6 | |||
| dc6c8f881a | |||
| a5bb11f5bf | |||
| 71b709726e | |||
| 6eedf347ba | |||
| 37fc4da92d | |||
| 9107ccbaa3 | |||
| d34369512b | |||
| 2b671cedb2 | |||
| 6617b66ff3 | |||
| 59a99ff706 | |||
| b7b746d000 | |||
| 6622e1a6ac | |||
| c3720f69c8 | |||
| 2f8031fa8e | |||
| 6f2ab0105d | |||
| 4c2049f05c | |||
| af490a5eb4 | |||
| d2cd99d325 | |||
| 5c57390d4c | |||
| 49a0fd7e74 | |||
| 54a9b6f9ad | |||
| 5d4c653c9a | |||
| d46401b973 | |||
| b427de968f | |||
| 770a163c63 | |||
| 482194b14c | |||
| 5dfa476a54 | |||
| 42dc811cf6 | |||
| 34bded906c | |||
| c0248e1b11 | |||
| 40183a44a7 | |||
| fe876fccca | |||
| 5d59a15e36 | |||
| aff536d37f | |||
| 74afcaf126 | |||
| abd814eba2 | |||
| 0b4a942acb | |||
| 90bfc54952 | |||
| 13fa1e6eef | |||
| d1bcf3af7b | |||
| 124a080840 | |||
| 8381e37fbe | |||
| 2eee5efd95 | |||
| db2942986d | |||
| bfa2621dee | |||
| f474ada828 | |||
| 3b60d685f7 | |||
| 50b2ae5363 | |||
| e3f37cdcdc | |||
| f1d5b75ca1 | |||
| 41e9590bda | |||
| 7b87d9bea6 | |||
| f59f2dce09 | |||
| 245cb1e408 | |||
| 6e1e864197 | |||
| a91bda34e5 | |||
| 21fb3833cc | |||
| 799ac40a4a | |||
| 7152267937 | |||
| ae3d86d391 | |||
| 6eb584f73c | |||
| 0356746749 | |||
| 5b4fcdd0f6 | |||
| 69b807bf22 | |||
| 3b4006e02d | |||
| 2cc591706f | |||
| aa324903fd | |||
| 7bac24d34e | |||
| 997b66b7f9 | |||
| b2fe7d7e46 | |||
| 844056de64 | |||
| b6b5fdada9 | |||
| 3241905ad1 | |||
| 2424659058 | |||
| bbb608611c | |||
| f4f8bbce0b | |||
| 2597802469 | |||
| 69b62c8c97 | |||
| f62dbbf505 | |||
| 64a66d1c50 | |||
| 0e5a2e7f9b | |||
| 6986a4a334 | |||
| 57f34b93bf | |||
| c8072b8457 | |||
| 166e6d6b4a | |||
| db39715354 | |||
| b0613d9ad1 | |||
| 794857209d | |||
| 521ae37202 | |||
| 175c863577 | |||
| b6971322f2 | |||
| 5e6bcedd09 | |||
| 9705200853 | |||
| b2bcfd0253 | |||
| 97172fff8d | |||
| 20807366d1 | |||
| 0d425391ce | |||
| e19dbd7a4f | |||
| dfb24aa4b2 | |||
| 5778c79bba | |||
| 8f36415891 | |||
| 63b9e710f5 | |||
| 8fa68006bc | |||
| 144b737dc3 | |||
| 12822d2f65 | |||
| 1d620a3326 | |||
| 7648beb507 | |||
| 72bc6ade25 | |||
| a21bd9dc9b | |||
| 2f3187257d | |||
| 6fa644c57d | |||
| 9ad8bb2620 | |||
| 43c312e371 | |||
| a9190fcc09 | |||
| c268a4992a | |||
| 3c99a0b09c | |||
| 43bc11b6e8 | |||
| 49e7b9f970 | |||
| ccc1555424 | |||
| e971020cb3 | |||
| d5ad5bac8c | |||
| e505c6df0d | |||
| 196ce25dbe | |||
| e720697b70 | |||
| 01c69a4ae9 | |||
| c95976016e | |||
| c0b2081242 | |||
| b3b7cc0d90 | |||
| 2f3465350e | |||
| f103860c79 | |||
| 41b46c9526 | |||
| eac265642e | |||
| 4468c839ec | |||
| 67e3057109 | |||
| 88317b2564 | |||
| ed09663bcc | |||
| 4c26ff677c | |||
| ccc15bbe6c | |||
| ab9387a06a | |||
| 802ff0fd53 | |||
| 818c21ecac | |||
| 0e819d6e7e | |||
| 1aa73b4367 | |||
| 49a88f7c2e | |||
| 4f1477982a | |||
| bbb13546b1 | |||
| 7486334c04 | |||
| 0daf02795e | |||
| d1dc024353 | |||
| 72beab0829 | |||
| d61618c895 | |||
| b486453b59 | |||
| 127192ddbe | |||
| efddadd01b | |||
| e30e1ed2d8 | |||
| 42ac0f19ca | |||
| 144f45d522 | |||
| e3dab9f816 | |||
| d1142eb57a | |||
| 38e8b868e8 | |||
| 26d9719c37 | |||
| b427e0d9be | |||
| 70049d5195 | |||
| bf78f29ca0 | |||
| ab5f35eba1 | |||
| d0db1e45a3 | |||
| 33dd2be5ac | |||
| 073854c107 | |||
| ee792671b0 | |||
| 20cc941316 | |||
| 3d54b42863 | |||
| 6046785697 | |||
| 3750690533 | |||
| 43acc25e35 |
3
.gitignore
vendored
@@ -1,5 +1,6 @@
|
|||||||
.import
|
.import
|
||||||
godot/logs
|
godot/logs
|
||||||
|
godot/character-data/*
|
||||||
assets/blender/**/*.blend1
|
assets/blender/**/*.blend1
|
||||||
assets/blender/**/*.blend2
|
assets/blender/**/*.blend2
|
||||||
assets/blender/**/*.blend3
|
assets/blender/**/*.blend3
|
||||||
@@ -10,3 +11,5 @@ assets/blender/scripts/*.blend*
|
|||||||
.*.swp
|
.*.swp
|
||||||
*.kra~
|
*.kra~
|
||||||
*.png~
|
*.png~
|
||||||
|
godot/astream/road_lines.json.*
|
||||||
|
|
||||||
|
|||||||
20
.gitmodules
vendored
@@ -1,4 +1,22 @@
|
|||||||
[submodule "src/godot"]
|
[submodule "src/godot"]
|
||||||
path = src/godot
|
path = src/godot
|
||||||
url = git@github.com:godotengine/godot
|
url = https://github.com/godotengine/godot
|
||||||
branch = 3.x
|
branch = 3.x
|
||||||
|
[submodule "src/modules/voxel"]
|
||||||
|
path = src/modules/voxel
|
||||||
|
url = https://github.com/Zylann/godot_voxel
|
||||||
|
branch = godot3.x
|
||||||
|
[submodule "src/flecs"]
|
||||||
|
path = src/flecs
|
||||||
|
url = https://github.com/SanderMertens/flecs
|
||||||
|
[submodule "src/meshoptimizer"]
|
||||||
|
path = src/meshoptimizer
|
||||||
|
url = https://github.com/zeux/meshoptimizer
|
||||||
|
branch = master
|
||||||
|
[submodule "tests/flecs-systems-sokol"]
|
||||||
|
path = tests/flecs-systems-sokol
|
||||||
|
url = https://github.com/flecs-hub/flecs-systems-sokol
|
||||||
|
branch = master
|
||||||
|
[submodule "src/sqlite"]
|
||||||
|
path = src/sqlite
|
||||||
|
url = https://github.com/sqlite/sqlite
|
||||||
|
|||||||
26
.vscode/launch.json
vendored
Normal file
@@ -0,0 +1,26 @@
|
|||||||
|
{
|
||||||
|
// Use IntelliSense to learn about possible attributes.
|
||||||
|
// Hover to view descriptions of existing attributes.
|
||||||
|
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
|
||||||
|
"version": "0.2.0",
|
||||||
|
"configurations": [
|
||||||
|
{
|
||||||
|
"name": "Run Editor",
|
||||||
|
"type": "cppdbg",
|
||||||
|
"request": "launch",
|
||||||
|
"program": "${workspaceRoot}/src/godot/bin/godot.x11.opt.tools.64",
|
||||||
|
"args": ["main/editor.tscn"],
|
||||||
|
"cwd": "${workspaceRoot}/godot",
|
||||||
|
"setupCommands": [{"text": "source ${workspaceRoot}/debug.py"}]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Run Game",
|
||||||
|
"type": "cppdbg",
|
||||||
|
"request": "launch",
|
||||||
|
"program": "${workspaceRoot}/src/godot/bin/godot.x11.opt.tools.64",
|
||||||
|
"args": ["main/main.tscn"],
|
||||||
|
"cwd": "${workspaceRoot}/godot",
|
||||||
|
"setupCommands": [{"text": "source ${workspaceRoot}/debug.py"}]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
81
.vscode/settings.json
vendored
Normal file
@@ -0,0 +1,81 @@
|
|||||||
|
{
|
||||||
|
"godot_tools.editor_path": "/home/slapin/godot-projects/office/src/godot/bin/godot.x11.opt.tools.64",
|
||||||
|
"files.associations": {
|
||||||
|
"*.ipp": "cpp",
|
||||||
|
"array": "cpp",
|
||||||
|
"*.tcc": "cpp",
|
||||||
|
"*.inc": "cpp",
|
||||||
|
"atomic": "cpp",
|
||||||
|
"bit": "cpp",
|
||||||
|
"cctype": "cpp",
|
||||||
|
"charconv": "cpp",
|
||||||
|
"chrono": "cpp",
|
||||||
|
"clocale": "cpp",
|
||||||
|
"cmath": "cpp",
|
||||||
|
"compare": "cpp",
|
||||||
|
"concepts": "cpp",
|
||||||
|
"condition_variable": "cpp",
|
||||||
|
"cstdarg": "cpp",
|
||||||
|
"cstddef": "cpp",
|
||||||
|
"cstdint": "cpp",
|
||||||
|
"cstdio": "cpp",
|
||||||
|
"cstdlib": "cpp",
|
||||||
|
"cstring": "cpp",
|
||||||
|
"ctime": "cpp",
|
||||||
|
"cwchar": "cpp",
|
||||||
|
"cwctype": "cpp",
|
||||||
|
"deque": "cpp",
|
||||||
|
"list": "cpp",
|
||||||
|
"map": "cpp",
|
||||||
|
"set": "cpp",
|
||||||
|
"string": "cpp",
|
||||||
|
"unordered_map": "cpp",
|
||||||
|
"vector": "cpp",
|
||||||
|
"exception": "cpp",
|
||||||
|
"algorithm": "cpp",
|
||||||
|
"functional": "cpp",
|
||||||
|
"iterator": "cpp",
|
||||||
|
"memory": "cpp",
|
||||||
|
"memory_resource": "cpp",
|
||||||
|
"numeric": "cpp",
|
||||||
|
"optional": "cpp",
|
||||||
|
"random": "cpp",
|
||||||
|
"ratio": "cpp",
|
||||||
|
"string_view": "cpp",
|
||||||
|
"system_error": "cpp",
|
||||||
|
"tuple": "cpp",
|
||||||
|
"type_traits": "cpp",
|
||||||
|
"utility": "cpp",
|
||||||
|
"fstream": "cpp",
|
||||||
|
"initializer_list": "cpp",
|
||||||
|
"iomanip": "cpp",
|
||||||
|
"iosfwd": "cpp",
|
||||||
|
"iostream": "cpp",
|
||||||
|
"istream": "cpp",
|
||||||
|
"limits": "cpp",
|
||||||
|
"mutex": "cpp",
|
||||||
|
"new": "cpp",
|
||||||
|
"numbers": "cpp",
|
||||||
|
"ostream": "cpp",
|
||||||
|
"semaphore": "cpp",
|
||||||
|
"span": "cpp",
|
||||||
|
"sstream": "cpp",
|
||||||
|
"stdexcept": "cpp",
|
||||||
|
"stop_token": "cpp",
|
||||||
|
"streambuf": "cpp",
|
||||||
|
"thread": "cpp",
|
||||||
|
"cinttypes": "cpp",
|
||||||
|
"typeinfo": "cpp",
|
||||||
|
"variant": "cpp",
|
||||||
|
"format": "cpp",
|
||||||
|
"future": "cpp",
|
||||||
|
"cassert": "cpp",
|
||||||
|
"bitset": "cpp",
|
||||||
|
"unordered_set": "cpp",
|
||||||
|
"strstream": "cpp",
|
||||||
|
"typeindex": "cpp",
|
||||||
|
"shared_mutex": "cpp",
|
||||||
|
"any": "cpp"
|
||||||
|
},
|
||||||
|
"cmake.ignoreCMakeListsMissing": true
|
||||||
|
}
|
||||||
37
.vscode/snippets.code-snippets
vendored
Normal file
@@ -0,0 +1,37 @@
|
|||||||
|
{
|
||||||
|
// Place your streaming_world workspace snippets here. Each snippet is defined under a snippet name and has a scope, prefix, body and
|
||||||
|
// description. Add comma separated ids of the languages where the snippet is applicable in the scope field. If scope
|
||||||
|
// is left empty or omitted, the snippet gets applied to all languages. The prefix is what is
|
||||||
|
// used to trigger the snippet and the body will be expanded and inserted. Possible variables are:
|
||||||
|
// $1, $2 for tab stops, $0 for the final cursor position, and ${1:label}, ${2:another} for placeholders.
|
||||||
|
// Placeholders with the same ids are connected.
|
||||||
|
// Example:
|
||||||
|
// "Print to console": {
|
||||||
|
// "scope": "javascript,typescript",
|
||||||
|
// "prefix": "log",
|
||||||
|
// "body": [
|
||||||
|
// "console.log('$1');",
|
||||||
|
// "$2"
|
||||||
|
// ],
|
||||||
|
// "description": "Log output to console"
|
||||||
|
// }
|
||||||
|
"cppHeaderGuard": {
|
||||||
|
"prefix": "hg1",
|
||||||
|
"body": [
|
||||||
|
"#ifndef ${TM_FILEPATH/(?:^.*\\\\src\\\\)?(\\w+)\\W?/${1:/upcase}_/g}",
|
||||||
|
"#define ${TM_FILEPATH/(?:^.*\\\\src\\\\)?(\\w+)\\W?/${1:/upcase}_/g}",
|
||||||
|
"",
|
||||||
|
"#endif // ${TM_FILEPATH/(?:^.*\\\\src\\\\)?(\\w+)\\W?/${1:/upcase}_/g}"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"cppHeaderGuard2": {
|
||||||
|
"prefix": "hg2",
|
||||||
|
"body": [
|
||||||
|
"/* ${TM_FILEPATH} */",
|
||||||
|
"#ifndef ${TM_FILENAME/(\\w+)\\W?/${1:/upcase}_/g}",
|
||||||
|
"#define ${TM_FILENAME/(\\w+)\\W?/${1:/upcase}_/g}",
|
||||||
|
"",
|
||||||
|
"#endif // ${TM_FILENAME/(\\w+)\\W?/${1:/upcase}_/g}"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
27
.vscode/tasks.json
vendored
Normal file
@@ -0,0 +1,27 @@
|
|||||||
|
{
|
||||||
|
// See https://go.microsoft.com/fwlink/?LinkId=733558
|
||||||
|
// for the documentation about the tasks.json format
|
||||||
|
"version": "2.0.0",
|
||||||
|
"tasks": [
|
||||||
|
{
|
||||||
|
"label": "build",
|
||||||
|
"type": "shell",
|
||||||
|
"command": "make",
|
||||||
|
"args": [
|
||||||
|
"godot-editor-main"
|
||||||
|
],
|
||||||
|
"group": {
|
||||||
|
"kind": "build",
|
||||||
|
"isDefault": true
|
||||||
|
},
|
||||||
|
"dependsOn":[
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "run-gym",
|
||||||
|
"type": "shell",
|
||||||
|
"command": "../src/godot/bin/godot.x11.opt.tools.64",
|
||||||
|
"args": ["locations/gym.tscn"]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
115
Makefile
@@ -1,34 +1,109 @@
|
|||||||
BLENDER = ../../blender-3.3.1-linux-x64/blender
|
ARCH=$(patsubst aarch64,arm64,$(shell uname -m))
|
||||||
SERVER = src/godot/bin/godot_server.x11.opt.tools.64
|
BLENDER = ../../blender-3.6.20-linux-x64/blender
|
||||||
|
SERVER = src/godot/bin/godot_server.x11.opt.tools.$(ARCH)
|
||||||
|
EDITOR_PLATFORM=x11es
|
||||||
|
EDITOR2_PLATFORM=x11
|
||||||
|
DEMO_PLATFORMS=x11 x11es
|
||||||
|
EDITOR = src/godot/bin/godot.$(EDITOR_PLATFORM).opt.tools.$(ARCH)
|
||||||
|
EDITOR_DBG = src/godot/bin/godot.$(EDITOR_PLATFORM).tools.$(ARCH)
|
||||||
|
EDITOR2 = src/godot/bin/godot.$(EDITOR2_PLATFORM).opt.tools.$(ARCH)
|
||||||
|
EDITOR2_DBG = src/godot/bin/godot.$(EDITOR2_PLATFORM).tools.$(ARCH)
|
||||||
|
|
||||||
.PHONY: all godot-editor-main export export-models export-clothes export-clean export-linux-demo export-windows-demo export-binaries patch
|
.PHONY: all godot-editor-main godot-editor-debug export export-models export-clothes \
|
||||||
all: godot-editor-main godot-main
|
export-clean export-linux-demo export-windows-demo \
|
||||||
godot-main: patch
|
export-binaries patch tests import-vrm export-buildings
|
||||||
|
all: godot-editor-main godot-editor-debug godot-main
|
||||||
|
SCONS_EXTRA=-j16
|
||||||
|
define build_godot
|
||||||
|
$(4): $(5)
|
||||||
|
@echo Building $(4)
|
||||||
cd src/godot; \
|
cd src/godot; \
|
||||||
scons platform=x11 target=release tools=no custom_modules=../modules -j16; \
|
scons platform=$(1) arch=$(ARCH) target=$(2) tools=$(3) custom_modules=../modules $(SCONS_EXTRA)
|
||||||
scons platform=x11 target=release_debug tools=no custom_modules=../modules -j16;
|
endef
|
||||||
cd src/godot; \
|
|
||||||
scons platform=x11 target=release tools=no custom_modules=../modules -j16; \
|
define build_godot_platform
|
||||||
scons platform=server target=release_debug tools=yes custom_modules=../modules -j16
|
$(eval $(call build_godot,$(1),release,no,godot-main-release-$(1),patch))
|
||||||
godot-editor-main: patch
|
$(eval $(call build_godot,$(1),debug,no,godot-main-debug-$(1),patch))
|
||||||
cd src/godot; \
|
$(eval $(call build_godot,$(1),release_debug,no,godot-main-rdebug-$(1),patch))
|
||||||
scons platform=x11 target=release_debug tools=yes custom_modules=../modules -j16;
|
GODOT_MAIN_TARGETS += godot-main-release-$(1) godot-main-debug-$(1) godot-main-rdebug-$(1)
|
||||||
|
endef
|
||||||
|
|
||||||
|
$(foreach pt,$(DEMO_PLATFORMS),$(eval $(call build_godot_platform,$(pt))))
|
||||||
|
|
||||||
|
godot-main: $(GODOT_MAIN_TARGETS) godot-editor-main godot-server-main
|
||||||
|
godot-server-main: $(SERVER)
|
||||||
|
godot-editor-main: $(EDITOR) $(EDITOR2)
|
||||||
|
godot-editor-debug: $(EDITOR_DBG) $(EDITOR2_DBG)
|
||||||
|
#$(SERVER): patch
|
||||||
|
# cd src/godot; \
|
||||||
|
# scons platform=server arch=$(ARCH) target=release_debug tools=yes custom_modules=../modules -j16
|
||||||
|
$(eval $(call build_godot,server,release_debug,yes,$(SERVER),patch))
|
||||||
|
$(eval $(call build_godot,x11es,release_debug,yes,$(EDITOR),patch))
|
||||||
|
$(eval $(call build_godot,x11es,debug,yes,$(EDITOR_DBG),patch))
|
||||||
|
$(eval $(call build_godot,x11,release_debug,yes,$(EDITOR2),patch))
|
||||||
|
$(eval $(call build_godot,x11,debug,yes,$(EDITOR2_DBG),patch))
|
||||||
patch: ./src/godot/scene/animation/skeleton_ik.cpp
|
patch: ./src/godot/scene/animation/skeleton_ik.cpp
|
||||||
cd ./src/godot && git reset --hard HEAD && for p in ../patches/*.patch; do git apply $$p; done
|
cd ./src/godot && git reset --hard HEAD && rm -Rf platform/x11es && for p in ../patches/*.patch; do git apply $$p; done
|
||||||
sed -e 's/ERR_FAIL_COND_V(-1 == p_task->root_bone, false);//g' -i ./src/godot/scene/animation/skeleton_ik.cpp
|
sed -e 's/ERR_FAIL_COND_V(-1 == p_task->root_bone, false);//g' -i ./src/godot/scene/animation/skeleton_ik.cpp
|
||||||
|
cd ./src/modules/voxel && git reset --hard HEAD && for p in ../../patches/voxel/*.patch; do git apply $$p; done
|
||||||
|
|
||||||
export: export-models export-clothes
|
export: export-models export-clothes
|
||||||
rm -Rf godot/.import
|
rm -Rf godot/.import
|
||||||
|
|
||||||
export-clean:
|
export-clean:
|
||||||
|
rm -Rf godot/character-data/*
|
||||||
rm -f assets/blender/scripts/tmp-*.blend
|
rm -f assets/blender/scripts/tmp-*.blend
|
||||||
|
|
||||||
export-models: export-clean
|
install-addons:
|
||||||
|
$(BLENDER) -b -Y -P assets/blender/scripts/install_addons.py
|
||||||
|
|
||||||
|
import-vrm: install-addons export-clean
|
||||||
|
mkdir -p assets/blender/scripts/shapes/male assets/blender/scripts/shapes/female
|
||||||
|
$(BLENDER) -b -Y -P assets/blender/scripts/import_vrm.py
|
||||||
|
|
||||||
|
export2edit: import-vrm
|
||||||
|
$(BLENDER) -b -Y -P assets/blender/scripts/export_for_modelling.py
|
||||||
|
|
||||||
|
BLENDDIR_BUILDINGS=assets/blender/buildings
|
||||||
|
GLTFDIR_BUILDINGS=godot/astream/terrain/details
|
||||||
|
BUILDINGS_BUSINESS=business-bar1 business-cafe1 business-office1 business-store1
|
||||||
|
BUILDINGS_RESIDENTAL=residental-house1 residental-house2 residental-house3 \
|
||||||
|
residental-house4 residental-house5 residental-house6 \
|
||||||
|
residental-house7 residental-house8 residental-house9 \
|
||||||
|
residental-house10 residental-house11 residental-house13 \
|
||||||
|
residental-hut1 residental-hut1-lod \
|
||||||
|
residental-garage-door \
|
||||||
|
residental-garage-enterance residental-garage \
|
||||||
|
residental-parking residental-wall1 \
|
||||||
|
residental-wall-corner residental-garage-roof1
|
||||||
|
BUILDINGS_MAIN=gym-exterior home-exterior \
|
||||||
|
logistics-center-exterior office-exterior townhall-exterior
|
||||||
|
|
||||||
|
BUILDINGS=bus-stop power-in-box power-pole power-pole-wire $(BUILDINGS_BUSINESS) \
|
||||||
|
$(BUILDINGS_RESIDENTAL) $(BUILDINGS_MAIN) \
|
||||||
|
zebra
|
||||||
|
|
||||||
|
define export_building
|
||||||
|
$(GLTFDIR_BUILDINGS)/$(1).gltf: $(BLENDDIR_BUILDINGS)/$(1).blend assets/blender/scripts/export_buildings.py
|
||||||
|
$(BLENDER) -b $(BLENDDIR_BUILDINGS)/$(1).blend -Y -P ./assets/blender/scripts/export_buildings.py -- $(GLTFDIR_BUILDINGS)/$(1).gltf
|
||||||
|
ALL_BUILDINGS += $(GLTFDIR_BUILDINGS)/$(1).gltf
|
||||||
|
CLEAN_BUILDINGS += $(GLTFDIR_BUILDINGS)/$(1).gltf \
|
||||||
|
$(GLTFDIR_BUILDINGS)/$(1).bin
|
||||||
|
endef
|
||||||
|
|
||||||
|
$(foreach prog,$(BUILDINGS),$(eval $(call export_building,$(prog))))
|
||||||
|
|
||||||
|
export-buildings: $(ALL_BUILDINGS)
|
||||||
|
@echo $(ALL_BUILDINGS)
|
||||||
|
clean-buildings:
|
||||||
|
rm -f $(CLEAN_BUILDINGS) $(GLTFDIR_BUILDINGS)/material_atlas*.material
|
||||||
|
|
||||||
|
export-models: export-clean import-vrm
|
||||||
$(BLENDER) -b -Y -P assets/blender/scripts/export_models.py
|
$(BLENDER) -b -Y -P assets/blender/scripts/export_models.py
|
||||||
|
|
||||||
export-clothes: export-clean
|
export-clothes: export-clean
|
||||||
$(BLENDER) -b -Y -P assets/blender/scripts/export_clothes.py
|
$(BLENDER) -b -Y -P assets/blender/scripts/export_clothes.py
|
||||||
|
|
||||||
export-binaries:
|
export-binaries:
|
||||||
mkdir -p export
|
mkdir -p export
|
||||||
$(SERVER) --path godot --export linux_demo ../export/office-demo-linux.x86_64
|
$(SERVER) --path godot --export linux_demo ../export/office-demo-linux.x86_64
|
||||||
@@ -36,4 +111,12 @@ export-binaries:
|
|||||||
$(SERVER) --path godot --export windows_demo ../export/office-demo-windows.x86_64.exe
|
$(SERVER) --path godot --export windows_demo ../export/office-demo-windows.x86_64.exe
|
||||||
$(SERVER) --path godot --export-debug windows_demo ../export/office-demo-debug-windows.x86_64.exe
|
$(SERVER) --path godot --export-debug windows_demo ../export/office-demo-debug-windows.x86_64.exe
|
||||||
|
|
||||||
|
pack-terrain: godot-server-main
|
||||||
|
$(SERVER) --path ./godot --import --quit
|
||||||
|
$(SERVER) --path ./godot -s make_terrain_pck.gd --quit
|
||||||
|
|
||||||
|
|
||||||
|
tests:
|
||||||
|
make -C tests all
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
2
assets/blender/.gitignore
vendored
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
vrm-*.blend*
|
||||||
|
modelling-*.blend*
|
||||||
BIN
assets/blender/astream/road/road-lanes.blend
Normal file
BIN
assets/blender/astream/road/road.png
Normal file
|
After Width: | Height: | Size: 78 KiB |
BIN
assets/blender/buildings/Atlas_00001.png
Normal file
|
After Width: | Height: | Size: 1.9 KiB |
BIN
assets/blender/buildings/Atlas_00002.png
Normal file
|
After Width: | Height: | Size: 341 B |
BIN
assets/blender/buildings/Atlas_00003.png
Normal file
|
After Width: | Height: | Size: 341 B |
BIN
assets/blender/buildings/Atlas_00004.png
Normal file
|
After Width: | Height: | Size: 341 B |
BIN
assets/blender/buildings/Atlas_00005.png
Normal file
|
After Width: | Height: | Size: 341 B |
BIN
assets/blender/buildings/Atlas_00006.png
Normal file
|
After Width: | Height: | Size: 276 B |
BIN
assets/blender/buildings/Atlas_12696.png
Normal file
|
After Width: | Height: | Size: 346 B |
BIN
assets/blender/buildings/Atlas_32944.png
Normal file
|
After Width: | Height: | Size: 431 B |
BIN
assets/blender/buildings/Atlas_36953.png
Normal file
|
After Width: | Height: | Size: 437 B |
BIN
assets/blender/buildings/Atlas_52716.png
Normal file
|
After Width: | Height: | Size: 517 B |
BIN
assets/blender/buildings/Atlas_73934.png
Normal file
|
After Width: | Height: | Size: 2.9 KiB |
BIN
assets/blender/buildings/atlas-gym-roughness.png
Normal file
|
After Width: | Height: | Size: 63 KiB |
BIN
assets/blender/buildings/atlas-gym-specular.png
Normal file
|
After Width: | Height: | Size: 18 KiB |
BIN
assets/blender/buildings/bus-stop.blend
Normal file
BIN
assets/blender/buildings/business-bar1.blend
Normal file
BIN
assets/blender/buildings/business-cafe1.blend
Normal file
BIN
assets/blender/buildings/business-office1.blend
Normal file
BIN
assets/blender/buildings/business-store1.blend
Normal file
BIN
assets/blender/buildings/dirt-road-corner.blend
Normal file
BIN
assets/blender/buildings/dirt-road-x.blend
Normal file
BIN
assets/blender/buildings/dirt-road.blend
Normal file
BIN
assets/blender/buildings/gym-exterior.blend
Normal file
BIN
assets/blender/buildings/home-exterior.blend
Normal file
BIN
assets/blender/buildings/joint-atlas-1-roughness.kra
Normal file
BIN
assets/blender/buildings/joint-atlas-1-roughness.png
Normal file
|
After Width: | Height: | Size: 14 KiB |
BIN
assets/blender/buildings/joint-atlas-1-specular.kra
Normal file
BIN
assets/blender/buildings/joint-atlas-1-specular.png
Normal file
|
After Width: | Height: | Size: 11 KiB |
BIN
assets/blender/buildings/joint-atlas-1.kra
Normal file
BIN
assets/blender/buildings/joint-atlas-1.png
Normal file
|
After Width: | Height: | Size: 10 KiB |
BIN
assets/blender/buildings/logistics-center-exterior.blend
Normal file
BIN
assets/blender/buildings/lot-large1.blend
Normal file
BIN
assets/blender/buildings/lot-large2.blend
Normal file
BIN
assets/blender/buildings/lot-small-m0.blend
Normal file
BIN
assets/blender/buildings/lot-small0.blend
Normal file
BIN
assets/blender/buildings/lot-small1.blend
Normal file
BIN
assets/blender/buildings/lot-small2.blend
Normal file
BIN
assets/blender/buildings/office-exterior.blend
Normal file
BIN
assets/blender/buildings/power-in-box.blend
Normal file
BIN
assets/blender/buildings/power-pole-wire.blend
Normal file
BIN
assets/blender/buildings/power-pole.blend
Normal file
BIN
assets/blender/buildings/residental-garage-door.blend
Normal file
BIN
assets/blender/buildings/residental-garage-enterance.blend
Normal file
BIN
assets/blender/buildings/residental-garage-roof1.blend
Normal file
BIN
assets/blender/buildings/residental-garage.blend
Normal file
BIN
assets/blender/buildings/residental-house-stair.blend
Normal file
BIN
assets/blender/buildings/residental-house1.blend
Normal file
BIN
assets/blender/buildings/residental-house10.blend
Normal file
BIN
assets/blender/buildings/residental-house11.blend
Normal file
BIN
assets/blender/buildings/residental-house12-bottom-balcony.blend
Normal file
BIN
assets/blender/buildings/residental-house12-bottom-floor.blend
Normal file
BIN
assets/blender/buildings/residental-house12-enterance.blend
Normal file
BIN
assets/blender/buildings/residental-house12-foundation.blend
Normal file
BIN
assets/blender/buildings/residental-house12-garage.blend
Normal file
BIN
assets/blender/buildings/residental-house12-orig.blend
Normal file
BIN
assets/blender/buildings/residental-house12-pipes.blend
Normal file
BIN
assets/blender/buildings/residental-house12-roof.blend
Normal file
BIN
assets/blender/buildings/residental-house12-second-floor.blend
Normal file
BIN
assets/blender/buildings/residental-house12-simple-roof.blend
Normal file
BIN
assets/blender/buildings/residental-house12-simple.blend
Normal file
BIN
assets/blender/buildings/residental-house12-stair-bottom.blend
Normal file
BIN
assets/blender/buildings/residental-house12-top-balcony.blend
Normal file
BIN
assets/blender/buildings/residental-house12.blend
Normal file
BIN
assets/blender/buildings/residental-house12.second-stair.blend
Normal file
BIN
assets/blender/buildings/residental-house13.blend
Normal file
BIN
assets/blender/buildings/residental-house2.blend
Normal file
BIN
assets/blender/buildings/residental-house3.blend
Normal file
BIN
assets/blender/buildings/residental-house4.blend
Normal file
BIN
assets/blender/buildings/residental-house5.blend
Normal file
BIN
assets/blender/buildings/residental-house6.blend
Normal file
BIN
assets/blender/buildings/residental-house6a.blend
Normal file
BIN
assets/blender/buildings/residental-house7.blend
Normal file
BIN
assets/blender/buildings/residental-house8.blend
Normal file
BIN
assets/blender/buildings/residental-house9.blend
Normal file
BIN
assets/blender/buildings/residental-hut1-lod.blend
Normal file
BIN
assets/blender/buildings/residental-hut1.blend
Normal file
BIN
assets/blender/buildings/residental-parking.blend
Normal file
BIN
assets/blender/buildings/residental-wall-corner.blend
Normal file
BIN
assets/blender/buildings/residental-wall1.blend
Normal file
BIN
assets/blender/buildings/sideroad-short1.blend
Normal file
BIN
assets/blender/buildings/t1.blend
Normal file
BIN
assets/blender/buildings/terrain-lot1.bin
Normal file
BIN
assets/blender/buildings/terrain-lot1.blend
Normal file
153
assets/blender/buildings/terrain-lot1.gltf
Normal file
@@ -0,0 +1,153 @@
|
|||||||
|
{
|
||||||
|
"asset":{
|
||||||
|
"generator":"Khronos glTF Blender I/O v3.6.28",
|
||||||
|
"version":"2.0"
|
||||||
|
},
|
||||||
|
"extensionsUsed":[
|
||||||
|
"KHR_materials_specular",
|
||||||
|
"KHR_materials_ior"
|
||||||
|
],
|
||||||
|
"scene":0,
|
||||||
|
"scenes":[
|
||||||
|
{
|
||||||
|
"name":"Scene",
|
||||||
|
"nodes":[
|
||||||
|
0
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"nodes":[
|
||||||
|
{
|
||||||
|
"mesh":0,
|
||||||
|
"name":"terrain-parking-lot-col"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"materials":[
|
||||||
|
{
|
||||||
|
"alphaCutoff":0.5,
|
||||||
|
"alphaMode":"MASK",
|
||||||
|
"extensions":{
|
||||||
|
"KHR_materials_specular":{
|
||||||
|
"specularColorFactor":[
|
||||||
|
0.474271529955476,
|
||||||
|
0.474271529955476,
|
||||||
|
0.474271529955476
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"KHR_materials_ior":{
|
||||||
|
"ior":1.4500000476837158
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"name":"material_atlas_36953_1",
|
||||||
|
"pbrMetallicRoughness":{
|
||||||
|
"baseColorTexture":{
|
||||||
|
"index":0
|
||||||
|
},
|
||||||
|
"metallicFactor":0
|
||||||
|
}
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"meshes":[
|
||||||
|
{
|
||||||
|
"name":"Plane",
|
||||||
|
"primitives":[
|
||||||
|
{
|
||||||
|
"attributes":{
|
||||||
|
"POSITION":0,
|
||||||
|
"NORMAL":1,
|
||||||
|
"TEXCOORD_0":2
|
||||||
|
},
|
||||||
|
"indices":3,
|
||||||
|
"material":0
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"textures":[
|
||||||
|
{
|
||||||
|
"sampler":0,
|
||||||
|
"source":0
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"images":[
|
||||||
|
{
|
||||||
|
"mimeType":"image/png",
|
||||||
|
"name":"Atlas_36953",
|
||||||
|
"uri":"Atlas_36953.png"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"accessors":[
|
||||||
|
{
|
||||||
|
"bufferView":0,
|
||||||
|
"componentType":5126,
|
||||||
|
"count":250,
|
||||||
|
"max":[
|
||||||
|
25.032987594604492,
|
||||||
|
0.3288002610206604,
|
||||||
|
49.057586669921875
|
||||||
|
],
|
||||||
|
"min":[
|
||||||
|
-25.032987594604492,
|
||||||
|
-4.005487442016602,
|
||||||
|
-37.008201599121094
|
||||||
|
],
|
||||||
|
"type":"VEC3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"bufferView":1,
|
||||||
|
"componentType":5126,
|
||||||
|
"count":250,
|
||||||
|
"type":"VEC3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"bufferView":2,
|
||||||
|
"componentType":5126,
|
||||||
|
"count":250,
|
||||||
|
"type":"VEC2"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"bufferView":3,
|
||||||
|
"componentType":5123,
|
||||||
|
"count":474,
|
||||||
|
"type":"SCALAR"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"bufferViews":[
|
||||||
|
{
|
||||||
|
"buffer":0,
|
||||||
|
"byteLength":3000,
|
||||||
|
"byteOffset":0,
|
||||||
|
"target":34962
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"buffer":0,
|
||||||
|
"byteLength":3000,
|
||||||
|
"byteOffset":3000,
|
||||||
|
"target":34962
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"buffer":0,
|
||||||
|
"byteLength":2000,
|
||||||
|
"byteOffset":6000,
|
||||||
|
"target":34962
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"buffer":0,
|
||||||
|
"byteLength":948,
|
||||||
|
"byteOffset":8000,
|
||||||
|
"target":34963
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"samplers":[
|
||||||
|
{
|
||||||
|
"magFilter":9729,
|
||||||
|
"minFilter":9987
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"buffers":[
|
||||||
|
{
|
||||||
|
"byteLength":8948,
|
||||||
|
"uri":"terrain-lot1.bin"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||