@defold-typescript/types 0.53.0 → 0.54.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cli-runtime.js +8966 -0
- package/dist/identity-vocabulary.json +660 -0
- package/dist/src/index.d.ts +18 -0
- package/fixtures/defold-1.12.4/b2d_body_doc.json +1327 -0
- package/fixtures/defold-1.12.4/b2d_doc.json +107 -0
- package/fixtures/defold-1.12.4/base_doc.json +758 -0
- package/fixtures/defold-1.12.4/bit_doc.json +404 -0
- package/fixtures/defold-1.12.4/buffer_doc.json +422 -0
- package/fixtures/defold-1.12.4/camera_doc.json +664 -0
- package/fixtures/defold-1.12.4/collectionfactory_doc.json +219 -0
- package/fixtures/defold-1.12.4/collectionproxy_doc.json +289 -0
- package/fixtures/defold-1.12.4/coroutine_doc.json +151 -0
- package/fixtures/defold-1.12.4/crash_doc.json +497 -0
- package/fixtures/defold-1.12.4/debug_doc.json +410 -0
- package/fixtures/defold-1.12.4/factory_doc.json +219 -0
- package/fixtures/defold-1.12.4/font_doc.json +141 -0
- package/fixtures/defold-1.12.4/globals_doc.json +42 -0
- package/fixtures/defold-1.12.4/go-instance-functions.json +111 -0
- package/fixtures/defold-1.12.4/go_doc.json +1901 -0
- package/fixtures/defold-1.12.4/graphics_doc.json +1634 -0
- package/fixtures/defold-1.12.4/gui_doc.json +5249 -0
- package/fixtures/defold-1.12.4/html5_doc.json +64 -0
- package/fixtures/defold-1.12.4/http_doc.json +66 -0
- package/fixtures/defold-1.12.4/image_doc.json +170 -0
- package/fixtures/defold-1.12.4/io_doc.json +399 -0
- package/fixtures/defold-1.12.4/json_doc.json +97 -0
- package/fixtures/defold-1.12.4/label_doc.json +220 -0
- package/fixtures/defold-1.12.4/liveupdate_doc.json +308 -0
- package/fixtures/defold-1.12.4/math_doc.json +702 -0
- package/fixtures/defold-1.12.4/messages_doc.json +579 -0
- package/fixtures/defold-1.12.4/model_doc.json +315 -0
- package/fixtures/defold-1.12.4/msg_doc.json +137 -0
- package/fixtures/defold-1.12.4/os_doc.json +266 -0
- package/fixtures/defold-1.12.4/package_doc.json +139 -0
- package/fixtures/defold-1.12.4/particlefx_doc.json +249 -0
- package/fixtures/defold-1.12.4/physics_doc.json +1120 -0
- package/fixtures/defold-1.12.4/profiler_doc.json +375 -0
- package/fixtures/defold-1.12.4/render_doc.json +1167 -0
- package/fixtures/defold-1.12.4/resource_doc.json +762 -0
- package/fixtures/defold-1.12.4/socket_doc.json +2194 -0
- package/fixtures/defold-1.12.4/sound_doc.json +582 -0
- package/fixtures/defold-1.12.4/sprite_doc.json +245 -0
- package/fixtures/defold-1.12.4/string_doc.json +412 -0
- package/fixtures/defold-1.12.4/sys_doc.json +853 -0
- package/fixtures/defold-1.12.4/table_doc.json +166 -0
- package/fixtures/defold-1.12.4/tilemap_doc.json +374 -0
- package/fixtures/defold-1.12.4/timer_doc.json +153 -0
- package/fixtures/defold-1.12.4/types_doc.json +212 -0
- package/fixtures/defold-1.12.4/vmath_doc.json +1814 -0
- package/fixtures/defold-1.12.4/window_doc.json +388 -0
- package/fixtures/defold-1.12.4/zlib_doc.json +70 -0
- package/fixtures/defold-1.13.0/b2d_body_doc.json +2428 -0
- package/fixtures/defold-1.13.0/b2d_chain_doc.json +394 -0
- package/fixtures/defold-1.13.0/b2d_doc.json +128 -0
- package/fixtures/defold-1.13.0/b2d_fixture_doc.json +594 -0
- package/fixtures/defold-1.13.0/b2d_joint_doc.json +3315 -0
- package/fixtures/defold-1.13.0/b2d_shape_doc.json +802 -0
- package/fixtures/defold-1.13.0/b2d_world_doc.json +1314 -0
- package/fixtures/defold-1.13.0/base_doc.json +758 -0
- package/fixtures/defold-1.13.0/bit_doc.json +404 -0
- package/fixtures/defold-1.13.0/buffer_doc.json +422 -0
- package/fixtures/defold-1.13.0/camera_doc.json +900 -0
- package/fixtures/defold-1.13.0/collectionfactory_doc.json +219 -0
- package/fixtures/defold-1.13.0/collectionproxy_doc.json +289 -0
- package/fixtures/defold-1.13.0/compute_doc.json +182 -0
- package/fixtures/defold-1.13.0/coroutine_doc.json +151 -0
- package/fixtures/defold-1.13.0/crash_doc.json +497 -0
- package/fixtures/defold-1.13.0/debug_doc.json +410 -0
- package/fixtures/defold-1.13.0/editor_doc.json +3665 -0
- package/fixtures/defold-1.13.0/editor_http_doc.json +273 -0
- package/fixtures/defold-1.13.0/editor_json_doc.json +59 -0
- package/fixtures/defold-1.13.0/editor_localization_doc.json +138 -0
- package/fixtures/defold-1.13.0/editor_pprint_doc.json +36 -0
- package/fixtures/defold-1.13.0/editor_tilemap_tiles_doc.json +235 -0
- package/fixtures/defold-1.13.0/editor_zip_doc.json +163 -0
- package/fixtures/defold-1.13.0/editor_zlib_doc.json +48 -0
- package/fixtures/defold-1.13.0/factory_doc.json +219 -0
- package/fixtures/defold-1.13.0/font_doc.json +141 -0
- package/fixtures/defold-1.13.0/globals_doc.json +42 -0
- package/fixtures/defold-1.13.0/go-instance-functions.json +101 -0
- package/fixtures/defold-1.13.0/go_doc.json +1989 -0
- package/fixtures/defold-1.13.0/graphics_doc.json +1886 -0
- package/fixtures/defold-1.13.0/gui_doc.json +5277 -0
- package/fixtures/defold-1.13.0/html5_doc.json +64 -0
- package/fixtures/defold-1.13.0/http_doc.json +66 -0
- package/fixtures/defold-1.13.0/image_doc.json +170 -0
- package/fixtures/defold-1.13.0/import-manifest.json +10558 -0
- package/fixtures/defold-1.13.0/io_doc.json +399 -0
- package/fixtures/defold-1.13.0/json_doc.json +97 -0
- package/fixtures/defold-1.13.0/label_doc.json +220 -0
- package/fixtures/defold-1.13.0/liveupdate_doc.json +330 -0
- package/fixtures/defold-1.13.0/material_doc.json +238 -0
- package/fixtures/defold-1.13.0/math_doc.json +702 -0
- package/fixtures/defold-1.13.0/model_doc.json +412 -0
- package/fixtures/defold-1.13.0/msg_doc.json +137 -0
- package/fixtures/defold-1.13.0/os_doc.json +266 -0
- package/fixtures/defold-1.13.0/package_doc.json +139 -0
- package/fixtures/defold-1.13.0/particlefx_doc.json +249 -0
- package/fixtures/defold-1.13.0/physics_doc.json +1492 -0
- package/fixtures/defold-1.13.0/profiler_doc.json +375 -0
- package/fixtures/defold-1.13.0/render_doc.json +1381 -0
- package/fixtures/defold-1.13.0/resource_doc.json +762 -0
- package/fixtures/defold-1.13.0/socket_doc.json +2194 -0
- package/fixtures/defold-1.13.0/sound_doc.json +582 -0
- package/fixtures/defold-1.13.0/sprite_doc.json +335 -0
- package/fixtures/defold-1.13.0/string_doc.json +412 -0
- package/fixtures/defold-1.13.0/sys_doc.json +1142 -0
- package/fixtures/defold-1.13.0/table_doc.json +166 -0
- package/fixtures/defold-1.13.0/tilemap_doc.json +402 -0
- package/fixtures/defold-1.13.0/timer_doc.json +153 -0
- package/fixtures/defold-1.13.0/types_doc.json +212 -0
- package/fixtures/defold-1.13.0/vmath_doc.json +1814 -0
- package/fixtures/defold-1.13.0/window_doc.json +388 -0
- package/fixtures/defold-1.13.0/zlib_doc.json +70 -0
- package/fixtures/defold-1.13.1/b2d_body_doc.json +2428 -0
- package/fixtures/defold-1.13.1/b2d_chain_doc.json +394 -0
- package/fixtures/defold-1.13.1/b2d_doc.json +128 -0
- package/fixtures/defold-1.13.1/b2d_fixture_doc.json +594 -0
- package/fixtures/defold-1.13.1/b2d_joint_doc.json +3315 -0
- package/fixtures/defold-1.13.1/b2d_shape_doc.json +802 -0
- package/fixtures/defold-1.13.1/b2d_world_doc.json +1314 -0
- package/fixtures/defold-1.13.1/base_doc.json +758 -0
- package/fixtures/defold-1.13.1/bit_doc.json +404 -0
- package/fixtures/defold-1.13.1/buffer_doc.json +422 -0
- package/fixtures/defold-1.13.1/camera_doc.json +900 -0
- package/fixtures/defold-1.13.1/collectionfactory_doc.json +219 -0
- package/fixtures/defold-1.13.1/collectionproxy_doc.json +323 -0
- package/fixtures/defold-1.13.1/compute_doc.json +182 -0
- package/fixtures/defold-1.13.1/coroutine_doc.json +151 -0
- package/fixtures/defold-1.13.1/crash_doc.json +497 -0
- package/fixtures/defold-1.13.1/debug_doc.json +410 -0
- package/fixtures/defold-1.13.1/editor_doc.json +3880 -0
- package/fixtures/defold-1.13.1/editor_http_doc.json +273 -0
- package/fixtures/defold-1.13.1/editor_image_doc.json +128 -0
- package/fixtures/defold-1.13.1/editor_json_doc.json +59 -0
- package/fixtures/defold-1.13.1/editor_localization_doc.json +138 -0
- package/fixtures/defold-1.13.1/editor_pprint_doc.json +36 -0
- package/fixtures/defold-1.13.1/editor_tilemap_tiles_doc.json +235 -0
- package/fixtures/defold-1.13.1/editor_zip_doc.json +163 -0
- package/fixtures/defold-1.13.1/editor_zlib_doc.json +48 -0
- package/fixtures/defold-1.13.1/factory_doc.json +219 -0
- package/fixtures/defold-1.13.1/font_doc.json +141 -0
- package/fixtures/defold-1.13.1/globals_doc.json +42 -0
- package/fixtures/defold-1.13.1/go-instance-functions.json +102 -0
- package/fixtures/defold-1.13.1/go_doc.json +1989 -0
- package/fixtures/defold-1.13.1/graphics_doc.json +1886 -0
- package/fixtures/defold-1.13.1/gui_doc.json +5277 -0
- package/fixtures/defold-1.13.1/html5_doc.json +64 -0
- package/fixtures/defold-1.13.1/http_doc.json +66 -0
- package/fixtures/defold-1.13.1/image_doc.json +170 -0
- package/fixtures/defold-1.13.1/import-manifest.json +10091 -0
- package/fixtures/defold-1.13.1/io_doc.json +399 -0
- package/fixtures/defold-1.13.1/json_doc.json +97 -0
- package/fixtures/defold-1.13.1/label_doc.json +220 -0
- package/fixtures/defold-1.13.1/liveupdate_doc.json +330 -0
- package/fixtures/defold-1.13.1/material_doc.json +238 -0
- package/fixtures/defold-1.13.1/math_doc.json +702 -0
- package/fixtures/defold-1.13.1/model_doc.json +412 -0
- package/fixtures/defold-1.13.1/msg_doc.json +137 -0
- package/fixtures/defold-1.13.1/os_doc.json +266 -0
- package/fixtures/defold-1.13.1/package_doc.json +139 -0
- package/fixtures/defold-1.13.1/particlefx_doc.json +249 -0
- package/fixtures/defold-1.13.1/physics_doc.json +1492 -0
- package/fixtures/defold-1.13.1/profiler_doc.json +375 -0
- package/fixtures/defold-1.13.1/render_doc.json +1381 -0
- package/fixtures/defold-1.13.1/resource_doc.json +762 -0
- package/fixtures/defold-1.13.1/socket_doc.json +2194 -0
- package/fixtures/defold-1.13.1/sound_doc.json +582 -0
- package/fixtures/defold-1.13.1/sprite_doc.json +335 -0
- package/fixtures/defold-1.13.1/string_doc.json +412 -0
- package/fixtures/defold-1.13.1/sys_doc.json +1142 -0
- package/fixtures/defold-1.13.1/table_doc.json +166 -0
- package/fixtures/defold-1.13.1/tilemap_doc.json +402 -0
- package/fixtures/defold-1.13.1/timer_doc.json +153 -0
- package/fixtures/defold-1.13.1/types_doc.json +212 -0
- package/fixtures/defold-1.13.1/vmath_doc.json +1814 -0
- package/fixtures/defold-1.13.1/window_doc.json +388 -0
- package/fixtures/defold-1.13.1/zlib_doc.json +70 -0
- package/fixtures/defold-1.13.2/b2d_body_doc.json +2359 -0
- package/fixtures/defold-1.13.2/b2d_chain_doc.json +395 -0
- package/fixtures/defold-1.13.2/b2d_doc.json +1945 -0
- package/fixtures/defold-1.13.2/b2d_fixture_doc.json +595 -0
- package/fixtures/defold-1.13.2/b2d_joint_doc.json +3178 -0
- package/fixtures/defold-1.13.2/b2d_shape_doc.json +767 -0
- package/fixtures/defold-1.13.2/b2d_world_doc.json +1315 -0
- package/fixtures/defold-1.13.2/base_doc.json +759 -0
- package/fixtures/defold-1.13.2/bit_doc.json +405 -0
- package/fixtures/defold-1.13.2/buffer_doc.json +393 -0
- package/fixtures/defold-1.13.2/bullet3d_collision_object_doc.json +1206 -0
- package/fixtures/defold-1.13.2/bullet3d_constraint_doc.json +2455 -0
- package/fixtures/defold-1.13.2/bullet3d_doc.json +215 -0
- package/fixtures/defold-1.13.2/bullet3d_rigid_body_doc.json +1376 -0
- package/fixtures/defold-1.13.2/bullet3d_shape_doc.json +430 -0
- package/fixtures/defold-1.13.2/bullet3d_world_doc.json +855 -0
- package/fixtures/defold-1.13.2/camera_doc.json +887 -0
- package/fixtures/defold-1.13.2/collectionfactory_doc.json +206 -0
- package/fixtures/defold-1.13.2/collectionproxy_doc.json +397 -0
- package/fixtures/defold-1.13.2/compute_doc.json +183 -0
- package/fixtures/defold-1.13.2/coroutine_doc.json +152 -0
- package/fixtures/defold-1.13.2/crash_doc.json +483 -0
- package/fixtures/defold-1.13.2/debug_doc.json +411 -0
- package/fixtures/defold-1.13.2/editor_doc.json +6320 -0
- package/fixtures/defold-1.13.2/editor_http_doc.json +476 -0
- package/fixtures/defold-1.13.2/editor_image_doc.json +129 -0
- package/fixtures/defold-1.13.2/editor_json_doc.json +81 -0
- package/fixtures/defold-1.13.2/editor_localization_doc.json +139 -0
- package/fixtures/defold-1.13.2/editor_pprint_doc.json +37 -0
- package/fixtures/defold-1.13.2/editor_tilemap_tiles_doc.json +292 -0
- package/fixtures/defold-1.13.2/editor_zip_doc.json +237 -0
- package/fixtures/defold-1.13.2/editor_zlib_doc.json +49 -0
- package/fixtures/defold-1.13.2/factory_doc.json +206 -0
- package/fixtures/defold-1.13.2/font_doc.json +230 -0
- package/fixtures/defold-1.13.2/globals_doc.json +64 -0
- package/fixtures/defold-1.13.2/go-instance-functions.json +106 -0
- package/fixtures/defold-1.13.2/go_doc.json +1789 -0
- package/fixtures/defold-1.13.2/graphics_doc.json +1211 -0
- package/fixtures/defold-1.13.2/gui_doc.json +4735 -0
- package/fixtures/defold-1.13.2/html5_doc.json +65 -0
- package/fixtures/defold-1.13.2/http_doc.json +174 -0
- package/fixtures/defold-1.13.2/image_doc.json +298 -0
- package/fixtures/defold-1.13.2/import-manifest.json +10902 -0
- package/fixtures/defold-1.13.2/io_doc.json +400 -0
- package/fixtures/defold-1.13.2/json_doc.json +140 -0
- package/fixtures/defold-1.13.2/label_doc.json +427 -0
- package/fixtures/defold-1.13.2/liveupdate_doc.json +221 -0
- package/fixtures/defold-1.13.2/material_doc.json +773 -0
- package/fixtures/defold-1.13.2/math_doc.json +703 -0
- package/fixtures/defold-1.13.2/model_doc.json +472 -0
- package/fixtures/defold-1.13.2/msg_doc.json +169 -0
- package/fixtures/defold-1.13.2/os_doc.json +269 -0
- package/fixtures/defold-1.13.2/package_doc.json +140 -0
- package/fixtures/defold-1.13.2/particlefx_doc.json +249 -0
- package/fixtures/defold-1.13.2/physics_doc.json +1624 -0
- package/fixtures/defold-1.13.2/profiler_doc.json +348 -0
- package/fixtures/defold-1.13.2/render_doc.json +1623 -0
- package/fixtures/defold-1.13.2/resource_doc.json +1539 -0
- package/fixtures/defold-1.13.2/socket_doc.json +2335 -0
- package/fixtures/defold-1.13.2/sound_doc.json +673 -0
- package/fixtures/defold-1.13.2/sprite_doc.json +364 -0
- package/fixtures/defold-1.13.2/string_doc.json +413 -0
- package/fixtures/defold-1.13.2/sys_doc.json +1347 -0
- package/fixtures/defold-1.13.2/table_doc.json +167 -0
- package/fixtures/defold-1.13.2/tilemap_doc.json +369 -0
- package/fixtures/defold-1.13.2/timer_doc.json +214 -0
- package/fixtures/defold-1.13.2/types_doc.json +213 -0
- package/fixtures/defold-1.13.2/vmath_doc.json +2056 -0
- package/fixtures/defold-1.13.2/window_doc.json +426 -0
- package/fixtures/defold-1.13.2/zlib_doc.json +71 -0
- package/fixtures/defold-1.14.0/b2d_body_doc.json +2359 -0
- package/fixtures/defold-1.14.0/b2d_chain_doc.json +395 -0
- package/fixtures/defold-1.14.0/b2d_doc.json +1973 -0
- package/fixtures/defold-1.14.0/b2d_fixture_doc.json +595 -0
- package/fixtures/defold-1.14.0/b2d_joint_doc.json +3178 -0
- package/fixtures/defold-1.14.0/b2d_shape_doc.json +767 -0
- package/fixtures/defold-1.14.0/b2d_world_doc.json +1315 -0
- package/fixtures/defold-1.14.0/base_doc.json +759 -0
- package/fixtures/defold-1.14.0/bit_doc.json +405 -0
- package/fixtures/defold-1.14.0/buffer_doc.json +393 -0
- package/fixtures/defold-1.14.0/bullet3d_collision_object_doc.json +1206 -0
- package/fixtures/defold-1.14.0/bullet3d_constraint_doc.json +2455 -0
- package/fixtures/defold-1.14.0/bullet3d_doc.json +243 -0
- package/fixtures/defold-1.14.0/bullet3d_rigid_body_doc.json +1376 -0
- package/fixtures/defold-1.14.0/bullet3d_shape_doc.json +430 -0
- package/fixtures/defold-1.14.0/bullet3d_world_doc.json +855 -0
- package/fixtures/defold-1.14.0/camera_doc.json +887 -0
- package/fixtures/defold-1.14.0/collectionfactory_doc.json +206 -0
- package/fixtures/defold-1.14.0/collectionproxy_doc.json +397 -0
- package/fixtures/defold-1.14.0/compute_doc.json +183 -0
- package/fixtures/defold-1.14.0/coroutine_doc.json +152 -0
- package/fixtures/defold-1.14.0/crash_doc.json +483 -0
- package/fixtures/defold-1.14.0/debug_doc.json +411 -0
- package/fixtures/defold-1.14.0/editor_doc.json +6320 -0
- package/fixtures/defold-1.14.0/editor_http_doc.json +476 -0
- package/fixtures/defold-1.14.0/editor_image_doc.json +129 -0
- package/fixtures/defold-1.14.0/editor_json_doc.json +81 -0
- package/fixtures/defold-1.14.0/editor_localization_doc.json +139 -0
- package/fixtures/defold-1.14.0/editor_pprint_doc.json +37 -0
- package/fixtures/defold-1.14.0/editor_tilemap_tiles_doc.json +292 -0
- package/fixtures/defold-1.14.0/editor_zip_doc.json +237 -0
- package/fixtures/defold-1.14.0/editor_zlib_doc.json +49 -0
- package/fixtures/defold-1.14.0/factory_doc.json +206 -0
- package/fixtures/defold-1.14.0/font_doc.json +230 -0
- package/fixtures/defold-1.14.0/globals_doc.json +64 -0
- package/fixtures/defold-1.14.0/go-instance-functions.json +106 -0
- package/fixtures/defold-1.14.0/go_doc.json +1789 -0
- package/fixtures/defold-1.14.0/graphics_doc.json +1257 -0
- package/fixtures/defold-1.14.0/gui_doc.json +4735 -0
- package/fixtures/defold-1.14.0/html5_doc.json +65 -0
- package/fixtures/defold-1.14.0/http_doc.json +174 -0
- package/fixtures/defold-1.14.0/image_doc.json +298 -0
- package/fixtures/defold-1.14.0/import-manifest.json +10260 -0
- package/fixtures/defold-1.14.0/io_doc.json +400 -0
- package/fixtures/defold-1.14.0/json_doc.json +140 -0
- package/fixtures/defold-1.14.0/label_doc.json +427 -0
- package/fixtures/defold-1.14.0/liveupdate_doc.json +221 -0
- package/fixtures/defold-1.14.0/material_doc.json +773 -0
- package/fixtures/defold-1.14.0/math_doc.json +703 -0
- package/fixtures/defold-1.14.0/model_doc.json +472 -0
- package/fixtures/defold-1.14.0/msg_doc.json +169 -0
- package/fixtures/defold-1.14.0/os_doc.json +269 -0
- package/fixtures/defold-1.14.0/package_doc.json +140 -0
- package/fixtures/defold-1.14.0/particlefx_doc.json +249 -0
- package/fixtures/defold-1.14.0/physics_doc.json +1624 -0
- package/fixtures/defold-1.14.0/profiler_doc.json +348 -0
- package/fixtures/defold-1.14.0/render_doc.json +1628 -0
- package/fixtures/defold-1.14.0/resource_doc.json +1539 -0
- package/fixtures/defold-1.14.0/socket_doc.json +2335 -0
- package/fixtures/defold-1.14.0/sound_doc.json +673 -0
- package/fixtures/defold-1.14.0/sprite_doc.json +364 -0
- package/fixtures/defold-1.14.0/string_doc.json +413 -0
- package/fixtures/defold-1.14.0/sys_doc.json +1347 -0
- package/fixtures/defold-1.14.0/table_doc.json +167 -0
- package/fixtures/defold-1.14.0/tilemap_doc.json +369 -0
- package/fixtures/defold-1.14.0/timer_doc.json +214 -0
- package/fixtures/defold-1.14.0/types_doc.json +213 -0
- package/fixtures/defold-1.14.0/vmath_doc.json +2056 -0
- package/fixtures/defold-1.14.0/window_doc.json +426 -0
- package/fixtures/defold-1.14.0/zlib_doc.json +71 -0
- package/package.json +13 -6
- package/scripts/cli-runtime.ts +18 -0
- package/scripts/example-store-io.ts +2 -2
- package/scripts/extension-goldens.ts +9 -5
- package/scripts/generate-api-availability.ts +1 -1
- package/scripts/generate-api-signatures.ts +1 -1
- package/scripts/import-defold-release.ts +1 -1
- package/scripts/regen.ts +35 -9
- package/scripts/signature-store-fs.ts +37 -17
- package/scripts/sync-api-docs.ts +127 -20
- package/src/api-doc.ts +11 -4
- package/src/emit-dts.ts +115 -21
- package/src/index-slot-classifications.ts +75 -9
- package/src/index.ts +3 -1
- package/src/publish-dts.ts +16 -0
- package/src/script-api.ts +36 -38
- package/src/library-index-slot-classifications.ts +0 -332
|
@@ -0,0 +1,1539 @@
|
|
|
1
|
+
{
|
|
2
|
+
"elements": [
|
|
3
|
+
{
|
|
4
|
+
"type": "TYPEDEF",
|
|
5
|
+
"name": "resource_data",
|
|
6
|
+
"brief": "Script property resource reference",
|
|
7
|
+
"description": "An opaque declaration-time reference to a Defold resource. Resource references\nare created by functions such as <a href=\"/ref/resource#resource.atlas\">resource.atlas</a>, <a href=\"/ref/resource#resource.font\">resource.font</a>, and\n<a href=\"/ref/resource#resource.material\">resource.material</a>. They can only be used as default values passed to\n<a href=\"/ref/go#go.property\">go.property</a>.\nThe referenced resource is loaded together with the script. At runtime, the\nproperty contains the hashed path of the compiled resource.",
|
|
8
|
+
"returnvalues": [],
|
|
9
|
+
"parameters": [
|
|
10
|
+
{
|
|
11
|
+
"name": "value",
|
|
12
|
+
"doc": "script property resource reference",
|
|
13
|
+
"types": ["userdata"],
|
|
14
|
+
"is_optional": "False"
|
|
15
|
+
}
|
|
16
|
+
],
|
|
17
|
+
"examples": "<div class=\"codehilite\"><pre><span></span><code><span class=\"n\">go</span><span class=\"p\">.</span><span class=\"n\">property</span><span class=\"p\">(</span><span class=\"s2\">"player_atlas"</span><span class=\"p\">,</span> <span class=\"n\">resource</span><span class=\"p\">.</span><span class=\"n\">atlas</span><span class=\"p\">(</span><span class=\"s2\">"/main/player.atlas"</span><span class=\"p\">))</span>\n\n<span class=\"kr\">function</span> <span class=\"nf\">init</span><span class=\"p\">(</span><span class=\"n\">self</span><span class=\"p\">)</span>\n <span class=\"n\">go</span><span class=\"p\">.</span><span class=\"n\">set</span><span class=\"p\">(</span><span class=\"s2\">"#sprite"</span><span class=\"p\">,</span> <span class=\"s2\">"image"</span><span class=\"p\">,</span> <span class=\"n\">self</span><span class=\"p\">.</span><span class=\"n\">player_atlas</span><span class=\"p\">)</span>\n<span class=\"kr\">end</span>\n</code></pre></div>",
|
|
18
|
+
"replaces": "",
|
|
19
|
+
"error": "",
|
|
20
|
+
"tparams": [],
|
|
21
|
+
"members": [],
|
|
22
|
+
"notes": [],
|
|
23
|
+
"language": ""
|
|
24
|
+
},
|
|
25
|
+
{
|
|
26
|
+
"type": "STRUCT",
|
|
27
|
+
"name": "resource.atlas",
|
|
28
|
+
"brief": "Atlas creation data",
|
|
29
|
+
"description": "Data accepted by <a href=\"/ref/resource#resource.create_atlas\">resource.create_atlas</a> and <a href=\"/ref/resource#resource.set_atlas\">resource.set_atlas</a>.",
|
|
30
|
+
"returnvalues": [],
|
|
31
|
+
"parameters": [],
|
|
32
|
+
"examples": "",
|
|
33
|
+
"replaces": "",
|
|
34
|
+
"error": "",
|
|
35
|
+
"tparams": [],
|
|
36
|
+
"members": [
|
|
37
|
+
{
|
|
38
|
+
"name": "texture",
|
|
39
|
+
"doc": "Path to the texture resource, for example <code>\"/main/my_texture.texturec\"</code>.",
|
|
40
|
+
"type": "string|hash"
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
"name": "animations",
|
|
44
|
+
"doc": "Animations in the atlas.",
|
|
45
|
+
"type": "resource.animation[]"
|
|
46
|
+
},
|
|
47
|
+
{
|
|
48
|
+
"name": "geometries",
|
|
49
|
+
"doc": "Geometries that map to the texture data.",
|
|
50
|
+
"type": "resource.geometry[]"
|
|
51
|
+
}
|
|
52
|
+
],
|
|
53
|
+
"notes": [],
|
|
54
|
+
"language": ""
|
|
55
|
+
},
|
|
56
|
+
{
|
|
57
|
+
"type": "STRUCT",
|
|
58
|
+
"name": "resource.animation",
|
|
59
|
+
"brief": "Atlas animation creation data",
|
|
60
|
+
"description": "Animation data accepted when creating or updating an atlas. Specify either\n<code>frames</code>, or both <code>frame_start</code> and <code>frame_end</code>.",
|
|
61
|
+
"returnvalues": [],
|
|
62
|
+
"parameters": [],
|
|
63
|
+
"examples": "",
|
|
64
|
+
"replaces": "",
|
|
65
|
+
"error": "",
|
|
66
|
+
"tparams": [],
|
|
67
|
+
"members": [
|
|
68
|
+
{
|
|
69
|
+
"name": "id",
|
|
70
|
+
"doc": "Animation id.",
|
|
71
|
+
"type": "string"
|
|
72
|
+
},
|
|
73
|
+
{
|
|
74
|
+
"name": "width",
|
|
75
|
+
"doc": "Animation width.",
|
|
76
|
+
"type": "integer"
|
|
77
|
+
},
|
|
78
|
+
{
|
|
79
|
+
"name": "height",
|
|
80
|
+
"doc": "Animation height.",
|
|
81
|
+
"type": "integer"
|
|
82
|
+
},
|
|
83
|
+
{
|
|
84
|
+
"name": "frames?",
|
|
85
|
+
"doc": "Geometry indices for the animation frames.",
|
|
86
|
+
"type": "integer[]"
|
|
87
|
+
},
|
|
88
|
+
{
|
|
89
|
+
"name": "frame_start?",
|
|
90
|
+
"doc": "First geometry index for the legacy contiguous frame range.",
|
|
91
|
+
"type": "integer"
|
|
92
|
+
},
|
|
93
|
+
{
|
|
94
|
+
"name": "frame_end?",
|
|
95
|
+
"doc": "Non-inclusive last geometry index for the legacy contiguous frame range.",
|
|
96
|
+
"type": "integer"
|
|
97
|
+
},
|
|
98
|
+
{
|
|
99
|
+
"name": "playback?",
|
|
100
|
+
"doc": "Playback mode. The default is <code>go.PLAYBACK_ONCE_FORWARD</code>.",
|
|
101
|
+
"type": "go.PLAYBACK"
|
|
102
|
+
},
|
|
103
|
+
{
|
|
104
|
+
"name": "fps?",
|
|
105
|
+
"doc": "Animation frame rate. The default is 30.",
|
|
106
|
+
"type": "integer"
|
|
107
|
+
},
|
|
108
|
+
{
|
|
109
|
+
"name": "flip_vertical?",
|
|
110
|
+
"doc": "Whether to flip the animation vertically. The default is false.",
|
|
111
|
+
"type": "boolean"
|
|
112
|
+
},
|
|
113
|
+
{
|
|
114
|
+
"name": "flip_horizontal?",
|
|
115
|
+
"doc": "Whether to flip the animation horizontally. The default is false.",
|
|
116
|
+
"type": "boolean"
|
|
117
|
+
}
|
|
118
|
+
],
|
|
119
|
+
"notes": [],
|
|
120
|
+
"language": ""
|
|
121
|
+
},
|
|
122
|
+
{
|
|
123
|
+
"type": "STRUCT",
|
|
124
|
+
"name": "resource.geometry",
|
|
125
|
+
"brief": "Atlas geometry creation data",
|
|
126
|
+
"description": "Geometry data accepted when creating or updating an atlas. Vertex, UV, and\nindex values are zero-based.",
|
|
127
|
+
"returnvalues": [],
|
|
128
|
+
"parameters": [],
|
|
129
|
+
"examples": "",
|
|
130
|
+
"replaces": "",
|
|
131
|
+
"error": "",
|
|
132
|
+
"tparams": [],
|
|
133
|
+
"members": [
|
|
134
|
+
{
|
|
135
|
+
"name": "id?",
|
|
136
|
+
"doc": "Geometry name, used when matching animations between atlases.",
|
|
137
|
+
"type": "string"
|
|
138
|
+
},
|
|
139
|
+
{
|
|
140
|
+
"name": "width?",
|
|
141
|
+
"doc": "Width of the image represented by the geometry. If omitted, it is calculated from the vertices.",
|
|
142
|
+
"type": "number"
|
|
143
|
+
},
|
|
144
|
+
{
|
|
145
|
+
"name": "height?",
|
|
146
|
+
"doc": "Height of the image represented by the geometry. If omitted, it is calculated from the vertices.",
|
|
147
|
+
"type": "number"
|
|
148
|
+
},
|
|
149
|
+
{
|
|
150
|
+
"name": "pivot_x?",
|
|
151
|
+
"doc": "Horizontal pivot in unit coordinates. The default is 0.5.",
|
|
152
|
+
"type": "number"
|
|
153
|
+
},
|
|
154
|
+
{
|
|
155
|
+
"name": "pivot_y?",
|
|
156
|
+
"doc": "Vertical pivot in unit coordinates. The default is 0.5.",
|
|
157
|
+
"type": "number"
|
|
158
|
+
},
|
|
159
|
+
{
|
|
160
|
+
"name": "rotated?",
|
|
161
|
+
"doc": "Whether the image is rotated 90 degrees counter-clockwise in the atlas.",
|
|
162
|
+
"type": "boolean"
|
|
163
|
+
},
|
|
164
|
+
{
|
|
165
|
+
"name": "vertices",
|
|
166
|
+
"doc": "Vertex coordinates in image space as <code>{px0, py0, px1, py1, ...}</code>.",
|
|
167
|
+
"type": "number[]"
|
|
168
|
+
},
|
|
169
|
+
{
|
|
170
|
+
"name": "uvs",
|
|
171
|
+
"doc": "UV coordinates in image space as <code>{u0, v0, u1, v1, ...}</code>.",
|
|
172
|
+
"type": "number[]"
|
|
173
|
+
},
|
|
174
|
+
{
|
|
175
|
+
"name": "indices",
|
|
176
|
+
"doc": "Geometry indices where each group of three entries represents a triangle.",
|
|
177
|
+
"type": "integer[]"
|
|
178
|
+
}
|
|
179
|
+
],
|
|
180
|
+
"notes": [],
|
|
181
|
+
"language": ""
|
|
182
|
+
},
|
|
183
|
+
{
|
|
184
|
+
"type": "STRUCT",
|
|
185
|
+
"name": "resource.atlas_data",
|
|
186
|
+
"brief": "Atlas data",
|
|
187
|
+
"description": "Data returned by <a href=\"/ref/resource#resource.get_atlas\">resource.get_atlas</a>.",
|
|
188
|
+
"returnvalues": [],
|
|
189
|
+
"parameters": [],
|
|
190
|
+
"examples": "",
|
|
191
|
+
"replaces": "",
|
|
192
|
+
"error": "",
|
|
193
|
+
"tparams": [],
|
|
194
|
+
"members": [
|
|
195
|
+
{
|
|
196
|
+
"name": "texture",
|
|
197
|
+
"doc": "Path to the texture resource.",
|
|
198
|
+
"type": "string|hash"
|
|
199
|
+
},
|
|
200
|
+
{
|
|
201
|
+
"name": "animations",
|
|
202
|
+
"doc": "Animations in the atlas.",
|
|
203
|
+
"type": "resource.animation_data[]"
|
|
204
|
+
},
|
|
205
|
+
{
|
|
206
|
+
"name": "geometries",
|
|
207
|
+
"doc": "Geometries that map to the texture data.",
|
|
208
|
+
"type": "resource.geometry_data[]"
|
|
209
|
+
}
|
|
210
|
+
],
|
|
211
|
+
"notes": [],
|
|
212
|
+
"language": ""
|
|
213
|
+
},
|
|
214
|
+
{
|
|
215
|
+
"type": "STRUCT",
|
|
216
|
+
"name": "resource.animation_data",
|
|
217
|
+
"brief": "Atlas animation data",
|
|
218
|
+
"description": "Animation data returned by <a href=\"/ref/resource#resource.get_atlas\">resource.get_atlas</a>.",
|
|
219
|
+
"returnvalues": [],
|
|
220
|
+
"parameters": [],
|
|
221
|
+
"examples": "",
|
|
222
|
+
"replaces": "",
|
|
223
|
+
"error": "",
|
|
224
|
+
"tparams": [],
|
|
225
|
+
"members": [
|
|
226
|
+
{
|
|
227
|
+
"name": "id",
|
|
228
|
+
"doc": "Animation id.",
|
|
229
|
+
"type": "string"
|
|
230
|
+
},
|
|
231
|
+
{
|
|
232
|
+
"name": "width",
|
|
233
|
+
"doc": "Animation width.",
|
|
234
|
+
"type": "integer"
|
|
235
|
+
},
|
|
236
|
+
{
|
|
237
|
+
"name": "height",
|
|
238
|
+
"doc": "Animation height.",
|
|
239
|
+
"type": "integer"
|
|
240
|
+
},
|
|
241
|
+
{
|
|
242
|
+
"name": "frames",
|
|
243
|
+
"doc": "Geometry indices for the animation frames.",
|
|
244
|
+
"type": "integer[]"
|
|
245
|
+
},
|
|
246
|
+
{
|
|
247
|
+
"name": "playback",
|
|
248
|
+
"doc": "Playback mode.",
|
|
249
|
+
"type": "go.PLAYBACK"
|
|
250
|
+
},
|
|
251
|
+
{
|
|
252
|
+
"name": "fps",
|
|
253
|
+
"doc": "Animation frame rate.",
|
|
254
|
+
"type": "integer"
|
|
255
|
+
},
|
|
256
|
+
{
|
|
257
|
+
"name": "flip_vertical",
|
|
258
|
+
"doc": "Whether the animation is flipped vertically.",
|
|
259
|
+
"type": "boolean"
|
|
260
|
+
},
|
|
261
|
+
{
|
|
262
|
+
"name": "flip_horizontal",
|
|
263
|
+
"doc": "Whether the animation is flipped horizontally.",
|
|
264
|
+
"type": "boolean"
|
|
265
|
+
}
|
|
266
|
+
],
|
|
267
|
+
"notes": [],
|
|
268
|
+
"language": ""
|
|
269
|
+
},
|
|
270
|
+
{
|
|
271
|
+
"type": "STRUCT",
|
|
272
|
+
"name": "resource.geometry_data",
|
|
273
|
+
"brief": "Atlas geometry data",
|
|
274
|
+
"description": "Geometry data returned by <a href=\"/ref/resource#resource.get_atlas\">resource.get_atlas</a>.",
|
|
275
|
+
"returnvalues": [],
|
|
276
|
+
"parameters": [],
|
|
277
|
+
"examples": "",
|
|
278
|
+
"replaces": "",
|
|
279
|
+
"error": "",
|
|
280
|
+
"tparams": [],
|
|
281
|
+
"members": [
|
|
282
|
+
{
|
|
283
|
+
"name": "width",
|
|
284
|
+
"doc": "Width of the image represented by the geometry.",
|
|
285
|
+
"type": "number"
|
|
286
|
+
},
|
|
287
|
+
{
|
|
288
|
+
"name": "height",
|
|
289
|
+
"doc": "Height of the image represented by the geometry.",
|
|
290
|
+
"type": "number"
|
|
291
|
+
},
|
|
292
|
+
{
|
|
293
|
+
"name": "pivot_x",
|
|
294
|
+
"doc": "Horizontal pivot in unit coordinates.",
|
|
295
|
+
"type": "number"
|
|
296
|
+
},
|
|
297
|
+
{
|
|
298
|
+
"name": "pivot_y",
|
|
299
|
+
"doc": "Vertical pivot in unit coordinates.",
|
|
300
|
+
"type": "number"
|
|
301
|
+
},
|
|
302
|
+
{
|
|
303
|
+
"name": "rotated",
|
|
304
|
+
"doc": "Whether the image is rotated 90 degrees counter-clockwise in the atlas.",
|
|
305
|
+
"type": "boolean"
|
|
306
|
+
},
|
|
307
|
+
{
|
|
308
|
+
"name": "vertices",
|
|
309
|
+
"doc": "Vertex coordinates in image space as <code>{px0, py0, px1, py1, ...}</code>.",
|
|
310
|
+
"type": "number[]"
|
|
311
|
+
},
|
|
312
|
+
{
|
|
313
|
+
"name": "uvs",
|
|
314
|
+
"doc": "UV coordinates in image space as <code>{u0, v0, u1, v1, ...}</code>.",
|
|
315
|
+
"type": "number[]"
|
|
316
|
+
},
|
|
317
|
+
{
|
|
318
|
+
"name": "indices",
|
|
319
|
+
"doc": "Geometry indices where each group of three entries represents a triangle.",
|
|
320
|
+
"type": "integer[]"
|
|
321
|
+
}
|
|
322
|
+
],
|
|
323
|
+
"notes": [],
|
|
324
|
+
"language": ""
|
|
325
|
+
},
|
|
326
|
+
{
|
|
327
|
+
"type": "STRUCT",
|
|
328
|
+
"name": "resource.render_target_attachment_info",
|
|
329
|
+
"brief": "Render target attachment information",
|
|
330
|
+
"description": "Render target attachment information",
|
|
331
|
+
"returnvalues": [],
|
|
332
|
+
"parameters": [],
|
|
333
|
+
"examples": "",
|
|
334
|
+
"replaces": "",
|
|
335
|
+
"error": "",
|
|
336
|
+
"tparams": [],
|
|
337
|
+
"members": [
|
|
338
|
+
{
|
|
339
|
+
"name": "handle",
|
|
340
|
+
"doc": "Opaque texture handle.",
|
|
341
|
+
"type": "texture"
|
|
342
|
+
},
|
|
343
|
+
{
|
|
344
|
+
"name": "width",
|
|
345
|
+
"doc": "Texture width.",
|
|
346
|
+
"type": "integer"
|
|
347
|
+
},
|
|
348
|
+
{
|
|
349
|
+
"name": "height",
|
|
350
|
+
"doc": "Texture height.",
|
|
351
|
+
"type": "integer"
|
|
352
|
+
},
|
|
353
|
+
{
|
|
354
|
+
"name": "depth",
|
|
355
|
+
"doc": "Texture depth or layer count.",
|
|
356
|
+
"type": "integer"
|
|
357
|
+
},
|
|
358
|
+
{
|
|
359
|
+
"name": "page_count",
|
|
360
|
+
"doc": "Texture page count.",
|
|
361
|
+
"type": "integer"
|
|
362
|
+
},
|
|
363
|
+
{
|
|
364
|
+
"name": "mipmaps",
|
|
365
|
+
"doc": "Number of mipmaps.",
|
|
366
|
+
"type": "integer"
|
|
367
|
+
},
|
|
368
|
+
{
|
|
369
|
+
"name": "flags",
|
|
370
|
+
"doc": "Texture usage flags.",
|
|
371
|
+
"type": "graphics.TEXTURE_USAGE_FLAG"
|
|
372
|
+
},
|
|
373
|
+
{
|
|
374
|
+
"name": "type",
|
|
375
|
+
"doc": "Texture type.",
|
|
376
|
+
"type": "graphics.TEXTURE_TYPE"
|
|
377
|
+
},
|
|
378
|
+
{
|
|
379
|
+
"name": "buffer_type",
|
|
380
|
+
"doc": "Render-target buffer type.",
|
|
381
|
+
"type": "graphics.BUFFER_TYPE"
|
|
382
|
+
},
|
|
383
|
+
{
|
|
384
|
+
"name": "texture?",
|
|
385
|
+
"doc": "Backing texture resource, when present.",
|
|
386
|
+
"type": "hash"
|
|
387
|
+
}
|
|
388
|
+
],
|
|
389
|
+
"notes": [],
|
|
390
|
+
"language": ""
|
|
391
|
+
},
|
|
392
|
+
{
|
|
393
|
+
"type": "STRUCT",
|
|
394
|
+
"name": "resource.texture_info",
|
|
395
|
+
"brief": "Texture information",
|
|
396
|
+
"description": "Texture information",
|
|
397
|
+
"returnvalues": [],
|
|
398
|
+
"parameters": [],
|
|
399
|
+
"examples": "",
|
|
400
|
+
"replaces": "",
|
|
401
|
+
"error": "",
|
|
402
|
+
"tparams": [],
|
|
403
|
+
"members": [
|
|
404
|
+
{
|
|
405
|
+
"name": "handle",
|
|
406
|
+
"doc": "Opaque texture handle.",
|
|
407
|
+
"type": "texture"
|
|
408
|
+
},
|
|
409
|
+
{
|
|
410
|
+
"name": "width",
|
|
411
|
+
"doc": "Texture width.",
|
|
412
|
+
"type": "integer"
|
|
413
|
+
},
|
|
414
|
+
{
|
|
415
|
+
"name": "height",
|
|
416
|
+
"doc": "Texture height.",
|
|
417
|
+
"type": "integer"
|
|
418
|
+
},
|
|
419
|
+
{
|
|
420
|
+
"name": "depth",
|
|
421
|
+
"doc": "Texture depth or layer count.",
|
|
422
|
+
"type": "integer"
|
|
423
|
+
},
|
|
424
|
+
{
|
|
425
|
+
"name": "page_count",
|
|
426
|
+
"doc": "Texture page count.",
|
|
427
|
+
"type": "integer"
|
|
428
|
+
},
|
|
429
|
+
{
|
|
430
|
+
"name": "mipmaps",
|
|
431
|
+
"doc": "Number of mipmaps.",
|
|
432
|
+
"type": "integer"
|
|
433
|
+
},
|
|
434
|
+
{
|
|
435
|
+
"name": "flags",
|
|
436
|
+
"doc": "Texture usage flags.",
|
|
437
|
+
"type": "graphics.TEXTURE_USAGE_FLAG"
|
|
438
|
+
},
|
|
439
|
+
{
|
|
440
|
+
"name": "type",
|
|
441
|
+
"doc": "Texture type.",
|
|
442
|
+
"type": "graphics.TEXTURE_TYPE"
|
|
443
|
+
}
|
|
444
|
+
],
|
|
445
|
+
"notes": [],
|
|
446
|
+
"language": ""
|
|
447
|
+
},
|
|
448
|
+
{
|
|
449
|
+
"type": "STRUCT",
|
|
450
|
+
"name": "resource.render_target_info",
|
|
451
|
+
"brief": "Render target information",
|
|
452
|
+
"description": "Render target information",
|
|
453
|
+
"returnvalues": [],
|
|
454
|
+
"parameters": [],
|
|
455
|
+
"examples": "",
|
|
456
|
+
"replaces": "",
|
|
457
|
+
"error": "",
|
|
458
|
+
"tparams": [],
|
|
459
|
+
"members": [
|
|
460
|
+
{
|
|
461
|
+
"name": "handle",
|
|
462
|
+
"doc": "Opaque render-target handle.",
|
|
463
|
+
"type": "render_target"
|
|
464
|
+
},
|
|
465
|
+
{
|
|
466
|
+
"name": "sample_count",
|
|
467
|
+
"doc": "Effective sample count shared by all render-target attachments.",
|
|
468
|
+
"type": "integer"
|
|
469
|
+
},
|
|
470
|
+
{
|
|
471
|
+
"name": "attachments",
|
|
472
|
+
"doc": "Render-target attachments.",
|
|
473
|
+
"type": "resource.render_target_attachment_info[]"
|
|
474
|
+
}
|
|
475
|
+
],
|
|
476
|
+
"notes": [],
|
|
477
|
+
"language": ""
|
|
478
|
+
},
|
|
479
|
+
{
|
|
480
|
+
"type": "STRUCT",
|
|
481
|
+
"name": "resource.texture_creation_params",
|
|
482
|
+
"brief": "Texture creation parameters",
|
|
483
|
+
"description": "Texture creation parameters",
|
|
484
|
+
"returnvalues": [],
|
|
485
|
+
"parameters": [],
|
|
486
|
+
"examples": "",
|
|
487
|
+
"replaces": "",
|
|
488
|
+
"error": "",
|
|
489
|
+
"tparams": [],
|
|
490
|
+
"members": [
|
|
491
|
+
{
|
|
492
|
+
"name": "type",
|
|
493
|
+
"doc": "Texture type.",
|
|
494
|
+
"type": "graphics.TEXTURE_TYPE"
|
|
495
|
+
},
|
|
496
|
+
{
|
|
497
|
+
"name": "width",
|
|
498
|
+
"doc": "Texture width in pixels; must be greater than zero.",
|
|
499
|
+
"type": "integer"
|
|
500
|
+
},
|
|
501
|
+
{
|
|
502
|
+
"name": "height",
|
|
503
|
+
"doc": "Texture height in pixels; must be greater than zero.",
|
|
504
|
+
"type": "integer"
|
|
505
|
+
},
|
|
506
|
+
{
|
|
507
|
+
"name": "depth?",
|
|
508
|
+
"doc": "Texture depth; used by 3D texture types and must be greater than zero.",
|
|
509
|
+
"type": "integer"
|
|
510
|
+
},
|
|
511
|
+
{
|
|
512
|
+
"name": "page_count?",
|
|
513
|
+
"doc": "Number of pages for a 2D array texture.",
|
|
514
|
+
"type": "integer"
|
|
515
|
+
},
|
|
516
|
+
{
|
|
517
|
+
"name": "format",
|
|
518
|
+
"doc": "Texture format. Device-specific unsupported constants evaluate to <code>nil</code>.",
|
|
519
|
+
"type": "graphics.TEXTURE_FORMAT"
|
|
520
|
+
},
|
|
521
|
+
{
|
|
522
|
+
"name": "flags?",
|
|
523
|
+
"doc": "Creation-usage hints. The default is <a href=\"/ref/graphics#graphics.TEXTURE_USAGE_FLAG_SAMPLE\">graphics.TEXTURE_USAGE_FLAG_SAMPLE</a>.",
|
|
524
|
+
"type": "graphics.TEXTURE_USAGE_FLAG"
|
|
525
|
+
},
|
|
526
|
+
{
|
|
527
|
+
"name": "max_mipmaps?",
|
|
528
|
+
"doc": "Maximum mipmap count. The default is zero.",
|
|
529
|
+
"type": "integer"
|
|
530
|
+
},
|
|
531
|
+
{
|
|
532
|
+
"name": "compression_type?",
|
|
533
|
+
"doc": "Compression used by the supplied buffer. The default is <a href=\"/ref/graphics#graphics.COMPRESSION_TYPE_DEFAULT\">graphics.COMPRESSION_TYPE_DEFAULT</a>.",
|
|
534
|
+
"type": "graphics.COMPRESSION_TYPE"
|
|
535
|
+
}
|
|
536
|
+
],
|
|
537
|
+
"notes": [],
|
|
538
|
+
"language": ""
|
|
539
|
+
},
|
|
540
|
+
{
|
|
541
|
+
"type": "STRUCT",
|
|
542
|
+
"name": "resource.texture_creation_result",
|
|
543
|
+
"brief": "Asynchronous texture creation result",
|
|
544
|
+
"description": "Asynchronous texture creation result",
|
|
545
|
+
"returnvalues": [],
|
|
546
|
+
"parameters": [],
|
|
547
|
+
"examples": "",
|
|
548
|
+
"replaces": "",
|
|
549
|
+
"error": "",
|
|
550
|
+
"tparams": [],
|
|
551
|
+
"members": [
|
|
552
|
+
{
|
|
553
|
+
"name": "path",
|
|
554
|
+
"doc": "Created texture resource path.",
|
|
555
|
+
"type": "hash"
|
|
556
|
+
}
|
|
557
|
+
],
|
|
558
|
+
"notes": [],
|
|
559
|
+
"language": ""
|
|
560
|
+
},
|
|
561
|
+
{
|
|
562
|
+
"type": "STRUCT",
|
|
563
|
+
"name": "resource.texture_update_params",
|
|
564
|
+
"brief": "Texture update parameters",
|
|
565
|
+
"description": "Texture update parameters",
|
|
566
|
+
"returnvalues": [],
|
|
567
|
+
"parameters": [],
|
|
568
|
+
"examples": "",
|
|
569
|
+
"replaces": "",
|
|
570
|
+
"error": "",
|
|
571
|
+
"tparams": [],
|
|
572
|
+
"members": [
|
|
573
|
+
{
|
|
574
|
+
"name": "type",
|
|
575
|
+
"doc": "Texture type.",
|
|
576
|
+
"type": "graphics.TEXTURE_TYPE"
|
|
577
|
+
},
|
|
578
|
+
{
|
|
579
|
+
"name": "width",
|
|
580
|
+
"doc": "Update width in pixels.",
|
|
581
|
+
"type": "integer"
|
|
582
|
+
},
|
|
583
|
+
{
|
|
584
|
+
"name": "height",
|
|
585
|
+
"doc": "Update height in pixels.",
|
|
586
|
+
"type": "integer"
|
|
587
|
+
},
|
|
588
|
+
{
|
|
589
|
+
"name": "depth?",
|
|
590
|
+
"doc": "Update depth for a 3D texture.",
|
|
591
|
+
"type": "integer"
|
|
592
|
+
},
|
|
593
|
+
{
|
|
594
|
+
"name": "format",
|
|
595
|
+
"doc": "Texture format. Device-specific unsupported constants evaluate to <code>nil</code>.",
|
|
596
|
+
"type": "graphics.TEXTURE_FORMAT"
|
|
597
|
+
},
|
|
598
|
+
{
|
|
599
|
+
"name": "x?",
|
|
600
|
+
"doc": "X offset in pixels.",
|
|
601
|
+
"type": "integer"
|
|
602
|
+
},
|
|
603
|
+
{
|
|
604
|
+
"name": "y?",
|
|
605
|
+
"doc": "Y offset in pixels.",
|
|
606
|
+
"type": "integer"
|
|
607
|
+
},
|
|
608
|
+
{
|
|
609
|
+
"name": "z?",
|
|
610
|
+
"doc": "Z offset for a 3D texture.",
|
|
611
|
+
"type": "integer"
|
|
612
|
+
},
|
|
613
|
+
{
|
|
614
|
+
"name": "page?",
|
|
615
|
+
"doc": "Zero-based page of a 2D array texture.",
|
|
616
|
+
"type": "integer"
|
|
617
|
+
},
|
|
618
|
+
{
|
|
619
|
+
"name": "mipmap?",
|
|
620
|
+
"doc": "Mipmap level to update.",
|
|
621
|
+
"type": "integer"
|
|
622
|
+
},
|
|
623
|
+
{
|
|
624
|
+
"name": "compression_type?",
|
|
625
|
+
"doc": "Compression used by the supplied buffer. The default is <a href=\"/ref/graphics#graphics.COMPRESSION_TYPE_DEFAULT\">graphics.COMPRESSION_TYPE_DEFAULT</a>.",
|
|
626
|
+
"type": "graphics.COMPRESSION_TYPE"
|
|
627
|
+
}
|
|
628
|
+
],
|
|
629
|
+
"notes": [],
|
|
630
|
+
"language": ""
|
|
631
|
+
},
|
|
632
|
+
{
|
|
633
|
+
"type": "STRUCT",
|
|
634
|
+
"name": "resource.sound_data_options",
|
|
635
|
+
"brief": "Sound-data creation options",
|
|
636
|
+
"description": "Sound-data creation options",
|
|
637
|
+
"returnvalues": [],
|
|
638
|
+
"parameters": [],
|
|
639
|
+
"examples": "",
|
|
640
|
+
"replaces": "",
|
|
641
|
+
"error": "",
|
|
642
|
+
"tparams": [],
|
|
643
|
+
"members": [
|
|
644
|
+
{
|
|
645
|
+
"name": "data?",
|
|
646
|
+
"doc": "Raw sound file data, including the file header.",
|
|
647
|
+
"type": "string"
|
|
648
|
+
},
|
|
649
|
+
{
|
|
650
|
+
"name": "filesize?",
|
|
651
|
+
"doc": "Complete file size when <code>data</code> is partial.",
|
|
652
|
+
"type": "number"
|
|
653
|
+
},
|
|
654
|
+
{
|
|
655
|
+
"name": "partial?",
|
|
656
|
+
"doc": "Whether <code>data</code> contains only the initial file chunk.",
|
|
657
|
+
"type": "boolean"
|
|
658
|
+
}
|
|
659
|
+
],
|
|
660
|
+
"notes": [],
|
|
661
|
+
"language": ""
|
|
662
|
+
},
|
|
663
|
+
{
|
|
664
|
+
"type": "STRUCT",
|
|
665
|
+
"name": "resource.buffer_creation_params",
|
|
666
|
+
"brief": "Buffer-resource creation parameters",
|
|
667
|
+
"description": "Buffer-resource creation parameters",
|
|
668
|
+
"returnvalues": [],
|
|
669
|
+
"parameters": [],
|
|
670
|
+
"examples": "",
|
|
671
|
+
"replaces": "",
|
|
672
|
+
"error": "",
|
|
673
|
+
"tparams": [],
|
|
674
|
+
"members": [
|
|
675
|
+
{
|
|
676
|
+
"name": "buffer",
|
|
677
|
+
"doc": "Buffer to bind to the resource.",
|
|
678
|
+
"type": "buffer_data"
|
|
679
|
+
},
|
|
680
|
+
{
|
|
681
|
+
"name": "transfer_ownership?",
|
|
682
|
+
"doc": "Whether the resource takes ownership of the buffer. The default is true.",
|
|
683
|
+
"type": "boolean"
|
|
684
|
+
}
|
|
685
|
+
],
|
|
686
|
+
"notes": [],
|
|
687
|
+
"language": ""
|
|
688
|
+
},
|
|
689
|
+
{
|
|
690
|
+
"type": "STRUCT",
|
|
691
|
+
"name": "resource.buffer_update_options",
|
|
692
|
+
"brief": "Buffer-resource update options",
|
|
693
|
+
"description": "Buffer-resource update options",
|
|
694
|
+
"returnvalues": [],
|
|
695
|
+
"parameters": [],
|
|
696
|
+
"examples": "",
|
|
697
|
+
"replaces": "",
|
|
698
|
+
"error": "",
|
|
699
|
+
"tparams": [],
|
|
700
|
+
"members": [
|
|
701
|
+
{
|
|
702
|
+
"name": "transfer_ownership?",
|
|
703
|
+
"doc": "Whether the resource takes ownership of the buffer. The default is false.",
|
|
704
|
+
"type": "boolean"
|
|
705
|
+
}
|
|
706
|
+
],
|
|
707
|
+
"notes": [],
|
|
708
|
+
"language": ""
|
|
709
|
+
},
|
|
710
|
+
{
|
|
711
|
+
"type": "STRUCT",
|
|
712
|
+
"name": "resource.text_metrics_options",
|
|
713
|
+
"brief": "Text metric options",
|
|
714
|
+
"description": "Text metric options",
|
|
715
|
+
"returnvalues": [],
|
|
716
|
+
"parameters": [],
|
|
717
|
+
"examples": "",
|
|
718
|
+
"replaces": "",
|
|
719
|
+
"error": "",
|
|
720
|
+
"tparams": [],
|
|
721
|
+
"members": [
|
|
722
|
+
{
|
|
723
|
+
"name": "width?",
|
|
724
|
+
"doc": "Text-field width; unused when <code>line_break</code> is false.",
|
|
725
|
+
"type": "number"
|
|
726
|
+
},
|
|
727
|
+
{
|
|
728
|
+
"name": "leading?",
|
|
729
|
+
"doc": "Line leading. The default is 1.",
|
|
730
|
+
"type": "number"
|
|
731
|
+
},
|
|
732
|
+
{
|
|
733
|
+
"name": "tracking?",
|
|
734
|
+
"doc": "Character tracking. The default is 0.",
|
|
735
|
+
"type": "number"
|
|
736
|
+
},
|
|
737
|
+
{
|
|
738
|
+
"name": "line_break?",
|
|
739
|
+
"doc": "Whether to account for line breaks. The default is false.",
|
|
740
|
+
"type": "boolean"
|
|
741
|
+
}
|
|
742
|
+
],
|
|
743
|
+
"notes": [],
|
|
744
|
+
"language": ""
|
|
745
|
+
},
|
|
746
|
+
{
|
|
747
|
+
"type": "STRUCT",
|
|
748
|
+
"name": "resource.text_metrics",
|
|
749
|
+
"brief": "Text metrics",
|
|
750
|
+
"description": "Text metrics",
|
|
751
|
+
"returnvalues": [],
|
|
752
|
+
"parameters": [],
|
|
753
|
+
"examples": "",
|
|
754
|
+
"replaces": "",
|
|
755
|
+
"error": "",
|
|
756
|
+
"tparams": [],
|
|
757
|
+
"members": [
|
|
758
|
+
{
|
|
759
|
+
"name": "width",
|
|
760
|
+
"doc": "Text width.",
|
|
761
|
+
"type": "number"
|
|
762
|
+
},
|
|
763
|
+
{
|
|
764
|
+
"name": "height",
|
|
765
|
+
"doc": "Text height.",
|
|
766
|
+
"type": "number"
|
|
767
|
+
},
|
|
768
|
+
{
|
|
769
|
+
"name": "max_ascent",
|
|
770
|
+
"doc": "Maximum ascent.",
|
|
771
|
+
"type": "number"
|
|
772
|
+
},
|
|
773
|
+
{
|
|
774
|
+
"name": "max_descent",
|
|
775
|
+
"doc": "Maximum descent.",
|
|
776
|
+
"type": "number"
|
|
777
|
+
}
|
|
778
|
+
],
|
|
779
|
+
"notes": [],
|
|
780
|
+
"language": ""
|
|
781
|
+
},
|
|
782
|
+
{
|
|
783
|
+
"type": "FUNCTION",
|
|
784
|
+
"name": "resource.material",
|
|
785
|
+
"brief": "reference to material resource",
|
|
786
|
+
"description": "Constructor-like function with two purposes:\n<ul>\n<li>Load the specified resource as part of loading the script</li>\n<li>Create a resource reference that resolves to the hashed path of the run-time resource</li>\n</ul>\n<span class=\"icon-attention\"></span> This function can only be called within <a href=\"/ref/go#go.property\">go.property</a> function calls.",
|
|
787
|
+
"returnvalues": [
|
|
788
|
+
{
|
|
789
|
+
"name": "resource",
|
|
790
|
+
"doc": "a reference to the binary version of the resource",
|
|
791
|
+
"types": ["resource_data"]
|
|
792
|
+
}
|
|
793
|
+
],
|
|
794
|
+
"parameters": [
|
|
795
|
+
{
|
|
796
|
+
"name": "path",
|
|
797
|
+
"doc": "optional resource path string to the resource",
|
|
798
|
+
"types": ["string"],
|
|
799
|
+
"is_optional": "True"
|
|
800
|
+
}
|
|
801
|
+
],
|
|
802
|
+
"examples": "Load a material and set it to a sprite:\n<div class=\"codehilite\"><pre><span></span><code><span class=\"n\">go</span><span class=\"p\">.</span><span class=\"n\">property</span><span class=\"p\">(</span><span class=\"s2\">"my_material"</span><span class=\"p\">,</span> <span class=\"n\">resource</span><span class=\"p\">.</span><span class=\"n\">material</span><span class=\"p\">(</span><span class=\"s2\">"/material.material"</span><span class=\"p\">))</span>\n<span class=\"kr\">function</span> <span class=\"nf\">init</span><span class=\"p\">(</span><span class=\"n\">self</span><span class=\"p\">)</span>\n <span class=\"n\">go</span><span class=\"p\">.</span><span class=\"n\">set</span><span class=\"p\">(</span><span class=\"s2\">"#sprite"</span><span class=\"p\">,</span> <span class=\"s2\">"material"</span><span class=\"p\">,</span> <span class=\"n\">self</span><span class=\"p\">.</span><span class=\"n\">my_material</span><span class=\"p\">)</span>\n<span class=\"kr\">end</span>\n</code></pre></div>\n\nLoad a material resource and update a named material with the resource:\n<div class=\"codehilite\"><pre><span></span><code><span class=\"n\">go</span><span class=\"p\">.</span><span class=\"n\">property</span><span class=\"p\">(</span><span class=\"s2\">"my_material"</span><span class=\"p\">,</span> <span class=\"n\">resource</span><span class=\"p\">.</span><span class=\"n\">material</span><span class=\"p\">(</span><span class=\"s2\">"/material.material"</span><span class=\"p\">))</span>\n<span class=\"kr\">function</span> <span class=\"nf\">init</span><span class=\"p\">(</span><span class=\"n\">self</span><span class=\"p\">)</span>\n <span class=\"n\">go</span><span class=\"p\">.</span><span class=\"n\">set</span><span class=\"p\">(</span><span class=\"s2\">"#gui"</span><span class=\"p\">,</span> <span class=\"s2\">"materials"</span><span class=\"p\">,</span> <span class=\"n\">self</span><span class=\"p\">.</span><span class=\"n\">my_material</span><span class=\"p\">,</span> <span class=\"p\">{</span><span class=\"n\">key</span> <span class=\"o\">=</span> <span class=\"s2\">"my_material"</span><span class=\"p\">})</span>\n<span class=\"kr\">end</span>\n</code></pre></div>",
|
|
803
|
+
"replaces": "",
|
|
804
|
+
"error": "",
|
|
805
|
+
"tparams": [],
|
|
806
|
+
"members": [],
|
|
807
|
+
"notes": [],
|
|
808
|
+
"language": ""
|
|
809
|
+
},
|
|
810
|
+
{
|
|
811
|
+
"type": "FUNCTION",
|
|
812
|
+
"name": "resource.font",
|
|
813
|
+
"brief": "reference to font resource",
|
|
814
|
+
"description": "Constructor-like function with two purposes:\n<ul>\n<li>Load the specified resource as part of loading the script</li>\n<li>Create a resource reference that resolves to the hashed path of the run-time resource</li>\n</ul>\n<span class=\"icon-attention\"></span> This function can only be called within <a href=\"/ref/go#go.property\">go.property</a> function calls.",
|
|
815
|
+
"returnvalues": [
|
|
816
|
+
{
|
|
817
|
+
"name": "resource",
|
|
818
|
+
"doc": "a reference to the binary version of the resource",
|
|
819
|
+
"types": ["resource_data"]
|
|
820
|
+
}
|
|
821
|
+
],
|
|
822
|
+
"parameters": [
|
|
823
|
+
{
|
|
824
|
+
"name": "path",
|
|
825
|
+
"doc": "optional resource path string to the resource",
|
|
826
|
+
"types": ["string"],
|
|
827
|
+
"is_optional": "True"
|
|
828
|
+
}
|
|
829
|
+
],
|
|
830
|
+
"examples": "Load a font and set it to a label:\n<div class=\"codehilite\"><pre><span></span><code><span class=\"n\">go</span><span class=\"p\">.</span><span class=\"n\">property</span><span class=\"p\">(</span><span class=\"s2\">"my_font"</span><span class=\"p\">,</span> <span class=\"n\">resource</span><span class=\"p\">.</span><span class=\"n\">font</span><span class=\"p\">(</span><span class=\"s2\">"/font.font"</span><span class=\"p\">))</span>\n<span class=\"kr\">function</span> <span class=\"nf\">init</span><span class=\"p\">(</span><span class=\"n\">self</span><span class=\"p\">)</span>\n <span class=\"n\">go</span><span class=\"p\">.</span><span class=\"n\">set</span><span class=\"p\">(</span><span class=\"s2\">"#label"</span><span class=\"p\">,</span> <span class=\"s2\">"font"</span><span class=\"p\">,</span> <span class=\"n\">self</span><span class=\"p\">.</span><span class=\"n\">my_font</span><span class=\"p\">)</span>\n<span class=\"kr\">end</span>\n</code></pre></div>\n\nLoad a font and set it to a gui:\n<div class=\"codehilite\"><pre><span></span><code><span class=\"n\">go</span><span class=\"p\">.</span><span class=\"n\">property</span><span class=\"p\">(</span><span class=\"s2\">"my_font"</span><span class=\"p\">,</span> <span class=\"n\">resource</span><span class=\"p\">.</span><span class=\"n\">font</span><span class=\"p\">(</span><span class=\"s2\">"/font.font"</span><span class=\"p\">))</span>\n<span class=\"kr\">function</span> <span class=\"nf\">init</span><span class=\"p\">(</span><span class=\"n\">self</span><span class=\"p\">)</span>\n <span class=\"n\">go</span><span class=\"p\">.</span><span class=\"n\">set</span><span class=\"p\">(</span><span class=\"s2\">"#gui"</span><span class=\"p\">,</span> <span class=\"s2\">"fonts"</span><span class=\"p\">,</span> <span class=\"n\">self</span><span class=\"p\">.</span><span class=\"n\">my_font</span><span class=\"p\">,</span> <span class=\"p\">{</span><span class=\"n\">key</span> <span class=\"o\">=</span> <span class=\"s2\">"my_font"</span><span class=\"p\">})</span>\n<span class=\"kr\">end</span>\n</code></pre></div>",
|
|
831
|
+
"replaces": "",
|
|
832
|
+
"error": "",
|
|
833
|
+
"tparams": [],
|
|
834
|
+
"members": [],
|
|
835
|
+
"notes": [],
|
|
836
|
+
"language": ""
|
|
837
|
+
},
|
|
838
|
+
{
|
|
839
|
+
"type": "FUNCTION",
|
|
840
|
+
"name": "resource.texture",
|
|
841
|
+
"brief": "reference to texture resource",
|
|
842
|
+
"description": "Constructor-like function with two purposes:\n<ul>\n<li>Load the specified resource as part of loading the script</li>\n<li>Create a resource reference that resolves to the hashed path of the run-time resource</li>\n</ul>\n<span class=\"icon-attention\"></span> This function can only be called within <a href=\"/ref/go#go.property\">go.property</a> function calls.",
|
|
843
|
+
"returnvalues": [
|
|
844
|
+
{
|
|
845
|
+
"name": "resource",
|
|
846
|
+
"doc": "a reference to the binary version of the resource",
|
|
847
|
+
"types": ["resource_data"]
|
|
848
|
+
}
|
|
849
|
+
],
|
|
850
|
+
"parameters": [
|
|
851
|
+
{
|
|
852
|
+
"name": "path",
|
|
853
|
+
"doc": "optional resource path string to the resource",
|
|
854
|
+
"types": ["string"],
|
|
855
|
+
"is_optional": "True"
|
|
856
|
+
}
|
|
857
|
+
],
|
|
858
|
+
"examples": "Load a texture and set it to a model:\n<div class=\"codehilite\"><pre><span></span><code><span class=\"n\">go</span><span class=\"p\">.</span><span class=\"n\">property</span><span class=\"p\">(</span><span class=\"s2\">"my_texture"</span><span class=\"p\">,</span> <span class=\"n\">resource</span><span class=\"p\">.</span><span class=\"n\">texture</span><span class=\"p\">(</span><span class=\"s2\">"/texture.png"</span><span class=\"p\">))</span>\n<span class=\"kr\">function</span> <span class=\"nf\">init</span><span class=\"p\">(</span><span class=\"n\">self</span><span class=\"p\">)</span>\n <span class=\"n\">go</span><span class=\"p\">.</span><span class=\"n\">set</span><span class=\"p\">(</span><span class=\"s2\">"#model"</span><span class=\"p\">,</span> <span class=\"s2\">"texture0"</span><span class=\"p\">,</span> <span class=\"n\">self</span><span class=\"p\">.</span><span class=\"n\">my_texture</span><span class=\"p\">)</span>\n<span class=\"kr\">end</span>\n</code></pre></div>",
|
|
859
|
+
"replaces": "",
|
|
860
|
+
"error": "",
|
|
861
|
+
"tparams": [],
|
|
862
|
+
"members": [],
|
|
863
|
+
"notes": [],
|
|
864
|
+
"language": ""
|
|
865
|
+
},
|
|
866
|
+
{
|
|
867
|
+
"type": "FUNCTION",
|
|
868
|
+
"name": "resource.atlas",
|
|
869
|
+
"brief": "reference to atlas resource",
|
|
870
|
+
"description": "Constructor-like function with two purposes:\n<ul>\n<li>Load the specified resource as part of loading the script</li>\n<li>Create a resource reference that resolves to the hashed path of the run-time resource</li>\n</ul>\n<span class=\"icon-attention\"></span> This function can only be called within <a href=\"/ref/go#go.property\">go.property</a> function calls.",
|
|
871
|
+
"returnvalues": [
|
|
872
|
+
{
|
|
873
|
+
"name": "resource",
|
|
874
|
+
"doc": "a reference to the binary version of the resource",
|
|
875
|
+
"types": ["resource_data"]
|
|
876
|
+
}
|
|
877
|
+
],
|
|
878
|
+
"parameters": [
|
|
879
|
+
{
|
|
880
|
+
"name": "path",
|
|
881
|
+
"doc": "optional resource path string to the resource",
|
|
882
|
+
"types": ["string"],
|
|
883
|
+
"is_optional": "True"
|
|
884
|
+
}
|
|
885
|
+
],
|
|
886
|
+
"examples": "Load an atlas and set it to a sprite:\n<div class=\"codehilite\"><pre><span></span><code><span class=\"n\">go</span><span class=\"p\">.</span><span class=\"n\">property</span><span class=\"p\">(</span><span class=\"s2\">"my_atlas"</span><span class=\"p\">,</span> <span class=\"n\">resource</span><span class=\"p\">.</span><span class=\"n\">atlas</span><span class=\"p\">(</span><span class=\"s2\">"/atlas.atlas"</span><span class=\"p\">))</span>\n<span class=\"kr\">function</span> <span class=\"nf\">init</span><span class=\"p\">(</span><span class=\"n\">self</span><span class=\"p\">)</span>\n <span class=\"n\">go</span><span class=\"p\">.</span><span class=\"n\">set</span><span class=\"p\">(</span><span class=\"s2\">"#sprite"</span><span class=\"p\">,</span> <span class=\"s2\">"image"</span><span class=\"p\">,</span> <span class=\"n\">self</span><span class=\"p\">.</span><span class=\"n\">my_atlas</span><span class=\"p\">)</span>\n<span class=\"kr\">end</span>\n</code></pre></div>\n\nLoad an atlas and set it to a gui:\n<div class=\"codehilite\"><pre><span></span><code><span class=\"n\">go</span><span class=\"p\">.</span><span class=\"n\">property</span><span class=\"p\">(</span><span class=\"s2\">"my_atlas"</span><span class=\"p\">,</span> <span class=\"n\">resource</span><span class=\"p\">.</span><span class=\"n\">atlas</span><span class=\"p\">(</span><span class=\"s2\">"/atlas.atlas"</span><span class=\"p\">))</span>\n<span class=\"kr\">function</span> <span class=\"nf\">init</span><span class=\"p\">(</span><span class=\"n\">self</span><span class=\"p\">)</span>\n <span class=\"n\">go</span><span class=\"p\">.</span><span class=\"n\">set</span><span class=\"p\">(</span><span class=\"s2\">"#gui"</span><span class=\"p\">,</span> <span class=\"s2\">"textures"</span><span class=\"p\">,</span> <span class=\"n\">self</span><span class=\"p\">.</span><span class=\"n\">my_atlas</span><span class=\"p\">,</span> <span class=\"p\">{</span><span class=\"n\">key</span> <span class=\"o\">=</span> <span class=\"s2\">"my_atlas"</span><span class=\"p\">})</span>\n<span class=\"kr\">end</span>\n</code></pre></div>",
|
|
887
|
+
"replaces": "",
|
|
888
|
+
"error": "",
|
|
889
|
+
"tparams": [],
|
|
890
|
+
"members": [],
|
|
891
|
+
"notes": [],
|
|
892
|
+
"language": ""
|
|
893
|
+
},
|
|
894
|
+
{
|
|
895
|
+
"type": "FUNCTION",
|
|
896
|
+
"name": "resource.buffer",
|
|
897
|
+
"brief": "reference to buffer resource",
|
|
898
|
+
"description": "Constructor-like function with two purposes:\n<ul>\n<li>Load the specified resource as part of loading the script</li>\n<li>Create a resource reference that resolves to the hashed path of the run-time resource</li>\n</ul>\n<span class=\"icon-attention\"></span> This function can only be called within <a href=\"/ref/go#go.property\">go.property</a> function calls.",
|
|
899
|
+
"returnvalues": [
|
|
900
|
+
{
|
|
901
|
+
"name": "resource",
|
|
902
|
+
"doc": "a reference to the binary version of the resource",
|
|
903
|
+
"types": ["resource_data"]
|
|
904
|
+
}
|
|
905
|
+
],
|
|
906
|
+
"parameters": [
|
|
907
|
+
{
|
|
908
|
+
"name": "path",
|
|
909
|
+
"doc": "optional resource path string to the resource",
|
|
910
|
+
"types": ["string"],
|
|
911
|
+
"is_optional": "True"
|
|
912
|
+
}
|
|
913
|
+
],
|
|
914
|
+
"examples": "Set a unique buffer it to a sprite:\n<div class=\"codehilite\"><pre><span></span><code><span class=\"n\">go</span><span class=\"p\">.</span><span class=\"n\">property</span><span class=\"p\">(</span><span class=\"s2\">"my_buffer"</span><span class=\"p\">,</span> <span class=\"n\">resource</span><span class=\"p\">.</span><span class=\"n\">buffer</span><span class=\"p\">(</span><span class=\"s2\">"/cube.buffer"</span><span class=\"p\">))</span>\n<span class=\"kr\">function</span> <span class=\"nf\">init</span><span class=\"p\">(</span><span class=\"n\">self</span><span class=\"p\">)</span>\n <span class=\"n\">go</span><span class=\"p\">.</span><span class=\"n\">set</span><span class=\"p\">(</span><span class=\"s2\">"#mesh"</span><span class=\"p\">,</span> <span class=\"s2\">"vertices"</span><span class=\"p\">,</span> <span class=\"n\">self</span><span class=\"p\">.</span><span class=\"n\">my_buffer</span><span class=\"p\">)</span>\n<span class=\"kr\">end</span>\n</code></pre></div>",
|
|
915
|
+
"replaces": "",
|
|
916
|
+
"error": "",
|
|
917
|
+
"tparams": [],
|
|
918
|
+
"members": [],
|
|
919
|
+
"notes": [],
|
|
920
|
+
"language": ""
|
|
921
|
+
},
|
|
922
|
+
{
|
|
923
|
+
"type": "FUNCTION",
|
|
924
|
+
"name": "resource.tile_source",
|
|
925
|
+
"brief": "reference to tile source resource",
|
|
926
|
+
"description": "Constructor-like function with two purposes:\n<ul>\n<li>Load the specified resource as part of loading the script</li>\n<li>Create a resource reference that resolves to the hashed path of the run-time resource</li>\n</ul>\n<span class=\"icon-attention\"></span> This function can only be called within <a href=\"/ref/go#go.property\">go.property</a> function calls.",
|
|
927
|
+
"returnvalues": [
|
|
928
|
+
{
|
|
929
|
+
"name": "resource",
|
|
930
|
+
"doc": "a reference to the binary version of the resource",
|
|
931
|
+
"types": ["resource_data"]
|
|
932
|
+
}
|
|
933
|
+
],
|
|
934
|
+
"parameters": [
|
|
935
|
+
{
|
|
936
|
+
"name": "path",
|
|
937
|
+
"doc": "optional resource path string to the resource",
|
|
938
|
+
"types": ["string"],
|
|
939
|
+
"is_optional": "True"
|
|
940
|
+
}
|
|
941
|
+
],
|
|
942
|
+
"examples": "Load tile source and set it to a tile map:\n<div class=\"codehilite\"><pre><span></span><code><span class=\"n\">go</span><span class=\"p\">.</span><span class=\"n\">property</span><span class=\"p\">(</span><span class=\"s2\">"my_tile_source"</span><span class=\"p\">,</span> <span class=\"n\">resource</span><span class=\"p\">.</span><span class=\"n\">tile_source</span><span class=\"p\">(</span><span class=\"s2\">"/tilesource.tilesource"</span><span class=\"p\">))</span>\n<span class=\"kr\">function</span> <span class=\"nf\">init</span><span class=\"p\">(</span><span class=\"n\">self</span><span class=\"p\">)</span>\n <span class=\"n\">go</span><span class=\"p\">.</span><span class=\"n\">set</span><span class=\"p\">(</span><span class=\"s2\">"#tilemap"</span><span class=\"p\">,</span> <span class=\"s2\">"tile_source"</span><span class=\"p\">,</span> <span class=\"n\">self</span><span class=\"p\">.</span><span class=\"n\">my_tile_source</span><span class=\"p\">)</span>\n<span class=\"kr\">end</span>\n</code></pre></div>",
|
|
943
|
+
"replaces": "",
|
|
944
|
+
"error": "",
|
|
945
|
+
"tparams": [],
|
|
946
|
+
"members": [],
|
|
947
|
+
"notes": [],
|
|
948
|
+
"language": ""
|
|
949
|
+
},
|
|
950
|
+
{
|
|
951
|
+
"type": "FUNCTION",
|
|
952
|
+
"name": "resource.render_target",
|
|
953
|
+
"brief": "reference to render target resource",
|
|
954
|
+
"description": "Constructor-like function with two purposes:\n<ul>\n<li>Load the specified resource as part of loading the script</li>\n<li>Create a resource reference that resolves to the hashed path of the run-time resource</li>\n</ul>\n<span class=\"icon-attention\"></span> This function can only be called within <a href=\"/ref/go#go.property\">go.property</a> function calls.",
|
|
955
|
+
"returnvalues": [
|
|
956
|
+
{
|
|
957
|
+
"name": "resource",
|
|
958
|
+
"doc": "a reference to the binary version of the resource",
|
|
959
|
+
"types": ["resource_data"]
|
|
960
|
+
}
|
|
961
|
+
],
|
|
962
|
+
"parameters": [
|
|
963
|
+
{
|
|
964
|
+
"name": "path",
|
|
965
|
+
"doc": "optional resource path string to the resource",
|
|
966
|
+
"types": ["string"],
|
|
967
|
+
"is_optional": "True"
|
|
968
|
+
}
|
|
969
|
+
],
|
|
970
|
+
"examples": "Set a render target color attachment as a model texture:\n<div class=\"codehilite\"><pre><span></span><code><span class=\"n\">go</span><span class=\"p\">.</span><span class=\"n\">property</span><span class=\"p\">(</span><span class=\"s2\">"my_render_target"</span><span class=\"p\">,</span> <span class=\"n\">resource</span><span class=\"p\">.</span><span class=\"n\">render_target</span><span class=\"p\">(</span><span class=\"s2\">"/rt.render_target"</span><span class=\"p\">))</span>\n<span class=\"kr\">function</span> <span class=\"nf\">init</span><span class=\"p\">(</span><span class=\"n\">self</span><span class=\"p\">)</span>\n <span class=\"kd\">local</span> <span class=\"n\">rt_info</span> <span class=\"o\">=</span> <span class=\"n\">resource</span><span class=\"p\">.</span><span class=\"n\">get_render_target_info</span><span class=\"p\">(</span><span class=\"n\">self</span><span class=\"p\">.</span><span class=\"n\">my_render_target</span><span class=\"p\">)</span>\n <span class=\"n\">go</span><span class=\"p\">.</span><span class=\"n\">set</span><span class=\"p\">(</span><span class=\"s2\">"#model"</span><span class=\"p\">,</span> <span class=\"s2\">"texture0"</span><span class=\"p\">,</span> <span class=\"n\">rt_info</span><span class=\"p\">.</span><span class=\"n\">attachments</span><span class=\"p\">[</span><span class=\"mi\">1</span><span class=\"p\">].</span><span class=\"n\">texture</span><span class=\"p\">)</span>\n<span class=\"kr\">end</span>\n</code></pre></div>",
|
|
971
|
+
"replaces": "",
|
|
972
|
+
"error": "",
|
|
973
|
+
"tparams": [],
|
|
974
|
+
"members": [],
|
|
975
|
+
"notes": [],
|
|
976
|
+
"language": ""
|
|
977
|
+
},
|
|
978
|
+
{
|
|
979
|
+
"type": "FUNCTION",
|
|
980
|
+
"name": "resource.set",
|
|
981
|
+
"brief": "Set a resource",
|
|
982
|
+
"description": "Sets the resource data for a specific resource",
|
|
983
|
+
"returnvalues": [],
|
|
984
|
+
"parameters": [
|
|
985
|
+
{
|
|
986
|
+
"name": "path",
|
|
987
|
+
"doc": "The path to the resource",
|
|
988
|
+
"types": ["string", "hash"],
|
|
989
|
+
"is_optional": "False"
|
|
990
|
+
},
|
|
991
|
+
{
|
|
992
|
+
"name": "buffer",
|
|
993
|
+
"doc": "The buffer of precreated data, suitable for the intended resource type",
|
|
994
|
+
"types": ["buffer_data"],
|
|
995
|
+
"is_optional": "False"
|
|
996
|
+
}
|
|
997
|
+
],
|
|
998
|
+
"examples": "Assuming the folder \"/res\" is added to the project custom resources:\n<div class=\"codehilite\"><pre><span></span><code><span class=\"c1\">-- load a texture resource and set it on a sprite</span>\n<span class=\"kd\">local</span> <span class=\"n\">buffer</span> <span class=\"o\">=</span> <span class=\"n\">resource</span><span class=\"p\">.</span><span class=\"n\">load</span><span class=\"p\">(</span><span class=\"s2\">"/res/new.texturec"</span><span class=\"p\">)</span>\n<span class=\"n\">resource</span><span class=\"p\">.</span><span class=\"n\">set</span><span class=\"p\">(</span><span class=\"n\">go</span><span class=\"p\">.</span><span class=\"n\">get</span><span class=\"p\">(</span><span class=\"s2\">"#sprite"</span><span class=\"p\">,</span> <span class=\"s2\">"texture0"</span><span class=\"p\">),</span> <span class=\"n\">buffer</span><span class=\"p\">)</span>\n</code></pre></div>",
|
|
999
|
+
"replaces": "",
|
|
1000
|
+
"error": "",
|
|
1001
|
+
"tparams": [],
|
|
1002
|
+
"members": [],
|
|
1003
|
+
"notes": [],
|
|
1004
|
+
"language": ""
|
|
1005
|
+
},
|
|
1006
|
+
{
|
|
1007
|
+
"type": "FUNCTION",
|
|
1008
|
+
"name": "resource.load",
|
|
1009
|
+
"brief": "load a resource",
|
|
1010
|
+
"description": "Loads the resource data for a specific resource.",
|
|
1011
|
+
"returnvalues": [
|
|
1012
|
+
{
|
|
1013
|
+
"name": "buffer",
|
|
1014
|
+
"doc": "Returns the buffer stored on disc",
|
|
1015
|
+
"types": ["buffer_data"]
|
|
1016
|
+
}
|
|
1017
|
+
],
|
|
1018
|
+
"parameters": [
|
|
1019
|
+
{
|
|
1020
|
+
"name": "path",
|
|
1021
|
+
"doc": "The path to the resource",
|
|
1022
|
+
"types": ["string"],
|
|
1023
|
+
"is_optional": "False"
|
|
1024
|
+
}
|
|
1025
|
+
],
|
|
1026
|
+
"examples": "<div class=\"codehilite\"><pre><span></span><code><span class=\"c1\">-- read custom resource data into buffer</span>\n<span class=\"kd\">local</span> <span class=\"n\">buffer</span> <span class=\"o\">=</span> <span class=\"n\">resource</span><span class=\"p\">.</span><span class=\"n\">load</span><span class=\"p\">(</span><span class=\"s2\">"/resources/datafile"</span><span class=\"p\">)</span>\n</code></pre></div>\n\nIn order for the engine to include custom resources in the build process, you need\nto specify them in the \"game.project\" settings file:\n<div class=\"codehilite\"><pre><span></span><code><span class=\"k\">[project]</span><span class=\"w\"></span>\n<span class=\"na\">title</span><span class=\"w\"> </span><span class=\"o\">=</span><span class=\"w\"> </span><span class=\"s\">My project</span><span class=\"w\"></span>\n<span class=\"na\">version</span><span class=\"w\"> </span><span class=\"o\">=</span><span class=\"w\"> </span><span class=\"s\">0.1</span><span class=\"w\"></span>\n<span class=\"na\">custom_resources</span><span class=\"w\"> </span><span class=\"o\">=</span><span class=\"w\"> </span><span class=\"s\">resources/,assets/level_data.json</span><span class=\"w\"></span>\n</code></pre></div>",
|
|
1027
|
+
"replaces": "",
|
|
1028
|
+
"error": "",
|
|
1029
|
+
"tparams": [],
|
|
1030
|
+
"members": [],
|
|
1031
|
+
"notes": [],
|
|
1032
|
+
"language": ""
|
|
1033
|
+
},
|
|
1034
|
+
{
|
|
1035
|
+
"type": "FUNCTION",
|
|
1036
|
+
"name": "resource.create_texture",
|
|
1037
|
+
"brief": "create a texture",
|
|
1038
|
+
"description": "Creates a new texture resource that can be used in the same way as any texture created during build time.\nThe path used for creating the texture must be unique, trying to create a resource at a path that is already\nregistered will trigger an error. If the intention is to instead modify an existing texture, use the <a href=\"/ref/resource#resource.set_texture\">resource.set_texture</a>\nfunction. Also note that the path to the new texture resource must have a '.texturec' extension,\nmeaning \"/path/my_texture\" is not a valid path but \"/path/my_texture.texturec\" is.\nIf the texture is created without a buffer, the pixel data will be blank.",
|
|
1039
|
+
"returnvalues": [
|
|
1040
|
+
{
|
|
1041
|
+
"name": "path",
|
|
1042
|
+
"doc": "The path to the resource.",
|
|
1043
|
+
"types": ["hash"]
|
|
1044
|
+
}
|
|
1045
|
+
],
|
|
1046
|
+
"parameters": [
|
|
1047
|
+
{
|
|
1048
|
+
"name": "path",
|
|
1049
|
+
"doc": "The path to the resource.",
|
|
1050
|
+
"types": ["string"],
|
|
1051
|
+
"is_optional": "False"
|
|
1052
|
+
},
|
|
1053
|
+
{
|
|
1054
|
+
"name": "table",
|
|
1055
|
+
"doc": "texture creation parameters",
|
|
1056
|
+
"types": ["resource.texture_creation_params"],
|
|
1057
|
+
"is_optional": "False"
|
|
1058
|
+
},
|
|
1059
|
+
{
|
|
1060
|
+
"name": "buffer",
|
|
1061
|
+
"doc": "optional buffer of precreated pixel data",
|
|
1062
|
+
"types": ["buffer_data"],
|
|
1063
|
+
"is_optional": "True"
|
|
1064
|
+
}
|
|
1065
|
+
],
|
|
1066
|
+
"examples": "Check whether a texture format is supported by the device:\n<div class=\"codehilite\"><pre><span></span><code><span class=\"kr\">if</span> <span class=\"n\">graphics</span><span class=\"p\">.</span><span class=\"n\">TEXTURE_FORMAT_RGBA16F</span> <span class=\"o\">~=</span> <span class=\"kc\">nil</span> <span class=\"kr\">then</span>\n <span class=\"c1\">-- It is safe to use this format.</span>\n<span class=\"kr\">end</span>\n</code></pre></div>\n\n<span class=\"icon-attention\"></span> 3D textures are currently only supported on OpenGL and Vulkan adapters. Check whether the device supports 3D textures before using them:\n<div class=\"codehilite\"><pre><span></span><code><span class=\"kr\">if</span> <span class=\"n\">graphics</span><span class=\"p\">.</span><span class=\"n\">TEXTURE_TYPE_3D</span> <span class=\"o\">~=</span> <span class=\"kc\">nil</span> <span class=\"kr\">then</span>\n <span class=\"c1\">-- The device and graphics adapter support 3D textures.</span>\n<span class=\"kr\">end</span>\n</code></pre></div>\n\nHow to create an 128x128 RGBA texture resource and assign it to a model\n<div class=\"codehilite\"><pre><span></span><code><span class=\"kr\">function</span> <span class=\"nf\">init</span><span class=\"p\">(</span><span class=\"n\">self</span><span class=\"p\">)</span>\n <span class=\"kd\">local</span> <span class=\"n\">tparams</span> <span class=\"o\">=</span> <span class=\"p\">{</span>\n <span class=\"n\">width</span> <span class=\"o\">=</span> <span class=\"mi\">128</span><span class=\"p\">,</span>\n <span class=\"n\">height</span> <span class=\"o\">=</span> <span class=\"mi\">128</span><span class=\"p\">,</span>\n <span class=\"nb\">type</span> <span class=\"o\">=</span> <span class=\"n\">graphics</span><span class=\"p\">.</span><span class=\"n\">TEXTURE_TYPE_2D</span><span class=\"p\">,</span>\n <span class=\"n\">format</span> <span class=\"o\">=</span> <span class=\"n\">graphics</span><span class=\"p\">.</span><span class=\"n\">TEXTURE_FORMAT_RGBA</span><span class=\"p\">,</span>\n <span class=\"p\">}</span>\n <span class=\"kd\">local</span> <span class=\"n\">my_texture_id</span> <span class=\"o\">=</span> <span class=\"n\">resource</span><span class=\"p\">.</span><span class=\"n\">create_texture</span><span class=\"p\">(</span><span class=\"s2\">"/my_custom_texture.texturec"</span><span class=\"p\">,</span> <span class=\"n\">tparams</span><span class=\"p\">)</span>\n <span class=\"n\">go</span><span class=\"p\">.</span><span class=\"n\">set</span><span class=\"p\">(</span><span class=\"s2\">"#model"</span><span class=\"p\">,</span> <span class=\"s2\">"texture0"</span><span class=\"p\">,</span> <span class=\"n\">my_texture_id</span><span class=\"p\">)</span>\n<span class=\"kr\">end</span>\n</code></pre></div>\n\nHow to create an 128x128 floating point texture (RGBA32F) resource from a buffer object\n<div class=\"codehilite\"><pre><span></span><code><span class=\"kr\">function</span> <span class=\"nf\">init</span><span class=\"p\">(</span><span class=\"n\">self</span><span class=\"p\">)</span>\n <span class=\"c1\">-- Create a new buffer with 4 components and FLOAT32 type</span>\n <span class=\"kd\">local</span> <span class=\"n\">tbuffer</span> <span class=\"o\">=</span> <span class=\"n\">buffer</span><span class=\"p\">.</span><span class=\"n\">create</span><span class=\"p\">(</span><span class=\"mi\">128</span> <span class=\"o\">*</span> <span class=\"mi\">128</span><span class=\"p\">,</span> <span class=\"p\">{</span> <span class=\"p\">{</span><span class=\"n\">name</span><span class=\"o\">=</span><span class=\"n\">hash</span><span class=\"p\">(</span><span class=\"s2\">"rgba"</span><span class=\"p\">),</span> <span class=\"nb\">type</span><span class=\"o\">=</span><span class=\"n\">buffer</span><span class=\"p\">.</span><span class=\"n\">VALUE_TYPE_FLOAT32</span><span class=\"p\">,</span> <span class=\"n\">count</span><span class=\"o\">=</span><span class=\"mi\">4</span><span class=\"p\">}</span> <span class=\"p\">}</span> <span class=\"p\">)</span>\n <span class=\"kd\">local</span> <span class=\"n\">tstream</span> <span class=\"o\">=</span> <span class=\"n\">buffer</span><span class=\"p\">.</span><span class=\"n\">get_stream</span><span class=\"p\">(</span><span class=\"n\">tbuffer</span><span class=\"p\">,</span> <span class=\"n\">hash</span><span class=\"p\">(</span><span class=\"s2\">"rgba"</span><span class=\"p\">))</span>\n\n <span class=\"c1\">-- Fill the buffer stream with some float values</span>\n <span class=\"kr\">for</span> <span class=\"n\">y</span><span class=\"o\">=</span><span class=\"mi\">1</span><span class=\"p\">,</span><span class=\"mi\">128</span> <span class=\"kr\">do</span>\n <span class=\"kr\">for</span> <span class=\"n\">x</span><span class=\"o\">=</span><span class=\"mi\">1</span><span class=\"p\">,</span><span class=\"mi\">128</span> <span class=\"kr\">do</span>\n <span class=\"kd\">local</span> <span class=\"n\">index</span> <span class=\"o\">=</span> <span class=\"p\">(</span><span class=\"n\">y</span><span class=\"o\">-</span><span class=\"mi\">1</span><span class=\"p\">)</span> <span class=\"o\">*</span> <span class=\"mi\">128</span> <span class=\"o\">*</span> <span class=\"mi\">4</span> <span class=\"o\">+</span> <span class=\"p\">(</span><span class=\"n\">x</span><span class=\"o\">-</span><span class=\"mi\">1</span><span class=\"p\">)</span> <span class=\"o\">*</span> <span class=\"mi\">4</span> <span class=\"o\">+</span> <span class=\"mi\">1</span>\n <span class=\"n\">tstream</span><span class=\"p\">[</span><span class=\"n\">index</span> <span class=\"o\">+</span> <span class=\"mi\">0</span><span class=\"p\">]</span> <span class=\"o\">=</span> <span class=\"mf\">999.0</span>\n <span class=\"n\">tstream</span><span class=\"p\">[</span><span class=\"n\">index</span> <span class=\"o\">+</span> <span class=\"mi\">1</span><span class=\"p\">]</span> <span class=\"o\">=</span> <span class=\"o\">-</span><span class=\"mf\">1.0</span>\n <span class=\"n\">tstream</span><span class=\"p\">[</span><span class=\"n\">index</span> <span class=\"o\">+</span> <span class=\"mi\">2</span><span class=\"p\">]</span> <span class=\"o\">=</span> <span class=\"mf\">0.5</span>\n <span class=\"n\">tstream</span><span class=\"p\">[</span><span class=\"n\">index</span> <span class=\"o\">+</span> <span class=\"mi\">3</span><span class=\"p\">]</span> <span class=\"o\">=</span> <span class=\"mf\">1.0</span>\n <span class=\"kr\">end</span>\n <span class=\"kr\">end</span>\n\n <span class=\"c1\">-- Create a 2D Texture with a RGBA23F format</span>\n <span class=\"kd\">local</span> <span class=\"n\">tparams</span> <span class=\"o\">=</span> <span class=\"p\">{</span>\n <span class=\"n\">width</span> <span class=\"o\">=</span> <span class=\"mi\">128</span><span class=\"p\">,</span>\n <span class=\"n\">height</span> <span class=\"o\">=</span> <span class=\"mi\">128</span><span class=\"p\">,</span>\n <span class=\"nb\">type</span> <span class=\"o\">=</span> <span class=\"n\">graphics</span><span class=\"p\">.</span><span class=\"n\">TEXTURE_TYPE_2D</span><span class=\"p\">,</span>\n <span class=\"n\">format</span> <span class=\"o\">=</span> <span class=\"n\">graphics</span><span class=\"p\">.</span><span class=\"n\">TEXTURE_FORMAT_RGBA32F</span><span class=\"p\">,</span>\n <span class=\"p\">}</span>\n\n <span class=\"c1\">-- Note that we pass the buffer as the last argument here!</span>\n <span class=\"kd\">local</span> <span class=\"n\">my_texture_id</span> <span class=\"o\">=</span> <span class=\"n\">resource</span><span class=\"p\">.</span><span class=\"n\">create_texture</span><span class=\"p\">(</span><span class=\"s2\">"/my_custom_texture.texturec"</span><span class=\"p\">,</span> <span class=\"n\">tparams</span><span class=\"p\">,</span> <span class=\"n\">tbuffer</span><span class=\"p\">)</span>\n\n <span class=\"c1\">-- assign the texture to a model</span>\n <span class=\"n\">go</span><span class=\"p\">.</span><span class=\"n\">set</span><span class=\"p\">(</span><span class=\"s2\">"#model"</span><span class=\"p\">,</span> <span class=\"s2\">"texture0"</span><span class=\"p\">,</span> <span class=\"n\">my_texture_id</span><span class=\"p\">)</span>\n<span class=\"kr\">end</span>\n</code></pre></div>\n\nHow to create a 32x32x32 floating point 3D texture that can be used to generate volumetric data in a compute shader\n<div class=\"codehilite\"><pre><span></span><code><span class=\"kr\">function</span> <span class=\"nf\">init</span><span class=\"p\">(</span><span class=\"n\">self</span><span class=\"p\">)</span>\n <span class=\"kd\">local</span> <span class=\"n\">t_volume</span> <span class=\"o\">=</span> <span class=\"n\">resource</span><span class=\"p\">.</span><span class=\"n\">create_texture</span><span class=\"p\">(</span><span class=\"s2\">"/my_backing_texture.texturec"</span><span class=\"p\">,</span> <span class=\"p\">{</span>\n <span class=\"nb\">type</span> <span class=\"o\">=</span> <span class=\"n\">graphics</span><span class=\"p\">.</span><span class=\"n\">TEXTURE_TYPE_IMAGE_3D</span><span class=\"p\">,</span>\n <span class=\"n\">width</span> <span class=\"o\">=</span> <span class=\"mi\">32</span><span class=\"p\">,</span>\n <span class=\"n\">height</span> <span class=\"o\">=</span> <span class=\"mi\">32</span><span class=\"p\">,</span>\n <span class=\"n\">depth</span> <span class=\"o\">=</span> <span class=\"mi\">32</span><span class=\"p\">,</span>\n <span class=\"n\">format</span> <span class=\"o\">=</span> <span class=\"n\">graphics</span><span class=\"p\">.</span><span class=\"n\">TEXTURE_FORMAT_RGBA32F</span><span class=\"p\">,</span>\n <span class=\"n\">flags</span> <span class=\"o\">=</span> <span class=\"n\">graphics</span><span class=\"p\">.</span><span class=\"n\">TEXTURE_USAGE_FLAG_STORAGE</span> <span class=\"o\">+</span> <span class=\"n\">graphics</span><span class=\"p\">.</span><span class=\"n\">TEXTURE_USAGE_FLAG_SAMPLE</span><span class=\"p\">,</span>\n <span class=\"p\">})</span>\n\n <span class=\"c1\">-- pass the backing texture to the render script</span>\n <span class=\"n\">msg</span><span class=\"p\">.</span><span class=\"n\">post</span><span class=\"p\">(</span><span class=\"s2\">"@render:"</span><span class=\"p\">,</span> <span class=\"s2\">"add_textures"</span><span class=\"p\">,</span> <span class=\"p\">{</span> <span class=\"n\">t_volume</span> <span class=\"p\">})</span>\n<span class=\"kr\">end</span>\n</code></pre></div>\n\nHow to create 512x512 texture array with 5 pages.\n<div class=\"codehilite\"><pre><span></span><code> <span class=\"kd\">local</span> <span class=\"n\">new_tex</span> <span class=\"o\">=</span> <span class=\"n\">resource</span><span class=\"p\">.</span><span class=\"n\">create_texture</span><span class=\"p\">(</span><span class=\"s2\">"/runtime/example_array.texturec"</span><span class=\"p\">,</span> <span class=\"p\">{</span>\n <span class=\"nb\">type</span> <span class=\"o\">=</span> <span class=\"n\">graphics</span><span class=\"p\">.</span><span class=\"n\">TEXTURE_TYPE_2D_ARRAY</span><span class=\"p\">,</span>\n <span class=\"n\">width</span> <span class=\"o\">=</span> <span class=\"mi\">512</span><span class=\"p\">,</span>\n <span class=\"n\">height</span> <span class=\"o\">=</span> <span class=\"mi\">512</span><span class=\"p\">,</span>\n <span class=\"n\">page_count</span> <span class=\"o\">=</span> <span class=\"mi\">5</span><span class=\"p\">,</span>\n <span class=\"n\">format</span> <span class=\"o\">=</span> <span class=\"n\">graphics</span><span class=\"p\">.</span><span class=\"n\">TEXTURE_FORMAT_RGB</span><span class=\"p\">,</span>\n <span class=\"p\">})</span>\n</code></pre></div>",
|
|
1067
|
+
"replaces": "",
|
|
1068
|
+
"error": "",
|
|
1069
|
+
"tparams": [],
|
|
1070
|
+
"members": [],
|
|
1071
|
+
"notes": [],
|
|
1072
|
+
"language": ""
|
|
1073
|
+
},
|
|
1074
|
+
{
|
|
1075
|
+
"type": "FUNCTION",
|
|
1076
|
+
"name": "resource.create_texture_async",
|
|
1077
|
+
"brief": "create a texture async",
|
|
1078
|
+
"description": "Creates a new texture resource that can be used in the same way as any texture created during build time.\nThe path used for creating the texture must be unique, trying to create a resource at a path that is already\nregistered will trigger an error. If the intention is to instead modify an existing texture, use the <a href=\"/ref/resource#resource.set_texture\">resource.set_texture</a>\nfunction. Also note that the path to the new texture resource must have a '.texturec' extension,\nmeaning \"/path/my_texture\" is not a valid path but \"/path/my_texture.texturec\" is.\nIf the texture is created without a buffer, the pixel data will be blank.\nThe difference between the async version and <a href=\"/ref/resource#resource.create_texture\">resource.create_texture</a> is that the texture data will be uploaded\nin a graphics worker thread. The function will return a resource immediately that contains a 1x1 blank texture which can be used\nimmediately after the function call. When the new texture has been uploaded, the initial blank texture will be deleted and replaced with the\nnew texture. Be careful when using the initial texture handle handle as it will not be valid after the upload has finished.",
|
|
1079
|
+
"returnvalues": [
|
|
1080
|
+
{
|
|
1081
|
+
"name": "path",
|
|
1082
|
+
"doc": "The path to the texture resource.",
|
|
1083
|
+
"types": ["hash"]
|
|
1084
|
+
},
|
|
1085
|
+
{
|
|
1086
|
+
"name": "request_id",
|
|
1087
|
+
"doc": "The request id for the async request.",
|
|
1088
|
+
"types": ["integer"]
|
|
1089
|
+
}
|
|
1090
|
+
],
|
|
1091
|
+
"parameters": [
|
|
1092
|
+
{
|
|
1093
|
+
"name": "path",
|
|
1094
|
+
"doc": "The path to the resource.",
|
|
1095
|
+
"types": ["string"],
|
|
1096
|
+
"is_optional": "False"
|
|
1097
|
+
},
|
|
1098
|
+
{
|
|
1099
|
+
"name": "table",
|
|
1100
|
+
"doc": "texture creation parameters",
|
|
1101
|
+
"types": ["resource.texture_creation_params"],
|
|
1102
|
+
"is_optional": "False"
|
|
1103
|
+
},
|
|
1104
|
+
{
|
|
1105
|
+
"name": "buffer",
|
|
1106
|
+
"doc": "optional buffer of precreated pixel data",
|
|
1107
|
+
"types": ["buffer_data"],
|
|
1108
|
+
"is_optional": "True"
|
|
1109
|
+
},
|
|
1110
|
+
{
|
|
1111
|
+
"name": "callback",
|
|
1112
|
+
"doc": "callback function invoked when the texture is created",
|
|
1113
|
+
"types": [
|
|
1114
|
+
"fun(self:script_instance, request_id:integer, result:resource.texture_creation_result)"
|
|
1115
|
+
],
|
|
1116
|
+
"is_optional": "True"
|
|
1117
|
+
}
|
|
1118
|
+
],
|
|
1119
|
+
"examples": "Check whether a texture format is supported by the device:\n<div class=\"codehilite\"><pre><span></span><code><span class=\"kr\">if</span> <span class=\"n\">graphics</span><span class=\"p\">.</span><span class=\"n\">TEXTURE_FORMAT_RGBA16F</span> <span class=\"o\">~=</span> <span class=\"kc\">nil</span> <span class=\"kr\">then</span>\n <span class=\"c1\">-- It is safe to use this format.</span>\n<span class=\"kr\">end</span>\n</code></pre></div>\n\n<span class=\"icon-attention\"></span> 3D textures are currently only supported on OpenGL and Vulkan adapters. Check whether the device supports 3D textures before using them:\n<div class=\"codehilite\"><pre><span></span><code><span class=\"kr\">if</span> <span class=\"n\">graphics</span><span class=\"p\">.</span><span class=\"n\">TEXTURE_TYPE_3D</span> <span class=\"o\">~=</span> <span class=\"kc\">nil</span> <span class=\"kr\">then</span>\n <span class=\"c1\">-- The device and graphics adapter support 3D textures.</span>\n<span class=\"kr\">end</span>\n</code></pre></div>\n\nCreate a texture resource asyncronously with a buffer and a callback\n<div class=\"codehilite\"><pre><span></span><code><span class=\"kr\">function</span> <span class=\"nf\">callback</span><span class=\"p\">(</span><span class=\"n\">self</span><span class=\"p\">,</span> <span class=\"n\">request_id</span><span class=\"p\">,</span> <span class=\"n\">result</span><span class=\"p\">)</span>\n <span class=\"c1\">-- The resource has been updated with a new texture,</span>\n <span class=\"c1\">-- so we can update other systems with the new handle,</span>\n <span class=\"c1\">-- or update components to use the resource if we want</span>\n <span class=\"kd\">local</span> <span class=\"n\">tinfo</span> <span class=\"o\">=</span> <span class=\"n\">resource</span><span class=\"p\">.</span><span class=\"n\">get_texture_info</span><span class=\"p\">(</span><span class=\"n\">result</span><span class=\"p\">.</span><span class=\"n\">path</span><span class=\"p\">)</span>\n <span class=\"n\">msg</span><span class=\"p\">.</span><span class=\"n\">post</span><span class=\"p\">(</span><span class=\"s2\">"@render:"</span><span class=\"p\">,</span> <span class=\"s2\">"set_backing_texture"</span><span class=\"p\">,</span> <span class=\"n\">tinfo</span><span class=\"p\">.</span><span class=\"n\">handle</span><span class=\"p\">)</span>\n<span class=\"kr\">end</span>\n<span class=\"kr\">function</span> <span class=\"nf\">init</span><span class=\"p\">(</span><span class=\"n\">self</span><span class=\"p\">)</span>\n <span class=\"c1\">-- Create a texture resource async</span>\n <span class=\"kd\">local</span> <span class=\"n\">tparams</span> <span class=\"o\">=</span> <span class=\"p\">{</span>\n <span class=\"n\">width</span> <span class=\"o\">=</span> <span class=\"mi\">128</span><span class=\"p\">,</span>\n <span class=\"n\">height</span> <span class=\"o\">=</span> <span class=\"mi\">128</span><span class=\"p\">,</span>\n <span class=\"nb\">type</span> <span class=\"o\">=</span> <span class=\"n\">graphics</span><span class=\"p\">.</span><span class=\"n\">TEXTURE_TYPE_2D</span><span class=\"p\">,</span>\n <span class=\"n\">format</span> <span class=\"o\">=</span> <span class=\"n\">graphics</span><span class=\"p\">.</span><span class=\"n\">TEXTURE_FORMAT_RGBA</span><span class=\"p\">,</span>\n <span class=\"p\">}</span>\n\n <span class=\"c1\">-- Create a new buffer with 4 components</span>\n <span class=\"kd\">local</span> <span class=\"n\">tbuffer</span> <span class=\"o\">=</span> <span class=\"n\">buffer</span><span class=\"p\">.</span><span class=\"n\">create</span><span class=\"p\">(</span><span class=\"n\">tparams</span><span class=\"p\">.</span><span class=\"n\">width</span> <span class=\"o\">*</span> <span class=\"n\">tparams</span><span class=\"p\">.</span><span class=\"n\">height</span><span class=\"p\">,</span> <span class=\"p\">{</span> <span class=\"p\">{</span><span class=\"n\">name</span><span class=\"o\">=</span><span class=\"n\">hash</span><span class=\"p\">(</span><span class=\"s2\">"rgba"</span><span class=\"p\">),</span> <span class=\"nb\">type</span><span class=\"o\">=</span><span class=\"n\">buffer</span><span class=\"p\">.</span><span class=\"n\">VALUE_TYPE_UINT8</span><span class=\"p\">,</span> <span class=\"n\">count</span><span class=\"o\">=</span><span class=\"mi\">4</span><span class=\"p\">}</span> <span class=\"p\">}</span> <span class=\"p\">)</span>\n <span class=\"kd\">local</span> <span class=\"n\">tstream</span> <span class=\"o\">=</span> <span class=\"n\">buffer</span><span class=\"p\">.</span><span class=\"n\">get_stream</span><span class=\"p\">(</span><span class=\"n\">tbuffer</span><span class=\"p\">,</span> <span class=\"n\">hash</span><span class=\"p\">(</span><span class=\"s2\">"rgba"</span><span class=\"p\">))</span>\n\n <span class=\"c1\">-- Fill the buffer stream with some float values</span>\n <span class=\"kr\">for</span> <span class=\"n\">y</span><span class=\"o\">=</span><span class=\"mi\">1</span><span class=\"p\">,</span><span class=\"n\">tparams</span><span class=\"p\">.</span><span class=\"n\">width</span> <span class=\"kr\">do</span>\n <span class=\"kr\">for</span> <span class=\"n\">x</span><span class=\"o\">=</span><span class=\"mi\">1</span><span class=\"p\">,</span><span class=\"n\">tparams</span><span class=\"p\">.</span><span class=\"n\">height</span> <span class=\"kr\">do</span>\n <span class=\"kd\">local</span> <span class=\"n\">index</span> <span class=\"o\">=</span> <span class=\"p\">(</span><span class=\"n\">y</span><span class=\"o\">-</span><span class=\"mi\">1</span><span class=\"p\">)</span> <span class=\"o\">*</span> <span class=\"mi\">128</span> <span class=\"o\">*</span> <span class=\"mi\">4</span> <span class=\"o\">+</span> <span class=\"p\">(</span><span class=\"n\">x</span><span class=\"o\">-</span><span class=\"mi\">1</span><span class=\"p\">)</span> <span class=\"o\">*</span> <span class=\"mi\">4</span> <span class=\"o\">+</span> <span class=\"mi\">1</span>\n <span class=\"n\">tstream</span><span class=\"p\">[</span><span class=\"n\">index</span> <span class=\"o\">+</span> <span class=\"mi\">0</span><span class=\"p\">]</span> <span class=\"o\">=</span> <span class=\"mi\">255</span>\n <span class=\"n\">tstream</span><span class=\"p\">[</span><span class=\"n\">index</span> <span class=\"o\">+</span> <span class=\"mi\">1</span><span class=\"p\">]</span> <span class=\"o\">=</span> <span class=\"mi\">0</span>\n <span class=\"n\">tstream</span><span class=\"p\">[</span><span class=\"n\">index</span> <span class=\"o\">+</span> <span class=\"mi\">2</span><span class=\"p\">]</span> <span class=\"o\">=</span> <span class=\"mi\">255</span>\n <span class=\"n\">tstream</span><span class=\"p\">[</span><span class=\"n\">index</span> <span class=\"o\">+</span> <span class=\"mi\">3</span><span class=\"p\">]</span> <span class=\"o\">=</span> <span class=\"mi\">255</span>\n <span class=\"kr\">end</span>\n <span class=\"kr\">end</span>\n <span class=\"c1\">-- create the texture</span>\n <span class=\"kd\">local</span> <span class=\"n\">tpath</span><span class=\"p\">,</span> <span class=\"n\">request_id</span> <span class=\"o\">=</span> <span class=\"n\">resource</span><span class=\"p\">.</span><span class=\"n\">create_texture_async</span><span class=\"p\">(</span><span class=\"s2\">"/my_texture.texturec"</span><span class=\"p\">,</span> <span class=\"n\">tparams</span><span class=\"p\">,</span> <span class=\"n\">tbuffer</span><span class=\"p\">,</span> <span class=\"n\">callback</span><span class=\"p\">)</span>\n <span class=\"c1\">-- at this point you can use the resource as-is, but note that the texture will be a blank 1x1 texture</span>\n <span class=\"c1\">-- that will be removed once the new texture has been updated</span>\n <span class=\"n\">go</span><span class=\"p\">.</span><span class=\"n\">set</span><span class=\"p\">(</span><span class=\"s2\">"#model"</span><span class=\"p\">,</span> <span class=\"s2\">"texture0"</span><span class=\"p\">,</span> <span class=\"n\">tpath</span><span class=\"p\">)</span>\n<span class=\"kr\">end</span>\n</code></pre></div>\n\nCreate a texture resource asyncronously without a callback\n<div class=\"codehilite\"><pre><span></span><code><span class=\"kr\">function</span> <span class=\"nf\">init</span><span class=\"p\">(</span><span class=\"n\">self</span><span class=\"p\">)</span>\n <span class=\"c1\">-- Create a texture resource async</span>\n <span class=\"kd\">local</span> <span class=\"n\">tparams</span> <span class=\"o\">=</span> <span class=\"p\">{</span>\n <span class=\"n\">width</span> <span class=\"o\">=</span> <span class=\"mi\">128</span><span class=\"p\">,</span>\n <span class=\"n\">height</span> <span class=\"o\">=</span> <span class=\"mi\">128</span><span class=\"p\">,</span>\n <span class=\"nb\">type</span> <span class=\"o\">=</span> <span class=\"n\">graphics</span><span class=\"p\">.</span><span class=\"n\">TEXTURE_TYPE_2D</span><span class=\"p\">,</span>\n <span class=\"n\">format</span> <span class=\"o\">=</span> <span class=\"n\">graphics</span><span class=\"p\">.</span><span class=\"n\">TEXTURE_FORMAT_RGBA</span><span class=\"p\">,</span>\n <span class=\"p\">}</span>\n\n <span class=\"c1\">-- Create a new buffer with 4 components</span>\n <span class=\"kd\">local</span> <span class=\"n\">tbuffer</span> <span class=\"o\">=</span> <span class=\"n\">buffer</span><span class=\"p\">.</span><span class=\"n\">create</span><span class=\"p\">(</span><span class=\"n\">tparams</span><span class=\"p\">.</span><span class=\"n\">width</span> <span class=\"o\">*</span> <span class=\"n\">tparams</span><span class=\"p\">.</span><span class=\"n\">height</span><span class=\"p\">,</span> <span class=\"p\">{</span> <span class=\"p\">{</span><span class=\"n\">name</span><span class=\"o\">=</span><span class=\"n\">hash</span><span class=\"p\">(</span><span class=\"s2\">"rgba"</span><span class=\"p\">),</span> <span class=\"nb\">type</span><span class=\"o\">=</span><span class=\"n\">buffer</span><span class=\"p\">.</span><span class=\"n\">VALUE_TYPE_UINT8</span><span class=\"p\">,</span> <span class=\"n\">count</span><span class=\"o\">=</span><span class=\"mi\">4</span><span class=\"p\">}</span> <span class=\"p\">}</span> <span class=\"p\">)</span>\n <span class=\"kd\">local</span> <span class=\"n\">tstream</span> <span class=\"o\">=</span> <span class=\"n\">buffer</span><span class=\"p\">.</span><span class=\"n\">get_stream</span><span class=\"p\">(</span><span class=\"n\">tbuffer</span><span class=\"p\">,</span> <span class=\"n\">hash</span><span class=\"p\">(</span><span class=\"s2\">"rgba"</span><span class=\"p\">))</span>\n\n <span class=\"c1\">-- Fill the buffer stream with some float values</span>\n <span class=\"kr\">for</span> <span class=\"n\">y</span><span class=\"o\">=</span><span class=\"mi\">1</span><span class=\"p\">,</span><span class=\"n\">tparams</span><span class=\"p\">.</span><span class=\"n\">width</span> <span class=\"kr\">do</span>\n <span class=\"kr\">for</span> <span class=\"n\">x</span><span class=\"o\">=</span><span class=\"mi\">1</span><span class=\"p\">,</span><span class=\"n\">tparams</span><span class=\"p\">.</span><span class=\"n\">height</span> <span class=\"kr\">do</span>\n <span class=\"kd\">local</span> <span class=\"n\">index</span> <span class=\"o\">=</span> <span class=\"p\">(</span><span class=\"n\">y</span><span class=\"o\">-</span><span class=\"mi\">1</span><span class=\"p\">)</span> <span class=\"o\">*</span> <span class=\"mi\">128</span> <span class=\"o\">*</span> <span class=\"mi\">4</span> <span class=\"o\">+</span> <span class=\"p\">(</span><span class=\"n\">x</span><span class=\"o\">-</span><span class=\"mi\">1</span><span class=\"p\">)</span> <span class=\"o\">*</span> <span class=\"mi\">4</span> <span class=\"o\">+</span> <span class=\"mi\">1</span>\n <span class=\"n\">tstream</span><span class=\"p\">[</span><span class=\"n\">index</span> <span class=\"o\">+</span> <span class=\"mi\">0</span><span class=\"p\">]</span> <span class=\"o\">=</span> <span class=\"mi\">255</span>\n <span class=\"n\">tstream</span><span class=\"p\">[</span><span class=\"n\">index</span> <span class=\"o\">+</span> <span class=\"mi\">1</span><span class=\"p\">]</span> <span class=\"o\">=</span> <span class=\"mi\">0</span>\n <span class=\"n\">tstream</span><span class=\"p\">[</span><span class=\"n\">index</span> <span class=\"o\">+</span> <span class=\"mi\">2</span><span class=\"p\">]</span> <span class=\"o\">=</span> <span class=\"mi\">255</span>\n <span class=\"n\">tstream</span><span class=\"p\">[</span><span class=\"n\">index</span> <span class=\"o\">+</span> <span class=\"mi\">3</span><span class=\"p\">]</span> <span class=\"o\">=</span> <span class=\"mi\">255</span>\n <span class=\"kr\">end</span>\n <span class=\"kr\">end</span>\n <span class=\"c1\">-- create the texture</span>\n <span class=\"kd\">local</span> <span class=\"n\">tpath</span><span class=\"p\">,</span> <span class=\"n\">request_id</span> <span class=\"o\">=</span> <span class=\"n\">resource</span><span class=\"p\">.</span><span class=\"n\">create_texture_async</span><span class=\"p\">(</span><span class=\"s2\">"/my_texture.texturec"</span><span class=\"p\">,</span> <span class=\"n\">tparams</span><span class=\"p\">,</span> <span class=\"n\">tbuffer</span><span class=\"p\">)</span>\n <span class=\"c1\">-- at this point you can use the resource as-is, but note that the texture will be a blank 1x1 texture</span>\n <span class=\"c1\">-- that will be removed once the new texture has been updated</span>\n <span class=\"n\">go</span><span class=\"p\">.</span><span class=\"n\">set</span><span class=\"p\">(</span><span class=\"s2\">"#model"</span><span class=\"p\">,</span> <span class=\"s2\">"texture0"</span><span class=\"p\">,</span> <span class=\"n\">tpath</span><span class=\"p\">)</span>\n<span class=\"kr\">end</span>\n</code></pre></div>",
|
|
1120
|
+
"replaces": "",
|
|
1121
|
+
"error": "",
|
|
1122
|
+
"tparams": [],
|
|
1123
|
+
"members": [],
|
|
1124
|
+
"notes": [],
|
|
1125
|
+
"language": ""
|
|
1126
|
+
},
|
|
1127
|
+
{
|
|
1128
|
+
"type": "FUNCTION",
|
|
1129
|
+
"name": "resource.release",
|
|
1130
|
+
"brief": "release a resource",
|
|
1131
|
+
"description": "Release a resource.\n<span class=\"icon-attention\"></span> This is a potentially dangerous operation, releasing resources currently being used can cause unexpected behaviour.",
|
|
1132
|
+
"returnvalues": [],
|
|
1133
|
+
"parameters": [
|
|
1134
|
+
{
|
|
1135
|
+
"name": "path",
|
|
1136
|
+
"doc": "The path to the resource.",
|
|
1137
|
+
"types": ["hash", "string"],
|
|
1138
|
+
"is_optional": "False"
|
|
1139
|
+
}
|
|
1140
|
+
],
|
|
1141
|
+
"examples": "",
|
|
1142
|
+
"replaces": "",
|
|
1143
|
+
"error": "",
|
|
1144
|
+
"tparams": [],
|
|
1145
|
+
"members": [],
|
|
1146
|
+
"notes": [],
|
|
1147
|
+
"language": ""
|
|
1148
|
+
},
|
|
1149
|
+
{
|
|
1150
|
+
"type": "FUNCTION",
|
|
1151
|
+
"name": "resource.set_texture",
|
|
1152
|
+
"brief": "set a texture",
|
|
1153
|
+
"description": "Sets the pixel data for a specific texture.",
|
|
1154
|
+
"returnvalues": [],
|
|
1155
|
+
"parameters": [
|
|
1156
|
+
{
|
|
1157
|
+
"name": "path",
|
|
1158
|
+
"doc": "The path to the resource",
|
|
1159
|
+
"types": ["hash", "string"],
|
|
1160
|
+
"is_optional": "False"
|
|
1161
|
+
},
|
|
1162
|
+
{
|
|
1163
|
+
"name": "table",
|
|
1164
|
+
"doc": "texture update parameters",
|
|
1165
|
+
"types": ["resource.texture_update_params"],
|
|
1166
|
+
"is_optional": "False"
|
|
1167
|
+
},
|
|
1168
|
+
{
|
|
1169
|
+
"name": "buffer",
|
|
1170
|
+
"doc": "The buffer of precreated pixel data\n<span class=\"icon-attention\"></span> To update a cube map texture you need to pass in six times the amount of data via the buffer, since a cube map has six sides!\n<span class=\"icon-attention\"></span> 3D textures are currently only supported on OpenGL and Vulkan adapters.",
|
|
1171
|
+
"types": ["buffer_data"],
|
|
1172
|
+
"is_optional": "False"
|
|
1173
|
+
}
|
|
1174
|
+
],
|
|
1175
|
+
"examples": "Check whether a texture format is supported by the device:\n<div class=\"codehilite\"><pre><span></span><code><span class=\"kr\">if</span> <span class=\"n\">graphics</span><span class=\"p\">.</span><span class=\"n\">TEXTURE_FORMAT_RGBA16F</span> <span class=\"o\">~=</span> <span class=\"kc\">nil</span> <span class=\"kr\">then</span>\n <span class=\"c1\">-- It is safe to use this format.</span>\n<span class=\"kr\">end</span>\n</code></pre></div>\n\nCheck whether the device supports 3D textures before using them:\n<div class=\"codehilite\"><pre><span></span><code><span class=\"kr\">if</span> <span class=\"n\">graphics</span><span class=\"p\">.</span><span class=\"n\">TEXTURE_TYPE_3D</span> <span class=\"o\">~=</span> <span class=\"kc\">nil</span> <span class=\"kr\">then</span>\n <span class=\"c1\">-- The device and graphics adapter support 3D textures.</span>\n<span class=\"kr\">end</span>\n</code></pre></div>\n\nHow to set all pixels of an atlas\n<div class=\"codehilite\"><pre><span></span><code><span class=\"kr\">function</span> <span class=\"nf\">init</span><span class=\"p\">(</span><span class=\"n\">self</span><span class=\"p\">)</span>\n <span class=\"n\">self</span><span class=\"p\">.</span><span class=\"n\">height</span> <span class=\"o\">=</span> <span class=\"mi\">128</span>\n <span class=\"n\">self</span><span class=\"p\">.</span><span class=\"n\">width</span> <span class=\"o\">=</span> <span class=\"mi\">128</span>\n <span class=\"n\">self</span><span class=\"p\">.</span><span class=\"n\">buffer</span> <span class=\"o\">=</span> <span class=\"n\">buffer</span><span class=\"p\">.</span><span class=\"n\">create</span><span class=\"p\">(</span><span class=\"n\">self</span><span class=\"p\">.</span><span class=\"n\">width</span> <span class=\"o\">*</span> <span class=\"n\">self</span><span class=\"p\">.</span><span class=\"n\">height</span><span class=\"p\">,</span> <span class=\"p\">{</span> <span class=\"p\">{</span><span class=\"n\">name</span><span class=\"o\">=</span><span class=\"n\">hash</span><span class=\"p\">(</span><span class=\"s2\">"rgb"</span><span class=\"p\">),</span> <span class=\"nb\">type</span><span class=\"o\">=</span><span class=\"n\">buffer</span><span class=\"p\">.</span><span class=\"n\">VALUE_TYPE_UINT8</span><span class=\"p\">,</span> <span class=\"n\">count</span><span class=\"o\">=</span><span class=\"mi\">3</span><span class=\"p\">}</span> <span class=\"p\">}</span> <span class=\"p\">)</span>\n <span class=\"n\">self</span><span class=\"p\">.</span><span class=\"n\">stream</span> <span class=\"o\">=</span> <span class=\"n\">buffer</span><span class=\"p\">.</span><span class=\"n\">get_stream</span><span class=\"p\">(</span><span class=\"n\">self</span><span class=\"p\">.</span><span class=\"n\">buffer</span><span class=\"p\">,</span> <span class=\"n\">hash</span><span class=\"p\">(</span><span class=\"s2\">"rgb"</span><span class=\"p\">))</span>\n\n <span class=\"kr\">for</span> <span class=\"n\">y</span><span class=\"o\">=</span><span class=\"mi\">1</span><span class=\"p\">,</span><span class=\"n\">self</span><span class=\"p\">.</span><span class=\"n\">height</span> <span class=\"kr\">do</span>\n <span class=\"kr\">for</span> <span class=\"n\">x</span><span class=\"o\">=</span><span class=\"mi\">1</span><span class=\"p\">,</span><span class=\"n\">self</span><span class=\"p\">.</span><span class=\"n\">width</span> <span class=\"kr\">do</span>\n <span class=\"kd\">local</span> <span class=\"n\">index</span> <span class=\"o\">=</span> <span class=\"p\">(</span><span class=\"n\">y</span><span class=\"o\">-</span><span class=\"mi\">1</span><span class=\"p\">)</span> <span class=\"o\">*</span> <span class=\"n\">self</span><span class=\"p\">.</span><span class=\"n\">width</span> <span class=\"o\">*</span> <span class=\"mi\">3</span> <span class=\"o\">+</span> <span class=\"p\">(</span><span class=\"n\">x</span><span class=\"o\">-</span><span class=\"mi\">1</span><span class=\"p\">)</span> <span class=\"o\">*</span> <span class=\"mi\">3</span> <span class=\"o\">+</span> <span class=\"mi\">1</span>\n <span class=\"n\">self</span><span class=\"p\">.</span><span class=\"n\">stream</span><span class=\"p\">[</span><span class=\"n\">index</span> <span class=\"o\">+</span> <span class=\"mi\">0</span><span class=\"p\">]</span> <span class=\"o\">=</span> <span class=\"mh\">0xff</span>\n <span class=\"n\">self</span><span class=\"p\">.</span><span class=\"n\">stream</span><span class=\"p\">[</span><span class=\"n\">index</span> <span class=\"o\">+</span> <span class=\"mi\">1</span><span class=\"p\">]</span> <span class=\"o\">=</span> <span class=\"mh\">0x80</span>\n <span class=\"n\">self</span><span class=\"p\">.</span><span class=\"n\">stream</span><span class=\"p\">[</span><span class=\"n\">index</span> <span class=\"o\">+</span> <span class=\"mi\">2</span><span class=\"p\">]</span> <span class=\"o\">=</span> <span class=\"mh\">0x10</span>\n <span class=\"kr\">end</span>\n <span class=\"kr\">end</span>\n\n <span class=\"kd\">local</span> <span class=\"n\">resource_path</span> <span class=\"o\">=</span> <span class=\"n\">go</span><span class=\"p\">.</span><span class=\"n\">get</span><span class=\"p\">(</span><span class=\"s2\">"#model"</span><span class=\"p\">,</span> <span class=\"s2\">"texture0"</span><span class=\"p\">)</span>\n <span class=\"kd\">local</span> <span class=\"n\">args</span> <span class=\"o\">=</span> <span class=\"p\">{</span> <span class=\"n\">width</span><span class=\"o\">=</span><span class=\"n\">self</span><span class=\"p\">.</span><span class=\"n\">width</span><span class=\"p\">,</span> <span class=\"n\">height</span><span class=\"o\">=</span><span class=\"n\">self</span><span class=\"p\">.</span><span class=\"n\">height</span><span class=\"p\">,</span> <span class=\"nb\">type</span><span class=\"o\">=</span><span class=\"n\">graphics</span><span class=\"p\">.</span><span class=\"n\">TEXTURE_TYPE_2D</span><span class=\"p\">,</span> <span class=\"n\">format</span><span class=\"o\">=</span><span class=\"n\">graphics</span><span class=\"p\">.</span><span class=\"n\">TEXTURE_FORMAT_RGB</span><span class=\"p\">,</span> <span class=\"n\">num_mip_maps</span><span class=\"o\">=</span><span class=\"mi\">1</span> <span class=\"p\">}</span>\n <span class=\"n\">resource</span><span class=\"p\">.</span><span class=\"n\">set_texture</span><span class=\"p\">(</span> <span class=\"n\">resource_path</span><span class=\"p\">,</span> <span class=\"n\">args</span><span class=\"p\">,</span> <span class=\"n\">self</span><span class=\"p\">.</span><span class=\"n\">buffer</span> <span class=\"p\">)</span>\n<span class=\"kr\">end</span>\n</code></pre></div>\n\nHow to update a specific region of an atlas by using the x,y values. Assumes the already set atlas is a 128x128 texture.\n<div class=\"codehilite\"><pre><span></span><code><span class=\"kr\">function</span> <span class=\"nf\">init</span><span class=\"p\">(</span><span class=\"n\">self</span><span class=\"p\">)</span>\n <span class=\"n\">self</span><span class=\"p\">.</span><span class=\"n\">x</span> <span class=\"o\">=</span> <span class=\"mi\">16</span>\n <span class=\"n\">self</span><span class=\"p\">.</span><span class=\"n\">y</span> <span class=\"o\">=</span> <span class=\"mi\">16</span>\n <span class=\"n\">self</span><span class=\"p\">.</span><span class=\"n\">height</span> <span class=\"o\">=</span> <span class=\"mi\">128</span> <span class=\"o\">-</span> <span class=\"n\">self</span><span class=\"p\">.</span><span class=\"n\">x</span> <span class=\"o\">*</span> <span class=\"mi\">2</span>\n <span class=\"n\">self</span><span class=\"p\">.</span><span class=\"n\">width</span> <span class=\"o\">=</span> <span class=\"mi\">128</span> <span class=\"o\">-</span> <span class=\"n\">self</span><span class=\"p\">.</span><span class=\"n\">y</span> <span class=\"o\">*</span> <span class=\"mi\">2</span>\n <span class=\"n\">self</span><span class=\"p\">.</span><span class=\"n\">buffer</span> <span class=\"o\">=</span> <span class=\"n\">buffer</span><span class=\"p\">.</span><span class=\"n\">create</span><span class=\"p\">(</span><span class=\"n\">self</span><span class=\"p\">.</span><span class=\"n\">width</span> <span class=\"o\">*</span> <span class=\"n\">self</span><span class=\"p\">.</span><span class=\"n\">height</span><span class=\"p\">,</span> <span class=\"p\">{</span> <span class=\"p\">{</span><span class=\"n\">name</span><span class=\"o\">=</span><span class=\"n\">hash</span><span class=\"p\">(</span><span class=\"s2\">"rgb"</span><span class=\"p\">),</span> <span class=\"nb\">type</span><span class=\"o\">=</span><span class=\"n\">buffer</span><span class=\"p\">.</span><span class=\"n\">VALUE_TYPE_UINT8</span><span class=\"p\">,</span> <span class=\"n\">count</span><span class=\"o\">=</span><span class=\"mi\">3</span><span class=\"p\">}</span> <span class=\"p\">}</span> <span class=\"p\">)</span>\n <span class=\"n\">self</span><span class=\"p\">.</span><span class=\"n\">stream</span> <span class=\"o\">=</span> <span class=\"n\">buffer</span><span class=\"p\">.</span><span class=\"n\">get_stream</span><span class=\"p\">(</span><span class=\"n\">self</span><span class=\"p\">.</span><span class=\"n\">buffer</span><span class=\"p\">,</span> <span class=\"n\">hash</span><span class=\"p\">(</span><span class=\"s2\">"rgb"</span><span class=\"p\">))</span>\n\n <span class=\"kr\">for</span> <span class=\"n\">y</span><span class=\"o\">=</span><span class=\"mi\">1</span><span class=\"p\">,</span><span class=\"n\">self</span><span class=\"p\">.</span><span class=\"n\">height</span> <span class=\"kr\">do</span>\n <span class=\"kr\">for</span> <span class=\"n\">x</span><span class=\"o\">=</span><span class=\"mi\">1</span><span class=\"p\">,</span><span class=\"n\">self</span><span class=\"p\">.</span><span class=\"n\">width</span> <span class=\"kr\">do</span>\n <span class=\"kd\">local</span> <span class=\"n\">index</span> <span class=\"o\">=</span> <span class=\"p\">(</span><span class=\"n\">y</span><span class=\"o\">-</span><span class=\"mi\">1</span><span class=\"p\">)</span> <span class=\"o\">*</span> <span class=\"n\">self</span><span class=\"p\">.</span><span class=\"n\">width</span> <span class=\"o\">*</span> <span class=\"mi\">3</span> <span class=\"o\">+</span> <span class=\"p\">(</span><span class=\"n\">x</span><span class=\"o\">-</span><span class=\"mi\">1</span><span class=\"p\">)</span> <span class=\"o\">*</span> <span class=\"mi\">3</span> <span class=\"o\">+</span> <span class=\"mi\">1</span>\n <span class=\"n\">self</span><span class=\"p\">.</span><span class=\"n\">stream</span><span class=\"p\">[</span><span class=\"n\">index</span> <span class=\"o\">+</span> <span class=\"mi\">0</span><span class=\"p\">]</span> <span class=\"o\">=</span> <span class=\"mh\">0xff</span>\n <span class=\"n\">self</span><span class=\"p\">.</span><span class=\"n\">stream</span><span class=\"p\">[</span><span class=\"n\">index</span> <span class=\"o\">+</span> <span class=\"mi\">1</span><span class=\"p\">]</span> <span class=\"o\">=</span> <span class=\"mh\">0x80</span>\n <span class=\"n\">self</span><span class=\"p\">.</span><span class=\"n\">stream</span><span class=\"p\">[</span><span class=\"n\">index</span> <span class=\"o\">+</span> <span class=\"mi\">2</span><span class=\"p\">]</span> <span class=\"o\">=</span> <span class=\"mh\">0x10</span>\n <span class=\"kr\">end</span>\n <span class=\"kr\">end</span>\n\n <span class=\"kd\">local</span> <span class=\"n\">resource_path</span> <span class=\"o\">=</span> <span class=\"n\">go</span><span class=\"p\">.</span><span class=\"n\">get</span><span class=\"p\">(</span><span class=\"s2\">"#model"</span><span class=\"p\">,</span> <span class=\"s2\">"texture0"</span><span class=\"p\">)</span>\n <span class=\"kd\">local</span> <span class=\"n\">args</span> <span class=\"o\">=</span> <span class=\"p\">{</span> <span class=\"n\">width</span><span class=\"o\">=</span><span class=\"n\">self</span><span class=\"p\">.</span><span class=\"n\">width</span><span class=\"p\">,</span> <span class=\"n\">height</span><span class=\"o\">=</span><span class=\"n\">self</span><span class=\"p\">.</span><span class=\"n\">height</span><span class=\"p\">,</span> <span class=\"n\">x</span><span class=\"o\">=</span><span class=\"n\">self</span><span class=\"p\">.</span><span class=\"n\">x</span><span class=\"p\">,</span> <span class=\"n\">y</span><span class=\"o\">=</span><span class=\"n\">self</span><span class=\"p\">.</span><span class=\"n\">y</span><span class=\"p\">,</span> <span class=\"nb\">type</span><span class=\"o\">=</span><span class=\"n\">graphics</span><span class=\"p\">.</span><span class=\"n\">TEXTURE_TYPE_2D</span><span class=\"p\">,</span> <span class=\"n\">format</span><span class=\"o\">=</span><span class=\"n\">graphics</span><span class=\"p\">.</span><span class=\"n\">TEXTURE_FORMAT_RGB</span><span class=\"p\">,</span> <span class=\"n\">num_mip_maps</span><span class=\"o\">=</span><span class=\"mi\">1</span> <span class=\"p\">}</span>\n <span class=\"n\">resource</span><span class=\"p\">.</span><span class=\"n\">set_texture</span><span class=\"p\">(</span><span class=\"n\">resource_path</span><span class=\"p\">,</span> <span class=\"n\">args</span><span class=\"p\">,</span> <span class=\"n\">self</span><span class=\"p\">.</span><span class=\"n\">buffer</span> <span class=\"p\">)</span>\n<span class=\"kr\">end</span>\n</code></pre></div>\n\nUpdate a texture from a buffer resource\n<div class=\"codehilite\"><pre><span></span><code><span class=\"n\">go</span><span class=\"p\">.</span><span class=\"n\">property</span><span class=\"p\">(</span><span class=\"s2\">"my_buffer"</span><span class=\"p\">,</span> <span class=\"n\">resource</span><span class=\"p\">.</span><span class=\"n\">buffer</span><span class=\"p\">(</span><span class=\"s2\">"/my_default_buffer.buffer"</span><span class=\"p\">))</span>\n\n<span class=\"kr\">function</span> <span class=\"nf\">init</span><span class=\"p\">(</span><span class=\"n\">self</span><span class=\"p\">)</span>\n <span class=\"kd\">local</span> <span class=\"n\">resource_path</span> <span class=\"o\">=</span> <span class=\"n\">go</span><span class=\"p\">.</span><span class=\"n\">get</span><span class=\"p\">(</span><span class=\"s2\">"#model"</span><span class=\"p\">,</span> <span class=\"s2\">"texture0"</span><span class=\"p\">)</span>\n <span class=\"c1\">-- the "my_buffer" resource is expected to hold 128 * 128 * 3 bytes!</span>\n <span class=\"kd\">local</span> <span class=\"n\">args</span> <span class=\"o\">=</span> <span class=\"p\">{</span>\n <span class=\"n\">width</span> <span class=\"o\">=</span> <span class=\"mi\">128</span><span class=\"p\">,</span>\n <span class=\"n\">height</span> <span class=\"o\">=</span> <span class=\"mi\">128</span><span class=\"p\">,</span>\n <span class=\"nb\">type</span> <span class=\"o\">=</span> <span class=\"n\">graphics</span><span class=\"p\">.</span><span class=\"n\">TEXTURE_TYPE_2D</span><span class=\"p\">,</span>\n <span class=\"n\">format</span> <span class=\"o\">=</span> <span class=\"n\">graphics</span><span class=\"p\">.</span><span class=\"n\">TEXTURE_FORMAT_RGB</span>\n <span class=\"p\">}</span>\n <span class=\"c1\">-- Note that the extra resource.get_buffer call is a requirement here</span>\n <span class=\"c1\">-- since the "self.my_buffer" is just pointing to a buffer resource path</span>\n <span class=\"c1\">-- and not an actual buffer object or buffer resource.</span>\n <span class=\"n\">resource</span><span class=\"p\">.</span><span class=\"n\">set_texture</span><span class=\"p\">(</span><span class=\"n\">resource_path</span><span class=\"p\">,</span> <span class=\"n\">args</span><span class=\"p\">,</span> <span class=\"n\">resource</span><span class=\"p\">.</span><span class=\"n\">get_buffer</span><span class=\"p\">(</span><span class=\"n\">self</span><span class=\"p\">.</span><span class=\"n\">my_buffer</span><span class=\"p\">))</span>\n<span class=\"kr\">end</span>\n</code></pre></div>\n\nUpdate an existing 3D texture from a lua buffer\n<div class=\"codehilite\"><pre><span></span><code><span class=\"kr\">function</span> <span class=\"nf\">init</span><span class=\"p\">(</span><span class=\"n\">self</span><span class=\"p\">)</span>\n <span class=\"c1\">-- create a buffer that can hold the data of a 8x8x8 texture</span>\n <span class=\"kd\">local</span> <span class=\"n\">tbuffer</span> <span class=\"o\">=</span> <span class=\"n\">buffer</span><span class=\"p\">.</span><span class=\"n\">create</span><span class=\"p\">(</span><span class=\"mi\">8</span> <span class=\"o\">*</span> <span class=\"mi\">8</span> <span class=\"o\">*</span> <span class=\"mi\">8</span><span class=\"p\">,</span> <span class=\"p\">{</span> <span class=\"p\">{</span><span class=\"n\">name</span><span class=\"o\">=</span><span class=\"n\">hash</span><span class=\"p\">(</span><span class=\"s2\">"rgba"</span><span class=\"p\">),</span> <span class=\"nb\">type</span><span class=\"o\">=</span><span class=\"n\">buffer</span><span class=\"p\">.</span><span class=\"n\">VALUE_TYPE_FLOAT32</span><span class=\"p\">,</span> <span class=\"n\">count</span><span class=\"o\">=</span><span class=\"mi\">4</span><span class=\"p\">}</span> <span class=\"p\">}</span> <span class=\"p\">)</span>\n <span class=\"kd\">local</span> <span class=\"n\">tstream</span> <span class=\"o\">=</span> <span class=\"n\">buffer</span><span class=\"p\">.</span><span class=\"n\">get_stream</span><span class=\"p\">(</span><span class=\"n\">tbuffer</span><span class=\"p\">,</span> <span class=\"n\">hash</span><span class=\"p\">(</span><span class=\"s2\">"rgba"</span><span class=\"p\">))</span>\n\n <span class=\"c1\">-- populate the buffer with some data</span>\n <span class=\"kd\">local</span> <span class=\"n\">index</span> <span class=\"o\">=</span> <span class=\"mi\">1</span>\n <span class=\"kr\">for</span> <span class=\"n\">z</span><span class=\"o\">=</span><span class=\"mi\">1</span><span class=\"p\">,</span><span class=\"mi\">8</span> <span class=\"kr\">do</span>\n <span class=\"kr\">for</span> <span class=\"n\">y</span><span class=\"o\">=</span><span class=\"mi\">1</span><span class=\"p\">,</span><span class=\"mi\">8</span> <span class=\"kr\">do</span>\n <span class=\"kr\">for</span> <span class=\"n\">x</span><span class=\"o\">=</span><span class=\"mi\">1</span><span class=\"p\">,</span><span class=\"mi\">8</span> <span class=\"kr\">do</span>\n <span class=\"n\">tstream</span><span class=\"p\">[</span><span class=\"n\">index</span> <span class=\"o\">+</span> <span class=\"mi\">0</span><span class=\"p\">]</span> <span class=\"o\">=</span> <span class=\"n\">x</span>\n <span class=\"n\">tstream</span><span class=\"p\">[</span><span class=\"n\">index</span> <span class=\"o\">+</span> <span class=\"mi\">1</span><span class=\"p\">]</span> <span class=\"o\">=</span> <span class=\"n\">y</span>\n <span class=\"n\">tstream</span><span class=\"p\">[</span><span class=\"n\">index</span> <span class=\"o\">+</span> <span class=\"mi\">2</span><span class=\"p\">]</span> <span class=\"o\">=</span> <span class=\"n\">z</span>\n <span class=\"n\">tstream</span><span class=\"p\">[</span><span class=\"n\">index</span> <span class=\"o\">+</span> <span class=\"mi\">3</span><span class=\"p\">]</span> <span class=\"o\">=</span> <span class=\"mf\">1.0</span>\n <span class=\"n\">index</span> <span class=\"o\">=</span> <span class=\"n\">index</span> <span class=\"o\">+</span> <span class=\"mi\">4</span>\n <span class=\"kr\">end</span>\n <span class=\"kr\">end</span>\n <span class=\"kr\">end</span>\n\n <span class=\"kd\">local</span> <span class=\"n\">t_args</span> <span class=\"o\">=</span> <span class=\"p\">{</span>\n <span class=\"nb\">type</span> <span class=\"o\">=</span> <span class=\"n\">graphics</span><span class=\"p\">.</span><span class=\"n\">TEXTURE_TYPE_IMAGE_3D</span><span class=\"p\">,</span>\n <span class=\"n\">width</span> <span class=\"o\">=</span> <span class=\"mi\">8</span><span class=\"p\">,</span>\n <span class=\"n\">height</span> <span class=\"o\">=</span> <span class=\"mi\">8</span><span class=\"p\">,</span>\n <span class=\"n\">depth</span> <span class=\"o\">=</span> <span class=\"mi\">8</span><span class=\"p\">,</span>\n <span class=\"n\">format</span> <span class=\"o\">=</span> <span class=\"n\">graphics</span><span class=\"p\">.</span><span class=\"n\">TEXTURE_FORMAT_RGBA32F</span>\n <span class=\"p\">}</span>\n\n <span class=\"c1\">-- This expects that the texture resource "/my_3d_texture.texturec" already exists</span>\n <span class=\"c1\">-- and is a 3D texture resource. To create a dynamic 3D texture resource</span>\n <span class=\"c1\">-- use the "resource.create_texture" function.</span>\n <span class=\"n\">resource</span><span class=\"p\">.</span><span class=\"n\">set_texture</span><span class=\"p\">(</span><span class=\"s2\">"/my_3d_texture.texturec"</span><span class=\"p\">,</span> <span class=\"n\">t_args</span><span class=\"p\">,</span> <span class=\"n\">tbuffer</span><span class=\"p\">)</span>\n<span class=\"kr\">end</span>\n</code></pre></div>\n\nUpdate texture 2nd array page with loaded texture from png\n<div class=\"codehilite\"><pre><span></span><code> <span class=\"c1\">-- new_tex is resource handle of texture which was created via resource.create_resource</span>\n <span class=\"kd\">local</span> <span class=\"n\">tex_path</span> <span class=\"o\">=</span> <span class=\"s2\">"/bundle_resources/page_02.png"</span>\n <span class=\"kd\">local</span> <span class=\"n\">data</span> <span class=\"o\">=</span> <span class=\"n\">sys</span><span class=\"p\">.</span><span class=\"n\">load_resource</span><span class=\"p\">(</span><span class=\"n\">tex_path</span><span class=\"p\">)</span>\n <span class=\"kd\">local</span> <span class=\"n\">buf</span> <span class=\"o\">=</span> <span class=\"n\">image</span><span class=\"p\">.</span><span class=\"n\">load_buffer</span><span class=\"p\">(</span><span class=\"n\">data</span><span class=\"p\">)</span>\n <span class=\"n\">resource</span><span class=\"p\">.</span><span class=\"n\">set_texture</span><span class=\"p\">(</span><span class=\"n\">new_tex</span><span class=\"p\">,</span> <span class=\"p\">{</span>\n <span class=\"nb\">type</span> <span class=\"o\">=</span> <span class=\"n\">graphics</span><span class=\"p\">.</span><span class=\"n\">TEXTURE_TYPE_2D_ARRAY</span><span class=\"p\">,</span>\n <span class=\"n\">width</span> <span class=\"o\">=</span> <span class=\"n\">buf</span><span class=\"p\">.</span><span class=\"n\">width</span><span class=\"p\">,</span>\n <span class=\"n\">height</span> <span class=\"o\">=</span> <span class=\"n\">buf</span><span class=\"p\">.</span><span class=\"n\">height</span><span class=\"p\">,</span>\n <span class=\"n\">page</span> <span class=\"o\">=</span> <span class=\"mi\">1</span><span class=\"p\">,</span>\n <span class=\"n\">format</span> <span class=\"o\">=</span> <span class=\"n\">graphics</span><span class=\"p\">.</span><span class=\"n\">TEXTURE_FORMAT_RGB</span>\n <span class=\"p\">},</span> <span class=\"n\">buf</span><span class=\"p\">.</span><span class=\"n\">buffer</span><span class=\"p\">)</span>\n <span class=\"n\">go</span><span class=\"p\">.</span><span class=\"n\">set</span><span class=\"p\">(</span><span class=\"s2\">"#mesh"</span><span class=\"p\">,</span> <span class=\"s2\">"texture0"</span><span class=\"p\">,</span> <span class=\"n\">new_tex</span><span class=\"p\">)</span>\n</code></pre></div>",
|
|
1176
|
+
"replaces": "",
|
|
1177
|
+
"error": "",
|
|
1178
|
+
"tparams": [],
|
|
1179
|
+
"members": [],
|
|
1180
|
+
"notes": [],
|
|
1181
|
+
"language": ""
|
|
1182
|
+
},
|
|
1183
|
+
{
|
|
1184
|
+
"type": "FUNCTION",
|
|
1185
|
+
"name": "resource.get_texture_info",
|
|
1186
|
+
"brief": "get texture info",
|
|
1187
|
+
"description": "Gets texture info from a texture resource path or a texture handle",
|
|
1188
|
+
"returnvalues": [
|
|
1189
|
+
{
|
|
1190
|
+
"name": "table",
|
|
1191
|
+
"doc": "texture information",
|
|
1192
|
+
"types": ["resource.texture_info"]
|
|
1193
|
+
}
|
|
1194
|
+
],
|
|
1195
|
+
"parameters": [
|
|
1196
|
+
{
|
|
1197
|
+
"name": "path",
|
|
1198
|
+
"doc": "The path to the resource or a texture handle",
|
|
1199
|
+
"types": ["hash", "string", "texture"],
|
|
1200
|
+
"is_optional": "False"
|
|
1201
|
+
}
|
|
1202
|
+
],
|
|
1203
|
+
"examples": "Create a new texture and get the metadata from it\n<div class=\"codehilite\"><pre><span></span><code><span class=\"kr\">function</span> <span class=\"nf\">init</span><span class=\"p\">(</span><span class=\"n\">self</span><span class=\"p\">)</span>\n <span class=\"c1\">-- create an empty texture</span>\n <span class=\"kd\">local</span> <span class=\"n\">tparams</span> <span class=\"o\">=</span> <span class=\"p\">{</span>\n <span class=\"n\">width</span> <span class=\"o\">=</span> <span class=\"mi\">128</span><span class=\"p\">,</span>\n <span class=\"n\">height</span> <span class=\"o\">=</span> <span class=\"mi\">128</span><span class=\"p\">,</span>\n <span class=\"nb\">type</span> <span class=\"o\">=</span> <span class=\"n\">graphics</span><span class=\"p\">.</span><span class=\"n\">TEXTURE_TYPE_2D</span><span class=\"p\">,</span>\n <span class=\"n\">format</span> <span class=\"o\">=</span> <span class=\"n\">graphics</span><span class=\"p\">.</span><span class=\"n\">TEXTURE_FORMAT_RGBA</span><span class=\"p\">,</span>\n <span class=\"p\">}</span>\n\n <span class=\"kd\">local</span> <span class=\"n\">my_texture_path</span> <span class=\"o\">=</span> <span class=\"n\">resource</span><span class=\"p\">.</span><span class=\"n\">create_texture</span><span class=\"p\">(</span><span class=\"s2\">"/my_texture.texturec"</span><span class=\"p\">,</span> <span class=\"n\">tparams</span><span class=\"p\">)</span>\n <span class=\"kd\">local</span> <span class=\"n\">my_texture_info</span> <span class=\"o\">=</span> <span class=\"n\">resource</span><span class=\"p\">.</span><span class=\"n\">get_texture_info</span><span class=\"p\">(</span><span class=\"n\">my_texture_path</span><span class=\"p\">)</span>\n\n <span class=\"c1\">-- my_texture_info now contains</span>\n <span class=\"c1\">-- {</span>\n <span class=\"c1\">-- handle = <the-numeric-handle>,</span>\n <span class=\"c1\">-- width = 128,</span>\n <span class=\"c1\">-- height = 128,</span>\n <span class=\"c1\">-- depth = 1</span>\n <span class=\"c1\">-- mipmaps = 1,</span>\n <span class=\"c1\">-- page_count = 1,</span>\n <span class=\"c1\">-- type = graphics.TEXTURE_TYPE_2D,</span>\n <span class=\"c1\">-- flags = graphics.TEXTURE_USAGE_FLAG_SAMPLE</span>\n <span class=\"c1\">-- }</span>\n<span class=\"kr\">end</span>\n</code></pre></div>\n\nGet the meta data from an atlas resource\n<div class=\"codehilite\"><pre><span></span><code><span class=\"kr\">function</span> <span class=\"nf\">init</span><span class=\"p\">(</span><span class=\"n\">self</span><span class=\"p\">)</span>\n <span class=\"kd\">local</span> <span class=\"n\">my_atlas_info</span> <span class=\"o\">=</span> <span class=\"n\">resource</span><span class=\"p\">.</span><span class=\"n\">get_atlas</span><span class=\"p\">(</span><span class=\"s2\">"/my_atlas.a.texturesetc"</span><span class=\"p\">)</span>\n <span class=\"kd\">local</span> <span class=\"n\">my_texture_info</span> <span class=\"o\">=</span> <span class=\"n\">resource</span><span class=\"p\">.</span><span class=\"n\">get_texture_info</span><span class=\"p\">(</span><span class=\"n\">my_atlas_info</span><span class=\"p\">.</span><span class=\"n\">texture</span><span class=\"p\">)</span>\n\n <span class=\"c1\">-- my_texture_info now contains the information about the texture that is backing the atlas</span>\n<span class=\"kr\">end</span>\n</code></pre></div>",
|
|
1204
|
+
"replaces": "",
|
|
1205
|
+
"error": "",
|
|
1206
|
+
"tparams": [],
|
|
1207
|
+
"members": [],
|
|
1208
|
+
"notes": [],
|
|
1209
|
+
"language": ""
|
|
1210
|
+
},
|
|
1211
|
+
{
|
|
1212
|
+
"type": "FUNCTION",
|
|
1213
|
+
"name": "resource.get_render_target_info",
|
|
1214
|
+
"brief": "get render target info",
|
|
1215
|
+
"description": "Gets render target info from a render target resource path or a render target handle",
|
|
1216
|
+
"returnvalues": [
|
|
1217
|
+
{
|
|
1218
|
+
"name": "table",
|
|
1219
|
+
"doc": "render-target information",
|
|
1220
|
+
"types": ["resource.render_target_info"]
|
|
1221
|
+
}
|
|
1222
|
+
],
|
|
1223
|
+
"parameters": [
|
|
1224
|
+
{
|
|
1225
|
+
"name": "path",
|
|
1226
|
+
"doc": "The path to the resource or a render target handle",
|
|
1227
|
+
"types": ["hash", "string", "render_target"],
|
|
1228
|
+
"is_optional": "False"
|
|
1229
|
+
}
|
|
1230
|
+
],
|
|
1231
|
+
"examples": "Get the metadata from a render target resource\n<div class=\"codehilite\"><pre><span></span><code><span class=\"kr\">function</span> <span class=\"nf\">init</span><span class=\"p\">(</span><span class=\"n\">self</span><span class=\"p\">)</span>\n <span class=\"kd\">local</span> <span class=\"n\">info</span> <span class=\"o\">=</span> <span class=\"n\">resource</span><span class=\"p\">.</span><span class=\"n\">get_render_target_info</span><span class=\"p\">(</span><span class=\"s2\">"/my_render_target.render_targetc"</span><span class=\"p\">)</span>\n <span class=\"c1\">-- the info table contains meta data about all the render target attachments</span>\n <span class=\"c1\">-- so it's not necessary to use resource.get_texture here, but we do it here</span>\n <span class=\"c1\">-- just to show that it's possible:</span>\n <span class=\"kd\">local</span> <span class=\"n\">info_attachment_1</span> <span class=\"o\">=</span> <span class=\"n\">resource</span><span class=\"p\">.</span><span class=\"n\">get_texture_info</span><span class=\"p\">(</span><span class=\"n\">info</span><span class=\"p\">.</span><span class=\"n\">attachments</span><span class=\"p\">[</span><span class=\"mi\">1</span><span class=\"p\">].</span><span class=\"n\">handle</span><span class=\"p\">)</span>\n<span class=\"kr\">end</span>\n</code></pre></div>\n\nGet a texture attachment from a render target and set it on a model component\n<div class=\"codehilite\"><pre><span></span><code><span class=\"kr\">function</span> <span class=\"nf\">init</span><span class=\"p\">(</span><span class=\"n\">self</span><span class=\"p\">)</span>\n <span class=\"kd\">local</span> <span class=\"n\">info</span> <span class=\"o\">=</span> <span class=\"n\">resource</span><span class=\"p\">.</span><span class=\"n\">get_render_target_info</span><span class=\"p\">(</span><span class=\"s2\">"/my_render_target.render_targetc"</span><span class=\"p\">)</span>\n <span class=\"kd\">local</span> <span class=\"n\">attachment</span> <span class=\"o\">=</span> <span class=\"n\">info</span><span class=\"p\">.</span><span class=\"n\">attachments</span><span class=\"p\">[</span><span class=\"mi\">1</span><span class=\"p\">].</span><span class=\"n\">texture</span>\n <span class=\"c1\">-- you can also get texture info from the 'texture' field, since it's a resource hash</span>\n <span class=\"kd\">local</span> <span class=\"n\">texture_info</span> <span class=\"o\">=</span> <span class=\"n\">resource</span><span class=\"p\">.</span><span class=\"n\">get_texture_info</span><span class=\"p\">(</span><span class=\"n\">attachment</span><span class=\"p\">)</span>\n <span class=\"n\">go</span><span class=\"p\">.</span><span class=\"n\">set</span><span class=\"p\">(</span><span class=\"s2\">"#model"</span><span class=\"p\">,</span> <span class=\"s2\">"texture0"</span><span class=\"p\">,</span> <span class=\"n\">attachment</span><span class=\"p\">)</span>\n<span class=\"kr\">end</span>\n</code></pre></div>",
|
|
1232
|
+
"replaces": "",
|
|
1233
|
+
"error": "",
|
|
1234
|
+
"tparams": [],
|
|
1235
|
+
"members": [],
|
|
1236
|
+
"notes": [],
|
|
1237
|
+
"language": ""
|
|
1238
|
+
},
|
|
1239
|
+
{
|
|
1240
|
+
"type": "FUNCTION",
|
|
1241
|
+
"name": "resource.create_atlas",
|
|
1242
|
+
"brief": "create an atlas resource",
|
|
1243
|
+
"description": "This function creates a new atlas resource that can be used in the same way as any atlas created during build time.\nThe path used for creating the atlas must be unique, trying to create a resource at a path that is already\nregistered will trigger an error. If the intention is to instead modify an existing atlas, use the <a href=\"/ref/resource#resource.set_atlas\">resource.set_atlas</a>\nfunction. Also note that the path to the new atlas resource must have a '.texturesetc' extension,\nmeaning \"/path/my_atlas\" is not a valid path but \"/path/my_atlas.texturesetc\" is.\nWhen creating the atlas, at least one geometry and one animation is required, and an error will be\nraised if these requirements are not met. A reference to the resource will be held by the collection\nthat created the resource and will automatically be released when that collection is destroyed.\nNote that releasing a resource essentially means decreasing the reference count of that resource,\nand not necessarily that it will be deleted.",
|
|
1244
|
+
"returnvalues": [
|
|
1245
|
+
{
|
|
1246
|
+
"name": "path",
|
|
1247
|
+
"doc": "Returns the atlas resource path",
|
|
1248
|
+
"types": ["hash"]
|
|
1249
|
+
}
|
|
1250
|
+
],
|
|
1251
|
+
"parameters": [
|
|
1252
|
+
{
|
|
1253
|
+
"name": "path",
|
|
1254
|
+
"doc": "The path to the resource.",
|
|
1255
|
+
"types": ["string"],
|
|
1256
|
+
"is_optional": "False"
|
|
1257
|
+
},
|
|
1258
|
+
{
|
|
1259
|
+
"name": "table",
|
|
1260
|
+
"doc": "atlas creation data",
|
|
1261
|
+
"types": ["resource.atlas"],
|
|
1262
|
+
"is_optional": "False"
|
|
1263
|
+
}
|
|
1264
|
+
],
|
|
1265
|
+
"examples": "Create a backing texture and an atlas\n<div class=\"codehilite\"><pre><span></span><code><span class=\"kr\">function</span> <span class=\"nf\">init</span><span class=\"p\">(</span><span class=\"n\">self</span><span class=\"p\">)</span>\n <span class=\"c1\">-- create an empty texture</span>\n <span class=\"kd\">local</span> <span class=\"n\">tparams</span> <span class=\"o\">=</span> <span class=\"p\">{</span>\n <span class=\"n\">width</span> <span class=\"o\">=</span> <span class=\"mi\">128</span><span class=\"p\">,</span>\n <span class=\"n\">height</span> <span class=\"o\">=</span> <span class=\"mi\">128</span><span class=\"p\">,</span>\n <span class=\"nb\">type</span> <span class=\"o\">=</span> <span class=\"n\">graphics</span><span class=\"p\">.</span><span class=\"n\">TEXTURE_TYPE_2D</span><span class=\"p\">,</span>\n <span class=\"n\">format</span> <span class=\"o\">=</span> <span class=\"n\">graphics</span><span class=\"p\">.</span><span class=\"n\">TEXTURE_FORMAT_RGBA</span><span class=\"p\">,</span>\n <span class=\"p\">}</span>\n <span class=\"kd\">local</span> <span class=\"n\">my_texture_id</span> <span class=\"o\">=</span> <span class=\"n\">resource</span><span class=\"p\">.</span><span class=\"n\">create_texture</span><span class=\"p\">(</span><span class=\"s2\">"/my_texture.texturec"</span><span class=\"p\">,</span> <span class=\"n\">tparams</span><span class=\"p\">)</span>\n\n <span class=\"c1\">-- optionally use resource.set_texture to upload data to texture</span>\n\n <span class=\"c1\">-- create an atlas with one animation and one square geometry</span>\n <span class=\"c1\">-- note that the function doesn't support hashes for the texture,</span>\n <span class=\"c1\">-- you need to use a string for the texture path here aswell</span>\n <span class=\"kd\">local</span> <span class=\"n\">aparams</span> <span class=\"o\">=</span> <span class=\"p\">{</span>\n <span class=\"n\">texture</span> <span class=\"o\">=</span> <span class=\"s2\">"/my_texture.texturec"</span><span class=\"p\">,</span>\n <span class=\"n\">animations</span> <span class=\"o\">=</span> <span class=\"p\">{</span>\n <span class=\"p\">{</span>\n <span class=\"n\">id</span> <span class=\"o\">=</span> <span class=\"s2\">"my_animation"</span><span class=\"p\">,</span>\n <span class=\"n\">width</span> <span class=\"o\">=</span> <span class=\"mi\">128</span><span class=\"p\">,</span>\n <span class=\"n\">height</span> <span class=\"o\">=</span> <span class=\"mi\">128</span><span class=\"p\">,</span>\n <span class=\"n\">frames</span> <span class=\"o\">=</span> <span class=\"p\">{</span> <span class=\"mi\">1</span> <span class=\"p\">}</span>\n <span class=\"p\">}</span>\n <span class=\"p\">},</span>\n <span class=\"n\">geometries</span> <span class=\"o\">=</span> <span class=\"p\">{</span>\n <span class=\"p\">{</span>\n <span class=\"n\">id</span> <span class=\"o\">=</span> <span class=\"s1\">'idle0'</span><span class=\"p\">,</span>\n <span class=\"n\">width</span> <span class=\"o\">=</span> <span class=\"mi\">128</span><span class=\"p\">,</span>\n <span class=\"n\">height</span> <span class=\"o\">=</span> <span class=\"mi\">128</span><span class=\"p\">,</span>\n <span class=\"n\">pivot_x</span> <span class=\"o\">=</span> <span class=\"mf\">0.5</span><span class=\"p\">,</span>\n <span class=\"n\">pivot_y</span> <span class=\"o\">=</span> <span class=\"mf\">0.5</span><span class=\"p\">,</span>\n <span class=\"n\">vertices</span> <span class=\"o\">=</span> <span class=\"p\">{</span>\n <span class=\"mi\">0</span><span class=\"p\">,</span> <span class=\"mi\">0</span><span class=\"p\">,</span>\n <span class=\"mi\">0</span><span class=\"p\">,</span> <span class=\"mi\">128</span><span class=\"p\">,</span>\n <span class=\"mi\">128</span><span class=\"p\">,</span> <span class=\"mi\">128</span><span class=\"p\">,</span>\n <span class=\"mi\">128</span><span class=\"p\">,</span> <span class=\"mi\">0</span>\n <span class=\"p\">},</span>\n <span class=\"n\">uvs</span> <span class=\"o\">=</span> <span class=\"p\">{</span>\n <span class=\"mi\">0</span><span class=\"p\">,</span> <span class=\"mi\">0</span><span class=\"p\">,</span>\n <span class=\"mi\">0</span><span class=\"p\">,</span> <span class=\"mi\">128</span><span class=\"p\">,</span>\n <span class=\"mi\">128</span><span class=\"p\">,</span> <span class=\"mi\">128</span><span class=\"p\">,</span>\n <span class=\"mi\">128</span><span class=\"p\">,</span> <span class=\"mi\">0</span>\n <span class=\"p\">},</span>\n <span class=\"n\">indices</span> <span class=\"o\">=</span> <span class=\"p\">{</span><span class=\"mi\">0</span><span class=\"p\">,</span><span class=\"mi\">1</span><span class=\"p\">,</span><span class=\"mi\">2</span><span class=\"p\">,</span><span class=\"mi\">0</span><span class=\"p\">,</span><span class=\"mi\">2</span><span class=\"p\">,</span><span class=\"mi\">3</span><span class=\"p\">}</span>\n <span class=\"p\">}</span>\n <span class=\"p\">}</span>\n <span class=\"p\">}</span>\n <span class=\"kd\">local</span> <span class=\"n\">my_atlas_id</span> <span class=\"o\">=</span> <span class=\"n\">resource</span><span class=\"p\">.</span><span class=\"n\">create_atlas</span><span class=\"p\">(</span><span class=\"s2\">"/my_atlas.texturesetc"</span><span class=\"p\">,</span> <span class=\"n\">aparams</span><span class=\"p\">)</span>\n\n <span class=\"c1\">-- assign the atlas to the 'sprite' component on the same go</span>\n <span class=\"n\">go</span><span class=\"p\">.</span><span class=\"n\">set</span><span class=\"p\">(</span><span class=\"s2\">"#sprite"</span><span class=\"p\">,</span> <span class=\"s2\">"image"</span><span class=\"p\">,</span> <span class=\"n\">my_atlas_id</span><span class=\"p\">)</span>\n<span class=\"kr\">end</span>\n</code></pre></div>",
|
|
1266
|
+
"replaces": "",
|
|
1267
|
+
"error": "",
|
|
1268
|
+
"tparams": [],
|
|
1269
|
+
"members": [],
|
|
1270
|
+
"notes": [],
|
|
1271
|
+
"language": ""
|
|
1272
|
+
},
|
|
1273
|
+
{
|
|
1274
|
+
"type": "FUNCTION",
|
|
1275
|
+
"name": "resource.set_atlas",
|
|
1276
|
+
"brief": "set atlas data",
|
|
1277
|
+
"description": "Sets the data for a specific atlas resource. Setting new atlas data is specified by passing in\na texture path for the backing texture of the atlas, a list of geometries and a list of animations\nthat map to the entries in the geometry list. The geometry entries are represented by three lists:\nvertices, uvs and indices that together represent triangles that are used in other parts of the\nengine to produce render objects from.\nVertex and uv coordinates for the geometries are expected to be\nin pixel coordinates where 0,0 is the top left corner of the texture.\nThere is no automatic padding or margin support when setting custom data,\nwhich could potentially cause filtering artifacts if used with a material sampler that has linear filtering.\nIf that is an issue, you need to calculate padding and margins manually before passing in the geometry data to\nthis function.",
|
|
1278
|
+
"returnvalues": [],
|
|
1279
|
+
"parameters": [
|
|
1280
|
+
{
|
|
1281
|
+
"name": "path",
|
|
1282
|
+
"doc": "The path to the atlas resource",
|
|
1283
|
+
"types": ["hash", "string"],
|
|
1284
|
+
"is_optional": "False"
|
|
1285
|
+
},
|
|
1286
|
+
{
|
|
1287
|
+
"name": "table",
|
|
1288
|
+
"doc": "atlas data",
|
|
1289
|
+
"types": ["resource.atlas"],
|
|
1290
|
+
"is_optional": "False"
|
|
1291
|
+
}
|
|
1292
|
+
],
|
|
1293
|
+
"examples": "Add a new animation to an existing atlas\n<div class=\"codehilite\"><pre><span></span><code><span class=\"kr\">function</span> <span class=\"nf\">init</span><span class=\"p\">(</span><span class=\"n\">self</span><span class=\"p\">)</span>\n <span class=\"kd\">local</span> <span class=\"n\">data</span> <span class=\"o\">=</span> <span class=\"n\">resource</span><span class=\"p\">.</span><span class=\"n\">get_atlas</span><span class=\"p\">(</span><span class=\"s2\">"/main/my_atlas.a.texturesetc"</span><span class=\"p\">)</span>\n <span class=\"kd\">local</span> <span class=\"n\">my_animation</span> <span class=\"o\">=</span> <span class=\"p\">{</span>\n <span class=\"n\">id</span> <span class=\"o\">=</span> <span class=\"s2\">"my_new_animation"</span><span class=\"p\">,</span>\n <span class=\"n\">width</span> <span class=\"o\">=</span> <span class=\"mi\">128</span><span class=\"p\">,</span>\n <span class=\"n\">height</span> <span class=\"o\">=</span> <span class=\"mi\">128</span><span class=\"p\">,</span>\n <span class=\"n\">frame_start</span> <span class=\"o\">=</span> <span class=\"mi\">1</span><span class=\"p\">,</span>\n <span class=\"n\">frame_end</span> <span class=\"o\">=</span> <span class=\"mi\">6</span><span class=\"p\">,</span>\n <span class=\"n\">playback</span> <span class=\"o\">=</span> <span class=\"n\">go</span><span class=\"p\">.</span><span class=\"n\">PLAYBACK_LOOP_PINGPONG</span><span class=\"p\">,</span>\n <span class=\"n\">fps</span> <span class=\"o\">=</span> <span class=\"mi\">8</span>\n <span class=\"p\">}</span>\n <span class=\"nb\">table.insert</span><span class=\"p\">(</span><span class=\"n\">data</span><span class=\"p\">.</span><span class=\"n\">animations</span><span class=\"p\">,</span> <span class=\"n\">my_animation</span><span class=\"p\">)</span>\n <span class=\"n\">resource</span><span class=\"p\">.</span><span class=\"n\">set_atlas</span><span class=\"p\">(</span><span class=\"s2\">"/main/my_atlas.a.texturesetc"</span><span class=\"p\">,</span> <span class=\"n\">data</span><span class=\"p\">)</span>\n<span class=\"kr\">end</span>\n</code></pre></div>\n\nSets atlas data for a 256x256 texture with a single animation being rendered as a quad\n<div class=\"codehilite\"><pre><span></span><code><span class=\"kr\">function</span> <span class=\"nf\">init</span><span class=\"p\">(</span><span class=\"n\">self</span><span class=\"p\">)</span>\n <span class=\"kd\">local</span> <span class=\"n\">params</span> <span class=\"o\">=</span> <span class=\"p\">{</span>\n <span class=\"n\">texture</span> <span class=\"o\">=</span> <span class=\"s2\">"/main/my_256x256_texture.texturec"</span><span class=\"p\">,</span>\n <span class=\"n\">animations</span> <span class=\"o\">=</span> <span class=\"p\">{</span>\n <span class=\"p\">{</span>\n <span class=\"n\">id</span> <span class=\"o\">=</span> <span class=\"s2\">"my_animation"</span><span class=\"p\">,</span>\n <span class=\"n\">width</span> <span class=\"o\">=</span> <span class=\"mi\">256</span><span class=\"p\">,</span>\n <span class=\"n\">height</span> <span class=\"o\">=</span> <span class=\"mi\">256</span><span class=\"p\">,</span>\n <span class=\"n\">frames</span> <span class=\"o\">=</span> <span class=\"p\">{</span> <span class=\"mi\">1</span> <span class=\"p\">}</span>\n <span class=\"p\">}</span>\n <span class=\"p\">},</span>\n <span class=\"n\">geometries</span> <span class=\"o\">=</span> <span class=\"p\">{</span>\n <span class=\"p\">{</span>\n <span class=\"n\">vertices</span> <span class=\"o\">=</span> <span class=\"p\">{</span>\n <span class=\"mi\">0</span><span class=\"p\">,</span> <span class=\"mi\">0</span><span class=\"p\">,</span>\n <span class=\"mi\">0</span><span class=\"p\">,</span> <span class=\"mi\">256</span><span class=\"p\">,</span>\n <span class=\"mi\">256</span><span class=\"p\">,</span> <span class=\"mi\">256</span><span class=\"p\">,</span>\n <span class=\"mi\">256</span><span class=\"p\">,</span> <span class=\"mi\">0</span>\n <span class=\"p\">},</span>\n <span class=\"n\">uvs</span> <span class=\"o\">=</span> <span class=\"p\">{</span>\n <span class=\"mi\">0</span><span class=\"p\">,</span> <span class=\"mi\">0</span><span class=\"p\">,</span>\n <span class=\"mi\">0</span><span class=\"p\">,</span> <span class=\"mi\">256</span><span class=\"p\">,</span>\n <span class=\"mi\">256</span><span class=\"p\">,</span> <span class=\"mi\">256</span><span class=\"p\">,</span>\n <span class=\"mi\">256</span><span class=\"p\">,</span> <span class=\"mi\">0</span>\n <span class=\"p\">},</span>\n <span class=\"n\">indices</span> <span class=\"o\">=</span> <span class=\"p\">{</span> <span class=\"mi\">0</span><span class=\"p\">,</span><span class=\"mi\">1</span><span class=\"p\">,</span><span class=\"mi\">2</span><span class=\"p\">,</span><span class=\"mi\">0</span><span class=\"p\">,</span><span class=\"mi\">2</span><span class=\"p\">,</span><span class=\"mi\">3</span> <span class=\"p\">}</span>\n <span class=\"p\">}</span>\n <span class=\"p\">}</span>\n <span class=\"p\">}</span>\n <span class=\"n\">resource</span><span class=\"p\">.</span><span class=\"n\">set_atlas</span><span class=\"p\">(</span><span class=\"s2\">"/main/test.a.texturesetc"</span><span class=\"p\">,</span> <span class=\"n\">params</span><span class=\"p\">)</span>\n<span class=\"kr\">end</span>\n</code></pre></div>",
|
|
1294
|
+
"replaces": "",
|
|
1295
|
+
"error": "",
|
|
1296
|
+
"tparams": [],
|
|
1297
|
+
"members": [],
|
|
1298
|
+
"notes": ["Custom atlas data is not compatible with slice-9 for sprites"],
|
|
1299
|
+
"language": ""
|
|
1300
|
+
},
|
|
1301
|
+
{
|
|
1302
|
+
"type": "FUNCTION",
|
|
1303
|
+
"name": "resource.get_atlas",
|
|
1304
|
+
"brief": "Get atlas data",
|
|
1305
|
+
"description": "Returns the atlas data for an atlas",
|
|
1306
|
+
"returnvalues": [
|
|
1307
|
+
{
|
|
1308
|
+
"name": "data",
|
|
1309
|
+
"doc": "atlas data",
|
|
1310
|
+
"types": ["resource.atlas_data"]
|
|
1311
|
+
}
|
|
1312
|
+
],
|
|
1313
|
+
"parameters": [
|
|
1314
|
+
{
|
|
1315
|
+
"name": "path",
|
|
1316
|
+
"doc": "The path to the atlas resource",
|
|
1317
|
+
"types": ["hash", "string"],
|
|
1318
|
+
"is_optional": "False"
|
|
1319
|
+
}
|
|
1320
|
+
],
|
|
1321
|
+
"examples": "",
|
|
1322
|
+
"replaces": "",
|
|
1323
|
+
"error": "",
|
|
1324
|
+
"tparams": [],
|
|
1325
|
+
"members": [],
|
|
1326
|
+
"notes": [],
|
|
1327
|
+
"language": ""
|
|
1328
|
+
},
|
|
1329
|
+
{
|
|
1330
|
+
"type": "FUNCTION",
|
|
1331
|
+
"name": "resource.set_sound",
|
|
1332
|
+
"brief": "Update internal sound resource",
|
|
1333
|
+
"description": "Update internal sound resource (wavc/oggc/opusc) with new data",
|
|
1334
|
+
"returnvalues": [],
|
|
1335
|
+
"parameters": [
|
|
1336
|
+
{
|
|
1337
|
+
"name": "path",
|
|
1338
|
+
"doc": "The path to the resource",
|
|
1339
|
+
"types": ["hash", "string"],
|
|
1340
|
+
"is_optional": "False"
|
|
1341
|
+
},
|
|
1342
|
+
{
|
|
1343
|
+
"name": "buffer",
|
|
1344
|
+
"doc": "A lua string containing the binary sound data",
|
|
1345
|
+
"types": ["string"],
|
|
1346
|
+
"is_optional": "False"
|
|
1347
|
+
}
|
|
1348
|
+
],
|
|
1349
|
+
"examples": "",
|
|
1350
|
+
"replaces": "",
|
|
1351
|
+
"error": "",
|
|
1352
|
+
"tparams": [],
|
|
1353
|
+
"members": [],
|
|
1354
|
+
"notes": [],
|
|
1355
|
+
"language": ""
|
|
1356
|
+
},
|
|
1357
|
+
{
|
|
1358
|
+
"type": "FUNCTION",
|
|
1359
|
+
"name": "resource.create_sound_data",
|
|
1360
|
+
"brief": "Creates a sound data resource (.oggc/.opusc/.wavc)",
|
|
1361
|
+
"description": "Creates a sound data resource\nSupported formats are .oggc, .opusc and .wavc",
|
|
1362
|
+
"returnvalues": [
|
|
1363
|
+
{
|
|
1364
|
+
"name": "path_hash",
|
|
1365
|
+
"doc": "the resulting path hash to the resource",
|
|
1366
|
+
"types": ["hash"]
|
|
1367
|
+
}
|
|
1368
|
+
],
|
|
1369
|
+
"parameters": [
|
|
1370
|
+
{
|
|
1371
|
+
"name": "path",
|
|
1372
|
+
"doc": "the path to the resource. Must not already exist.",
|
|
1373
|
+
"types": ["string"],
|
|
1374
|
+
"is_optional": "False"
|
|
1375
|
+
},
|
|
1376
|
+
{
|
|
1377
|
+
"name": "options",
|
|
1378
|
+
"doc": "optional sound-data parameters",
|
|
1379
|
+
"types": ["resource.sound_data_options"],
|
|
1380
|
+
"is_optional": "True"
|
|
1381
|
+
}
|
|
1382
|
+
],
|
|
1383
|
+
"examples": "<div class=\"codehilite\"><pre><span></span><code><span class=\"kr\">function</span> <span class=\"nf\">init</span><span class=\"p\">(</span><span class=\"n\">self</span><span class=\"p\">)</span>\n <span class=\"c1\">-- create a new sound resource, given the initial chunk of the file</span>\n <span class=\"kd\">local</span> <span class=\"n\">relative_path</span> <span class=\"o\">=</span> <span class=\"s2\">"/a/unique/resource/name.oggc"</span>\n <span class=\"kd\">local</span> <span class=\"n\">hash</span> <span class=\"o\">=</span> <span class=\"n\">resource</span><span class=\"p\">.</span><span class=\"n\">create_sound_data</span><span class=\"p\">(</span><span class=\"n\">relative_path</span><span class=\"p\">,</span> <span class=\"p\">{</span> <span class=\"n\">data</span> <span class=\"o\">=</span> <span class=\"n\">data</span><span class=\"p\">,</span> <span class=\"n\">filesize</span> <span class=\"o\">=</span> <span class=\"n\">filesize</span><span class=\"p\">,</span> <span class=\"n\">partial</span> <span class=\"o\">=</span> <span class=\"kc\">true</span> <span class=\"p\">})</span>\n <span class=\"n\">go</span><span class=\"p\">.</span><span class=\"n\">set</span><span class=\"p\">(</span><span class=\"s2\">"#music"</span><span class=\"p\">,</span> <span class=\"s2\">"sound"</span><span class=\"p\">,</span> <span class=\"n\">hash</span><span class=\"p\">)</span> <span class=\"c1\">-- override the previous sound resource</span>\n <span class=\"n\">sound</span><span class=\"p\">.</span><span class=\"n\">play</span><span class=\"p\">(</span><span class=\"s2\">"#music"</span><span class=\"p\">)</span> <span class=\"c1\">-- start the playing</span>\n<span class=\"kr\">end</span>\n</code></pre></div>",
|
|
1384
|
+
"replaces": "",
|
|
1385
|
+
"error": "",
|
|
1386
|
+
"tparams": [],
|
|
1387
|
+
"members": [],
|
|
1388
|
+
"notes": [],
|
|
1389
|
+
"language": ""
|
|
1390
|
+
},
|
|
1391
|
+
{
|
|
1392
|
+
"type": "FUNCTION",
|
|
1393
|
+
"name": "resource.create_buffer",
|
|
1394
|
+
"brief": "create a buffer resource",
|
|
1395
|
+
"description": "This function creates a new buffer resource that can be used in the same way as any buffer created during build time.\nThe function requires a valid buffer created from either <a href=\"/ref/buffer#buffer.create\">buffer.create</a> or another pre-existing buffer resource.\nBy default, the new resource will take ownership of the buffer lua reference, meaning the buffer will not automatically be removed\nwhen the lua reference to the buffer is garbage collected. This behaviour can be overruled by specifying 'transfer_ownership = false'\nin the argument table. If the new buffer resource is created from a buffer object that is created by another resource,\nthe buffer object will be copied and the new resource will effectively own a copy of the buffer instead.\nNote that the path to the new resource must have the '.bufferc' extension, \"/path/my_buffer\" is not a valid path but \"/path/my_buffer.bufferc\" is.\nThe path must also be unique, attempting to create a buffer with the same name as an existing resource will raise an error.",
|
|
1396
|
+
"returnvalues": [
|
|
1397
|
+
{
|
|
1398
|
+
"name": "path",
|
|
1399
|
+
"doc": "Returns the buffer resource path",
|
|
1400
|
+
"types": ["hash"]
|
|
1401
|
+
}
|
|
1402
|
+
],
|
|
1403
|
+
"parameters": [
|
|
1404
|
+
{
|
|
1405
|
+
"name": "path",
|
|
1406
|
+
"doc": "The path to the resource.",
|
|
1407
|
+
"types": ["string"],
|
|
1408
|
+
"is_optional": "False"
|
|
1409
|
+
},
|
|
1410
|
+
{
|
|
1411
|
+
"name": "table",
|
|
1412
|
+
"doc": "buffer-resource creation parameters",
|
|
1413
|
+
"types": ["resource.buffer_creation_params"],
|
|
1414
|
+
"is_optional": "False"
|
|
1415
|
+
}
|
|
1416
|
+
],
|
|
1417
|
+
"examples": "Create a buffer object and bind it to a buffer resource\n<div class=\"codehilite\"><pre><span></span><code><span class=\"kr\">function</span> <span class=\"nf\">init</span><span class=\"p\">(</span><span class=\"n\">self</span><span class=\"p\">)</span>\n <span class=\"kd\">local</span> <span class=\"n\">size</span> <span class=\"o\">=</span> <span class=\"mi\">1</span>\n <span class=\"kd\">local</span> <span class=\"n\">positions</span> <span class=\"o\">=</span> <span class=\"p\">{</span>\n <span class=\"c1\">-- triangle 1</span>\n <span class=\"n\">size</span><span class=\"p\">,</span> <span class=\"n\">size</span><span class=\"p\">,</span> <span class=\"mi\">0</span><span class=\"p\">,</span>\n <span class=\"o\">-</span><span class=\"n\">size</span><span class=\"p\">,</span> <span class=\"o\">-</span><span class=\"n\">size</span><span class=\"p\">,</span> <span class=\"mi\">0</span><span class=\"p\">,</span>\n <span class=\"n\">size</span><span class=\"p\">,</span> <span class=\"o\">-</span><span class=\"n\">size</span><span class=\"p\">,</span> <span class=\"mi\">0</span><span class=\"p\">,</span>\n <span class=\"c1\">-- triangle 2</span>\n <span class=\"n\">size</span><span class=\"p\">,</span> <span class=\"n\">size</span><span class=\"p\">,</span> <span class=\"mi\">0</span><span class=\"p\">,</span>\n <span class=\"o\">-</span><span class=\"n\">size</span><span class=\"p\">,</span> <span class=\"n\">size</span><span class=\"p\">,</span> <span class=\"mi\">0</span><span class=\"p\">,</span>\n <span class=\"o\">-</span><span class=\"n\">size</span><span class=\"p\">,</span> <span class=\"o\">-</span><span class=\"n\">size</span><span class=\"p\">,</span> <span class=\"mi\">0</span><span class=\"p\">,</span>\n <span class=\"p\">}</span>\n\n <span class=\"kd\">local</span> <span class=\"n\">buffer_handle</span> <span class=\"o\">=</span> <span class=\"n\">buffer</span><span class=\"p\">.</span><span class=\"n\">create</span><span class=\"p\">(</span><span class=\"o\">#</span><span class=\"n\">positions</span><span class=\"p\">,</span> <span class=\"p\">{</span>\n <span class=\"p\">{</span>\n <span class=\"n\">name</span> <span class=\"o\">=</span> <span class=\"n\">hash</span><span class=\"p\">(</span><span class=\"s2\">"position"</span><span class=\"p\">),</span>\n <span class=\"nb\">type</span> <span class=\"o\">=</span> <span class=\"n\">buffer</span><span class=\"p\">.</span><span class=\"n\">VALUE_TYPE_FLOAT32</span><span class=\"p\">,</span>\n <span class=\"n\">count</span> <span class=\"o\">=</span> <span class=\"mi\">3</span>\n <span class=\"p\">}</span>\n <span class=\"p\">})</span>\n\n <span class=\"kd\">local</span> <span class=\"n\">stream</span> <span class=\"o\">=</span> <span class=\"n\">buffer</span><span class=\"p\">.</span><span class=\"n\">get_stream</span><span class=\"p\">(</span><span class=\"n\">buffer_handle</span><span class=\"p\">,</span> <span class=\"n\">hash</span><span class=\"p\">(</span><span class=\"s2\">"position"</span><span class=\"p\">))</span>\n\n <span class=\"c1\">-- transfer vertex data to buffer</span>\n <span class=\"kr\">for</span> <span class=\"n\">k</span><span class=\"o\">=</span><span class=\"mi\">1</span><span class=\"p\">,</span><span class=\"o\">#</span><span class=\"n\">positions</span> <span class=\"kr\">do</span>\n <span class=\"n\">stream</span><span class=\"p\">[</span><span class=\"n\">k</span><span class=\"p\">]</span> <span class=\"o\">=</span> <span class=\"n\">positions</span><span class=\"p\">[</span><span class=\"n\">k</span><span class=\"p\">]</span>\n <span class=\"kr\">end</span>\n\n <span class=\"kd\">local</span> <span class=\"n\">my_buffer</span> <span class=\"o\">=</span> <span class=\"n\">resource</span><span class=\"p\">.</span><span class=\"n\">create_buffer</span><span class=\"p\">(</span><span class=\"s2\">"/my_buffer.bufferc"</span><span class=\"p\">,</span> <span class=\"p\">{</span> <span class=\"n\">buffer</span> <span class=\"o\">=</span> <span class=\"n\">buffer_handle</span> <span class=\"p\">})</span>\n <span class=\"n\">go</span><span class=\"p\">.</span><span class=\"n\">set</span><span class=\"p\">(</span><span class=\"s2\">"/go#mesh"</span><span class=\"p\">,</span> <span class=\"s2\">"vertices"</span><span class=\"p\">,</span> <span class=\"n\">my_buffer</span><span class=\"p\">)</span>\n<span class=\"kr\">end</span>\n</code></pre></div>\n\nCreate a buffer resource from existing resource\n<div class=\"codehilite\"><pre><span></span><code><span class=\"kr\">function</span> <span class=\"nf\">init</span><span class=\"p\">(</span><span class=\"n\">self</span><span class=\"p\">)</span>\n <span class=\"kd\">local</span> <span class=\"n\">res</span> <span class=\"o\">=</span> <span class=\"n\">resource</span><span class=\"p\">.</span><span class=\"n\">get_buffer</span><span class=\"p\">(</span><span class=\"s2\">"/my_buffer_path.bufferc"</span><span class=\"p\">)</span>\n <span class=\"c1\">-- create a cloned buffer resource from another resource buffer</span>\n <span class=\"kd\">local</span> <span class=\"n\">buf</span> <span class=\"o\">=</span> <span class=\"n\">reource</span><span class=\"p\">.</span><span class=\"n\">create_buffer</span><span class=\"p\">(</span><span class=\"s2\">"/my_cloned_buffer.bufferc"</span><span class=\"p\">,</span> <span class=\"p\">{</span> <span class=\"n\">buffer</span> <span class=\"o\">=</span> <span class=\"n\">res</span> <span class=\"p\">})</span>\n <span class=\"c1\">-- assign cloned buffer to a mesh component</span>\n <span class=\"n\">go</span><span class=\"p\">.</span><span class=\"n\">set</span><span class=\"p\">(</span><span class=\"s2\">"/go#mesh"</span><span class=\"p\">,</span> <span class=\"s2\">"vertices"</span><span class=\"p\">,</span> <span class=\"n\">buf</span><span class=\"p\">)</span>\n<span class=\"kr\">end</span>\n</code></pre></div>",
|
|
1418
|
+
"replaces": "",
|
|
1419
|
+
"error": "",
|
|
1420
|
+
"tparams": [],
|
|
1421
|
+
"members": [],
|
|
1422
|
+
"notes": [],
|
|
1423
|
+
"language": ""
|
|
1424
|
+
},
|
|
1425
|
+
{
|
|
1426
|
+
"type": "FUNCTION",
|
|
1427
|
+
"name": "resource.get_buffer",
|
|
1428
|
+
"brief": "get resource buffer",
|
|
1429
|
+
"description": "gets the buffer from a resource",
|
|
1430
|
+
"returnvalues": [
|
|
1431
|
+
{
|
|
1432
|
+
"name": "buffer",
|
|
1433
|
+
"doc": "The resource buffer",
|
|
1434
|
+
"types": ["buffer_data"]
|
|
1435
|
+
}
|
|
1436
|
+
],
|
|
1437
|
+
"parameters": [
|
|
1438
|
+
{
|
|
1439
|
+
"name": "path",
|
|
1440
|
+
"doc": "The path to the resource",
|
|
1441
|
+
"types": ["hash", "string"],
|
|
1442
|
+
"is_optional": "False"
|
|
1443
|
+
}
|
|
1444
|
+
],
|
|
1445
|
+
"examples": "How to get the data from a buffer\n<div class=\"codehilite\"><pre><span></span><code><span class=\"kr\">function</span> <span class=\"nf\">init</span><span class=\"p\">(</span><span class=\"n\">self</span><span class=\"p\">)</span>\n\n <span class=\"kd\">local</span> <span class=\"n\">res_path</span> <span class=\"o\">=</span> <span class=\"n\">go</span><span class=\"p\">.</span><span class=\"n\">get</span><span class=\"p\">(</span><span class=\"s2\">"#mesh"</span><span class=\"p\">,</span> <span class=\"s2\">"vertices"</span><span class=\"p\">)</span>\n <span class=\"kd\">local</span> <span class=\"n\">buf</span> <span class=\"o\">=</span> <span class=\"n\">resource</span><span class=\"p\">.</span><span class=\"n\">get_buffer</span><span class=\"p\">(</span><span class=\"n\">res_path</span><span class=\"p\">)</span>\n <span class=\"kd\">local</span> <span class=\"n\">stream_positions</span> <span class=\"o\">=</span> <span class=\"n\">buffer</span><span class=\"p\">.</span><span class=\"n\">get_stream</span><span class=\"p\">(</span><span class=\"n\">buf</span><span class=\"p\">,</span> <span class=\"s2\">"position"</span><span class=\"p\">)</span>\n\n <span class=\"kr\">for</span> <span class=\"n\">i</span><span class=\"o\">=</span><span class=\"mi\">1</span><span class=\"p\">,</span><span class=\"o\">#</span><span class=\"n\">stream_positions</span> <span class=\"kr\">do</span>\n <span class=\"nb\">print</span><span class=\"p\">(</span><span class=\"n\">i</span><span class=\"p\">,</span> <span class=\"n\">stream_positions</span><span class=\"p\">[</span><span class=\"n\">i</span><span class=\"p\">])</span>\n <span class=\"kr\">end</span>\n<span class=\"kr\">end</span>\n</code></pre></div>",
|
|
1446
|
+
"replaces": "",
|
|
1447
|
+
"error": "",
|
|
1448
|
+
"tparams": [],
|
|
1449
|
+
"members": [],
|
|
1450
|
+
"notes": [],
|
|
1451
|
+
"language": ""
|
|
1452
|
+
},
|
|
1453
|
+
{
|
|
1454
|
+
"type": "FUNCTION",
|
|
1455
|
+
"name": "resource.set_buffer",
|
|
1456
|
+
"brief": "set resource buffer",
|
|
1457
|
+
"description": "Sets the buffer of a resource. By default, setting the resource buffer will either copy the data from the incoming buffer object\nto the buffer stored in the destination resource, or make a new buffer object if the sizes between the source buffer and the destination buffer\nstored in the resource differs. In some cases, e.g performance reasons, it might be beneficial to just set the buffer object on the resource without copying or cloning.\nTo achieve this, set the <code>transfer_ownership</code> flag to true in the argument table. Transferring ownership from a lua buffer to a resource with this function\nworks exactly the same as <a href=\"/ref/resource#resource.create_buffer\">resource.create_buffer</a>: the destination resource will take ownership of the buffer held by the lua reference, i.e the buffer will not automatically be removed\nwhen the lua reference to the buffer is garbage collected.\nNote: When setting a buffer with <code>transfer_ownership = true</code>, the currently bound buffer in the resource will be destroyed.",
|
|
1458
|
+
"returnvalues": [],
|
|
1459
|
+
"parameters": [
|
|
1460
|
+
{
|
|
1461
|
+
"name": "path",
|
|
1462
|
+
"doc": "The path to the resource",
|
|
1463
|
+
"types": ["hash", "string"],
|
|
1464
|
+
"is_optional": "False"
|
|
1465
|
+
},
|
|
1466
|
+
{
|
|
1467
|
+
"name": "buffer",
|
|
1468
|
+
"doc": "The resource buffer",
|
|
1469
|
+
"types": ["buffer_data"],
|
|
1470
|
+
"is_optional": "False"
|
|
1471
|
+
},
|
|
1472
|
+
{
|
|
1473
|
+
"name": "table",
|
|
1474
|
+
"doc": "optional buffer-resource update options",
|
|
1475
|
+
"types": ["resource.buffer_update_options"],
|
|
1476
|
+
"is_optional": "True"
|
|
1477
|
+
}
|
|
1478
|
+
],
|
|
1479
|
+
"examples": "How to set the data from a buffer\n<div class=\"codehilite\"><pre><span></span><code><span class=\"kd\">local</span> <span class=\"kr\">function</span> <span class=\"nf\">fill_stream</span><span class=\"p\">(</span><span class=\"n\">stream</span><span class=\"p\">,</span> <span class=\"n\">verts</span><span class=\"p\">)</span>\n <span class=\"kr\">for</span> <span class=\"n\">key</span><span class=\"p\">,</span> <span class=\"n\">value</span> <span class=\"kr\">in</span> <span class=\"nb\">ipairs</span><span class=\"p\">(</span><span class=\"n\">verts</span><span class=\"p\">)</span> <span class=\"kr\">do</span>\n <span class=\"n\">stream</span><span class=\"p\">[</span><span class=\"n\">key</span><span class=\"p\">]</span> <span class=\"o\">=</span> <span class=\"n\">verts</span><span class=\"p\">[</span><span class=\"n\">key</span><span class=\"p\">]</span>\n <span class=\"kr\">end</span>\n<span class=\"kr\">end</span>\n\n<span class=\"kr\">function</span> <span class=\"nf\">init</span><span class=\"p\">(</span><span class=\"n\">self</span><span class=\"p\">)</span>\n\n <span class=\"kd\">local</span> <span class=\"n\">res_path</span> <span class=\"o\">=</span> <span class=\"n\">go</span><span class=\"p\">.</span><span class=\"n\">get</span><span class=\"p\">(</span><span class=\"s2\">"#mesh"</span><span class=\"p\">,</span> <span class=\"s2\">"vertices"</span><span class=\"p\">)</span>\n\n <span class=\"kd\">local</span> <span class=\"n\">positions</span> <span class=\"o\">=</span> <span class=\"p\">{</span>\n <span class=\"mi\">1</span><span class=\"p\">,</span> <span class=\"o\">-</span><span class=\"mi\">1</span><span class=\"p\">,</span> <span class=\"mi\">0</span><span class=\"p\">,</span>\n <span class=\"mi\">1</span><span class=\"p\">,</span> <span class=\"mi\">1</span><span class=\"p\">,</span> <span class=\"mi\">0</span><span class=\"p\">,</span>\n <span class=\"o\">-</span><span class=\"mi\">1</span><span class=\"p\">,</span> <span class=\"o\">-</span><span class=\"mi\">1</span><span class=\"p\">,</span> <span class=\"mi\">0</span>\n <span class=\"p\">}</span>\n\n <span class=\"kd\">local</span> <span class=\"n\">num_verts</span> <span class=\"o\">=</span> <span class=\"o\">#</span><span class=\"n\">positions</span> <span class=\"o\">/</span> <span class=\"mi\">3</span>\n\n <span class=\"c1\">-- create a new buffer</span>\n <span class=\"kd\">local</span> <span class=\"n\">buf</span> <span class=\"o\">=</span> <span class=\"n\">buffer</span><span class=\"p\">.</span><span class=\"n\">create</span><span class=\"p\">(</span><span class=\"n\">num_verts</span><span class=\"p\">,</span> <span class=\"p\">{</span>\n <span class=\"p\">{</span> <span class=\"n\">name</span> <span class=\"o\">=</span> <span class=\"n\">hash</span><span class=\"p\">(</span><span class=\"s2\">"position"</span><span class=\"p\">),</span> <span class=\"nb\">type</span><span class=\"o\">=</span><span class=\"n\">buffer</span><span class=\"p\">.</span><span class=\"n\">VALUE_TYPE_FLOAT32</span><span class=\"p\">,</span> <span class=\"n\">count</span> <span class=\"o\">=</span> <span class=\"mi\">3</span> <span class=\"p\">}</span>\n <span class=\"p\">})</span>\n\n <span class=\"kd\">local</span> <span class=\"n\">buf</span> <span class=\"o\">=</span> <span class=\"n\">resource</span><span class=\"p\">.</span><span class=\"n\">get_buffer</span><span class=\"p\">(</span><span class=\"n\">res_path</span><span class=\"p\">)</span>\n <span class=\"kd\">local</span> <span class=\"n\">stream_positions</span> <span class=\"o\">=</span> <span class=\"n\">buffer</span><span class=\"p\">.</span><span class=\"n\">get_stream</span><span class=\"p\">(</span><span class=\"n\">buf</span><span class=\"p\">,</span> <span class=\"s2\">"position"</span><span class=\"p\">)</span>\n\n <span class=\"n\">fill_stream</span><span class=\"p\">(</span><span class=\"n\">stream_positions</span><span class=\"p\">,</span> <span class=\"n\">positions</span><span class=\"p\">)</span>\n\n <span class=\"n\">resource</span><span class=\"p\">.</span><span class=\"n\">set_buffer</span><span class=\"p\">(</span><span class=\"n\">res_path</span><span class=\"p\">,</span> <span class=\"n\">buf</span><span class=\"p\">)</span>\n<span class=\"kr\">end</span>\n</code></pre></div>",
|
|
1480
|
+
"replaces": "",
|
|
1481
|
+
"error": "",
|
|
1482
|
+
"tparams": [],
|
|
1483
|
+
"members": [],
|
|
1484
|
+
"notes": [],
|
|
1485
|
+
"language": ""
|
|
1486
|
+
},
|
|
1487
|
+
{
|
|
1488
|
+
"type": "FUNCTION",
|
|
1489
|
+
"name": "resource.get_text_metrics",
|
|
1490
|
+
"brief": "gets the text metrics for a font",
|
|
1491
|
+
"description": "Gets the text metrics from a font. Rich text markup is measured using its\nvisible text and font sizes. If markup cannot be parsed, the text is measured literally.\nInline sprites reserve their specified dimensions, or one em by default.",
|
|
1492
|
+
"returnvalues": [
|
|
1493
|
+
{
|
|
1494
|
+
"name": "metrics",
|
|
1495
|
+
"doc": "measured text metrics",
|
|
1496
|
+
"types": ["resource.text_metrics"]
|
|
1497
|
+
}
|
|
1498
|
+
],
|
|
1499
|
+
"parameters": [
|
|
1500
|
+
{
|
|
1501
|
+
"name": "url",
|
|
1502
|
+
"doc": "the font to get the (unscaled) metrics from",
|
|
1503
|
+
"types": ["hash"],
|
|
1504
|
+
"is_optional": "False"
|
|
1505
|
+
},
|
|
1506
|
+
{
|
|
1507
|
+
"name": "text",
|
|
1508
|
+
"doc": "text to measure",
|
|
1509
|
+
"types": ["string"],
|
|
1510
|
+
"is_optional": "False"
|
|
1511
|
+
},
|
|
1512
|
+
{
|
|
1513
|
+
"name": "options",
|
|
1514
|
+
"doc": "optional text-metric options",
|
|
1515
|
+
"types": ["resource.text_metrics_options"],
|
|
1516
|
+
"is_optional": "True"
|
|
1517
|
+
}
|
|
1518
|
+
],
|
|
1519
|
+
"examples": "<div class=\"codehilite\"><pre><span></span><code><span class=\"kr\">function</span> <span class=\"nf\">init</span><span class=\"p\">(</span><span class=\"n\">self</span><span class=\"p\">)</span>\n <span class=\"kd\">local</span> <span class=\"n\">font</span> <span class=\"o\">=</span> <span class=\"n\">go</span><span class=\"p\">.</span><span class=\"n\">get</span><span class=\"p\">(</span><span class=\"s2\">"#label"</span><span class=\"p\">,</span> <span class=\"s2\">"font"</span><span class=\"p\">)</span>\n <span class=\"kd\">local</span> <span class=\"n\">metrics</span> <span class=\"o\">=</span> <span class=\"n\">resource</span><span class=\"p\">.</span><span class=\"n\">get_text_metrics</span><span class=\"p\">(</span><span class=\"n\">font</span><span class=\"p\">,</span> <span class=\"s2\">"The quick brown fox</span><span class=\"se\">\\n</span><span class=\"s2\"> jumps over the lazy dog"</span><span class=\"p\">)</span>\n <span class=\"n\">pprint</span><span class=\"p\">(</span><span class=\"n\">metrics</span><span class=\"p\">)</span>\n<span class=\"kr\">end</span>\n</code></pre></div>",
|
|
1520
|
+
"replaces": "",
|
|
1521
|
+
"error": "",
|
|
1522
|
+
"tparams": [],
|
|
1523
|
+
"members": [],
|
|
1524
|
+
"notes": [],
|
|
1525
|
+
"language": ""
|
|
1526
|
+
}
|
|
1527
|
+
],
|
|
1528
|
+
"info": {
|
|
1529
|
+
"namespace": "resource",
|
|
1530
|
+
"name": "Resource",
|
|
1531
|
+
"brief": "Resource API documentation",
|
|
1532
|
+
"description": "Functions and constants to access resources.",
|
|
1533
|
+
"path": "engine/gamesys/src/gamesys/scripts/script_resource.cpp",
|
|
1534
|
+
"file": "",
|
|
1535
|
+
"notes": [],
|
|
1536
|
+
"language": "Lua"
|
|
1537
|
+
},
|
|
1538
|
+
"format_version": 2
|
|
1539
|
+
}
|