Hi,
I recently started creating my first Orbiter plugin project. I'm not having any major problems so far, and everything seems to work :woohoo:, so now I want to reach more ambitious goals than just an empty DLL with a custom vessel class.
What I want to do is to create a binding between Orbiter and my libProcTer procedural terrain library. Currently, the only way to use complicated dynamically generated meshes in Orbiter seems to be in vessels, and therefore I'll make my terrain a special kind of vessel.
Now, I don't need to play with engines, wings, docking ports etc., but do I need full control over the vessel's meshes. This is what I found out so far:
The number of textures in my surface changes continuously, so, if the above is true, then I have two options:
I recently started creating my first Orbiter plugin project. I'm not having any major problems so far, and everything seems to work :woohoo:, so now I want to reach more ambitious goals than just an empty DLL with a custom vessel class.
What I want to do is to create a binding between Orbiter and my libProcTer procedural terrain library. Currently, the only way to use complicated dynamically generated meshes in Orbiter seems to be in vessels, and therefore I'll make my terrain a special kind of vessel.
Now, I don't need to play with engines, wings, docking ports etc., but do I need full control over the vessel's meshes. This is what I found out so far:
- Meshes can only be created by loading a .msh file. There doesn't seem to be a construction method that doesn't involve a .msh file.
- The number of mesh groups in a mesh seems to be a constant: you cannot add or remove mesh groups dynamically
- The number of textures in a mesh seems to be a constant too.
- Each mesh group can only be attached to a single texture
- You can add and remove meshes dynamically
- You can edit the vertex positions, the number of vertices, the triangles and the number of triangles dynamically
- You can edit textures dynamically
The number of textures in my surface changes continuously, so, if the above is true, then I have two options:
- Use a .msh file with a very large number of groups and textures, and disable certain groups if the current number of active textures is smaller than the number of groups & textures in the .msh file
- Use a very small .msh file with only one group and texture, and add/remove this mesh multiple times according to the number of textures in my model