Imagination PowerVR SDK Blog

PVRGeoPOD Data Formats

pvrgeopod

#1

<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”>


#2

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.


#3

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

#4

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?


#5


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.



 

 

#6




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.