달력

52024  이전 다음

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31


 

<라스트 랭커의 타이틀 화면>


매일 같이 전통의식이라며 무언가 알수 없는 의식을 하는 칸타렐라 마을..
촌장의 아들은 지그는 의미를 알수 없는 의식을 하며 살아가는 생활에 회의를 느낀다.

<이게 바로 무언지 알 수 없는 의식...>


지그는 칸타렐라를 떠나 전후기구인 바잘타에 등록을 하러 가려 한다.

<마을을 나서는 지그...>

하지만 X알 친구인 파즈는 그런 지그를 설득해 보려하지만.. 지그가 뜻을 굽히지 않자 파즈는 결투를 신청한다.
이기면 마을을 떠나고 나에게 지면 마을에 남아라!!

<사나이들의 승부다!!>

첫번째 전투는 배틀 설명과 함께 시작한다.. 그냥 ㅁ 만 계속 누르면 이긴다...

< 배틀에 대한 설명을 해주는 중>

<파즈는 필살기도 사용해 보지만...>

<승자는 지그...>

파즈는 지그를 보내주고.. 지그는 마을을 떠난다..
하지만.. 사실 파즈는 지그를 위해 져준것이었다!!!

<가거라!!!>



 

<내가 더 강하잖아....>


 










 

'게임 > PSP' 카테고리의 다른 글

[PSP]라스트 랭커 - 5  (0) 2010.07.18
[PSP]라스트 랭커 - 4  (0) 2010.07.17
[PSP]라스트 랭커 - 3  (0) 2010.07.17
[PSP]라스트 랭커 전투 영상  (0) 2010.07.17
[PSP]라스트 랭커 - 2  (0) 2010.07.17
Posted by SadDev
|

1 ~ 100 까지 랜덤하게 숫자를 뽑을때 중복되지 않게 뽑으면서 속도까지 빠르려면 어떤 방법이 있을까??

일반적으로 사실 for문 을 잘 돌리면 중복 되지 않게 뽑는건 어렵지 않다..
다만 중복 for문에 의해 속도가 느려질뿐... 1 ~ 10 정도의 작은 수는 괜찮지만 1000, 10000 같이 숫자가 커질수록 부하는 몇배로 커진다...

우선 한가지 생각해본 방법은
미리 배열에 1 ~100까지 담아두고 하나씩 빼오는 것.
그러다 이미 빠진 숫자가 나오면 그 옆의 숫자를 가져오는 것을 생각해봤다.

IString arrNum[100];
for(int i = 1 i < 101; i++)
{
  arrNum[i] = i+1;
}
for(int i = 1; i < 101; i++)
   {
    sTemp = (short)rand() % 100 ;
    while(arrNum[sTemp].Compare("")==0)
    {
     sTemp++;
     if(sTemp == 100) sTemp = 1;
    }
    arrNum[sTemp] = "";
   }
printf("%d", sTemp);

①②③④⑤⑥⑦⑧⑨⑩....... 이렇게 100까지 저장해 둔다.

랜덤을 돌려서 5가 나오면
①②③④""⑥⑦⑧⑨⑩.......   5는 공백이 된다.

쭉 for문을 돌다가 또 5가 나오면 그 옆 숫자인 6을 가져오고.. 6도 비어있으면 그 옆의 7... 이런식으로 한칸 옆의 숫자를 가져오면서 돌게 된다.


하지만 위 코드도 단점이 있었다..
낮은 확률이긴 하지만 마지막에 가면 근접한 숫자들이 뭉쳐서 나올때가 있다.


그래서 검색을 하고 하고 또 해서 찾아낸 방법.
int sCard = 100;
int *x = new int[sCard];
   for (int j = 0 ; j < sCard; j++)
    x[j] = j;
   
   for (int j = 0; j < sCard; j++)
   {
    int tmp = 0;
    int k = 0;
    int l = 0;
    for(int m = 0; m < 8; m++)
    {
     tmp += rand() << (32 - ((m + 1) * 4));
    }
    k = (tmp % (sCard - j)) + j;
    l = x[j];
    x[j] = x[k];
    x[k] = l;
   }
   free(x);


아참.. 위 코드는 0~ 100이 되겠다..
인덱스 가져올 일이 있어서 0 부터로 짯음...

