सहायता

इस पेज पर, वेक्टर मैप और WebGL की सुविधाओं से जुड़ी सामान्य समस्याओं और उन्हें ठीक करने के तरीकों के बारे में बताया गया है.

ब्राउज़र/डिवाइस से जुड़ी सहायता

WebGL की सुविधा का प्रीव्यू, Maps JavaScript API के साथ काम करने वाले ब्राउज़र और डिवाइसों पर काम करता है. यह देखने के लिए कि किसी डिवाइस पर मौजूद ब्राउज़र, WebGL के साथ काम करेगा या नहीं, get.webgl.org या caniuse.com पर जाएं. साथ ही, पक्का करें कि ब्राउज़र की सेटिंग में हार्डवेयर से तेज़ी लाने की सुविधा चालू हो. ऐसा न होने पर, वेक्टर मैप रास्टर में बदल जाएंगे.

रास्टर या वेक्टर?

कभी-कभी, वेक्टर मैप, रास्टर में बदल सकता है. ऐसा होने पर, वेक्टर मैप पर निर्भर करने वाली सुविधाएं उपलब्ध नहीं होती हैं. रास्टर मैप पर वापस जाने की कई वजहें हो सकती हैं. इस सेक्शन में, वेब ब्राउज़र को सही तरीके से कॉन्फ़िगर करने और यह देखने के लिए कि वेक्टर मैप की सुविधा उपलब्ध है या नहीं, प्रोग्राम के ज़रिए जांच करने का तरीका बताया गया है.

Chrome पर ब्राउज़र की क्षमताओं की जांच करना

Chrome के किसी खास इंस्टॉलेशन में, हार्डवेयर से तेज़ी लाने की कौनसी सुविधाएं चालू हैं, यह जानने के लिए chrome://gpu/ पर जाएं. साथ ही, पक्का करें कि ये आइटम चालू हों (हरे रंग में):

  • "OpenGL: Enabled"
  • "WebGL: Hardware accelerated"
  • "WebGL2: Hardware accelerated"

(ये सिर्फ़ बुनियादी ज़रूरतें हैं. इनके अलावा, अन्य वजहों से भी सहायता पर असर पड़ सकता है. इसके लिए, नीचे "सामान्य गड़बड़ियां" देखें.)

हार्डवेयर से तेज़ी लाने की सुविधा चालू करना

वेक्टर मैप के साथ काम करने के लिए, ज़्यादातर ब्राउज़र में हार्डवेयर से तेज़ी लाने की सुविधा चालू होनी चाहिए. Chrome और Microsoft Edge में हार्डवेयर से तेज़ी लाने की सुविधा चालू करने के लिए, सेटिंग खोलें. इसके बाद, सिस्टम को चुनें. साथ ही, पक्का करें कि उपलब्ध होने पर 'हार्डवेयर से तेज़ी लाएं' सुविधा इस्तेमाल करें चालू हो.

रास्टर या वेक्टर की जांच करने के लिए, प्रोग्राम के ज़रिए जांच करना

map.getRenderingType() को कॉल करके, प्रोग्राम के ज़रिए यह देखा जा सकता है कि कोई मैप, रास्टर है या वेक्टर. यहां दिए गए उदाहरण में, renderingtype_changed इवेंट की निगरानी करने और यह दिखाने के लिए कोड दिया गया है कि रास्टर या वेक्टर मैप इस्तेमाल किया जा रहा है या नहीं.

TypeScript

/**
 * This example creates a map with an info window that shows whether
 * the map render type is raster or vector.
 */

 function initMap() {
    const center = {lat: 0, lng: 0};
    const map = new google.maps.Map(document.getElementById('map') as HTMLElement, {
      center,
      zoom: 10,
      heading: 0.0,
      tilt: 0.0,
      // Map ID for a vector map.
      mapId: '6ff586e93e18149f',
    });
    const canvas = document.createElement("canvas");
    const infoWindow = new google.maps.InfoWindow({
      content: '',
      ariaLabel: 'Raster/Vector',
      position: center,
    });
    infoWindow.open({
      map,
    });

    map.addListener('renderingtype_changed', () => {
      infoWindow.setContent(`${map.getRenderingType()}`);
    });
  }

  declare global {
    interface Window {
      initMap: () => void;
    }
  }
  window.initMap = initMap;

JavaScript

/**
 * This example creates a map with an info window that shows whether
 * the map render type is raster or vector.
 */
function initMap() {
  const center = { lat: 0, lng: 0 };
  const map = new google.maps.Map(document.getElementById("map"), {
    center,
    zoom: 10,
    heading: 0.0,
    tilt: 0.0,
    // Map ID for a vector map.
    mapId: "6ff586e93e18149f",
  });
  const canvas = document.createElement("canvas");
  const infoWindow = new google.maps.InfoWindow({
    content: "",
    ariaLabel: "Raster/Vector",
    position: center,
  });

  infoWindow.open({
    map,
  });
  map.addListener("renderingtype_changed", () => {
    infoWindow.setContent(`${map.getRenderingType()}`);
  });
}

window.initMap = initMap;

WebGL 2 के साथ काम करने की सुविधा की जांच करने के लिए, WebGL रेंडरिंग कॉन्टेक्स्ट का भी इस्तेमाल किया जा सकता है:

const canvas = document.createElement("canvas");
canvas.getContext("webgl2") ? console.log("WebGL 2 is supported") : console.log("WebGL 2 is NOT supported");

