• Advertisement
Sign in to follow this  
  • entries
    235
  • comments
    509
  • views
    172298

LOD Love

Sign in to follow this  

106 views

Well, my partner found a nice perf problem with the way we were using Cal3d. We suspected there was something wrong there, b/c it just seemed too slow considering how many folks are using it successfully.

Turns out we were calling setLodLevel() every frame, which should be called in discreet steps instead.

This morning I added lod facets to the entities, so that they track their current lod, at what lod distance they switch, and how many lods they should use.

While debugging that, I found a nice perf problem on the crypt level, where for point lights, each visible entity was potentially doing a raycast to each light on the level each frame, rather than just those he might be near, so I fixed that as well.

I added keys & locked doors yesterday, and in the process added a field to each facet record that specifies whether that field should be reloaded from the db every level load or whether it remains customizable by the game and/or designer. This way you can place the same door entity, and customize its locked/unlocked state without having to make two entity types. On the other hand, if there is a facet that is permanent, like "type", this one is reloaded from disk on a level load, so that if that changes, there is no need to rebuild the level.
Sign in to follow this  


0 Comments


Recommended Comments

There are no comments to display.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Advertisement