'잡다한것들전부'에 해당되는 글 207건
- 2013.12.16 중급 개발자가 되는 방법 5가지
- 2013.12.16 유니티 안드로이드 디버깅 방법
- 2013.12.14 PlayerPrefs 배열로 저장하기
- 2013.12.14 유니티 텍스트 파일 읽기
- 2013.12.14 유니티 텍스트 파일 읽기
- 2013.12.12 ngui 강좌 링크
- 2013.12.11 유니티 rpg 강좌
- 2013.12.11 메모리 문제
- 2013.12.11 배경 무한 스크롤링
- 2013.12.11 게임 개발 공부 방법
http://www.buggymind.com/512
'잡다한것들전부 > 팁' 카테고리의 다른 글
| c 와 c++ 관련 자료 (0) | 2013.12.19 |
|---|---|
| 오비비 테스트 apk (0) | 2013.12.18 |
| 중급 개발자가 되는 방법 5가지 (0) | 2013.12.16 |
| 배경 무한 스크롤링 (0) | 2013.12.11 |
| 포물선 운동 관련 소스 (0) | 2013.12.10 |
| 헥사 게임 알고리즘 (0) | 2013.12.03 |
cmd창에서 android sdk 폴더에 sdk/platform-tools 경로로 이동한다.
휴대폰에서 발생하는 모든 이벤트 -> adb logcat
유니티에서 발생하는 모든 이벤트 -> adb logcat -s Unity
유니티에서 발생하는 log 이벤트 -> adb logcat Unity:I Native:I *:S
'잡다한것들전부 > 팁' 카테고리의 다른 글
| 유니티 단축키 (0) | 2013.12.18 |
|---|---|
| 2d toolkit 공식 사이트 (0) | 2013.12.18 |
| 유니티 안드로이드 디버깅 방법 (0) | 2013.12.16 |
| PlayerPrefs 배열로 저장하기 (0) | 2013.12.14 |
| 유니티 텍스트 파일 읽기 (0) | 2013.12.14 |
| 유니티 텍스트 파일 읽기 (0) | 2013.12.14 |
데이터가 int[] _data 안에 들어 있다고 가정하겠습니다.
string _tmpStr = "";
for (int i = 0; i < _data.Length;i ++) {
_tmpStr = _tmpStr + _data[i];
if (i < _data.Length) {
_tmpStr = _tmpStr + ",";
}
}
PlayerPrefs.SetString("Data", _tmpStr);로 보존 합니다.
불러 올때는 string[] _dataArr = PlayerPrefs.GetString("Data").Split(','); 하신후
int[] _dataIn = new int[_dataArr.Length];
for (int i = 0; i < _dataArr.Length; i++) {
_dataIn[i] = System.Convert.ToInt32(_dataArr[i]);
}
'잡다한것들전부 > 팁' 카테고리의 다른 글
| 2d toolkit 공식 사이트 (0) | 2013.12.18 |
|---|---|
| 유니티 안드로이드 디버깅 방법 (0) | 2013.12.16 |
| PlayerPrefs 배열로 저장하기 (0) | 2013.12.14 |
| 유니티 텍스트 파일 읽기 (0) | 2013.12.14 |
| 유니티 텍스트 파일 읽기 (0) | 2013.12.14 |
| ngui 강좌 링크 (0) | 2013.12.12 |
이런식으로 파일을 확장자를 빼고 불러온다음에 뒤에 .text 이런식으로 확장자를 붙이면 됨
TextAsset textFile = Resources.Load("text/opening") as TextAsset;
string s = "" + textFile.text;
Text Assets는 불러온 텍스트 파일을 위한 하나의 포맷입니다. 사용자가 사용자의 프로젝트 폴더에 하나의 텍스트 파일을 떨어뜨릴 때, 그것은 텍스트 에셋으로 변경될 것입니다. 지원되는 텍스트 포맷은 다음과 같습니다:
- .txt
- .html
- .htm
- .xml
- .bytes
이런 확장자들을 지원함
오직 읽기만 지원 됨
'잡다한것들전부 > 팁' 카테고리의 다른 글
| 유니티 안드로이드 디버깅 방법 (0) | 2013.12.16 |
|---|---|
| PlayerPrefs 배열로 저장하기 (0) | 2013.12.14 |
| 유니티 텍스트 파일 읽기 (0) | 2013.12.14 |
| 유니티 텍스트 파일 읽기 (0) | 2013.12.14 |
| ngui 강좌 링크 (0) | 2013.12.12 |
| 유니티 rpg 강좌 (0) | 2013.12.11 |
using UnityEngine;
using System.Collections;
using System;
using System.IO;
public class CsTextManager : MonoBehaviour {
public GUISkin skin;
private int currentTextNumber;//현재 텍스트 번호
string s;
// Use this for initialization
void Start () {
currentTextNumber = 0;
s = LoadTextFile("text/opening.txt");
print(s);
}
// Update is called once per frame
void Update () {
if (Input.GetMouseButtonDown(0))
{
currentTextNumber++;
}
}
string LoadTextFile(string fileName)
{
string t = "";
string line = "";
StreamReader sr = new StreamReader(Application.dataPath + "/Resources/" + fileName);
if (sr == null)
{
print("Error : " + Application.dataPath + "/Resources/" + fileName);
}
else
{
line = sr.ReadLine();
while (line != null)
{
t += line;
line = sr.ReadLine();
if (line != null)
{
t += "\n";
}
}
sr.Close();
// print("Loaded " + Application.dataPath + "/Resources/db/" + fileName);
}
return t;
}
//gui
void OnGUI()
{
//텍스트 파일에서 읽기
GUI.skin = skin;
int halfW = Screen.width / 2;
int halfH = Screen.height / 2;
int x = 40;
int y = halfH + 40;
GUI.Label(new Rect(x, y, halfW * 1, halfH * 1.2f), s);
}
}
'잡다한것들전부 > 팁' 카테고리의 다른 글
| PlayerPrefs 배열로 저장하기 (0) | 2013.12.14 |
|---|---|
| 유니티 텍스트 파일 읽기 (0) | 2013.12.14 |
| 유니티 텍스트 파일 읽기 (0) | 2013.12.14 |
| ngui 강좌 링크 (0) | 2013.12.12 |
| 유니티 rpg 강좌 (0) | 2013.12.11 |
| 메모리 문제 (0) | 2013.12.11 |
http://www.ppomppu.co.kr/zboard/view.php?id=developer&no=7799
'잡다한것들전부 > 팁' 카테고리의 다른 글
| 유니티 텍스트 파일 읽기 (0) | 2013.12.14 |
|---|---|
| 유니티 텍스트 파일 읽기 (0) | 2013.12.14 |
| ngui 강좌 링크 (0) | 2013.12.12 |
| 유니티 rpg 강좌 (0) | 2013.12.11 |
| 메모리 문제 (0) | 2013.12.11 |
| 게임 개발 공부 방법 (0) | 2013.12.11 |
https://www.youtube.com/playlist?list=PLEF925EF9F86651DD
'잡다한것들전부 > 팁' 카테고리의 다른 글
| 유니티 텍스트 파일 읽기 (0) | 2013.12.14 |
|---|---|
| ngui 강좌 링크 (0) | 2013.12.12 |
| 유니티 rpg 강좌 (0) | 2013.12.11 |
| 메모리 문제 (0) | 2013.12.11 |
| 게임 개발 공부 방법 (0) | 2013.12.11 |
| 2d 게임 만들때 필수이 에셋 (0) | 2013.12.11 |
1. 사운드 출력의 문제
- 동전을 먹는다던가 특정한 이펙트가 터졌을때 프레임이 끊기던 문제로 고생을 했었는데 알고 봤더니
사운드 포맷 문제 였습니다. 잦은 이펙트 사운드는 wave로 바꾸고 스트리밍 방식말고 메모리 로드 방식으로 바꿨더니 해결 되었습니다.
2. 스크립트 문제
보통 동전이 빙글 빙글 돈다던가 스케일 조절이 된다던가 하는걸 스크립트로 구현을 하게 되면
개체수가 많을경우 엄청난 리소스를 필요로 하게 됩니다. 이런경우 스크립트로 처리 하지 마시고 그래픽 디자이너에게
애니메이션으로 잡아 달라고 하시는게 프레임 향상에 도움 될겁니다.
기본적으로는
Update 류의 주기적으로 호출되는 함수에서
GameObject.Find 라던가 GetComponent가 잦으면 안됩니다.
미리 쓸거라면 항상 Awake나 Start에서 멤버변수로 만드시고...
물론 new Vector3 류의 객체할당도 마찬가지구요.
지역변수로 매번 값을 받아오는 부분을 고쳐보세요.
그리고 framePerSecond를 고칠 수 있는 api도 존재하니까 사용해서 줄이세요.
보통 러닝게임은 24나 30프레임이 적당합니다.(유니티 기본은 60이죠)
이런것들만 고쳐도 상당히 성능낭비가 감소됩니다.
'잡다한것들전부 > 팁' 카테고리의 다른 글
| ngui 강좌 링크 (0) | 2013.12.12 |
|---|---|
| 유니티 rpg 강좌 (0) | 2013.12.11 |
| 메모리 문제 (0) | 2013.12.11 |
| 게임 개발 공부 방법 (0) | 2013.12.11 |
| 2d 게임 만들때 필수이 에셋 (0) | 2013.12.11 |
| 유니티 2d rpg 개발 (0) | 2013.12.11 |
#include "HelloWorldScene.h"
#include "SimpleAudioEngine.h"
using namespace cocos2d;
using namespace CocosDenshion;
CCScene* HelloWorld::scene()
{
// 'scene' is an autorelease object
CCScene *scene = CCScene::create();
// 'layer' is an autorelease object
HelloWorld *layer = HelloWorld::create();
// add layer as a child to scene
scene->addChild(layer);
// return the scene
return scene;
}
// on "init" you need to initialize your instance
bool HelloWorld::init()
{
//////////////////////////////
// 1. super init first
if ( !CCLayer::init() )
{
return false;
}
/////////////////////////////
// 2. add a menu item with "X" image, which is clicked to quit the program
// you may modify it.
// add a "close" icon to exit the progress. it's an autorelease object
CCMenuItemImage *pCloseItem = CCMenuItemImage::create(
"CloseNormal.png",
"CloseSelected.png",
this,
menu_selector(HelloWorld::menuCloseCallback) );
pCloseItem->setPosition( ccp(CCDirector::sharedDirector()->getWinSize().width - 20, 20) );
// create menu, it's an autorelease object
CCMenu* pMenu = CCMenu::create(pCloseItem, NULL);
pMenu->setPosition( CCPointZero );
this->addChild(pMenu, 1);
CCSize winS = CCDirector::sharedDirector()->getWinSize();
sprite1 = CCSprite::create("HelloWorld.png");
this->addChild(sprite1);
sprite1->setPosition(ccp(0, 0));
sprite1->setAnchorPoint(ccp(0,0));
sprite2 = CCSprite::create("HelloWorld.png");
this->addChild(sprite2);
sprite2->setPosition(ccp(winS.width/2, 0));
sprite2->setAnchorPoint(ccp(0,0));
backSpeed = ccp(-2,0);
this->schedule(schedule_selector(HelloWorld::gameLogic));
return true;
}
void HelloWorld::gameLogic(float dt)
{
sprite1->setPositionX(sprite1->getPositionX()+backSpeed.x);
sprite2->setPositionX(sprite2->getPositionX()+backSpeed.x);
if(sprite1->getPositionX() < -sprite1->getContentSize().width)
{
CCSprite *tmp;
tmp = sprite1;
sprite1 = sprite2;
sprite2 = tmp;
sprite2->setPosition(ccp(sprite1->getPositionX()+sprite1->getContentSize().width, 0));
}
}
void HelloWorld::menuCloseCallback(CCObject* pSender)
{
CCDirector::sharedDirector()->end();
#if (CC_TARGET_PLATFORM == CC_PLATFORM_IOS)
exit(0);
#endif
}
CCAction사용하면 쉽게 할수있음
ParallaxNode 사용해도 쉽게 할수있음
'잡다한것들전부 > 팁' 카테고리의 다른 글
| 오비비 테스트 apk (0) | 2013.12.18 |
|---|---|
| 중급 개발자가 되는 방법 5가지 (0) | 2013.12.16 |
| 배경 무한 스크롤링 (0) | 2013.12.11 |
| 포물선 운동 관련 소스 (0) | 2013.12.10 |
| 헥사 게임 알고리즘 (0) | 2013.12.03 |
| 비쥬얼드 로직 (0) | 2013.12.02 |
[게임 개발 공부1]자신의 실력에 맞는 책을 사서 처음 부터 끝까지 따라해본다.
'잡다한것들전부 > 팁' 카테고리의 다른 글
| 유니티 rpg 강좌 (0) | 2013.12.11 |
|---|---|
| 메모리 문제 (0) | 2013.12.11 |
| 게임 개발 공부 방법 (0) | 2013.12.11 |
| 2d 게임 만들때 필수이 에셋 (0) | 2013.12.11 |
| 유니티 2d rpg 개발 (0) | 2013.12.11 |
| 유니티 2d 게임 개발 (0) | 2013.12.11 |


