lineOfSightTest()
是 Yuka js 库中 GameEntity 类的方法之一。该方法用于检测两个实体之间是否存在相互可见的线。
lineOfSightTest( entity: GameEntity, options?: object ): boolean
entity
(必需):要检测可见性的目标实体。options
(可选):一个包含可选参数的对象。ignoreSelf
:一个布尔值,表示是否忽略当前实体的可见性。默认值为 true
。ignoreTarget
:一个布尔值,表示是否忽略目标实体的可见性。默认值为 false
。true
。false
。import { GameEntity } from 'yuka';
const entity1 = new GameEntity();
const entity2 = new GameEntity();
entity1.position.set( 0, 0, 0 );
entity2.position.set( 1, 1, 1 );
const lineOfSightExists = entity1.lineOfSightTest( entity2 ); // true
import { GameEntity } from 'yuka';
const entity1 = new GameEntity();
const entity2 = new GameEntity();
entity1.position.set( 0, 0, 0 );
entity2.position.set( 1, 1, 1 );
const lineOfSightExists = entity1.lineOfSightTest( entity2, { ignoreSelf: false, ignoreTarget: true } ); // false
lineOfSightTest()
方法只检测两个实体之间是否存在相互可见的线,不会考虑其他因素,例如阻挡物等。应该在使用前考虑是否适合。