사실 소스에서
 for(int m = 0; m < 8; m++)
    {
     tmp += rand() << (32 - ((m + 1) * 4));
    }
    k = (tmp % (sCard - j)) + j;


이부분은 이해를 못하고 있다..
먼가 중요한 부분이고 위 소스 때문에 난수가 제대로 나오는것 같은데 아직 정확히 이해는 못하고 있다 ;ㅁ;

'프로그래밍 > C++ / C' 카테고리의 다른 글

[c++] CHttpConnection에서 한글 전송 시 null 문제  (0) 2011.01.13
[C++/C] 트랜잭션 ...  (0) 2010.12.23
Posted by SadDev
|

C#에서 DataGridViewRow 를 복사하려는데 오류가 자꾸 발생한다.

분명 설명에는 DataGridView.Rows.Add(DataGridViewRow )가 있다..
그런데 왜 오류가 날까....

이유는 Row에 값을 넣는 방법이 문제 였다 ㅡㅡ;;

대충 해결 방법

DataGridView dgv = new DataGridView();
...  (dgv에 특정 데이터를 집어 넣은 상태);

DataGridView dGrid  = new DataGridView();
DataGridViewRow dgvRow = new DataGridViewRow();
dgvRow = CloneWithValues(dgv.Rows[i]);

dGrid.Rows.Add(dgvRow); 
public DataGridViewRow CloneWithValues(DataGridViewRow row);
{
      DataGridViewRow clonedRow = (DataGridViewRow)row.Clone();
      for (Int32 index = 0; index < row.Cells.Count; index++)
      {
        clonedRow.Cells[index].Value = row.Cells[index].Value;
      }
      return clonedRow;
}

함수로 만들었지만.. 문제는 Cell에 값을 넣는게 문제 였다..
Row를 만들고 셀에 값을 잘 넣어주면 해결 되더라능 ㅡㅡ;

Posted by SadDev
|

C#에서 MessageBox는 javaScript의 alert 혹은 confirm 과 같다.

우선 MessageBox.Show() 의 사용법은 여러가지가 있지만.. 사실 써본적도 없다.
기본적인 두가지만 쓸뿐 --;;;

그 첫번째 .. alert과 동일한  MessageBox

1. MessageBox.Show("텍스트");

private void button_Click(object sender, EventArgs e)
{
      MessageBox.Show("오류 발생 !!");
}




2. MessageBox.Show(" 내용", "설명", 버튼 종류)

private void button2_Click(object sender, EventArgs e)
{
      if (MessageBox.Show("취소를 누르시면 입력하신 내용이 모두 초기화 됩니다.\r계속 하시겠습니까?", "입력 취소", MessageBoxButtons.YesNo) == DialogResult.Yes)
      {
        this.DialogResult = DialogResult.Abort;
      }
}



간단히 alert과 confirm의 C# 버젼으로 기억하면 된다.


이때 줄바꿈 문자는 \r 을 사용한다.. \n 은 안됨 ;ㅁ;


우선 MessageBoxButtons는 여러가지가 있는데  "Yes"는 예 버튼 "No" 는 아니오 버튼 "OK"는 확인 버튼 등이 있다.  이중 YesNo 는 예 , 아니오 버튼.
그리고 Dialogresult  는 확인 창의 결과 값인데..  Yes 이면 .. 즉 예를눌렀을때... 를 의미한다..

Posted by SadDev
|
FF 14의 벤치 마크 결과가.. 충격이다;;;

첫번째 사진은 1920 X 1080 으로 돌렸으며... 점수는 1800점 정도...
최악이다 ;;;

스에 에서는 1500점 이하는 게임하기가 어려울 것이며 2000 이하는 무겁게 돌아갈 거라고 그랬는데..
이건 게임 하지 말라는거다...

1024 X 768의 경우 3300정도 나왔는데
3000점 이상은 그나마 보통..

8000점이 넘어야 완전 쾌적이다..

아 눈물나 ;ㅁ;



'게임 > PS3' 카테고리의 다른 글

[그란투리스모5] 초보자 가이드 - 1  (0) 2010.12.23
[PS3] 그란투리스모5가 드디어 왔다!!  (0) 2010.11.24
[PS3] 로지텍 G27 구매...  (1) 2010.09.11
Posted by SadDev
|