메뉴 건너뛰기

창작에 관련된 질문이나 간단한 팁, 예제를 올리는 곳

love2d.org/

Love2D 홈페이지.


Lua로 2D 게임을 만드는 프레임워크입니다.

무료고, 오픈 소스이며, 윈도우, 맥, 리눅스에서 동작하며, 안드로이드에서 동작하게 하는 논의도 활발하다 합니다.


그럼 일단 받아봅시다. 아무리 좋아도 내 컴퓨터에 못 깔면 소용없지 않습니까?

Windows라면 LÖVE 0.8.0 for Windows 를 받습니다.

Installer와 Zipped가 있는데, Installer는 exe 파일을 컴퓨터에 설치하며

Zipped는 설치하지 않고 실행 가능한, 가지고 다닐 수 있는 포터블 버젼이라 생각하시면 되겠습니다.

전 Installer 깔았습니다.


혹시 다른 OS를 사용하는 분이라면 아쉽게도 다른 정리글을 찾아보셔야 할 겁니다.

저도 사실 Ubuntu를 사용하고 싶지만, Broadcom 무선랜 드라이버가 자꾸 유선랜과 충돌해서

뻗어버리는 현상 때문에 못 쓰고 있습니다. 차기버전 나올때까지 기다려야죠, 뭐.

(아 주 못 쓰는 건 아니지만 매우매우매우 귀찮은데다, 이어폰으로 음악이 안 나오는 것 때문에 제 삶의 낙 중 하나인 모든 것을 다 끝마치고 자는 것만 일과에 남겨둔 채 누군가에게 방해받지도, 누군가를 방해하지도 않고 Nightwish를 듣는 것을 포기해야 해서 안 쓰고 있습니다.)


하지만, 낙담 마세요. 비록 Love를 설치하는 것과 만들어진 소스 파일을 실행하는 것 외의 Love 내의 프로그램 코드나 실행 결과 등은 어느 OS던 똑같답니다. 설치를 마치고 어떻게 모두 만들어진 Love 파일을 실행하는지 다른 곳에서 알아온다면 강좌의 나머지 부분을 봐도 좋아요.


자, 이제 깔았다고 생각하고 저와 여러분의 첫 Love2D 프로그램을 만들어 보겠습니다.

메모장이나 좋아하는 텍스트 에디터를 실행한 후 다음과 같이 입력해 주세요.


function love.draw()
    love.graphics.print('Hello World!', 400, 300)
end


그리고 이것을 main.lua로 저장합니다. 파일 형식을 모든 파일(*.*)이나 루아 파일(*.lua)로 지정하는 것 잊지 마시길. main.lua.txt도 아니고, main.lua.lua는 더더욱 아닙니다!


이제부터 몇 가지 선택권이 있습니다.

1. 폴더를 하나 만들어 주세요. 뭐가 좋을까? 이름은 상관 없습니다.

전 식상하게 FirstProg라고 썼습니다.

이제 이 폴더 안에 아까의 main.lua를 넣습니다.

폴더를 설치하거나 다운로드 받은 Love.exe 혹은 Love.lnk(바로가기입니다.) 위에 드래그하여 끌어 놓습니다. 그러면 프로그램이 실행됩니다. 폴더째로 드래그해야지 main.lua만 드래그하면 안됩니다.

2. main.lua를 압축해서 zip 파일을 만듭니다. 폴더 째로 압축하지 말길.

압축 파일을 열자마자 main.lua가 보여야 합니다. 유식하게 '최상위 경로에 있어야 한다.' 고 합시다.

그리고 zip 파일의 확장자를 love로 바꿉니다.

2 - 1. 당신이 유식하다면 명령 프롬프트로 간 뒤 cd 명령어를 적절히 사용하여 xxxx.love 파일이 있는 곳으로 갑니다. 그리고 설치되거나 다운로드받은 love.exe(lnk는 안 됩니다!)를 xxxx.love가 있는 곳에 복사하세요. 그런 후 다음과 같은 명령을 실행시킵니다.

copy /b love.exe+xxxx.love [이름].exe

xxxx.love는 당신이 만든 .love 파일의 이름입니다.

그 렇다면, [이름].exe가 나올 겁니다. 진짜로 [이름]이라고 치지 말고, 독창적인 네이밍 센스를 발휘해 보세요. 어쨌든, 이제 exe 파일이 생성되었습니다. 이것으로 love가 다운로드되거나 설치되어 있지 않은 장소, 예를 들어 친구네 집이나 PC방 등에서도 당신의 프로그램을 실행할 수 있습니다.

이 방법은 꽤 복잡하므로, 나중에 다시 한번 찬찬히 해보겠습니다.


음, 썩 대단하진 않지만, 썩 나쁘지도 않은 여러분의 첫번째 프로그램이 나타났습니다.

