[Flour] Flour 0.3.2 with MSI installer released!
betajaen
16-10-2008 16:01:04
What?
This is Flour 0.3.2 (unstable), this is a complete rewrite of the existing Flour. It is regarded as unstable as it works with Ogre 1.6.0 RC1, NxOgre 1.0.22T5 and the code is less than 24 hours old.
This flour has:
- Conversion functions to Ogre to NXS,XSK (Triangle, Convex and Skeleton)
- Conversion functions from RAW (8-bit/16-bit) images to heightfields (RAW to XHF)
- Auto create mesh functions to NXS, XSK (Triangle, Convex and Skeleton)
- Testing functions for Ogre
- Testing functions for Meshes
- An early copy of the Ogre/NXS viewer.
- An alternate way of viewing meshes via the remote debugger.
Download
You can download the flour installer from
http://get.nxogre.org/flour/Flour.msi. As flour is self-contained, you do not need Ogre or NxOgre installed on your computer. However; you will need the PhysX 2.8.0 runtimes which can be downloaded from Nvidia's website.
To see if it works, run a dos prompt and do.
flour test
Brief tutorial
View an Ogre mesh
flour view barrel.mesh
To convert an Ogre mesh (nxs or xsk)
flour convert in: barrel.mesh, into: convex, out: barrel.nxs
Create a skeleton (xsk) in the shape of a cube
flour make file: test.xsk, type: skeleton, generate: box, size: 0.4 0.4 0.4
I've found that skeleton sizes usually work best at half the meshes size and take off 20%. In this case; a 1m cube has a skeleton size of 0.4m
Perform a test on NxOgre (check to see if it's compiled correctly)
flour test
Perform a test on a mesh (nxs or xsk)
flour test type: mesh, file: mesh.nxs, verbose: yes
Access the help features
flour
flour what-is view
flour what-is test
flour what-is make
flour what-is test
flour what-is convert
flour what-is remotedebugger
betajaen
16-10-2008 16:27:22
I would appreciate it if a few people would try it out, just to see if the installer and manifests are working properly.
Just do "flour test" once it's installed.
Illidanz
16-10-2008 17:41:51
"flour test" works fine for me
Thanks for the release!
betajaen
16-10-2008 18:07:57
That is good news. It took me ages to do that installer, I would hate it if I spent all that time and it didn't work.
Prophet
16-10-2008 19:26:40
Why do you write half the meshes size and take off 20% instead just 40% of the size? Further, how do you know it works best when you've written you're not sure it works?
Anyway, the installer works. Haven't tried converting anything though.
betajaen
16-10-2008 19:36:31
The PhysX documentation told me. I'm pretty sure CCD does work, I just don't have a good enough example written to test it out.
Try "making" something.
Caphalor
16-10-2008 20:35:32
I don't understand the sense of an installer if there is just one single executable to install...
It took me ages to do that installer, I would hate it if I spent all that time and it didn't work.
Did you try NSIS? It comes with a lot of example installer scripts and it's really easy to use.
At the moment, I only use flour to convert .mesh files to .nxs triangle mesh shapes. It works and my old strange problem with flour disappeared.
betajaen
16-10-2008 20:45:37
There is some weird thing with compiled Visual Studio programs, that you have to install the "manifests", the quick way is just to bundle two dll's with it, but since I want to make it self contained you need an installer.
I used "Wix", rather than the Nullsoft installer. I used in the past with the previous flour.
I'm glad your problem was fixed, I'm just waiting for people to try out the new heightfield code.
Red15
19-10-2008 19:49:47
D:\Tools\flour>flour test
---------------------------- NxOgre Single Test ----------------------------
Versions:
- NxOgre 1.0.22T5 Bleeding Edge
- Ogre 1.6.0 'Shoggoth'
Results:
- Core: ........ - PASSED
All tests were sucessfull!
----------------------------------------------------------------------------
OK
D:\Tools\flour>
Running flour view cube.1m.mesh (from Cake) gives runtime error though.
Djoef
31-10-2008 12:21:37
I have Ogre 1.6.0, NxOgre 1.0-22T5 & PhysX 2.8.1 and tried flour :
flour test
..
All tests were successfull!
flour view PyrME.mesh
works, I get a screen with my mesh in it, and i can rotate with mouse
flour convert in: PyrME.mesh, into: convex, out PyrME.nxs
appears to work, it says OK and I got a PyrME.nxs file now.
when trying to view that, I get a runtime error, using one of both :
flour view PyrME.nxs
flour view mesh: PyrME.nxs
betajaen
31-10-2008 14:32:17
You have to use the remote debugger for now to view nxs files.
Ensced
20-11-2008 08:34:12
Hi, I have a little problem with convert function. I would like convert skeleton
when I do this:
flour convert in: ninja.mesh, into: skeleton , out: ninja.xsk
Flour crashe
when I do this:
flour convert in: ninja.skeleton, into: skeleton, out: ninja.xsk
I have a error
Do you have the same error?
betajaen
20-11-2008 10:35:37
What is "ninja"? Making a PhysX Skeletons are quite tricky. What is the vertex count?
Ensced
20-11-2008 10:53:16
I have test the ninja.mesh in the OgreSDK
I don't know how many have vertex, may be It's a lot of...
I search a another model for my test, and I'll be back tell you if ok.
otherwise My code it is good?
betajaen
20-11-2008 11:03:09
The Ninja mesh is way to much. It has to be less than 64 vertices.
Ensced
20-11-2008 11:13:05
I have test the other mesh in the OgreSDK for the convert in skeleton, but the same crash.
May be, This function is use for the simple bones as a cube? So, If we make a model in the blender(for the exemple), it's no necessary create skeleton in their?
With Flour, we can create bone with make function, and in us programm, we assemble all(convex and bones)?
Sorry for my questions
Ensced
20-11-2008 11:14:50
thx betajaen for you answer
betajaen
20-11-2008 11:24:27
Skeletons are very tricky. I've found using only very simple shapes works. Remember it has to be simple because PhysX is resizing it all the time when the Actor is moving around in high velocity. As you tend to see things at a high velocity as a blur; it's best to think that the physics side of it would be to. So a skeleton is a blury model of your main mesh.
I've taken the liberty to copy down the limits of CCD, and here it is:
- 64 vertex limit on CCD skeletons.
- Skeletons limited to 256 edges.
- Dynamic vs. static does not work when the static shape is an NxSphereShape, NxCapsuleShape, NxPlaneShape, etc. These shapes are not used for static geometry in many games and it would require significant work to support them since they are not polygon based shapes (the CCD algorithm works with meshes).
- If the geometry of the static mesh is very complex and high detail (not common in a typical game), the dynamic object may get stuck on its surface after the collision due to conflicting contact points. Minimize this effect by increasing the size of the CCD skeleton, but depending on the mesh, it may not be fully resolved.
- The dynamic vs. dynamic CCD uses an approximation which assumes one shape is rotating much faster than the other. If both shapes in a pair are rotating very quickly, the approximation may break down (causing unrealistic results).
- The CCD code assumes shapes will not rotate by more than 180 degrees in a time step.
- CCD works by limiting the motion of objects. When an interpenetration is detected, the objects are stopped dead, even if it is halfway through a time step. This may make objects appear to hang in mid air for one frame, etc.
- Triggers do not take part in CCD.
- Be very careful with assigning CCD skeletons only to some of a dynamic actor's shapes. There is the risk of a non-CCD shape penetrating another object before a CCD shape arrests the motion, leading to the actor getting stuck in penetration. Only create such actors if you can in some way insure that this will not occur.
Kinematic objects are never halted by CCD and so using CCD for fast-moving kinematic bodies has no effect. (This only applies when it's the kinematic object that is fast-moving, fast-moving dynamic CCD objects are halted by kinematic ones as usual.)
CCD does not work with restricted hardware scenes (see Hardware Scene Creation).
As you can see; less than 64 vertices and less than 256 edges.
Ensced
20-11-2008 11:41:39
ok Thx very much! I have test the convert width a simple cube, and no problem.
Ok, I take my work with this "sight". As a picture we can see in Physx's doc, in the chapter "Skeletal Animation and Rag Dolls".
Hi there,
I've some problems with floor.
At first: My installed PhysX-version is 2.8.1 but there are also the 2.8.0 files on my PC and at the moment(but I've tried it with the new files, too) these files are in my floor folder:
15.10.2007 08:40 269.312 devil.dll
16.10.2008 15:54 1.451.008 flour.exe
15.10.2007 08:40 237.568 glut32.dll
15.10.2007 08:40 485.888 granny2.dll
15.10.2007 08:40 27.648 ilu.dll
15.10.2007 08:40 16.384 ilut.dll
13.02.2008 13:09 124.192 NxCharacter.dll
13.02.2008 13:09 390.432 NxCooking.dll
13.02.2008 13:09 70.944 PhysXLoader.dll
But:
C:\Programmierung\Flour>flour test
---------------------------- NxOgre Single Test ----------------------------
Versions:
- NxOgre 1.0.22T5 Bleeding Edge
- Ogre 1.6.0 'Shoggoth'
Results:
- Core:
If I try to run flour test, the application will crash.
If I try flour view, I can see my mesh in a window.
If I try flour convert:
C:\Programmierung\Flour>flour convert in: Block_1_0.mesh, into: convex, out: block_1_0.nxs
The application will crash again and will not create any nxs file.
What's my mistake?
I'm having the same problem, with 2.8.1, flour will return an unknown format error, which is probably due to physx version since the error is not coded in flour. When using any other version except for 2.8.1 - tried with 2.8.0 and 2.7.6, it will crash.
Also, are there any other options of creating shapes without having to convert them to xhf/nxs like pre-bleeding? The extra file size of having to convert every model could be a problem.