---
title: Property
slug: world-sdk-guide-kr/property
docTags: 
createdAt: 2024-09-02T08:34:13.135Z
---

ZEPETOScript에서 노출된 속성을 확인하세요.

속성은 검사기에서 편집할 수 있는 구성 요소 설정 및 옵션입니다.

속성을 사용하여 GameObject 또는 다른 구성 요소의 상태와 데이터를 관리하고 외부에서의 접근을 제어할 수 있습니다.

![](https://api.archbee.com/api/optimize/fCt3n1oCa8rgNJ8fw9I2N-TtjUD0w2FHG0Fzi7jl0ns-20240904-102418.png)



ZEPETOScript는 프로그래밍 언어로 TypeScript를 기반으로 하며,
&#x20;따라서 속성 선언에 다음 구문이 사용됩니다.

:::CodeblockTabs
property

```typescript
AccessModifier propertyName: propertyType;

ex)
public playerNumber: float;
private playerLocation: Vector3;
```
:::



이렇게 선언된 속성은 검사기에서 볼 수 있으며, 여기에서 값이나 객체를 할당할 수 있습니다.&#x20;

할당한 값은 나중에 런타임에서 초기화됩니다.

:::CodeblockTabs
Properties

```typescript
import { ZepetoScriptBehaviour } from 'ZEPETO.Script';
import { Vector3, GameObject, Transform } from 'UnityEngine';
 
export default class Properties extends ZepetoScriptBehaviour {
 
    public floatValue: float;
    public strValue: string;
 
    public gameObj: GameObject;
    public transformValue: Transform;
    public vectorValue : Vector3;
 
}
```
:::



::Image[]{src="https://api.archbee.com/api/optimize/fCt3n1oCa8rgNJ8fw9I2N-Hrd5sbtJqT96or1zaz0yy-20240904-102418.png" size="84" width="455" height="249" position="center" showCaption="false"}



ZEPETOScript 내에서 속성에 접근하려면 this.propertyName을 사용하세요.

```typescript
import { ZepetoScriptBehaviour } from 'ZEPETO.Script';
import { Vector3, GameObject, Transform } from 'UnityEngine';
 
export default class Properties extends ZepetoScriptBehaviour {
 
    public floatValue: float;
    public strValue: string;
 
    public gameObj: GameObject;
    public transformValue: Transform;
    public vectorValue : Vector3;
     
     
    Start() {
        console.log(`floatValue : ${this.floatValue}`);
        console.log(`strValue : ${this.strValue}`);
    }
     
    Update() {
        // Cube_A 회전
        const transform = this.gameObj.GetComponent<Transform>();
        transform.Rotate(this.vectorValue);
 
        // Cube_B 회전
        this.transformValue.Rotate(this.vectorValue);
    }
}
```



여러 속성을 사용할 때는 ZEPETOScript에서 배열로 선언하세요.

속성은 검사기에서 배열로 표시되며, 여기에서 다양한 요소에 대한 데이터를 입력할 수 있습니다.

:::CodeblockTabs
TypeScript

```typescript
public floatValues: float[];
```
:::



![](https://api.archbee.com/api/optimize/fCt3n1oCa8rgNJ8fw9I2N-PCNPiBl9Tz6_AV7hH1dwk-20240904-102418.png)



스크립트에서 속성을 선언하면 검사기에서 속성을 제어할 수 있습니다.

:::CodeblockTabs
property

```typescript
import { ZepetoScriptBehaviour } from 'ZEPETO.Script';
import { Transform } from 'UnityEngine';
 
export default class Attribute extends ZepetoScriptBehaviour {
 
    // 직렬화할 필요가 없는 공개 속성
    @NonSerialized()
    public strValue: string;
 
// 검사기에 노출되지 않아야 하는 속성
    @HideInInspector()
    public strValue2: string;
 
// 직렬화가 필요한 비공개 속성
    @SerializeField()
    private strValue3: string;
 
// 속성 위에 헤더 추가
    @Header("헤더 제목")
    public stringProperty: string;
 
// 속성 사이에 공간 추가
    @Space(10)
    public numberProperty: number;
 
// 마우스가 속성에 위치할 때 나타나는 툴팁 추가
    @Tooltip("이것은 툴팁입니다")
    public transformProperty: Transform;
 
    Start() {   
 
    }
 
}
```
:::



속성이 적용될 때의 예시 화면은 아래와 같습니다.

![](https://api.archbee.com/api/optimize/fCt3n1oCa8rgNJ8fw9I2N-W3aT5oQs4enuO-f2RKvI4-20240904-102418.png)



ZEPETOScript에서 사용 가능한 속성에 대해서는 다음 가이드를 참조하십시오.

:::hint{type="info"}
**📘&#x20;**&#xB2E4;음 가이드를 참조하십시오. \[[ZEPETO 월드에서 지원하는 유니티 기능](docId\:D3OLHYhLSBd8hrXbveeTs)]
:::

