Improved LOD Creator functionality

Over the last days I worked on the ModelConverterX LOD Creator tool. My first aim was to add another algorithm to calculate the LODs. And besides that I also improved the user interface a bit.

On the right you see a screenshot of the new user interface and since the manual is not yet updated, I will give a brief overview of the changes here.

The selection box at the top right allows you to choose between the different algorithms that are available. At the moment you can choose either vertex clustering or quadratic based error. The last one is the algorithm that was used in the previous version of ModelConverterX and it has not changed in this new update. I hope to improve that algorithm more later on. Below the algorithm selection box you see the different parameters that you can set for each of them.

The remaining changes in the user interface are mainly the buttons on the bottom left. They allow you to remove a LOD, rename a LOD or add an empty LOD. New is the import LOD button which allows you to load another file and that object will then be used for the LOD number indicated next to the button. This should allow people to make for example LODs with SketchUp. By saving them all to different files, you can combine them in one MDL using this tool.

Then to the new algorithm. What vertex clustering basically does is collapse all vertices that are within the same cell of a 3D grid. The resulting vertex position depends on the weight of the original vertices. In the implementation into ModelConverterX you can give vertices a weight based on:

  • The area of the polygons that the vertex is a part of. This means that vertices that are part of a big polygon will have more influence on the new shape. In the properties you can set the influence of the area at a value between 0 and 1. Where 0 means no additional weight and 1 means the maximum additional weight.
  • The angle between the polygons that the vertex is a part of. The idea behind this weight is that polygons on the outside of the object are more likely to have sharp edges. By given them more weight the overall silhouette will be preserved better. This parameter also has a range between 0 and 1.
  • Ground clamping. This gives an additional weight to vertices that are on or below the ground. This is to ensure that you building does not float in the lower LODs.

The two remaining parameters of the algorithm are grid size and floating cells. The first one is quite obvious and determines how big the cells are, within which the vertices are collapsed. The second allows you to choose between uniform fixed cells and floating cells. According to the literature the last option should give better results in general, although I have already seen that it does not apply to every object.

So I hope you enjoy these new LOD functionalities and if you want to see them in action have a look at this demonstration video.

scenery.org

Ever since I started making scenery for Flight Simulator, you could get almost any tool you wanted using scenery.org. That site provided a great overview of tools and tutorials for scenery designers. Sadly last week the site went offline.

This did not come as a huge surprise, since the owner Tom Gregor had already indicated before that running the site was becoming to expensive. After this message the FSDeveloper admins already contacted Tom Gregor to see if we assist in some way. We do have his permission to keep the tools and tutorials alive on FSDeveloper and we also have a backup of all the related files. But before we can put them online again, we need to get permissions from the authors of these tools and tutorials as well. So we are working on that now.

A big thanks to Tom Gregor for running this site for all those years. And we’ll do our best to keep as much of the knowledge it contained available.

Black textures

An often occurring problem when designing scenery is that your object shows with black (or no) textures. There can be many causes for this. For example a  texture that is not a power of two in size, a texture that is in the 24 bit BMP format that FS can not read or just a texture that you forgot to copy to the right texture folder.

Recently I discovered another reason for black textures (and this one took me a little while to figure out). When you apply a bump map to a material, but the polygons that use the material do not have a normal set you will also get black textures. So this is another one to remember when such problems occur again.

Attached object orientation

For quite some time already ModelConverterX has the functionality to attach things to your object. For example an effect or another library object. I mainly used this to attach lights to objects and since these shine in any direction I never really bothered to check the orientation properly. Until there were some questions about this on the forum recently. So I took a look and found out the orientation was not really correct.

So in the latest development release of ModelConverterX this has been fixed. The orientation of attached objects is now exported correctly. I have also changed how attached objects are displayed in the preview. They not only show a dot now, but also a line that is the direction in which they are pointing. In the attached object editor you can change this orientation by entering a heading, pitch and roll for the attached object.

Oh and don’t ask me why there is a tree attached to that building. It just happened to be a nice library object to test with…

Normal maps for FSX

Today I was experimenting a bit with using normal maps and bump maps in gPoly. So this meant I had to make some bump maps and while doing so it bothered me again that you have to transform the output of the normalmap plugins to work correctly in FSX. Maybe it is my GIMP skills, but I never find it easy to swap channels and do tasks like that in GIMP.

So I decided to add a functionality to ModelConverterX that does all the work for you. You just load the output of the normalmap plugin and it will create the right image for use in FSX. You can find this functionality in the texture converter function of the development release. Below are some screenshots.

 

gPoly status update #11

I have made some progress again on the gPoly tool. The two main features I worked on today are finishing the Bezier curves and extending the user interface so that you can edit the texture mapping of the polygons. Since these feature are difficult to explain with text or pictures, I have made a little preview video showing how you could use them. You can view this video here.

Next item I am going to work on is vertex snapping. When that is done I will start laying down the polygons for my test airport. I am looking forward to actually make some real polygons for a scenery.

NL2000 v4.0 release

Over the last three years the NL2000 team has been working hard on making their scenery compatible with FSX and many improvements have been made to the scenery during these years as well. Tonight was finally the moment of the release, the new version is now available for downloading. Given the huge size of 32 GB don’t hold your breath while downloading. You can find all details here.

Compared to the previous version I design less parts of the scenery myself. My involved was mainly with technical advice and with converting objects to the FSX format. In the end that was what I started to develop ModelConverterX for.

I hope you enjoy the scenery!

gPoly status update #10

This evening I have been working on a feature for gPoly that will make it a lot easier to draw curved edges of your ground polygons. By using Bezier curves you don’t have to add many points to get a nice smooth curve. All you have to do is set the begin and end point and use a couple of control points to determine the shape of the curve. In the images below you see a few example I made while testing. The two points at the top are the control points that determine the shape. You can see that by changing their position, the curve has changed.



As you can see from the images I can draw the curves in gPoly now. Tomorrow I will continue working on this feature and check if the texture mapping is assigned correctly and see if exporting works fine. But I am sure this feature will be very useful when drawing your airport layout.

ModelConverterX 1.2 released

A new stable version of ModelConverterX has been released. Especially for users converting COLLADA and SketchUp objects this should mean that they can use the stable version again. Since version 1.1 I changed so much, that we always had to tell those users that they needed the development release. Have a look at this post in the forum if you want to see the most important changes in this new version.

At the moment I am focusing a bit more on the gPoly tool, but I still have enough interesting ideas for ModelConverterX as well. So for the short term the amount of updates in the development release will probably be quite low (many bug fixes).

gPoly status update #9

Just a quick status update for the gPoly tool. I think I got the code working now that will ensure that your polygons are automatically sliced into segments of no more than 100 meter. This ensures that there will be no issues with the curve of the earth in FSX. The same code can also be used to divide the polygons of the airport into different segments, so that not everything uses the same reference point and will be rendered at the same time. Especially for big airports I am sure this is important to keep the performance good, although I will have to do more experimenting later on to find the best parameters.

With the exporting side now sort of working, I will move over to the user interface again. Next on my list are improvements to the drawing of polygons (vertex snapping for example) and making it easier to update the texture mapping of the polygons. While working on those features, I will also be drawing the rest of the polygons for my test airport.