@@ -89,16 +89,17 @@ file(GLOB_RECURSE NEXT2D_HOST_SOURCES
8989 "${CMAKE_CURRENT_SOURCE_DIR } /src/*.h"
9090)
9191
92- # 埋め込みアセット: builder の deployXbox が assets.pak と assets.rc を生成する。
93- # 存在すれば RCDATA "N2DASSETS" として exe にリンクし、ゲーム JS/HTML を平文で
94- # 隣に置かずに済む。無ければ従来どおり隣接 assets/app・js から読む。
92+ # 埋め込みアセット: builder の buildXbox が assets.pak と assets.rc を必ず生成し、
93+ # RCDATA "N2DASSETS" として exe にリンクする (ゲーム JS/HTML は平文で隣に置かない)。
94+ # 埋め込みは必須。assets.rc が無いのは builder を経由せず cmake を直接叩いた
95+ # ホスト単体ビルド (ゲーム資材なし) のみで、その場合はゲームは起動しない。
9596set (NEXT2D_ASSETS_RC "${CMAKE_CURRENT_SOURCE_DIR } /assets.rc" )
9697if (EXISTS "${NEXT2D_ASSETS_RC} " )
9798 enable_language (RC )
9899 list (APPEND NEXT2D_HOST_SOURCES "${NEXT2D_ASSETS_RC} " )
99100 message (STATUS "Next2D: embedding assets from ${NEXT2D_ASSETS_RC} " )
100101else ()
101- message (STATUS "Next2D: no assets.rc found - runtime reads adjacent files " )
102+ message (WARNING "Next2D: assets.rc not found - host-only build (no game assets). Run @next2d/builder to embed. " )
102103endif ()
103104
104105add_executable (Next2DXboxHost WIN32 ${NEXT2D_HOST_SOURCES} )
@@ -189,31 +190,15 @@ target_compile_definitions(Next2DXboxHost PRIVATE
189190
190191# -----------------------------------------------------------------------------
191192# ランタイム資材のステージング
192- # builder が assets/app に JS/HTML/アセットを配置する。
193- # js/bootstrap.js はブラウザ相当グローバルを整える起動スクリプト。
194- #
195- # 埋め込みモード (assets.rc あり) では assets/ と js/ は exe 内 pak に入るため
196- # exe 隣へは一切コピーしない (平文 JS/HTML を配布物に残さないのが目的)。
197- # MicrosoftGame.config だけは常にステージングする。
193+ # ゲーム JS/HTML/アセット (assets/app) とホストスクリプト (js/bootstrap.js) は
194+ # builder が assets.pak にまとめて exe 内 RCDATA へ**必ず**埋め込む
195+ # (非埋め込みの選択肢は無い。平文 JS/HTML を配布物に残さないのが目的)。
196+ # したがって exe 隣へは assets/ も js/ もコピーしない。
197+ # MicrosoftGame.config (GDK タイトル設定) だけを exe の隣へステージングする。
198198# -----------------------------------------------------------------------------
199- if (EXISTS "${NEXT2D_ASSETS_RC} " )
200- add_custom_command (TARGET Next2DXboxHost POST_BUILD
201- COMMAND ${CMAKE_COMMAND } -E copy_if_different
202- "${CMAKE_CURRENT_SOURCE_DIR } /MicrosoftGame.config"
203- "$<TARGET_FILE_DIR :Next2DXboxHost >/MicrosoftGame.config"
204- COMMENT "Staging MicrosoftGame.config (assets/JS embedded in exe)"
205- )
206- else ()
207- add_custom_command (TARGET Next2DXboxHost POST_BUILD
208- COMMAND ${CMAKE_COMMAND } -E copy_directory
209- "${CMAKE_CURRENT_SOURCE_DIR } /assets"
210- "$<TARGET_FILE_DIR :Next2DXboxHost >/assets"
211- COMMAND ${CMAKE_COMMAND } -E copy_directory
212- "${CMAKE_CURRENT_SOURCE_DIR } /js"
213- "$<TARGET_FILE_DIR :Next2DXboxHost >/js"
214- COMMAND ${CMAKE_COMMAND } -E copy_if_different
215- "${CMAKE_CURRENT_SOURCE_DIR } /MicrosoftGame.config"
216- "$<TARGET_FILE_DIR :Next2DXboxHost >/MicrosoftGame.config"
217- COMMENT "Staging Next2D assets, bootstrap JS and MicrosoftGame.config"
218- )
219- endif ()
199+ add_custom_command (TARGET Next2DXboxHost POST_BUILD
200+ COMMAND ${CMAKE_COMMAND } -E copy_if_different
201+ "${CMAKE_CURRENT_SOURCE_DIR } /MicrosoftGame.config"
202+ "$<TARGET_FILE_DIR :Next2DXboxHost >/MicrosoftGame.config"
203+ COMMENT "Staging MicrosoftGame.config (assets/JS embedded in exe)"
204+ )
0 commit comments