Bug in RefreshComponent

All topics about ZGameEditor goes here.

Moderator: Moderators

Post Reply
kattle87
Posts: 402
Joined: Wed Sep 26, 2007 9:06 am
Location: Italy

Bug in RefreshComponent

Post by kattle87 »

I think I've found RefreshComponent behaves erratically. When you ask for updating a single mesh, sometimes it just does not. If you ask for updating an internal component (EG: name or name2 in the example file) it does update the entire mesh.

I think that if I choose a single meshexpression to be update, this should really be the only one involved (see example: the vertex should only be moved, not recalculated!); the thing I can understand is that everything comes after is updated too. But suppose I just want to apply a meshexpression to the vertex of a already created mesh; how can I do it???
Bye bye!
Attachments
UpdateExpression.zgeproj
(1.74 KiB) Downloaded 424 times
User avatar
VilleK
Site Admin
Posts: 2277
Joined: Mon Jan 15, 2007 4:50 pm
Location: Stockholm, Sweden
Contact:

Post by VilleK »

There is a bug with refreshcontent and Mesh. Kjell discovered this a while ago so it is fixed for next version. It is a good workaround you found about refreshing a single producer, I wouldn't have thought that would work.

Yes that's the way it works right now that the whole mesh is recreated. Perhaps a future version will include something like "MeshLoad Mesh1" so that you can reference an existing mesh in your producers-list and modify it.
kattle87
Posts: 402
Joined: Wed Sep 26, 2007 9:06 am
Location: Italy

Post by kattle87 »

Ok, let's say it: I would like a lot something like moving vertex of an existing mesh. This means applying a meshexpression to a mesh. I have tried using a meshexpression out of a mesh and writing "Mesh1.V.X = ..." instead of "this.V.X = ..." but no way I got it :( Will it be difficult adding this possibility? (If you think it is not, than I might try doing it by myself!)
User avatar
VilleK
Site Admin
Posts: 2277
Joined: Mon Jan 15, 2007 4:50 pm
Location: Stockholm, Sweden
Contact:

Post by VilleK »

It is probably a bit of work to make that change in ZGE. Also it may be a wrong design desicision, the "Producers" of a mesh should generate a new mesh not modify an old one. So perhaps a separate modifymesh component, or a modify-list is better. Or wait for OpenGL to officially support geometry shaders :)

Can you animate the mesh even though it is totally reconstructed, or are you concerned about performance? And have you considered animating using a vertex shader?
kattle87
Posts: 402
Joined: Wed Sep 26, 2007 9:06 am
Location: Italy

Post by kattle87 »

OpenGL 3 does support Geometry shader, my graphic card does not :P

Yes I am concerned with performance when making metaballs, so I will use vertex shaders for animating the entire thing, but my idea is: start with a rough mesh created or animated by ZExpressions, then make it looking better using vertex for fine setup (also, the mathematics I will use also require a starting point "near the surface you want to find"). This is the only way to get a nice "blob" because when the blob divides in more than one part you need to recalculate the mesh from scratch. My idea will probably become "just make a new mesh 10 times/sec so performance does not get so much hurt". So I'm not gonna ask you for such feature like "ModifyMesh" component for the next release :P :P
Post Reply