Skip to content

Commit

Permalink
Wire up physics, debug lines, help grid
Browse files Browse the repository at this point in the history
  • Loading branch information
Gugustinette committed May 15, 2024
1 parent 9584d07 commit 2db655b
Show file tree
Hide file tree
Showing 31 changed files with 849 additions and 181 deletions.
6 changes: 4 additions & 2 deletions apps/playground-2d/src/classes/MySquare.ts
Original file line number Diff line number Diff line change
@@ -1,8 +1,10 @@
import type { FScene2d } from '@fibbojs/2d'
import { FSquare } from '@fibbojs/2d'

export default class MySquare extends FSquare {
constructor() {
super()
constructor(scene: FScene2d) {
super(scene)
this.initRigidBody()
}

onFrame(delta: number) {
Expand Down
2 changes: 1 addition & 1 deletion apps/playground-2d/src/main.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,5 +4,5 @@ import MySquare from './classes/MySquare'

const scene = new FScene2d()

const square = new MySquare()
const square = new MySquare(scene)
scene.addComponent(square)
3 changes: 3 additions & 0 deletions docs/.vitepress/config.ts
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,9 @@ export default defineConfig({
{ text: 'Polygons Classes', items: [
{ text: 'FSquare', link: '/api/classes/2d_src.FSquare' },
] },
{ text: 'Enumerations', items: [
{ text: 'F2dShapes', link: '/api/enums/2d_src.F2dShapes' },
] },
] },
{ text: '3D', link: '/api/modules/3d_src', collapsed: true, items: [
{ text: 'Camera Classes', items: [
Expand Down
145 changes: 136 additions & 9 deletions docs/api/classes/2d_src.FComponent2d.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,20 +24,34 @@ The base class for all 2D components in FibboJS.

### Methods

- [initCollider](2d_src.FComponent2d.md#initcollider)
- [initRigidBody](2d_src.FComponent2d.md#initrigidbody)
- [onFrame](2d_src.FComponent2d.md#onframe)
- [setPosition](2d_src.FComponent2d.md#setposition)
- [setRotation](2d_src.FComponent2d.md#setrotation)
- [setScale](2d_src.FComponent2d.md#setscale)

### Properties

- [collider](2d_src.FComponent2d.md#collider)
- [container](2d_src.FComponent2d.md#container)
- [position](2d_src.FComponent2d.md#position)
- [rigidBody](2d_src.FComponent2d.md#rigidbody)
- [rotation](2d_src.FComponent2d.md#rotation)
- [scale](2d_src.FComponent2d.md#scale)
- [scene](2d_src.FComponent2d.md#scene)

## Constructors

### constructor

**new FComponent2d**(): [`FComponent2d`](2d_src.FComponent2d.md)
**new FComponent2d**(`scene`): [`FComponent2d`](2d_src.FComponent2d.md)

#### Parameters

| Name | Type |
| :------ | :------ |
| `scene` | [`FScene2d`](2d_src.FScene2d.md) |

#### Returns

Expand All @@ -49,10 +63,64 @@ FComponent.constructor

#### Defined in

[packages/2d/src/FComponent2d.ts:14](https://github.com/fibbojs/fibbo/blob/b3efc33731eef5a3996c7b1f098740f83fa3ec10/packages/2d/src/FComponent2d.ts#L14)
[packages/2d/src/FComponent2d.ts:27](https://github.com/fibbojs/fibbo/blob/9584d07c63ad13d7f8125433d0b79fffa747f5c1/packages/2d/src/FComponent2d.ts#L27)

## Methods

### initCollider

**initCollider**(`position?`, `scale?`, `shape?`): `void`

#### Parameters

| Name | Type |
| :------ | :------ |
| `position?` | `PointData` |
| `scale?` | `PointData` |
| `shape?` | [`F2dShapes`](../enums/2d_src.F2dShapes.md) |

#### Returns

`void`

**`Description`**

Only init a collider for the model, without a rigid body.
This is useful for static objects.

#### Defined in

[packages/2d/src/FComponent2d.ts:142](https://github.com/fibbojs/fibbo/blob/9584d07c63ad13d7f8125433d0b79fffa747f5c1/packages/2d/src/FComponent2d.ts#L142)

___

### initRigidBody

**initRigidBody**(`position?`, `scale?`, `rotation?`, `shape?`): `void`

#### Parameters

| Name | Type |
| :------ | :------ |
| `position?` | `PointData` |
| `scale?` | `PointData` |
| `rotation?` | `number` |
| `shape?` | [`F2dShapes`](../enums/2d_src.F2dShapes.md) |

#### Returns

`void`

**`Description`**

Init a rigid body for the model.

#### Defined in

[packages/2d/src/FComponent2d.ts:80](https://github.com/fibbojs/fibbo/blob/9584d07c63ad13d7f8125433d0b79fffa747f5c1/packages/2d/src/FComponent2d.ts#L80)

___

### onFrame

**onFrame**(`_delta`): `void`
Expand All @@ -73,7 +141,7 @@ FComponent.onFrame

#### Defined in

[packages/2d/src/FComponent2d.ts:19](https://github.com/fibbojs/fibbo/blob/b3efc33731eef5a3996c7b1f098740f83fa3ec10/packages/2d/src/FComponent2d.ts#L19)
[packages/2d/src/FComponent2d.ts:37](https://github.com/fibbojs/fibbo/blob/9584d07c63ad13d7f8125433d0b79fffa747f5c1/packages/2d/src/FComponent2d.ts#L37)

___

Expand All @@ -98,20 +166,19 @@ Set the position of the component.

#### Defined in

[packages/2d/src/FComponent2d.ts:24](https://github.com/fibbojs/fibbo/blob/b3efc33731eef5a3996c7b1f098740f83fa3ec10/packages/2d/src/FComponent2d.ts#L24)
[packages/2d/src/FComponent2d.ts:56](https://github.com/fibbojs/fibbo/blob/9584d07c63ad13d7f8125433d0b79fffa747f5c1/packages/2d/src/FComponent2d.ts#L56)

___

### setRotation

**setRotation**(`x`, `y`): `void`
**setRotation**(`x`): `void`

#### Parameters

| Name | Type |
| :------ | :------ |
| `x` | `number` |
| `y` | `number` |

#### Returns

Expand All @@ -123,7 +190,7 @@ Set the rotation of the component.

#### Defined in

[packages/2d/src/FComponent2d.ts:34](https://github.com/fibbojs/fibbo/blob/b3efc33731eef5a3996c7b1f098740f83fa3ec10/packages/2d/src/FComponent2d.ts#L34)
[packages/2d/src/FComponent2d.ts:72](https://github.com/fibbojs/fibbo/blob/9584d07c63ad13d7f8125433d0b79fffa747f5c1/packages/2d/src/FComponent2d.ts#L72)

___

Expand All @@ -148,10 +215,20 @@ Set the scale of the component.

#### Defined in

[packages/2d/src/FComponent2d.ts:29](https://github.com/fibbojs/fibbo/blob/b3efc33731eef5a3996c7b1f098740f83fa3ec10/packages/2d/src/FComponent2d.ts#L29)
[packages/2d/src/FComponent2d.ts:64](https://github.com/fibbojs/fibbo/blob/9584d07c63ad13d7f8125433d0b79fffa747f5c1/packages/2d/src/FComponent2d.ts#L64)

## Properties

### collider

`Optional` **collider**: `Collider`

#### Defined in

[packages/2d/src/FComponent2d.ts:25](https://github.com/fibbojs/fibbo/blob/9584d07c63ad13d7f8125433d0b79fffa747f5c1/packages/2d/src/FComponent2d.ts#L25)

___

### container

**container**: `Container`\<`ContainerChild`\>
Expand All @@ -160,4 +237,54 @@ container is the PIXI container that holds the square.

#### Defined in

[packages/2d/src/FComponent2d.ts:12](https://github.com/fibbojs/fibbo/blob/b3efc33731eef5a3996c7b1f098740f83fa3ec10/packages/2d/src/FComponent2d.ts#L12)
[packages/2d/src/FComponent2d.ts:19](https://github.com/fibbojs/fibbo/blob/9584d07c63ad13d7f8125433d0b79fffa747f5c1/packages/2d/src/FComponent2d.ts#L19)

___

### position

**position**: `PointData`

#### Defined in

[packages/2d/src/FComponent2d.ts:20](https://github.com/fibbojs/fibbo/blob/9584d07c63ad13d7f8125433d0b79fffa747f5c1/packages/2d/src/FComponent2d.ts#L20)

___

### rigidBody

`Optional` **rigidBody**: `RigidBody`

#### Defined in

[packages/2d/src/FComponent2d.ts:24](https://github.com/fibbojs/fibbo/blob/9584d07c63ad13d7f8125433d0b79fffa747f5c1/packages/2d/src/FComponent2d.ts#L24)

___

### rotation

**rotation**: `number`

#### Defined in

[packages/2d/src/FComponent2d.ts:22](https://github.com/fibbojs/fibbo/blob/9584d07c63ad13d7f8125433d0b79fffa747f5c1/packages/2d/src/FComponent2d.ts#L22)

___

### scale

**scale**: `PointData`

#### Defined in

[packages/2d/src/FComponent2d.ts:21](https://github.com/fibbojs/fibbo/blob/9584d07c63ad13d7f8125433d0b79fffa747f5c1/packages/2d/src/FComponent2d.ts#L21)

___

### scene

**scene**: [`FScene2d`](2d_src.FScene2d.md)

#### Defined in

[packages/2d/src/FComponent2d.ts:15](https://github.com/fibbojs/fibbo/blob/9584d07c63ad13d7f8125433d0b79fffa747f5c1/packages/2d/src/FComponent2d.ts#L15)
Loading

0 comments on commit 2db655b

Please sign in to comment.