제 넷북의 괴악한 해상도 때문에 저 글자가 정 가운데에 있진 않군요,

(리눅스도 잘 안 돌아가고... 이왕 뭔가 사려면 좋은 걸 사야 합니다. 아니면 저처럼 고생합니다.)


자, 이제 여러분은 love를 설치하고, 프로그램을 작성하고(사실 이해하지는 못했고, 복사해서 붙여 넣었습니다. 괜찮아요, 저도 그랬으니까. 모르면 차차 알아가면 됩니다.), 프로그램을 실행했습니다. 축하드립니다!


다음 정리글. 언젠가 씁니다.

덧글 태클 환영.
조회 수 :
464
등록일 :
2013.09.17
08:20:16 (*.209.135.92)
엮인글 :
게시글 주소 :
https://hondoom.com/zbxe/index.php?mid=study&document_srl=703428
List of Articles
번호 제목 글쓴이 조회 수 추천 수 날짜 최근 수정일sort
145 질문 있습니다.. C언어 인거 같은데 [7] 포오ㅏ로 1957   2005-02-24 2008-04-20 17:16
x=0x2F;for(;x>>--x<=x;x--)x<<1; 에서 x=? 이거 답좀.. * 똥똥배님에 의해서 게시물 이동되었습니다 (2008-03-11 14:20)  
144 밑에 포와로님의 질문 답 [4] 대슬 1900   2005-02-24 2008-03-17 04:37
제가 단 맨 처음 댓글, 그리고 흑곰님이 말씀하신 값이 맞습니다. (-2) x = -2 일 때 x>>--x의 값이 x보다 커지면서 for문을 빠져나갑니다. 그리고 for문 다음에 있는 x<<1은 아무 효과도 못 냅니다. 그냥 폼. (효과를 내려고 했으면 x = x<<1처럼 했어야) 그...  
143 흑곰님 질문 [2] 라컨 2015   2005-08-22 2008-03-17 04:37
Dim 출현, 맞춤, 틀림 Private Sub 네모_Click() 맞춤 = 맞춤 + 1 점수 = 점수 + 5 Label2.Caption = "맞춤:" + Str(맞춤) Print Val(맞춤) * Val(점수) End Sub Private Sub Form_Click() 틀림 = 틀림 + 1 Label3.Caption = "틀림:" + Str(틀림) End Sub Priv...  
142 비베 질문 [2] 재피디 1888   2005-09-10 2008-03-17 04:37
그 처음에 그냥 창 뜨지않고 모니터 오른쪽 하단에 시계나오는칸에 뜨게 하는법좀. * 똥똥배님에 의해서 게시물 이동되었습니다 (2008-03-11 14:24)  
141 액션알피지 원거리 무기 질문 [8] 아리포 1741   2006-01-18 2008-03-17 04:37
원거리 무기를 가까이에서쏘면 연속으로 발사됩니다 계속 ;; 아주빠르게 이거 어떻게 고침 * 똥똥배님에 의해서 게시물 이동되었습니다 (2008-03-11 14:24)  
140 여러분 질문있어요. 성심성의껏좀 알려주세요 흑흑 [6] 케르메스 2022   2006-02-11 2008-03-17 04:37
sw = 0; for (j=2; j<WWT; j++) { if ((WWT%j) == 0) { sw = 1; } } if(sw ==1) { cout << "WWT는 정수입니다" } if(sw ==0) { cout << "WWT는 정수가 아닙니다" } -------------------------------------------------------------- 이건 변수인 WWT가 정수인...  
139 [질문]알만툴 게임 [1] 허클베리핀 1974   2006-12-28 2008-03-17 04:37
처음 키면 ascll 로고뜨고 eb!회사 로고뜨는 나오는거 그림 어케바꾸나욤?? * 똥똥배님에 의해서 게시물 이동되었습니다 (2008-03-11 14:24)  
138 스크립트 질문좀 하겠습니다....이벤트에 대한것!! [2] 여유 1859   2007-04-23 2008-03-17 04:37
Class Quick_status < Game_Player 아니면 Class Quick_status < Game_Event 어떤걸로 하는것이 옳은 선택일까요 그리고 이벤트의 X,Y좌표 이벤트의 Screen_x,y좌표(화면 XY좌표) 이벤트의 ID 이벤트의 이름 이것들을 나타낼 수 있는 방법을 알려주세요 예) a...  
137 혼돈형한테 질문 (페인트샾 관련) [2] file 장펭돌 939   2007-11-19 2008-03-17 04:37
 
136 혼돈형에게 질문! [3] 장펭돌 1851   2007-11-28 2008-03-17 04:37
만화를 그릴때, 우선 손으로 그리지 않습니까 그럼 그린뒤에 스캔해서 컴퓨터로 옮긴뒤에 펜으로 그려진 선을 잘 보정해 줘야 채색이 가능할텐데, 어떻게 선을 다시 컴퓨터로 그려주나여 그냥, 노가다로 마우스로 원래 펜으로 그린 선을 따라서 그려주는 겅미?...  
135 질문 2가지+1 [2] file Wonder 1964   2007-11-30 2008-03-17 04:37
 
