@defold-typescript/types 0.26.0 → 0.28.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/api-availability.json +307 -307
- package/api-signatures.json +1311 -0
- package/api-targets.json +342 -0
- package/examples/translations.json +1984 -0
- package/fixtures/messages_doc.json +880 -0
- package/generated/versions/defold-1.12.4/gui.d.ts +43 -43
- package/generated/versions/defold-1.12.4/liveupdate.d.ts +22 -22
- package/generated/versions/defold-1.12.4/physics.d.ts +78 -75
- package/generated/versions/defold-1.12.4/render.d.ts +75 -55
- package/generated/versions/defold-1.12.4/resource.d.ts +187 -175
- package/generated/versions/defold-1.13.0/b2d.d.ts +33 -0
- package/generated/versions/defold-1.13.0/b2d_body.d.ts +676 -0
- package/generated/versions/defold-1.13.0/b2d_chain.d.ts +106 -0
- package/generated/versions/defold-1.13.0/b2d_fixture.d.ts +155 -0
- package/generated/versions/defold-1.13.0/b2d_joint.d.ts +823 -0
- package/generated/versions/defold-1.13.0/b2d_shape.d.ts +215 -0
- package/generated/versions/defold-1.13.0/b2d_world.d.ts +314 -0
- package/generated/versions/defold-1.13.0/buffer.d.ts +176 -0
- package/generated/versions/defold-1.13.0/camera.d.ts +302 -0
- package/generated/versions/defold-1.13.0/collectionfactory.d.ts +146 -0
- package/generated/versions/defold-1.13.0/collectionproxy.d.ts +71 -0
- package/generated/versions/defold-1.13.0/compute.d.ts +306 -0
- package/generated/versions/defold-1.13.0/crash.d.ts +143 -0
- package/generated/versions/defold-1.13.0/editor-vm/http.d.ts +56 -0
- package/generated/versions/defold-1.13.0/editor-vm/json.d.ts +10 -0
- package/generated/versions/defold-1.13.0/editor-vm/localization.d.ts +42 -0
- package/generated/versions/defold-1.13.0/editor-vm/tilemap_tiles.d.ts +80 -0
- package/generated/versions/defold-1.13.0/editor-vm/zip.d.ts +10 -0
- package/generated/versions/defold-1.13.0/editor-vm/zlib.d.ts +24 -0
- package/generated/versions/defold-1.13.0/editor.d.ts +1092 -0
- package/generated/versions/defold-1.13.0/factory.d.ts +123 -0
- package/generated/versions/defold-1.13.0/font.d.ts +81 -0
- package/generated/versions/defold-1.13.0/go.d.ts +1054 -0
- package/generated/versions/defold-1.13.0/graphics.d.ts +321 -0
- package/generated/versions/defold-1.13.0/gui.d.ts +2370 -0
- package/generated/versions/defold-1.13.0/html5.d.ts +53 -0
- package/generated/versions/defold-1.13.0/http.d.ts +84 -0
- package/generated/versions/defold-1.13.0/iac.d.ts +18 -0
- package/generated/versions/defold-1.13.0/iap.d.ts +60 -0
- package/generated/versions/defold-1.13.0/image.d.ts +139 -0
- package/generated/versions/defold-1.13.0/index.d.ts +48 -0
- package/generated/versions/defold-1.13.0/json.d.ts +76 -0
- package/generated/versions/defold-1.13.0/kinds/editor-script.d.ts +13 -0
- package/generated/versions/defold-1.13.0/label.d.ts +94 -0
- package/generated/versions/defold-1.13.0/liveupdate.d.ts +140 -0
- package/generated/versions/defold-1.13.0/material.d.ts +444 -0
- package/generated/versions/defold-1.13.0/model.d.ts +246 -0
- package/generated/versions/defold-1.13.0/msg.d.ts +10 -0
- package/generated/versions/defold-1.13.0/particlefx.d.ts +166 -0
- package/generated/versions/defold-1.13.0/physics.d.ts +548 -0
- package/generated/versions/defold-1.13.0/profiler.d.ts +233 -0
- package/generated/versions/defold-1.13.0/push.d.ts +66 -0
- package/generated/versions/defold-1.13.0/render.d.ts +1185 -0
- package/generated/versions/defold-1.13.0/resource.d.ts +1530 -0
- package/generated/versions/defold-1.13.0/socket.d.ts +795 -0
- package/generated/versions/defold-1.13.0/sound.d.ts +291 -0
- package/generated/versions/defold-1.13.0/sprite.d.ts +157 -0
- package/generated/versions/defold-1.13.0/sys.d.ts +695 -0
- package/generated/versions/defold-1.13.0/tilemap.d.ts +195 -0
- package/generated/versions/defold-1.13.0/timer.d.ts +114 -0
- package/generated/versions/defold-1.13.0/types.d.ts +61 -0
- package/generated/versions/defold-1.13.0/vmath.d.ts +806 -0
- package/generated/versions/defold-1.13.0/webview.d.ts +68 -0
- package/generated/versions/defold-1.13.0/window.d.ts +198 -0
- package/generated/versions/defold-1.13.0/zlib.d.ts +40 -0
- package/index.d.ts +4 -84
- package/package.json +11 -3
- package/scripts/import-defold-release.ts +18 -1
- package/src/example-store.ts +5 -0
- package/scripts/lua-types-signature-index.ts +0 -151
|
@@ -1726,49 +1726,49 @@ declare global {
|
|
|
1726
1726
|
* - `index` number index into array property (1 based)
|
|
1727
1727
|
* - `key` hash name of internal property
|
|
1728
1728
|
* @example
|
|
1729
|
-
* ```
|
|
1730
|
-
* Updates the position property on an existing node:
|
|
1731
|
-
*
|
|
1732
|
-
*
|
|
1733
|
-
* gui.set(node, "position.x", node_position.x + 128)
|
|
1734
|
-
*
|
|
1735
|
-
* Updates the rotation property on an existing node:
|
|
1736
|
-
*
|
|
1737
|
-
*
|
|
1738
|
-
*
|
|
1739
|
-
*
|
|
1740
|
-
*
|
|
1741
|
-
*
|
|
1742
|
-
*
|
|
1743
|
-
*
|
|
1744
|
-
*
|
|
1745
|
-
*
|
|
1746
|
-
*
|
|
1747
|
-
* gui.set(node, "
|
|
1748
|
-
*
|
|
1749
|
-
*
|
|
1750
|
-
*
|
|
1751
|
-
*
|
|
1752
|
-
*
|
|
1753
|
-
*
|
|
1754
|
-
*
|
|
1755
|
-
* gui.set(node, "
|
|
1756
|
-
*
|
|
1757
|
-
* gui.set(node, "
|
|
1758
|
-
*
|
|
1759
|
-
*
|
|
1760
|
-
*
|
|
1761
|
-
*
|
|
1762
|
-
*
|
|
1763
|
-
*
|
|
1764
|
-
*
|
|
1765
|
-
*
|
|
1766
|
-
*
|
|
1767
|
-
*
|
|
1768
|
-
*
|
|
1769
|
-
*
|
|
1770
|
-
*
|
|
1771
|
-
*
|
|
1729
|
+
* ```ts
|
|
1730
|
+
* // Updates the position property on an existing node:
|
|
1731
|
+
* const node = gui.get_node("my_box_node");
|
|
1732
|
+
* const node_position = gui.get(node, "position");
|
|
1733
|
+
* gui.set(node, "position.x", node_position.x + 128);
|
|
1734
|
+
*
|
|
1735
|
+
* // Updates the rotation property on an existing node:
|
|
1736
|
+
* gui.set(node, "rotation", vmath.quat_rotation_z(math.rad(45)));
|
|
1737
|
+
* // this is equivalent to:
|
|
1738
|
+
* gui.set(node, "euler.z", 45);
|
|
1739
|
+
* // or using the entire vector:
|
|
1740
|
+
* gui.set(node, "euler", vmath.vector3(0, 0, 45));
|
|
1741
|
+
* // or using the set_rotation
|
|
1742
|
+
* gui.set_rotation(node, vmath.vector3(0, 0, 45));
|
|
1743
|
+
*
|
|
1744
|
+
* // Sets various material constants for a node:
|
|
1745
|
+
* gui.set(node, "tint", vmath.vector4(1, 0, 0, 1));
|
|
1746
|
+
* // matrix4 is also supported
|
|
1747
|
+
* gui.set(node, "light_matrix", vmath.matrix4());
|
|
1748
|
+
* // update a constant in an array at position 4. the array is specified in the shader as:
|
|
1749
|
+
* // uniform vec4 tint_array[4]; // lua is 1 based, shader is 0 based
|
|
1750
|
+
* gui.set(node, "tint_array", vmath.vector4(1, 0, 0, 1), { index: 4 });
|
|
1751
|
+
* // update a matrix constant in an array at position 4. the array is specified in the shader as:
|
|
1752
|
+
* // uniform mat4 light_matrix_array[4];
|
|
1753
|
+
* gui.set(node, "light_matrix_array", vmath.matrix4(), { index: 4 });
|
|
1754
|
+
* // update a sub-element in a constant
|
|
1755
|
+
* gui.set(node, "tint.x", 1);
|
|
1756
|
+
* // update a sub-element in an array constant at position 4
|
|
1757
|
+
* gui.set(node, "tint_array.x", 1, { index: 4 });
|
|
1758
|
+
*
|
|
1759
|
+
* // Set a named property
|
|
1760
|
+
* export default defineScript({
|
|
1761
|
+
* on_message(self, message_id, message) {
|
|
1762
|
+
* if (message_id === hash("set_font")) {
|
|
1763
|
+
* gui.set(msg.url(), "fonts", message.font, { key: "my_font_name" });
|
|
1764
|
+
* gui.set_font(gui.get_node("text"), "my_font_name");
|
|
1765
|
+
* } else if (message_id === hash("set_texture")) {
|
|
1766
|
+
* gui.set(msg.url(), "textures", message.texture, { key: "my_texture" });
|
|
1767
|
+
* gui.set_texture(gui.get_node("box"), "my_texture");
|
|
1768
|
+
* gui.play_flipbook(gui.get_node("box"), "logo_256");
|
|
1769
|
+
* }
|
|
1770
|
+
* },
|
|
1771
|
+
* });
|
|
1772
1772
|
* ```
|
|
1773
1773
|
*/
|
|
1774
1774
|
function set(node: Opaque<"node"> | Url, property: string | Hash | Opaque<"constant">, value: number | Vector4 | Vector3 | Quaternion, options?: { index?: number; key?: Hash }): void;
|
|
@@ -67,11 +67,11 @@ declare global {
|
|
|
67
67
|
* @param callback - Callback after the asynchronous request completed
|
|
68
68
|
* @returns The result of the request
|
|
69
69
|
* @example
|
|
70
|
-
* ```
|
|
71
|
-
* Add multiple mounts. Higher priority takes precedence.
|
|
72
|
-
* liveupdate.add_mount("common", "zip:/path/to/common_stuff.zip", 10,
|
|
73
|
-
* liveupdate.add_mount("levelpack_1", "zip:/path/to/levels_1_to_20.zip", 20,
|
|
74
|
-
* liveupdate.add_mount("season_pack_1", "zip:/path/to/easter_pack_1.zip", 30,
|
|
70
|
+
* ```ts
|
|
71
|
+
* // Add multiple mounts. Higher priority takes precedence.
|
|
72
|
+
* liveupdate.add_mount("common", "zip:/path/to/common_stuff.zip", 10, (result) => {}); // base pack
|
|
73
|
+
* liveupdate.add_mount("levelpack_1", "zip:/path/to/levels_1_to_20.zip", 20, (result) => {}); // level pack
|
|
74
|
+
* liveupdate.add_mount("season_pack_1", "zip:/path/to/easter_pack_1.zip", 30, (result) => {}); // season pack, overriding content in the other packs
|
|
75
75
|
* ```
|
|
76
76
|
*/
|
|
77
77
|
function add_mount(name: string, uri: string, priority: number, callback: (...args: unknown[]) => unknown): number;
|
|
@@ -81,24 +81,24 @@ declare global {
|
|
|
81
81
|
*
|
|
82
82
|
* @returns Array of mounts
|
|
83
83
|
* @example
|
|
84
|
-
* ```
|
|
85
|
-
* Output the current resource mounts
|
|
86
|
-
* pprint("MOUNTS", liveupdate.get_mounts())
|
|
84
|
+
* ```ts
|
|
85
|
+
* // Output the current resource mounts
|
|
86
|
+
* pprint("MOUNTS", liveupdate.get_mounts());
|
|
87
87
|
*
|
|
88
|
-
* Give an output like:
|
|
89
|
-
* DEBUG:SCRIPT: MOUNTS,
|
|
90
|
-
* {
|
|
91
|
-
* 1 = {
|
|
92
|
-
* name = "liveupdate",
|
|
93
|
-
* uri = "zip:/device/path/to/acchives/liveupdate.zip",
|
|
94
|
-
* priority = 5
|
|
95
|
-
* },
|
|
96
|
-
* 2 = {
|
|
97
|
-
* name = "_base",
|
|
98
|
-
* uri = "archive:build/default/game.dmanifest",
|
|
99
|
-
* priority = -10
|
|
100
|
-
* }
|
|
101
|
-
* }
|
|
88
|
+
* // Give an output like:
|
|
89
|
+
* // DEBUG:SCRIPT: MOUNTS,
|
|
90
|
+
* // {
|
|
91
|
+
* // 1 = {
|
|
92
|
+
* // name = "liveupdate",
|
|
93
|
+
* // uri = "zip:/device/path/to/acchives/liveupdate.zip",
|
|
94
|
+
* // priority = 5
|
|
95
|
+
* // },
|
|
96
|
+
* // 2 = {
|
|
97
|
+
* // name = "_base",
|
|
98
|
+
* // uri = "archive:build/default/game.dmanifest",
|
|
99
|
+
* // priority = -10
|
|
100
|
+
* // }
|
|
101
|
+
* // }
|
|
102
102
|
* ```
|
|
103
103
|
*/
|
|
104
104
|
function get_mounts(): { name: string; uri: string; priority: number }[];
|
|
@@ -288,82 +288,85 @@ declare global {
|
|
|
288
288
|
* `data`
|
|
289
289
|
* table The callback value data is a table that contains event-related data. See the documentation for details on the messages.
|
|
290
290
|
* @example
|
|
291
|
-
* ```
|
|
292
|
-
*
|
|
293
|
-
* for
|
|
294
|
-
*
|
|
295
|
-
*
|
|
296
|
-
*
|
|
297
|
-
*
|
|
298
|
-
*
|
|
299
|
-
*
|
|
300
|
-
*
|
|
301
|
-
*
|
|
302
|
-
*
|
|
303
|
-
*
|
|
304
|
-
*
|
|
305
|
-
*
|
|
306
|
-
*
|
|
307
|
-
*
|
|
308
|
-
*
|
|
309
|
-
*
|
|
310
|
-
*
|
|
311
|
-
*
|
|
312
|
-
*
|
|
313
|
-
*
|
|
314
|
-
*
|
|
315
|
-
*
|
|
316
|
-
*
|
|
317
|
-
*
|
|
318
|
-
*
|
|
319
|
-
*
|
|
320
|
-
*
|
|
321
|
-
*
|
|
322
|
-
*
|
|
323
|
-
*
|
|
324
|
-
*
|
|
325
|
-
*
|
|
326
|
-
*
|
|
327
|
-
*
|
|
328
|
-
*
|
|
329
|
-
*
|
|
330
|
-
*
|
|
331
|
-
*
|
|
332
|
-
*
|
|
333
|
-
*
|
|
334
|
-
*
|
|
335
|
-
*
|
|
336
|
-
*
|
|
337
|
-
*
|
|
338
|
-
*
|
|
339
|
-
*
|
|
340
|
-
*
|
|
341
|
-
*
|
|
342
|
-
*
|
|
343
|
-
*
|
|
344
|
-
*
|
|
345
|
-
*
|
|
346
|
-
*
|
|
347
|
-
*
|
|
348
|
-
*
|
|
349
|
-
*
|
|
350
|
-
*
|
|
351
|
-
*
|
|
352
|
-
*
|
|
353
|
-
*
|
|
354
|
-
*
|
|
355
|
-
*
|
|
356
|
-
*
|
|
357
|
-
*
|
|
358
|
-
*
|
|
359
|
-
*
|
|
360
|
-
*
|
|
361
|
-
*
|
|
362
|
-
*
|
|
291
|
+
* ```ts
|
|
292
|
+
* function physics_world_listener(self, events) {
|
|
293
|
+
* for (const event of events) {
|
|
294
|
+
* const event_type = event["type"];
|
|
295
|
+
* if (event_type === hash("contact_point_event")) {
|
|
296
|
+
* pprint(event);
|
|
297
|
+
* // {
|
|
298
|
+
* // distance = 2.1490633487701,
|
|
299
|
+
* // applied_impulse = 0
|
|
300
|
+
* // a = { --[[0x113f7c6c0]]
|
|
301
|
+
* // group = hash: [box],
|
|
302
|
+
* // id = hash: [/box]
|
|
303
|
+
* // mass = 0,
|
|
304
|
+
* // normal = vmath.vector3(0.379, 0.925, -0),
|
|
305
|
+
* // position = vmath.vector3(517.337, 235.068, 0),
|
|
306
|
+
* // instance_position = vmath.vector3(480, 144, 0),
|
|
307
|
+
* // relative_velocity = vmath.vector3(-0, -0, -0),
|
|
308
|
+
* // },
|
|
309
|
+
* // b = { --[[0x113f7c840]]
|
|
310
|
+
* // group = hash: [circle],
|
|
311
|
+
* // id = hash: [/circle]
|
|
312
|
+
* // mass = 0,
|
|
313
|
+
* // normal = vmath.vector3(-0.379, -0.925, 0),
|
|
314
|
+
* // position = vmath.vector3(517.337, 235.068, 0),
|
|
315
|
+
* // instance_position = vmath.vector3(-0.0021, 0, -0.0022),
|
|
316
|
+
* // relative_velocity = vmath.vector3(0, 0, 0),
|
|
317
|
+
* // },
|
|
318
|
+
* // }
|
|
319
|
+
* } else if (event === hash("collision_event")) {
|
|
320
|
+
* pprint(event);
|
|
321
|
+
* // {
|
|
322
|
+
* // a = {
|
|
323
|
+
* // group = hash: [default],
|
|
324
|
+
* // position = vmath.vector3(183, 666, 0),
|
|
325
|
+
* // id = hash: [/go1]
|
|
326
|
+
* // },
|
|
327
|
+
* // b = {
|
|
328
|
+
* // group = hash: [default],
|
|
329
|
+
* // position = vmath.vector3(185, 704.05865478516, 0),
|
|
330
|
+
* // id = hash: [/go2]
|
|
331
|
+
* // }
|
|
332
|
+
* // }
|
|
333
|
+
* } else if (event === hash("trigger_event")) {
|
|
334
|
+
* pprint(event);
|
|
335
|
+
* // {
|
|
336
|
+
* // enter = true,
|
|
337
|
+
* // b = {
|
|
338
|
+
* // group = hash: [default],
|
|
339
|
+
* // id = hash: [/go2]
|
|
340
|
+
* // },
|
|
341
|
+
* // a = {
|
|
342
|
+
* // group = hash: [default],
|
|
343
|
+
* // id = hash: [/go1]
|
|
344
|
+
* // }
|
|
345
|
+
* // },
|
|
346
|
+
* } else if (event === hash("ray_cast_response")) {
|
|
347
|
+
* pprint(event);
|
|
348
|
+
* // {
|
|
349
|
+
* // group = hash: [default],
|
|
350
|
+
* // request_id = 0,
|
|
351
|
+
* // position = vmath.vector3(249.92222595215, 249.92222595215, 0),
|
|
352
|
+
* // fraction = 0.68759721517563,
|
|
353
|
+
* // normal = vmath.vector3(0, 1, 0),
|
|
354
|
+
* // id = hash: [/go]
|
|
355
|
+
* // }
|
|
356
|
+
* } else if (event === hash("ray_cast_missed")) {
|
|
357
|
+
* pprint(event);
|
|
358
|
+
* // {
|
|
359
|
+
* // request_id = 0
|
|
360
|
+
* // },
|
|
361
|
+
* }
|
|
362
|
+
* }
|
|
363
|
+
* }
|
|
363
364
|
*
|
|
364
|
-
*
|
|
365
|
-
*
|
|
366
|
-
*
|
|
365
|
+
* export default defineScript({
|
|
366
|
+
* init(self) {
|
|
367
|
+
* physics.set_event_listener(physics_world_listener);
|
|
368
|
+
* },
|
|
369
|
+
* });
|
|
367
370
|
* ```
|
|
368
371
|
*/
|
|
369
372
|
function set_event_listener(callback?: (self: unknown, events: unknown) => void): void;
|
|
@@ -575,66 +575,86 @@ declare global {
|
|
|
575
575
|
* @param parameters - table of buffer parameters, see the description for available keys and values
|
|
576
576
|
* @returns new render target
|
|
577
577
|
* @example
|
|
578
|
-
* ```
|
|
579
|
-
* How to create a new render target and draw to it:
|
|
580
|
-
*
|
|
581
|
-
*
|
|
582
|
-
*
|
|
583
|
-
*
|
|
584
|
-
*
|
|
585
|
-
*
|
|
586
|
-
*
|
|
587
|
-
*
|
|
588
|
-
*
|
|
589
|
-
*
|
|
590
|
-
*
|
|
591
|
-
*
|
|
592
|
-
*
|
|
593
|
-
*
|
|
594
|
-
*
|
|
595
|
-
*
|
|
578
|
+
* ```ts
|
|
579
|
+
* // How to create a new render target and draw to it:
|
|
580
|
+
* export default defineScript({
|
|
581
|
+
* init() {
|
|
582
|
+
* // render target buffer parameters
|
|
583
|
+
* const color_params = {
|
|
584
|
+
* format: graphics.TEXTURE_FORMAT_RGBA,
|
|
585
|
+
* width: render.get_window_width(),
|
|
586
|
+
* height: render.get_window_height(),
|
|
587
|
+
* min_filter: graphics.TEXTURE_FILTER_LINEAR,
|
|
588
|
+
* mag_filter: graphics.TEXTURE_FILTER_LINEAR,
|
|
589
|
+
* u_wrap: graphics.TEXTURE_WRAP_CLAMP_TO_EDGE,
|
|
590
|
+
* v_wrap: graphics.TEXTURE_WRAP_CLAMP_TO_EDGE,
|
|
591
|
+
* };
|
|
592
|
+
* const depth_params = {
|
|
593
|
+
* format: graphics.TEXTURE_FORMAT_DEPTH,
|
|
594
|
+
* width: render.get_window_width(),
|
|
595
|
+
* height: render.get_window_height(),
|
|
596
|
+
* u_wrap: graphics.TEXTURE_WRAP_CLAMP_TO_EDGE,
|
|
597
|
+
* v_wrap: graphics.TEXTURE_WRAP_CLAMP_TO_EDGE,
|
|
598
|
+
* };
|
|
599
|
+
* return {
|
|
600
|
+
* my_render_target: render.render_target({
|
|
601
|
+
* [graphics.BUFFER_TYPE_COLOR0_BIT]: color_params,
|
|
602
|
+
* [graphics.BUFFER_TYPE_DEPTH_BIT]: depth_params,
|
|
603
|
+
* }),
|
|
604
|
+
* };
|
|
605
|
+
* },
|
|
596
606
|
*
|
|
597
|
-
*
|
|
598
|
-
*
|
|
599
|
-
* render.set_render_target(self.my_render_target)
|
|
607
|
+
* update(self, dt) {
|
|
608
|
+
* // enable target so all drawing is done to it
|
|
609
|
+
* render.set_render_target(self.my_render_target);
|
|
600
610
|
*
|
|
601
|
-
*
|
|
602
|
-
* render.draw(self.my_pred)
|
|
603
|
-
*
|
|
611
|
+
* // draw a predicate to the render target
|
|
612
|
+
* render.draw(self.my_pred);
|
|
613
|
+
* },
|
|
614
|
+
* });
|
|
604
615
|
*
|
|
605
|
-
* How to create a render target with multiple outputs:
|
|
606
|
-
*
|
|
607
|
-
*
|
|
608
|
-
*
|
|
609
|
-
*
|
|
610
|
-
*
|
|
611
|
-
*
|
|
612
|
-
*
|
|
613
|
-
*
|
|
614
|
-
*
|
|
615
|
-
*
|
|
616
|
-
*
|
|
617
|
-
*
|
|
618
|
-
*
|
|
619
|
-
*
|
|
620
|
-
*
|
|
621
|
-
*
|
|
622
|
-
*
|
|
623
|
-
*
|
|
624
|
-
*
|
|
625
|
-
*
|
|
626
|
-
*
|
|
627
|
-
* [graphics.BUFFER_TYPE_COLOR1_BIT] = color_params_rgba,
|
|
628
|
-
* [graphics.BUFFER_TYPE_COLOR2_BIT] = color_params_float, })
|
|
629
|
-
* end
|
|
616
|
+
* // How to create a render target with multiple outputs:
|
|
617
|
+
* export default defineScript({
|
|
618
|
+
* init() {
|
|
619
|
+
* // render target buffer parameters
|
|
620
|
+
* const color_params_rgba = {
|
|
621
|
+
* format: graphics.TEXTURE_FORMAT_RGBA,
|
|
622
|
+
* width: render.get_window_width(),
|
|
623
|
+
* height: render.get_window_height(),
|
|
624
|
+
* min_filter: graphics.TEXTURE_FILTER_LINEAR,
|
|
625
|
+
* mag_filter: graphics.TEXTURE_FILTER_LINEAR,
|
|
626
|
+
* u_wrap: graphics.TEXTURE_WRAP_CLAMP_TO_EDGE,
|
|
627
|
+
* v_wrap: graphics.TEXTURE_WRAP_CLAMP_TO_EDGE,
|
|
628
|
+
* };
|
|
629
|
+
* const color_params_float = {
|
|
630
|
+
* format: graphics.TEXTURE_FORMAT_RG32F,
|
|
631
|
+
* width: render.get_window_width(),
|
|
632
|
+
* height: render.get_window_height(),
|
|
633
|
+
* min_filter: graphics.TEXTURE_FILTER_LINEAR,
|
|
634
|
+
* mag_filter: graphics.TEXTURE_FILTER_LINEAR,
|
|
635
|
+
* u_wrap: graphics.TEXTURE_WRAP_CLAMP_TO_EDGE,
|
|
636
|
+
* v_wrap: graphics.TEXTURE_WRAP_CLAMP_TO_EDGE,
|
|
637
|
+
* };
|
|
630
638
|
*
|
|
631
|
-
*
|
|
632
|
-
*
|
|
633
|
-
*
|
|
639
|
+
* // Create a render target with three color attachments
|
|
640
|
+
* // Note: No depth buffer is attached here
|
|
641
|
+
* return {
|
|
642
|
+
* my_render_target: render.render_target({
|
|
643
|
+
* [graphics.BUFFER_TYPE_COLOR0_BIT]: color_params_rgba,
|
|
644
|
+
* [graphics.BUFFER_TYPE_COLOR1_BIT]: color_params_rgba,
|
|
645
|
+
* [graphics.BUFFER_TYPE_COLOR2_BIT]: color_params_float,
|
|
646
|
+
* }),
|
|
647
|
+
* };
|
|
648
|
+
* },
|
|
634
649
|
*
|
|
635
|
-
*
|
|
636
|
-
*
|
|
637
|
-
*
|
|
650
|
+
* update(self, dt) {
|
|
651
|
+
* // enable target so all drawing is done to it
|
|
652
|
+
* render.enable_render_target(self.my_render_target);
|
|
653
|
+
*
|
|
654
|
+
* // draw a predicate to the render target
|
|
655
|
+
* render.draw(self.my_pred);
|
|
656
|
+
* },
|
|
657
|
+
* });
|
|
638
658
|
* ```
|
|
639
659
|
*/
|
|
640
660
|
function render_target(name: string, parameters: Record<string | number, unknown>): Opaque<"render_target">;
|