Skip to content

DeveloperError: Width must be less than or equal to the maximum texture size (0). Check maximumTextureSize. #40

Description

@chenpipy

项目可以正常启动,查看三维地图正常,但是只要测量,就会报错,但是调试发现初始化中获取maximumTextureSize其实是有值的。

An error occurred while rendering. Rendering has stopped.
DeveloperError: Width must be less than or equal to the maximum texture size (0).  Check maximumTextureSize.

Error
    at new DeveloperError (webpack-internal:///./node_modules/@cesium/engine/Source/Core/DeveloperError.js:41:11)
    at new Texture (webpack-internal:///./node_modules/@cesium/engine/Source/Renderer/Texture.js:105:11)
    at TextureAtlas.update (webpack-internal:///./node_modules/@cesium/engine/Source/Renderer/TextureAtlas.js:579:21)
    at Array.eval (webpack-internal:///./node_modules/@cesium/engine/Source/Scene/BillboardCollection.js:1440:25)
    at callAfterRenderFunctions (webpack-internal:///./node_modules/@cesium/widgets/node_modules/@cesium/engine/Source/Scene/Scene.js:3182:45)
    at Scene.render (webpack-internal:///./node_modules/@cesium/widgets/node_modules/@cesium/engine/Source/Scene/Scene.js:3563:3)
    at CesiumWidget.render (webpack-internal:///./node_modules/@cesium/widgets/node_modules/@cesium/engine/Source/Widget/CesiumWidget.js:966:17)
    at render (webpack-internal:///./node_modules/@cesium/widgets/node_modules/@cesium/engine/Source/Widget/CesiumWidget.js:95:18)

开发环境:node14.18.2+vue2+webpack

vue.config配置:

const { defineConfig } = require("@vue/cli-service")
const path = require('path')
const CopywebpackPlugin = require('copy-webpack-plugin')
const NodePolyfillPlugin = require("node-polyfill-webpack-plugin");
const webpack = require("webpack");
const dvgisDist = './node_modules/@dvgis'

module.exports = defineConfig({
  transpileDependencies: true,
  // webpack resolve配置
  configureWebpack: {
    resolve: {
      fallback: {
        fs: false,
        path: false
      },
      alias: {
        '@zip.js/zip.js/lib/zip-no-worker.js': '@zip.js/zip.js/lib/zip.js'
      }
    }
  },
  // 开发服务器配置(包含端口和代理)
  devServer: {
    port: 8080,
  chainWebpack: (config) => {
    // 配置CopywebpackPlugin复制Cesium资源文件
    config.plugin('copy').use(CopywebpackPlugin, [{
      patterns: [
        { from: "node_modules/cesium/Build/Cesium/Workers", to: "Workers" },
        {
          from: "node_modules/cesium/Build/Cesium/ThirdParty",
          to: "ThirdParty",
        },
        { from: "node_modules/cesium/Build/Cesium/Assets", to: "Assets" },
        { from: "node_modules/cesium/Build/Cesium/Widgets", to: "Widgets" },
      ],
    }]);
    
    // 添加NodePolyfillPlugin
    config.plugin('node-polyfill').use(NodePolyfillPlugin);
    
    // 添加webpack DefinePlugin
    config.plugin('cesium-define').use(webpack.DefinePlugin, [{
      // Define relative base path in cesium for loading assets
      CESIUM_BASE_URL: JSON.stringify("")
    }]);
    
    return config;
  },
})

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions