mirror of
https://github.com/RYDE-WORK/ballistica.git
synced 2026-02-09 09:13:24 +08:00
beginning bits of scene versioning
This commit is contained in:
parent
30a29893a1
commit
2a43584d5a
@ -3995,26 +3995,26 @@
|
|||||||
"assets/src/ba_data/python/ba/_generated/__init__.py": "https://files.ballistica.net/cache/ba1/ee/e8/cad05aa531c7faf7ff7b96db7f6e",
|
"assets/src/ba_data/python/ba/_generated/__init__.py": "https://files.ballistica.net/cache/ba1/ee/e8/cad05aa531c7faf7ff7b96db7f6e",
|
||||||
"assets/src/ba_data/python/ba/_generated/enums.py": "https://files.ballistica.net/cache/ba1/b2/e5/0ee0561e16257a32830645239f34",
|
"assets/src/ba_data/python/ba/_generated/enums.py": "https://files.ballistica.net/cache/ba1/b2/e5/0ee0561e16257a32830645239f34",
|
||||||
"ballisticacore-windows/Generic/BallisticaCore.ico": "https://files.ballistica.net/cache/ba1/89/c0/e32c7d2a35dc9aef57cc73b0911a",
|
"ballisticacore-windows/Generic/BallisticaCore.ico": "https://files.ballistica.net/cache/ba1/89/c0/e32c7d2a35dc9aef57cc73b0911a",
|
||||||
"build/prefab/full/linux_arm64_gui/debug/ballisticacore": "https://files.ballistica.net/cache/ba1/eb/f0/36d00e5087e6d76d79672b018cc8",
|
"build/prefab/full/linux_arm64_gui/debug/ballisticacore": "https://files.ballistica.net/cache/ba1/f2/08/c51a835abdfb830800214b5d4ee2",
|
||||||
"build/prefab/full/linux_arm64_gui/release/ballisticacore": "https://files.ballistica.net/cache/ba1/f2/40/9f3c84455aac48d733b30df6b5b7",
|
"build/prefab/full/linux_arm64_gui/release/ballisticacore": "https://files.ballistica.net/cache/ba1/29/86/d7dbef8da1cbf6a2227679baab80",
|
||||||
"build/prefab/full/linux_arm64_server/debug/dist/ballisticacore_headless": "https://files.ballistica.net/cache/ba1/2e/d3/aeacdcc49c0a4954afef6755f560",
|
"build/prefab/full/linux_arm64_server/debug/dist/ballisticacore_headless": "https://files.ballistica.net/cache/ba1/0a/a1/7fc60dfb937f3aac13386368dc56",
|
||||||
"build/prefab/full/linux_arm64_server/release/dist/ballisticacore_headless": "https://files.ballistica.net/cache/ba1/86/b2/80a8128225146f9515ad45c73de1",
|
"build/prefab/full/linux_arm64_server/release/dist/ballisticacore_headless": "https://files.ballistica.net/cache/ba1/f3/4f/90c63ed7c3ac40a666946d83e61c",
|
||||||
"build/prefab/full/linux_x86_64_gui/debug/ballisticacore": "https://files.ballistica.net/cache/ba1/ca/59/cbb3fe58cbaabf413340dec12e1a",
|
"build/prefab/full/linux_x86_64_gui/debug/ballisticacore": "https://files.ballistica.net/cache/ba1/02/fc/63aaa0249b27e36c5e33391ac301",
|
||||||
"build/prefab/full/linux_x86_64_gui/release/ballisticacore": "https://files.ballistica.net/cache/ba1/ec/94/076e15d29f647b7eb6b902f37198",
|
"build/prefab/full/linux_x86_64_gui/release/ballisticacore": "https://files.ballistica.net/cache/ba1/d3/ad/5788ce11e94538cea04c48dc3ef0",
|
||||||
"build/prefab/full/linux_x86_64_server/debug/dist/ballisticacore_headless": "https://files.ballistica.net/cache/ba1/55/77/07c16135863548bf52cd4cf2b0db",
|
"build/prefab/full/linux_x86_64_server/debug/dist/ballisticacore_headless": "https://files.ballistica.net/cache/ba1/69/12/9dbc452fe20c0f092cf39d50c77f",
|
||||||
"build/prefab/full/linux_x86_64_server/release/dist/ballisticacore_headless": "https://files.ballistica.net/cache/ba1/0c/c0/9ccb23d2b58d57d66dfa95346b32",
|
"build/prefab/full/linux_x86_64_server/release/dist/ballisticacore_headless": "https://files.ballistica.net/cache/ba1/f9/33/cf16d5d6c40efbc185a474b9a701",
|
||||||
"build/prefab/full/mac_arm64_gui/debug/ballisticacore": "https://files.ballistica.net/cache/ba1/ca/13/d71a2a3d204b62ec4cc23a54e384",
|
"build/prefab/full/mac_arm64_gui/debug/ballisticacore": "https://files.ballistica.net/cache/ba1/10/e6/5c8896149d987ea44b4daf8a6b30",
|
||||||
"build/prefab/full/mac_arm64_gui/release/ballisticacore": "https://files.ballistica.net/cache/ba1/c7/f0/f8c0d2e3162111499f60806b29e6",
|
"build/prefab/full/mac_arm64_gui/release/ballisticacore": "https://files.ballistica.net/cache/ba1/2f/46/22652fbf1e6d8644381fa6907fa2",
|
||||||
"build/prefab/full/mac_arm64_server/debug/dist/ballisticacore_headless": "https://files.ballistica.net/cache/ba1/66/82/8fdb20a2f00ea4920ec048193f97",
|
"build/prefab/full/mac_arm64_server/debug/dist/ballisticacore_headless": "https://files.ballistica.net/cache/ba1/7a/08/d71c945cffd15214e889af6ae86d",
|
||||||
"build/prefab/full/mac_arm64_server/release/dist/ballisticacore_headless": "https://files.ballistica.net/cache/ba1/a1/fe/ddc0c3dd421f421494b8e6a0c0cd",
|
"build/prefab/full/mac_arm64_server/release/dist/ballisticacore_headless": "https://files.ballistica.net/cache/ba1/9c/9f/8fdc621bd6589bf85dad88cb1e7c",
|
||||||
"build/prefab/full/mac_x86_64_gui/debug/ballisticacore": "https://files.ballistica.net/cache/ba1/18/7b/3ccdfcb541be04196f489d8517d6",
|
"build/prefab/full/mac_x86_64_gui/debug/ballisticacore": "https://files.ballistica.net/cache/ba1/b5/25/f58dd573f8fd0ed2bce92468d2eb",
|
||||||
"build/prefab/full/mac_x86_64_gui/release/ballisticacore": "https://files.ballistica.net/cache/ba1/2a/02/d4bb405140bda1c17517717adda8",
|
"build/prefab/full/mac_x86_64_gui/release/ballisticacore": "https://files.ballistica.net/cache/ba1/a2/c8/8abb7f6cf9cca43d4341ba4a0359",
|
||||||
"build/prefab/full/mac_x86_64_server/debug/dist/ballisticacore_headless": "https://files.ballistica.net/cache/ba1/54/74/53d8c3f6b0faa4518dbac71ddff6",
|
"build/prefab/full/mac_x86_64_server/debug/dist/ballisticacore_headless": "https://files.ballistica.net/cache/ba1/bc/ed/796ba1a0004b208ac462e7fc022b",
|
||||||
"build/prefab/full/mac_x86_64_server/release/dist/ballisticacore_headless": "https://files.ballistica.net/cache/ba1/f7/76/1bd98e4b273ef56d9d4051b8e170",
|
"build/prefab/full/mac_x86_64_server/release/dist/ballisticacore_headless": "https://files.ballistica.net/cache/ba1/21/38/dff36d635433f885c46fed606956",
|
||||||
"build/prefab/full/windows_x86_gui/debug/BallisticaCore.exe": "https://files.ballistica.net/cache/ba1/56/18/d70ca8c1ed2ad1c0d05d082da786",
|
"build/prefab/full/windows_x86_gui/debug/BallisticaCore.exe": "https://files.ballistica.net/cache/ba1/a0/e3/8a438b7be97ea9b5e3a3108014bf",
|
||||||
"build/prefab/full/windows_x86_gui/release/BallisticaCore.exe": "https://files.ballistica.net/cache/ba1/00/11/19c14108e432a9dfca5a9ef32ec2",
|
"build/prefab/full/windows_x86_gui/release/BallisticaCore.exe": "https://files.ballistica.net/cache/ba1/f8/8a/33f28e4746adac552e0f65d85b06",
|
||||||
"build/prefab/full/windows_x86_server/debug/dist/BallisticaCoreHeadless.exe": "https://files.ballistica.net/cache/ba1/a6/34/d209303ed932c0c1fb1c9b480103",
|
"build/prefab/full/windows_x86_server/debug/dist/BallisticaCoreHeadless.exe": "https://files.ballistica.net/cache/ba1/d0/1b/56a99ad953586b701e238a341d51",
|
||||||
"build/prefab/full/windows_x86_server/release/dist/BallisticaCoreHeadless.exe": "https://files.ballistica.net/cache/ba1/6b/7b/9f4c160d3d0e6198089898741957",
|
"build/prefab/full/windows_x86_server/release/dist/BallisticaCoreHeadless.exe": "https://files.ballistica.net/cache/ba1/5e/4c/5082c1b732784f50b30d453bbed9",
|
||||||
"build/prefab/lib/linux_arm64_gui/debug/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/81/60/37044e17e52ca125c1d48af83d03",
|
"build/prefab/lib/linux_arm64_gui/debug/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/81/60/37044e17e52ca125c1d48af83d03",
|
||||||
"build/prefab/lib/linux_arm64_gui/release/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/fb/47/d505c3feea40888985dd335dc8c4",
|
"build/prefab/lib/linux_arm64_gui/release/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/fb/47/d505c3feea40888985dd335dc8c4",
|
||||||
"build/prefab/lib/linux_arm64_server/debug/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/4f/3d/20c78e744ac26a13b7418166d675",
|
"build/prefab/lib/linux_arm64_server/debug/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/4f/3d/20c78e744ac26a13b7418166d675",
|
||||||
@ -4031,14 +4031,14 @@
|
|||||||
"build/prefab/lib/mac_x86_64_gui/release/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/3b/79/592c41691e94807d23a783723861",
|
"build/prefab/lib/mac_x86_64_gui/release/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/3b/79/592c41691e94807d23a783723861",
|
||||||
"build/prefab/lib/mac_x86_64_server/debug/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/13/d9/36f4cf8527494f419db74ae6c78f",
|
"build/prefab/lib/mac_x86_64_server/debug/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/13/d9/36f4cf8527494f419db74ae6c78f",
|
||||||
"build/prefab/lib/mac_x86_64_server/release/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/ee/e5/7f0677e6fb8d7cfa169930579712",
|
"build/prefab/lib/mac_x86_64_server/release/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/ee/e5/7f0677e6fb8d7cfa169930579712",
|
||||||
"build/prefab/lib/windows/Debug_Win32/BallisticaCoreGenericInternal.lib": "https://files.ballistica.net/cache/ba1/f1/e9/a36a2743cc11e888e4d877341724",
|
"build/prefab/lib/windows/Debug_Win32/BallisticaCoreGenericInternal.lib": "https://files.ballistica.net/cache/ba1/9f/5f/8e3d43b1d7c21afc621998c549da",
|
||||||
"build/prefab/lib/windows/Debug_Win32/BallisticaCoreGenericInternal.pdb": "https://files.ballistica.net/cache/ba1/4b/cd/accbffc3bd13d11b4266cad62b44",
|
"build/prefab/lib/windows/Debug_Win32/BallisticaCoreGenericInternal.pdb": "https://files.ballistica.net/cache/ba1/33/b5/23da6c12e960e583cb98072ad637",
|
||||||
"build/prefab/lib/windows/Debug_Win32/BallisticaCoreHeadlessInternal.lib": "https://files.ballistica.net/cache/ba1/91/c1/fe42b2d9442edffed30f42dbcb1e",
|
"build/prefab/lib/windows/Debug_Win32/BallisticaCoreHeadlessInternal.lib": "https://files.ballistica.net/cache/ba1/43/04/136cab4b0edf4feafae6c279c977",
|
||||||
"build/prefab/lib/windows/Debug_Win32/BallisticaCoreHeadlessInternal.pdb": "https://files.ballistica.net/cache/ba1/3b/d3/dc7bf863a0f7a986f8c88024cbe7",
|
"build/prefab/lib/windows/Debug_Win32/BallisticaCoreHeadlessInternal.pdb": "https://files.ballistica.net/cache/ba1/95/f7/41e8fe3e7a8ab6786ee5ed4956c2",
|
||||||
"build/prefab/lib/windows/Release_Win32/BallisticaCoreGenericInternal.lib": "https://files.ballistica.net/cache/ba1/2b/2a/13183d1ae34b5e46baf5c2cd51eb",
|
"build/prefab/lib/windows/Release_Win32/BallisticaCoreGenericInternal.lib": "https://files.ballistica.net/cache/ba1/b4/a1/2a5fa558d0bdcc34e6c14b819bea",
|
||||||
"build/prefab/lib/windows/Release_Win32/BallisticaCoreGenericInternal.pdb": "https://files.ballistica.net/cache/ba1/0d/98/59f17b4afffc44e0fdd7bc3fd6de",
|
"build/prefab/lib/windows/Release_Win32/BallisticaCoreGenericInternal.pdb": "https://files.ballistica.net/cache/ba1/1c/c9/aa2a975716b79c79801d61ecfb54",
|
||||||
"build/prefab/lib/windows/Release_Win32/BallisticaCoreHeadlessInternal.lib": "https://files.ballistica.net/cache/ba1/7e/f0/1946bfea786757842991e01e7749",
|
"build/prefab/lib/windows/Release_Win32/BallisticaCoreHeadlessInternal.lib": "https://files.ballistica.net/cache/ba1/d5/8c/e96d8b68d3c217fa43ce357980df",
|
||||||
"build/prefab/lib/windows/Release_Win32/BallisticaCoreHeadlessInternal.pdb": "https://files.ballistica.net/cache/ba1/33/68/499d8ceb69645456ee7e25d93a3c",
|
"build/prefab/lib/windows/Release_Win32/BallisticaCoreHeadlessInternal.pdb": "https://files.ballistica.net/cache/ba1/0d/d2/3c11d620c85cc775d284cc9d79c1",
|
||||||
"src/ballistica/generated/python_embedded/binding.inc": "https://files.ballistica.net/cache/ba1/7d/3e/229a581cb2454ed856f1d8b564a7",
|
"src/ballistica/generated/python_embedded/binding.inc": "https://files.ballistica.net/cache/ba1/7d/3e/229a581cb2454ed856f1d8b564a7",
|
||||||
"src/ballistica/generated/python_embedded/bootstrap.inc": "https://files.ballistica.net/cache/ba1/98/12/571b2160d69d42580e8f31fa6a8d"
|
"src/ballistica/generated/python_embedded/bootstrap.inc": "https://files.ballistica.net/cache/ba1/98/12/571b2160d69d42580e8f31fa6a8d"
|
||||||
}
|
}
|
||||||
@ -1,4 +1,4 @@
|
|||||||
### 1.7.7 (build 20831, api 7, 2022-09-12)
|
### 1.7.7 (build 20833, api 7, 2022-09-12)
|
||||||
- Added `ba.app.meta.load_exported_classes()` for loading classes discovered by the meta subsystem cleanly in a background thread.
|
- Added `ba.app.meta.load_exported_classes()` for loading classes discovered by the meta subsystem cleanly in a background thread.
|
||||||
- Improved logging of missing playlist game types.
|
- Improved logging of missing playlist game types.
|
||||||
- Some ba.Lstr functionality can now be used in background threads.
|
- Some ba.Lstr functionality can now be used in background threads.
|
||||||
|
|||||||
@ -38,7 +38,7 @@ def bootstrap() -> None:
|
|||||||
|
|
||||||
# Give a soft warning if we're being used with a different binary
|
# Give a soft warning if we're being used with a different binary
|
||||||
# version than we expect.
|
# version than we expect.
|
||||||
expected_build = 20831
|
expected_build = 20833
|
||||||
running_build: int = env['build_number']
|
running_build: int = env['build_number']
|
||||||
if running_build != expected_build:
|
if running_build != expected_build:
|
||||||
print(
|
print(
|
||||||
|
|||||||
@ -637,6 +637,8 @@ add_executable(ballisticacore
|
|||||||
${BA_SRC_ROOT}/ballistica/scene/scene.h
|
${BA_SRC_ROOT}/ballistica/scene/scene.h
|
||||||
${BA_SRC_ROOT}/ballistica/scene/scene_stream.cc
|
${BA_SRC_ROOT}/ballistica/scene/scene_stream.cc
|
||||||
${BA_SRC_ROOT}/ballistica/scene/scene_stream.h
|
${BA_SRC_ROOT}/ballistica/scene/scene_stream.h
|
||||||
|
${BA_SRC_ROOT}/ballistica/scene/v1/scene_v1.cc
|
||||||
|
${BA_SRC_ROOT}/ballistica/scene/v1/scene_v1.h
|
||||||
${BA_SRC_ROOT}/ballistica/ui/console.cc
|
${BA_SRC_ROOT}/ballistica/ui/console.cc
|
||||||
${BA_SRC_ROOT}/ballistica/ui/console.h
|
${BA_SRC_ROOT}/ballistica/ui/console.h
|
||||||
${BA_SRC_ROOT}/ballistica/ui/root_ui.cc
|
${BA_SRC_ROOT}/ballistica/ui/root_ui.cc
|
||||||
|
|||||||
@ -628,6 +628,8 @@
|
|||||||
<ClInclude Include="..\..\src\ballistica\scene\scene.h" />
|
<ClInclude Include="..\..\src\ballistica\scene\scene.h" />
|
||||||
<ClCompile Include="..\..\src\ballistica\scene\scene_stream.cc" />
|
<ClCompile Include="..\..\src\ballistica\scene\scene_stream.cc" />
|
||||||
<ClInclude Include="..\..\src\ballistica\scene\scene_stream.h" />
|
<ClInclude Include="..\..\src\ballistica\scene\scene_stream.h" />
|
||||||
|
<ClCompile Include="..\..\src\ballistica\scene\v1\scene_v1.cc" />
|
||||||
|
<ClInclude Include="..\..\src\ballistica\scene\v1\scene_v1.h" />
|
||||||
<ClCompile Include="..\..\src\ballistica\ui\console.cc" />
|
<ClCompile Include="..\..\src\ballistica\ui\console.cc" />
|
||||||
<ClInclude Include="..\..\src\ballistica\ui\console.h" />
|
<ClInclude Include="..\..\src\ballistica\ui\console.h" />
|
||||||
<ClCompile Include="..\..\src\ballistica\ui\root_ui.cc" />
|
<ClCompile Include="..\..\src\ballistica\ui\root_ui.cc" />
|
||||||
|
|||||||
@ -1318,6 +1318,12 @@
|
|||||||
<ClInclude Include="..\..\src\ballistica\scene\scene_stream.h">
|
<ClInclude Include="..\..\src\ballistica\scene\scene_stream.h">
|
||||||
<Filter>ballistica\scene</Filter>
|
<Filter>ballistica\scene</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
|
<ClCompile Include="..\..\src\ballistica\scene\v1\scene_v1.cc">
|
||||||
|
<Filter>ballistica\scene\v1</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClInclude Include="..\..\src\ballistica\scene\v1\scene_v1.h">
|
||||||
|
<Filter>ballistica\scene\v1</Filter>
|
||||||
|
</ClInclude>
|
||||||
<ClCompile Include="..\..\src\ballistica\ui\console.cc">
|
<ClCompile Include="..\..\src\ballistica\ui\console.cc">
|
||||||
<Filter>ballistica\ui</Filter>
|
<Filter>ballistica\ui</Filter>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
@ -1677,6 +1683,7 @@
|
|||||||
<Filter Include="ballistica\python\methods" />
|
<Filter Include="ballistica\python\methods" />
|
||||||
<Filter Include="ballistica\scene" />
|
<Filter Include="ballistica\scene" />
|
||||||
<Filter Include="ballistica\scene\node" />
|
<Filter Include="ballistica\scene\node" />
|
||||||
|
<Filter Include="ballistica\scene\v1" />
|
||||||
<Filter Include="ballistica\ui" />
|
<Filter Include="ballistica\ui" />
|
||||||
<Filter Include="ballistica\ui\widget" />
|
<Filter Include="ballistica\ui\widget" />
|
||||||
<Filter Include="external" />
|
<Filter Include="external" />
|
||||||
|
|||||||
@ -623,6 +623,8 @@
|
|||||||
<ClInclude Include="..\..\src\ballistica\scene\scene.h" />
|
<ClInclude Include="..\..\src\ballistica\scene\scene.h" />
|
||||||
<ClCompile Include="..\..\src\ballistica\scene\scene_stream.cc" />
|
<ClCompile Include="..\..\src\ballistica\scene\scene_stream.cc" />
|
||||||
<ClInclude Include="..\..\src\ballistica\scene\scene_stream.h" />
|
<ClInclude Include="..\..\src\ballistica\scene\scene_stream.h" />
|
||||||
|
<ClCompile Include="..\..\src\ballistica\scene\v1\scene_v1.cc" />
|
||||||
|
<ClInclude Include="..\..\src\ballistica\scene\v1\scene_v1.h" />
|
||||||
<ClCompile Include="..\..\src\ballistica\ui\console.cc" />
|
<ClCompile Include="..\..\src\ballistica\ui\console.cc" />
|
||||||
<ClInclude Include="..\..\src\ballistica\ui\console.h" />
|
<ClInclude Include="..\..\src\ballistica\ui\console.h" />
|
||||||
<ClCompile Include="..\..\src\ballistica\ui\root_ui.cc" />
|
<ClCompile Include="..\..\src\ballistica\ui\root_ui.cc" />
|
||||||
|
|||||||
@ -1318,6 +1318,12 @@
|
|||||||
<ClInclude Include="..\..\src\ballistica\scene\scene_stream.h">
|
<ClInclude Include="..\..\src\ballistica\scene\scene_stream.h">
|
||||||
<Filter>ballistica\scene</Filter>
|
<Filter>ballistica\scene</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
|
<ClCompile Include="..\..\src\ballistica\scene\v1\scene_v1.cc">
|
||||||
|
<Filter>ballistica\scene\v1</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClInclude Include="..\..\src\ballistica\scene\v1\scene_v1.h">
|
||||||
|
<Filter>ballistica\scene\v1</Filter>
|
||||||
|
</ClInclude>
|
||||||
<ClCompile Include="..\..\src\ballistica\ui\console.cc">
|
<ClCompile Include="..\..\src\ballistica\ui\console.cc">
|
||||||
<Filter>ballistica\ui</Filter>
|
<Filter>ballistica\ui</Filter>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
@ -1677,6 +1683,7 @@
|
|||||||
<Filter Include="ballistica\python\methods" />
|
<Filter Include="ballistica\python\methods" />
|
||||||
<Filter Include="ballistica\scene" />
|
<Filter Include="ballistica\scene" />
|
||||||
<Filter Include="ballistica\scene\node" />
|
<Filter Include="ballistica\scene\node" />
|
||||||
|
<Filter Include="ballistica\scene\v1" />
|
||||||
<Filter Include="ballistica\ui" />
|
<Filter Include="ballistica\ui" />
|
||||||
<Filter Include="ballistica\ui\widget" />
|
<Filter Include="ballistica\ui\widget" />
|
||||||
<Filter Include="external" />
|
<Filter Include="external" />
|
||||||
|
|||||||
@ -10,11 +10,9 @@
|
|||||||
#include "ballistica/assets/assets_server.h"
|
#include "ballistica/assets/assets_server.h"
|
||||||
#include "ballistica/audio/audio.h"
|
#include "ballistica/audio/audio.h"
|
||||||
#include "ballistica/audio/audio_server.h"
|
#include "ballistica/audio/audio_server.h"
|
||||||
#include "ballistica/core/context.h"
|
|
||||||
#include "ballistica/core/fatal_error.h"
|
#include "ballistica/core/fatal_error.h"
|
||||||
#include "ballistica/core/logging.h"
|
#include "ballistica/core/logging.h"
|
||||||
#include "ballistica/core/thread.h"
|
#include "ballistica/core/thread.h"
|
||||||
#include "ballistica/dynamics/bg/bg_dynamics.h"
|
|
||||||
#include "ballistica/dynamics/bg/bg_dynamics_server.h"
|
#include "ballistica/dynamics/bg/bg_dynamics_server.h"
|
||||||
#include "ballistica/graphics/graphics_server.h"
|
#include "ballistica/graphics/graphics_server.h"
|
||||||
#include "ballistica/graphics/text/text_graphics.h"
|
#include "ballistica/graphics/text/text_graphics.h"
|
||||||
@ -27,12 +25,13 @@
|
|||||||
#include "ballistica/platform/stdio_console.h"
|
#include "ballistica/platform/stdio_console.h"
|
||||||
#include "ballistica/python/python.h"
|
#include "ballistica/python/python.h"
|
||||||
#include "ballistica/scene/scene.h"
|
#include "ballistica/scene/scene.h"
|
||||||
|
#include "ballistica/scene/v1/scene_v1.h"
|
||||||
#include "ballistica/ui/ui.h"
|
#include "ballistica/ui/ui.h"
|
||||||
|
|
||||||
namespace ballistica {
|
namespace ballistica {
|
||||||
|
|
||||||
// These are set automatically via script; don't modify them here.
|
// These are set automatically via script; don't modify them here.
|
||||||
const int kAppBuildNumber = 20831;
|
const int kAppBuildNumber = 20833;
|
||||||
const char* kAppVersion = "1.7.7";
|
const char* kAppVersion = "1.7.7";
|
||||||
|
|
||||||
// Our standalone globals.
|
// Our standalone globals.
|
||||||
@ -62,6 +61,7 @@ NetworkReader* g_network_reader{};
|
|||||||
NetworkWriter* g_network_writer{};
|
NetworkWriter* g_network_writer{};
|
||||||
Platform* g_platform{};
|
Platform* g_platform{};
|
||||||
Python* g_python{};
|
Python* g_python{};
|
||||||
|
SceneV1* g_scene_v1{};
|
||||||
StdioConsole* g_stdio_console{};
|
StdioConsole* g_stdio_console{};
|
||||||
TextGraphics* g_text_graphics{};
|
TextGraphics* g_text_graphics{};
|
||||||
UI* g_ui{};
|
UI* g_ui{};
|
||||||
@ -104,7 +104,6 @@ auto BallisticaMain(int argc, char** argv) -> int {
|
|||||||
// Create a Thread wrapper around the current (main) thread.
|
// Create a Thread wrapper around the current (main) thread.
|
||||||
g_main_thread =
|
g_main_thread =
|
||||||
new Thread(ThreadIdentifier::kMain, ThreadSource::kWrapMain);
|
new Thread(ThreadIdentifier::kMain, ThreadSource::kWrapMain);
|
||||||
Thread::UpdateMainThreadID();
|
|
||||||
|
|
||||||
// Bootstrap our Python environment as early as we can (depends on
|
// Bootstrap our Python environment as early as we can (depends on
|
||||||
// g_platform for locating OS-specific paths).
|
// g_platform for locating OS-specific paths).
|
||||||
@ -131,7 +130,7 @@ auto BallisticaMain(int argc, char** argv) -> int {
|
|||||||
g_input = new Input();
|
g_input = new Input();
|
||||||
g_app_internal = CreateAppInternal();
|
g_app_internal = CreateAppInternal();
|
||||||
g_logic = new Logic();
|
g_logic = new Logic();
|
||||||
Scene::Init();
|
g_scene_v1 = new SceneV1();
|
||||||
if (!HeadlessMode()) {
|
if (!HeadlessMode()) {
|
||||||
g_bg_dynamics = new BGDynamics();
|
g_bg_dynamics = new BGDynamics();
|
||||||
g_bg_dynamics_server = new BGDynamicsServer();
|
g_bg_dynamics_server = new BGDynamicsServer();
|
||||||
@ -140,7 +139,7 @@ auto BallisticaMain(int argc, char** argv) -> int {
|
|||||||
g_stdio_console = new StdioConsole();
|
g_stdio_console = new StdioConsole();
|
||||||
}
|
}
|
||||||
|
|
||||||
// Ok at this point we can be considered up-and-running.
|
// At this point all of our globals should exist.
|
||||||
g_app->is_bootstrapped = true;
|
g_app->is_bootstrapped = true;
|
||||||
|
|
||||||
// -------------------------------------------------------------------------
|
// -------------------------------------------------------------------------
|
||||||
|
|||||||
@ -125,6 +125,7 @@ extern NetworkReader* g_network_reader;
|
|||||||
extern NetworkWriter* g_network_writer;
|
extern NetworkWriter* g_network_writer;
|
||||||
extern Platform* g_platform;
|
extern Platform* g_platform;
|
||||||
extern Python* g_python;
|
extern Python* g_python;
|
||||||
|
extern SceneV1* g_scene_v1;
|
||||||
extern StdioConsole* g_stdio_console;
|
extern StdioConsole* g_stdio_console;
|
||||||
extern TextGraphics* g_text_graphics;
|
extern TextGraphics* g_text_graphics;
|
||||||
extern UI* g_ui;
|
extern UI* g_ui;
|
||||||
|
|||||||
@ -162,6 +162,7 @@ class RootUI;
|
|||||||
class RootWidget;
|
class RootWidget;
|
||||||
class Runnable;
|
class Runnable;
|
||||||
class Scene;
|
class Scene;
|
||||||
|
class SceneV1;
|
||||||
class SceneStream;
|
class SceneStream;
|
||||||
class ScoreToBeat;
|
class ScoreToBeat;
|
||||||
class SDLApp;
|
class SDLApp;
|
||||||
|
|||||||
@ -5,107 +5,18 @@
|
|||||||
#include "ballistica/app/app.h"
|
#include "ballistica/app/app.h"
|
||||||
#include "ballistica/assets/component/sound.h"
|
#include "ballistica/assets/component/sound.h"
|
||||||
#include "ballistica/audio/audio.h"
|
#include "ballistica/audio/audio.h"
|
||||||
#include "ballistica/dynamics/bg/bg_dynamics.h"
|
|
||||||
#include "ballistica/dynamics/dynamics.h"
|
#include "ballistica/dynamics/dynamics.h"
|
||||||
#include "ballistica/dynamics/part.h"
|
|
||||||
#include "ballistica/graphics/camera.h"
|
#include "ballistica/graphics/camera.h"
|
||||||
#include "ballistica/graphics/graphics.h"
|
|
||||||
#include "ballistica/input/device/input_device.h"
|
|
||||||
#include "ballistica/logic/player.h"
|
|
||||||
#include "ballistica/networking/networking.h"
|
#include "ballistica/networking/networking.h"
|
||||||
#include "ballistica/python/python_context_call.h"
|
#include "ballistica/python/python_context_call.h"
|
||||||
#include "ballistica/scene/node/anim_curve_node.h"
|
|
||||||
#include "ballistica/scene/node/bomb_node.h"
|
#include "ballistica/scene/node/bomb_node.h"
|
||||||
#include "ballistica/scene/node/combine_node.h"
|
|
||||||
#include "ballistica/scene/node/explosion_node.h"
|
|
||||||
#include "ballistica/scene/node/flag_node.h"
|
|
||||||
#include "ballistica/scene/node/flash_node.h"
|
|
||||||
#include "ballistica/scene/node/globals_node.h"
|
|
||||||
#include "ballistica/scene/node/image_node.h"
|
|
||||||
#include "ballistica/scene/node/light_node.h"
|
|
||||||
#include "ballistica/scene/node/locator_node.h"
|
|
||||||
#include "ballistica/scene/node/math_node.h"
|
|
||||||
#include "ballistica/scene/node/node_attribute_connection.h"
|
#include "ballistica/scene/node/node_attribute_connection.h"
|
||||||
#include "ballistica/scene/node/null_node.h"
|
|
||||||
#include "ballistica/scene/node/player_node.h"
|
#include "ballistica/scene/node/player_node.h"
|
||||||
#include "ballistica/scene/node/region_node.h"
|
|
||||||
#include "ballistica/scene/node/scorch_node.h"
|
|
||||||
#include "ballistica/scene/node/session_globals_node.h"
|
|
||||||
#include "ballistica/scene/node/shield_node.h"
|
|
||||||
#include "ballistica/scene/node/sound_node.h"
|
|
||||||
#include "ballistica/scene/node/spaz_node.h"
|
|
||||||
#include "ballistica/scene/node/terrain_node.h"
|
|
||||||
#include "ballistica/scene/node/text_node.h"
|
#include "ballistica/scene/node/text_node.h"
|
||||||
#include "ballistica/scene/node/texture_sequence_node.h"
|
|
||||||
#include "ballistica/scene/node/time_display_node.h"
|
|
||||||
#include "ballistica/scene/scene_stream.h"
|
#include "ballistica/scene/scene_stream.h"
|
||||||
|
|
||||||
namespace ballistica {
|
namespace ballistica {
|
||||||
|
|
||||||
void Scene::Init() {
|
|
||||||
NodeType* node_types[] = {NullNode::InitType(),
|
|
||||||
GlobalsNode::InitType(),
|
|
||||||
SessionGlobalsNode::InitType(),
|
|
||||||
PropNode::InitType(),
|
|
||||||
FlagNode::InitType(),
|
|
||||||
BombNode::InitType(),
|
|
||||||
ExplosionNode::InitType(),
|
|
||||||
ShieldNode::InitType(),
|
|
||||||
LightNode::InitType(),
|
|
||||||
TextNode::InitType(),
|
|
||||||
AnimCurveNode::InitType(),
|
|
||||||
ImageNode::InitType(),
|
|
||||||
TerrainNode::InitType(),
|
|
||||||
MathNode::InitType(),
|
|
||||||
LocatorNode::InitType(),
|
|
||||||
PlayerNode::InitType(),
|
|
||||||
CombineNode::InitType(),
|
|
||||||
SoundNode::InitType(),
|
|
||||||
SpazNode::InitType(),
|
|
||||||
RegionNode::InitType(),
|
|
||||||
ScorchNode::InitType(),
|
|
||||||
FlashNode::InitType(),
|
|
||||||
TextureSequenceNode::InitType(),
|
|
||||||
TimeDisplayNode::InitType()};
|
|
||||||
|
|
||||||
int next_type_id = 0;
|
|
||||||
assert(g_app != nullptr);
|
|
||||||
for (auto* t : node_types) {
|
|
||||||
g_app->node_types[t->name()] = t;
|
|
||||||
g_app->node_types_by_id[next_type_id] = t;
|
|
||||||
t->set_id(next_type_id++);
|
|
||||||
}
|
|
||||||
|
|
||||||
// Types: I is 32 bit int, i is 16 bit int, c is 8 bit int,
|
|
||||||
// F is 32 bit float, f is 16 bit float,
|
|
||||||
// s is string, b is bool.
|
|
||||||
SetupNodeMessageType("flash", NodeMessageType::kFlash, "");
|
|
||||||
SetupNodeMessageType("footing", NodeMessageType::kFooting, "c");
|
|
||||||
SetupNodeMessageType("impulse", NodeMessageType::kImpulse, "fffffffffifff");
|
|
||||||
SetupNodeMessageType("kick_back", NodeMessageType::kKickback, "fffffff");
|
|
||||||
SetupNodeMessageType("celebrate", NodeMessageType::kCelebrate, "i");
|
|
||||||
SetupNodeMessageType("celebrate_l", NodeMessageType::kCelebrateL, "i");
|
|
||||||
SetupNodeMessageType("celebrate_r", NodeMessageType::kCelebrateR, "i");
|
|
||||||
SetupNodeMessageType("knockout", NodeMessageType::kKnockout, "f");
|
|
||||||
SetupNodeMessageType("hurt_sound", NodeMessageType::kHurtSound, "");
|
|
||||||
SetupNodeMessageType("picked_up", NodeMessageType::kPickedUp, "");
|
|
||||||
SetupNodeMessageType("jump_sound", NodeMessageType::kJumpSound, "");
|
|
||||||
SetupNodeMessageType("attack_sound", NodeMessageType::kAttackSound, "");
|
|
||||||
SetupNodeMessageType("scream_sound", NodeMessageType::kScreamSound, "");
|
|
||||||
SetupNodeMessageType("stand", NodeMessageType::kStand, "ffff");
|
|
||||||
}
|
|
||||||
|
|
||||||
void Scene::SetupNodeMessageType(const std::string& name, NodeMessageType val,
|
|
||||||
const std::string& format) {
|
|
||||||
assert(g_app != nullptr);
|
|
||||||
g_app->node_message_types[name] = val;
|
|
||||||
assert(static_cast<int>(val) >= 0);
|
|
||||||
if (g_app->node_message_formats.size() <= static_cast<size_t>(val)) {
|
|
||||||
g_app->node_message_formats.resize(static_cast<size_t>(val) + 1);
|
|
||||||
}
|
|
||||||
g_app->node_message_formats[static_cast<size_t>(val)] = format;
|
|
||||||
}
|
|
||||||
|
|
||||||
auto Scene::GetSceneStream() const -> SceneStream* {
|
auto Scene::GetSceneStream() const -> SceneStream* {
|
||||||
return output_stream_.get();
|
return output_stream_.get();
|
||||||
}
|
}
|
||||||
|
|||||||
@ -15,7 +15,6 @@ namespace ballistica {
|
|||||||
|
|
||||||
class Scene : public Object {
|
class Scene : public Object {
|
||||||
public:
|
public:
|
||||||
static auto Init() -> void;
|
|
||||||
explicit Scene(millisecs_t starttime);
|
explicit Scene(millisecs_t starttime);
|
||||||
~Scene() override;
|
~Scene() override;
|
||||||
auto Step() -> void;
|
auto Step() -> void;
|
||||||
@ -85,9 +84,6 @@ class Scene : public Object {
|
|||||||
auto set_globals_node(GlobalsNode* node) -> void { globals_node_ = node; }
|
auto set_globals_node(GlobalsNode* node) -> void { globals_node_ = node; }
|
||||||
|
|
||||||
private:
|
private:
|
||||||
static auto SetupNodeMessageType(const std::string& name, NodeMessageType val,
|
|
||||||
const std::string& format) -> void;
|
|
||||||
|
|
||||||
GlobalsNode* globals_node_{}; // Current globals node (if any).
|
GlobalsNode* globals_node_{}; // Current globals node (if any).
|
||||||
std::unordered_map<int, Object::WeakRef<PlayerNode> > player_nodes_;
|
std::unordered_map<int, Object::WeakRef<PlayerNode> > player_nodes_;
|
||||||
int64_t stream_id_{-1};
|
int64_t stream_id_{-1};
|
||||||
|
|||||||
96
src/ballistica/scene/v1/scene_v1.cc
Normal file
96
src/ballistica/scene/v1/scene_v1.cc
Normal file
@ -0,0 +1,96 @@
|
|||||||
|
// Released under the MIT License. See LICENSE for details.
|
||||||
|
|
||||||
|
#include "ballistica/scene/v1/scene_v1.h"
|
||||||
|
|
||||||
|
#include "ballistica/app/app.h"
|
||||||
|
#include "ballistica/scene/node/anim_curve_node.h"
|
||||||
|
#include "ballistica/scene/node/bomb_node.h"
|
||||||
|
#include "ballistica/scene/node/combine_node.h"
|
||||||
|
#include "ballistica/scene/node/explosion_node.h"
|
||||||
|
#include "ballistica/scene/node/flag_node.h"
|
||||||
|
#include "ballistica/scene/node/flash_node.h"
|
||||||
|
#include "ballistica/scene/node/globals_node.h"
|
||||||
|
#include "ballistica/scene/node/image_node.h"
|
||||||
|
#include "ballistica/scene/node/light_node.h"
|
||||||
|
#include "ballistica/scene/node/locator_node.h"
|
||||||
|
#include "ballistica/scene/node/math_node.h"
|
||||||
|
#include "ballistica/scene/node/null_node.h"
|
||||||
|
#include "ballistica/scene/node/player_node.h"
|
||||||
|
#include "ballistica/scene/node/region_node.h"
|
||||||
|
#include "ballistica/scene/node/scorch_node.h"
|
||||||
|
#include "ballistica/scene/node/session_globals_node.h"
|
||||||
|
#include "ballistica/scene/node/shield_node.h"
|
||||||
|
#include "ballistica/scene/node/sound_node.h"
|
||||||
|
#include "ballistica/scene/node/spaz_node.h"
|
||||||
|
#include "ballistica/scene/node/terrain_node.h"
|
||||||
|
#include "ballistica/scene/node/text_node.h"
|
||||||
|
#include "ballistica/scene/node/texture_sequence_node.h"
|
||||||
|
#include "ballistica/scene/node/time_display_node.h"
|
||||||
|
|
||||||
|
namespace ballistica {
|
||||||
|
|
||||||
|
static void SetupNodeMessageType(const std::string& name, NodeMessageType val,
|
||||||
|
const std::string& format) {
|
||||||
|
assert(g_app != nullptr);
|
||||||
|
g_app->node_message_types[name] = val;
|
||||||
|
assert(static_cast<int>(val) >= 0);
|
||||||
|
if (g_app->node_message_formats.size() <= static_cast<size_t>(val)) {
|
||||||
|
g_app->node_message_formats.resize(static_cast<size_t>(val) + 1);
|
||||||
|
}
|
||||||
|
g_app->node_message_formats[static_cast<size_t>(val)] = format;
|
||||||
|
}
|
||||||
|
|
||||||
|
SceneV1::SceneV1() {
|
||||||
|
NodeType* node_types[] = {NullNode::InitType(),
|
||||||
|
GlobalsNode::InitType(),
|
||||||
|
SessionGlobalsNode::InitType(),
|
||||||
|
PropNode::InitType(),
|
||||||
|
FlagNode::InitType(),
|
||||||
|
BombNode::InitType(),
|
||||||
|
ExplosionNode::InitType(),
|
||||||
|
ShieldNode::InitType(),
|
||||||
|
LightNode::InitType(),
|
||||||
|
TextNode::InitType(),
|
||||||
|
AnimCurveNode::InitType(),
|
||||||
|
ImageNode::InitType(),
|
||||||
|
TerrainNode::InitType(),
|
||||||
|
MathNode::InitType(),
|
||||||
|
LocatorNode::InitType(),
|
||||||
|
PlayerNode::InitType(),
|
||||||
|
CombineNode::InitType(),
|
||||||
|
SoundNode::InitType(),
|
||||||
|
SpazNode::InitType(),
|
||||||
|
RegionNode::InitType(),
|
||||||
|
ScorchNode::InitType(),
|
||||||
|
FlashNode::InitType(),
|
||||||
|
TextureSequenceNode::InitType(),
|
||||||
|
TimeDisplayNode::InitType()};
|
||||||
|
|
||||||
|
int next_type_id = 0;
|
||||||
|
assert(g_app != nullptr);
|
||||||
|
for (auto* t : node_types) {
|
||||||
|
g_app->node_types[t->name()] = t;
|
||||||
|
g_app->node_types_by_id[next_type_id] = t;
|
||||||
|
t->set_id(next_type_id++);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Types: I is 32 bit int, i is 16 bit int, c is 8 bit int,
|
||||||
|
// F is 32 bit float, f is 16 bit float,
|
||||||
|
// s is string, b is bool.
|
||||||
|
SetupNodeMessageType("flash", NodeMessageType::kFlash, "");
|
||||||
|
SetupNodeMessageType("footing", NodeMessageType::kFooting, "c");
|
||||||
|
SetupNodeMessageType("impulse", NodeMessageType::kImpulse, "fffffffffifff");
|
||||||
|
SetupNodeMessageType("kick_back", NodeMessageType::kKickback, "fffffff");
|
||||||
|
SetupNodeMessageType("celebrate", NodeMessageType::kCelebrate, "i");
|
||||||
|
SetupNodeMessageType("celebrate_l", NodeMessageType::kCelebrateL, "i");
|
||||||
|
SetupNodeMessageType("celebrate_r", NodeMessageType::kCelebrateR, "i");
|
||||||
|
SetupNodeMessageType("knockout", NodeMessageType::kKnockout, "f");
|
||||||
|
SetupNodeMessageType("hurt_sound", NodeMessageType::kHurtSound, "");
|
||||||
|
SetupNodeMessageType("picked_up", NodeMessageType::kPickedUp, "");
|
||||||
|
SetupNodeMessageType("jump_sound", NodeMessageType::kJumpSound, "");
|
||||||
|
SetupNodeMessageType("attack_sound", NodeMessageType::kAttackSound, "");
|
||||||
|
SetupNodeMessageType("scream_sound", NodeMessageType::kScreamSound, "");
|
||||||
|
SetupNodeMessageType("stand", NodeMessageType::kStand, "ffff");
|
||||||
|
}
|
||||||
|
|
||||||
|
} // namespace ballistica
|
||||||
16
src/ballistica/scene/v1/scene_v1.h
Normal file
16
src/ballistica/scene/v1/scene_v1.h
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
// Released under the MIT License. See LICENSE for details.
|
||||||
|
|
||||||
|
#ifndef BALLISTICA_SCENE_V1_SCENE_V1_H_
|
||||||
|
#define BALLISTICA_SCENE_V1_SCENE_V1_H_
|
||||||
|
|
||||||
|
namespace ballistica {
|
||||||
|
|
||||||
|
// Overall scene subsystem.
|
||||||
|
class SceneV1 {
|
||||||
|
public:
|
||||||
|
SceneV1();
|
||||||
|
};
|
||||||
|
|
||||||
|
} // namespace ballistica
|
||||||
|
|
||||||
|
#endif // BALLISTICA_SCENE_V1_SCENE_V1_H_
|
||||||
Loading…
x
Reference in New Issue
Block a user