Browse Source

refactor: revert nullable renderer

alvarosabu 3 months ago
parent
commit
869f7e5dd1

+ 0 - 1
src/components/TresCanvas.vue

@@ -169,7 +169,6 @@ const dispose = (context: TresContext, force = false) => {
     context.renderer.value?.dispose()
     context.renderer.value?.renderLists.dispose()
     context.renderer.value?.forceContextLoss()
-    context.renderer.value = null
   }
   (scene.value as TresScene).__tres = {
     root: context,

+ 1 - 1
src/composables/useRaycaster/index.ts

@@ -13,7 +13,7 @@ export const useRaycaster = (
   ctx: TresContext,
 ) => {
   // having a separate computed makes useElementBounding work
-  const canvas = computed(() => ctx.renderer.value?.domElement as HTMLCanvasElement)
+  const canvas = computed(() => ctx.renderer.value.domElement as HTMLCanvasElement)
   const intersects: ShallowRef<Intersection[]> = shallowRef([])
   const { x, y } = usePointer({ target: canvas })
   let delta = 0

+ 1 - 1
src/composables/useTresContextProvider/index.ts

@@ -55,7 +55,7 @@ export interface TresContext {
   camera: ComputedRef<Camera | undefined>
   cameras: DeepReadonly<Ref<Camera[]>>
   controls: Ref<TresControl | null>
-  renderer: ShallowRef<WebGLRenderer | null>
+  renderer: ShallowRef<WebGLRenderer>
   raycaster: ShallowRef<Raycaster>
   perf: PerformanceState
   render: RenderState

+ 1 - 1
src/devtools/plugin.ts

@@ -186,7 +186,7 @@ export function registerTresDevtools(app: DevtoolsApp, tres: TresContext) {
               }),
           }
 
-          if (instance.isScene && tres.renderer.value) {
+          if (instance.isScene) {
             payload.state.info = {
               objects: instance.children.length,
               memory: calculateMemoryUsage(instance),