RedGPU API - v3.0.0-Alpha
    Preparing search index...

    Class SpriteSheet2D

    2D 스프라이트 시트 애니메이션 클래스

    SpriteSheet2D는 2D 게임에서 캐릭터나 오브젝트의 애니메이션을 위한 클래스입니다. 하나의 텍스처에 격자 형태로 배열된 여러 프레임을 시간에 따라 순차적으로 표시하여 부드러운 2D 애니메이션을 생성합니다. 텍스처의 세그먼트 크기에 따라 자동으로 렌더링 크기가 조정됩니다.

    아래는 SpriteSheet2D의 구조와 동작을 이해하는 데 도움이 되는 추가 샘플 예제 목록입니다.

    Hierarchy

    • BaseSpriteSheet2D
      • SpriteSheet2D
    Index

    Constructors

    Properties

    _material: any
    animationInfo: {
        animationsList: GLTFParsedSingleClip[];
        jointBuffer: IndexBuffer;
        morphInfo: MorphInfo_GLTF;
        skinInfo: ParsedSkinInfo_GLTF;
        weightBuffer: VertexBuffer;
    } = ...
    castShadow: boolean = false

    그림자 캐스팅 여부

    currentIndex: number

    현재 프레임 인덱스

    dirtyOpacity: boolean = true
    dirtyPipeline: boolean = true
    dirtyTransform: boolean = true
    disableJitter: boolean
    displacementTexture: BitmapTexture

    메시의 디스플레이스먼트 텍스처

    gltfLoaderInfo: GLTFLoader
    gpuRenderInfo: VertexGPURenderInfo
    localMatrix: mat4 = ...
    meshType: string
    modelMatrix: mat4 = ...

    이 객체의 모델 행렬입니다. 위치, 회전, 스케일 변환에 사용됩니다.

    normalModelMatrix: mat4 = ...
    receiveShadow: boolean
    rotation: number & Float32Array<ArrayBufferLike>
    rotationZ: number
    segmentH: number

    세그먼트 높이

    segmentW: number

    세그먼트 너비

    totalFrame: number

    총 프레임 수

    useDisplacementTexture: boolean

    Accessors

    • get blendMode(): string

      Returns string

    • set blendMode(
          value:
              | "SUBTRACT"
              | "NORMAL"
              | "MULTIPLY"
              | "LIGHTEN"
              | "SCREEN"
              | "LINEAR_DODGE"
              | "DIFFERENCE"
              | "EXCLUSION"
              | Material.BLEND_MODE,
      ): void

      Parameters

      • value:
            | "SUBTRACT"
            | "NORMAL"
            | "MULTIPLY"
            | "LIGHTEN"
            | "SCREEN"
            | "LINEAR_DODGE"
            | "DIFFERENCE"
            | "EXCLUSION"
            | Material.BLEND_MODE

      Returns void

    • get drawDebugger(): DrawDebuggerMesh

      Returns DrawDebuggerMesh

    • get enableDebugger(): boolean

      Returns boolean

    • set enableDebugger(value: boolean): void

      Parameters

      • value: boolean

      Returns void

    • get gpuDevice(): GPUDevice

      Retrieves the GPU device associated with the current instance.

      Returns GPUDevice

      The GPU device.

    • get ignoreFrustumCulling(): boolean

      Returns boolean

    • set ignoreFrustumCulling(value: boolean): void

      Parameters

      • value: boolean

      Returns void

    • get vertexStateBuffers(): GPUVertexBufferLayout[]

      Returns GPUVertexBufferLayout[]

    Methods

    • Fires the dirty listeners list.

      Parameters

      • OptionalresetList: boolean = false

        Indicates whether to reset the dirty listeners list after firing.

      Returns void

    • Parameters

      • eventName: string
      • callback: Function

      Returns void

    • 특정 Mesh가 현재 컨테이너에 포함되어 있는지 확인합니다.

      Parameters

      • child: Mesh

        확인할 자식 객체

      Returns boolean

      포함 여부

    • Protected

      SpriteSheet2D 전용 커스텀 버텍스 셰이더 모듈을 생성합니다.

      2D 스프라이트 시트 렌더링에 최적화된 버텍스 셰이더를 생성하며, UV 좌표 계산과 프레임 인덱싱 로직이 포함되어 있습니다.

      Returns GPUShaderModule

      생성된 버텍스 셰이더 모듈 정보

    • Parameters

      • VERTEX_SHADER_MODULE_NAME: any
      • SHADER_INFO: any
      • UNIFORM_STRUCT_BASIC: any
      • vertexModuleSource: any

      Returns GPUShaderModule

    • 지정된 인덱스의 자식 Mesh를 반환합니다.

      Parameters

      • index: number

        조회할 위치

      Returns Mesh

      해당 위치의 자식 객체 또는 undefined

    • 특정 자식 객체의 인덱스를 반환합니다.

      Parameters

      • child: Mesh

        조회할 자식 객체

      Returns number

      인덱스 또는 -1

    • Parameters

      • x: number
      • y: number
      • z: number

      Returns [number, number, number]

    • Parameters

      • targetX: number | [number, number, number]
      • OptionaltargetY: number
      • OptionaltargetZ: number

      Returns void

    • Parameters

      • castShadow: boolean = false

      Returns void

    • 자식 객체의 위치를 변경합니다.

      Parameters

      • child: Mesh

        대상 자식 객체

      • index: number

        새 인덱스

      Returns void

    • Parameters

      • enableDebugger: boolean = false

      Returns void

    • Parameters

      • x: number
      • Optionaly: number

      Returns void

    • Parameters

      • x: number
      • Optionaly: number
      • Optionalz: number

      Returns void

    • Parameters

      • receiveShadow: boolean = false

      Returns void

    • Parameters

      • value: number

      Returns void

    • Parameters

      • rotationX: number
      • OptionalrotationY: number
      • OptionalrotationZ: number

      Returns void

    • Parameters

      • x: number
      • Optionaly: number

      Returns void

    • Parameters

      • x: number
      • Optionaly: number
      • Optionalz: number

      Returns void

    • 두 인덱스의 자식 객체 위치를 서로 바꿉니다.

      Parameters

      • index1: number

        첫 번째 인덱스

      • index2: number

        두 번째 인덱스

      Returns void

    • Parameters

      • x: number
      • y: number
      • z: number

      Returns [number, number, number]