{"id":16784,"date":"2026-03-29T11:12:52","date_gmt":"2026-03-29T02:12:52","guid":{"rendered":"http:\/\/www.gisdeveloper.co.kr\/?p=16784"},"modified":"2026-03-29T23:11:04","modified_gmt":"2026-03-29T14:11:04","slug":"three-js-%ed%94%84%eb%a1%9c%ec%a0%9d%ed%8a%b8-%ea%b5%ac%ec%84%b1-%ec%8a%a4%ed%82%ac","status":"publish","type":"post","link":"http:\/\/www.gisdeveloper.co.kr\/?p=16784","title":{"rendered":"`three.js \ud504\ub85c\uc81d\ud2b8 \uad6c\uc131` SKILL"},"content":{"rendered":"<p>\uc774 \uc2a4\ud0ac\uc740 \uc804\uc5ed \uc2a4\ud0ac\ub85c \uc0ac\uc6a9\ub418\uc5b4\uc57c \ud558\ubbc0\ub85c ~\/.gemini\/antigravity\/skills\/&lt;skill-folder>\/ \uc5d0 \uc785\ub825(threejs-project-setup\/SKILL.md)\ub418\uc5b4\uc57c \ud568.<\/p>\n<pre style='background-color:transparent;white-space:pre-wrap'>\r\n---\r\nname: threejs-project-setup\r\ndescription: >\r\n  - \uc0ac\uc6a9\uc790\uac00 three.js\uc5d0 \ub300\ud55c \ud504\ub85c\uc81d\ud2b8\ub97c \uad6c\uc131 \ub610\ub294 \uc0dd\uc131\ud574 \ub2ec\ub77c\ub294 \uc694\uccad\uc774 \uc788\uc744\ub54c \uc0ac\uc6a9\ud55c\ub2e4.\r\n  - \ud504\ub86c\ud504\ud2b8\uc5d0\ub294 \ud504\ub85c\uc81d\ud2b8\ub97c \uad6c\uc131\ud560 \uacbd\ub85c\ub098 WebGL \uae30\ubc18\uc778\uc9c0 WebGPU \uae30\ubc18\uc778\uc9c0\uc5d0 \ub300\ud55c \ub0b4\uc6a9\uc774 \uc788\uc744 \uc218 \uc788\ub2e4. \r\n---\r\n\r\n## \uc2e4\ud589\uc21c\uc11c\r\n\r\n\uc774 \uc2a4\ud0ac\uc740 \ub2e4\uc74c \ub2e8\uacc4\ub85c \uc21c\ucc28\uc801\uc73c\ub85c \uc2e4\ud589\ud55c\ub2e4.\r\n\r\n1. \uc0ac\uc6a9\uc790\uac00 three.js\uc5d0 \ub300\ud55c \ud504\ub85c\uc81d\ud2b8\ub97c \uad6c\uc131 \ub610\ub294 \uc0dd\uc131\ud574 \ub2ec\ub77c\uace0 \uc694\uccad\ud558\uba74 \ub2e4\uc74c bash \uba85\ub839\uc744 \uc2e4\ud589\ud55c\ub2e4.\r\n    - \uc0ac\uc6a9\uc790\uac00 WebGPU \uae30\ubc18\uc744 \uc5b8\uae09\ud55c \uacbd\uc6b0 : `git clone https:\/\/github.com\/GISDEVCODE\/threejs-webgpu-with-javascript-starter.git {\uacbd\ub85c}`\r\n    - \uc0ac\uc6a9\uc790\uac00 WebGL \uae30\ubc18\uc744 \uc5b8\uae09\ud55c \uacbd\uc6b0 : `git clone https:\/\/github.com\/GISDEVCODE\/threejs-with-javascript-starter.git {\uacbd\ub85c}`\r\n    - \uc0ac\uc6a9\uc790\uac00 WebGL\uacfc WebGPU\uc5d0 \ub300\ud574 \uc5b8\uae09\ud558\uc9c0 \uc54a\uc740 \uacbd\uc6b0 WebGPU\ub97c \uc5b8\uae09\ud55c \uac83\uc73c\ub85c \uac04\uc8fc\ud55c\ub2e4.\r\n    - \ud504\ub85c\uc81d\ud2b8\ub97c \uad6c\uc131\ud560 {\uacbd\ub85c}\ub97c \uc0ac\uc6a9\uc790\uac00 \uc9c0\uc815\ud558\uc9c0 \uc54a\uc558\uc744 \uacbd\uc6b0 \ud604\uc7ac \uacbd\ub85c(`.`)\ub85c \uac04\uc8fc\ud55c\ub2e4.\r\n    - \ud504\ub85c\uc81d\ud2b8\ub97c \uad6c\uc131\ud558\ub294 \uacbd\ub85c\uc5d0 \uc5b4\ub5a0\ud55c \ud30c\uc77c\uc774\ub098 \ud3f4\ub354\uac00 \uc874\uc7ac\ud560 \uacbd\uc6b0 \uc774 \uc2a4\ud0ac\uc758 \uc2e4\ud589\uc744 \uc911\uc9c0\ud558\uace0 \uc0ac\uc6a9\uc790\uc5d0\uac8c \"\ud504\ub85c\uc81d\ud2b8\ub97c \uad6c\uc131\ud558\ub294 \ud3f4\ub354\uc5d0\ub294 \uc5b4\ub5a0\ud55c \ud30c\uc77c\uc774\ub098 \ud3f4\ub354\ub3c4 \uc874\uc7ac\ud574\uc11c\ub294 \uc548\ub429\ub2c8\ub2e4.\"\ub77c\ub294 \uba54\uc138\uc9c0\ub97c \ubc1d\uc740 \ube68\uac15\uc0c9\uc73c\ub85c \ud504\ub86c\ud504\ud2b8 \ub300\ud654\ucc3d\uc5d0 \ucd9c\ub825\ud55c\ub2e4.\r\n1. \uad6c\uc131\ub41c \ud504\ub85c\uc81d\ud2b8\uc5d0 \ub300\ud55c \ucd5c\uc2e0 \ud328\ud0a4\uc9c0 \uc5c5\ub370\uc774\ud2b8\ub97c \uc704\ud574 \ub2e4\uc74c bash \uba85\ub839\uc744 \uc2e4\ud589\ud55c\ub2e4.\r\n    - `npx npm-check-updates -u`\r\n    - \uc774 bash \uba85\ub839\uc740 {\uacbd\ub85c}\uc5d0\uc11c \uc2e4\ud589\ub418\uc5b4\uc57c \ud568\r\n1. \ud328\ud0a4\uc9c0 \uc124\uce58\ub97c \uc704\ud574 \ub2e4\uc74c bash \uba85\ub839\uc744 \uc2e4\ud589\ud55c\ub2e4.\r\n    - `npm i`\r\n    - \uc774 bash \uba85\ub839\uc740 {\uacbd\ub85c}\uc5d0\uc11c \uc2e4\ud589\ub418\uc5b4\uc57c \ud568\r\n1. \uac1c\ubc1c \uc11c\ubc84 \uc2e4\ud589\uc744 \uc704\ud574 \ub2e4\uc74c bash \uba85\ub839\uc744 \uc2e4\ud589\ud558\uc9c0 \ub9d0\uace0 \uc0ac\uc6a9\uc790\uc5d0\uac8c \uc548\ub0b4\ud55c\ub2e4. `npm run dev`\r\n1. \uc704\uc758 \uc2e4\ud589\uc774 \ubaa8\ub450 \uc644\ub8cc \ub418\uc5c8\ub2e4\uba74 \uc0ac\uc6a9\uc790\uc758 \uc694\uad6c\uac00 \uc5c6\ub2e4\uba74 \uad6c\uc131\ub41c \ud504\ub85c\uc81d\ud2b8\ub97c \uc808\ub300 \ubd84\uc11d\ud558\uc9c0\ub9d0\uace0 \uc5b4\ub5a0\ud55c \ubcc0\uacbd\uc744 \uc2dc\ub3c4\ud558\uc9c0\ub9c8. \uc624\uc9c1 \uc0ac\uc6a9\uc790\uc5d0\uac8c \"Happy three.js Coding!\"\uc774\ub77c\uba74 \uba54\uc138\uc9c0\ub97c \ubc1d\uc740 \ucd08\ub85d\uc0c9\uc73c\ub85c \ud504\ub86c\ud504\ud2b8 \ub300\ud654\ucc3d\uc5d0\uc11c \ucd9c\ub825\ud55c\ub2e4.\r\n<\/pre>\n<p>\uc544\ub798\ub294 \uc774 \uc2a4\ud0ac\uc744 \uc774\uc6a9\ud55c \ud504\ub85c\uc81d\ud2b8 \uad6c\uc131 \uc608\uc2dc<\/p>\n<p><img decoding=\"async\" src=\"http:\/\/www.gisdeveloper.co.kr\/wp-content\/uploads\/2026\/03\/\u1109\u1173\u110f\u1173\u1105\u1175\u11ab\u1109\u1163\u11ba-2026-03-29-11.45.27.png\" alt=\"\" width=\"800\" class=\"aligncenter size-full wp-image-16793\" \/><\/p>\n","protected":false},"excerpt":{"rendered":"<p>\uc774 \uc2a4\ud0ac\uc740 \uc804\uc5ed \uc2a4\ud0ac\ub85c \uc0ac\uc6a9\ub418\uc5b4\uc57c \ud558\ubbc0\ub85c ~\/.gemini\/antigravity\/skills\/&lt;skill-folder>\/ \uc5d0 \uc785\ub825(threejs-project-setup\/SKILL.md)\ub418\uc5b4\uc57c \ud568. &#8212; name: threejs-project-setup description: > &#8211; \uc0ac\uc6a9\uc790\uac00 three.js\uc5d0 \ub300\ud55c \ud504\ub85c\uc81d\ud2b8\ub97c \uad6c\uc131 \ub610\ub294 \uc0dd\uc131\ud574 \ub2ec\ub77c\ub294 \uc694\uccad\uc774 \uc788\uc744\ub54c \uc0ac\uc6a9\ud55c\ub2e4. &#8211; \ud504\ub86c\ud504\ud2b8\uc5d0\ub294 \ud504\ub85c\uc81d\ud2b8\ub97c \uad6c\uc131\ud560 \uacbd\ub85c\ub098 WebGL \uae30\ubc18\uc778\uc9c0 WebGPU \uae30\ubc18\uc778\uc9c0\uc5d0 \ub300\ud55c \ub0b4\uc6a9\uc774 \uc788\uc744 \uc218 \uc788\ub2e4. &#8212; ## \uc2e4\ud589\uc21c\uc11c \uc774 \uc2a4\ud0ac\uc740 \ub2e4\uc74c \ub2e8\uacc4\ub85c \uc21c\ucc28\uc801\uc73c\ub85c \uc2e4\ud589\ud55c\ub2e4. 1. \uc0ac\uc6a9\uc790\uac00 three.js\uc5d0 \ub300\ud55c \ud504\ub85c\uc81d\ud2b8\ub97c &hellip; <\/p>\n<p class=\"link-more\"><a href=\"http:\/\/www.gisdeveloper.co.kr\/?p=16784\" class=\"more-link\">\ub354 \ubcf4\uae30<span class=\"screen-reader-text\"> &#8220;`three.js \ud504\ub85c\uc81d\ud2b8 \uad6c\uc131` SKILL&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-16784","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"http:\/\/www.gisdeveloper.co.kr\/index.php?rest_route=\/wp\/v2\/posts\/16784","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/www.gisdeveloper.co.kr\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/www.gisdeveloper.co.kr\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/www.gisdeveloper.co.kr\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/www.gisdeveloper.co.kr\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=16784"}],"version-history":[{"count":16,"href":"http:\/\/www.gisdeveloper.co.kr\/index.php?rest_route=\/wp\/v2\/posts\/16784\/revisions"}],"predecessor-version":[{"id":16787,"href":"http:\/\/www.gisdeveloper.co.kr\/index.php?rest_route=\/wp\/v2\/posts\/16784\/revisions\/16787"}],"wp:attachment":[{"href":"http:\/\/www.gisdeveloper.co.kr\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=16784"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/www.gisdeveloper.co.kr\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=16784"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/www.gisdeveloper.co.kr\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=16784"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}