Dear Ulrich,
Sorry for my stupidity, but I don't know anything about modifying
models. The model is actually created in VRML, and I use 3DS Max to
export it to obj format. So if you can, please tell me a bit more
about how to optimize the model:
- How can you remove duplicate materials (if you can tell me how to do
it by hand, that helps too)
- What else can I do to load the model in an efficient way?
Thank you very much,
Dat

On Mon, Oct 26, 2009 at 7:33 AM, Ulrich Hertlein <[email protected]> wrote:
> Hi Dat,
>
> On 23/10/09 5:26 PM, tien dat wrote:
>>
>> Dear Ulrich,
>> Could you tell me more about how to specify that option? Can I specify
>> it while using osgviewer.exe or I have to rebuild osgviewer.exe with
>> the option?
>
> Unfortunately you can't (at the moment) set this option externally or
> internally, because the .obj loader doesn't pass the options object along.
>
> Even if you could it would only avoid loading the same image over and over
> again.  It will not solve the massively duplicated state/material that the
> model has.
>
> Either the modelling is done very inefficiently in the 3D application or
> whatever exporter is used messes things up.
>
> If you absolutely have to use osgviewer (rather than your own app) I'd
> actually write a script to optimise the .obj and .mtl files by removing
> duplicate materials.
>
> What you might also want to do is to remove the 'map_Ka' (ambient texture
> map) statements since they are not used with the standard OpenGL paths (but
> are still loaded).
>
> Cheers,
> /ulrich
>
>> On Fri, Oct 23, 2009 at 5:02 AM, Ulrich Hertlein<[email protected]>
>>  wrote:
>>>
>>> On 23/10/09 10:58 AM, Ulrich Hertlein wrote:
>>>>
>>>> On 22/10/09 9:40 PM, tien dat wrote:
>>>>>
>>>>> I have a model in obj format and want to load the model into
>>>>> OpenSceneGraph. When there is no texture, OpenSceneGraph can load the
>>>>> model fine. But when I use the model with texture, OpenSceneGraph
>>>>> allocates a huge amount of memory and crashes. I think it's a runtime
>>>>> bug and would like to know how to fix it. Please find some pictures
>>>>
>>>> Not really a bug, I'd say you're running out of memory.
>>>>
>>>> - try to reduce the image sizes.
>>>> - a lot of materials reference the same image. I don't think the obj
>>>> loader caches this which means you're loading that image over and over
>>>> again. Use osgDB::Options to specify caching of images.
>>>
>>> Oh, and you seem to have pretty much one material per drawable.  This
>>> will
>>> absolutely kill your performance.  Have a look at the .mtl file, you'll
>>> notice that there are heaps of materials that have identical properties.
>
> _______________________________________________
> osg-users mailing list
> [email protected]
> http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
>
_______________________________________________
osg-users mailing list
[email protected]
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

Reply via email to