|
1 | 1 | import { ChangeDetectionStrategy, Component, CUSTOM_ELEMENTS_SCHEMA, signal } from '@angular/core'; |
2 | 2 | import { injectBeforeRender } from 'angular-three'; |
3 | | -import { NgtrCuboidCollider, NgtrPhysics, NgtrRigidBody } from 'angular-three-rapier'; |
| 3 | +import { NgtrCuboidCollider, NgtrRigidBody } from 'angular-three-rapier'; |
4 | 4 | import { NgtsPerspectiveCamera } from 'angular-three-soba/cameras'; |
5 | | -import { NgtsOrbitControls } from 'angular-three-soba/controls'; |
6 | 5 |
|
7 | 6 | @Component({ |
| 7 | + selector: 'app-rapier-basic', |
8 | 8 | template: ` |
9 | | - <ngts-perspective-camera [options]="{ makeDefault: true, position: [5, 5, 5] }" /> |
| 9 | + <ngt-object3D rigidBody [options]="{ colliders: 'hull' }" [position]="[0, 5, 0]"> |
| 10 | + <ngt-mesh> |
| 11 | + <ngt-torus-geometry /> |
| 12 | + </ngt-mesh> |
| 13 | + </ngt-object3D> |
10 | 14 |
|
11 | | - <ngtr-physics [options]="{ debug: true }"> |
12 | | - <ng-template> |
13 | | - <ngt-object3D rigidBody [options]="{ colliders: 'hull' }" [position]="[0, 5, 0]"> |
14 | | - <ngt-mesh> |
15 | | - <ngt-torus-geometry /> |
16 | | - </ngt-mesh> |
17 | | - </ngt-object3D> |
18 | | -
|
19 | | - @if (currentCollider() === 1) { |
20 | | - <ngt-object3D cuboidCollider [args]="[1, 0.5, 1]" (collisionExit)="currentCollider.set(2)" /> |
21 | | - } @else if (currentCollider() === 2) { |
22 | | - <ngt-object3D |
23 | | - cuboidCollider |
24 | | - [position]="[0, -1, 0]" |
25 | | - [args]="[3, 0.5, 3]" |
26 | | - (collisionExit)="currentCollider.set(3)" |
27 | | - /> |
28 | | - } @else if (currentCollider() === 3) { |
29 | | - <ngt-object3D |
30 | | - cuboidCollider |
31 | | - [position]="[0, -3, 0]" |
32 | | - [args]="[6, 0.5, 6]" |
33 | | - (collisionExit)="currentCollider.set(4)" |
34 | | - /> |
35 | | - } @else { |
36 | | - <ngt-object3D cuboidCollider [position]="[0, -6, 0]" [args]="[20, 0.5, 20]" /> |
37 | | - } |
38 | | - </ng-template> |
39 | | - </ngtr-physics> |
40 | | -
|
41 | | - <ngts-orbit-controls /> |
| 15 | + @if (currentCollider() === 1) { |
| 16 | + <ngt-object3D cuboidCollider [args]="[1, 0.5, 1]" (collisionExit)="currentCollider.set(2)" /> |
| 17 | + } @else if (currentCollider() === 2) { |
| 18 | + <ngt-object3D |
| 19 | + cuboidCollider |
| 20 | + [position]="[0, -1, 0]" |
| 21 | + [args]="[3, 0.5, 3]" |
| 22 | + (collisionExit)="currentCollider.set(3)" |
| 23 | + /> |
| 24 | + } @else if (currentCollider() === 3) { |
| 25 | + <ngt-object3D |
| 26 | + cuboidCollider |
| 27 | + [position]="[0, -3, 0]" |
| 28 | + [args]="[6, 0.5, 6]" |
| 29 | + (collisionExit)="currentCollider.set(4)" |
| 30 | + /> |
| 31 | + } @else { |
| 32 | + <ngt-object3D cuboidCollider [position]="[0, -6, 0]" [args]="[20, 0.5, 20]" /> |
| 33 | + } |
42 | 34 | `, |
43 | 35 | schemas: [CUSTOM_ELEMENTS_SCHEMA], |
44 | 36 | changeDetection: ChangeDetectionStrategy.OnPush, |
45 | 37 | host: { class: 'experience-basic-rapier' }, |
46 | | - imports: [NgtrPhysics, NgtrRigidBody, NgtrCuboidCollider, NgtsOrbitControls, NgtsPerspectiveCamera], |
| 38 | + imports: [NgtrRigidBody, NgtrCuboidCollider, NgtsPerspectiveCamera], |
47 | 39 | }) |
48 | | -export class Basic { |
| 40 | +export default class Basic { |
49 | 41 | protected currentCollider = signal(1); |
50 | 42 |
|
51 | 43 | constructor() { |
|
0 commit comments