메뉴 건너뛰기

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

1. 시스템메모리와 비디오메모리의 차이는 무엇입니까?

시스템 메모리는 말 그대로 컴퓨터에 달린 RAM이고,
비디오 메모리는 비디오카드에 있는 RAM입니다.
이론적으론 비디오 메모리가 용량이 작은 대신 속도가 빠르긴 한데...

시스템 메모리에 부른 것을 비디오 메모리에 찍거나,
비디오 메모리에 부른 것을 시스템 메모리에 찍으면
속도가 엄청나게 저하되기 때문에
그냥 용량 큰 시스템 메모리를 쓰고 있습니다. 제 경우에는...

휴웍 경우에는 비디오 메모리 쪽이 훨씬 빠르고
휴웍 자체 그림양이 많지 않아 비디오 메모리를 썼지만,
문라이브는 시스템 메모리를 써도 찍는 속도가 빨라서
별 의미가 없습니다...

일단 중요한 것은 하나로 통일해서 하나만 쓰는 게 좋다는 겁니다.
게임 만들면 반드시 백버퍼가 필요하고(화면 출력 전에 미리그리는 곳),
백버퍼와 불러온 그림들의 메모리 위치가 틀리면 느려지니까요.


2. 흥크립트는 txt파일을 한줄 읽고 처리하고,
또 한줄읽고 처리하나요?
아니면 전부 다 읽고 몇줄씩 한꺼번에 처리하나요?

한줄씩 처리합니다.


3. 한줄읽고 한줄또 읽는 방식이라면 비베와 비슷한것?
그렇다면 그에 따른 속도 저하도 감수하나요?

사실 읽는 것 자체만으론 속도가 그다지 저하되지 않습니다.
게임에서 중요한 것은 매번 60프레임씩 찍어줘야 된다는 거죠.
(특히 문라이브 게임은 초당 100프레임입니다.)
읽는 것은 단발적인 처리로 이런 곳에서는 속도를 조금 소비해도 괜찮습니다.
읽은 후는 흥크립트에서 바로 처리할 수 있는 수치로 변하므로,
반복 처리에는 큰 시간이 들지 않습니다.

단, 소리재생, 좌우변환, 그림숨김 등과 같이
읽은 후 1번만 처리되는 명령문만 계속 된다면
속도가 현저히 저하될 겁니다만...
저렇게 게임을 만들 일은 거의 없겠죠.


4. 한줄읽고 또 읽는 방식이라면,
dlg파일(txt가 암호화된 파일)을 읽을 때
한줄 읽고->암호해석?하고->처리하고
->한줄 또 읽고->암호해석하고->처리하고..
하는 식으로 하는건가요?
그게 아니라면 어떤 식으로?
또 그에 따른 속도 저하도 감수하나요?

dlg를 읽으때는 로드시에 텍스토로 변환해서 메모리로 올립니다.
그러므로 처음 로드에 암호해독 시간이 조금(그래봤자 1초도 안 되는) 걸릴 뿐
txt와 똑같은 속도로 동작합니다.

아아, 그러고보니 혹시 헷갈릴 수 있어 말씀드리자면
txt경우에도 일단 내용은 모두 읽어서 메모리에 올려 둡니다.
왜냐면 파일액세스는 속도가 엄청 느리기 때문이죠.
한줄 씩 처리한다는 것은 그 읽은 내용에서 하나씩 처리한다는 겁니다.

어차피 스크립트가 아무리 길어도 그림 파일 하나만 못하므로
전부 메모리에 올려도 무리는 없습니다.
* 똥똥배님에 의해서 게시물 이동되었습니다 (2008-03-11 14:00)
조회 수 :
1682
등록일 :
2008.01.09
18:37:07 (*.239.)
엮인글 :
게시글 주소 :
https://hondoom.com/zbxe/index.php?mid=study&document_srl=2481

장펭돌

