Closed CHENJIAMIAN closed 1 year ago
Hi @CHENJIAMIAN,
I'm not able to reproduce the error on https://sandcastle.cesium.com. Is there any other steps I need to take to reproduce? If not, would you mind sharing system details, and visiting webglreport.com to take a screenshot of your results?
It would be odd that this error started occurring in 1.105.1, as there were no renderer changes since 1.105.
my webglreport.com screenshot
I'm also not able to reproduce the error on https://sandcastle.cesium.com/.
I am having a similar error once updating from @cesium/engine@2.3.0
to @cesium/engine@2.4.0
when just trying to load a Globe. I also can't reproduce my error in a Sandcastle example. Does Sandcastle use the built NPM dependency or does it reference the files using relative paths?
Note: Downgrading from @cesium/engine@2.4.0
to @cesium/engine@2.3.0
fixes the issue for me. I wouldn't expect this to be a breaking change with a cesium
patch version/@cesium/engine
minor version.
I had similar error upgrading to 105.1. I noticed in our yarn.lock file that we were loading both @cesium/engine@2.3.0
and @cesium/engine@2.4.0
at the same time and it was causing all sorts of problems.
I'm not sure how it's possible, but this is in our yarn.lock:
"@cesium/widgets@2.2.0":
version "2.2.0"
resolved "https://registry.yarnpkg.com/@cesium/widgets/-/widgets-2.2.0.tgz#1b7d3940b6de509ed86a3e51a5c1caf288dd9f79"
integrity sha512-t15V02J5cJcq2GxJlWy6a5zT1P+kw7cGDOAKbWb/CMNXxc/bxl2FeOoX6PMT+FuPNxREkR+xMxtXig44hvbRJQ==
dependencies:
"@cesium/engine" "2.3.0"
But if I look at the package.json
on github tag 1.105.1 it's clearly depending on 2.4.0
:
https://github.com/CesiumGS/cesium/blob/1.105.1/packages/widgets/package.json
Actually it becomes a bit clearer here:
https://www.npmjs.com/package/@cesium/widgets?activeTab=readme
Version 2.2.0
was released 11 days ago.
So I think the problem is that the widgets version wasn't bumped to incorporate the new engine version dependency.
Got it, will bump the widgets version. A bit strange that this is causing a rendering error though.
The context of @cesium/engine@2.3.0 overlaps with the context of @cesium/engine@2.4.0, causing this strange error.
Call stack is as follows:
- @cesium/engine@2.4.0/Scene
- @cesium/engine@2.4.0/Context
- @cesium/engine@2.3.0/ContextLimits
- @cesium/engine@2.3.0/ContextLimits.maximumVertexTextureImageUnits === 0
- throw new RuntimeError("Vertex texture fetch support is required to render primitives with per-instance attributes. The maximum number of vertex texture image units must be greater than zero.");
I think I said it the other way around, It doesn't prevent us from understanding the reason, haha. The bolded part is "2.4". The ones without bold are 2.3.
An error occurred while rendering. Rendering has stopped. RuntimeError: Vertex texture fetch support is required to render primitives with per-instance attributes. The maximum number of vertex texture image units must be greater than zero. Error at new RuntimeError (https://esm.sh/v120/@cesium/engine@2.4.0/es2022/engine.development.mjs:2308:11) at Primitive.update (https://esm.sh/v120/@cesium/engine@2.4.0/es2022/engine.development.mjs:40747:13) at PrimitiveCollection.update (https://esm.sh/v120/@cesium/engine@2.3.0/es2022/engine.development.mjs:127695:19) at updateAndRenderPrimitives (https://esm.sh/v120/@cesium/engine@2.3.0/es2022/engine.development.mjs:190614:21) at executeCommandsInViewport (https://esm.sh/v120/@cesium/engine@2.3.0/es2022/engine.development.mjs:190466:3) at Scene4.updateAndExecuteCommands (https://esm.sh/v120/@cesium/engine@2.3.0/es2022/engine.development.mjs:190284:5) at render (https://esm.sh/v120/@cesium/engine@2.3.0/es2022/engine.development.mjs:190922:9) at tryAndCatchError (https://esm.sh/v120/@cesium/engine@2.3.0/es2022/engine.development.mjs:190936:5) at Scene4.render (https://esm.sh/v120/@cesium/engine@2.3.0/es2022/engine.development.mjs:190988:5) at CesiumWidget.render (https://esm.sh/v120/@cesium/engine@2.3.0/es2022/engine.development.mjs:192372:17)
Had similar issue in 1.105.1 only.
Thanks @CHENJIAMIAN, I have published @cesium/widgets@2.3.0
and cesium@1.105.2
with updated dependencies. Can you please verify that fixes the issue?
I have additional questions about https://cesium.com/downloads/cesiumjs/releases/1.105.2/Build/Cesium/Widgets/widgets.css which is currently showing a 404 error. There are also no static resources under https://cesium.com/downloads/cesiumjs/releases/1.105.2/Build/Cesium. such as https://cesium.com/downloads/cesiumjs/releases/1.105.2/Build/Cesium/Assets/approximateTerrainHeights.json 404
I am using them as a CDN.
Thanks @CHENJIAMIAN. 1.105.2 was an npm only release, so we did not deploy to the CDN. The CDN version is also pre-built, so there are no dependencies to resolve.
105.1 Have a Fatal Error on 'https://sandcastle.cesium.com/?src=Cesium Inspector.html'
105.0 is normal and there are no errors.