@eva/plugin-renderer-tiling-sprite 2.0.1-beta.3 → 2.0.1-beta.30

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.
@@ -38,19 +38,69 @@ function __awaiter(thisArg, _arguments, P, generator) {
38
38
  });
39
39
  }
40
40
 
41
+ /**
42
+ * 平铺精灵组件
43
+ *
44
+ * TilingSprite 组件用于创建可平铺重复的纹理,支持无限滚动效果。
45
+ * 纹理会在指定区域内重复平铺,并可以设置平铺的缩放和偏移,
46
+ * 适用于背景滚动、地面贴图、水面波纹等需要重复纹理的场景。
47
+ *
48
+ * 主要功能:
49
+ * - 纹理平铺重复
50
+ * - 支持平铺缩放
51
+ * - 支持平铺偏移(实现滚动效果)
52
+ * - 性能优化(只渲染可见区域)
53
+ *
54
+ * @example
55
+ * ```typescript
56
+ * // 创建滚动背景
57
+ * const background = new GameObject('background');
58
+ * background.addComponent(new TilingSprite({
59
+ * resource: 'bgTile', // 平铺纹理资源
60
+ * tileScale: { x: 1, y: 1 }, // 平铺缩放
61
+ * tilePosition: { x: 0, y: 0 } // 平铺偏移
62
+ * }));
63
+ * background.transform.size = { width: 800, height: 600 };
64
+ *
65
+ * // 实现无限滚动
66
+ * const tilingSprite = background.getComponent('TilingSprite');
67
+ * let offset = 0;
68
+ * setInterval(() => {
69
+ * offset += 1;
70
+ * tilingSprite.tilePosition = { x: offset, y: 0 };
71
+ * }, 16);
72
+ *
73
+ * // 创建水面效果
74
+ * const water = new GameObject('water');
75
+ * water.addComponent(new TilingSprite({
76
+ * resource: 'waterTile',
77
+ * tileScale: { x: 2, y: 2 } // 放大 2 倍平铺
78
+ * }));
79
+ * ```
80
+ */
41
81
  class TilingSprite$2 extends eva_js.Component {
42
82
  constructor() {
43
83
  super(...arguments);
84
+ /** 平铺纹理资源名称 */
44
85
  this.resource = '';
86
+ /** 平铺缩放比例 */
45
87
  this.tileScale = {
46
88
  x: 1,
47
89
  y: 1,
48
90
  };
91
+ /** 平铺位置偏移(用于实现滚动效果) */
49
92
  this.tilePosition = {
50
93
  x: 0,
51
94
  y: 0,
52
95
  };
53
96
  }
97
+ /**
98
+ * 初始化组件
99
+ * @param obj - 初始化参数
100
+ * @param obj.resource - 纹理资源名称
101
+ * @param obj.tileScale - 平铺缩放
102
+ * @param obj.tilePosition - 平铺偏移
103
+ */
54
104
  init(obj) {
55
105
  if (obj) {
56
106
  this.resource = obj.resource;
@@ -59,6 +109,7 @@ class TilingSprite$2 extends eva_js.Component {
59
109
  }
60
110
  }
61
111
  }
112
+ /** 组件名称 */
62
113
  TilingSprite$2.componentName = 'TilingSprite';
63
114
  __decorate([
64
115
  inspectorDecorator.type('string')
@@ -7,11 +7,62 @@ import { RendererManager } from '@eva/plugin-renderer';
7
7
  import { RendererSystem } from '@eva/plugin-renderer';
8
8
  import { TilingSprite as TilingSprite_2 } from '@eva/renderer-adapter';
9
9
 
10
+ /**
11
+ * 平铺精灵组件
12
+ *
13
+ * TilingSprite 组件用于创建可平铺重复的纹理,支持无限滚动效果。
14
+ * 纹理会在指定区域内重复平铺,并可以设置平铺的缩放和偏移,
15
+ * 适用于背景滚动、地面贴图、水面波纹等需要重复纹理的场景。
16
+ *
17
+ * 主要功能:
18
+ * - 纹理平铺重复
19
+ * - 支持平铺缩放
20
+ * - 支持平铺偏移(实现滚动效果)
21
+ * - 性能优化(只渲染可见区域)
22
+ *
23
+ * @example
24
+ * ```typescript
25
+ * // 创建滚动背景
26
+ * const background = new GameObject('background');
27
+ * background.addComponent(new TilingSprite({
28
+ * resource: 'bgTile', // 平铺纹理资源
29
+ * tileScale: { x: 1, y: 1 }, // 平铺缩放
30
+ * tilePosition: { x: 0, y: 0 } // 平铺偏移
31
+ * }));
32
+ * background.transform.size = { width: 800, height: 600 };
33
+ *
34
+ * // 实现无限滚动
35
+ * const tilingSprite = background.getComponent('TilingSprite');
36
+ * let offset = 0;
37
+ * setInterval(() => {
38
+ * offset += 1;
39
+ * tilingSprite.tilePosition = { x: offset, y: 0 };
40
+ * }, 16);
41
+ *
42
+ * // 创建水面效果
43
+ * const water = new GameObject('water');
44
+ * water.addComponent(new TilingSprite({
45
+ * resource: 'waterTile',
46
+ * tileScale: { x: 2, y: 2 } // 放大 2 倍平铺
47
+ * }));
48
+ * ```
49
+ */
10
50
  export declare class TilingSprite extends Component<TilingSpriteParams> {
51
+ /** 组件名称 */
11
52
  static componentName: string;
53
+ /** 平铺纹理资源名称 */
12
54
  resource: string;
55
+ /** 平铺缩放比例 */
13
56
  tileScale: TilingSpriteParams['tileScale'];
57
+ /** 平铺位置偏移(用于实现滚动效果) */
14
58
  tilePosition: TilingSpriteParams['tilePosition'];
59
+ /**
60
+ * 初始化组件
61
+ * @param obj - 初始化参数
62
+ * @param obj.resource - 纹理资源名称
63
+ * @param obj.tileScale - 平铺缩放
64
+ * @param obj.tilePosition - 平铺偏移
65
+ */
15
66
  init(obj?: TilingSpriteParams): void;
16
67
  }
17
68
 
@@ -34,19 +34,69 @@ function __awaiter(thisArg, _arguments, P, generator) {
34
34
  });
35
35
  }
36
36
 
37
+ /**
38
+ * 平铺精灵组件
39
+ *
40
+ * TilingSprite 组件用于创建可平铺重复的纹理,支持无限滚动效果。
41
+ * 纹理会在指定区域内重复平铺,并可以设置平铺的缩放和偏移,
42
+ * 适用于背景滚动、地面贴图、水面波纹等需要重复纹理的场景。
43
+ *
44
+ * 主要功能:
45
+ * - 纹理平铺重复
46
+ * - 支持平铺缩放
47
+ * - 支持平铺偏移(实现滚动效果)
48
+ * - 性能优化(只渲染可见区域)
49
+ *
50
+ * @example
51
+ * ```typescript
52
+ * // 创建滚动背景
53
+ * const background = new GameObject('background');
54
+ * background.addComponent(new TilingSprite({
55
+ * resource: 'bgTile', // 平铺纹理资源
56
+ * tileScale: { x: 1, y: 1 }, // 平铺缩放
57
+ * tilePosition: { x: 0, y: 0 } // 平铺偏移
58
+ * }));
59
+ * background.transform.size = { width: 800, height: 600 };
60
+ *
61
+ * // 实现无限滚动
62
+ * const tilingSprite = background.getComponent('TilingSprite');
63
+ * let offset = 0;
64
+ * setInterval(() => {
65
+ * offset += 1;
66
+ * tilingSprite.tilePosition = { x: offset, y: 0 };
67
+ * }, 16);
68
+ *
69
+ * // 创建水面效果
70
+ * const water = new GameObject('water');
71
+ * water.addComponent(new TilingSprite({
72
+ * resource: 'waterTile',
73
+ * tileScale: { x: 2, y: 2 } // 放大 2 倍平铺
74
+ * }));
75
+ * ```
76
+ */
37
77
  class TilingSprite$2 extends Component {
38
78
  constructor() {
39
79
  super(...arguments);
80
+ /** 平铺纹理资源名称 */
40
81
  this.resource = '';
82
+ /** 平铺缩放比例 */
41
83
  this.tileScale = {
42
84
  x: 1,
43
85
  y: 1,
44
86
  };
87
+ /** 平铺位置偏移(用于实现滚动效果) */
45
88
  this.tilePosition = {
46
89
  x: 0,
47
90
  y: 0,
48
91
  };
49
92
  }
93
+ /**
94
+ * 初始化组件
95
+ * @param obj - 初始化参数
96
+ * @param obj.resource - 纹理资源名称
97
+ * @param obj.tileScale - 平铺缩放
98
+ * @param obj.tilePosition - 平铺偏移
99
+ */
50
100
  init(obj) {
51
101
  if (obj) {
52
102
  this.resource = obj.resource;
@@ -55,6 +105,7 @@ class TilingSprite$2 extends Component {
55
105
  }
56
106
  }
57
107
  }
108
+ /** 组件名称 */
58
109
  TilingSprite$2.componentName = 'TilingSprite';
59
110
  __decorate([
60
111
  type('string')
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@eva/plugin-renderer-tiling-sprite",
3
- "version": "2.0.1-beta.3",
3
+ "version": "2.0.1-beta.30",
4
4
  "description": "@eva/plugin-renderer-tiling-sprite",
5
5
  "main": "index.js",
6
6
  "module": "dist/plugin-renderer-tiling-sprite.esm.js",
@@ -19,8 +19,8 @@
19
19
  "homepage": "https://eva.js.org",
20
20
  "dependencies": {
21
21
  "@eva/inspector-decorator": "^0.0.5",
22
- "@eva/plugin-renderer": "2.0.1-beta.3",
23
- "@eva/renderer-adapter": "2.0.1-beta.3",
24
- "@eva/eva.js": "2.0.1-beta.3"
22
+ "@eva/plugin-renderer": "2.0.1-beta.30",
23
+ "@eva/renderer-adapter": "2.0.1-beta.30",
24
+ "@eva/eva.js": "2.0.1-beta.30"
25
25
  }
26
26
  }