2008.03.17
04:37:04
(*.49.200.231)
존내 상세한 답변
List of Articles
번호 제목 글쓴이 조회 수 추천 수sort 날짜 최근 수정일
25 Lua 소코반 EX: 포팅: 3 (머나먼 여행길 안녕 친구여) 노루발 913   2013-09-18 2013-09-18 08:05
안녕하세요, 노루발입니다. 오늘로 그래픽 소코반을 끝내기로 했습니다. 아쉽지만 끝내야죠. 일단 걸음수와 이것저것을 뿌려주기로 합니다. 그런데 이미 화면이 꽉 차버려서 뿌려줄 공간이 없네요... 없으면 만들면 되지. 창을 늘립시다. conf.lua를 수정. fun...  
24 CCTextFieldTTF 0바이트 메모리 누수 버그 해결법 똥똥배 692   2014-01-13 2014-01-13 10:38
CCTextFieldTTF::textFieldWithPlaceHolder("", FONT_NAME, FONT_SIZE); 이런 식으로 텍스트필드를 생성하면 ""가 0바이트라서 해체를 못하고 0바이트 누수가 발생한다. 그냥 스페이스(" ")라도 넣어주면 누수는 발생하지 않는다. 이 버그가 발생하는 버전은 2...  
23 Cocostudio의 ActionNode 메모리 누수 해결법(cocos2d-x 2.2.2) [2] 똥똥배 776   2014-03-09 2014-05-31 19:26
Cocostudio로 액션을 만들고 액션매니저를 이용해서 ActionManager::shareManager()->playActionByName 아래와 같이 실행을 해주면 액션이 실행되는 경우 메모리 누수가 발생한다. (액션을 실행하지 않았을 때는 메모리 누수 없음) 이 메모리 누수를 없애려면 ...  
22 cocos2d-x 2.2.2 윈도우 환경 기본 메모리 누수 똥똥배 640   2014-03-10 2014-03-11 03:51
cocos2d-x 2.2.2를 윈도우에서 실행시키고 나서 종료하면 기본으로 4바이트의 메모리 누수가 발생한다. 이건 CCScriptEngineManager가 원인인데 CCObject들은 delete를 실행할 때마다 CCScriptEngineManager의 sharedManager를 호출하기 때문이다. 결국 모든 C...  
21 cocos2d-x 2.2.2 UILabelBMFont 메모리 누수 해결법 [2] 똥똥배 783   2014-03-10 2014-05-31 19:30
만약 CocoStudio로 UI를 만든 후 GUIReader를 써서 지정 폰트를 불러오면 엔진 버그로 인해서 메모리 누수가 생긴다. 이걸 고치려면 LabelBMFont.cpp를 아래와 같이 수정해야 한다. void LabelBMFont::setFntFile(const char *fileName) { if (!fileName || st...  
20 cocos2d-x 2.2.2 문자열 출력 버그 [2] 똥똥배 601   2014-06-10 2014-08-23 22:35
cocos2d-x 2.2.2, 맥에서만 나타는 문제다. 윈도우, 안드로이드에서는 아무 이상 없다. 줄 수가 꽤 긴 문자열을 출력할 경우, 문자가 전부 다 나오지 않고 잘린다. 잘리는 기준은 줄이다. 문자 수가 어떻든 간에 줄 수에 따라서 잘려버린다. 아마 문자열의 줄 ...  
19 Love2d 게임 중간에 광고 표시 [1] 노루발 377   2015-11-12 2015-11-17 00:16
http://love2d.org/forums/viewtopic.php?f=11&t=81224  
18 구글 인앱 구매 Soomla로 구현해본 후 팁 똥똥배 577   2014-09-20 2014-09-20 18:45
1. 일단 알파 테스트라도 앱을 출시시켜야 인앱이 작동한다. 그리고 APK 업로드 후에 바로 인앱이 적용되지 않는다. 구글에 게시되는 데, 시간이 걸리므로 인앱 등록 - APK 등록을 마친 후 다음날부터 구현하는 게 깔끔하다. 이걸로 모르고 하루종일 왜 안되나...  
17 Love2d 여러 플랫폼으로 빌드 자동화 노루발 470   2014-11-12 2014-11-12 17:35
https://github.com/MisterDA/love-release/blob/master/README.md http://www.ambience.sk/lua-love2d-game-distribution/  
16 Love2d 안드로이드 빌드하기 노루발 572   2014-12-15 2014-12-15 00:59
Love2d의 안드로이드 포트는 알파 단계입니다. 차차 개선되어 나가긴 하겠지만 아직 불안정한 부분이 많으며, 일어날 수 있는 오작동과 그로 인한 결과는 일절 책임지지 않습니다.   이 문서는 Windows 사용자 기준입니다. Linux나 Mac을 사용할 정도의 내공...  
15 Love2d 안드로이드 게임 패키징하기 [3] 노루발 546   2014-12-15 2021-01-11 12:11
이 문서는 개발 환경이 갖추어져 있는 상태이고, 빌드를 무사히 마친 뒤라고 가정합니다. 또한 이 문서는 https://bitbucket.org/MartinFelis/love-android-sdl2/wiki/Game%20Packaging#markdown-header-how-to-package-the-apk-with-your-own-love-090-game ...  
14 [번역] gamedev레딧의 Getting Started 문서 번역 [5] priling 1892   2014-12-26 2018-07-24 10:33
처음인 분들을 위한 '게임만들기' 가이드이 글은 [레딧 게임개발 커뮤니티의 /u/LordNed님의 포스팅]을 베이스로 작성한 것입니다. 이 글의 목적은 게임을 만들고 싶어하는 분들이 어떻게 시작할 수 있을지에 대해 명확한 가이드라인을 보여드리는 것입니다.  ...  
13 김프로 이미지 맵 만들기 노루발 393   2015-11-11 2015-11-11 08:05
https://docs.gimp.org/en/plug-in-imagemap.html  
12 RPG Maker MV 로컬라이징 방법 file 똥똥배 917   2015-10-27 2015-10-27 05:51
 
11 리캡챠 적용 [1] 노루발 11   2021-01-08 2021-01-11 12:15
XE 회원가입 시 구글 리캡챠 인증 추가하기 : 네이버 블로그 (naver.com)  
10 자동화된 Lua 스크립트의 문서화 - LDoc 노루발 43229   2021-01-11 2021-01-11 11:53
다운로드 https://github.com/lunarmodules/LDoc penlight 설치가 필요 luarocks install penlight 프로젝트가 있는 폴더에서 아래의 명령행을 실행 lua /path/to/ldoc/ldoc.lua $* https://stevedonovan.github.io/ldoc/manual/doc.md.html 문서 코멘트라는걸...  
9 Love2d 게임 안드로이드로 패키징하기 노루발 48   2021-01-11 2021-02-21 01:45
http://hondoom.com/zbxe/index.php?mid=study&document_srl=797993 버전이 바뀌면서 빌드 방법이 바뀌었기에 다시 정리한다. 1. Android studio 설치 https://developer.android.com/studio/index.html SDK 플랫폼 - Android 11.0 [API 30] SDK 버전 - An...  
8 certbot을 이용한 HTTPS 인증서 발급 및 적용 노루발 18   2021-01-12 2021-01-12 16:57
snap 설치 및 업데이트 sudo snap install core; sudo snap refresh core certbot 설치 sudo snap install --classic certbot 심볼릭 링크 생성 sudo ln -s /snap/bin/certbot /usr/bin/certbot nginx에 맞춰 자동 설정 sudo certbot --nginx 알아서 다 해주기...  
7 PHP로 웹게임 만드는 영상 [1] 노루발 436   2021-06-25 2022-01-28 03:40
Simple PHP Strategy Game - YouTube  
6 Lua-love2d TCP 통신 [1] 노루발 21   2023-07-14 2023-07-22 16:19
서버: Lua 클라이언트: Love2d(Lua) 서버 구동에는 luasocket 라이브러리가 필요하며, luarocks로 설치할 수 있음. 별도 패키지 관리자가 있는 리눅스 시스템에서는 apt-get install lua-socket 등의 패키지 관리자 명령어로 설치 가능하며 Windows에서 구동시...