मैं के रूप में gamedev.stackexchange.com पर की सिफारिश की Midpoint Displacement Algorithm जावास्क्रिप्ट का उपयोग और canvas
उपयोग करने के लिए कोशिश कर रहा हूँ।क्या यह जावास्क्रिप्ट कोड मिडपॉइंट विस्थापन एल्गोरिदम का पालन करता है?
नीचे दिया गया कोड उन बिंदुओं को उत्पन्न करता है जहां सरणी अनुक्रमणिका x
स्थिति है और इसका मान y
स्थिति है।
var createTerrain = function(chops, range) {
chops = chops || 2;
range = parseInt(range || 100);
if (chops > 8) return;
var cycle = parseInt(width/chops);
for (var i = 0; i <= width; i += cycle) {
var y = (height/2) + getRandomNumber(-range, range);
terrain[i] = y;
}
chops *= 2;
range *= 0.5;
createTerrain(chops, range);
}
getRandomNumber()
के तर्क min
और max
हैं। width
और height
canvas
के संबंध में हैं।
यह कुछ की तरह पैदा करता है ...
यह बहुत अस्थिर लगता है, लेकिन है कि बस हो सकता है कि यह कैसे है।
मैं इस एल्गोरिथ्म का अधिकार मिल गया है? यदि नहीं, तो क्या गलत है, और क्या आप मुझे सही दिशा में इंगित कर सकते हैं?
आप को कम करके इसे बाहर चिकनी में सक्षम होना चाहिए यादृच्छिक संख्या सीमा। क्या आप पहले से ही कोशिश कर चुके थे? –
@ मैट हाँ, मैंने कुछ चीजों की कोशिश की। अगर मुझे यह एल्गोरिदम सही है तो मुझे और अधिक दिलचस्पी है :) – alex