2013-03-28 2 views
0

저는 실제로 게임의 '지표 메트릭 엔진'에서 작업하고 있습니다. 내가 기본적으로 다른 연관 배열에 실제 맵 데이터를 복사하면됩니다, 일부 측정은 불임이나 습도 같은 속성으로 매핑하는 것은, 여기에 샘플 코드입니다 :연관 배열에서 숫자가 아름답게 나타납니다.

this.metricsMap = {}; 
this.generatedFertilities = {}; 

for (var i = 0; i < this.groundMap.data.length; i++) { 
    this.generatedFertilities[i] = this.groundMap.data[i].map(function() { 
     // TODO 
    }); 
} 

for (var i = 0; i < this.groundMap.data.length; i++) { 
    this.metricsMap[i] = this.generatedFertilities[i].map(function (res) { 
     return { 
      ownedBy: "", 
      fertility: res, 
      humidity: 50 
     } 
    }); 
} 

지도 데이터는 연관 배열과 같다 [32 ] [32]. '패턴

[68, 69, 70, 71, 72, 73, 74, 75, 74, 73], 
[69, 70, 71, 72, 73, 74, 75, 74, 73, 72], 
[70, 71, 72, 73, 74, 75, 74, 73, 72, 71], 
[71, 72, 73, 74, 75, 74, 73, 72, 71, 60], 
[72, 73, 74, 75, 74, 73, 72, 71, 60, 59], 
[73, 74, 75, 74, 73, 72, 71, 60, 59, 58], 
[74, 75, 74, 73, 72, 71, 60, 59, 58; 57], 
[75, 74, 73, 72, 71, 60, 59, 58; 57, 56], 
[74, 73, 72, 71, 60, 59, 58; 57, 56, 55], 
[73, 72, 71, 60, 59, 58; 57, 56, 55, 54] 

우리는 더 상상할 수 : 여기 내가 작은 연관 배열을 만들기 위해 노력하고 싶은의 큰 그림이며, 일관성 및'수의 파도 '에 해당하는'다산 매트릭스 '를 생성 할 '예를 들어 매트릭스의 중간에 더 많은 농도가있는 곳.

나는 이런 것들의 많은 것들을 시도 :

var baseRand = Math.floor(Math.random() * 100) + 1; 
for (var i = 0; i < this.groundMap.data.length; i++) { 
    var counter = 0; 
    this.generatedFertilities[i] = this.groundMap.data[i].map(function() { 
     counter++; 

     // think of i like the y axis and counter like the x axis 
     if(i % 8 == 0){ 
      if(counter < 8){ 
       return Math.abs(Math.floor(baseRand++)); 
      } else { 
       return Math.abs(Math.floor(baseRand--)); 
      } 
     } else { 
      if(counter > 8){ 
       return Math.abs(Math.floor(baseRand--)); 
      } else { 
       return Math.abs(Math.floor(baseRand++)); 
      } 
     } 
    }); 
} 

을하지만이 곳 저를하지 않고 나는 그 뒤에 수학과 문제입니다. 그런 알고리즘을 어떻게 설계 하시겠습니까?

답변

0

문제를 올바르게 이해하고 있는지 확실하지 않습니다. 실제지도 데이터에 연결되어 있습니까?

어쩌면 Perlin Noise이 도움이 될 수 있습니다. 이러한 잡음 기능은 게임의 지형 생성에 쉽게 사용할 수 있습니다. 색상 값을 높이 값에 매핑하기 만하면됩니다.

+0

아니요, 실제지도 데이터에 묶여 있지 않습니다. – graph1ZzLle

관련 문제