boyofgreen

Proper way to Clear entire scene

Recommended Posts

I am clearing my scene entirely, where I use completely new sounds and new plans/textures.  What is the proper way to do this?

I'm first going through each of my planes and removing the plane and animations for each of them:

    item.plane.dispose();
    item.animateR.reset();
    item.animateX.reset();
    item.animateY.reset();

and do the same for the sounds.  Then I go to the scene and do the following:


scene.dispose();
scene.disposeSounds();

The problem is I still see a lot of memory being used up, even after I do this and have an empty canvas on the screen.  Am I missing a step or going about this wrong?

 

Thanks,

Jeff

Share this post


Link to post
Share on other sites
12 hours ago, Deltakosh said:

If you want a COMPLETE wipe of the memory you'll need to dispose the engine as well because it retains all shaders and all textures (in order to load them quickly afterwards)

From texture perspective at least, might there be a way to clear these copies once scene is loaded, or turn caching off to begin with?  Working with compressed textures for mobile devices (which share memory between CPU & Graphics cores), having to double RAM requirements (be it smaller than for  image textures) could limit the number of devices that a texture intensive scene would successfully run on.

It sounds like a good optimization for desktops with an actual separate GPU with its own memory, but on a SoC seems like it could be a limiting factor.

Not sure on the shader side.  They do not look that big.  BTW, when do you need either texture or shader?  Can context / GPU / graphics core run out of memory, and request the client reload it?

Share this post


Link to post
Share on other sites

Ran though this.  What is getting cached are WebGLTextures.  Think these are context objects, so not a duplication.  Either gl.compressedTexImage2D() or gl.texImage2D(), which actually load the data, do not reference the WebGLTexture, so looks like no double copy ends up in javascript.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

  • Recently Browsing   0 members

    No registered users viewing this page.