134 홍크립트에 질문이 있어서 왔스므니다. [3] X-tra 1699   2007-12-07 2008-03-17 04:37
제가 홍크립트로 와이드 화면의 게임이 만들고 싶어 질문하러 왔습니다. 메모장으로 해결이 가능 하면 좋겠으나 아마도 무리 겠죠 ㅡ.ㅡ;; 소스를 건드려야 하면 어디를 건드려야 하는지 알려 주셨으면 합니다. 직접 건드리고 싶어서도 문제가 발생하면 많은 ...  
133 [re] 혼돈님께 질문 혼돈 2048   2007-12-25 2008-03-17 04:37
옛날에 뼈대를 그려놓고 일단 게임을 만들자는 주의였는데 나중에 완성하고 나면 고치기도 귀찮고, 그 그래픽에 맞춰 만든 거라서 그냥 그대로 쓰게 되는 경우가 많았음. 그래서 그 다음부터는 처음부터 그래픽 소스를 제대로 준비한 뒤 시작하는 식으로 했습...  
132 혼돈님께 질문 흑곰 1596   2007-12-25 2008-03-17 04:37
혼돈님의 경우에는 게임 그래픽을 언제, 어떻게 준비하나요? 음... 그러니까 대충 뼈대 그래픽을 그려놓고 게임을 완성한 후 그래픽을 고친다 라던가, 그래픽을 전부 작성해두고 게임을 완성한다, 혹은 그래픽을 만들어가며 게임을 제작한다 등등... 다년간의 ...  
131 {질문}그림에대한 질문일세. [5] 슈퍼타이 1703   2008-01-30 2008-03-17 04:37
뭐 만화에서보면 눈이 빛나거나 빠르게 달리는것처럼 효과주고 점프할때 바닥에 ^^ 이런식으로 효과 주는거나 빙글빙글돌때는 주변에 원같은거 그려주고 그런걸 뭐라고 하죠? * 똥똥배님에 의해서 게시물 이동되었습니다 (2008-03-11 14:26)  
130 마우스 포인터 바꾸기가 안되네요... +질문2 장펭돌 1748   2008-02-04 2008-03-17 04:37
어떻게 해도 자꾸 마우스 모양이 안보이길래... 아예 mlc 파일을 DATA폴더 밖으로 꺼내고... System.txt와 같이 둔 상태로 그림 파일명이 "마우스" 이므로.. {#커서} "마우스" 이렇게 해봤는데도 안되네요... 으음,, 어떻게 해야하는겁니까... ㅇ 질문 2 "DIVX...  
129 마우서 포인트 바꾸기 질문 다시 ㄱ- [2] 장펭돌 1807   2008-02-05 2008-03-17 04:37
똥똥배님이 알려주신대로, DATA 폴더내에 mlc 파일을 하나 생성하고, 커서에 "파일명" 이렇게 재대로 했는데.. 안됩니다. 똥똥배님은, Global.mlc 를 이용할수 있지만, 저는 Global.mlc 내에 그림파일을 추가시킬수가 없어서 안되는거 아닙니까? * 똥똥배님에 ...  
128 [re] 갑자기 급질문.. [1] 똥똥배 1548   2008-02-08 2008-03-17 04:37
>별 특별한건 아니구요 >변수 강좌 보니까 ? 가 사용되더라구요? >?는 무슨 의미인가요? > >[분기] ([레벨]==16)?91:[분기] >[분기] ([레벨]==15)?92:[분기] >[분기] ([레벨]==14)?93:[분기] >[분기] ([레벨]<=13)?94:[분기] >@이동 [분기] > >여기서 보면 >[...  
127 갑자기 급질문.. 궤레브 1737   2008-02-08 2008-03-17 04:37
별 특별한건 아니구요 변수 강좌 보니까 ? 가 사용되더라구요? ?는 무슨 의미인가요? [분기] ([레벨]==16)?91:[분기] [분기] ([레벨]==15)?92:[분기] [분기] ([레벨]==14)?93:[분기] [분기] ([레벨]<=13)?94:[분기] @이동 [분기] 여기서 보면 [레벨]==16 이런...  
126 질문 하나더. [3] 흑곰 1715   2008-02-13 2008-03-17 04:37
1 아무 것도 없이 빈 줄 혹은 주석이 속도에 영향을 미치는지. @이동 등에서 영향을 미칠 것으로 추측됨. 2 @이동 -1 을 하면 무시되어 다음 줄을 읽게 되나요? * 똥똥배님에 의해서 게시물 이동되었습니다 (2008-03-11 14:26)