WebGL रेंडरिंग कॉन्टेक्स्ट का पता लगाने के लिए, प्रोग्राम के ज़रिए जांच करने के अन्य तरीकों के बारे में जानें.

मोबाइल वेब पर काम करने की सुविधा

मोबाइल वेब पर वेक्टर मैप के साथ काम करने की सुविधा, अब भी एक्सपेरिमेंट के तौर पर उपलब्ध है. डेवलपर, क्लाइंट एपीआई का इस्तेमाल करके, मोबाइल वेब ब्राउज़र का पता लगा सकते हैं. साथ ही, वेक्टर मैप के बजाय, रास्टर मैप से जुड़ी मैप आईडी का इस्तेमाल कर सकते हैं. हमें उम्मीद है कि कुछ मोबाइल डिवाइसों पर, रेंडरिंग की परफ़ॉर्मेंस धीमी होगी. अगर मोबाइल वेब पर वेक्टर मैप का इस्तेमाल किया जाता है, तो हम परफ़ॉर्मेंस के आंकड़ों और सुझाव/राय या शिकायत का स्वागत करते हैं. इससे हमें इस सुविधा को बेहतर बनाने में मदद मिलेगी. जैसा कि ऊपर बताया गया है, अगर वेक्टर मैप के साथ काम करने की सुविधा उपलब्ध नहीं है, तो वेक्टर मैप आईडी अपने-आप रास्टर मैप का इस्तेमाल करने लगेगी.

गड़बड़ियां

सामान्य गड़बड़ियां

  • कुछ macOS डिवाइसों पर Chrome में एक सामान्य समस्या है. इन डिवाइसों में एएमडी जीपीयू मौजूद हैं. यह समस्या तब और भी उलझन भरी हो सकती है, जब macOS, एक से ज़्यादा जीपीयू वाले डिवाइसों पर, जीपीयू के बीच डाइनैमिक तरीके से स्विच करता है. इसलिए, यह हो सकता है कि वेक्टर मैप उपलब्ध न हों. ऐसा इस बात पर निर्भर करता है कि अन्य कौनसे ऐप्लिकेशन चल रहे हैं या कोई बाहरी मॉनिटर कनेक्ट है या नहीं. ऐसा लगता है कि Chrome के आने वाले ANGLE Metal बैकएंड को चालू करने से, कुछ मामलों में यह समस्या ठीक हो जाती है. इसके रोलआउट प्लान के बारे में जानने के लिए, https://bugs.chromium.org/p/chromium/issues/detail?id=1322521 पर जाएं.

गड़बड़ियों की शिकायत करना

  • गड़बड़ी की शिकायत करने से पहले, कृपया ब्राउज़र और जीपीयू ड्राइवर को सबसे नए वर्शन पर अपडेट करें.
  • पक्का करें कि chrome://settings/system (Chrome), about:preferences#general (Firefox), edge://settings/system (Microsoft Edge) पर मौजूद, हार्डवेयर से तेज़ी लाने की सेटिंग चालू हो. Safari में, यह सेटिंग macOS के वर्शन 10.15 या इससे नए वर्शन में अपने-आप चालू हो जाती है. MacOS के पुराने वर्शन के लिए, कृपया Safari की बेहतर सेटिंग पर जाएं और पक्का करें कि "हार्डवेयर से तेज़ी लाने की सुविधा इस्तेमाल करें" विकल्प चालू हो.
  • गड़बड़ी की रिपोर्ट में, jsfiddle के सैंपल कोड का लिंक शामिल करें.
  • कृपया chrome://gpu (Chrome), about:support (Firefox) या edge://gpu (Microsoft Edge) का स्क्रीनशॉट भी लें. अगर आपको रेंडरिंग से जुड़ी कोई समस्या आती है, तो गड़बड़ी की रिपोर्ट में जीपीयू से जुड़ी जानकारी शामिल करें.

हमें अपने विचार बताएं!

हम आपके सुझाव/राय या शिकायत को अहमियत देते हैं. हमारी कोशिश है कि आपको और आपके उपयोगकर्ताओं को, वेक्टर मैप का सबसे अच्छा अनुभव मिले. कृपया हमें बताएं कि:

  • आपके वेब ऐप्लिकेशन में, JavaScript की कोई नई गड़बड़ी या कोई बग/क्रैश है.
  • वेक्टर मैप के लिए स्टार्टअप में लगने वाला समय, रास्टर मैप के मुकाबले काफ़ी ज़्यादा है. अगर ऐसा है, तो स्टार्टअप में लगने वाले समय के रिग्रेशन की मेट्रिक बहुत काम की होती हैं. आम तौर पर, हम यह जानना चाहते हैं कि स्टार्टअप में लगने वाला समय, स्वीकार की जा सकने वाली सीमाओं से ज़्यादा है या नहीं.
  • वेक्टर मैप का अनुभव उतना बेहतर नहीं है जितना हो सकता है. अगर आपने एफपीएस या जैंक मेट्रिक लॉग की हैं, तो वेक्टर और रास्टर मैप के बीच इनकी तुलना कैसे की जाती है?
  • ब्राउज़र के हिसाब से परफ़ॉर्मेंस में काफ़ी अंतर होता है.

अगर आपने वेक्टर मैप की तुलना रास्टर मैप से करने के लिए, A/B टेस्टिंग सेट अप की है, तो कृपया परफ़ॉर्मेंस से जुड़ा कोई भी सुझाव/राय या शिकायत शेयर करें. इससे हमें इस सुविधा को बेहतर बनाने में मदद मिलेगी.