PVRGeoPOD Data Formats

<span =“highlight”> I’d like to use shorts for my vertex data in my iPhone application. <span =“highlight”>By importing obj file vertices with a multiplier, I was able to convert floats to shorts to store in a VBO, which increased the framerate by

5-10%. I’d prefer to use the POD file format as it optimizes the vertices

order and has a lot more capabilities.
<span =“highlight”>
When I select short as the data format in the PVRGeo<span =“highlight”>POD exporter, the model is distorted, as if all the floats are simply rounded off. Is there anyway to make this work? Should I simply scale my Maya model to a degree where the rounding no longer matters and then scale down when rendering?

<span =“highlight”>Thanks.
<span =“highlight”>

Sadly there’s no built-in scaling for PODs so the strategy you describe is probably the best approach right now.

Please post again if you have further questions.

That’s what I do … I wrote a POD exporter for Lightwave and when exporting vertex data as shorts I simply allow for a custom scaling factor.

You could then include this scaling factor as pfAnimScale in a POD node your model is attached to.


warmi2009-04-28 05:41:33

This sounds like a reasonable solution for the moment. We’ve discussed adding better provision for techniques like this in our tools, hopefully something should come of this soon.

warmi: I’m interested in your Lightwave POD exporter - how featured is it? Do you have plans to distribute it?

Nowhere near as featured as your exporters for other platforms :)


<?: prefix = o ns = "urn:schemas-microsoft-com:office:office" />

Right now it handles exporting static models from the Lightwave modeler and animated meshes from layout and it supports only interleaved GL_TRIANGLE/GL_STRIP, float/short combinations.


It has no support for scene graphcs etc ... in other words a completely custom job tailored for our engine.


In any case, Lightwave  (as it is known right now) is in the process of being replaced with a completely new codebase (Lightwave core)  which changes everything, invalidating all existing plugins, SDK APIs etc... they are really going back to the basics for the first time since I guess the early 90s.


In other words, the current plugin is an evolutionary dead-end.



Still, it's impressive that you got it working and it's interesting for us that someone has created such a thing for their toolchain.