[Fresh] Exporting static mesh and animation

Don’t forget the official documentation : http://freshengine.net/

Exporting to the Fresh engine with maya require some basic stuffs and knowledges.
First, before talking about geometry and maya, I want to talk about memory and limitation of the PSP. A scene on the scene cannot exceed 50 000 triangles. That’s mean that particles, mesh and all of the FX must be under 50 000 triangles if you want stay at 60 frame per seconds without streaming.

Example from a scene in Maya – http://freshengine.net/

The other limitation of the PSP is how handled the textures are : 512*512 pixels is the maximum size of a texture on PSP encoded in 16 colors (but 512 is very rare). The psp have a little memory (2 mb of vram and 20 mb of ram) but it’s not a problem, because the vram is only used for making the drawbuffer (frame buffer, z-buffer, and so on), the textures otherwise are dynamically loaded. Always. Generally, we work with texture of 256/128 pixels in 24bit (256 colors) which we convert later with Quantization. For the PSP it’s best to use 128² texture because the memory which is divided into blocks is optimized to this format. It’s better to split your big texture into parts of 128² rather than using only one texture. The memory access will always be better than one big access of a 512² texture.

The bets advice when you work for the PSP is to use a few colors very different from each other since we will lost a lot of transition colors after the quantization.
Example (256² pixels 24bit at left VS 128² pixels 16 colors) :

When you modelize for the fresh engine on PSP, you must be careful on your triangles/quads : they can’t be very large. If there are too much big, the psp will have problems to display them. Don’t hesitate to subdivide the large planes, but stay careful for not increasing too much the polycount. Even if it’s working on the PC Viewer, it will not be necessarily the case on PSP (because on PC it’s hard to limit an application like the PSP hardware is).
With all this is mind, it’s time to export.

Exporting a Static Mesh

When you export with the fresh engine, all the scene is exported, so you can’t work on a scene with all you work in progress stuffs. Since they in the scene, they are exported (even if they are hidden). So, try to work with multiple scene file, and use a cleaned scene to export what you want.

Once you are ready, simply call the exporter with the menu Fresh > Export. The Fresh exporter will open in the Attribute editor (calling the export do not switch automatically on the attribute editor, it’s annoying, but just keep it in mind).

Be sure that :
-Your target is on PSP
-You have a name inside the Output Filename‘s box (press the folder button for setting it, simply tipping doesn’t work)

The last thing to do is to be sure that the flag “Export me” is enabled if the “Fresh > Transform Flags” sub menu of the tab of your mesh (the mesh, not your shape) in the Attribute Editor.

Once you are okay, click on export and look on the log window : this window will tell what have been exported, if something is missing, you have an error somewhere in the scene or in you shader/anim settings.

Exporting an Animated Mesh (simple geometry)

The basic of exporting an animated mesh is like static mesh, you only need to prepare two more things : the anim node and the anim settings.
For setting up the anim node, simply click on Fresh > Animation > Edit Anim Node.
You need one anim node per animated object.

The next window will show you all of your anim nodes, every time you want to add an anim node click on the “New animation” button. In the filename box give the name of your anim node. Be careful, later you will need this value to call the animation in your script. The selection box is used to point out the mesh who will be animated. You can simply type in the box the name of the mesh, but if you want to avoid misspelling errors, select your mesh and click on the three dots button. You will get a new window named “Select Animated Nodes”, in the top you will see your mesh, click on add and click just after on Add and then Apply.
Your node is not ready to work !

You can also specify manually the frames that you want to use for the animation by disabling the “Use time slider” checkbox. By default, with this option enabled, the exporter will export the animation which is in the range of your current time slide in the scene.

The animnode is ready, now don’t forget to tell to the exporter that your mesh is Dynamic (because it’s a animated mesh). Click on you mesh or on the root of your mesh (if by example you mesh is under a locator, click on the locator). In the Attribute editor, on the mesh tab (not the shape tab), under Fresh > Transform flags enable the option “Dynamic”.

Export the scene, check in the log window if all is okay, and enjoy ! 😉