editor
드릴 편집
선수·공·콘을 드래그해 배치하고, 메타 정보를 다듬은 뒤 DSL 로 내보냅니다.
원을 눌러 선택, 드래그해 이동. 파랑=공격, 빨강=수비, 주황=콘, 흰색=공, 회색=골대. 아래에서 무브의 경로 편집 을 켜면 자홍색 경유점을 캔버스에서 바로 끌 수 있습니다. 엔티티를 지우면 이를 참조하던 움직임도 함께 정리됩니다.
애니메이션 스텝
1
#1
2
#1
#1
3
#1
#2
DSL JSON 보기
{
"version": "0.1.0",
"meta": {
"title": "2대1 돌파 후 슈팅",
"ageGroup": "U-12",
"durationMin": 15,
"tags": [
"공격",
"2대1",
"침투",
"슈팅"
],
"setup": "하프 코트. 공격수 2명, 수비수 1명, 골키퍼 없이 미니골 1개.",
"coachingPoints": [
"패스 후 즉시 침투 타이밍을 강조한다",
"수비수의 무게중심이 쏠린 반대 공간을 노린다"
]
},
"field": {
"type": "soccer_half",
"orientation": "horizontal",
"showGrid": false
},
"entities": [
{
"kind": "player",
"id": "atk1",
"position": {
"x": 30,
"y": 40
},
"team": "attack",
"label": "7"
},
{
"kind": "player",
"id": "atk2",
"position": {
"x": 35,
"y": 65
},
"team": "attack",
"label": "9"
},
{
"kind": "player",
"id": "def1",
"position": {
"x": 55,
"y": 50
},
"team": "defense",
"label": "4"
},
{
"kind": "ball",
"id": "ball1",
"position": {
"x": 31,
"y": 41
}
},
{
"kind": "goal",
"id": "goal1",
"position": {
"x": 95,
"y": 50
},
"widthM": 3
},
{
"kind": "cone",
"id": "cone1",
"position": {
"x": 60,
"y": 30
},
"color": "#f2a541"
},
{
"kind": "cone",
"id": "cone2",
"position": {
"x": 60,
"y": 70
},
"color": "#f2a541"
}
],
"animation": {
"steps": [
{
"label": "7번이 9번에게 패스",
"moves": [
{
"target": "ball1",
"type": "pass",
"easing": "linear",
"keyframes": [
{
"t": 0.8,
"position": {
"x": 35,
"y": 64
}
}
]
}
]
},
{
"label": "7번 침투, 수비 반응",
"moves": [
{
"target": "atk1",
"type": "run",
"easing": "spring",
"keyframes": [
{
"t": 1.2,
"position": {
"x": 70,
"y": 45
}
}
]
},
{
"target": "def1",
"type": "run",
"easing": "spring",
"keyframes": [
{
"t": 1.2,
"position": {
"x": 60,
"y": 58
}
}
]
}
]
},
{
"label": "리턴 패스 후 슈팅",
"moves": [
{
"target": "ball1",
"type": "shot",
"easing": "linear",
"keyframes": [
{
"t": 0.6,
"position": {
"x": 68,
"y": 46
}
},
{
"t": 1.4,
"position": {
"x": 95,
"y": 50
}
}
]
}
]
}
],
"loop": false
}
}영상 만들기
2D: 스텝 자막·나레이션·인트로/아웃로 포함(보통 30~90초). 3D: 리깅 휴먼 캐릭터가 걷기/뛰기로 이동(무음, 1~3분 소요). 둘 다 1080×1920 세로 영상입니다.