Sorry your browser is not supported!

You are using an outdated browser that does not support modern web technologies, in order to use this site please update to a new browser.

Browsers supported include Chrome, FireFox, Safari, Opera, Internet Explorer 10+ or Microsoft Edge.

Bug Reports / Ambient, diffuse, specular not affecting instanced objects

Author
Message
Mistrel
Retired Moderator
18
Years of Service
User Offline
Joined: 9th Nov 2005
Location:
Posted: 13th Feb 2009 11:48 Edited at: 12th Mar 2010 19:36
I understand the concept of sharing data from the original object but I think these attributes are important for instanced objects. Instancing is great for copying a single object all over a map but it's use is limited if each instanced object can't be modified independently to match their environment.

This isn't a bug but I don't agree with it's implementation.



I also have a question for Lee:

Isn't it enough just to instance the mesh? Would instancing without mirroring an object's attributes really cause things to slow down?

I can see the advantage for instancing objects (objects load incredibly fast, very low memory footprint per-object) but it's use it limited if it's restricted to instancing both the mesh and its attributes. A flag to share or keep attributes independent would be a useful addition, similar to CLONE OBJECT's flag.

For example, it makes sense to create instances of a "peasant" model for a town because there's no reason to load the same mesh twice. But I'll also want control over each instance's texture independently.

The true value of instancing is wasted with the current restricted implementation.

Unfortunately, there is no effective instancing solution in DBP. Instancing is ideal, but it's use is limited by sharing all attribute data. CLONE OBJECT works as an alternative solution but has a high memory footprint, is more taxing and lowers fps.

The only solution that works is LOAD OBJECT which is painfully slow for loading objects, is also taxing on DBP, lowers fps, and has the greatest memory footprint.

IanM
Retired Moderator
21
Years of Service
User Offline
Joined: 11th Sep 2002
Location: In my moon base
Posted: 30th Jun 2009 23:15
The problem with your suggestion is that the values for ambient & diffuse (as well as many other attributes) is held against the mesh itself - you can see this yourself within the DBOData.h public header file.

Without a heavy redesign of the object internal structures (which many internal and external plug-ins rely upon), what you suggest can't be done.

Login to post a reply

Server time is: 2024-05-20 03:48:11
Your offset time is: 2024-05-20 03:48:11