mirror of
https://github.com/RYDE-WORK/ballistica.git
synced 2026-01-25 16:33:20 +08:00
prep-work for making internal parts optional
This commit is contained in:
parent
4d4645022d
commit
57d875544a
@ -3995,50 +3995,50 @@
|
||||
"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",
|
||||
"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/98/2c/3a57b1e26899a8ce72deddfedc2d",
|
||||
"build/prefab/full/linux_arm64_gui/release/ballisticacore": "https://files.ballistica.net/cache/ba1/65/ae/a6e93b58ec3db43bdc9141ff2292",
|
||||
"build/prefab/full/linux_arm64_server/debug/dist/ballisticacore_headless": "https://files.ballistica.net/cache/ba1/16/1e/f5561596304ba3f4c5e1e689a417",
|
||||
"build/prefab/full/linux_arm64_server/release/dist/ballisticacore_headless": "https://files.ballistica.net/cache/ba1/1b/c6/8c7e33ce20abfdb5400fac24d912",
|
||||
"build/prefab/full/linux_x86_64_gui/debug/ballisticacore": "https://files.ballistica.net/cache/ba1/2e/40/e7a558c524f184060a1a285a3bd4",
|
||||
"build/prefab/full/linux_x86_64_gui/release/ballisticacore": "https://files.ballistica.net/cache/ba1/fb/c1/e0a9dda43fac36bab931339e0549",
|
||||
"build/prefab/full/linux_x86_64_server/debug/dist/ballisticacore_headless": "https://files.ballistica.net/cache/ba1/44/cd/55425e1bd9a2355f5f26d103247e",
|
||||
"build/prefab/full/linux_x86_64_server/release/dist/ballisticacore_headless": "https://files.ballistica.net/cache/ba1/5c/80/d897514c88cb34e558964c3fd84e",
|
||||
"build/prefab/full/mac_arm64_gui/debug/ballisticacore": "https://files.ballistica.net/cache/ba1/ff/3f/5f6d6b1ef938fcf5dab41c9bf6b4",
|
||||
"build/prefab/full/mac_arm64_gui/release/ballisticacore": "https://files.ballistica.net/cache/ba1/c3/26/28015b10cee6fa0e5b4f5a8cf74c",
|
||||
"build/prefab/full/mac_arm64_server/debug/dist/ballisticacore_headless": "https://files.ballistica.net/cache/ba1/52/45/fb6e9c424f5b02fe1282e4750ba1",
|
||||
"build/prefab/full/mac_arm64_server/release/dist/ballisticacore_headless": "https://files.ballistica.net/cache/ba1/8a/ec/5277ccd466bba1f9e2787dca8702",
|
||||
"build/prefab/full/mac_x86_64_gui/debug/ballisticacore": "https://files.ballistica.net/cache/ba1/c3/43/0b694331a64171c28b3f7bf3070d",
|
||||
"build/prefab/full/mac_x86_64_gui/release/ballisticacore": "https://files.ballistica.net/cache/ba1/77/e3/02852c073ca65312a31423bb9ac9",
|
||||
"build/prefab/full/mac_x86_64_server/debug/dist/ballisticacore_headless": "https://files.ballistica.net/cache/ba1/72/56/abde9450dcf0d34fab2e51c37f18",
|
||||
"build/prefab/full/mac_x86_64_server/release/dist/ballisticacore_headless": "https://files.ballistica.net/cache/ba1/e7/6d/508a7e7eb92ef5893591d1bc1705",
|
||||
"build/prefab/full/windows_x86_gui/debug/BallisticaCore.exe": "https://files.ballistica.net/cache/ba1/a4/6c/0a43b4165e225c625db50225ea88",
|
||||
"build/prefab/full/windows_x86_gui/release/BallisticaCore.exe": "https://files.ballistica.net/cache/ba1/30/5c/49531bd06432ea2468a2a8d8cad3",
|
||||
"build/prefab/full/windows_x86_server/debug/dist/BallisticaCoreHeadless.exe": "https://files.ballistica.net/cache/ba1/eb/a5/732bdadc7d22a861f0f395774069",
|
||||
"build/prefab/full/windows_x86_server/release/dist/BallisticaCoreHeadless.exe": "https://files.ballistica.net/cache/ba1/e8/7b/7f577295652610d105ddcb65ea38",
|
||||
"build/prefab/lib/linux_arm64_gui/debug/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/a4/3e/9436a48d22a818f5c38ec6c79662",
|
||||
"build/prefab/lib/linux_arm64_gui/release/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/5e/0f/f4f6f8a2379f03ac45d475c10d69",
|
||||
"build/prefab/lib/linux_arm64_server/debug/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/6f/59/cf17fc32ed37c901d7ef5f838918",
|
||||
"build/prefab/lib/linux_arm64_server/release/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/05/a3/21155690a20d59ddc49388bf2dc2",
|
||||
"build/prefab/lib/linux_x86_64_gui/debug/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/a9/ba/501984f66a889f1482856e515fb2",
|
||||
"build/prefab/lib/linux_x86_64_gui/release/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/77/d6/ace05e23b2b241dcadec1aba7253",
|
||||
"build/prefab/lib/linux_x86_64_server/debug/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/47/f6/3019e4ef93ac786057a77f3fff1d",
|
||||
"build/prefab/lib/linux_x86_64_server/release/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/cd/dd/47d65260ca9c04eda20adccd6f71",
|
||||
"build/prefab/lib/mac_arm64_gui/debug/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/24/6e/a05c396868c18e8c66ef52b49166",
|
||||
"build/prefab/lib/mac_arm64_gui/release/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/b0/8e/e14993bad63ef92ba5ccb532dbb4",
|
||||
"build/prefab/lib/mac_arm64_server/debug/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/c5/39/75d3dde444ab63aa2c1d49b212f8",
|
||||
"build/prefab/lib/mac_arm64_server/release/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/0f/92/8630636fbcdbeee3c95660342639",
|
||||
"build/prefab/lib/mac_x86_64_gui/debug/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/7b/5f/6f8a0d6cd233aae4b7d394f3dc9e",
|
||||
"build/prefab/lib/mac_x86_64_gui/release/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/fb/f2/759a510b82faeb4ab5acc2c3052b",
|
||||
"build/prefab/lib/mac_x86_64_server/debug/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/84/e7/553f60e4603414a35598284c13d6",
|
||||
"build/prefab/lib/mac_x86_64_server/release/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/d9/1c/411f47bc58390560f347ece26172",
|
||||
"build/prefab/lib/windows/Debug_Win32/BallisticaCoreGenericInternal.lib": "https://files.ballistica.net/cache/ba1/4e/27/fac43344cb6ad625ee6b8f4eb025",
|
||||
"build/prefab/lib/windows/Debug_Win32/BallisticaCoreGenericInternal.pdb": "https://files.ballistica.net/cache/ba1/64/71/fd8c80764edb5c8b3c3e9302283c",
|
||||
"build/prefab/lib/windows/Debug_Win32/BallisticaCoreHeadlessInternal.lib": "https://files.ballistica.net/cache/ba1/2f/9c/100bc1657b231fad168f36d2b5f9",
|
||||
"build/prefab/lib/windows/Debug_Win32/BallisticaCoreHeadlessInternal.pdb": "https://files.ballistica.net/cache/ba1/4d/91/c51ecec26a14c86ac04ac864b92e",
|
||||
"build/prefab/lib/windows/Release_Win32/BallisticaCoreGenericInternal.lib": "https://files.ballistica.net/cache/ba1/13/3b/476da858cec08be51883372cfc4f",
|
||||
"build/prefab/lib/windows/Release_Win32/BallisticaCoreGenericInternal.pdb": "https://files.ballistica.net/cache/ba1/58/ed/9738b4be3c927e807cfaa38a7df8",
|
||||
"build/prefab/lib/windows/Release_Win32/BallisticaCoreHeadlessInternal.lib": "https://files.ballistica.net/cache/ba1/97/e9/a10d1fc18dd3360dfad40624efd5",
|
||||
"build/prefab/lib/windows/Release_Win32/BallisticaCoreHeadlessInternal.pdb": "https://files.ballistica.net/cache/ba1/38/61/9da5f4158128bb2330645f44ae8c",
|
||||
"build/prefab/full/linux_arm64_gui/debug/ballisticacore": "https://files.ballistica.net/cache/ba1/e6/fa/a6d850360d1a7cbf35ceb764ad32",
|
||||
"build/prefab/full/linux_arm64_gui/release/ballisticacore": "https://files.ballistica.net/cache/ba1/58/f9/1c7086b632a9ebdb5ba19dfab3cf",
|
||||
"build/prefab/full/linux_arm64_server/debug/dist/ballisticacore_headless": "https://files.ballistica.net/cache/ba1/05/53/9039866ebcd2dd69645fcd872cd9",
|
||||
"build/prefab/full/linux_arm64_server/release/dist/ballisticacore_headless": "https://files.ballistica.net/cache/ba1/62/b5/79f78facfdd4cd86dc1d4767cc15",
|
||||
"build/prefab/full/linux_x86_64_gui/debug/ballisticacore": "https://files.ballistica.net/cache/ba1/3f/d4/e6c1a8f06f1d23eee27fb7164839",
|
||||
"build/prefab/full/linux_x86_64_gui/release/ballisticacore": "https://files.ballistica.net/cache/ba1/42/d1/268f4cebbbab626f668e22d08689",
|
||||
"build/prefab/full/linux_x86_64_server/debug/dist/ballisticacore_headless": "https://files.ballistica.net/cache/ba1/29/9f/cd098d7d87936893eafcd1cd52c0",
|
||||
"build/prefab/full/linux_x86_64_server/release/dist/ballisticacore_headless": "https://files.ballistica.net/cache/ba1/35/32/0e9e8d112b8aa02e787fd72ca2e6",
|
||||
"build/prefab/full/mac_arm64_gui/debug/ballisticacore": "https://files.ballistica.net/cache/ba1/da/92/be9c4085ed3fe8cb8aeb6dd4b6b8",
|
||||
"build/prefab/full/mac_arm64_gui/release/ballisticacore": "https://files.ballistica.net/cache/ba1/6a/65/3a80fd6a0594d157b8ab92883b2f",
|
||||
"build/prefab/full/mac_arm64_server/debug/dist/ballisticacore_headless": "https://files.ballistica.net/cache/ba1/ba/39/be2b8f7b86feebde32147640de7a",
|
||||
"build/prefab/full/mac_arm64_server/release/dist/ballisticacore_headless": "https://files.ballistica.net/cache/ba1/92/ad/ba0c7c1286337c1837d018fe9320",
|
||||
"build/prefab/full/mac_x86_64_gui/debug/ballisticacore": "https://files.ballistica.net/cache/ba1/a5/09/f4d4da0f458f26fb551f97a321c4",
|
||||
"build/prefab/full/mac_x86_64_gui/release/ballisticacore": "https://files.ballistica.net/cache/ba1/b4/26/a6bc39c9413bc1d12d0d4c6a14d8",
|
||||
"build/prefab/full/mac_x86_64_server/debug/dist/ballisticacore_headless": "https://files.ballistica.net/cache/ba1/be/f0/b0864fb2909027994f99862af75c",
|
||||
"build/prefab/full/mac_x86_64_server/release/dist/ballisticacore_headless": "https://files.ballistica.net/cache/ba1/25/0b/10f2197f805915c0124dd0948975",
|
||||
"build/prefab/full/windows_x86_gui/debug/BallisticaCore.exe": "https://files.ballistica.net/cache/ba1/d5/fc/bd1594788c70e4a1c217247c1fbb",
|
||||
"build/prefab/full/windows_x86_gui/release/BallisticaCore.exe": "https://files.ballistica.net/cache/ba1/98/b2/b549c884954266dad836090d53ca",
|
||||
"build/prefab/full/windows_x86_server/debug/dist/BallisticaCoreHeadless.exe": "https://files.ballistica.net/cache/ba1/33/b3/9ea1255d8a81a20b7cc400f0b9c0",
|
||||
"build/prefab/full/windows_x86_server/release/dist/BallisticaCoreHeadless.exe": "https://files.ballistica.net/cache/ba1/15/f1/bc11435032c10e5d4f60bb6cb951",
|
||||
"build/prefab/lib/linux_arm64_gui/debug/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/ae/65/9f762ac4a1c07bbc85714f4ff487",
|
||||
"build/prefab/lib/linux_arm64_gui/release/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/60/12/7d0d2c7fa57705f26f9ee25f5eb7",
|
||||
"build/prefab/lib/linux_arm64_server/debug/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/88/89/8afc89527d34b8b32d792b1768cc",
|
||||
"build/prefab/lib/linux_arm64_server/release/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/00/3b/26438d3e877a2a5b30ff0622d1d9",
|
||||
"build/prefab/lib/linux_x86_64_gui/debug/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/54/37/ed1a28f6d2f8801939c3af3f2cbe",
|
||||
"build/prefab/lib/linux_x86_64_gui/release/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/84/c0/33d97960b9bbb74f3764ddfb5510",
|
||||
"build/prefab/lib/linux_x86_64_server/debug/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/8b/2f/dd23665f6b590f0d1392634d58fc",
|
||||
"build/prefab/lib/linux_x86_64_server/release/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/54/5d/2a9fbe5f0011bfc45e560f56376e",
|
||||
"build/prefab/lib/mac_arm64_gui/debug/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/85/08/152e657b8ed6917233ecabd88813",
|
||||
"build/prefab/lib/mac_arm64_gui/release/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/fa/5c/16405030ec49d878d8b6de06c665",
|
||||
"build/prefab/lib/mac_arm64_server/debug/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/ec/8e/e320531f0d1f280afdb841c85667",
|
||||
"build/prefab/lib/mac_arm64_server/release/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/4c/14/536c47d64624acdb36ccc393ecf4",
|
||||
"build/prefab/lib/mac_x86_64_gui/debug/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/fe/db/cf274ff81ccc70090fac58bdbdda",
|
||||
"build/prefab/lib/mac_x86_64_gui/release/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/d0/cc/dd5234f21a502657aeb042440f49",
|
||||
"build/prefab/lib/mac_x86_64_server/debug/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/8e/69/d9407dd92b1397548cd274c16b5f",
|
||||
"build/prefab/lib/mac_x86_64_server/release/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/df/83/0a461388cf1b14a7e5b8356af40f",
|
||||
"build/prefab/lib/windows/Debug_Win32/BallisticaCoreGenericInternal.lib": "https://files.ballistica.net/cache/ba1/42/b4/3456304a0c61e7ea54de0c714b64",
|
||||
"build/prefab/lib/windows/Debug_Win32/BallisticaCoreGenericInternal.pdb": "https://files.ballistica.net/cache/ba1/00/cf/15cff772100169a8e17eb1e9420f",
|
||||
"build/prefab/lib/windows/Debug_Win32/BallisticaCoreHeadlessInternal.lib": "https://files.ballistica.net/cache/ba1/08/0a/3c1628d8387d54ac1afc3b946662",
|
||||
"build/prefab/lib/windows/Debug_Win32/BallisticaCoreHeadlessInternal.pdb": "https://files.ballistica.net/cache/ba1/3f/d3/e6faece149393d0933f4bdc01989",
|
||||
"build/prefab/lib/windows/Release_Win32/BallisticaCoreGenericInternal.lib": "https://files.ballistica.net/cache/ba1/f8/3e/266e72c426e172f39f7808931850",
|
||||
"build/prefab/lib/windows/Release_Win32/BallisticaCoreGenericInternal.pdb": "https://files.ballistica.net/cache/ba1/20/e5/cf23928643af4440a129b6b05ce0",
|
||||
"build/prefab/lib/windows/Release_Win32/BallisticaCoreHeadlessInternal.lib": "https://files.ballistica.net/cache/ba1/d8/a1/ce2de181c40cad598c6f41ee50e9",
|
||||
"build/prefab/lib/windows/Release_Win32/BallisticaCoreHeadlessInternal.pdb": "https://files.ballistica.net/cache/ba1/6f/74/a733036d25bf2a4ca529b37c4dce",
|
||||
"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"
|
||||
}
|
||||
@ -1,4 +1,4 @@
|
||||
### 1.7.7 (build 20741, api 7, 2022-09-02)
|
||||
### 1.7.7 (build 20746, api 7, 2022-09-03)
|
||||
- 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.
|
||||
- Some ba.Lstr functionality can now be used in background threads.
|
||||
|
||||
@ -1 +1 @@
|
||||
121748926490457154634465746862153767685
|
||||
58669269684775875412740144262313315598
|
||||
@ -32,7 +32,7 @@ def bootstrap() -> None:
|
||||
|
||||
# Give a soft warning if we're being used with a different binary
|
||||
# version than we expect.
|
||||
expected_build = 20741
|
||||
expected_build = 20746
|
||||
running_build: int = env['build_number']
|
||||
if running_build != expected_build:
|
||||
print(
|
||||
|
||||
@ -457,6 +457,7 @@ add_executable(ballisticacore
|
||||
${BA_SRC_ROOT}/ballistica/input/remote_app.h
|
||||
${BA_SRC_ROOT}/ballistica/input/std_input_module.cc
|
||||
${BA_SRC_ROOT}/ballistica/input/std_input_module.h
|
||||
${BA_SRC_ROOT}/ballistica/internal/internal.h
|
||||
${BA_SRC_ROOT}/ballistica/math/matrix44f.cc
|
||||
${BA_SRC_ROOT}/ballistica/math/matrix44f.h
|
||||
${BA_SRC_ROOT}/ballistica/math/point2d.h
|
||||
|
||||
@ -448,6 +448,7 @@
|
||||
<ClInclude Include="..\..\src\ballistica\input\remote_app.h" />
|
||||
<ClCompile Include="..\..\src\ballistica\input\std_input_module.cc" />
|
||||
<ClInclude Include="..\..\src\ballistica\input\std_input_module.h" />
|
||||
<ClInclude Include="..\..\src\ballistica\internal\internal.h" />
|
||||
<ClCompile Include="..\..\src\ballistica\math\matrix44f.cc" />
|
||||
<ClInclude Include="..\..\src\ballistica\math\matrix44f.h" />
|
||||
<ClInclude Include="..\..\src\ballistica\math\point2d.h" />
|
||||
|
||||
@ -778,6 +778,9 @@
|
||||
<ClInclude Include="..\..\src\ballistica\input\std_input_module.h">
|
||||
<Filter>ballistica\input</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\ballistica\internal\internal.h">
|
||||
<Filter>ballistica\internal</Filter>
|
||||
</ClInclude>
|
||||
<ClCompile Include="..\..\src\ballistica\math\matrix44f.cc">
|
||||
<Filter>ballistica\math</Filter>
|
||||
</ClCompile>
|
||||
@ -1667,6 +1670,7 @@
|
||||
<Filter Include="ballistica\graphics\texture" />
|
||||
<Filter Include="ballistica\input" />
|
||||
<Filter Include="ballistica\input\device" />
|
||||
<Filter Include="ballistica\internal" />
|
||||
<Filter Include="ballistica\math" />
|
||||
<Filter Include="ballistica\media" />
|
||||
<Filter Include="ballistica\media\component" />
|
||||
|
||||
@ -443,6 +443,7 @@
|
||||
<ClInclude Include="..\..\src\ballistica\input\remote_app.h" />
|
||||
<ClCompile Include="..\..\src\ballistica\input\std_input_module.cc" />
|
||||
<ClInclude Include="..\..\src\ballistica\input\std_input_module.h" />
|
||||
<ClInclude Include="..\..\src\ballistica\internal\internal.h" />
|
||||
<ClCompile Include="..\..\src\ballistica\math\matrix44f.cc" />
|
||||
<ClInclude Include="..\..\src\ballistica\math\matrix44f.h" />
|
||||
<ClInclude Include="..\..\src\ballistica\math\point2d.h" />
|
||||
|
||||
@ -778,6 +778,9 @@
|
||||
<ClInclude Include="..\..\src\ballistica\input\std_input_module.h">
|
||||
<Filter>ballistica\input</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\ballistica\internal\internal.h">
|
||||
<Filter>ballistica\internal</Filter>
|
||||
</ClInclude>
|
||||
<ClCompile Include="..\..\src\ballistica\math\matrix44f.cc">
|
||||
<Filter>ballistica\math</Filter>
|
||||
</ClCompile>
|
||||
@ -1667,6 +1670,7 @@
|
||||
<Filter Include="ballistica\graphics\texture" />
|
||||
<Filter Include="ballistica\input" />
|
||||
<Filter Include="ballistica\input\device" />
|
||||
<Filter Include="ballistica\internal" />
|
||||
<Filter Include="ballistica\math" />
|
||||
<Filter Include="ballistica\media" />
|
||||
<Filter Include="ballistica\media\component" />
|
||||
|
||||
@ -11,7 +11,8 @@ namespace ballistica {
|
||||
|
||||
VRApp::VRApp(Thread* thread) : App(thread) {}
|
||||
|
||||
void VRApp::PushVRSimpleRemoteStateCall(const VRSimpleRemoteState& state) {
|
||||
auto VRApp::PushVRSimpleRemoteStateCall(const VRSimpleRemoteState& state)
|
||||
-> void {
|
||||
PushCall([this, state] {
|
||||
// Convert this to a full hands state, adding in some simple elbow
|
||||
// positioning of our own and left/right.
|
||||
@ -34,7 +35,7 @@ void VRApp::PushVRSimpleRemoteStateCall(const VRSimpleRemoteState& state) {
|
||||
});
|
||||
}
|
||||
|
||||
void VRApp::VRSetDrawDimensions(int w, int h) {
|
||||
auto VRApp::VRSetDrawDimensions(int w, int h) -> void {
|
||||
g_graphics_server->VideoResize(w, h);
|
||||
}
|
||||
|
||||
@ -55,7 +56,7 @@ void VRApp::VRPreDraw() {
|
||||
}
|
||||
}
|
||||
|
||||
void VRApp::VRPostDraw() {
|
||||
auto VRApp::VRPostDraw() -> void {
|
||||
assert(InMainThread());
|
||||
if (!g_graphics_server || !g_graphics_server->renderer()) {
|
||||
return;
|
||||
@ -67,15 +68,15 @@ void VRApp::VRPostDraw() {
|
||||
RunRenderUpkeepCycle();
|
||||
}
|
||||
|
||||
void VRApp::VRSetHead(float tx, float ty, float tz, float yaw, float pitch,
|
||||
float roll) {
|
||||
auto VRApp::VRSetHead(float tx, float ty, float tz, float yaw, float pitch,
|
||||
float roll) -> void {
|
||||
assert(InMainThread());
|
||||
Renderer* renderer = g_graphics_server->renderer();
|
||||
if (renderer == nullptr) return;
|
||||
renderer->VRSetHead(tx, ty, tz, yaw, pitch, roll);
|
||||
}
|
||||
|
||||
void VRApp::VRSetHands(const VRHandsState& state) {
|
||||
auto VRApp::VRSetHands(const VRHandsState& state) -> void {
|
||||
assert(InMainThread());
|
||||
|
||||
// Pass this along to the renderer (in this same thread) for drawing
|
||||
@ -88,10 +89,10 @@ void VRApp::VRSetHands(const VRHandsState& state) {
|
||||
g_game->PushVRHandsState(state);
|
||||
}
|
||||
|
||||
void VRApp::VRDrawEye(int eye, float yaw, float pitch, float roll, float tan_l,
|
||||
auto VRApp::VRDrawEye(int eye, float yaw, float pitch, float roll, float tan_l,
|
||||
float tan_r, float tan_b, float tan_t, float eye_x,
|
||||
float eye_y, float eye_z, int viewport_x,
|
||||
int viewport_y) {
|
||||
float eye_y, float eye_z, int viewport_x, int viewport_y)
|
||||
-> void {
|
||||
if (!g_graphics_server || !g_graphics_server->renderer()) {
|
||||
return;
|
||||
}
|
||||
|
||||
@ -20,23 +20,24 @@ class VRApp : public App {
|
||||
};
|
||||
|
||||
/// Return g_app as a VRApp. (assumes it actually is one).
|
||||
static VRApp* get() {
|
||||
static auto get() -> VRApp* {
|
||||
assert(g_app != nullptr);
|
||||
assert(dynamic_cast<VRApp*>(g_app) == static_cast<VRApp*>(g_app));
|
||||
return static_cast<VRApp*>(g_app);
|
||||
}
|
||||
|
||||
explicit VRApp(Thread* thread);
|
||||
void PushVRSimpleRemoteStateCall(const VRSimpleRemoteState& state);
|
||||
void VRSetDrawDimensions(int w, int h);
|
||||
void VRPreDraw();
|
||||
void VRPostDraw();
|
||||
void VRSetHead(float tx, float ty, float tz, float yaw, float pitch,
|
||||
float roll);
|
||||
void VRSetHands(const VRHandsState& state);
|
||||
void VRDrawEye(int eye, float yaw, float pitch, float roll, float tan_l,
|
||||
auto PushVRSimpleRemoteStateCall(const VRSimpleRemoteState& state) -> void;
|
||||
auto VRSetDrawDimensions(int w, int h) -> void;
|
||||
auto VRPreDraw() -> void;
|
||||
auto VRPostDraw() -> void;
|
||||
auto VRSetHead(float tx, float ty, float tz, float yaw, float pitch,
|
||||
float roll) -> void;
|
||||
auto VRSetHands(const VRHandsState& state) -> void;
|
||||
auto VRDrawEye(int eye, float yaw, float pitch, float roll, float tan_l,
|
||||
float tan_r, float tan_b, float tan_t, float eye_x,
|
||||
float eye_y, float eye_z, int viewport_x, int viewport_y);
|
||||
float eye_y, float eye_z, int viewport_x, int viewport_y)
|
||||
-> void;
|
||||
|
||||
private:
|
||||
FrameDef* vr_render_frame_def_{};
|
||||
|
||||
@ -22,7 +22,7 @@
|
||||
namespace ballistica {
|
||||
|
||||
// These are set automatically via script; don't modify them here.
|
||||
const int kAppBuildNumber = 20741;
|
||||
const int kAppBuildNumber = 20746;
|
||||
const char* kAppVersion = "1.7.7";
|
||||
|
||||
// Our standalone globals.
|
||||
@ -269,7 +269,7 @@ auto InNetworkWriteThread() -> bool {
|
||||
&& g_network_write_module->thread()->IsCurrent());
|
||||
}
|
||||
|
||||
void Log(const std::string& msg, bool to_stdout, bool to_server) {
|
||||
auto Log(const std::string& msg, bool to_stdout, bool to_server) -> void {
|
||||
Logging::Log(msg, to_stdout, to_server);
|
||||
}
|
||||
|
||||
@ -283,7 +283,7 @@ void ScreenMessage(const std::string& s, const Vector3f& color) {
|
||||
}
|
||||
}
|
||||
|
||||
void ScreenMessage(const std::string& msg) {
|
||||
auto ScreenMessage(const std::string& msg) -> void {
|
||||
ScreenMessage(msg, {1.0f, 1.0f, 1.0f});
|
||||
}
|
||||
|
||||
|
||||
@ -2,7 +2,6 @@
|
||||
|
||||
#include "ballistica/game/connection/connection_to_client.h"
|
||||
|
||||
// #include "ballistica/app/app_internal.h"
|
||||
#include "ballistica/audio/audio.h"
|
||||
#include "ballistica/game/client_controller_interface.h"
|
||||
#include "ballistica/game/connection/connection_set.h"
|
||||
|
||||
18
src/ballistica/internal/internal.h
Normal file
18
src/ballistica/internal/internal.h
Normal file
@ -0,0 +1,18 @@
|
||||
// Released under the MIT License. See LICENSE for details.
|
||||
|
||||
#ifndef BALLISTICA_INTERNAL_INTERNAL_H_
|
||||
#define BALLISTICA_INTERNAL_INTERNAL_H_
|
||||
|
||||
namespace ballistica {
|
||||
|
||||
/// Our high level app interface module.
|
||||
/// It runs in the main thread and is what platform wrappers
|
||||
/// should primarily interact with.
|
||||
class AppInternalBase {
|
||||
public:
|
||||
virtual ~AppInternalBase() {}
|
||||
};
|
||||
|
||||
} // namespace ballistica
|
||||
|
||||
#endif // BALLISTICA_INTERNAL_INTERNAL_H_
|
||||
@ -946,6 +946,7 @@ void Python::Reset(bool do_init) {
|
||||
BA_PRECONDITION(m = PyImport_AddModule("__main__"));
|
||||
BA_PRECONDITION(main_dict_ = PyModule_GetDict(m));
|
||||
|
||||
// Make sure we're running the Python version we require.
|
||||
const char* ver = Py_GetVersion();
|
||||
if (strncmp(ver, "3.10", 4) != 0) {
|
||||
throw Exception("We require Python 3.10.x; instead found "
|
||||
@ -960,7 +961,7 @@ void Python::Reset(bool do_init) {
|
||||
// Run a few core bootstrappy things first:
|
||||
// - get stdout/stderr redirection up so we can intercept python output
|
||||
// - add our user and system script dirs to python path
|
||||
// - import and instantiate our app-state class
|
||||
// - create the ba.app instance.
|
||||
|
||||
#include "ballistica/generated/python_embedded/bootstrap.inc"
|
||||
PyObject* result =
|
||||
@ -975,7 +976,7 @@ void Python::Reset(bool do_init) {
|
||||
}
|
||||
Py_DECREF(result);
|
||||
|
||||
// Import and grab all the Python stuff we use.
|
||||
// Import and grab all the Python stuff we use from C++.
|
||||
#include "ballistica/generated/python_embedded/binding.inc"
|
||||
|
||||
AppInternalPythonPostInit();
|
||||
|
||||
@ -35,7 +35,7 @@ class Python {
|
||||
static auto current_label() -> const char* { return current_label_; }
|
||||
|
||||
private:
|
||||
const char* prev_label_ = nullptr;
|
||||
const char* prev_label_{};
|
||||
static const char* current_label_;
|
||||
BA_DISALLOW_CLASS_COPIES(ScopedCallLabel);
|
||||
};
|
||||
@ -63,7 +63,7 @@ class Python {
|
||||
static auto HaveGIL() -> bool;
|
||||
|
||||
/// Attempt to print the python stack trace.
|
||||
static void PrintStackTrace();
|
||||
static auto PrintStackTrace() -> void;
|
||||
|
||||
/// Pass any PyObject* (including nullptr) to get a readable string
|
||||
/// (basically equivalent of str(foo)).
|
||||
@ -75,14 +75,14 @@ class Python {
|
||||
auto ValidatedPackageAssetName(PyObject* package, const char* name)
|
||||
-> std::string;
|
||||
|
||||
static void LogContextForCallableLabel(const char* label);
|
||||
static void LogContextEmpty();
|
||||
static void LogContextAuto();
|
||||
static void LogContextNonLogicThread();
|
||||
static auto LogContextForCallableLabel(const char* label) -> void;
|
||||
static auto LogContextEmpty() -> void;
|
||||
static auto LogContextAuto() -> void;
|
||||
static auto LogContextNonLogicThread() -> void;
|
||||
Python();
|
||||
~Python();
|
||||
|
||||
void Reset(bool init = true);
|
||||
auto Reset(bool init = true) -> void;
|
||||
|
||||
/// Add classes to the newly created ba module.
|
||||
static auto InitModuleClasses(PyObject* module) -> void;
|
||||
@ -93,19 +93,19 @@ class Python {
|
||||
const std::string& value_name) -> int;
|
||||
auto GetControllerFloatValue(InputDevice* input_device,
|
||||
const std::string& value_name) -> float;
|
||||
void HandleDeviceMenuPress(InputDevice* input_device);
|
||||
auto HandleDeviceMenuPress(InputDevice* input_device) -> void;
|
||||
auto GetLastPlayerNameFromInputDevice(InputDevice* input_device)
|
||||
-> std::string;
|
||||
void AcquireGIL();
|
||||
void ReleaseGIL();
|
||||
auto AcquireGIL() -> void;
|
||||
auto ReleaseGIL() -> void;
|
||||
|
||||
void LaunchStringEdit(TextWidget* w);
|
||||
void CaptureGamePadInput(PyObject* obj);
|
||||
void ReleaseGamePadInput();
|
||||
void CaptureKeyboardInput(PyObject* obj);
|
||||
void ReleaseKeyboardInput();
|
||||
void HandleFriendScoresCB(const FriendScoreSet& ss);
|
||||
void IssueCallInLogicThreadWarning(PyObject* call);
|
||||
auto LaunchStringEdit(TextWidget* w) -> void;
|
||||
auto CaptureGamePadInput(PyObject* obj) -> void;
|
||||
auto ReleaseGamePadInput() -> void;
|
||||
auto CaptureKeyboardInput(PyObject* obj) -> void;
|
||||
auto ReleaseKeyboardInput() -> void;
|
||||
auto HandleFriendScoresCB(const FriendScoreSet& ss) -> void;
|
||||
auto IssueCallInLogicThreadWarning(PyObject* call) -> void;
|
||||
|
||||
/// Borrowed from python's source code: used in overriding of objects' dir()
|
||||
/// results.
|
||||
@ -125,24 +125,24 @@ class Python {
|
||||
auto FilterChatMessage(std::string* message, int client_id) -> bool;
|
||||
|
||||
/// Pass a chat message along to the python UI layer for handling..
|
||||
void HandleLocalChatMessage(const std::string& message);
|
||||
auto HandleLocalChatMessage(const std::string& message) -> void;
|
||||
|
||||
void DispatchScoresToBeatResponse(
|
||||
auto DispatchScoresToBeatResponse(
|
||||
bool success, const std::list<ScoreToBeat>& scores_to_beat,
|
||||
void* PyCallback);
|
||||
void* PyCallback) -> void;
|
||||
|
||||
/// Pop up an in-game window to show a url (NOT in a browser).
|
||||
void ShowURL(const std::string& url);
|
||||
auto ShowURL(const std::string& url) -> void;
|
||||
|
||||
void AddCleanFrameCommand(const Object::Ref<PythonContextCall>& c);
|
||||
void RunCleanFrameCommands();
|
||||
auto AddCleanFrameCommand(const Object::Ref<PythonContextCall>& c) -> void;
|
||||
auto RunCleanFrameCommands() -> void;
|
||||
|
||||
/// Return a minimal filename/position string such as 'foo.py:201' based
|
||||
/// on the python stack state. This shouldn't be too expensive to fetch and
|
||||
/// on the Python stack state. This shouldn't be too expensive to fetch and
|
||||
/// is useful as an object identifier/etc.
|
||||
static auto GetPythonFileLocation(bool pretty = true) -> std::string;
|
||||
|
||||
void set_env_obj(PyObject* obj) { env_ = obj; }
|
||||
auto set_env_obj(PyObject* obj) -> void { env_ = obj; }
|
||||
auto env_obj() const -> PyObject* {
|
||||
assert(env_);
|
||||
return env_;
|
||||
@ -151,7 +151,7 @@ class Python {
|
||||
assert(main_dict_);
|
||||
return main_dict_;
|
||||
}
|
||||
void PlayMusic(const std::string& music_type, bool continuous);
|
||||
auto PlayMusic(const std::string& music_type, bool continuous) -> void;
|
||||
|
||||
// Fetch raw values from the config dict. The default value is returned if
|
||||
// the requested value is not present or not of a compatible type.
|
||||
@ -166,14 +166,14 @@ class Python {
|
||||
-> std::optional<float>;
|
||||
auto GetRawConfigValue(const char* name, int default_value) -> int;
|
||||
auto GetRawConfigValue(const char* name, bool default_value) -> bool;
|
||||
void SetRawConfigValue(const char* name, float value);
|
||||
auto SetRawConfigValue(const char* name, float value) -> void;
|
||||
|
||||
void RunDeepLink(const std::string& url);
|
||||
auto RunDeepLink(const std::string& url) -> void;
|
||||
auto GetResource(const char* key, const char* fallback_resource = nullptr,
|
||||
const char* fallback_value = nullptr) -> std::string;
|
||||
auto GetTranslation(const char* category, const char* s) -> std::string;
|
||||
|
||||
// For checking and pulling values out of python objects.
|
||||
// For checking and pulling values out of Python objects.
|
||||
// These will all throw Exceptions on errors.
|
||||
static auto GetPyString(PyObject* o) -> std::string;
|
||||
static auto GetPyInt64(PyObject* o) -> int64_t;
|
||||
@ -233,14 +233,15 @@ class Python {
|
||||
static auto GetPyEnum_InputType(PyObject* obj) -> InputType;
|
||||
|
||||
static auto GetNodeAttr(Node* node, const char* attribute_name) -> PyObject*;
|
||||
static void SetNodeAttr(Node* node, const char* attr_name,
|
||||
PyObject* value_obj);
|
||||
static auto SetNodeAttr(Node* node, const char* attr_name,
|
||||
PyObject* value_obj) -> void;
|
||||
|
||||
/// Set Python exception from C++ Exception.
|
||||
static void SetPythonException(const Exception& exc);
|
||||
static auto SetPythonException(const Exception& exc) -> void;
|
||||
|
||||
static void DoBuildNodeMessage(PyObject* args, int arg_offset,
|
||||
Buffer<char>* b, PyObject** user_message_obj);
|
||||
static auto DoBuildNodeMessage(PyObject* args, int arg_offset,
|
||||
Buffer<char>* b, PyObject** user_message_obj)
|
||||
-> void;
|
||||
auto DoNewNode(PyObject* args, PyObject* keywds) -> Node*;
|
||||
|
||||
/// Identifiers for specific Python objects we grab references to for easy
|
||||
@ -382,40 +383,41 @@ class Python {
|
||||
|
||||
/// Push a call to a preset obj to the game thread
|
||||
/// (will be run in the UI context).
|
||||
void PushObjCall(ObjID obj);
|
||||
auto PushObjCall(ObjID obj) -> void;
|
||||
|
||||
/// Push a call with a single string arg.
|
||||
void PushObjCall(ObjID obj, const std::string& arg);
|
||||
auto PushObjCall(ObjID obj, const std::string& arg) -> void;
|
||||
|
||||
/// Register python location and returns true if it has not
|
||||
/// Register Python location and returns true if it has not
|
||||
/// yet been registered. (for print-once type stuff).
|
||||
auto DoOnce() -> bool;
|
||||
|
||||
/// Check values passed to timer functions; triggers warnings
|
||||
/// for cases that look like they're passing milliseconds as seconds
|
||||
/// or vice versa... (can remove this once things are settled in).
|
||||
void TimeFormatCheck(TimeFormat time_format, PyObject* length_obj);
|
||||
auto TimeFormatCheck(TimeFormat time_format, PyObject* length_obj) -> void;
|
||||
|
||||
private:
|
||||
/// Check/set debug related initialization.
|
||||
void SetupInterpreterDebugState();
|
||||
auto SetupInterpreterDebugState() -> void;
|
||||
|
||||
/// Set up system paths if needed (for embedded builds).
|
||||
void SetupPythonHome();
|
||||
auto SetupPythonHome() -> void;
|
||||
|
||||
/// Set the value for a named object.
|
||||
void StoreObj(ObjID id, PyObject* pyobj, bool incref = false);
|
||||
auto StoreObj(ObjID id, PyObject* pyobj, bool incref = false) -> void;
|
||||
|
||||
/// Set the value for a named object and verify that it is a callable.
|
||||
void StoreObjCallable(ObjID id, PyObject* pyobj, bool incref = false);
|
||||
auto StoreObjCallable(ObjID id, PyObject* pyobj, bool incref = false) -> void;
|
||||
|
||||
/// Set the value for a named object to the result of a Python expression.
|
||||
void StoreObj(ObjID id, const char* expression, PyObject* context = nullptr);
|
||||
auto StoreObj(ObjID id, const char* expression, PyObject* context = nullptr)
|
||||
-> void;
|
||||
|
||||
/// Set the value for a named object to the result of a Python expression
|
||||
/// and verify that it is callable.
|
||||
void StoreObjCallable(ObjID id, const char* expression,
|
||||
PyObject* context = nullptr);
|
||||
auto StoreObjCallable(ObjID id, const char* expression,
|
||||
PyObject* context = nullptr) -> void;
|
||||
|
||||
std::set<std::string> do_once_locations_;
|
||||
PythonRef objs_[static_cast<int>(ObjID::kLast)];
|
||||
|
||||
@ -618,7 +618,7 @@ class Updater:
|
||||
# Misc sanity checks.
|
||||
if not self._public:
|
||||
# Make sure we're set to prod master server.
|
||||
with open('src/ballistica/networking/master_server_config.h',
|
||||
with open('src/ballistica/internal/master_server_config.h',
|
||||
encoding='utf-8') as infile:
|
||||
msconfig = infile.read()
|
||||
if ('// V2 Master Server:\n'
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user