React-Native / Unity와 통신 인터페이스 정의
상황 | 접두어 |
---|---|
Native 에서 Unity 호출 시 | N2U |
Unity 에서 Native 호출 시 | U2N |
요청 | REQ |
---|---|
응답 | ACK |
알림 | NTY |
| 이벤트명 | 호출
위치 | 호출
타입 | 설명 | 전달 인자 | Sample Data |
| --- | --- | --- | --- | --- | --- |
| N2U_NTY_CharactorAdded | NATIVE | NTY | 새로운 캐릭터의 ID, 이름, 수(count), 색상(color) 등의 정보를 담은 JSON 데이터를 Native에서 Unity로 전달 | | { "participantId": 2, "name": "캐릭터 2", "count": 1, "color": "#FF5733" }
|
| N2U_NTY_CharactorDeleted | NATIVE | NTY | 삭제된 캐릭터의 ID 정보를 Unity로 전달 | | { "participantId": 1 }
|
| N2U_NTY_CharactorCountChanged | NATIVE | NTY | 변경된 수(count)를 포함한 캐릭터의 ID와 수 정보를 Unity로 전달 | | { "participantId": 1, "count": 3 }
|
| N2U_NTY_CharactorColorChanged | NATIVE | NTY | 캐릭터의 ID와 새로운 색상(color)을 Unity로 전달 | | { "participantId": 1, "color": "#00FF00" }
|
| N2U_REQ_GenerateSimulation | NATIVE | REQ | Native에서 Unity에게 시뮬레이션 시작을 요청합니다. | **participants: 전투에 참여하는 모든 참가자에 대한 정보를 포함하는 배열입니다.
participantId: 각 참가자를 고유하게 식별할 수 있는 ID입니다.
name: 각 참가자의 이름입니다.
color: 참가자의 색상 코드로, 화면에서 해당 참가자를 식별할 때 사용합니다.
initialHp: 참가자의 게임 시작 시 체력(HP)을 나타냅니다. 이 값을 기준으로 체력 변동이 이루어집니다.** | { "participants": [ { "participantId": "unique_id_1", "name": "참가자 1_1", "color": "#FF5733", "initialHp": 100, "profileUrl" : "" }, { "participantId": "unique_id_2", "name": "참가자 2", "color": "#33FF57", "initialHp": 100, "profileUrl" : "" }, { "participantId": "unique_id_3", "name": "참가자 3", "color": "#3357FF", "initialHp": 100, "profileUrl" : "" }, ] }
|
| U2N_ACK_GenerateSimulation | UNITY | ACK | Unity에서 Native에게 시뮬레이션 결과를 응답합니다. | **hpChanges: 시간에 따른 HP 변화를 기록하는 배열입니다.
timestampMs: HP 변화가 일어난 시간을 밀리초(ms) 단위로 나타냅니다. 이 값은 전투가 시작된 후 경과 시간을 나타내며, 이를 통해 언제 어떤 변화가 발생했는지 확인할 수 있습니다.
hpUpdates: 해당 시간에 일어난 각 참가자의 HP 변화 리스트입니다.
participantId: HP 변화가 발생한 참가자의 고유 ID입니다.
hpChange: 참가자의 HP가 얼마나 변했는지를 나타냅니다. 음수 값은 HP가 감소했음을 의미하며, 양수 값은 HP가 증가했음을 의미합니다.
currentHp: HP 변화 후 해당 참가자의 현재 체력입니다.** | { "videopath" : "path", "hpChanges": [ { "timestampMs": 300, "hpUpdates": [ {"participantId": "unique_id_3", "hpChange": -5, "currentHp": 95}, {"participantId": "unique_id_5", "hpChange": -7, "currentHp": 93}, {"participantId": "unique_id_7", "hpChange": -3, "currentHp": 97} ] }, { "timestampMs": 600, "hpUpdates": [ {"participantId": "unique_id_2", "hpChange": -6, "currentHp": 94}, {"participantId": "unique_id_8", "hpChange": -5, "currentHp": 95}, {"participantId": "unique_id_9", "hpChange": -4, "currentHp": 96} ] }, { "timestampMs": 900, "hpUpdates": [ {"participantId": "unique_id_1", "hpChange": -8, "currentHp": 92}, {"participantId": "unique_id_4", "hpChange": -5, "currentHp": 95}, {"participantId": "unique_id_6", "hpChange": -7, "currentHp": 93} ] } ] }
|
| U2N_NTY_GeneratingProcess | UNITY | NTY | Unity에서 Native에게 시뮬레이션 결과 진행도를 전달합니다. | current
: 진행도입니다 | { "current" : 10 }
|